diff --git a/.github/workflows/github-merit-badger.yml b/.github/workflows/github-merit-badger.yml index bbac33ff826d0..825e045727b6f 100644 --- a/.github/workflows/github-merit-badger.yml +++ b/.github/workflows/github-merit-badger.yml @@ -17,4 +17,4 @@ jobs: badges: '[beginning-contributor,repeat-contributor,valued-contributor,admired-contributor,star-contributor,distinguished-contributor]' thresholds: '[0,3,6,13,25,50]' badge-type: 'achievement' - ignore-usernames: '[rix0rrr,iliapolo,otaviomacedo,kaizencc,comcalvi,TheRealAmazonKendra,vinayak-kukreja,mrgrain,pahud,cgarvis,kellertk,HBobertz,sumupitchayan,SankyRed,udaypant,colifran,khushail,scanlonp,mikewrighton,moelasmar,paulhcsun,awsmjs,evgenyka,GavinZZ,aaythapa,xazhao,ConnorRobertson,ssenchenko,gracelu0,jfuss,SimonCMoore,shikha372,kirtishrinkhala,godwingrs22,bergjaak,aws-cdk-automation,dependabot[bot],mergify[bot]]' + ignore-usernames: '[rix0rrr,iliapolo,otaviomacedo,kaizencc,comcalvi,TheRealAmazonKendra,vinayak-kukreja,mrgrain,pahud,cgarvis,kellertk,HBobertz,sumupitchayan,SankyRed,udaypant,colifran,khushail,scanlonp,mikewrighton,moelasmar,paulhcsun,awsmjs,evgenyka,GavinZZ,aaythapa,xazhao,ConnorRobertson,ssenchenko,gracelu0,jfuss,SimonCMoore,shikha372,kirtishrinkhala,godwingrs22,bergjaak,Leo10Gama,aws-cdk-automation,dependabot[bot],mergify[bot]]' diff --git a/.github/workflows/request-cli-integ-test.yml b/.github/workflows/request-cli-integ-test.yml index b16e92f1ebcc0..3a771a8c5b7d3 100644 --- a/.github/workflows/request-cli-integ-test.yml +++ b/.github/workflows/request-cli-integ-test.yml @@ -19,7 +19,7 @@ jobs: persist-credentials: false - name: Find changed cli files id: changed-cli-files - uses: tj-actions/changed-files@0874344d6ebbaa00a27da73276ae7162fadcaf69 + uses: tj-actions/changed-files@a29e8b565651ce417abb5db7164b4a2ad8b6155c with: base_sha: ${{ github.event.pull_request.base.sha }} files_yaml: | diff --git a/.mergify.yml b/.mergify.yml index 22746e9321139..698a886592843 100644 --- a/.mergify.yml +++ b/.mergify.yml @@ -11,7 +11,7 @@ pull_request_rules: label: add: [ contribution/core ] conditions: - - author~=^(rix0rrr|iliapolo|otaviomacedo|kaizencc|comcalvi|TheRealAmazonKendra|vinayak-kukreja|mrgrain|pahud|cgarvis|kellertk|HBobertz|sumupitchayan|SankyRed|udaypant|colifran|scanlonp|mikewrighton|moelasmar|paulhcsun|awsmjs|evgenyka|GavinZZ|aaythapa|xazhao|ConnorRobertson|ssenchenko|gracelu0|jfuss|SimonCMoore|shikha372|kirtishrinkhala|godwingrs22|bergjaak)$ + - author~=^(rix0rrr|iliapolo|otaviomacedo|kaizencc|comcalvi|TheRealAmazonKendra|vinayak-kukreja|mrgrain|pahud|cgarvis|kellertk|HBobertz|sumupitchayan|SankyRed|udaypant|colifran|scanlonp|mikewrighton|moelasmar|paulhcsun|awsmjs|evgenyka|GavinZZ|aaythapa|xazhao|ConnorRobertson|ssenchenko|gracelu0|jfuss|SimonCMoore|shikha372|kirtishrinkhala|godwingrs22|bergjaak|Leo10Gama)$ - -label~="contribution/core" - name: automatic merge actions: diff --git a/CHANGELOG.v2.alpha.md b/CHANGELOG.v2.alpha.md index 9c15a40fa43d6..787befd4a4a26 100644 --- a/CHANGELOG.v2.alpha.md +++ b/CHANGELOG.v2.alpha.md @@ -2,6 +2,8 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [2.141.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.140.0-alpha.0...v2.141.0-alpha.0) (2024-05-08) + ## [2.140.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.139.1-alpha.0...v2.140.0-alpha.0) (2024-05-02) ## [2.139.1-alpha.0](https://github.com/aws/aws-cdk/compare/v2.139.0-alpha.0...v2.139.1-alpha.0) (2024-04-29) diff --git a/CHANGELOG.v2.md b/CHANGELOG.v2.md index 42afb2d8dd902..4ca4d7f42cd11 100644 --- a/CHANGELOG.v2.md +++ b/CHANGELOG.v2.md @@ -2,6 +2,21 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [2.141.0](https://github.com/aws/aws-cdk/compare/v2.140.0...v2.141.0) (2024-05-08) + + +### Features + +* **rds:** implement setting parameter group name ([#29965](https://github.com/aws/aws-cdk/issues/29965)) ([50331a1](https://github.com/aws/aws-cdk/commit/50331a19cfbe30e3d46f8eed15d74d5975fb1527)) +* support for IAM Identity Center in security diff ([#30009](https://github.com/aws/aws-cdk/issues/30009)) ([0a3cb94](https://github.com/aws/aws-cdk/commit/0a3cb94b9c3c945fa52d36f402b628a330066e5b)), closes [#29835](https://github.com/aws/aws-cdk/issues/29835) +* update L1 CloudFormation resource definitions ([#30074](https://github.com/aws/aws-cdk/issues/30074)) ([8e98078](https://github.com/aws/aws-cdk/commit/8e98078a54896b7a9531ba4b11bb0c6221383e34)) + + +### Bug Fixes + +* **ecr:** incorrect format for rule pattern ([#29243](https://github.com/aws/aws-cdk/issues/29243)) ([fff9cf6](https://github.com/aws/aws-cdk/commit/fff9cf694b14811682c8671a1e55afa53151df8b)), closes [#29225](https://github.com/aws/aws-cdk/issues/29225) +* **pipelines:** pipeline asset role trust policy has account root principal ([#30084](https://github.com/aws/aws-cdk/issues/30084)) ([3928eae](https://github.com/aws/aws-cdk/commit/3928eae1ee92a03ba9959288f05f59d6bd5edcba)) + ## [2.140.0](https://github.com/aws/aws-cdk/compare/v2.139.1...v2.140.0) (2024-05-02) diff --git a/packages/@aws-cdk-testing/cli-integ/lib/aws.ts b/packages/@aws-cdk-testing/cli-integ/lib/aws.ts index bcf19f4a47e3f..cd06cad3b5e94 100644 --- a/packages/@aws-cdk-testing/cli-integ/lib/aws.ts +++ b/packages/@aws-cdk-testing/cli-integ/lib/aws.ts @@ -20,6 +20,7 @@ export class AwsClients { public readonly ecr: AwsCaller; public readonly ecs: AwsCaller; public readonly sso: AwsCaller; + public readonly ssm: AwsCaller; public readonly sns: AwsCaller; public readonly iam: AwsCaller; public readonly lambda: AwsCaller; @@ -39,6 +40,7 @@ export class AwsClients { this.ecs = makeAwsCaller(AWS.ECS, this.config); this.sso = makeAwsCaller(AWS.SSO, this.config); this.sns = makeAwsCaller(AWS.SNS, this.config); + this.ssm = makeAwsCaller(AWS.SSM, this.config); this.iam = makeAwsCaller(AWS.IAM, this.config); this.lambda = makeAwsCaller(AWS.Lambda, this.config); this.sts = makeAwsCaller(AWS.STS, this.config); diff --git a/packages/@aws-cdk-testing/cli-integ/package.json b/packages/@aws-cdk-testing/cli-integ/package.json index 44ae905358779..28a49bf5f0c0c 100644 --- a/packages/@aws-cdk-testing/cli-integ/package.json +++ b/packages/@aws-cdk-testing/cli-integ/package.json @@ -30,12 +30,12 @@ "license": "Apache-2.0", "devDependencies": { "@aws-cdk/cdk-build-tools": "0.0.0", - "@types/semver": "^7.5.8", - "@types/yargs": "^15.0.19", + "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", "@types/glob": "^7.2.0", "@types/npm": "^7.19.3", - "@aws-cdk/pkglint": "0.0.0" + "@types/semver": "^7.5.8", + "@types/yargs": "^15.0.19" }, "dependencies": { "@octokit/rest": "^18.12.0", diff --git a/packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/app.js b/packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/app.js index 5683951c2a832..5738eff1aa5f1 100755 --- a/packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/app.js +++ b/packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/app.js @@ -126,6 +126,22 @@ class SsoInstanceAccessControlConfig extends Stack { } } +class DiffFromChangeSetStack extends Stack { + constructor(scope, id) { + super(scope, id); + + const queueNameFromParameter = ssm.StringParameter.valueForStringParameter(this, 'for-queue-name-defined-by-ssm-param'); + new sqs.Queue(this, "DiffFromChangeSetQueue", { + queueName: queueNameFromParameter, + }) + + new ssm.StringParameter(this, 'DiffFromChangeSetSSMParam', { + parameterName: 'DiffFromChangeSetSSMParamName', + stringValue: queueNameFromParameter, + }); + } +} + class ListMultipleDependentStack extends Stack { constructor(scope, id) { super(scope, id); @@ -232,10 +248,37 @@ class MigrateStack extends cdk.Stack { } } -class ImportableStack extends MigrateStack { +class ImportableStack extends cdk.Stack { constructor(parent, id, props) { super(parent, id, props); new cdk.CfnWaitConditionHandle(this, 'Handle'); + + if (process.env.INCLUDE_SINGLE_QUEUE === '1') { + const queue = new sqs.Queue(this, 'Queue', { + removalPolicy: (process.env.RETAIN_SINGLE_QUEUE === '1') ? cdk.RemovalPolicy.RETAIN : cdk.RemovalPolicy.DESTROY, + }); + + new cdk.CfnOutput(this, 'QueueName', { + value: queue.queueName, + }); + + new cdk.CfnOutput(this, 'QueueUrl', { + value: queue.queueUrl, + }); + + new cdk.CfnOutput(this, 'QueueLogicalId', { + value: queue.node.defaultChild.logicalId, + }); + } + + if (process.env.LARGE_TEMPLATE === '1') { + for (let i = 1; i <= 70; i++) { + new sqs.Queue(this, `cdk-import-queue-test${i}`, { + enforceSSL: true, + removalPolicy: cdk.RemovalPolicy.DESTROY, + }); + } + } } } @@ -658,6 +701,8 @@ switch (stackSet) { const failed = new FailedStack(app, `${stackPrefix}-failed`) + new DiffFromChangeSetStack(app, `${stackPrefix}-queue-name-defined-by-ssm-param`) + // A stack that depends on the failed stack -- used to test that '-e' does not deploy the failing stack const dependsOnFailed = new OutputsStack(app, `${stackPrefix}-depends-on-failed`); dependsOnFailed.addDependency(failed); diff --git a/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts b/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts index 749788183f26e..b80e3579b41d2 100644 --- a/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts +++ b/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts @@ -1,7 +1,7 @@ import { promises as fs, existsSync } from 'fs'; import * as os from 'os'; import * as path from 'path'; -import { integTest, cloneDirectory, shell, withDefaultFixture, retry, sleep, randomInteger, withSamIntegrationFixture, RESOURCES_DIR, withCDKMigrateFixture, withExtendedTimeoutFixture } from '../../lib'; +import { integTest, cloneDirectory, shell, withDefaultFixture, retry, sleep, randomInteger, withSamIntegrationFixture, RESOURCES_DIR, withCDKMigrateFixture, withExtendedTimeoutFixture, randomString } from '../../lib'; jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime @@ -944,6 +944,50 @@ integTest('cdk diff --quiet does not print \'There were no differences\' message expect(diff).not.toContain('There were no differences'); })); +integTest('cdk diff picks up changes that are only present in changeset', withDefaultFixture(async (fixture) => { + // GIVEN + await fixture.aws.ssm('putParameter', { + Name: 'for-queue-name-defined-by-ssm-param', + Value: randomString(), + Type: 'String', + Overwrite: true, + }); + + try { + await fixture.cdkDeploy('queue-name-defined-by-ssm-param'); + + // WHEN + // We want to change the ssm value. Then the CFN changeset will detect that the queue will be changed upon deploy. + await fixture.aws.ssm('putParameter', { + Name: 'for-queue-name-defined-by-ssm-param', + Value: randomString(), + Type: 'String', + Overwrite: true, + }); + + const diff = await fixture.cdk(['diff', fixture.fullStackName('queue-name-defined-by-ssm-param')]); + + // THEN + const normalizedPlainTextOutput = diff.replace(/\x1B\[[0-?]*[ -/]*[@-~]/g, '') // remove all color and formatting (bolding, italic, etc) + .replace(/ /g, '') // remove all spaces + .replace(/\n/g, '') // remove all new lines + .replace(/\d+/g, ''); // remove all digits + + const normalizedExpectedOutput = ` + Resources + [~] AWS::SQS::Queue DiffFromChangeSetQueue DiffFromChangeSetQueue06622C07 replace + └─ [~] QueueName (requires replacement) + [~] AWS::SSM::Parameter DiffFromChangeSetSSMParam DiffFromChangeSetSSMParam92A9A723 + └─ [~] Value` + .replace(/ /g, '') + .replace(/\n/g, '') + .replace(/\d+/g, ''); + expect(normalizedPlainTextOutput).toContain(normalizedExpectedOutput); + } finally { + await fixture.cdkDestroy('queue-name-defined-by-ssm-param'); + } +})); + integTest('deploy stack with docker asset', withDefaultFixture(async (fixture) => { await fixture.cdkDeploy('docker'); })); @@ -1575,37 +1619,60 @@ integTest('skips notice refresh', withDefaultFixture(async (fixture) => { })); /** - * Create a queue with a fresh name, redeploy orphaning the queue, then import it again + * Create a queue, orphan that queue, then import the queue. + * + * We want to test with a large template to make sure large templates can work with import. */ integTest('test resource import', withDefaultFixture(async (fixture) => { - const outputsFile = path.join(fixture.integTestDir, 'outputs', 'outputs.json'); + // GIVEN + const randomPrefix = randomString(); + const uniqueOutputsFileName = `${randomPrefix}Outputs.json`; // other tests use the outputs file. Make sure we don't collide. + const outputsFile = path.join(fixture.integTestDir, 'outputs', uniqueOutputsFileName); await fs.mkdir(path.dirname(outputsFile), { recursive: true }); - // Initial deploy + // First, create a stack that includes many queues, and one queue that will be removed from the stack but NOT deleted from AWS. await fixture.cdkDeploy('importable-stack', { - modEnv: { ORPHAN_TOPIC: '1' }, + modEnv: { LARGE_TEMPLATE: '1', INCLUDE_SINGLE_QUEUE: '1', RETAIN_SINGLE_QUEUE: '1' }, options: ['--outputs-file', outputsFile], }); - const outputs = JSON.parse((await fs.readFile(outputsFile, { encoding: 'utf-8' })).toString()); - const queueName = outputs.QueueName; - const queueLogicalId = outputs.QueueLogicalId; - fixture.log(`Setup complete, created queue ${queueName}`); try { - // Deploy again, orphaning the queue + + // Second, now the queue we will remove is in the stack and has a logicalId. We can now make the resource mapping file. + // This resource mapping file will be used to tell the import operation what queue to bring into the stack. + const fullStackName = fixture.fullStackName('importable-stack'); + const outputs = JSON.parse((await fs.readFile(outputsFile, { encoding: 'utf-8' })).toString()); + const queueLogicalId = outputs[fullStackName].QueueLogicalId; + const queueResourceMap = { + [queueLogicalId]: { QueueUrl: outputs[fullStackName].QueueUrl }, + }; + const mappingFile = path.join(fixture.integTestDir, 'outputs', `${randomPrefix}Mapping.json`); + await fs.writeFile( + mappingFile, + JSON.stringify(queueResourceMap), + { encoding: 'utf-8' }, + ); + + // Third, remove the queue from the stack, but don't delete the queue from AWS. await fixture.cdkDeploy('importable-stack', { - modEnv: { OMIT_TOPIC: '1' }, + modEnv: { LARGE_TEMPLATE: '1', INCLUDE_SINGLE_QUEUE: '0', RETAIN_SINGLE_QUEUE: '0' }, }); + const cfnTemplateBeforeImport = await fixture.aws.cloudFormation('getTemplate', { StackName: fullStackName }); + expect(cfnTemplateBeforeImport.TemplateBody).not.toContain(queueLogicalId); - // Write a resource mapping file based on the ID from step one, then run an import - const mappingFile = path.join(fixture.integTestDir, 'outputs', 'mapping.json'); - await fs.writeFile(mappingFile, JSON.stringify({ [queueLogicalId]: { QueueName: queueName } }), { encoding: 'utf-8' }); + // WHEN + await fixture.cdk( + ['import', '--resource-mapping', mappingFile, fixture.fullStackName('importable-stack')], + { modEnv: { LARGE_TEMPLATE: '1', INCLUDE_SINGLE_QUEUE: '1', RETAIN_SINGLE_QUEUE: '0' } }, + ); - await fixture.cdk(['import', - '--resource-mapping', mappingFile, - fixture.fullStackName('importable-stack')]); + // THEN + const describeStacksResponse = await fixture.aws.cloudFormation('describeStacks', { StackName: fullStackName }); + const cfnTemplateAfterImport = await fixture.aws.cloudFormation('getTemplate', { StackName: fullStackName }); + expect(describeStacksResponse.Stacks![0].StackStatus).toEqual('IMPORT_COMPLETE'); + expect(cfnTemplateAfterImport.TemplateBody).toContain(queueLogicalId); } finally { - // Cleanup + // Clean up await fixture.cdkDestroy('importable-stack'); } })); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/assets/index.py b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/assets/index.py new file mode 100644 index 0000000000000..0559c479438ca --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/assets/index.py @@ -0,0 +1,8 @@ +import json + +def handler(event, context): + print("Event: ", event) + return { + 'statusCode': 200, + 'body': json.dumps({'message': 'Hello from Lambda l2!'}) + } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets.json new file mode 100644 index 0000000000000..e6124593f200b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/asset.8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683/index.py b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/asset.8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683/index.py new file mode 100644 index 0000000000000..0559c479438ca --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/asset.8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683/index.py @@ -0,0 +1,8 @@ +import json + +def handler(event, context): + print("Event: ", event) + return { + 'statusCode': 200, + 'body': json.dumps({'message': 'Hello from Lambda l2!'}) + } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integ.json new file mode 100644 index 0000000000000..142f8ddaf288f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "apigateway-with-authorizer-and-proxy/DefaultTest": { + "stacks": [ + "integtest-restapi-with-authorizer-and-proxy" + ], + "assertionStack": "apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert", + "assertionStackName": "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.assets.json new file mode 100644 index 0000000000000..4894550b9e255 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.assets.json @@ -0,0 +1,32 @@ +{ + "version": "36.0.0", + "files": { + "8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683": { + "source": { + "path": "asset.8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "e00a1a9e901bbc68cea042ffc2c9166791d0859b52adda8cf66c7feed6974f3f": { + "source": { + "path": "integtest-restapi-with-authorizer-and-proxy.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "e00a1a9e901bbc68cea042ffc2c9166791d0859b52adda8cf66c7feed6974f3f.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.template.json new file mode 100644 index 0000000000000..e26c719cea31d --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/integtest-restapi-with-authorizer-and-proxy.template.json @@ -0,0 +1,491 @@ +{ + "Resources": { + "UserPool6BA7E5F2": { + "Type": "AWS::Cognito::UserPool", + "Properties": { + "AccountRecoverySetting": { + "RecoveryMechanisms": [ + { + "Name": "verified_phone_number", + "Priority": 1 + }, + { + "Name": "verified_email", + "Priority": 2 + } + ] + }, + "AdminCreateUserConfig": { + "AllowAdminCreateUserOnly": false + }, + "AutoVerifiedAttributes": [ + "email" + ], + "EmailVerificationMessage": "The verification code to your new account is {####}", + "EmailVerificationSubject": "Verify your new account", + "SmsVerificationMessage": "The verification code to your new account is {####}", + "UsernameAttributes": [ + "email" + ], + "VerificationMessageTemplate": { + "DefaultEmailOption": "CONFIRM_WITH_CODE", + "EmailMessage": "The verification code to your new account is {####}", + "EmailSubject": "Verify your new account", + "SmsMessage": "The verification code to your new account is {####}" + } + }, + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" + }, + "AuthorizerBD825682": { + "Type": "AWS::ApiGateway::Authorizer", + "Properties": { + "IdentitySource": "method.request.header.Authorization", + "Name": "integtestrestapiwithauthorizerandproxyAuthorizer5142DDC8", + "ProviderARNs": [ + { + "Fn::GetAtt": [ + "UserPool6BA7E5F2", + "Arn" + ] + } + ], + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + }, + "Type": "COGNITO_USER_POOLS" + } + }, + "ActionsApiGatewayF80386B7": { + "Type": "AWS::ApiGateway::RestApi", + "Properties": { + "Name": "Actions-ApiGateway" + } + }, + "ActionsApiGatewayDeployment50B6E6A6b044ca25daae592efce60035930152bc": { + "Type": "AWS::ApiGateway::Deployment", + "Properties": { + "Description": "Automatically created by the RestApi construct", + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + }, + "DependsOn": [ + "ActionsApiGatewayInitiateActionproxyANY14A167E2", + "ActionsApiGatewayInitiateActionproxyOPTIONS041B022A", + "ActionsApiGatewayInitiateActionproxyDD433460", + "ActionsApiGatewayInitiateActionOPTIONS675242EA", + "ActionsApiGatewayInitiateActionA216DA07", + "ActionsApiGatewayOPTIONS8EA1F997", + "AuthorizerBD825682" + ] + }, + "ActionsApiGatewayDeploymentStageprod812022BF": { + "Type": "AWS::ApiGateway::Stage", + "Properties": { + "DeploymentId": { + "Ref": "ActionsApiGatewayDeployment50B6E6A6b044ca25daae592efce60035930152bc" + }, + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + }, + "StageName": "prod" + } + }, + "ActionsApiGatewayOPTIONS8EA1F997": { + "Type": "AWS::ApiGateway::Method", + "Properties": { + "ApiKeyRequired": false, + "AuthorizationType": "NONE", + "HttpMethod": "OPTIONS", + "Integration": { + "IntegrationResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + }, + "StatusCode": "204" + } + ], + "RequestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "Type": "MOCK" + }, + "MethodResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + }, + "StatusCode": "204" + } + ], + "ResourceId": { + "Fn::GetAtt": [ + "ActionsApiGatewayF80386B7", + "RootResourceId" + ] + }, + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "ActionsApiGatewayInitiateActionA216DA07": { + "Type": "AWS::ApiGateway::Resource", + "Properties": { + "ParentId": { + "Fn::GetAtt": [ + "ActionsApiGatewayF80386B7", + "RootResourceId" + ] + }, + "PathPart": "InitiateAction", + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "ActionsApiGatewayInitiateActionOPTIONS675242EA": { + "Type": "AWS::ApiGateway::Method", + "Properties": { + "ApiKeyRequired": false, + "AuthorizationType": "NONE", + "HttpMethod": "OPTIONS", + "Integration": { + "IntegrationResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + }, + "StatusCode": "204" + } + ], + "RequestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "Type": "MOCK" + }, + "MethodResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + }, + "StatusCode": "204" + } + ], + "ResourceId": { + "Ref": "ActionsApiGatewayInitiateActionA216DA07" + }, + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "ActionsApiGatewayInitiateActionproxyDD433460": { + "Type": "AWS::ApiGateway::Resource", + "Properties": { + "ParentId": { + "Ref": "ActionsApiGatewayInitiateActionA216DA07" + }, + "PathPart": "{proxy+}", + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "ActionsApiGatewayInitiateActionproxyOPTIONS041B022A": { + "Type": "AWS::ApiGateway::Method", + "Properties": { + "ApiKeyRequired": false, + "AuthorizationType": "NONE", + "HttpMethod": "OPTIONS", + "Integration": { + "IntegrationResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + }, + "StatusCode": "204" + } + ], + "RequestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "Type": "MOCK" + }, + "MethodResponses": [ + { + "ResponseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + }, + "StatusCode": "204" + } + ], + "ResourceId": { + "Ref": "ActionsApiGatewayInitiateActionproxyDD433460" + }, + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "ActionsApiGatewayInitiateActionproxyANYApiPermissionintegtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065ANYInitiateActionproxy1FB876EB": { + "Type": "AWS::Lambda::Permission", + "Properties": { + "Action": "lambda:InvokeFunction", + "FunctionName": { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "Principal": "apigateway.amazonaws.com", + "SourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":execute-api:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":", + { + "Ref": "ActionsApiGatewayF80386B7" + }, + "/", + { + "Ref": "ActionsApiGatewayDeploymentStageprod812022BF" + }, + "/*/InitiateAction/*" + ] + ] + } + } + }, + "ActionsApiGatewayInitiateActionproxyANYApiPermissionTestintegtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065ANYInitiateActionproxyD05DD0B4": { + "Type": "AWS::Lambda::Permission", + "Properties": { + "Action": "lambda:InvokeFunction", + "FunctionName": { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "Principal": "apigateway.amazonaws.com", + "SourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":execute-api:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":", + { + "Ref": "ActionsApiGatewayF80386B7" + }, + "/test-invoke-stage/*/InitiateAction/*" + ] + ] + } + } + }, + "ActionsApiGatewayInitiateActionproxyANY14A167E2": { + "Type": "AWS::ApiGateway::Method", + "Properties": { + "AuthorizationScopes": [ + "scope" + ], + "AuthorizationType": "COGNITO_USER_POOLS", + "AuthorizerId": { + "Ref": "AuthorizerBD825682" + }, + "HttpMethod": "ANY", + "Integration": { + "IntegrationHttpMethod": "POST", + "Type": "AWS_PROXY", + "Uri": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":apigateway:", + { + "Ref": "AWS::Region" + }, + ":lambda:path/2015-03-31/functions/", + { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "/invocations" + ] + ] + } + }, + "ResourceId": { + "Ref": "ActionsApiGatewayInitiateActionproxyDD433460" + }, + "RestApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "lambdas3ServiceRoleC9EDE33A": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "lambdas342CE2BBD": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683.zip" + }, + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "lambdas3ServiceRoleC9EDE33A", + "Arn" + ] + }, + "Runtime": "nodejs18.x" + }, + "DependsOn": [ + "lambdas3ServiceRoleC9EDE33A" + ] + } + }, + "Outputs": { + "ActionsApiGatewayEndpoint261B645B": { + "Value": { + "Fn::Join": [ + "", + [ + "https://", + { + "Ref": "ActionsApiGatewayF80386B7" + }, + ".execute-api.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Ref": "ActionsApiGatewayDeploymentStageprod812022BF" + }, + "/" + ] + ] + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/manifest.json new file mode 100644 index 0000000000000..5602647ce4167 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/manifest.json @@ -0,0 +1,203 @@ +{ + "version": "36.0.0", + "artifacts": { + "integtest-restapi-with-authorizer-and-proxy.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "integtest-restapi-with-authorizer-and-proxy.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "integtest-restapi-with-authorizer-and-proxy": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "integtest-restapi-with-authorizer-and-proxy.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e00a1a9e901bbc68cea042ffc2c9166791d0859b52adda8cf66c7feed6974f3f.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "integtest-restapi-with-authorizer-and-proxy.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "integtest-restapi-with-authorizer-and-proxy.assets" + ], + "metadata": { + "/integtest-restapi-with-authorizer-and-proxy/UserPool/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "UserPool6BA7E5F2" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Authorizer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AuthorizerBD825682" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayF80386B7" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Deployment/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayDeployment50B6E6A6b044ca25daae592efce60035930152bc" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/DeploymentStage.prod/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayDeploymentStageprod812022BF" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Endpoint": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayEndpoint261B645B" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/OPTIONS/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayOPTIONS8EA1F997" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionA216DA07" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/OPTIONS/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionOPTIONS675242EA" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionproxyDD433460" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/OPTIONS/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionproxyOPTIONS041B022A" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/ApiPermission.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionproxyANYApiPermissionintegtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065ANYInitiateActionproxy1FB876EB" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/ApiPermission.Test.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionproxyANYApiPermissionTestintegtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065ANYInitiateActionproxyD05DD0B4" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ActionsApiGatewayInitiateActionproxyANY14A167E2" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/lambda-s3/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "lambdas3ServiceRoleC9EDE33A" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/lambda-s3/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "lambdas342CE2BBD" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/integtest-restapi-with-authorizer-and-proxy/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "integtest-restapi-with-authorizer-and-proxy" + }, + "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "apigatewaywithauthorizerandproxyDefaultTestDeployAssertDBEA1774.assets" + ], + "metadata": { + "/apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/tree.json new file mode 100644 index 0000000000000..ed4abd2970a70 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.js.snapshot/tree.json @@ -0,0 +1,814 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "integtest-restapi-with-authorizer-and-proxy": { + "id": "integtest-restapi-with-authorizer-and-proxy", + "path": "integtest-restapi-with-authorizer-and-proxy", + "children": { + "UserPool": { + "id": "UserPool", + "path": "integtest-restapi-with-authorizer-and-proxy/UserPool", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/UserPool/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Cognito::UserPool", + "aws:cdk:cloudformation:props": { + "accountRecoverySetting": { + "recoveryMechanisms": [ + { + "name": "verified_phone_number", + "priority": 1 + }, + { + "name": "verified_email", + "priority": 2 + } + ] + }, + "adminCreateUserConfig": { + "allowAdminCreateUserOnly": false + }, + "autoVerifiedAttributes": [ + "email" + ], + "emailVerificationMessage": "The verification code to your new account is {####}", + "emailVerificationSubject": "Verify your new account", + "smsVerificationMessage": "The verification code to your new account is {####}", + "usernameAttributes": [ + "email" + ], + "verificationMessageTemplate": { + "defaultEmailOption": "CONFIRM_WITH_CODE", + "emailMessage": "The verification code to your new account is {####}", + "emailSubject": "Verify your new account", + "smsMessage": "The verification code to your new account is {####}" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cognito.CfnUserPool", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cognito.UserPool", + "version": "0.0.0" + } + }, + "Authorizer": { + "id": "Authorizer", + "path": "integtest-restapi-with-authorizer-and-proxy/Authorizer", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Authorizer/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Authorizer", + "aws:cdk:cloudformation:props": { + "identitySource": "method.request.header.Authorization", + "name": "integtestrestapiwithauthorizerandproxyAuthorizer5142DDC8", + "providerArns": [ + { + "Fn::GetAtt": [ + "UserPool6BA7E5F2", + "Arn" + ] + } + ], + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + }, + "type": "COGNITO_USER_POOLS" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnAuthorizer", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer", + "version": "0.0.0" + } + }, + "Actions-ApiGateway": { + "id": "Actions-ApiGateway", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::RestApi", + "aws:cdk:cloudformation:props": { + "name": "Actions-ApiGateway" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnRestApi", + "version": "0.0.0" + } + }, + "Deployment": { + "id": "Deployment", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Deployment", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Deployment/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Deployment", + "aws:cdk:cloudformation:props": { + "description": "Automatically created by the RestApi construct", + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnDeployment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Deployment", + "version": "0.0.0" + } + }, + "DeploymentStage.prod": { + "id": "DeploymentStage.prod", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/DeploymentStage.prod", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/DeploymentStage.prod/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Stage", + "aws:cdk:cloudformation:props": { + "deploymentId": { + "Ref": "ActionsApiGatewayDeployment50B6E6A6b044ca25daae592efce60035930152bc" + }, + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + }, + "stageName": "prod" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnStage", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Stage", + "version": "0.0.0" + } + }, + "Endpoint": { + "id": "Endpoint", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Endpoint", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "Default": { + "id": "Default", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default", + "children": { + "OPTIONS": { + "id": "OPTIONS", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/OPTIONS", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/OPTIONS/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method", + "aws:cdk:cloudformation:props": { + "apiKeyRequired": false, + "authorizationType": "NONE", + "httpMethod": "OPTIONS", + "integration": { + "type": "MOCK", + "requestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "integrationResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + } + } + ] + }, + "methodResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + } + } + ], + "resourceId": { + "Fn::GetAtt": [ + "ActionsApiGatewayF80386B7", + "RootResourceId" + ] + }, + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Method", + "version": "0.0.0" + } + }, + "InitiateAction": { + "id": "InitiateAction", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Resource", + "aws:cdk:cloudformation:props": { + "parentId": { + "Fn::GetAtt": [ + "ActionsApiGatewayF80386B7", + "RootResourceId" + ] + }, + "pathPart": "InitiateAction", + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnResource", + "version": "0.0.0" + } + }, + "OPTIONS": { + "id": "OPTIONS", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/OPTIONS", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/OPTIONS/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method", + "aws:cdk:cloudformation:props": { + "apiKeyRequired": false, + "authorizationType": "NONE", + "httpMethod": "OPTIONS", + "integration": { + "type": "MOCK", + "requestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "integrationResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + } + } + ] + }, + "methodResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + } + } + ], + "resourceId": { + "Ref": "ActionsApiGatewayInitiateActionA216DA07" + }, + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Method", + "version": "0.0.0" + } + }, + "{proxy+}": { + "id": "{proxy+}", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Resource", + "aws:cdk:cloudformation:props": { + "parentId": { + "Ref": "ActionsApiGatewayInitiateActionA216DA07" + }, + "pathPart": "{proxy+}", + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnResource", + "version": "0.0.0" + } + }, + "OPTIONS": { + "id": "OPTIONS", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/OPTIONS", + "children": { + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/OPTIONS/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method", + "aws:cdk:cloudformation:props": { + "apiKeyRequired": false, + "authorizationType": "NONE", + "httpMethod": "OPTIONS", + "integration": { + "type": "MOCK", + "requestTemplates": { + "application/json": "{ statusCode: 200 }" + }, + "integrationResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent'", + "method.response.header.Access-Control-Allow-Origin": "'*'", + "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,PUT,POST,DELETE,PATCH,HEAD'", + "method.response.header.Access-Control-Max-Age": "'864000'" + } + } + ] + }, + "methodResponses": [ + { + "statusCode": "204", + "responseParameters": { + "method.response.header.Access-Control-Allow-Headers": true, + "method.response.header.Access-Control-Allow-Origin": true, + "method.response.header.Access-Control-Allow-Methods": true, + "method.response.header.Access-Control-Max-Age": true + } + } + ], + "resourceId": { + "Ref": "ActionsApiGatewayInitiateActionproxyDD433460" + }, + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Method", + "version": "0.0.0" + } + }, + "ANY": { + "id": "ANY", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY", + "children": { + "ApiPermission.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}": { + "id": "ApiPermission.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/ApiPermission.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Permission", + "aws:cdk:cloudformation:props": { + "action": "lambda:InvokeFunction", + "functionName": { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "principal": "apigateway.amazonaws.com", + "sourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":execute-api:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":", + { + "Ref": "ActionsApiGatewayF80386B7" + }, + "/", + { + "Ref": "ActionsApiGatewayDeploymentStageprod812022BF" + }, + "/*/InitiateAction/*" + ] + ] + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnPermission", + "version": "0.0.0" + } + }, + "ApiPermission.Test.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}": { + "id": "ApiPermission.Test.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/ApiPermission.Test.integtestrestapiwithauthorizerandproxyActionsApiGatewayB7F13065.ANY..InitiateAction.{proxy+}", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Permission", + "aws:cdk:cloudformation:props": { + "action": "lambda:InvokeFunction", + "functionName": { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "principal": "apigateway.amazonaws.com", + "sourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":execute-api:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":", + { + "Ref": "ActionsApiGatewayF80386B7" + }, + "/test-invoke-stage/*/InitiateAction/*" + ] + ] + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnPermission", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/Actions-ApiGateway/Default/InitiateAction/{proxy+}/ANY/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method", + "aws:cdk:cloudformation:props": { + "authorizationScopes": [ + "scope" + ], + "authorizationType": "COGNITO_USER_POOLS", + "authorizerId": { + "Ref": "AuthorizerBD825682" + }, + "httpMethod": "ANY", + "integration": { + "type": "AWS_PROXY", + "uri": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":apigateway:", + { + "Ref": "AWS::Region" + }, + ":lambda:path/2015-03-31/functions/", + { + "Fn::GetAtt": [ + "lambdas342CE2BBD", + "Arn" + ] + }, + "/invocations" + ] + ] + }, + "integrationHttpMethod": "POST" + }, + "resourceId": { + "Ref": "ActionsApiGatewayInitiateActionproxyDD433460" + }, + "restApiId": { + "Ref": "ActionsApiGatewayF80386B7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Method", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.ProxyResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.Resource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.ResourceBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_apigateway.RestApi", + "version": "0.0.0" + } + }, + "lambda-s3": { + "id": "lambda-s3", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integtest-restapi-with-authorizer-and-proxy/lambda-s3/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "8b7a863f778f5314bab7fdad7a7957ef133c826bb93a8611a3bac36ae684e683.zip" + }, + "handler": "index.handler", + "role": { + "Fn::GetAtt": [ + "lambdas3ServiceRoleC9EDE33A", + "Arn" + ] + }, + "runtime": "nodejs18.x" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integtest-restapi-with-authorizer-and-proxy/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integtest-restapi-with-authorizer-and-proxy/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "apigateway-with-authorizer-and-proxy": { + "id": "apigateway-with-authorizer-and-proxy", + "path": "apigateway-with-authorizer-and-proxy", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "apigateway-with-authorizer-and-proxy/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "apigateway-with-authorizer-and-proxy/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "apigateway-with-authorizer-and-proxy/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.ts new file mode 100644 index 0000000000000..e884228934d2f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-apigateway/test/authorizers/integ.api-with-authorizer-and-proxy.ts @@ -0,0 +1,61 @@ +import * as path from 'path'; +import * as cdk from 'aws-cdk-lib'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; +import * as cognito from 'aws-cdk-lib/aws-cognito'; +import * as agw from 'aws-cdk-lib/aws-apigateway'; +import * as lambda from 'aws-cdk-lib/aws-lambda'; + +/* + * Stack verification steps: + * * `curl -i ` should return HTTP code 200 + */ + +const app = new cdk.App(); +const stack = new cdk.Stack(app, 'integtest-restapi-with-authorizer-and-proxy'); + +// create a cognito user pool +const userPool = new cognito.UserPool(stack, 'UserPool', { + selfSignUpEnabled: true, + signInAliases: { + email: true, + }, +}); + +const authorizer = new agw.CognitoUserPoolsAuthorizer(stack, 'Authorizer', { + cognitoUserPools: [userPool], +}); + +const api = new agw.RestApi(stack, 'Actions-ApiGateway', { + defaultCorsPreflightOptions: { + allowOrigins: agw.Cors.ALL_ORIGINS, + maxAge: cdk.Duration.days(10), + }, +}); +const root = api.root; +const sendResource = root.addResource('InitiateAction'); + +// prepare a dummy lambda function +const myfunc = new lambda.Function(stack, 'lambda-s3', { + code: lambda.AssetCode.fromAsset(path.join(__dirname, 'assets')), + handler: 'index.handler', + runtime: lambda.Runtime.NODEJS_18_X, +}); + +const sendLambdaIntegration = new agw.LambdaIntegration(myfunc); +sendResource.addProxy({ + defaultIntegration: sendLambdaIntegration, + anyMethod: true, + defaultMethodOptions: { + authorizer: authorizer, + authorizationType: agw.AuthorizationType.COGNITO, + authorizationScopes: ['scope'], + }, + defaultCorsPreflightOptions: { + allowOrigins: agw.Cors.ALL_ORIGINS, + allowMethods: agw.Cors.ALL_METHODS, + }, +}); + +new IntegTest(app, 'apigateway-with-authorizer-and-proxy', { + testCases: [stack], +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets.json new file mode 100644 index 0000000000000..ac34ef81ba402 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.assets.json new file mode 100644 index 0000000000000..908fdef0286cc --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "e0a77dee93e8bb6342262073748a42af4ed8073f53646fd5b900a4d3baeb431d": { + "source": { + "path": "aws-cdk-asg-integ.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "e0a77dee93e8bb6342262073748a42af4ed8073f53646fd5b900a4d3baeb431d.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.template.json new file mode 100644 index 0000000000000..ffa90d19af1d1 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/aws-cdk-asg-integ.template.json @@ -0,0 +1,604 @@ +{ + "Resources": { + "AsgKeyPairVPCAB15ADD7": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC" + } + ] + } + }, + "AsgKeyPairVPCPublicSubnet1SubnetEE75C076": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPublicSubnet1RouteTableAssociation52D4312C": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164" + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet1SubnetEE75C076" + } + } + }, + "AsgKeyPairVPCPublicSubnet1DefaultRouteE47759D2": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "RouteTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164" + } + }, + "DependsOn": [ + "AsgKeyPairVPCVPCGWC2DC249C" + ] + }, + "AsgKeyPairVPCPublicSubnet1EIPD55924EB": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ] + } + }, + "AsgKeyPairVPCPublicSubnet1NATGateway53893214": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "AsgKeyPairVPCPublicSubnet1EIPD55924EB", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet1SubnetEE75C076" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "AsgKeyPairVPCPublicSubnet1DefaultRouteE47759D2", + "AsgKeyPairVPCPublicSubnet1RouteTableAssociation52D4312C" + ] + }, + "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPublicSubnet2RouteTableAssociation679CE895": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51" + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF" + } + } + }, + "AsgKeyPairVPCPublicSubnet2DefaultRoute8CFFDC30": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "RouteTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51" + } + }, + "DependsOn": [ + "AsgKeyPairVPCVPCGWC2DC249C" + ] + }, + "AsgKeyPairVPCPublicSubnet2EIP4A16F5E3": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ] + } + }, + "AsgKeyPairVPCPublicSubnet2NATGateway154AF535": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "AsgKeyPairVPCPublicSubnet2EIP4A16F5E3", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "AsgKeyPairVPCPublicSubnet2DefaultRoute8CFFDC30", + "AsgKeyPairVPCPublicSubnet2RouteTableAssociation679CE895" + ] + }, + "AsgKeyPairVPCPrivateSubnet1SubnetE682643B": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPrivateSubnet1RouteTableAssociation936C35B8": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099" + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1SubnetE682643B" + } + } + }, + "AsgKeyPairVPCPrivateSubnet1DefaultRoute1E35D270": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "AsgKeyPairVPCPublicSubnet1NATGateway53893214" + }, + "RouteTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099" + } + } + }, + "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgKeyPairVPCPrivateSubnet2RouteTableAssociation807E4E20": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158" + }, + "SubnetId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD" + } + } + }, + "AsgKeyPairVPCPrivateSubnet2DefaultRouteE2EE5F73": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "AsgKeyPairVPCPublicSubnet2NATGateway154AF535" + }, + "RouteTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158" + } + } + }, + "AsgKeyPairVPCIGW20FC83AD": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgKeyPairVPC" + } + ] + } + }, + "AsgKeyPairVPCVPCGWC2DC249C": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "MyKeyPair659209CA": { + "Type": "AWS::EC2::KeyPair", + "Properties": { + "KeyFormat": "pem", + "KeyName": "awscdkasgintegMyKeyPair1AD26B9D", + "KeyType": "rsa" + } + }, + "AsgWithKeyPairInstanceSecurityGroup31DE792D": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgWithKeyPair" + } + ], + "VpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "AsgWithKeyPairInstanceRoleFFF6636B": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgWithKeyPair" + } + ] + } + }, + "AsgWithKeyPairInstanceProfileBF737BEF": { + "Type": "AWS::IAM::InstanceProfile", + "Properties": { + "Roles": [ + { + "Ref": "AsgWithKeyPairInstanceRoleFFF6636B" + } + ] + } + }, + "AsgWithKeyPairLaunchTemplate4333E477": { + "Type": "AWS::EC2::LaunchTemplate", + "Properties": { + "LaunchTemplateData": { + "IamInstanceProfile": { + "Arn": { + "Fn::GetAtt": [ + "AsgWithKeyPairInstanceProfileBF737BEF", + "Arn" + ] + } + }, + "ImageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "InstanceType": "t2.micro", + "KeyName": { + "Ref": "MyKeyPair659209CA" + }, + "Monitoring": { + "Enabled": false + }, + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "AsgWithKeyPairInstanceSecurityGroup31DE792D", + "GroupId" + ] + } + ], + "TagSpecifications": [ + { + "ResourceType": "instance", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + }, + { + "ResourceType": "volume", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + } + ], + "UserData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "TagSpecifications": [ + { + "ResourceType": "launch-template", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + } + ] + }, + "DependsOn": [ + "AsgWithKeyPairInstanceRoleFFF6636B" + ] + }, + "AsgWithKeyPairASG41E76E3F": { + "Type": "AWS::AutoScaling::AutoScalingGroup", + "Properties": { + "LaunchTemplate": { + "LaunchTemplateId": { + "Ref": "AsgWithKeyPairLaunchTemplate4333E477" + }, + "Version": { + "Fn::GetAtt": [ + "AsgWithKeyPairLaunchTemplate4333E477", + "LatestVersionNumber" + ] + } + }, + "MaxSize": "1", + "MinSize": "1", + "Tags": [ + { + "Key": "Name", + "PropagateAtLaunch": true, + "Value": "aws-cdk-asg-integ/AsgWithKeyPair" + } + ], + "VPCZoneIdentifier": [ + { + "Ref": "AsgKeyPairVPCPrivateSubnet1SubnetE682643B" + }, + { + "Ref": "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD" + } + ] + }, + "UpdatePolicy": { + "AutoScalingScheduledAction": { + "IgnoreUnmodifiedGroupSizeProperties": true + } + } + } + }, + "Parameters": { + "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-gp2" + }, + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/integ.json new file mode 100644 index 0000000000000..089f09dc389ac --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "AsgIntegKeyPair/DefaultTest": { + "stacks": [ + "aws-cdk-asg-integ" + ], + "assertionStack": "AsgIntegKeyPair/DefaultTest/DeployAssert", + "assertionStackName": "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/manifest.json new file mode 100644 index 0000000000000..22d3c1a3dd68a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/manifest.json @@ -0,0 +1,287 @@ +{ + "version": "36.0.0", + "artifacts": { + "aws-cdk-asg-integ.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "aws-cdk-asg-integ.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "aws-cdk-asg-integ": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "aws-cdk-asg-integ.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e0a77dee93e8bb6342262073748a42af4ed8073f53646fd5b900a4d3baeb431d.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "aws-cdk-asg-integ.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "aws-cdk-asg-integ.assets" + ], + "metadata": { + "/aws-cdk-asg-integ/AsgKeyPairVPC/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCAB15ADD7" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1SubnetEE75C076" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1RouteTableAssociation52D4312C" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1DefaultRouteE47759D2" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1EIPD55924EB" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet1NATGateway53893214" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2RouteTableAssociation679CE895" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2DefaultRoute8CFFDC30" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2EIP4A16F5E3" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPublicSubnet2NATGateway154AF535" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet1SubnetE682643B" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet1RouteTableAssociation936C35B8" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet1DefaultRoute1E35D270" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet2RouteTableAssociation807E4E20" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCPrivateSubnet2DefaultRouteE2EE5F73" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCIGW20FC83AD" + } + ], + "/aws-cdk-asg-integ/AsgKeyPairVPC/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgKeyPairVPCVPCGWC2DC249C" + } + ], + "/aws-cdk-asg-integ/MyKeyPair/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyKeyPair659209CA" + } + ], + "/aws-cdk-asg-integ/AsgWithKeyPair/InstanceSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgWithKeyPairInstanceSecurityGroup31DE792D" + } + ], + "/aws-cdk-asg-integ/AsgWithKeyPair/InstanceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgWithKeyPairInstanceRoleFFF6636B" + } + ], + "/aws-cdk-asg-integ/AsgWithKeyPair/InstanceProfile": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgWithKeyPairInstanceProfileBF737BEF" + } + ], + "/aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgWithKeyPairLaunchTemplate4333E477" + } + ], + "/aws-cdk-asg-integ/AsgWithKeyPair/ASG": [ + { + "type": "aws:cdk:logicalId", + "data": "AsgWithKeyPairASG41E76E3F" + } + ], + "/aws-cdk-asg-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + { + "type": "aws:cdk:logicalId", + "data": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + } + ], + "/aws-cdk-asg-integ/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-asg-integ/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-asg-integ" + }, + "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "AsgIntegKeyPairDefaultTestDeployAssert4EC47FB2.assets" + ], + "metadata": { + "/AsgIntegKeyPair/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/AsgIntegKeyPair/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "AsgIntegKeyPair/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/tree.json new file mode 100644 index 0000000000000..993ad0c3ac787 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.js.snapshot/tree.json @@ -0,0 +1,1037 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "aws-cdk-asg-integ": { + "id": "aws-cdk-asg-integ", + "path": "aws-cdk-asg-integ", + "children": { + "AsgKeyPairVPC": { + "id": "AsgKeyPairVPC", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.0.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164" + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet1SubnetEE75C076" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "routeTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet1RouteTableF3B77164" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "AsgKeyPairVPCPublicSubnet1EIPD55924EB", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet1SubnetEE75C076" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.64.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51" + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "routeTableId": { + "Ref": "AsgKeyPairVPCPublicSubnet2RouteTableA5C10D51" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "AsgKeyPairVPCPublicSubnet2EIP4A16F5E3", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPublicSubnet2Subnet5FEA12AF" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.128.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099" + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1SubnetE682643B" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "AsgKeyPairVPCPublicSubnet1NATGateway53893214" + }, + "routeTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet1RouteTable0CE94099" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.192.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158" + }, + "subnetId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "AsgKeyPairVPCPublicSubnet2NATGateway154AF535" + }, + "routeTableId": { + "Ref": "AsgKeyPairVPCPrivateSubnet2RouteTable718F0158" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgKeyPairVPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "aws-cdk-asg-integ/AsgKeyPairVPC/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "internetGatewayId": { + "Ref": "AsgKeyPairVPCIGW20FC83AD" + }, + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "MyKeyPair": { + "id": "MyKeyPair", + "path": "aws-cdk-asg-integ/MyKeyPair", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-asg-integ/MyKeyPair/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::KeyPair", + "aws:cdk:cloudformation:props": { + "keyFormat": "pem", + "keyName": "awscdkasgintegMyKeyPair1AD26B9D", + "keyType": "rsa" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnKeyPair", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.KeyPair", + "version": "0.0.0" + } + }, + "AsgWithKeyPair": { + "id": "AsgWithKeyPair", + "path": "aws-cdk-asg-integ/AsgWithKeyPair", + "children": { + "InstanceSecurityGroup": { + "id": "InstanceSecurityGroup", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceSecurityGroup", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair" + } + ], + "vpcId": { + "Ref": "AsgKeyPairVPCAB15ADD7" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "InstanceRole": { + "id": "InstanceRole", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceRole", + "children": { + "ImportInstanceRole": { + "id": "ImportInstanceRole", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceRole/ImportInstanceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "InstanceProfile": { + "id": "InstanceProfile", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/InstanceProfile", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::InstanceProfile", + "aws:cdk:cloudformation:props": { + "roles": [ + { + "Ref": "AsgWithKeyPairInstanceRoleFFF6636B" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", + "version": "0.0.0" + } + }, + "ImportedInstanceProfile": { + "id": "ImportedInstanceProfile", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/ImportedInstanceProfile", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "LaunchTemplate": { + "id": "LaunchTemplate", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::LaunchTemplate", + "aws:cdk:cloudformation:props": { + "launchTemplateData": { + "iamInstanceProfile": { + "arn": { + "Fn::GetAtt": [ + "AsgWithKeyPairInstanceProfileBF737BEF", + "Arn" + ] + } + }, + "imageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "instanceType": "t2.micro", + "keyName": { + "Ref": "MyKeyPair659209CA" + }, + "monitoring": { + "enabled": false + }, + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "AsgWithKeyPairInstanceSecurityGroup31DE792D", + "GroupId" + ] + } + ], + "tagSpecifications": [ + { + "resourceType": "instance", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + }, + { + "resourceType": "volume", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + } + ], + "userData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "tagSpecifications": [ + { + "resourceType": "launch-template", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair/LaunchTemplate" + } + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnLaunchTemplate", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.LaunchTemplate", + "version": "0.0.0" + } + }, + "ASG": { + "id": "ASG", + "path": "aws-cdk-asg-integ/AsgWithKeyPair/ASG", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AutoScaling::AutoScalingGroup", + "aws:cdk:cloudformation:props": { + "launchTemplate": { + "launchTemplateId": { + "Ref": "AsgWithKeyPairLaunchTemplate4333E477" + }, + "version": { + "Fn::GetAtt": [ + "AsgWithKeyPairLaunchTemplate4333E477", + "LatestVersionNumber" + ] + } + }, + "maxSize": "1", + "minSize": "1", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-asg-integ/AsgWithKeyPair", + "propagateAtLaunch": true + } + ], + "vpcZoneIdentifier": [ + { + "Ref": "AsgKeyPairVPCPrivateSubnet1SubnetE682643B" + }, + { + "Ref": "AsgKeyPairVPCPrivateSubnet2Subnet0149E1CD" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.CfnAutoScalingGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.AutoScalingGroup", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "path": "aws-cdk-asg-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "path": "aws-cdk-asg-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-asg-integ/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-asg-integ/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "AsgIntegKeyPair": { + "id": "AsgIntegKeyPair", + "path": "AsgIntegKeyPair", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "AsgIntegKeyPair/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "AsgIntegKeyPair/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "AsgIntegKeyPair/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "AsgIntegKeyPair/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "AsgIntegKeyPair/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.ts new file mode 100644 index 0000000000000..db29a7fbf9446 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.asg-keypair.ts @@ -0,0 +1,28 @@ +#!/usr/bin/env node +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as cdk from 'aws-cdk-lib'; +import * as autoscaling from 'aws-cdk-lib/aws-autoscaling'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; +import { AUTOSCALING_GENERATE_LAUNCH_TEMPLATE } from 'aws-cdk-lib/cx-api'; + +const app = new cdk.App(); +const stack = new cdk.Stack(app, 'aws-cdk-asg-integ'); +stack.node.setContext(AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, true); + +const vpc = new ec2.Vpc(stack, 'AsgKeyPairVPC', { + restrictDefaultSecurityGroup: false, + maxAzs: 2, +}); + +new autoscaling.AutoScalingGroup(stack, 'AsgWithKeyPair', { + instanceType: new ec2.InstanceType('t2.micro'), + machineImage: ec2.MachineImage.latestAmazonLinux2(), + keyPair: new ec2.KeyPair(stack, 'MyKeyPair'), + vpc, +}); + +new IntegTest(app, 'AsgIntegKeyPair', { + testCases: [stack], +}); + +app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.assets.json new file mode 100644 index 0000000000000..de73735fba97e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "d6719f62d019501bd3128bc6a3856e0dfac32026e408a28704cf9683b80bb614": { + "source": { + "path": "aws-cdk-autoscaling-integ.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "d6719f62d019501bd3128bc6a3856e0dfac32026e408a28704cf9683b80bb614.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.template.json new file mode 100644 index 0000000000000..6e9c25c9c38ee --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/aws-cdk-autoscaling-integ.template.json @@ -0,0 +1,681 @@ +{ + "Resources": { + "VPCB9E5F0B4": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC" + } + ] + } + }, + "VPCPublicSubnet1SubnetB4246D30": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableFEE4B781": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableAssociation0B0896DC": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "VPCPublicSubnet1DefaultRoute91CEF279": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet1EIP6AD938E8": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ] + } + }, + "VPCPublicSubnet1NATGatewayE0556630": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC" + ] + }, + "VPCPublicSubnet2Subnet74179F39": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTable6F1A15F1": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTableAssociation5A808732": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "VPCPublicSubnet2DefaultRouteB7481BBA": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet2EIP4947BC00": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ] + } + }, + "VPCPublicSubnet2NATGateway3C070193": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ] + }, + "VPCPrivateSubnet1Subnet8BCA10E0": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableBE8A6027": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableAssociation347902D1": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "VPCPrivateSubnet1DefaultRouteAE1D6490": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "VPCPrivateSubnet2SubnetCFCDAA7A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTable0A19E10E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTableAssociation0C73D413": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "VPCIGWB7E252D3": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/VPC" + } + ] + } + }, + "VPCVPCGW99B986DC": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "FleetInstanceSecurityGroupA8C3D7AD": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "aws-cdk-autoscaling-integ/Fleet/InstanceSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "FleetInstanceRoleA605DB82": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet" + } + ] + } + }, + "FleetInstanceProfileC6192A66": { + "Type": "AWS::IAM::InstanceProfile", + "Properties": { + "Roles": [ + { + "Ref": "FleetInstanceRoleA605DB82" + } + ] + } + }, + "FleetLaunchTemplate3FC2FEAE": { + "Type": "AWS::EC2::LaunchTemplate", + "Properties": { + "LaunchTemplateData": { + "IamInstanceProfile": { + "Arn": { + "Fn::GetAtt": [ + "FleetInstanceProfileC6192A66", + "Arn" + ] + } + }, + "ImageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amihvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "InstanceMarketOptions": { + "MarketType": "spot", + "SpotOptions": { + "MaxPrice": "0.2" + } + }, + "InstanceType": "t2.micro", + "Monitoring": { + "Enabled": false + }, + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "FleetInstanceSecurityGroupA8C3D7AD", + "GroupId" + ] + } + ], + "TagSpecifications": [ + { + "ResourceType": "instance", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + }, + { + "ResourceType": "volume", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + } + ], + "UserData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "TagSpecifications": [ + { + "ResourceType": "launch-template", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + } + ] + }, + "DependsOn": [ + "FleetInstanceRoleA605DB82" + ] + }, + "FleetASG3971DFE5": { + "Type": "AWS::AutoScaling::AutoScalingGroup", + "Properties": { + "LaunchTemplate": { + "LaunchTemplateId": { + "Ref": "FleetLaunchTemplate3FC2FEAE" + }, + "Version": { + "Fn::GetAtt": [ + "FleetLaunchTemplate3FC2FEAE", + "LatestVersionNumber" + ] + } + }, + "MaxSize": "1", + "MinSize": "1", + "Tags": [ + { + "Key": "Name", + "PropagateAtLaunch": true, + "Value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "VPCZoneIdentifier": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + }, + "UpdatePolicy": { + "AutoScalingScheduledAction": { + "IgnoreUnmodifiedGroupSizeProperties": true + } + } + }, + "FleetMetricScaleLowerPolicy72699F44": { + "Type": "AWS::AutoScaling::ScalingPolicy", + "Properties": { + "AdjustmentType": "ChangeInCapacity", + "AutoScalingGroupName": { + "Ref": "FleetASG3971DFE5" + }, + "MetricAggregationType": "Average", + "PolicyType": "StepScaling", + "StepAdjustments": [ + { + "MetricIntervalUpperBound": 0, + "ScalingAdjustment": -5 + } + ] + } + }, + "FleetMetricScaleLowerAlarmE0890D17": { + "Type": "AWS::CloudWatch::Alarm", + "Properties": { + "AlarmActions": [ + { + "Ref": "FleetMetricScaleLowerPolicy72699F44" + } + ], + "AlarmDescription": "Lower threshold scaling alarm", + "ComparisonOperator": "LessThanOrEqualToThreshold", + "EvaluationPeriods": 1, + "MetricName": "Metric", + "Namespace": "Repro", + "Period": 300, + "Statistic": "Average", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "Threshold": 10 + } + }, + "FleetMetricScaleUpperPolicy086BA086": { + "Type": "AWS::AutoScaling::ScalingPolicy", + "Properties": { + "AdjustmentType": "ChangeInCapacity", + "AutoScalingGroupName": { + "Ref": "FleetASG3971DFE5" + }, + "MetricAggregationType": "Average", + "PolicyType": "StepScaling", + "StepAdjustments": [ + { + "MetricIntervalLowerBound": 0, + "ScalingAdjustment": 5 + } + ] + } + }, + "FleetMetricScaleUpperAlarmF8D50707": { + "Type": "AWS::CloudWatch::Alarm", + "Properties": { + "AlarmActions": [ + { + "Ref": "FleetMetricScaleUpperPolicy086BA086" + } + ], + "AlarmDescription": "Upper threshold scaling alarm", + "ComparisonOperator": "GreaterThanOrEqualToThreshold", + "EvaluationPeriods": 1, + "MetricName": "Metric", + "Namespace": "Repro", + "Period": 300, + "Statistic": "Average", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "Threshold": 50 + } + } + }, + "Parameters": { + "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amihvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2" + }, + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/integ.json new file mode 100644 index 0000000000000..471225246d52c --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "step-scaling-with-cooldown/DefaultTest": { + "stacks": [ + "aws-cdk-autoscaling-integ" + ], + "assertionStack": "step-scaling-with-cooldown/DefaultTest/DeployAssert", + "assertionStackName": "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/manifest.json new file mode 100644 index 0000000000000..99255e6255d4f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/manifest.json @@ -0,0 +1,317 @@ +{ + "version": "36.0.0", + "artifacts": { + "aws-cdk-autoscaling-integ.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "aws-cdk-autoscaling-integ.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "aws-cdk-autoscaling-integ": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "aws-cdk-autoscaling-integ.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/d6719f62d019501bd3128bc6a3856e0dfac32026e408a28704cf9683b80bb614.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "aws-cdk-autoscaling-integ.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "aws-cdk-autoscaling-integ.assets" + ], + "metadata": { + "/aws-cdk-autoscaling-integ/VPC/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCB9E5F0B4" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1SubnetB4246D30" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableFEE4B781" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableAssociation0B0896DC" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1DefaultRoute91CEF279" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1EIP6AD938E8" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1NATGatewayE0556630" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2Subnet74179F39" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTable6F1A15F1" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTableAssociation5A808732" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2DefaultRouteB7481BBA" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2EIP4947BC00" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PublicSubnet2/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2NATGateway3C070193" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1Subnet8BCA10E0" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableBE8A6027" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableAssociation347902D1" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1DefaultRouteAE1D6490" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTable0A19E10E" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTableAssociation0C73D413" + } + ], + "/aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2DefaultRouteF4F5CFD2" + } + ], + "/aws-cdk-autoscaling-integ/VPC/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCIGWB7E252D3" + } + ], + "/aws-cdk-autoscaling-integ/VPC/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCVPCGW99B986DC" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/InstanceSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetInstanceSecurityGroupA8C3D7AD" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/InstanceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetInstanceRoleA605DB82" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/InstanceProfile": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetInstanceProfileC6192A66" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/LaunchTemplate/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetLaunchTemplate3FC2FEAE" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/ASG": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetASG3971DFE5" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerPolicy": [ + { + "type": "aws:cdk:warning", + "data": "'Cooldown' is valid only if the policy type is SimpleScaling. Default to ignore the values set. [ack: @aws-cdk/aws-autoscaling:cooldownOnStepScaling]" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetMetricScaleLowerPolicy72699F44" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerAlarm/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetMetricScaleLowerAlarmE0890D17" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperPolicy": [ + { + "type": "aws:cdk:warning", + "data": "'Cooldown' is valid only if the policy type is SimpleScaling. Default to ignore the values set. [ack: @aws-cdk/aws-autoscaling:cooldownOnStepScaling]" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetMetricScaleUpperPolicy086BA086" + } + ], + "/aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperAlarm/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "FleetMetricScaleUpperAlarmF8D50707" + } + ], + "/aws-cdk-autoscaling-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + { + "type": "aws:cdk:logicalId", + "data": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amihvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + } + ], + "/aws-cdk-autoscaling-integ/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-autoscaling-integ/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-autoscaling-integ" + }, + "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets" + ], + "metadata": { + "/step-scaling-with-cooldown/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/step-scaling-with-cooldown/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "step-scaling-with-cooldown/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets.json new file mode 100644 index 0000000000000..1f89b7f79ba69 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/stepscalingwithcooldownDefaultTestDeployAssert13B8C40F.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/tree.json new file mode 100644 index 0000000000000..cff8c3e8fee69 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.js.snapshot/tree.json @@ -0,0 +1,1178 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "aws-cdk-autoscaling-integ": { + "id": "aws-cdk-autoscaling-integ", + "path": "aws-cdk-autoscaling-integ", + "children": { + "VPC": { + "id": "VPC", + "path": "aws-cdk-autoscaling-integ/VPC", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/VPC/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.0.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.64.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.128.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.192.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-autoscaling-integ/VPC/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "aws-cdk-autoscaling-integ/VPC/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "aws-cdk-autoscaling-integ/VPC/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "internetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "Fleet": { + "id": "Fleet", + "path": "aws-cdk-autoscaling-integ/Fleet", + "children": { + "InstanceSecurityGroup": { + "id": "InstanceSecurityGroup", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "aws-cdk-autoscaling-integ/Fleet/InstanceSecurityGroup", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "InstanceRole": { + "id": "InstanceRole", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceRole", + "children": { + "ImportInstanceRole": { + "id": "ImportInstanceRole", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceRole/ImportInstanceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "InstanceProfile": { + "id": "InstanceProfile", + "path": "aws-cdk-autoscaling-integ/Fleet/InstanceProfile", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::InstanceProfile", + "aws:cdk:cloudformation:props": { + "roles": [ + { + "Ref": "FleetInstanceRoleA605DB82" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", + "version": "0.0.0" + } + }, + "ImportedInstanceProfile": { + "id": "ImportedInstanceProfile", + "path": "aws-cdk-autoscaling-integ/Fleet/ImportedInstanceProfile", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "LaunchTemplate": { + "id": "LaunchTemplate", + "path": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::LaunchTemplate", + "aws:cdk:cloudformation:props": { + "launchTemplateData": { + "iamInstanceProfile": { + "arn": { + "Fn::GetAtt": [ + "FleetInstanceProfileC6192A66", + "Arn" + ] + } + }, + "imageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amihvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "instanceType": "t2.micro", + "instanceMarketOptions": { + "marketType": "spot", + "spotOptions": { + "maxPrice": "0.2" + } + }, + "monitoring": { + "enabled": false + }, + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "FleetInstanceSecurityGroupA8C3D7AD", + "GroupId" + ] + } + ], + "tagSpecifications": [ + { + "resourceType": "instance", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + }, + { + "resourceType": "volume", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + } + ], + "userData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "tagSpecifications": [ + { + "resourceType": "launch-template", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet/LaunchTemplate" + } + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnLaunchTemplate", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.LaunchTemplate", + "version": "0.0.0" + } + }, + "ASG": { + "id": "ASG", + "path": "aws-cdk-autoscaling-integ/Fleet/ASG", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AutoScaling::AutoScalingGroup", + "aws:cdk:cloudformation:props": { + "launchTemplate": { + "launchTemplateId": { + "Ref": "FleetLaunchTemplate3FC2FEAE" + }, + "version": { + "Fn::GetAtt": [ + "FleetLaunchTemplate3FC2FEAE", + "LatestVersionNumber" + ] + } + }, + "maxSize": "1", + "minSize": "1", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet", + "propagateAtLaunch": true + } + ], + "vpcZoneIdentifier": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.CfnAutoScalingGroup", + "version": "0.0.0" + } + }, + "MetricScale": { + "id": "MetricScale", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale", + "children": { + "LowerPolicy": { + "id": "LowerPolicy", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AutoScaling::ScalingPolicy", + "aws:cdk:cloudformation:props": { + "adjustmentType": "ChangeInCapacity", + "autoScalingGroupName": { + "Ref": "FleetASG3971DFE5" + }, + "metricAggregationType": "Average", + "policyType": "StepScaling", + "stepAdjustments": [ + { + "metricIntervalUpperBound": 0, + "scalingAdjustment": -5 + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.CfnScalingPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.StepScalingAction", + "version": "0.0.0" + } + }, + "LowerAlarm": { + "id": "LowerAlarm", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerAlarm", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/LowerAlarm/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CloudWatch::Alarm", + "aws:cdk:cloudformation:props": { + "alarmActions": [ + { + "Ref": "FleetMetricScaleLowerPolicy72699F44" + } + ], + "alarmDescription": "Lower threshold scaling alarm", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "comparisonOperator": "LessThanOrEqualToThreshold", + "evaluationPeriods": 1, + "metricName": "Metric", + "namespace": "Repro", + "period": 300, + "statistic": "Average", + "threshold": 10 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cloudwatch.CfnAlarm", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cloudwatch.Alarm", + "version": "0.0.0" + } + }, + "UpperPolicy": { + "id": "UpperPolicy", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AutoScaling::ScalingPolicy", + "aws:cdk:cloudformation:props": { + "adjustmentType": "ChangeInCapacity", + "autoScalingGroupName": { + "Ref": "FleetASG3971DFE5" + }, + "metricAggregationType": "Average", + "policyType": "StepScaling", + "stepAdjustments": [ + { + "metricIntervalLowerBound": 0, + "scalingAdjustment": 5 + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.CfnScalingPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.StepScalingAction", + "version": "0.0.0" + } + }, + "UpperAlarm": { + "id": "UpperAlarm", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperAlarm", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-autoscaling-integ/Fleet/MetricScale/UpperAlarm/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CloudWatch::Alarm", + "aws:cdk:cloudformation:props": { + "alarmActions": [ + { + "Ref": "FleetMetricScaleUpperPolicy086BA086" + } + ], + "alarmDescription": "Upper threshold scaling alarm", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-autoscaling-integ/Fleet" + } + ], + "comparisonOperator": "GreaterThanOrEqualToThreshold", + "evaluationPeriods": 1, + "metricName": "Metric", + "namespace": "Repro", + "period": 300, + "statistic": "Average", + "threshold": 50 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cloudwatch.CfnAlarm", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_cloudwatch.Alarm", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.StepScalingPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_autoscaling.AutoScalingGroup", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "path": "aws-cdk-autoscaling-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "path": "aws-cdk-autoscaling-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-autoscaling-integ/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-autoscaling-integ/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "step-scaling-with-cooldown": { + "id": "step-scaling-with-cooldown", + "path": "step-scaling-with-cooldown", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "step-scaling-with-cooldown/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "step-scaling-with-cooldown/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "step-scaling-with-cooldown/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "step-scaling-with-cooldown/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "step-scaling-with-cooldown/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.ts new file mode 100644 index 0000000000000..02f6978dd4ba7 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-autoscaling/test/integ.step-scaling-with-cooldown.ts @@ -0,0 +1,39 @@ +#!/usr/bin/env node +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as cdk from 'aws-cdk-lib'; +import * as autoscaling from 'aws-cdk-lib/aws-autoscaling'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; +import { Metric } from 'aws-cdk-lib/aws-cloudwatch'; + +const app = new cdk.App(); +const stack = new cdk.Stack(app, 'aws-cdk-autoscaling-integ'); + +const vpc = new ec2.Vpc(stack, 'VPC', { + maxAzs: 2, + restrictDefaultSecurityGroup: false, +}); + +const autoScalingGroup = new autoscaling.AutoScalingGroup(stack, 'Fleet', { + vpc, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO), + machineImage: new ec2.AmazonLinuxImage({ generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2 }), + spotPrice: '0.20', +}); + +const metric = new Metric({ + namespace: 'Repro', + metricName: 'Metric', +}); + +autoScalingGroup.scaleOnMetric('MetricScale', { + metric, + scalingSteps: [ + { upper: 10, change: -5 }, + { lower: 50, change: 5 }, + ], + cooldown: cdk.Duration.minutes(5), // should ignore this property and deploy successfully +}); + +new IntegTest(app, 'step-scaling-with-cooldown', { + testCases: [stack], +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.assets.json index 956a0f02b28cf..63b5f2a36c63d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "36.0.0", "files": { - "2d55991f8610bd09d69c691b23e8748b59d28510e4ad2e8aabf6aeb6eddd48fe": { + "ecfa9b32922fc5d6dd80addeee9cf1b72153d647424169a0d61de05e5198dd29": { "source": { "path": "aws-deep-learning-container-build-image.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "2d55991f8610bd09d69c691b23e8748b59d28510e4ad2e8aabf6aeb6eddd48fe.json", + "objectKey": "ecfa9b32922fc5d6dd80addeee9cf1b72153d647424169a0d61de05e5198dd29.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.template.json index b513ac3cc8d79..40ad081368cbf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/aws-deep-learning-container-build-image.template.json @@ -169,6 +169,10 @@ "Artifacts": { "Type": "NO_ARTIFACTS" }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3", "Environment": { "ComputeType": "BUILD_GENERAL1_LARGE", "Image": { @@ -209,11 +213,7 @@ "Source": { "BuildSpec": "{\n \"version\": \"0.2\",\n \"phases\": {\n \"build\": {\n \"commands\": [\n \"ls\"\n ]\n }\n }\n}", "Type": "NO_SOURCE" - }, - "Cache": { - "Type": "NO_CACHE" - }, - "EncryptionKey": "alias/aws/s3" + } } } }, @@ -231,12 +231,21 @@ "ap-south-1": { "value": "763104351884" }, + "ap-south-2": { + "value": "772153158452" + }, "ap-southeast-1": { "value": "763104351884" }, "ap-southeast-2": { "value": "763104351884" }, + "ap-southeast-3": { + "value": "907027046896" + }, + "ap-southeast-4": { + "value": "457447274322" + }, "ca-central-1": { "value": "763104351884" }, @@ -249,9 +258,18 @@ "eu-central-1": { "value": "763104351884" }, + "eu-central-2": { + "value": "380420809688" + }, "eu-north-1": { "value": "763104351884" }, + "eu-south-1": { + "value": "692866216735" + }, + "eu-south-2": { + "value": "503227376785" + }, "eu-west-1": { "value": "763104351884" }, @@ -261,6 +279,9 @@ "eu-west-3": { "value": "763104351884" }, + "me-central-1": { + "value": "914824155844" + }, "me-south-1": { "value": "217643126080" }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/cdk.out index 588d7b269d34f..1f0068d32659a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/integ.json index 707f536a51f0f..5f67ec9f87cbd 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "36.0.0", "testCases": { "integ.aws-deep-learning-container-build-image": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/manifest.json index 65a0af1446650..8336a2d8e6de5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "36.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "aws-deep-learning-container-build-image.assets": { "type": "cdk:asset-manifest", "properties": { @@ -20,10 +14,11 @@ "environment": "aws://unknown-account/unknown-region", "properties": { "templateFile": "aws-deep-learning-container-build-image.template.json", + "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/2d55991f8610bd09d69c691b23e8748b59d28510e4ad2e8aabf6aeb6eddd48fe.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/ecfa9b32922fc5d6dd80addeee9cf1b72153d647424169a0d61de05e5198dd29.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -77,6 +72,12 @@ ] }, "displayName": "aws-deep-learning-container-build-image" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/tree.json index cd8e676e415b6..d1fae145b5e78 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.aws-deep-learning-container-build-image.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "aws-deep-learning-container-build-image": { "id": "aws-deep-learning-container-build-image", "path": "aws-deep-learning-container-build-image", @@ -24,6 +16,14 @@ "id": "Role", "path": "aws-deep-learning-container-build-image/Project/Role", "children": { + "ImportRole": { + "id": "ImportRole", + "path": "aws-deep-learning-container-build-image/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-deep-learning-container-build-image/Project/Role/Resource", @@ -45,7 +45,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -203,19 +203,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -228,6 +228,10 @@ "artifacts": { "type": "NO_ARTIFACTS" }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3", "environment": { "type": "LINUX_GPU_CONTAINER", "image": { @@ -268,15 +272,11 @@ "source": { "type": "NO_SOURCE", "buildSpec": "{\n \"version\": \"0.2\",\n \"phases\": {\n \"build\": {\n \"commands\": [\n \"ls\"\n ]\n }\n }\n}" - }, - "cache": { - "type": "NO_CACHE" - }, - "encryptionKey": "alias/aws/s3" + } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-codebuild.CfnProject", + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", "version": "0.0.0" } }, @@ -284,13 +284,13 @@ "id": "AwsDlcRepositoryCodeBuild", "path": "aws-deep-learning-container-build-image/Project/AwsDlcRepositoryCodeBuild", "constructInfo": { - "fqn": "@aws-cdk/aws-ecr.RepositoryBase", + "fqn": "aws-cdk-lib.aws_ecr.RepositoryBase", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-codebuild.Project", + "fqn": "aws-cdk-lib.aws_codebuild.Project", "version": "0.0.0" } }, @@ -298,20 +298,44 @@ "id": "DlcRepositoryAccountMap", "path": "aws-deep-learning-container-build-image/DlcRepositoryAccountMap", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.CfnMapping", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-deep-learning-container-build-image/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-deep-learning-container-build-image/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.bundle/index.js similarity index 99% rename from packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.bundle/index.js rename to packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.bundle/index.js index c13d3dc96a272..58396e8540522 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.bundle/index.js +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/asset.310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.bundle/index.js @@ -14732,9 +14732,11 @@ var require_runtimeConfig_shared = __commonJS({ // ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js var require_dist_cjs45 = __commonJS({ "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) { + var __create2 = Object.create; var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __getProtoOf2 = Object.getPrototypeOf; var __hasOwnProp2 = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); var __export2 = (target, all) => { @@ -14749,6 +14751,14 @@ var require_dist_cjs45 = __commonJS({ } return to; }; + var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, + mod + )); var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); var src_exports = {}; __export2(src_exports, { @@ -14756,7 +14766,6 @@ var require_dist_cjs45 = __commonJS({ }); module2.exports = __toCommonJS2(src_exports); var import_config_resolver = require_dist_cjs21(); - var import_credential_provider_imds = require_dist_cjs40(); var import_node_config_provider = require_dist_cjs24(); var import_property_provider = require_dist_cjs6(); var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV"; @@ -14819,8 +14828,9 @@ var require_dist_cjs45 = __commonJS({ } if (!process.env[ENV_IMDS_DISABLED]) { try { - const endpoint = await (0, import_credential_provider_imds.getInstanceMetadataEndpoint)(); - return (await (0, import_credential_provider_imds.httpRequest)({ ...endpoint, path: IMDS_REGION_PATH })).toString(); + const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs40())); + const endpoint = await getInstanceMetadataEndpoint(); + return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString(); } catch (e) { } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.assets.json index a450558752a19..eb92d27df5797 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.assets.json @@ -1,7 +1,7 @@ { "version": "36.0.0", "files": { - "cc3950730a8132436f16f7e744268033b6fe8ab56ffa886b0e6ba03f7baf97ac": { + "46609a0e4b8f4edd1db7fc09828756c229845a1f17b53c56562a9f7eb4ea6b30": { "source": { "path": "aws-cdk-codepipeline-with-pipeline-triggers.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "cc3950730a8132436f16f7e744268033b6fe8ab56ffa886b0e6ba03f7baf97ac.json", + "objectKey": "46609a0e4b8f4edd1db7fc09828756c229845a1f17b53c56562a9f7eb4ea6b30.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.template.json index a346fb28e3dd2..577f1d2a091d7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/aws-cdk-codepipeline-with-pipeline-triggers.template.json @@ -476,7 +476,7 @@ }, "Configuration": { "ConnectionArn": "MOCK", - "FullRepositoryId": "go-to-k/cdk-pipelines-demo", + "FullRepositoryId": "go-to-k/cdk-codepipeline-demo-1", "BranchName": "master" }, "Name": "CodeStarConnectionsSourceAction", @@ -751,6 +751,772 @@ } ] } + }, + "MyProject2Role640CD8C0": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "MyProject2RoleDefaultPolicyF6082200": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "MyProject2B52B17CC" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "MyProject2B52B17CC" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "MyProject2B52B17CC" + }, + "-*" + ] + ] + } + }, + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "MyProject2RoleDefaultPolicyF6082200", + "Roles": [ + { + "Ref": "MyProject2Role640CD8C0" + } + ] + } + }, + "MyProject2B52B17CC": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "CODEPIPELINE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:1.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "MyProject2Role640CD8C0", + "Arn" + ] + }, + "Source": { + "Type": "CODEPIPELINE" + } + } + }, + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2": { + "Type": "AWS::KMS::Key", + "Properties": { + "KeyPolicy": { + "Statement": [ + { + "Action": "kms:*", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + }, + "Resource": "*" + } + ], + "Version": "2012-10-17" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "Pipeline2ArtifactsBucketEncryptionKeyAlias4C3D138C": { + "Type": "AWS::KMS::Alias", + "Properties": { + "AliasName": "alias/codepipeline-aws-cdk-codepipeline-with-pipeline-triggers-pipeline2-a7cdfc85", + "TargetKeyId": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "Pipeline2ArtifactsBucketBBAC8B82": { + "Type": "AWS::S3::Bucket", + "Properties": { + "BucketEncryption": { + "ServerSideEncryptionConfiguration": [ + { + "ServerSideEncryptionByDefault": { + "KMSMasterKeyID": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + }, + "SSEAlgorithm": "aws:kms" + } + } + ] + }, + "PublicAccessBlockConfiguration": { + "BlockPublicAcls": true, + "BlockPublicPolicy": true, + "IgnorePublicAcls": true, + "RestrictPublicBuckets": true + } + }, + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" + }, + "Pipeline2ArtifactsBucketPolicyB3F6A84F": { + "Type": "AWS::S3::BucketPolicy", + "Properties": { + "Bucket": { + "Ref": "Pipeline2ArtifactsBucketBBAC8B82" + }, + "PolicyDocument": { + "Statement": [ + { + "Action": "s3:*", + "Condition": { + "Bool": { + "aws:SecureTransport": "false" + } + }, + "Effect": "Deny", + "Principal": { + "AWS": "*" + }, + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + } + } + }, + "Pipeline2RoleB1668F7C": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codepipeline.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "Pipeline2RoleDefaultPolicy3CA7A97C": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + }, + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F", + "Arn" + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "Pipeline2RoleDefaultPolicy3CA7A97C", + "Roles": [ + { + "Ref": "Pipeline2RoleB1668F7C" + } + ] + } + }, + "Pipeline27E937D7F": { + "Type": "AWS::CodePipeline::Pipeline", + "Properties": { + "ArtifactStore": { + "EncryptionKey": { + "Id": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + }, + "Type": "KMS" + }, + "Location": { + "Ref": "Pipeline2ArtifactsBucketBBAC8B82" + }, + "Type": "S3" + }, + "Name": "my-pipeline2", + "PipelineType": "V2", + "RoleArn": { + "Fn::GetAtt": [ + "Pipeline2RoleB1668F7C", + "Arn" + ] + }, + "Stages": [ + { + "Actions": [ + { + "ActionTypeId": { + "Category": "Source", + "Owner": "AWS", + "Provider": "CodeStarSourceConnection", + "Version": "1" + }, + "Configuration": { + "ConnectionArn": "MOCK", + "FullRepositoryId": "go-to-k/cdk-codepipeline-demo-2", + "BranchName": "master" + }, + "Name": "CodeStarConnectionsSourceAction2", + "Namespace": "Source_CodeStarConnectionsSourceAction2_NS", + "OutputArtifacts": [ + { + "Name": "Artifact_Source_CodeStarConnectionsSourceAction2" + } + ], + "RoleArn": { + "Fn::GetAtt": [ + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F", + "Arn" + ] + }, + "RunOrder": 1 + } + ], + "Name": "Source" + }, + { + "Actions": [ + { + "ActionTypeId": { + "Category": "Build", + "Owner": "AWS", + "Provider": "CodeBuild", + "Version": "1" + }, + "Configuration": { + "ProjectName": { + "Ref": "MyProject2B52B17CC" + }, + "EnvironmentVariables": "[{\"name\":\"CommitId\",\"type\":\"PLAINTEXT\",\"value\":\"#{Source_CodeStarConnectionsSourceAction2_NS.CommitId}\"}]" + }, + "InputArtifacts": [ + { + "Name": "Artifact_Source_CodeStarConnectionsSourceAction2" + } + ], + "Name": "CodeBuild2", + "OutputArtifacts": [ + { + "Name": "Artifact_Build_CodeBuild2" + } + ], + "RoleArn": { + "Fn::GetAtt": [ + "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5", + "Arn" + ] + }, + "RunOrder": 1 + } + ], + "Name": "Build" + } + ], + "Triggers": [ + { + "GitConfiguration": { + "PullRequest": [ + { + "Branches": { + "Excludes": [ + "exclude1", + "exclude2" + ], + "Includes": [ + "include1", + "include2" + ] + }, + "Events": [ + "OPEN", + "UPDATED" + ], + "FilePaths": { + "Excludes": [ + "/path/to/exclude1", + "/path/to/exclude2" + ], + "Includes": [ + "/path/to/include1", + "/path/to/include2" + ] + } + } + ], + "SourceActionName": "CodeStarConnectionsSourceAction2" + }, + "ProviderType": "CodeStarSourceConnection" + } + ] + }, + "DependsOn": [ + "Pipeline2RoleDefaultPolicy3CA7A97C", + "Pipeline2RoleB1668F7C" + ] + }, + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" + } + } + }, + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleDefaultPolicy17D58BB8": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "codestar-connections:UseConnection", + "Effect": "Allow", + "Resource": "MOCK" + }, + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + }, + { + "Action": [ + "s3:PutObjectAcl", + "s3:PutObjectVersionAcl" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleDefaultPolicy17D58BB8", + "Roles": [ + { + "Ref": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F" + } + ] + } + }, + "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" + } + } + }, + "Pipeline2BuildCodeBuild2CodePipelineActionRoleDefaultPolicyC4BEA3E8": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "codebuild:BatchGetBuilds", + "codebuild:StartBuild", + "codebuild:StopBuild" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "MyProject2B52B17CC", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "Pipeline2BuildCodeBuild2CodePipelineActionRoleDefaultPolicyC4BEA3E8", + "Roles": [ + { + "Ref": "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5" + } + ] + } } }, "Parameters": { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.assets.json index 108f9418e9040..f0bf2438e6953 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.assets.json @@ -1,20 +1,20 @@ { "version": "36.0.0", "files": { - "3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4": { + "310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17": { "source": { - "path": "asset.3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.bundle", + "path": "asset.310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.bundle", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.zip", + "objectKey": "310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "2d2d44e46f4e0aef0cb5ef2e01530b6d89f5a740da1aada5bcefdc40698646ae": { + "afb3c70e7721b9ac91e2b1f83ab4b4510bdfa7a1f7677d8c217ddd2348f4d224": { "source": { "path": "codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "2d2d44e46f4e0aef0cb5ef2e01530b6d89f5a740da1aada5bcefdc40698646ae.json", + "objectKey": "afb3c70e7721b9ac91e2b1f83ab4b4510bdfa7a1f7677d8c217ddd2348f4d224.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.template.json index 62d36314ce05a..a23bad1b69491 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/codepipelinewithpipelinetriggerstestDefaultTestDeployAssertE3F8DDE6.template.json @@ -20,7 +20,7 @@ "outputPaths": [ "pipeline.name" ], - "salt": "1707043774596" + "salt": "1708619218938" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" @@ -51,6 +51,15 @@ "PolicyDocument": { "Version": "2012-10-17", "Statement": [ + { + "Action": [ + "codepipeline:GetPipeline" + ], + "Effect": "Allow", + "Resource": [ + "*" + ] + }, { "Action": [ "codepipeline:GetPipeline" @@ -74,7 +83,7 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "3f0f15596be1e3fbbf4a0571522aa1e5312d44abff27360f8d043c1b0704bcf4.zip" + "S3Key": "310f432b946edeef3316f39f32b344b6bdc401a3b438433db42adadab1bf5e17.zip" }, "Timeout": 120, "Handler": "index.handler", @@ -85,6 +94,31 @@ ] } } + }, + "AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2": { + "Type": "Custom::DeployAssert@SdkCallCodePipelinegetPipeline", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F", + "Arn" + ] + }, + "service": "CodePipeline", + "api": "getPipeline", + "expected": "{\"$StringLike\":\"my-pipeline2\"}", + "actualPath": "pipeline.name", + "parameters": { + "name": "\"my-pipeline2\"" + }, + "flattenResponse": "true", + "outputPaths": [ + "pipeline.name" + ], + "salt": "1708619218938" + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" } }, "Outputs": { @@ -95,6 +129,14 @@ "assertion" ] } + }, + "AssertionResultsAwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2": { + "Value": { + "Fn::GetAtt": [ + "AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2", + "assertion" + ] + } } }, "Parameters": { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/manifest.json index 01309daa296c2..8c2671ef769e2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/manifest.json @@ -18,7 +18,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/cc3950730a8132436f16f7e744268033b6fe8ab56ffa886b0e6ba03f7baf97ac.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/46609a0e4b8f4edd1db7fc09828756c229845a1f17b53c56562a9f7eb4ea6b30.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -118,6 +118,90 @@ "data": "PipelineBuildCodeBuildCodePipelineActionRoleDefaultPolicyD9C4A2F6" } ], + "/aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyProject2Role640CD8C0" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyProject2RoleDefaultPolicyF6082200" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyProject2B52B17CC" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKey/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2ArtifactsBucketEncryptionKey9C275DF2" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKeyAlias/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2ArtifactsBucketEncryptionKeyAlias4C3D138C" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2ArtifactsBucketBBAC8B82" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket/Policy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2ArtifactsBucketPolicyB3F6A84F" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2RoleB1668F7C" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2RoleDefaultPolicy3CA7A97C" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline27E937D7F" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleDefaultPolicy17D58BB8" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5" + } + ], + "/aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Pipeline2BuildCodeBuild2CodePipelineActionRoleDefaultPolicyC4BEA3E8" + } + ], "/aws-cdk-codepipeline-with-pipeline-triggers/BootstrapVersion": [ { "type": "aws:cdk:logicalId", @@ -150,7 +234,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/2d2d44e46f4e0aef0cb5ef2e01530b6d89f5a740da1aada5bcefdc40698646ae.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/afb3c70e7721b9ac91e2b1f83ab4b4510bdfa7a1f7677d8c217ddd2348f4d224.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -190,6 +274,18 @@ "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F" } ], + "/codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/Default/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2" + } + ], + "/codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/AssertionResults": [ + { + "type": "aws:cdk:logicalId", + "data": "AssertionResultsAwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2" + } + ], "/codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/BootstrapVersion": [ { "type": "aws:cdk:logicalId", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/tree.json index 9bd4034087897..752065a296d5e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.js.snapshot/tree.json @@ -670,7 +670,7 @@ }, "configuration": { "ConnectionArn": "MOCK", - "FullRepositoryId": "go-to-k/cdk-pipelines-demo", + "FullRepositoryId": "go-to-k/cdk-codepipeline-demo-1", "BranchName": "master" }, "runOrder": 1, @@ -1074,6 +1074,1086 @@ "version": "10.3.0" } }, + "MyProject2": { + "id": "MyProject2", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2", + "children": { + "Role": { + "id": "Role", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/ImportRole", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "MyProject2B52B17CC" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "MyProject2B52B17CC" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "MyProject2B52B17CC" + }, + "-*" + ] + ] + } + }, + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "MyProject2RoleDefaultPolicyF6082200", + "roles": [ + { + "Ref": "MyProject2Role640CD8C0" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/MyProject2/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "CODEPIPELINE" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:1.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "MyProject2Role640CD8C0", + "Arn" + ] + }, + "source": { + "type": "CODEPIPELINE" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Pipeline2": { + "id": "Pipeline2", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2", + "children": { + "ArtifactsBucketEncryptionKey": { + "id": "ArtifactsBucketEncryptionKey", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKey", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKey/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::KMS::Key", + "aws:cdk:cloudformation:props": { + "keyPolicy": { + "Statement": [ + { + "Action": "kms:*", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + }, + "Resource": "*" + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "ArtifactsBucketEncryptionKeyAlias": { + "id": "ArtifactsBucketEncryptionKeyAlias", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKeyAlias", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucketEncryptionKeyAlias/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::KMS::Alias", + "aws:cdk:cloudformation:props": { + "aliasName": "alias/codepipeline-aws-cdk-codepipeline-with-pipeline-triggers-pipeline2-a7cdfc85", + "targetKeyId": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "ArtifactsBucket": { + "id": "ArtifactsBucket", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::S3::Bucket", + "aws:cdk:cloudformation:props": { + "bucketEncryption": { + "serverSideEncryptionConfiguration": [ + { + "serverSideEncryptionByDefault": { + "sseAlgorithm": "aws:kms", + "kmsMasterKeyId": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + } + } + ] + }, + "publicAccessBlockConfiguration": { + "blockPublicAcls": true, + "blockPublicPolicy": true, + "ignorePublicAcls": true, + "restrictPublicBuckets": true + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Policy": { + "id": "Policy", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket/Policy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/ArtifactsBucket/Policy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", + "aws:cdk:cloudformation:props": { + "bucket": { + "Ref": "Pipeline2ArtifactsBucketBBAC8B82" + }, + "policyDocument": { + "Statement": [ + { + "Action": "s3:*", + "Condition": { + "Bool": { + "aws:SecureTransport": "false" + } + }, + "Effect": "Deny", + "Principal": { + "AWS": "*" + }, + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Role": { + "id": "Role", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/ImportRole", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codepipeline.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + }, + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F", + "Arn" + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "policyName": "Pipeline2RoleDefaultPolicy3CA7A97C", + "roles": [ + { + "Ref": "Pipeline2RoleB1668F7C" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodePipeline::Pipeline", + "aws:cdk:cloudformation:props": { + "artifactStore": { + "type": "S3", + "location": { + "Ref": "Pipeline2ArtifactsBucketBBAC8B82" + }, + "encryptionKey": { + "type": "KMS", + "id": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + } + }, + "name": "my-pipeline2", + "pipelineType": "V2", + "roleArn": { + "Fn::GetAtt": [ + "Pipeline2RoleB1668F7C", + "Arn" + ] + }, + "stages": [ + { + "name": "Source", + "actions": [ + { + "name": "CodeStarConnectionsSourceAction2", + "outputArtifacts": [ + { + "name": "Artifact_Source_CodeStarConnectionsSourceAction2" + } + ], + "actionTypeId": { + "category": "Source", + "version": "1", + "owner": "AWS", + "provider": "CodeStarSourceConnection" + }, + "configuration": { + "ConnectionArn": "MOCK", + "FullRepositoryId": "go-to-k/cdk-codepipeline-demo-2", + "BranchName": "master" + }, + "runOrder": 1, + "roleArn": { + "Fn::GetAtt": [ + "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F", + "Arn" + ] + }, + "namespace": "Source_CodeStarConnectionsSourceAction2_NS" + } + ] + }, + { + "name": "Build", + "actions": [ + { + "name": "CodeBuild2", + "inputArtifacts": [ + { + "name": "Artifact_Source_CodeStarConnectionsSourceAction2" + } + ], + "outputArtifacts": [ + { + "name": "Artifact_Build_CodeBuild2" + } + ], + "actionTypeId": { + "category": "Build", + "version": "1", + "owner": "AWS", + "provider": "CodeBuild" + }, + "configuration": { + "ProjectName": { + "Ref": "MyProject2B52B17CC" + }, + "EnvironmentVariables": "[{\"name\":\"CommitId\",\"type\":\"PLAINTEXT\",\"value\":\"#{Source_CodeStarConnectionsSourceAction2_NS.CommitId}\"}]" + }, + "runOrder": 1, + "roleArn": { + "Fn::GetAtt": [ + "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5", + "Arn" + ] + } + } + ] + } + ], + "triggers": [ + { + "gitConfiguration": { + "pullRequest": [ + { + "branches": { + "excludes": [ + "exclude1", + "exclude2" + ], + "includes": [ + "include1", + "include2" + ] + }, + "filePaths": { + "excludes": [ + "/path/to/exclude1", + "/path/to/exclude2" + ], + "includes": [ + "/path/to/include1", + "/path/to/include2" + ] + }, + "events": [ + "OPEN", + "UPDATED" + ] + } + ], + "sourceActionName": "CodeStarConnectionsSourceAction2" + }, + "providerType": "CodeStarSourceConnection" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Source": { + "id": "Source", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source", + "children": { + "CodeStarConnectionsSourceAction2": { + "id": "CodeStarConnectionsSourceAction2", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2", + "children": { + "CodePipelineActionRole": { + "id": "CodePipelineActionRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole", + "children": { + "ImportCodePipelineActionRole": { + "id": "ImportCodePipelineActionRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/ImportCodePipelineActionRole", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Source/CodeStarConnectionsSourceAction2/CodePipelineActionRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "codestar-connections:UseConnection", + "Effect": "Allow", + "Resource": "MOCK" + }, + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketEncryptionKey9C275DF2", + "Arn" + ] + } + }, + { + "Action": [ + "s3:PutObjectAcl", + "s3:PutObjectVersionAcl" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Pipeline2ArtifactsBucketBBAC8B82", + "Arn" + ] + }, + "/*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleDefaultPolicy17D58BB8", + "roles": [ + { + "Ref": "Pipeline2SourceCodeStarConnectionsSourceAction2CodePipelineActionRoleD7F9366F" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Build": { + "id": "Build", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build", + "children": { + "CodeBuild2": { + "id": "CodeBuild2", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2", + "children": { + "CodePipelineActionRole": { + "id": "CodePipelineActionRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole", + "children": { + "ImportCodePipelineActionRole": { + "id": "ImportCodePipelineActionRole", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/ImportCodePipelineActionRole", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-codepipeline-with-pipeline-triggers/Pipeline2/Build/CodeBuild2/CodePipelineActionRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "codebuild:BatchGetBuilds", + "codebuild:StartBuild", + "codebuild:StopBuild" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "MyProject2B52B17CC", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "Pipeline2BuildCodeBuild2CodePipelineActionRoleDefaultPolicyC4BEA3E8", + "roles": [ + { + "Ref": "Pipeline2BuildCodeBuild2CodePipelineActionRoleEAEC3BA5" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, "BootstrapVersion": { "id": "BootstrapVersion", "path": "aws-cdk-codepipeline-with-pipeline-triggers/BootstrapVersion", @@ -1204,6 +2284,60 @@ "version": "10.3.0" } }, + "AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2": { + "id": "AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2", + "children": { + "SdkProvider": { + "id": "SdkProvider", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/SdkProvider", + "children": { + "AssertionsProvider": { + "id": "AssertionsProvider", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/SdkProvider/AssertionsProvider", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.AssertionsProvider", + "version": "0.0.0" + } + }, + "Default": { + "id": "Default", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/Default", + "children": { + "Default": { + "id": "Default", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/Default/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "AssertionResults": { + "id": "AssertionResults", + "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/AwsApiCallCodePipelinegetPipeline1c275ca65933c3cecd335e67fe9182e2/AssertionResults", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.AwsApiCall", + "version": "0.0.0" + } + }, "BootstrapVersion": { "id": "BootstrapVersion", "path": "codepipeline-with-pipeline-triggers-test/DefaultTest/DeployAssert/BootstrapVersion", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.ts index 840be49ac4294..bcb5253361bc5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.pipeline-with-pipeline-triggers.ts @@ -14,15 +14,16 @@ if (connectionArn === 'MOCK') { cdk.Annotations.of(stack).addWarningV2('integ:connection-arn', 'You must specify a valid connection ARN in the CONNECTION_ARN environment variable'); } -const sourceOutput = new codepipeline.Artifact(); -const sourceAction = new cpactions.CodeStarConnectionsSourceAction({ +const sourceOutput1 = new codepipeline.Artifact(); +const sourceAction1 = new cpactions.CodeStarConnectionsSourceAction({ actionName: 'CodeStarConnectionsSourceAction', - output: sourceOutput, + output: sourceOutput1, connectionArn, owner: 'go-to-k', - repo: 'cdk-pipelines-demo', + repo: 'cdk-codepipeline-demo-1', }); +// for push filter with tags new codepipeline.Pipeline(stack, 'Pipeline', { pipelineName: 'my-pipeline', pipelineType: codepipeline.PipelineType.V2, @@ -30,7 +31,7 @@ new codepipeline.Pipeline(stack, 'Pipeline', { stages: [ { stageName: 'Source', - actions: [sourceAction], + actions: [sourceAction1], }, { stageName: 'Build', @@ -38,10 +39,10 @@ new codepipeline.Pipeline(stack, 'Pipeline', { new cpactions.CodeBuildAction({ actionName: 'CodeBuild', project: new codebuild.PipelineProject(stack, 'MyProject'), - input: sourceOutput, + input: sourceOutput1, outputs: [new codepipeline.Artifact()], environmentVariables: { - CommitId: { value: sourceAction.variables.commitId }, + CommitId: { value: sourceAction1.variables.commitId }, }, }), ], @@ -50,7 +51,7 @@ new codepipeline.Pipeline(stack, 'Pipeline', { triggers: [{ providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, gitConfiguration: { - sourceAction, + sourceAction: sourceAction1, pushFilter: [{ tagsExcludes: ['exclude1', 'exclude2'], tagsIncludes: ['include1', 'include2'], @@ -59,12 +60,64 @@ new codepipeline.Pipeline(stack, 'Pipeline', { }], }); +const sourceOutput2 = new codepipeline.Artifact(); +const sourceAction2 = new cpactions.CodeStarConnectionsSourceAction({ + actionName: 'CodeStarConnectionsSourceAction2', + output: sourceOutput2, + connectionArn, + owner: 'go-to-k', + repo: 'cdk-codepipeline-demo-2', +}); + +// for pull request filter with branches and file paths +new codepipeline.Pipeline(stack, 'Pipeline2', { + pipelineName: 'my-pipeline2', + pipelineType: codepipeline.PipelineType.V2, + crossAccountKeys: true, + stages: [ + { + stageName: 'Source', + actions: [sourceAction2], + }, + { + stageName: 'Build', + actions: [ + new cpactions.CodeBuildAction({ + actionName: 'CodeBuild2', + project: new codebuild.PipelineProject(stack, 'MyProject2'), + input: sourceOutput2, + outputs: [new codepipeline.Artifact()], + environmentVariables: { + CommitId: { value: sourceAction2.variables.commitId }, + }, + }), + ], + }, + ], + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction: sourceAction2, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['/path/to/exclude1', '/path/to/exclude2'], + filePathsIncludes: ['/path/to/include1', '/path/to/include2'], + events: [codepipeline.GitPullRequestEvent.OPEN, codepipeline.GitPullRequestEvent.UPDATED], + }], + }, + }], +}); + const integrationTest = new IntegTest(app, 'codepipeline-with-pipeline-triggers-test', { testCases: [stack], diffAssets: true, }); -const awsApiCall = integrationTest.assertions.awsApiCall('CodePipeline', 'getPipeline', { name: 'my-pipeline' }); -awsApiCall.assertAtPath('pipeline.name', ExpectedResult.stringLikeRegexp('my-pipeline')); +const awsApiCall1 = integrationTest.assertions.awsApiCall('CodePipeline', 'getPipeline', { name: 'my-pipeline' }); +awsApiCall1.assertAtPath('pipeline.name', ExpectedResult.stringLikeRegexp('my-pipeline')); + +const awsApiCall2 = integrationTest.assertions.awsApiCall('CodePipeline', 'getPipeline', { name: 'my-pipeline2' }); +awsApiCall2.assertAtPath('pipeline.name', ExpectedResult.stringLikeRegexp('my-pipeline2')); app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.assets.json new file mode 100644 index 0000000000000..1a49d2e15b492 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "ClusterTestDefaultTestDeployAssert6A1BBA9D.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/ClusterTestDefaultTestDeployAssert6A1BBA9D.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js new file mode 100644 index 0000000000000..02033f55cf612 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js @@ -0,0 +1,155 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.withRetries = exports.handler = exports.external = void 0; +const https = require("https"); +const url = require("url"); +// for unit tests +exports.external = { + sendHttpRequest: defaultSendHttpRequest, + log: defaultLog, + includeStackTraces: true, + userHandlerIndex: './index', +}; +const CREATE_FAILED_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::CREATE_FAILED'; +const MISSING_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID'; +async function handler(event, context) { + const sanitizedEvent = { ...event, ResponseURL: '...' }; + exports.external.log(JSON.stringify(sanitizedEvent, undefined, 2)); + // ignore DELETE event when the physical resource ID is the marker that + // indicates that this DELETE is a subsequent DELETE to a failed CREATE + // operation. + if (event.RequestType === 'Delete' && event.PhysicalResourceId === CREATE_FAILED_PHYSICAL_ID_MARKER) { + exports.external.log('ignoring DELETE event caused by a failed CREATE event'); + await submitResponse('SUCCESS', event); + return; + } + try { + // invoke the user handler. this is intentionally inside the try-catch to + // ensure that if there is an error it's reported as a failure to + // cloudformation (otherwise cfn waits). + // eslint-disable-next-line @typescript-eslint/no-require-imports + const userHandler = require(exports.external.userHandlerIndex).handler; + const result = await userHandler(sanitizedEvent, context); + // validate user response and create the combined event + const responseEvent = renderResponse(event, result); + // submit to cfn as success + await submitResponse('SUCCESS', responseEvent); + } + catch (e) { + const resp = { + ...event, + Reason: exports.external.includeStackTraces ? e.stack : e.message, + }; + if (!resp.PhysicalResourceId) { + // special case: if CREATE fails, which usually implies, we usually don't + // have a physical resource id. in this case, the subsequent DELETE + // operation does not have any meaning, and will likely fail as well. to + // address this, we use a marker so the provider framework can simply + // ignore the subsequent DELETE. + if (event.RequestType === 'Create') { + exports.external.log('CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored'); + resp.PhysicalResourceId = CREATE_FAILED_PHYSICAL_ID_MARKER; + } + else { + // otherwise, if PhysicalResourceId is not specified, something is + // terribly wrong because all other events should have an ID. + exports.external.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(event)}`); + } + } + // this is an actual error, fail the activity altogether and exist. + await submitResponse('FAILED', resp); + } +} +exports.handler = handler; +function renderResponse(cfnRequest, handlerResponse = {}) { + // if physical ID is not returned, we have some defaults for you based + // on the request type. + const physicalResourceId = handlerResponse.PhysicalResourceId ?? cfnRequest.PhysicalResourceId ?? cfnRequest.RequestId; + // if we are in DELETE and physical ID was changed, it's an error. + if (cfnRequest.RequestType === 'Delete' && physicalResourceId !== cfnRequest.PhysicalResourceId) { + throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${handlerResponse.PhysicalResourceId}" during deletion`); + } + // merge request event and result event (result prevails). + return { + ...cfnRequest, + ...handlerResponse, + PhysicalResourceId: physicalResourceId, + }; +} +async function submitResponse(status, event) { + const json = { + Status: status, + Reason: event.Reason ?? status, + StackId: event.StackId, + RequestId: event.RequestId, + PhysicalResourceId: event.PhysicalResourceId || MISSING_PHYSICAL_ID_MARKER, + LogicalResourceId: event.LogicalResourceId, + NoEcho: event.NoEcho, + Data: event.Data, + }; + const parsedUrl = url.parse(event.ResponseURL); + const loggingSafeUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`; + exports.external.log('submit response to cloudformation', loggingSafeUrl, json); + const responseBody = JSON.stringify(json); + const req = { + hostname: parsedUrl.hostname, + path: parsedUrl.path, + method: 'PUT', + headers: { + 'content-type': '', + 'content-length': Buffer.byteLength(responseBody, 'utf8'), + }, + }; + const retryOptions = { + attempts: 5, + sleep: 1000, + }; + await withRetries(retryOptions, exports.external.sendHttpRequest)(req, responseBody); +} +async function defaultSendHttpRequest(options, requestBody) { + return new Promise((resolve, reject) => { + try { + const request = https.request(options, (response) => { + response.resume(); // Consume the response but don't care about it + if (!response.statusCode || response.statusCode >= 400) { + reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)); + } + else { + resolve(); + } + }); + request.on('error', reject); + request.write(requestBody); + request.end(); + } + catch (e) { + reject(e); + } + }); +} +function defaultLog(fmt, ...params) { + // eslint-disable-next-line no-console + console.log(fmt, ...params); +} +function withRetries(options, fn) { + return async (...xs) => { + let attempts = options.attempts; + let ms = options.sleep; + while (true) { + try { + return await fn(...xs); + } + catch (e) { + if (attempts-- <= 0) { + throw e; + } + await sleep(Math.floor(Math.random() * ms)); + ms *= 2; + } + } + }; +} +exports.withRetries = withRetries; +async function sleep(ms) { + return new Promise((ok) => setTimeout(ok, ms)); +} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js new file mode 100644 index 0000000000000..013bcaffd8fe5 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js @@ -0,0 +1 @@ +"use strict";var I=Object.create;var t=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var G=(r,e)=>{for(var o in e)t(r,o,{get:e[o],enumerable:!0})},n=(r,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of P(e))!l.call(r,s)&&s!==o&&t(r,s,{get:()=>e[s],enumerable:!(i=y(e,s))||i.enumerable});return r};var R=(r,e,o)=>(o=r!=null?I(g(r)):{},n(e||!r||!r.__esModule?t(o,"default",{value:r,enumerable:!0}):o,r)),S=r=>n(t({},"__esModule",{value:!0}),r);var k={};G(k,{handler:()=>f});module.exports=S(k);var a=R(require("@aws-sdk/client-ec2")),u=new a.EC2({});function c(r,e){return{GroupId:r,IpPermissions:[{UserIdGroupPairs:[{GroupId:r,UserId:e}],IpProtocol:"-1"}]}}function d(r){return{GroupId:r,IpPermissions:[{IpRanges:[{CidrIp:"0.0.0.0/0"}],IpProtocol:"-1"}]}}async function f(r){let e=r.ResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.Account;switch(r.RequestType){case"Create":return p(e,o);case"Update":return h(r);case"Delete":return m(e,o)}}async function h(r){let e=r.OldResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.DefaultSecurityGroupId;e!==o&&(await m(e,r.ResourceProperties.Account),await p(o,r.ResourceProperties.Account))}async function p(r,e){try{await u.revokeSecurityGroupEgress(d(r))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}try{await u.revokeSecurityGroupIngress(c(r,e))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}}async function m(r,e){await u.authorizeSecurityGroupIngress(c(r,e)),await u.authorizeSecurityGroupEgress(d(r))}0&&(module.exports={handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.assets.json similarity index 62% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.assets.json rename to packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.assets.json index 4e942e1e2ede4..646a8e5881500 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.assets.json @@ -1,28 +1,28 @@ { "version": "36.0.0", "files": { - "c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1": { + "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1": { "source": { - "path": "asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1", + "path": "asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1.zip", + "objectKey": "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "62a8a9b8f735f3540fcf043627bef00e8bb6c89ad27fc7266438bc9b99094847": { + "11f0f2efc8a009948fd095d8a79efce755af0a7e5e0f3f92db99c9eaea4443e6": { "source": { - "path": "cdk-integ-lambda-nodejs-dependencies.template.json", + "path": "aws-cdk-docdb-integ.template.json", "packaging": "file" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "62a8a9b8f735f3540fcf043627bef00e8bb6c89ad27fc7266438bc9b99094847.json", + "objectKey": "11f0f2efc8a009948fd095d8a79efce755af0a7e5e0f3f92db99c9eaea4443e6.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.template.json new file mode 100644 index 0000000000000..f9158ba941630 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/aws-cdk-docdb-integ.template.json @@ -0,0 +1,805 @@ +{ + "Resources": { + "VPCB9E5F0B4": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC" + } + ] + } + }, + "VPCPublicSubnet1SubnetB4246D30": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableFEE4B781": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableAssociation0B0896DC": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "VPCPublicSubnet1DefaultRoute91CEF279": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet1EIP6AD938E8": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ] + } + }, + "VPCPublicSubnet1NATGatewayE0556630": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC" + ] + }, + "VPCPublicSubnet2Subnet74179F39": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTable6F1A15F1": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTableAssociation5A808732": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "VPCPublicSubnet2DefaultRouteB7481BBA": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet2EIP4947BC00": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ] + } + }, + "VPCPublicSubnet2NATGateway3C070193": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ] + }, + "VPCPrivateSubnet1Subnet8BCA10E0": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableBE8A6027": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableAssociation347902D1": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "VPCPrivateSubnet1DefaultRouteAE1D6490": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "VPCPrivateSubnet2SubnetCFCDAA7A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTable0A19E10E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTableAssociation0C73D413": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "VPCIGWB7E252D3": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-docdb-integ/VPC" + } + ] + } + }, + "VPCVPCGW99B986DC": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCRestrictDefaultSecurityGroupCustomResource59474679": { + "Type": "Custom::VpcRestrictDefaultSG", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E", + "Arn" + ] + }, + "DefaultSecurityGroupId": { + "Fn::GetAtt": [ + "VPCB9E5F0B4", + "DefaultSecurityGroup" + ] + }, + "Account": { + "Ref": "AWS::AccountId" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ] + }, + "ManagedPolicyArns": [ + { + "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + } + ], + "Policies": [ + { + "PolicyName": "Inline", + "PolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "ec2:AuthorizeSecurityGroupIngress", + "ec2:AuthorizeSecurityGroupEgress", + "ec2:RevokeSecurityGroupIngress", + "ec2:RevokeSecurityGroupEgress" + ], + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":ec2:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":security-group/", + { + "Fn::GetAtt": [ + "VPCB9E5F0B4", + "DefaultSecurityGroup" + ] + } + ] + ] + } + ] + } + ] + } + } + ] + } + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1.zip" + }, + "Timeout": 900, + "MemorySize": 128, + "Handler": "__entrypoint__.handler", + "Role": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Description": "Lambda function for removing all inbound/outbound rules from the VPC default security group" + }, + "DependsOn": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + ] + }, + "DatabaseCopyTagsToSnapshotDisabledSubnets798D8ABD": { + "Type": "AWS::DocDB::DBSubnetGroup", + "Properties": { + "DBSubnetGroupDescription": "Subnets for DatabaseCopyTagsToSnapshotDisabled database", + "SubnetIds": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + } + }, + "DatabaseCopyTagsToSnapshotDisabledSecurityGroupDA546735": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "DocumentDB security group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733": { + "Type": "AWS::SecretsManager::Secret", + "Properties": { + "Description": { + "Fn::Join": [ + "", + [ + "Generated by the CDK for stack: ", + { + "Ref": "AWS::StackName" + } + ] + ] + }, + "GenerateSecretString": { + "ExcludeCharacters": "\"@/", + "GenerateStringKey": "password", + "PasswordLength": 41, + "SecretStringTemplate": "{\"username\":\"docdb\"}" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotDisabledSecretAttachment8F3CA1ED": { + "Type": "AWS::SecretsManager::SecretTargetAttachment", + "Properties": { + "SecretId": { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + "TargetId": { + "Ref": "DatabaseCopyTagsToSnapshotDisabled06721937" + }, + "TargetType": "AWS::DocDB::DBCluster" + } + }, + "DatabaseCopyTagsToSnapshotDisabled06721937": { + "Type": "AWS::DocDB::DBCluster", + "Properties": { + "CopyTagsToSnapshot": false, + "DBSubnetGroupName": { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSubnets798D8ABD" + }, + "EngineVersion": "3.6.0", + "MasterUserPassword": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + ":SecretString:password::}}" + ] + ] + }, + "MasterUsername": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + ":SecretString:username::}}" + ] + ] + }, + "StorageEncrypted": true, + "VpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseCopyTagsToSnapshotDisabledSecurityGroupDA546735", + "GroupId" + ] + } + ] + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotDisabledInstance1437B1FA7": { + "Type": "AWS::DocDB::DBInstance", + "Properties": { + "DBClusterIdentifier": { + "Ref": "DatabaseCopyTagsToSnapshotDisabled06721937" + }, + "DBInstanceClass": "db.r5.large" + }, + "DependsOn": [ + "VPCPrivateSubnet1DefaultRouteAE1D6490", + "VPCPrivateSubnet1RouteTableAssociation347902D1", + "VPCPrivateSubnet2DefaultRouteF4F5CFD2", + "VPCPrivateSubnet2RouteTableAssociation0C73D413" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotEnabledSubnets0F90F00C": { + "Type": "AWS::DocDB::DBSubnetGroup", + "Properties": { + "DBSubnetGroupDescription": "Subnets for DatabaseCopyTagsToSnapshotEnabled database", + "SubnetIds": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + } + }, + "DatabaseCopyTagsToSnapshotEnabledSecurityGroup227F101E": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "DocumentDB security group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3": { + "Type": "AWS::SecretsManager::Secret", + "Properties": { + "Description": { + "Fn::Join": [ + "", + [ + "Generated by the CDK for stack: ", + { + "Ref": "AWS::StackName" + } + ] + ] + }, + "GenerateSecretString": { + "ExcludeCharacters": "\"@/", + "GenerateStringKey": "password", + "PasswordLength": 41, + "SecretStringTemplate": "{\"username\":\"docdb\"}" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotEnabledSecretAttachment760D889A": { + "Type": "AWS::SecretsManager::SecretTargetAttachment", + "Properties": { + "SecretId": { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + "TargetId": { + "Ref": "DatabaseCopyTagsToSnapshotEnabled84786E21" + }, + "TargetType": "AWS::DocDB::DBCluster" + } + }, + "DatabaseCopyTagsToSnapshotEnabled84786E21": { + "Type": "AWS::DocDB::DBCluster", + "Properties": { + "CopyTagsToSnapshot": true, + "DBSubnetGroupName": { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSubnets0F90F00C" + }, + "EngineVersion": "3.6.0", + "MasterUserPassword": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + ":SecretString:password::}}" + ] + ] + }, + "MasterUsername": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + ":SecretString:username::}}" + ] + ] + }, + "StorageEncrypted": true, + "VpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseCopyTagsToSnapshotEnabledSecurityGroup227F101E", + "GroupId" + ] + } + ] + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseCopyTagsToSnapshotEnabledInstance15DFB3914": { + "Type": "AWS::DocDB::DBInstance", + "Properties": { + "DBClusterIdentifier": { + "Ref": "DatabaseCopyTagsToSnapshotEnabled84786E21" + }, + "DBInstanceClass": "db.r5.large" + }, + "DependsOn": [ + "VPCPrivateSubnet1DefaultRouteAE1D6490", + "VPCPrivateSubnet1RouteTableAssociation347902D1", + "VPCPrivateSubnet2DefaultRouteF4F5CFD2", + "VPCPrivateSubnet2RouteTableAssociation0C73D413" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/integ.json new file mode 100644 index 0000000000000..b6cca8d910078 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "ClusterTest/DefaultTest": { + "stacks": [ + "aws-cdk-docdb-integ" + ], + "assertionStack": "ClusterTest/DefaultTest/DeployAssert", + "assertionStackName": "ClusterTestDefaultTestDeployAssert6A1BBA9D" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/manifest.json new file mode 100644 index 0000000000000..50c5dc28ab65b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/manifest.json @@ -0,0 +1,335 @@ +{ + "version": "36.0.0", + "artifacts": { + "aws-cdk-docdb-integ.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "aws-cdk-docdb-integ.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "aws-cdk-docdb-integ": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "aws-cdk-docdb-integ.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/11f0f2efc8a009948fd095d8a79efce755af0a7e5e0f3f92db99c9eaea4443e6.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "aws-cdk-docdb-integ.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "aws-cdk-docdb-integ.assets" + ], + "metadata": { + "/aws-cdk-docdb-integ/VPC/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCB9E5F0B4" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1SubnetB4246D30" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableFEE4B781" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableAssociation0B0896DC" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1DefaultRoute91CEF279" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1EIP6AD938E8" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1NATGatewayE0556630" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2Subnet74179F39" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTable6F1A15F1" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTableAssociation5A808732" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2DefaultRouteB7481BBA" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2EIP4947BC00" + } + ], + "/aws-cdk-docdb-integ/VPC/PublicSubnet2/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2NATGateway3C070193" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1Subnet8BCA10E0" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableBE8A6027" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableAssociation347902D1" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1DefaultRouteAE1D6490" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTable0A19E10E" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTableAssociation0C73D413" + } + ], + "/aws-cdk-docdb-integ/VPC/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2DefaultRouteF4F5CFD2" + } + ], + "/aws-cdk-docdb-integ/VPC/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCIGWB7E252D3" + } + ], + "/aws-cdk-docdb-integ/VPC/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCVPCGW99B986DC" + } + ], + "/aws-cdk-docdb-integ/VPC/RestrictDefaultSecurityGroupCustomResource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCRestrictDefaultSecurityGroupCustomResource59474679" + } + ], + "/aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + } + ], + "/aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Subnets": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabledSubnets798D8ABD" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/SecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabledSecurityGroupDA546735" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret/Attachment/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabledSecretAttachment8F3CA1ED" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabled06721937" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Instance1": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotDisabledInstance1437B1FA7" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Subnets": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabledSubnets0F90F00C" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/SecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabledSecurityGroup227F101E" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret/Attachment/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabledSecretAttachment760D889A" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabled84786E21" + } + ], + "/aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Instance1": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseCopyTagsToSnapshotEnabledInstance15DFB3914" + } + ], + "/aws-cdk-docdb-integ/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-docdb-integ/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-docdb-integ" + }, + "ClusterTestDefaultTestDeployAssert6A1BBA9D.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "ClusterTestDefaultTestDeployAssert6A1BBA9D.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "ClusterTestDefaultTestDeployAssert6A1BBA9D": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "ClusterTestDefaultTestDeployAssert6A1BBA9D.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "ClusterTestDefaultTestDeployAssert6A1BBA9D.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "ClusterTestDefaultTestDeployAssert6A1BBA9D.assets" + ], + "metadata": { + "/ClusterTest/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/ClusterTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "ClusterTest/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/tree.json new file mode 100644 index 0000000000000..99c59f4d5a561 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.js.snapshot/tree.json @@ -0,0 +1,1204 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "aws-cdk-docdb-integ": { + "id": "aws-cdk-docdb-integ", + "path": "aws-cdk-docdb-integ", + "children": { + "VPC": { + "id": "VPC", + "path": "aws-cdk-docdb-integ/VPC", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/VPC/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.0.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.64.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-docdb-integ/VPC/PublicSubnet2/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.128.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.192.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-docdb-integ/VPC/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "aws-cdk-docdb-integ/VPC/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-docdb-integ/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "aws-cdk-docdb-integ/VPC/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "internetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + }, + "RestrictDefaultSecurityGroupCustomResource": { + "id": "RestrictDefaultSecurityGroupCustomResource", + "path": "aws-cdk-docdb-integ/VPC/RestrictDefaultSecurityGroupCustomResource", + "children": { + "Default": { + "id": "Default", + "path": "aws-cdk-docdb-integ/VPC/RestrictDefaultSecurityGroupCustomResource/Default", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CustomResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "Custom::VpcRestrictDefaultSGCustomResourceProvider": { + "id": "Custom::VpcRestrictDefaultSGCustomResourceProvider", + "path": "aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider", + "children": { + "Staging": { + "id": "Staging", + "path": "aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "Role": { + "id": "Role", + "path": "aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + }, + "Handler": { + "id": "Handler", + "path": "aws-cdk-docdb-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CustomResourceProviderBase", + "version": "0.0.0" + } + }, + "DatabaseCopyTagsToSnapshotDisabled": { + "id": "DatabaseCopyTagsToSnapshotDisabled", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled", + "children": { + "Subnets": { + "id": "Subnets", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Subnets", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBSubnetGroup", + "aws:cdk:cloudformation:props": { + "dbSubnetGroupDescription": "Subnets for DatabaseCopyTagsToSnapshotDisabled database", + "subnetIds": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBSubnetGroup", + "version": "0.0.0" + } + }, + "SecurityGroup": { + "id": "SecurityGroup", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/SecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/SecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "DocumentDB security group", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "Secret": { + "id": "Secret", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SecretsManager::Secret", + "aws:cdk:cloudformation:props": { + "description": { + "Fn::Join": [ + "", + [ + "Generated by the CDK for stack: ", + { + "Ref": "AWS::StackName" + } + ] + ] + }, + "generateSecretString": { + "passwordLength": 41, + "secretStringTemplate": "{\"username\":\"docdb\"}", + "generateStringKey": "password", + "excludeCharacters": "\"@/" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.CfnSecret", + "version": "0.0.0" + } + }, + "Attachment": { + "id": "Attachment", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret/Attachment", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Secret/Attachment/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SecretsManager::SecretTargetAttachment", + "aws:cdk:cloudformation:props": { + "secretId": { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + "targetId": { + "Ref": "DatabaseCopyTagsToSnapshotDisabled06721937" + }, + "targetType": "AWS::DocDB::DBCluster" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.CfnSecretTargetAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.SecretTargetAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.DatabaseSecret", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBCluster", + "aws:cdk:cloudformation:props": { + "copyTagsToSnapshot": false, + "dbSubnetGroupName": { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSubnets798D8ABD" + }, + "engineVersion": "3.6.0", + "masterUsername": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + ":SecretString:username::}}" + ] + ] + }, + "masterUserPassword": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotDisabledSecret84FDE733" + }, + ":SecretString:password::}}" + ] + ] + }, + "storageEncrypted": true, + "vpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseCopyTagsToSnapshotDisabledSecurityGroupDA546735", + "GroupId" + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBCluster", + "version": "0.0.0" + } + }, + "Instance1": { + "id": "Instance1", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotDisabled/Instance1", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBInstance", + "aws:cdk:cloudformation:props": { + "dbClusterIdentifier": { + "Ref": "DatabaseCopyTagsToSnapshotDisabled06721937" + }, + "dbInstanceClass": "db.r5.large" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.DatabaseCluster", + "version": "0.0.0" + } + }, + "DatabaseCopyTagsToSnapshotEnabled": { + "id": "DatabaseCopyTagsToSnapshotEnabled", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled", + "children": { + "Subnets": { + "id": "Subnets", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Subnets", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBSubnetGroup", + "aws:cdk:cloudformation:props": { + "dbSubnetGroupDescription": "Subnets for DatabaseCopyTagsToSnapshotEnabled database", + "subnetIds": [ + { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + }, + { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBSubnetGroup", + "version": "0.0.0" + } + }, + "SecurityGroup": { + "id": "SecurityGroup", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/SecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/SecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "DocumentDB security group", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "Secret": { + "id": "Secret", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SecretsManager::Secret", + "aws:cdk:cloudformation:props": { + "description": { + "Fn::Join": [ + "", + [ + "Generated by the CDK for stack: ", + { + "Ref": "AWS::StackName" + } + ] + ] + }, + "generateSecretString": { + "passwordLength": 41, + "secretStringTemplate": "{\"username\":\"docdb\"}", + "generateStringKey": "password", + "excludeCharacters": "\"@/" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.CfnSecret", + "version": "0.0.0" + } + }, + "Attachment": { + "id": "Attachment", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret/Attachment", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Secret/Attachment/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SecretsManager::SecretTargetAttachment", + "aws:cdk:cloudformation:props": { + "secretId": { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + "targetId": { + "Ref": "DatabaseCopyTagsToSnapshotEnabled84786E21" + }, + "targetType": "AWS::DocDB::DBCluster" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.CfnSecretTargetAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_secretsmanager.SecretTargetAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.DatabaseSecret", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBCluster", + "aws:cdk:cloudformation:props": { + "copyTagsToSnapshot": true, + "dbSubnetGroupName": { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSubnets0F90F00C" + }, + "engineVersion": "3.6.0", + "masterUsername": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + ":SecretString:username::}}" + ] + ] + }, + "masterUserPassword": { + "Fn::Join": [ + "", + [ + "{{resolve:secretsmanager:", + { + "Ref": "DatabaseCopyTagsToSnapshotEnabledSecret3AD5FDE3" + }, + ":SecretString:password::}}" + ] + ] + }, + "storageEncrypted": true, + "vpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseCopyTagsToSnapshotEnabledSecurityGroup227F101E", + "GroupId" + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBCluster", + "version": "0.0.0" + } + }, + "Instance1": { + "id": "Instance1", + "path": "aws-cdk-docdb-integ/DatabaseCopyTagsToSnapshotEnabled/Instance1", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBInstance", + "aws:cdk:cloudformation:props": { + "dbClusterIdentifier": { + "Ref": "DatabaseCopyTagsToSnapshotEnabled84786E21" + }, + "dbInstanceClass": "db.r5.large" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.DatabaseCluster", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-docdb-integ/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-docdb-integ/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "ClusterTest": { + "id": "ClusterTest", + "path": "ClusterTest", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "ClusterTest/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "ClusterTest/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "ClusterTest/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "ClusterTest/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "ClusterTest/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.ts new file mode 100644 index 0000000000000..b1ab797450ad9 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-copy-tags-to-snapshot.ts @@ -0,0 +1,38 @@ +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as cdk from 'aws-cdk-lib'; +import * as integ from '@aws-cdk/integ-tests-alpha'; +import { DatabaseCluster } from 'aws-cdk-lib/aws-docdb'; + +const app = new cdk.App(); + +const stack = new cdk.Stack(app, 'aws-cdk-docdb-integ'); + +const vpc = new ec2.Vpc(stack, 'VPC'); + +new DatabaseCluster(stack, 'DatabaseCopyTagsToSnapshotDisabled', { + engineVersion: '3.6.0', + masterUser: { + username: 'docdb', + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE), + vpc, + removalPolicy: cdk.RemovalPolicy.DESTROY, + copyTagsToSnapshot: false, +}); + +new DatabaseCluster(stack, 'DatabaseCopyTagsToSnapshotEnabled', { + engineVersion: '3.6.0', + masterUser: { + username: 'docdb', + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE), + vpc, + removalPolicy: cdk.RemovalPolicy.DESTROY, + copyTagsToSnapshot: true, +}); + +new integ.IntegTest(app, 'ClusterTest', { + testCases: [stack], +}); + +app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets.json new file mode 100644 index 0000000000000..e5b44f3d631e9 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.assets.json new file mode 100644 index 0000000000000..ef8801d085103 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "58b8bc82dcb966b859400e60b336f9cbf8ce1ea8a23fc25216eb704614cb45fc": { + "source": { + "path": "cdk-integ-docdb-cluster-instance-ca-certificate.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "58b8bc82dcb966b859400e60b336f9cbf8ce1ea8a23fc25216eb704614cb45fc.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.template.json new file mode 100644 index 0000000000000..a04c7c1b9140f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk-integ-docdb-cluster-instance-ca-certificate.template.json @@ -0,0 +1,500 @@ +{ + "Resources": { + "VPCB9E5F0B4": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC" + } + ] + } + }, + "VPCPublicSubnet1SubnetB4246D30": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableFEE4B781": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableAssociation0B0896DC": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "VPCPublicSubnet1DefaultRoute91CEF279": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet1EIP6AD938E8": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ] + } + }, + "VPCPublicSubnet1NATGatewayE0556630": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC" + ] + }, + "VPCPublicSubnet2Subnet74179F39": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTable6F1A15F1": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTableAssociation5A808732": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "VPCPublicSubnet2DefaultRouteB7481BBA": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet2EIP4947BC00": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ] + } + }, + "VPCPublicSubnet2NATGateway3C070193": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ] + }, + "VPCPrivateSubnet1Subnet8BCA10E0": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableBE8A6027": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableAssociation347902D1": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "VPCPrivateSubnet1DefaultRouteAE1D6490": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "VPCPrivateSubnet2SubnetCFCDAA7A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTable0A19E10E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTableAssociation0C73D413": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "VPCIGWB7E252D3": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC" + } + ] + } + }, + "VPCVPCGW99B986DC": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "DatabaseSubnets56F17B9A": { + "Type": "AWS::DocDB::DBSubnetGroup", + "Properties": { + "DBSubnetGroupDescription": "Subnets for Database database", + "SubnetIds": [ + { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + ] + } + }, + "DatabaseSecurityGroup5C91FDCB": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "DocumentDB security group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseB269D8BB": { + "Type": "AWS::DocDB::DBCluster", + "Properties": { + "DBSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "MasterUserPassword": "7959866cacc02c2d243ecfe177464fe6", + "MasterUsername": "docdb", + "StorageEncrypted": true, + "VpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseSecurityGroup5C91FDCB", + "GroupId" + ] + } + ] + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseInstance1844F58FD": { + "Type": "AWS::DocDB::DBInstance", + "Properties": { + "CACertificateIdentifier": "rds-ca-rsa4096-g1", + "DBClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "DBInstanceClass": "db.r5.large" + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC", + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/integ.json new file mode 100644 index 0000000000000..875ba43eb3ce4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "ClusterInstanceCACertificateTest/DefaultTest": { + "stacks": [ + "cdk-integ-docdb-cluster-instance-ca-certificate" + ], + "assertionStack": "ClusterInstanceCACertificateTest/DefaultTest/DeployAssert", + "assertionStackName": "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/manifest.json new file mode 100644 index 0000000000000..e8d1d1326d6e8 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/manifest.json @@ -0,0 +1,269 @@ +{ + "version": "36.0.0", + "artifacts": { + "cdk-integ-docdb-cluster-instance-ca-certificate.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "cdk-integ-docdb-cluster-instance-ca-certificate.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "cdk-integ-docdb-cluster-instance-ca-certificate": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "cdk-integ-docdb-cluster-instance-ca-certificate.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/58b8bc82dcb966b859400e60b336f9cbf8ce1ea8a23fc25216eb704614cb45fc.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "cdk-integ-docdb-cluster-instance-ca-certificate.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "cdk-integ-docdb-cluster-instance-ca-certificate.assets" + ], + "metadata": { + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCB9E5F0B4" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1SubnetB4246D30" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableFEE4B781" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1RouteTableAssociation0B0896DC" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1DefaultRoute91CEF279" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1EIP6AD938E8" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet1NATGatewayE0556630" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2Subnet74179F39" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTable6F1A15F1" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2RouteTableAssociation5A808732" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2DefaultRouteB7481BBA" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2EIP4947BC00" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPublicSubnet2NATGateway3C070193" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1Subnet8BCA10E0" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableBE8A6027" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1RouteTableAssociation347902D1" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet1DefaultRouteAE1D6490" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTable0A19E10E" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2RouteTableAssociation0C73D413" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCPrivateSubnet2DefaultRouteF4F5CFD2" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCIGWB7E252D3" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/VPC/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VPCVPCGW99B986DC" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/Database/Subnets": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseSubnets56F17B9A" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/Database/SecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseSecurityGroup5C91FDCB" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/Database/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseB269D8BB" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/Database/Instance1": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseInstance1844F58FD" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/cdk-integ-docdb-cluster-instance-ca-certificate/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "cdk-integ-docdb-cluster-instance-ca-certificate" + }, + "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "ClusterInstanceCACertificateTestDefaultTestDeployAssertD9510038.assets" + ], + "metadata": { + "/ClusterInstanceCACertificateTest/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/ClusterInstanceCACertificateTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "ClusterInstanceCACertificateTest/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/tree.json new file mode 100644 index 0000000000000..533e30cfca1cd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.js.snapshot/tree.json @@ -0,0 +1,855 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "cdk-integ-docdb-cluster-instance-ca-certificate": { + "id": "cdk-integ-docdb-cluster-instance-ca-certificate", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate", + "children": { + "VPC": { + "id": "VPC", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC", + "children": { + "Resource": { + "id": "Resource", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.0.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.64.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.128.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.192.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "subnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/VPC/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "internetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "Database": { + "id": "Database", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database", + "children": { + "Subnets": { + "id": "Subnets", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database/Subnets", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBSubnetGroup", + "aws:cdk:cloudformation:props": { + "dbSubnetGroupDescription": "Subnets for Database database", + "subnetIds": [ + { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBSubnetGroup", + "version": "0.0.0" + } + }, + "SecurityGroup": { + "id": "SecurityGroup", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database/SecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database/SecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "DocumentDB security group", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBCluster", + "aws:cdk:cloudformation:props": { + "dbSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "masterUsername": "docdb", + "masterUserPassword": "7959866cacc02c2d243ecfe177464fe6", + "storageEncrypted": true, + "vpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseSecurityGroup5C91FDCB", + "GroupId" + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBCluster", + "version": "0.0.0" + } + }, + "Instance1": { + "id": "Instance1", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/Database/Instance1", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DocDB::DBInstance", + "aws:cdk:cloudformation:props": { + "caCertificateIdentifier": "rds-ca-rsa4096-g1", + "dbClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "dbInstanceClass": "db.r5.large" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.CfnDBInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_docdb.DatabaseCluster", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "cdk-integ-docdb-cluster-instance-ca-certificate/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "ClusterInstanceCACertificateTest": { + "id": "ClusterInstanceCACertificateTest", + "path": "ClusterInstanceCACertificateTest", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "ClusterInstanceCACertificateTest/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "ClusterInstanceCACertificateTest/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "ClusterInstanceCACertificateTest/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "ClusterInstanceCACertificateTest/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "ClusterInstanceCACertificateTest/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.ts new file mode 100644 index 0000000000000..b364d79831cb0 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-docdb/test/integ.cluster-instance-ca-certificate.ts @@ -0,0 +1,30 @@ +import { InstanceClass, InstanceSize, InstanceType, Vpc, SubnetType } from 'aws-cdk-lib/aws-ec2'; +import { App, Stack, RemovalPolicy, SecretValue } from 'aws-cdk-lib'; +import * as integ from '@aws-cdk/integ-tests-alpha'; +import { CaCertificate, DatabaseCluster } from 'aws-cdk-lib/aws-docdb'; + +const app = new App(); + +const stack = new Stack(app, 'cdk-integ-docdb-cluster-instance-ca-certificate'); + +const vpc = new Vpc(stack, 'VPC', { maxAzs: 2, restrictDefaultSecurityGroup: false }); + +const instanceType = InstanceType.of(InstanceClass.R5, InstanceSize.LARGE); + +new DatabaseCluster(stack, 'Database', { + masterUser: { + username: 'docdb', + password: SecretValue.unsafePlainText('7959866cacc02c2d243ecfe177464fe6'), + }, + instanceType: instanceType, + caCertificate: CaCertificate.RDS_CA_RSA4096_G1, + vpcSubnets: { subnetType: SubnetType.PUBLIC }, + vpc, + removalPolicy: RemovalPolicy.DESTROY, +}); + +new integ.IntegTest(app, 'ClusterInstanceCACertificateTest', { + testCases: [stack], +}); + +app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.js.snapshot/aws-ecs-integ-runtime.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.js.snapshot/aws-ecs-integ-runtime.template.json index 0108491f8601d..d28247b3480d7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.js.snapshot/aws-ecs-integ-runtime.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.js.snapshot/aws-ecs-integ-runtime.template.json @@ -570,7 +570,7 @@ "Family": "awsecsintegruntimeTaskDefGraviton28E28B263", "Memory": "1024", "NetworkMode": "awsvpc", - "PidMode": "host", + "PidMode": "task", "RequiresCompatibilities": [ "FARGATE" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.ts index 8f224e13e86cd..385ca2e8cdcd2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/fargate/integ.runtime.ts @@ -27,7 +27,7 @@ const taskDefinitiongraviton2 = new ecs.FargateTaskDefinition(stack, 'TaskDefGra }, cpu: 256, memoryLimitMiB: 1024, - pidMode: ecs.PidMode.HOST, + pidMode: ecs.PidMode.TASK, }); taskDefinitionwindows.addContainer('windowsservercore', { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/cfn-response.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/cfn-response.js new file mode 100644 index 0000000000000..817fd458250de --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/cfn-response.js @@ -0,0 +1,88 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Retry = exports.safeHandler = exports.includeStackTraces = exports.submitResponse = exports.MISSING_PHYSICAL_ID_MARKER = exports.CREATE_FAILED_PHYSICAL_ID_MARKER = void 0; +/* eslint-disable max-len */ +/* eslint-disable no-console */ +const url = require("url"); +const outbound_1 = require("./outbound"); +const util_1 = require("./util"); +exports.CREATE_FAILED_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::CREATE_FAILED'; +exports.MISSING_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID'; +async function submitResponse(status, event, options = {}) { + const json = { + Status: status, + Reason: options.reason || status, + StackId: event.StackId, + RequestId: event.RequestId, + PhysicalResourceId: event.PhysicalResourceId || exports.MISSING_PHYSICAL_ID_MARKER, + LogicalResourceId: event.LogicalResourceId, + NoEcho: options.noEcho, + Data: event.Data, + }; + const responseBody = JSON.stringify(json); + const parsedUrl = url.parse(event.ResponseURL); + const loggingSafeUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`; + (0, util_1.log)('submit response to cloudformation', loggingSafeUrl, json); + const retryOptions = { + attempts: 5, + sleep: 1000, + }; + await (0, util_1.withRetries)(retryOptions, outbound_1.httpRequest)({ + hostname: parsedUrl.hostname, + path: parsedUrl.path, + method: 'PUT', + headers: { + 'content-type': '', + 'content-length': Buffer.byteLength(responseBody, 'utf8'), + }, + }, responseBody); +} +exports.submitResponse = submitResponse; +exports.includeStackTraces = true; // for unit tests +function safeHandler(block) { + return async (event) => { + // ignore DELETE event when the physical resource ID is the marker that + // indicates that this DELETE is a subsequent DELETE to a failed CREATE + // operation. + if (event.RequestType === 'Delete' && event.PhysicalResourceId === exports.CREATE_FAILED_PHYSICAL_ID_MARKER) { + (0, util_1.log)('ignoring DELETE event caused by a failed CREATE event'); + await submitResponse('SUCCESS', event); + return; + } + try { + await block(event); + } + catch (e) { + // tell waiter state machine to retry + if (e instanceof Retry) { + (0, util_1.log)('retry requested by handler'); + throw e; + } + if (!event.PhysicalResourceId) { + // special case: if CREATE fails, which usually implies, we usually don't + // have a physical resource id. in this case, the subsequent DELETE + // operation does not have any meaning, and will likely fail as well. to + // address this, we use a marker so the provider framework can simply + // ignore the subsequent DELETE. + if (event.RequestType === 'Create') { + (0, util_1.log)('CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored'); + event.PhysicalResourceId = exports.CREATE_FAILED_PHYSICAL_ID_MARKER; + } + else { + // otherwise, if PhysicalResourceId is not specified, something is + // terribly wrong because all other events should have an ID. + (0, util_1.log)(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify({ ...event, ResponseURL: '...' })}`); + } + } + // this is an actual error, fail the activity altogether and exist. + await submitResponse('FAILED', event, { + reason: exports.includeStackTraces ? e.stack : e.message, + }); + } + }; +} +exports.safeHandler = safeHandler; +class Retry extends Error { +} +exports.Retry = Retry; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2ZuLXJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2ZuLXJlc3BvbnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRCQUE0QjtBQUM1QiwrQkFBK0I7QUFDL0IsMkJBQTJCO0FBQzNCLHlDQUF5QztBQUN6QyxpQ0FBMEM7QUFFN0IsUUFBQSxnQ0FBZ0MsR0FBRyx3REFBd0QsQ0FBQztBQUM1RixRQUFBLDBCQUEwQixHQUFHLDhEQUE4RCxDQUFDO0FBZ0JsRyxLQUFLLFVBQVUsY0FBYyxDQUFDLE1BQTRCLEVBQUUsS0FBaUMsRUFBRSxVQUF5QyxFQUFHO0lBQ2hKLE1BQU0sSUFBSSxHQUFtRDtRQUMzRCxNQUFNLEVBQUUsTUFBTTtRQUNkLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLE1BQU07UUFDaEMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1FBQ3RCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztRQUMxQixrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLElBQUksa0NBQTBCO1FBQzFFLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUI7UUFDMUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1FBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtLQUNqQixDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUxQyxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMvQyxNQUFNLGNBQWMsR0FBRyxHQUFHLFNBQVMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLFFBQVEsSUFBSSxTQUFTLENBQUMsUUFBUSxNQUFNLENBQUM7SUFDaEcsSUFBQSxVQUFHLEVBQUMsbUNBQW1DLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRS9ELE1BQU0sWUFBWSxHQUFHO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLElBQUk7S0FDWixDQUFDO0lBQ0YsTUFBTSxJQUFBLGtCQUFXLEVBQUMsWUFBWSxFQUFFLHNCQUFXLENBQUMsQ0FBQztRQUMzQyxRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVE7UUFDNUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQ3BCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsT0FBTyxFQUFFO1lBQ1AsY0FBYyxFQUFFLEVBQUU7WUFDbEIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO1NBQzFEO0tBQ0YsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUNuQixDQUFDO0FBL0JELHdDQStCQztBQUVVLFFBQUEsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLENBQUMsaUJBQWlCO0FBRXZELFNBQWdCLFdBQVcsQ0FBQyxLQUFvQztJQUM5RCxPQUFPLEtBQUssRUFBRSxLQUFVLEVBQUUsRUFBRTtRQUUxQix1RUFBdUU7UUFDdkUsdUVBQXVFO1FBQ3ZFLGFBQWE7UUFDYixJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsS0FBSyx3Q0FBZ0MsRUFBRSxDQUFDO1lBQ3BHLElBQUEsVUFBRyxFQUFDLHVEQUF1RCxDQUFDLENBQUM7WUFDN0QsTUFBTSxjQUFjLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3ZDLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIscUNBQXFDO1lBQ3JDLElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO2dCQUN2QixJQUFBLFVBQUcsRUFBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUNsQyxNQUFNLENBQUMsQ0FBQztZQUNWLENBQUM7WUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQzlCLHlFQUF5RTtnQkFDekUsbUVBQW1FO2dCQUNuRSx3RUFBd0U7Z0JBQ3hFLHFFQUFxRTtnQkFDckUsZ0NBQWdDO2dCQUNoQyxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7b0JBQ25DLElBQUEsVUFBRyxFQUFDLDRHQUE0RyxDQUFDLENBQUM7b0JBQ2xILEtBQUssQ0FBQyxrQkFBa0IsR0FBRyx3Q0FBZ0MsQ0FBQztnQkFDOUQsQ0FBQztxQkFBTSxDQUFDO29CQUNOLGtFQUFrRTtvQkFDbEUsNkRBQTZEO29CQUM3RCxJQUFBLFVBQUcsRUFBQyw2REFBNkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkgsQ0FBQztZQUNILENBQUM7WUFFRCxtRUFBbUU7WUFDbkUsTUFBTSxjQUFjLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFDcEMsTUFBTSxFQUFFLDBCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTzthQUNqRCxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQTNDRCxrQ0EyQ0M7QUFFRCxNQUFhLEtBQU0sU0FBUSxLQUFLO0NBQUk7QUFBcEMsc0JBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0ICogYXMgdXJsIGZyb20gJ3VybCc7XG5pbXBvcnQgeyBodHRwUmVxdWVzdCB9IGZyb20gJy4vb3V0Ym91bmQnO1xuaW1wb3J0IHsgbG9nLCB3aXRoUmV0cmllcyB9IGZyb20gJy4vdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBDUkVBVEVfRkFJTEVEX1BIWVNJQ0FMX0lEX01BUktFUiA9ICdBV1NDREs6OkN1c3RvbVJlc291cmNlUHJvdmlkZXJGcmFtZXdvcms6OkNSRUFURV9GQUlMRUQnO1xuZXhwb3J0IGNvbnN0IE1JU1NJTkdfUEhZU0lDQUxfSURfTUFSS0VSID0gJ0FXU0NESzo6Q3VzdG9tUmVzb3VyY2VQcm92aWRlckZyYW1ld29yazo6TUlTU0lOR19QSFlTSUNBTF9JRCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xvdWRGb3JtYXRpb25SZXNwb25zZU9wdGlvbnMge1xuICByZWFkb25seSByZWFzb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5vRWNobz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xvdWRGb3JtYXRpb25FdmVudENvbnRleHQge1xuICBTdGFja0lkOiBzdHJpbmc7XG4gIFJlcXVlc3RJZDogc3RyaW5nO1xuICBQaHlzaWNhbFJlc291cmNlSWQ/OiBzdHJpbmc7XG4gIExvZ2ljYWxSZXNvdXJjZUlkOiBzdHJpbmc7XG4gIFJlc3BvbnNlVVJMOiBzdHJpbmc7XG4gIERhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzdWJtaXRSZXNwb25zZShzdGF0dXM6ICdTVUNDRVNTJyB8ICdGQUlMRUQnLCBldmVudDogQ2xvdWRGb3JtYXRpb25FdmVudENvbnRleHQsIG9wdGlvbnM6IENsb3VkRm9ybWF0aW9uUmVzcG9uc2VPcHRpb25zID0geyB9KSB7XG4gIGNvbnN0IGpzb246IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlUmVzcG9uc2UgPSB7XG4gICAgU3RhdHVzOiBzdGF0dXMsXG4gICAgUmVhc29uOiBvcHRpb25zLnJlYXNvbiB8fCBzdGF0dXMsXG4gICAgU3RhY2tJZDogZXZlbnQuU3RhY2tJZCxcbiAgICBSZXF1ZXN0SWQ6IGV2ZW50LlJlcXVlc3RJZCxcbiAgICBQaHlzaWNhbFJlc291cmNlSWQ6IGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCB8fCBNSVNTSU5HX1BIWVNJQ0FMX0lEX01BUktFUixcbiAgICBMb2dpY2FsUmVzb3VyY2VJZDogZXZlbnQuTG9naWNhbFJlc291cmNlSWQsXG4gICAgTm9FY2hvOiBvcHRpb25zLm5vRWNobyxcbiAgICBEYXRhOiBldmVudC5EYXRhLFxuICB9O1xuXG4gIGNvbnN0IHJlc3BvbnNlQm9keSA9IEpTT04uc3RyaW5naWZ5KGpzb24pO1xuXG4gIGNvbnN0IHBhcnNlZFVybCA9IHVybC5wYXJzZShldmVudC5SZXNwb25zZVVSTCk7XG4gIGNvbnN0IGxvZ2dpbmdTYWZlVXJsID0gYCR7cGFyc2VkVXJsLnByb3RvY29sfS8vJHtwYXJzZWRVcmwuaG9zdG5hbWV9LyR7cGFyc2VkVXJsLnBhdGhuYW1lfT8qKipgO1xuICBsb2coJ3N1Ym1pdCByZXNwb25zZSB0byBjbG91ZGZvcm1hdGlvbicsIGxvZ2dpbmdTYWZlVXJsLCBqc29uKTtcblxuICBjb25zdCByZXRyeU9wdGlvbnMgPSB7XG4gICAgYXR0ZW1wdHM6IDUsXG4gICAgc2xlZXA6IDEwMDAsXG4gIH07XG4gIGF3YWl0IHdpdGhSZXRyaWVzKHJldHJ5T3B0aW9ucywgaHR0cFJlcXVlc3QpKHtcbiAgICBob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuICAgIHBhdGg6IHBhcnNlZFVybC5wYXRoLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgaGVhZGVyczoge1xuICAgICAgJ2NvbnRlbnQtdHlwZSc6ICcnLFxuICAgICAgJ2NvbnRlbnQtbGVuZ3RoJzogQnVmZmVyLmJ5dGVMZW5ndGgocmVzcG9uc2VCb2R5LCAndXRmOCcpLFxuICAgIH0sXG4gIH0sIHJlc3BvbnNlQm9keSk7XG59XG5cbmV4cG9ydCBsZXQgaW5jbHVkZVN0YWNrVHJhY2VzID0gdHJ1ZTsgLy8gZm9yIHVuaXQgdGVzdHNcblxuZXhwb3J0IGZ1bmN0aW9uIHNhZmVIYW5kbGVyKGJsb2NrOiAoZXZlbnQ6IGFueSkgPT4gUHJvbWlzZTx2b2lkPikge1xuICByZXR1cm4gYXN5bmMgKGV2ZW50OiBhbnkpID0+IHtcblxuICAgIC8vIGlnbm9yZSBERUxFVEUgZXZlbnQgd2hlbiB0aGUgcGh5c2ljYWwgcmVzb3VyY2UgSUQgaXMgdGhlIG1hcmtlciB0aGF0XG4gICAgLy8gaW5kaWNhdGVzIHRoYXQgdGhpcyBERUxFVEUgaXMgYSBzdWJzZXF1ZW50IERFTEVURSB0byBhIGZhaWxlZCBDUkVBVEVcbiAgICAvLyBvcGVyYXRpb24uXG4gICAgaWYgKGV2ZW50LlJlcXVlc3RUeXBlID09PSAnRGVsZXRlJyAmJiBldmVudC5QaHlzaWNhbFJlc291cmNlSWQgPT09IENSRUFURV9GQUlMRURfUEhZU0lDQUxfSURfTUFSS0VSKSB7XG4gICAgICBsb2coJ2lnbm9yaW5nIERFTEVURSBldmVudCBjYXVzZWQgYnkgYSBmYWlsZWQgQ1JFQVRFIGV2ZW50Jyk7XG4gICAgICBhd2FpdCBzdWJtaXRSZXNwb25zZSgnU1VDQ0VTUycsIGV2ZW50KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgYmxvY2soZXZlbnQpO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgLy8gdGVsbCB3YWl0ZXIgc3RhdGUgbWFjaGluZSB0byByZXRyeVxuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBSZXRyeSkge1xuICAgICAgICBsb2coJ3JldHJ5IHJlcXVlc3RlZCBieSBoYW5kbGVyJyk7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG5cbiAgICAgIGlmICghZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkKSB7XG4gICAgICAgIC8vIHNwZWNpYWwgY2FzZTogaWYgQ1JFQVRFIGZhaWxzLCB3aGljaCB1c3VhbGx5IGltcGxpZXMsIHdlIHVzdWFsbHkgZG9uJ3RcbiAgICAgICAgLy8gaGF2ZSBhIHBoeXNpY2FsIHJlc291cmNlIGlkLiBpbiB0aGlzIGNhc2UsIHRoZSBzdWJzZXF1ZW50IERFTEVURVxuICAgICAgICAvLyBvcGVyYXRpb24gZG9lcyBub3QgaGF2ZSBhbnkgbWVhbmluZywgYW5kIHdpbGwgbGlrZWx5IGZhaWwgYXMgd2VsbC4gdG9cbiAgICAgICAgLy8gYWRkcmVzcyB0aGlzLCB3ZSB1c2UgYSBtYXJrZXIgc28gdGhlIHByb3ZpZGVyIGZyYW1ld29yayBjYW4gc2ltcGx5XG4gICAgICAgIC8vIGlnbm9yZSB0aGUgc3Vic2VxdWVudCBERUxFVEUuXG4gICAgICAgIGlmIChldmVudC5SZXF1ZXN0VHlwZSA9PT0gJ0NyZWF0ZScpIHtcbiAgICAgICAgICBsb2coJ0NSRUFURSBmYWlsZWQsIHJlc3BvbmRpbmcgd2l0aCBhIG1hcmtlciBwaHlzaWNhbCByZXNvdXJjZSBpZCBzbyB0aGF0IHRoZSBzdWJzZXF1ZW50IERFTEVURSB3aWxsIGJlIGlnbm9yZWQnKTtcbiAgICAgICAgICBldmVudC5QaHlzaWNhbFJlc291cmNlSWQgPSBDUkVBVEVfRkFJTEVEX1BIWVNJQ0FMX0lEX01BUktFUjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBvdGhlcndpc2UsIGlmIFBoeXNpY2FsUmVzb3VyY2VJZCBpcyBub3Qgc3BlY2lmaWVkLCBzb21ldGhpbmcgaXNcbiAgICAgICAgICAvLyB0ZXJyaWJseSB3cm9uZyBiZWNhdXNlIGFsbCBvdGhlciBldmVudHMgc2hvdWxkIGhhdmUgYW4gSUQuXG4gICAgICAgICAgbG9nKGBFUlJPUjogTWFsZm9ybWVkIGV2ZW50LiBcIlBoeXNpY2FsUmVzb3VyY2VJZFwiIGlzIHJlcXVpcmVkOiAke0pTT04uc3RyaW5naWZ5KHsgLi4uZXZlbnQsIFJlc3BvbnNlVVJMOiAnLi4uJyB9KX1gKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyB0aGlzIGlzIGFuIGFjdHVhbCBlcnJvciwgZmFpbCB0aGUgYWN0aXZpdHkgYWx0b2dldGhlciBhbmQgZXhpc3QuXG4gICAgICBhd2FpdCBzdWJtaXRSZXNwb25zZSgnRkFJTEVEJywgZXZlbnQsIHtcbiAgICAgICAgcmVhc29uOiBpbmNsdWRlU3RhY2tUcmFjZXMgPyBlLnN0YWNrIDogZS5tZXNzYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgY2xhc3MgUmV0cnkgZXh0ZW5kcyBFcnJvciB7IH1cbiJdfQ== \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/consts.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/consts.js new file mode 100644 index 0000000000000..31faa077ae313 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/consts.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FRAMEWORK_ON_TIMEOUT_HANDLER_NAME = exports.FRAMEWORK_IS_COMPLETE_HANDLER_NAME = exports.FRAMEWORK_ON_EVENT_HANDLER_NAME = exports.WAITER_STATE_MACHINE_ARN_ENV = exports.USER_IS_COMPLETE_FUNCTION_ARN_ENV = exports.USER_ON_EVENT_FUNCTION_ARN_ENV = void 0; +exports.USER_ON_EVENT_FUNCTION_ARN_ENV = 'USER_ON_EVENT_FUNCTION_ARN'; +exports.USER_IS_COMPLETE_FUNCTION_ARN_ENV = 'USER_IS_COMPLETE_FUNCTION_ARN'; +exports.WAITER_STATE_MACHINE_ARN_ENV = 'WAITER_STATE_MACHINE_ARN'; +exports.FRAMEWORK_ON_EVENT_HANDLER_NAME = 'onEvent'; +exports.FRAMEWORK_IS_COMPLETE_HANDLER_NAME = 'isComplete'; +exports.FRAMEWORK_ON_TIMEOUT_HANDLER_NAME = 'onTimeout'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29uc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEsOEJBQThCLEdBQUcsNEJBQTRCLENBQUM7QUFDOUQsUUFBQSxpQ0FBaUMsR0FBRywrQkFBK0IsQ0FBQztBQUNwRSxRQUFBLDRCQUE0QixHQUFHLDBCQUEwQixDQUFDO0FBRTFELFFBQUEsK0JBQStCLEdBQUcsU0FBUyxDQUFDO0FBQzVDLFFBQUEsa0NBQWtDLEdBQUcsWUFBWSxDQUFDO0FBQ2xELFFBQUEsaUNBQWlDLEdBQUcsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFVTRVJfT05fRVZFTlRfRlVOQ1RJT05fQVJOX0VOViA9ICdVU0VSX09OX0VWRU5UX0ZVTkNUSU9OX0FSTic7XG5leHBvcnQgY29uc3QgVVNFUl9JU19DT01QTEVURV9GVU5DVElPTl9BUk5fRU5WID0gJ1VTRVJfSVNfQ09NUExFVEVfRlVOQ1RJT05fQVJOJztcbmV4cG9ydCBjb25zdCBXQUlURVJfU1RBVEVfTUFDSElORV9BUk5fRU5WID0gJ1dBSVRFUl9TVEFURV9NQUNISU5FX0FSTic7XG5cbmV4cG9ydCBjb25zdCBGUkFNRVdPUktfT05fRVZFTlRfSEFORExFUl9OQU1FID0gJ29uRXZlbnQnO1xuZXhwb3J0IGNvbnN0IEZSQU1FV09SS19JU19DT01QTEVURV9IQU5ETEVSX05BTUUgPSAnaXNDb21wbGV0ZSc7XG5leHBvcnQgY29uc3QgRlJBTUVXT1JLX09OX1RJTUVPVVRfSEFORExFUl9OQU1FID0gJ29uVGltZW91dCc7XG4iXX0= \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/framework.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/framework.js new file mode 100644 index 0000000000000..cd79e607eefe7 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/framework.js @@ -0,0 +1,164 @@ +"use strict"; +/* eslint-disable max-len */ +/* eslint-disable no-console */ +const cfnResponse = require("./cfn-response"); +const consts = require("./consts"); +const outbound_1 = require("./outbound"); +const util_1 = require("./util"); +/** + * The main runtime entrypoint of the async custom resource lambda function. + * + * Any lifecycle event changes to the custom resources will invoke this handler, which will, in turn, + * interact with the user-defined `onEvent` and `isComplete` handlers. + * + * This function will always succeed. If an error occurs, it is logged but an error is not thrown. + * + * @param cfnRequest The cloudformation custom resource event. + */ +async function onEvent(cfnRequest) { + const sanitizedRequest = { ...cfnRequest, ResponseURL: '...' }; + (0, util_1.log)('onEventHandler', sanitizedRequest); + cfnRequest.ResourceProperties = cfnRequest.ResourceProperties || {}; + const onEventResult = await invokeUserFunction(consts.USER_ON_EVENT_FUNCTION_ARN_ENV, sanitizedRequest, cfnRequest.ResponseURL); + (0, util_1.log)('onEvent returned:', onEventResult); + // merge the request and the result from onEvent to form the complete resource event + // this also performs validation. + const resourceEvent = createResponseEvent(cfnRequest, onEventResult); + (0, util_1.log)('event:', onEventResult); + // determine if this is an async provider based on whether we have an isComplete handler defined. + // if it is not defined, then we are basically ready to return a positive response. + if (!process.env[consts.USER_IS_COMPLETE_FUNCTION_ARN_ENV]) { + return cfnResponse.submitResponse('SUCCESS', resourceEvent, { noEcho: resourceEvent.NoEcho }); + } + // ok, we are not complete, so kick off the waiter workflow + const waiter = { + stateMachineArn: (0, util_1.getEnv)(consts.WAITER_STATE_MACHINE_ARN_ENV), + name: resourceEvent.RequestId, + input: JSON.stringify(resourceEvent), + }; + (0, util_1.log)('starting waiter', { + stateMachineArn: (0, util_1.getEnv)(consts.WAITER_STATE_MACHINE_ARN_ENV), + name: resourceEvent.RequestId, + }); + // kick off waiter state machine + await (0, outbound_1.startExecution)(waiter); +} +// invoked a few times until `complete` is true or until it times out. +async function isComplete(event) { + const sanitizedRequest = { ...event, ResponseURL: '...' }; + (0, util_1.log)('isComplete', sanitizedRequest); + const isCompleteResult = await invokeUserFunction(consts.USER_IS_COMPLETE_FUNCTION_ARN_ENV, sanitizedRequest, event.ResponseURL); + (0, util_1.log)('user isComplete returned:', isCompleteResult); + // if we are not complete, return false, and don't send a response back. + if (!isCompleteResult.IsComplete) { + if (isCompleteResult.Data && Object.keys(isCompleteResult.Data).length > 0) { + throw new Error('"Data" is not allowed if "IsComplete" is "False"'); + } + // This must be the full event, it will be deserialized in `onTimeout` to send the response to CloudFormation + throw new cfnResponse.Retry(JSON.stringify(event)); + } + const response = { + ...event, + ...isCompleteResult, + Data: { + ...event.Data, + ...isCompleteResult.Data, + }, + }; + await cfnResponse.submitResponse('SUCCESS', response, { noEcho: event.NoEcho }); +} +// invoked when completion retries are exhaused. +async function onTimeout(timeoutEvent) { + (0, util_1.log)('timeoutHandler', timeoutEvent); + const isCompleteRequest = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage); + await cfnResponse.submitResponse('FAILED', isCompleteRequest, { + reason: 'Operation timed out', + }); +} +async function invokeUserFunction(functionArnEnv, sanitizedPayload, responseUrl) { + const functionArn = (0, util_1.getEnv)(functionArnEnv); + (0, util_1.log)(`executing user function ${functionArn} with payload`, sanitizedPayload); + // transient errors such as timeouts, throttling errors (429), and other + // errors that aren't caused by a bad request (500 series) are retried + // automatically by the JavaScript SDK. + const resp = await (0, outbound_1.invokeFunction)({ + FunctionName: functionArn, + // Cannot strip 'ResponseURL' here as this would be a breaking change even though the downstream CR doesn't need it + Payload: JSON.stringify({ ...sanitizedPayload, ResponseURL: responseUrl }), + }); + (0, util_1.log)('user function response:', resp, typeof (resp)); + // ParseJsonPayload is very defensive. It should not be possible for `Payload` + // to be anything other than a JSON encoded string (or intarray). Something weird is + // going on if that happens. Still, we should do our best to survive it. + const jsonPayload = (0, util_1.parseJsonPayload)(resp.Payload); + if (resp.FunctionError) { + (0, util_1.log)('user function threw an error:', resp.FunctionError); + const errorMessage = jsonPayload.errorMessage || 'error'; + // parse function name from arn + // arn:${Partition}:lambda:${Region}:${Account}:function:${FunctionName} + const arn = functionArn.split(':'); + const functionName = arn[arn.length - 1]; + // append a reference to the log group. + const message = [ + errorMessage, + '', + `Logs: /aws/lambda/${functionName}`, // cloudwatch log group + '', + ].join('\n'); + const e = new Error(message); + // the output that goes to CFN is what's in `stack`, not the error message. + // if we have a remote trace, construct a nice message with log group information + if (jsonPayload.trace) { + // skip first trace line because it's the message + e.stack = [message, ...jsonPayload.trace.slice(1)].join('\n'); + } + throw e; + } + return jsonPayload; +} +function createResponseEvent(cfnRequest, onEventResult) { + // + // validate that onEventResult always includes a PhysicalResourceId + onEventResult = onEventResult || {}; + // if physical ID is not returned, we have some defaults for you based + // on the request type. + const physicalResourceId = onEventResult.PhysicalResourceId || defaultPhysicalResourceId(cfnRequest); + // if we are in DELETE and physical ID was changed, it's an error. + if (cfnRequest.RequestType === 'Delete' && physicalResourceId !== cfnRequest.PhysicalResourceId) { + throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${onEventResult.PhysicalResourceId}" during deletion`); + } + // if we are in UPDATE and physical ID was changed, it's a replacement (just log) + if (cfnRequest.RequestType === 'Update' && physicalResourceId !== cfnRequest.PhysicalResourceId) { + (0, util_1.log)(`UPDATE: changing physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${onEventResult.PhysicalResourceId}"`); + } + // merge request event and result event (result prevails). + return { + ...cfnRequest, + ...onEventResult, + PhysicalResourceId: physicalResourceId, + }; +} +/** + * Calculates the default physical resource ID based in case user handler did + * not return a PhysicalResourceId. + * + * For "CREATE", it uses the RequestId. + * For "UPDATE" and "DELETE" and returns the current PhysicalResourceId (the one provided in `event`). + */ +function defaultPhysicalResourceId(req) { + switch (req.RequestType) { + case 'Create': + return req.RequestId; + case 'Update': + case 'Delete': + return req.PhysicalResourceId; + default: + throw new Error(`Invalid "RequestType" in request "${JSON.stringify(req)}"`); + } +} +module.exports = { + [consts.FRAMEWORK_ON_EVENT_HANDLER_NAME]: cfnResponse.safeHandler(onEvent), + [consts.FRAMEWORK_IS_COMPLETE_HANDLER_NAME]: cfnResponse.safeHandler(isComplete), + [consts.FRAMEWORK_ON_TIMEOUT_HANDLER_NAME]: onTimeout, +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZnJhbWV3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0QkFBNEI7QUFDNUIsK0JBQStCO0FBQy9CLDhDQUE4QztBQUM5QyxtQ0FBbUM7QUFDbkMseUNBQTREO0FBQzVELGlDQUF1RDtBQVV2RDs7Ozs7Ozs7O0dBU0c7QUFDSCxLQUFLLFVBQVUsT0FBTyxDQUFDLFVBQXVEO0lBQzVFLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxHQUFHLFVBQVUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFXLENBQUM7SUFDeEUsSUFBQSxVQUFHLEVBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUV4QyxVQUFVLENBQUMsa0JBQWtCLEdBQUcsVUFBVSxDQUFDLGtCQUFrQixJQUFJLEVBQUcsQ0FBQztJQUVyRSxNQUFNLGFBQWEsR0FBRyxNQUFNLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFvQixDQUFDO0lBQ25KLElBQUEsVUFBRyxFQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBRXhDLG9GQUFvRjtJQUNwRixpQ0FBaUM7SUFDakMsTUFBTSxhQUFhLEdBQUcsbUJBQW1CLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3JFLElBQUEsVUFBRyxFQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUU3QixpR0FBaUc7SUFDakcsbUZBQW1GO0lBQ25GLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFFLENBQUM7UUFDM0QsT0FBTyxXQUFXLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELDJEQUEyRDtJQUMz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RyxDQUFDLFNBQVMsQ0FBQztRQUV2QixLQUFLLFFBQVEsQ0FBQztRQUNkLEtBQUssUUFBUTtZQUNYLE9BQU8sR0FBRyxDQUFDLGtCQUFrQixDQUFDO1FBRWhDO1lBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakYsQ0FBQztBQUNILENBQUM7QUFoTUQsaUJBQVM7SUFDUCxDQUFDLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQzFFLENBQUMsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUM7SUFDaEYsQ0FBQyxNQUFNLENBQUMsaUNBQWlDLENBQUMsRUFBRSxTQUFTO0NBQ3RELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgKiBhcyBjZm5SZXNwb25zZSBmcm9tICcuL2Nmbi1yZXNwb25zZSc7XG5pbXBvcnQgKiBhcyBjb25zdHMgZnJvbSAnLi9jb25zdHMnO1xuaW1wb3J0IHsgaW52b2tlRnVuY3Rpb24sIHN0YXJ0RXhlY3V0aW9uIH0gZnJvbSAnLi9vdXRib3VuZCc7XG5pbXBvcnQgeyBnZXRFbnYsIGxvZywgcGFyc2VKc29uUGF5bG9hZCB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBJc0NvbXBsZXRlUmVzcG9uc2UsIE9uRXZlbnRSZXNwb25zZSB9IGZyb20gJy4uL3R5cGVzJztcblxuLy8gdXNlIGNvbnN0cyBmb3IgaGFuZGxlciBuYW1lcyB0byBjb21waWxlci1lbmZvcmNlIHRoZSBjb3VwbGluZyB3aXRoIGNvbnN0cnVjdGlvbiBjb2RlLlxuZXhwb3J0ID0ge1xuICBbY29uc3RzLkZSQU1FV09SS19PTl9FVkVOVF9IQU5ETEVSX05BTUVdOiBjZm5SZXNwb25zZS5zYWZlSGFuZGxlcihvbkV2ZW50KSxcbiAgW2NvbnN0cy5GUkFNRVdPUktfSVNfQ09NUExFVEVfSEFORExFUl9OQU1FXTogY2ZuUmVzcG9uc2Uuc2FmZUhhbmRsZXIoaXNDb21wbGV0ZSksXG4gIFtjb25zdHMuRlJBTUVXT1JLX09OX1RJTUVPVVRfSEFORExFUl9OQU1FXTogb25UaW1lb3V0LFxufTtcblxuLyoqXG4gKiBUaGUgbWFpbiBydW50aW1lIGVudHJ5cG9pbnQgb2YgdGhlIGFzeW5jIGN1c3RvbSByZXNvdXJjZSBsYW1iZGEgZnVuY3Rpb24uXG4gKlxuICogQW55IGxpZmVjeWNsZSBldmVudCBjaGFuZ2VzIHRvIHRoZSBjdXN0b20gcmVzb3VyY2VzIHdpbGwgaW52b2tlIHRoaXMgaGFuZGxlciwgd2hpY2ggd2lsbCwgaW4gdHVybixcbiAqIGludGVyYWN0IHdpdGggdGhlIHVzZXItZGVmaW5lZCBgb25FdmVudGAgYW5kIGBpc0NvbXBsZXRlYCBoYW5kbGVycy5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHdpbGwgYWx3YXlzIHN1Y2NlZWQuIElmIGFuIGVycm9yIG9jY3VycywgaXQgaXMgbG9nZ2VkIGJ1dCBhbiBlcnJvciBpcyBub3QgdGhyb3duLlxuICpcbiAqIEBwYXJhbSBjZm5SZXF1ZXN0IFRoZSBjbG91ZGZvcm1hdGlvbiBjdXN0b20gcmVzb3VyY2UgZXZlbnQuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIG9uRXZlbnQoY2ZuUmVxdWVzdDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCkge1xuICBjb25zdCBzYW5pdGl6ZWRSZXF1ZXN0ID0geyAuLi5jZm5SZXF1ZXN0LCBSZXNwb25zZVVSTDogJy4uLicgfSBhcyBjb25zdDtcbiAgbG9nKCdvbkV2ZW50SGFuZGxlcicsIHNhbml0aXplZFJlcXVlc3QpO1xuXG4gIGNmblJlcXVlc3QuUmVzb3VyY2VQcm9wZXJ0aWVzID0gY2ZuUmVxdWVzdC5SZXNvdXJjZVByb3BlcnRpZXMgfHwgeyB9O1xuXG4gIGNvbnN0IG9uRXZlbnRSZXN1bHQgPSBhd2FpdCBpbnZva2VVc2VyRnVuY3Rpb24oY29uc3RzLlVTRVJfT05fRVZFTlRfRlVOQ1RJT05fQVJOX0VOViwgc2FuaXRpemVkUmVxdWVzdCwgY2ZuUmVxdWVzdC5SZXNwb25zZVVSTCkgYXMgT25FdmVudFJlc3BvbnNlO1xuICBsb2coJ29uRXZlbnQgcmV0dXJuZWQ6Jywgb25FdmVudFJlc3VsdCk7XG5cbiAgLy8gbWVyZ2UgdGhlIHJlcXVlc3QgYW5kIHRoZSByZXN1bHQgZnJvbSBvbkV2ZW50IHRvIGZvcm0gdGhlIGNvbXBsZXRlIHJlc291cmNlIGV2ZW50XG4gIC8vIHRoaXMgYWxzbyBwZXJmb3JtcyB2YWxpZGF0aW9uLlxuICBjb25zdCByZXNvdXJjZUV2ZW50ID0gY3JlYXRlUmVzcG9uc2VFdmVudChjZm5SZXF1ZXN0LCBvbkV2ZW50UmVzdWx0KTtcbiAgbG9nKCdldmVudDonLCBvbkV2ZW50UmVzdWx0KTtcblxuICAvLyBkZXRlcm1pbmUgaWYgdGhpcyBpcyBhbiBhc3luYyBwcm92aWRlciBiYXNlZCBvbiB3aGV0aGVyIHdlIGhhdmUgYW4gaXNDb21wbGV0ZSBoYW5kbGVyIGRlZmluZWQuXG4gIC8vIGlmIGl0IGlzIG5vdCBkZWZpbmVkLCB0aGVuIHdlIGFyZSBiYXNpY2FsbHkgcmVhZHkgdG8gcmV0dXJuIGEgcG9zaXRpdmUgcmVzcG9uc2UuXG4gIGlmICghcHJvY2Vzcy5lbnZbY29uc3RzLlVTRVJfSVNfQ09NUExFVEVfRlVOQ1RJT05fQVJOX0VOVl0pIHtcbiAgICByZXR1cm4gY2ZuUmVzcG9uc2Uuc3VibWl0UmVzcG9uc2UoJ1NVQ0NFU1MnLCByZXNvdXJjZUV2ZW50LCB7IG5vRWNobzogcmVzb3VyY2VFdmVudC5Ob0VjaG8gfSk7XG4gIH1cblxuICAvLyBvaywgd2UgYXJlIG5vdCBjb21wbGV0ZSwgc28ga2ljayBvZmYgdGhlIHdhaXRlciB3b3JrZmxvd1xuICBjb25zdCB3YWl0ZXIgPSB7XG4gICAgc3RhdGVNYWNoaW5lQXJuOiBnZXRFbnYoY29uc3RzLldBSVRFUl9TVEFURV9NQUNISU5FX0FSTl9FTlYpLFxuICAgIG5hbWU6IHJlc291cmNlRXZlbnQuUmVxdWVzdElkLFxuICAgIGlucHV0OiBKU09OLnN0cmluZ2lmeShyZXNvdXJjZUV2ZW50KSxcbiAgfTtcblxuICBsb2coJ3N0YXJ0aW5nIHdhaXRlcicsIHtcbiAgICBzdGF0ZU1hY2hpbmVBcm46IGdldEVudihjb25zdHMuV0FJVEVSX1NUQVRFX01BQ0hJTkVfQVJOX0VOViksXG4gICAgbmFtZTogcmVzb3VyY2VFdmVudC5SZXF1ZXN0SWQsXG4gIH0pO1xuXG4gIC8vIGtpY2sgb2ZmIHdhaXRlciBzdGF0ZSBtYWNoaW5lXG4gIGF3YWl0IHN0YXJ0RXhlY3V0aW9uKHdhaXRlcik7XG59XG5cbi8vIGludm9rZWQgYSBmZXcgdGltZXMgdW50aWwgYGNvbXBsZXRlYCBpcyB0cnVlIG9yIHVudGlsIGl0IHRpbWVzIG91dC5cbmFzeW5jIGZ1bmN0aW9uIGlzQ29tcGxldGUoZXZlbnQ6IEFXU0NES0FzeW5jQ3VzdG9tUmVzb3VyY2UuSXNDb21wbGV0ZVJlcXVlc3QpIHtcbiAgY29uc3Qgc2FuaXRpemVkUmVxdWVzdCA9IHsgLi4uZXZlbnQsIFJlc3BvbnNlVVJMOiAnLi4uJyB9IGFzIGNvbnN0O1xuICBsb2coJ2lzQ29tcGxldGUnLCBzYW5pdGl6ZWRSZXF1ZXN0KTtcblxuICBjb25zdCBpc0NvbXBsZXRlUmVzdWx0ID0gYXdhaXQgaW52b2tlVXNlckZ1bmN0aW9uKGNvbnN0cy5VU0VSX0lTX0NPTVBMRVRFX0ZVTkNUSU9OX0FSTl9FTlYsIHNhbml0aXplZFJlcXVlc3QsIGV2ZW50LlJlc3BvbnNlVVJMKSBhcyBJc0NvbXBsZXRlUmVzcG9uc2U7XG4gIGxvZygndXNlciBpc0NvbXBsZXRlIHJldHVybmVkOicsIGlzQ29tcGxldGVSZXN1bHQpO1xuXG4gIC8vIGlmIHdlIGFyZSBub3QgY29tcGxldGUsIHJldHVybiBmYWxzZSwgYW5kIGRvbid0IHNlbmQgYSByZXNwb25zZSBiYWNrLlxuICBpZiAoIWlzQ29tcGxldGVSZXN1bHQuSXNDb21wbGV0ZSkge1xuICAgIGlmIChpc0NvbXBsZXRlUmVzdWx0LkRhdGEgJiYgT2JqZWN0LmtleXMoaXNDb21wbGV0ZVJlc3VsdC5EYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1wiRGF0YVwiIGlzIG5vdCBhbGxvd2VkIGlmIFwiSXNDb21wbGV0ZVwiIGlzIFwiRmFsc2VcIicpO1xuICAgIH1cblxuICAgIC8vIFRoaXMgbXVzdCBiZSB0aGUgZnVsbCBldmVudCwgaXQgd2lsbCBiZSBkZXNlcmlhbGl6ZWQgaW4gYG9uVGltZW91dGAgdG8gc2VuZCB0aGUgcmVzcG9uc2UgdG8gQ2xvdWRGb3JtYXRpb25cbiAgICB0aHJvdyBuZXcgY2ZuUmVzcG9uc2UuUmV0cnkoSlNPTi5zdHJpbmdpZnkoZXZlbnQpKTtcbiAgfVxuXG4gIGNvbnN0IHJlc3BvbnNlID0ge1xuICAgIC4uLmV2ZW50LFxuICAgIC4uLmlzQ29tcGxldGVSZXN1bHQsXG4gICAgRGF0YToge1xuICAgICAgLi4uZXZlbnQuRGF0YSxcbiAgICAgIC4uLmlzQ29tcGxldGVSZXN1bHQuRGF0YSxcbiAgICB9LFxuICB9O1xuXG4gIGF3YWl0IGNmblJlc3BvbnNlLnN1Ym1pdFJlc3BvbnNlKCdTVUNDRVNTJywgcmVzcG9uc2UsIHsgbm9FY2hvOiBldmVudC5Ob0VjaG8gfSk7XG59XG5cbi8vIGludm9rZWQgd2hlbiBjb21wbGV0aW9uIHJldHJpZXMgYXJlIGV4aGF1c2VkLlxuYXN5bmMgZnVuY3Rpb24gb25UaW1lb3V0KHRpbWVvdXRFdmVudDogYW55KSB7XG4gIGxvZygndGltZW91dEhhbmRsZXInLCB0aW1lb3V0RXZlbnQpO1xuXG4gIGNvbnN0IGlzQ29tcGxldGVSZXF1ZXN0ID0gSlNPTi5wYXJzZShKU09OLnBhcnNlKHRpbWVvdXRFdmVudC5DYXVzZSkuZXJyb3JNZXNzYWdlKSBhcyBBV1NDREtBc3luY0N1c3RvbVJlc291cmNlLklzQ29tcGxldGVSZXF1ZXN0O1xuICBhd2FpdCBjZm5SZXNwb25zZS5zdWJtaXRSZXNwb25zZSgnRkFJTEVEJywgaXNDb21wbGV0ZVJlcXVlc3QsIHtcbiAgICByZWFzb246ICdPcGVyYXRpb24gdGltZWQgb3V0JyxcbiAgfSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGludm9rZVVzZXJGdW5jdGlvbjxBIGV4dGVuZHMgeyBSZXNwb25zZVVSTDogJy4uLicgfT4oZnVuY3Rpb25Bcm5FbnY6IHN0cmluZywgc2FuaXRpemVkUGF5bG9hZDogQSwgcmVzcG9uc2VVcmw6IHN0cmluZykge1xuICBjb25zdCBmdW5jdGlvbkFybiA9IGdldEVudihmdW5jdGlvbkFybkVudik7XG4gIGxvZyhgZXhlY3V0aW5nIHVzZXIgZnVuY3Rpb24gJHtmdW5jdGlvbkFybn0gd2l0aCBwYXlsb2FkYCwgc2FuaXRpemVkUGF5bG9hZCk7XG5cbiAgLy8gdHJhbnNpZW50IGVycm9ycyBzdWNoIGFzIHRpbWVvdXRzLCB0aHJvdHRsaW5nIGVycm9ycyAoNDI5KSwgYW5kIG90aGVyXG4gIC8vIGVycm9ycyB0aGF0IGFyZW4ndCBjYXVzZWQgYnkgYSBiYWQgcmVxdWVzdCAoNTAwIHNlcmllcykgYXJlIHJldHJpZWRcbiAgLy8gYXV0b21hdGljYWxseSBieSB0aGUgSmF2YVNjcmlwdCBTREsuXG4gIGNvbnN0IHJlc3AgPSBhd2FpdCBpbnZva2VGdW5jdGlvbih7XG4gICAgRnVuY3Rpb25OYW1lOiBmdW5jdGlvbkFybixcblxuICAgIC8vIENhbm5vdCBzdHJpcCAnUmVzcG9uc2VVUkwnIGhlcmUgYXMgdGhpcyB3b3VsZCBiZSBhIGJyZWFraW5nIGNoYW5nZSBldmVuIHRob3VnaCB0aGUgZG93bnN0cmVhbSBDUiBkb2Vzbid0IG5lZWQgaXRcbiAgICBQYXlsb2FkOiBKU09OLnN0cmluZ2lmeSh7IC4uLnNhbml0aXplZFBheWxvYWQsIFJlc3BvbnNlVVJMOiByZXNwb25zZVVybCB9KSxcbiAgfSk7XG5cbiAgbG9nKCd1c2VyIGZ1bmN0aW9uIHJlc3BvbnNlOicsIHJlc3AsIHR5cGVvZihyZXNwKSk7XG5cbiAgLy8gUGFyc2VKc29uUGF5bG9hZCBpcyB2ZXJ5IGRlZmVuc2l2ZS4gSXQgc2hvdWxkIG5vdCBiZSBwb3NzaWJsZSBmb3IgYFBheWxvYWRgXG4gIC8vIHRvIGJlIGFueXRoaW5nIG90aGVyIHRoYW4gYSBKU09OIGVuY29kZWQgc3RyaW5nIChvciBpbnRhcnJheSkuIFNvbWV0aGluZyB3ZWlyZCBpc1xuICAvLyBnb2luZyBvbiBpZiB0aGF0IGhhcHBlbnMuIFN0aWxsLCB3ZSBzaG91bGQgZG8gb3VyIGJlc3QgdG8gc3Vydml2ZSBpdC5cbiAgY29uc3QganNvblBheWxvYWQgPSBwYXJzZUpzb25QYXlsb2FkKHJlc3AuUGF5bG9hZCk7XG4gIGlmIChyZXNwLkZ1bmN0aW9uRXJyb3IpIHtcbiAgICBsb2coJ3VzZXIgZnVuY3Rpb24gdGhyZXcgYW4gZXJyb3I6JywgcmVzcC5GdW5jdGlvbkVycm9yKTtcblxuICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGpzb25QYXlsb2FkLmVycm9yTWVzc2FnZSB8fCAnZXJyb3InO1xuXG4gICAgLy8gcGFyc2UgZnVuY3Rpb24gbmFtZSBmcm9tIGFyblxuICAgIC8vIGFybjoke1BhcnRpdGlvbn06bGFtYmRhOiR7UmVnaW9ufToke0FjY291bnR9OmZ1bmN0aW9uOiR7RnVuY3Rpb25OYW1lfVxuICAgIGNvbnN0IGFybiA9IGZ1bmN0aW9uQXJuLnNwbGl0KCc6Jyk7XG4gICAgY29uc3QgZnVuY3Rpb25OYW1lID0gYXJuW2Fybi5sZW5ndGggLSAxXTtcblxuICAgIC8vIGFwcGVuZCBhIHJlZmVyZW5jZSB0byB0aGUgbG9nIGdyb3VwLlxuICAgIGNvbnN0IG1lc3NhZ2UgPSBbXG4gICAgICBlcnJvck1lc3NhZ2UsXG4gICAgICAnJyxcbiAgICAgIGBMb2dzOiAvYXdzL2xhbWJkYS8ke2Z1bmN0aW9uTmFtZX1gLCAvLyBjbG91ZHdhdGNoIGxvZyBncm91cFxuICAgICAgJycsXG4gICAgXS5qb2luKCdcXG4nKTtcblxuICAgIGNvbnN0IGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7XG5cbiAgICAvLyB0aGUgb3V0cHV0IHRoYXQgZ29lcyB0byBDRk4gaXMgd2hhdCdzIGluIGBzdGFja2AsIG5vdCB0aGUgZXJyb3IgbWVzc2FnZS5cbiAgICAvLyBpZiB3ZSBoYXZlIGEgcmVtb3RlIHRyYWNlLCBjb25zdHJ1Y3QgYSBuaWNlIG1lc3NhZ2Ugd2l0aCBsb2cgZ3JvdXAgaW5mb3JtYXRpb25cbiAgICBpZiAoanNvblBheWxvYWQudHJhY2UpIHtcbiAgICAgIC8vIHNraXAgZmlyc3QgdHJhY2UgbGluZSBiZWNhdXNlIGl0J3MgdGhlIG1lc3NhZ2VcbiAgICAgIGUuc3RhY2sgPSBbbWVzc2FnZSwgLi4uanNvblBheWxvYWQudHJhY2Uuc2xpY2UoMSldLmpvaW4oJ1xcbicpO1xuICAgIH1cblxuICAgIHRocm93IGU7XG4gIH1cblxuICByZXR1cm4ganNvblBheWxvYWQ7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVJlc3BvbnNlRXZlbnQoY2ZuUmVxdWVzdDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCwgb25FdmVudFJlc3VsdDogT25FdmVudFJlc3BvbnNlKTogQVdTQ0RLQXN5bmNDdXN0b21SZXNvdXJjZS5Jc0NvbXBsZXRlUmVxdWVzdCB7XG4gIC8vXG4gIC8vIHZhbGlkYXRlIHRoYXQgb25FdmVudFJlc3VsdCBhbHdheXMgaW5jbHVkZXMgYSBQaHlzaWNhbFJlc291cmNlSWRcblxuICBvbkV2ZW50UmVzdWx0ID0gb25FdmVudFJlc3VsdCB8fCB7IH07XG5cbiAgLy8gaWYgcGh5c2ljYWwgSUQgaXMgbm90IHJldHVybmVkLCB3ZSBoYXZlIHNvbWUgZGVmYXVsdHMgZm9yIHlvdSBiYXNlZFxuICAvLyBvbiB0aGUgcmVxdWVzdCB0eXBlLlxuICBjb25zdCBwaHlzaWNhbFJlc291cmNlSWQgPSBvbkV2ZW50UmVzdWx0LlBoeXNpY2FsUmVzb3VyY2VJZCB8fCBkZWZhdWx0UGh5c2ljYWxSZXNvdXJjZUlkKGNmblJlcXVlc3QpO1xuXG4gIC8vIGlmIHdlIGFyZSBpbiBERUxFVEUgYW5kIHBoeXNpY2FsIElEIHdhcyBjaGFuZ2VkLCBpdCdzIGFuIGVycm9yLlxuICBpZiAoY2ZuUmVxdWVzdC5SZXF1ZXN0VHlwZSA9PT0gJ0RlbGV0ZScgJiYgcGh5c2ljYWxSZXNvdXJjZUlkICE9PSBjZm5SZXF1ZXN0LlBoeXNpY2FsUmVzb3VyY2VJZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgREVMRVRFOiBjYW5ub3QgY2hhbmdlIHRoZSBwaHlzaWNhbCByZXNvdXJjZSBJRCBmcm9tIFwiJHtjZm5SZXF1ZXN0LlBoeXNpY2FsUmVzb3VyY2VJZH1cIiB0byBcIiR7b25FdmVudFJlc3VsdC5QaHlzaWNhbFJlc291cmNlSWR9XCIgZHVyaW5nIGRlbGV0aW9uYCk7XG4gIH1cblxuICAvLyBpZiB3ZSBhcmUgaW4gVVBEQVRFIGFuZCBwaHlzaWNhbCBJRCB3YXMgY2hhbmdlZCwgaXQncyBhIHJlcGxhY2VtZW50IChqdXN0IGxvZylcbiAgaWYgKGNmblJlcXVlc3QuUmVxdWVzdFR5cGUgPT09ICdVcGRhdGUnICYmIHBoeXNpY2FsUmVzb3VyY2VJZCAhPT0gY2ZuUmVxdWVzdC5QaHlzaWNhbFJlc291cmNlSWQpIHtcbiAgICBsb2coYFVQREFURTogY2hhbmdpbmcgcGh5c2ljYWwgcmVzb3VyY2UgSUQgZnJvbSBcIiR7Y2ZuUmVxdWVzdC5QaHlzaWNhbFJlc291cmNlSWR9XCIgdG8gXCIke29uRXZlbnRSZXN1bHQuUGh5c2ljYWxSZXNvdXJjZUlkfVwiYCk7XG4gIH1cblxuICAvLyBtZXJnZSByZXF1ZXN0IGV2ZW50IGFuZCByZXN1bHQgZXZlbnQgKHJlc3VsdCBwcmV2YWlscykuXG4gIHJldHVybiB7XG4gICAgLi4uY2ZuUmVxdWVzdCxcbiAgICAuLi5vbkV2ZW50UmVzdWx0LFxuICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogcGh5c2ljYWxSZXNvdXJjZUlkLFxuICB9O1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZXMgdGhlIGRlZmF1bHQgcGh5c2ljYWwgcmVzb3VyY2UgSUQgYmFzZWQgaW4gY2FzZSB1c2VyIGhhbmRsZXIgZGlkXG4gKiBub3QgcmV0dXJuIGEgUGh5c2ljYWxSZXNvdXJjZUlkLlxuICpcbiAqIEZvciBcIkNSRUFURVwiLCBpdCB1c2VzIHRoZSBSZXF1ZXN0SWQuXG4gKiBGb3IgXCJVUERBVEVcIiBhbmQgXCJERUxFVEVcIiBhbmQgcmV0dXJucyB0aGUgY3VycmVudCBQaHlzaWNhbFJlc291cmNlSWQgKHRoZSBvbmUgcHJvdmlkZWQgaW4gYGV2ZW50YCkuXG4gKi9cbmZ1bmN0aW9uIGRlZmF1bHRQaHlzaWNhbFJlc291cmNlSWQocmVxOiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50KTogc3RyaW5nIHtcbiAgc3dpdGNoIChyZXEuUmVxdWVzdFR5cGUpIHtcbiAgICBjYXNlICdDcmVhdGUnOlxuICAgICAgcmV0dXJuIHJlcS5SZXF1ZXN0SWQ7XG5cbiAgICBjYXNlICdVcGRhdGUnOlxuICAgIGNhc2UgJ0RlbGV0ZSc6XG4gICAgICByZXR1cm4gcmVxLlBoeXNpY2FsUmVzb3VyY2VJZDtcblxuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgXCJSZXF1ZXN0VHlwZVwiIGluIHJlcXVlc3QgXCIke0pTT04uc3RyaW5naWZ5KHJlcSl9XCJgKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/outbound.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/outbound.js new file mode 100644 index 0000000000000..c838f7d627f66 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/outbound.js @@ -0,0 +1,83 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.httpRequest = exports.invokeFunction = exports.startExecution = void 0; +/* istanbul ignore file */ +const https = require("https"); +// eslint-disable-next-line import/no-extraneous-dependencies +const client_lambda_1 = require("@aws-sdk/client-lambda"); +// eslint-disable-next-line import/no-extraneous-dependencies +const client_sfn_1 = require("@aws-sdk/client-sfn"); +// eslint-disable-next-line import/no-extraneous-dependencies +const FRAMEWORK_HANDLER_TIMEOUT = 900000; // 15 minutes +// In order to honor the overall maximum timeout set for the target process, +// the default 2 minutes from AWS SDK has to be overriden: +// https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Config.html#httpOptions-property +const awsSdkConfig = { + httpOptions: { timeout: FRAMEWORK_HANDLER_TIMEOUT }, +}; +async function defaultHttpRequest(options, requestBody) { + return new Promise((resolve, reject) => { + try { + const request = https.request(options, (response) => { + response.resume(); // Consume the response but don't care about it + if (!response.statusCode || response.statusCode >= 400) { + reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)); + } + else { + resolve(); + } + }); + request.on('error', reject); + request.write(requestBody); + request.end(); + } + catch (e) { + reject(e); + } + }); +} +let sfn; +let lambda; +async function defaultStartExecution(req) { + if (!sfn) { + sfn = new client_sfn_1.SFN(awsSdkConfig); + } + return sfn.startExecution(req); +} +async function defaultInvokeFunction(req) { + if (!lambda) { + lambda = new client_lambda_1.Lambda(awsSdkConfig); + } + try { + /** + * Try an initial invoke. + * + * When you try to invoke a function that is inactive, the invocation fails and Lambda sets + * the function to pending state until the function resources are recreated. + * If Lambda fails to recreate the resources, the function is set to the inactive state. + * + * We're using invoke first because `waitFor` doesn't trigger an inactive function to do anything, + * it just runs `getFunction` and checks the state. + */ + return await lambda.invoke(req); + } + catch { + /** + * The status of the Lambda function is checked every second for up to 300 seconds. + * Exits the loop on 'Active' state and throws an error on 'Inactive' or 'Failed'. + * + * And now we wait. + */ + await (0, client_lambda_1.waitUntilFunctionActiveV2)({ + client: lambda, + maxWaitTime: 300, + }, { + FunctionName: req.FunctionName, + }); + return await lambda.invoke(req); + } +} +exports.startExecution = defaultStartExecution; +exports.invokeFunction = defaultInvokeFunction; +exports.httpRequest = defaultHttpRequest; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0Ym91bmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJvdXRib3VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQkFBMEI7QUFDMUIsK0JBQStCO0FBQy9CLDZEQUE2RDtBQUM3RCwwREFBbUg7QUFDbkgsNkRBQTZEO0FBQzdELG9EQUFxRjtBQUNyRiw2REFBNkQ7QUFFN0QsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLENBQUMsQ0FBQyxhQUFhO0FBRXZELDRFQUE0RTtBQUM1RSwwREFBMEQ7QUFDMUQsMkZBQTJGO0FBQzNGLE1BQU0sWUFBWSxHQUFHO0lBQ25CLFdBQVcsRUFBRSxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRTtDQUNwRCxDQUFDO0FBRUYsS0FBSyxVQUFVLGtCQUFrQixDQUFDLE9BQTZCLEVBQUUsV0FBbUI7SUFDbEYsT0FBTyxJQUFJLE9BQU8sQ0FBTyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUMzQyxJQUFJLENBQUM7WUFDSCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNsRCxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQywrQ0FBK0M7Z0JBQ2xFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxVQUFVLElBQUksR0FBRyxFQUFFLENBQUM7b0JBQ3ZELE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQywrQkFBK0IsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDMUUsQ0FBQztxQkFBTSxDQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDO2dCQUNaLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDM0IsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1osQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELElBQUksR0FBUSxDQUFDO0FBQ2IsSUFBSSxNQUFjLENBQUM7QUFFbkIsS0FBSyxVQUFVLHFCQUFxQixDQUFDLEdBQXdCO0lBQzNELElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNULEdBQUcsR0FBRyxJQUFJLGdCQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNqQyxDQUFDO0FBRUQsS0FBSyxVQUFVLHFCQUFxQixDQUFDLEdBQXVCO0lBQzFELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNaLE1BQU0sR0FBRyxJQUFJLHNCQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksQ0FBQztRQUNIOzs7Ozs7Ozs7V0FTRztRQUNILE9BQU8sTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUDs7Ozs7V0FLRztRQUNILE1BQU0sSUFBQSx5Q0FBeUIsRUFBQztZQUM5QixNQUFNLEVBQUUsTUFBTTtZQUNkLFdBQVcsRUFBRSxHQUFHO1NBQ2pCLEVBQUU7WUFDRCxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztBQUNILENBQUM7QUFFVSxRQUFBLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztBQUN2QyxRQUFBLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztBQUN2QyxRQUFBLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG5pbXBvcnQgKiBhcyBodHRwcyBmcm9tICdodHRwcyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXG5pbXBvcnQgeyBMYW1iZGEsIHdhaXRVbnRpbEZ1bmN0aW9uQWN0aXZlVjIsIEludm9jYXRpb25SZXNwb25zZSwgSW52b2tlQ29tbWFuZElucHV0IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWxhbWJkYSc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXG5pbXBvcnQgeyBTRk4sIFN0YXJ0RXhlY3V0aW9uSW5wdXQsIFN0YXJ0RXhlY3V0aW9uT3V0cHV0IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNmbic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXG5cbmNvbnN0IEZSQU1FV09SS19IQU5ETEVSX1RJTUVPVVQgPSA5MDAwMDA7IC8vIDE1IG1pbnV0ZXNcblxuLy8gSW4gb3JkZXIgdG8gaG9ub3IgdGhlIG92ZXJhbGwgbWF4aW11bSB0aW1lb3V0IHNldCBmb3IgdGhlIHRhcmdldCBwcm9jZXNzLFxuLy8gdGhlIGRlZmF1bHQgMiBtaW51dGVzIGZyb20gQVdTIFNESyBoYXMgdG8gYmUgb3ZlcnJpZGVuOlxuLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L0FXUy9Db25maWcuaHRtbCNodHRwT3B0aW9ucy1wcm9wZXJ0eVxuY29uc3QgYXdzU2RrQ29uZmlnID0ge1xuICBodHRwT3B0aW9uczogeyB0aW1lb3V0OiBGUkFNRVdPUktfSEFORExFUl9USU1FT1VUIH0sXG59O1xuXG5hc3luYyBmdW5jdGlvbiBkZWZhdWx0SHR0cFJlcXVlc3Qob3B0aW9uczogaHR0cHMuUmVxdWVzdE9wdGlvbnMsIHJlcXVlc3RCb2R5OiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IGh0dHBzLnJlcXVlc3Qob3B0aW9ucywgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJlc3BvbnNlLnJlc3VtZSgpOyAvLyBDb25zdW1lIHRoZSByZXNwb25zZSBidXQgZG9uJ3QgY2FyZSBhYm91dCBpdFxuICAgICAgICBpZiAoIXJlc3BvbnNlLnN0YXR1c0NvZGUgfHwgcmVzcG9uc2Uuc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBVbnN1Y2Nlc3NmdWwgSFRUUCByZXNwb25zZTogJHtyZXNwb25zZS5zdGF0dXNDb2RlfWApKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmVxdWVzdC5vbignZXJyb3InLCByZWplY3QpO1xuICAgICAgcmVxdWVzdC53cml0ZShyZXF1ZXN0Qm9keSk7XG4gICAgICByZXF1ZXN0LmVuZCgpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJlamVjdChlKTtcbiAgICB9XG4gIH0pO1xufVxuXG5sZXQgc2ZuOiBTRk47XG5sZXQgbGFtYmRhOiBMYW1iZGE7XG5cbmFzeW5jIGZ1bmN0aW9uIGRlZmF1bHRTdGFydEV4ZWN1dGlvbihyZXE6IFN0YXJ0RXhlY3V0aW9uSW5wdXQpOiBQcm9taXNlPFN0YXJ0RXhlY3V0aW9uT3V0cHV0PiB7XG4gIGlmICghc2ZuKSB7XG4gICAgc2ZuID0gbmV3IFNGTihhd3NTZGtDb25maWcpO1xuICB9XG5cbiAgcmV0dXJuIHNmbi5zdGFydEV4ZWN1dGlvbihyZXEpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBkZWZhdWx0SW52b2tlRnVuY3Rpb24ocmVxOiBJbnZva2VDb21tYW5kSW5wdXQpOiBQcm9taXNlPEludm9jYXRpb25SZXNwb25zZT4ge1xuICBpZiAoIWxhbWJkYSkge1xuICAgIGxhbWJkYSA9IG5ldyBMYW1iZGEoYXdzU2RrQ29uZmlnKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgLyoqXG4gICAgICogVHJ5IGFuIGluaXRpYWwgaW52b2tlLlxuICAgICAqXG4gICAgICogV2hlbiB5b3UgdHJ5IHRvIGludm9rZSBhIGZ1bmN0aW9uIHRoYXQgaXMgaW5hY3RpdmUsIHRoZSBpbnZvY2F0aW9uIGZhaWxzIGFuZCBMYW1iZGEgc2V0c1xuICAgICAqIHRoZSBmdW5jdGlvbiB0byBwZW5kaW5nIHN0YXRlIHVudGlsIHRoZSBmdW5jdGlvbiByZXNvdXJjZXMgYXJlIHJlY3JlYXRlZC5cbiAgICAgKiBJZiBMYW1iZGEgZmFpbHMgdG8gcmVjcmVhdGUgdGhlIHJlc291cmNlcywgdGhlIGZ1bmN0aW9uIGlzIHNldCB0byB0aGUgaW5hY3RpdmUgc3RhdGUuXG4gICAgICpcbiAgICAgKiBXZSdyZSB1c2luZyBpbnZva2UgZmlyc3QgYmVjYXVzZSBgd2FpdEZvcmAgZG9lc24ndCB0cmlnZ2VyIGFuIGluYWN0aXZlIGZ1bmN0aW9uIHRvIGRvIGFueXRoaW5nLFxuICAgICAqIGl0IGp1c3QgcnVucyBgZ2V0RnVuY3Rpb25gIGFuZCBjaGVja3MgdGhlIHN0YXRlLlxuICAgICAqL1xuICAgIHJldHVybiBhd2FpdCBsYW1iZGEuaW52b2tlKHJlcSk7XG4gIH0gY2F0Y2gge1xuICAgIC8qKlxuICAgICAqIFRoZSBzdGF0dXMgb2YgdGhlIExhbWJkYSBmdW5jdGlvbiBpcyBjaGVja2VkIGV2ZXJ5IHNlY29uZCBmb3IgdXAgdG8gMzAwIHNlY29uZHMuXG4gICAgICogRXhpdHMgdGhlIGxvb3Agb24gJ0FjdGl2ZScgc3RhdGUgYW5kIHRocm93cyBhbiBlcnJvciBvbiAnSW5hY3RpdmUnIG9yICdGYWlsZWQnLlxuICAgICAqXG4gICAgICogQW5kIG5vdyB3ZSB3YWl0LlxuICAgICAqL1xuICAgIGF3YWl0IHdhaXRVbnRpbEZ1bmN0aW9uQWN0aXZlVjIoe1xuICAgICAgY2xpZW50OiBsYW1iZGEsXG4gICAgICBtYXhXYWl0VGltZTogMzAwLFxuICAgIH0sIHtcbiAgICAgIEZ1bmN0aW9uTmFtZTogcmVxLkZ1bmN0aW9uTmFtZSxcbiAgICB9KTtcbiAgICByZXR1cm4gYXdhaXQgbGFtYmRhLmludm9rZShyZXEpO1xuICB9XG59XG5cbmV4cG9ydCBsZXQgc3RhcnRFeGVjdXRpb24gPSBkZWZhdWx0U3RhcnRFeGVjdXRpb247XG5leHBvcnQgbGV0IGludm9rZUZ1bmN0aW9uID0gZGVmYXVsdEludm9rZUZ1bmN0aW9uO1xuZXhwb3J0IGxldCBodHRwUmVxdWVzdCA9IGRlZmF1bHRIdHRwUmVxdWVzdDtcbiJdfQ== \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/util.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/util.js new file mode 100644 index 0000000000000..55b2075a3efc6 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5/util.js @@ -0,0 +1,54 @@ +"use strict"; +/* eslint-disable no-console */ +Object.defineProperty(exports, "__esModule", { value: true }); +exports.parseJsonPayload = exports.withRetries = exports.log = exports.getEnv = void 0; +function getEnv(name) { + const value = process.env[name]; + if (!value) { + throw new Error(`The environment variable "${name}" is not defined`); + } + return value; +} +exports.getEnv = getEnv; +function log(title, ...args) { + console.log('[provider-framework]', title, ...args.map(x => typeof (x) === 'object' ? JSON.stringify(x, undefined, 2) : x)); +} +exports.log = log; +function withRetries(options, fn) { + return async (...xs) => { + let attempts = options.attempts; + let ms = options.sleep; + while (true) { + try { + return await fn(...xs); + } + catch (e) { + if (attempts-- <= 0) { + throw e; + } + await sleep(Math.floor(Math.random() * ms)); + ms *= 2; + } + } + }; +} +exports.withRetries = withRetries; +async function sleep(ms) { + return new Promise((ok) => setTimeout(ok, ms)); +} +function parseJsonPayload(payload) { + // sdk v3 returns payloads in Uint8Array, either it or a string or Buffer + // can be cast into a buffer and then decoded. + const text = new TextDecoder().decode(Buffer.from(payload ?? '')); + if (!text) { + return {}; + } + try { + return JSON.parse(text); + } + catch { + throw new Error(`return values from user-handlers must be JSON objects. got: "${text}"`); + } +} +exports.parseJsonPayload = parseJsonPayload; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLCtCQUErQjs7O0FBRS9CLFNBQWdCLE1BQU0sQ0FBQyxJQUFZO0lBQ2pDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsSUFBSSxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFORCx3QkFNQztBQUVELFNBQWdCLEdBQUcsQ0FBQyxLQUFVLEVBQUUsR0FBRyxJQUFXO0lBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3SCxDQUFDO0FBRkQsa0JBRUM7QUFTRCxTQUFnQixXQUFXLENBQTBCLE9BQXFCLEVBQUUsRUFBNEI7SUFDdEcsT0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFLLEVBQUUsRUFBRTtRQUN4QixJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ2hDLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQztnQkFDSCxPQUFPLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDekIsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDcEIsTUFBTSxDQUFDLENBQUM7Z0JBQ1YsQ0FBQztnQkFDRCxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM1QyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1YsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDO0FBaEJELGtDQWdCQztBQUVELEtBQUssVUFBVSxLQUFLLENBQUMsRUFBVTtJQUM3QixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDakQsQ0FBQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLE9BQXdEO0lBQ3ZGLHlFQUF5RTtJQUN6RSw4Q0FBOEM7SUFDOUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNsRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFBQyxPQUFPLEVBQUcsQ0FBQztJQUFDLENBQUM7SUFDMUIsSUFBSSxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQzNGLENBQUM7QUFDSCxDQUFDO0FBVkQsNENBVUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbnYobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgdmFsdWUgPSBwcm9jZXNzLmVudltuYW1lXTtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIFwiJHtuYW1lfVwiIGlzIG5vdCBkZWZpbmVkYCk7XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9nKHRpdGxlOiBhbnksIC4uLmFyZ3M6IGFueVtdKSB7XG4gIGNvbnNvbGUubG9nKCdbcHJvdmlkZXItZnJhbWV3b3JrXScsIHRpdGxlLCAuLi5hcmdzLm1hcCh4ID0+IHR5cGVvZih4KSA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeSh4LCB1bmRlZmluZWQsIDIpIDogeCkpO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJldHJ5T3B0aW9ucyB7XG4gIC8qKiBIb3cgbWFueSByZXRyaWVzICh3aWxsIGF0IGxlYXN0IHRyeSBvbmNlKSAqL1xuICByZWFkb25seSBhdHRlbXB0czogbnVtYmVyO1xuICAvKiogU2xlZXAgYmFzZSwgaW4gbXMgKi9cbiAgcmVhZG9ubHkgc2xlZXA6IG51bWJlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhSZXRyaWVzPEEgZXh0ZW5kcyBBcnJheTxhbnk+LCBCPihvcHRpb25zOiBSZXRyeU9wdGlvbnMsIGZuOiAoLi4ueHM6IEEpID0+IFByb21pc2U8Qj4pOiAoLi4ueHM6IEEpID0+IFByb21pc2U8Qj4ge1xuICByZXR1cm4gYXN5bmMgKC4uLnhzOiBBKSA9PiB7XG4gICAgbGV0IGF0dGVtcHRzID0gb3B0aW9ucy5hdHRlbXB0cztcbiAgICBsZXQgbXMgPSBvcHRpb25zLnNsZWVwO1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZm4oLi4ueHMpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBpZiAoYXR0ZW1wdHMtLSA8PSAwKSB7XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCBzbGVlcChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBtcykpO1xuICAgICAgICBtcyAqPSAyO1xuICAgICAgfVxuICAgIH1cbiAgfTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gc2xlZXAobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKG9rKSA9PiBzZXRUaW1lb3V0KG9rLCBtcykpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VKc29uUGF5bG9hZChwYXlsb2FkOiBzdHJpbmcgfCBCdWZmZXIgfCBVaW50OEFycmF5IHwgdW5kZWZpbmVkIHwgbnVsbCk6IGFueSB7XG4gIC8vIHNkayB2MyByZXR1cm5zIHBheWxvYWRzIGluIFVpbnQ4QXJyYXksIGVpdGhlciBpdCBvciBhIHN0cmluZyBvciBCdWZmZXJcbiAgLy8gY2FuIGJlIGNhc3QgaW50byBhIGJ1ZmZlciBhbmQgdGhlbiBkZWNvZGVkLlxuICBjb25zdCB0ZXh0ID0gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKEJ1ZmZlci5mcm9tKHBheWxvYWQgPz8gJycpKTtcbiAgaWYgKCF0ZXh0KSB7IHJldHVybiB7IH07IH1cbiAgdHJ5IHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZSh0ZXh0KTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGByZXR1cm4gdmFsdWVzIGZyb20gdXNlci1oYW5kbGVycyBtdXN0IGJlIEpTT04gb2JqZWN0cy4gZ290OiBcIiR7dGV4dH1cImApO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip new file mode 100644 index 0000000000000..cd4b2e42a026a Binary files /dev/null and b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip differ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip new file mode 100644 index 0000000000000..f624b92c63849 Binary files /dev/null and b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip differ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/apply/__init__.py b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/apply/__init__.py new file mode 100644 index 0000000000000..60984a21a41e0 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/apply/__init__.py @@ -0,0 +1,95 @@ +import json +import logging +import os +import subprocess + +logger = logging.getLogger() +logger.setLevel(logging.INFO) + +# these are coming from the kubectl layer +os.environ['PATH'] = '/opt/kubectl:/opt/awscli:' + os.environ['PATH'] + +outdir = os.environ.get('TEST_OUTDIR', '/tmp') +kubeconfig = os.path.join(outdir, 'kubeconfig') + + +def apply_handler(event, context): + logger.info(json.dumps(dict(event, ResponseURL='...'))) + + request_type = event['RequestType'] + props = event['ResourceProperties'] + + # resource properties (all required) + cluster_name = props['ClusterName'] + manifest_text = props['Manifest'] + role_arn = props['RoleArn'] + prune_label = props.get('PruneLabel', None) + overwrite = props.get('Overwrite', 'false').lower() == 'true' + skip_validation = props.get('SkipValidation', 'false').lower() == 'true' + + # "log in" to the cluster + cmd = [ 'aws', 'eks', 'update-kubeconfig', + '--role-arn', role_arn, + '--name', cluster_name, + '--kubeconfig', kubeconfig + ] + logger.info(f'Running command: {cmd}') + subprocess.check_call(cmd) + + if os.path.isfile(kubeconfig): + os.chmod(kubeconfig, 0o600) + + # write resource manifests in sequence: { r1 }{ r2 }{ r3 } (this is how + # a stream of JSON objects can be included in a k8s manifest). + manifest_list = json.loads(manifest_text) + manifest_file = os.path.join(outdir, 'manifest.yaml') + with open(manifest_file, "w") as f: + f.writelines(map(lambda obj: json.dumps(obj), manifest_list)) + + logger.info("manifest written to: %s" % manifest_file) + + kubectl_opts = [] + if skip_validation: + kubectl_opts.extend(['--validate=false']) + + if request_type == 'Create': + # if "overwrite" is enabled, then we use "apply" for CREATE operations + # which technically means we can determine the desired state of an + # existing resource. + if overwrite: + kubectl('apply', manifest_file, *kubectl_opts) + else: + # --save-config will allow us to use "apply" later + kubectl_opts.extend(['--save-config']) + kubectl('create', manifest_file, *kubectl_opts) + elif request_type == 'Update': + if prune_label is not None: + kubectl_opts.extend(['--prune', '-l', prune_label]) + + kubectl('apply', manifest_file, *kubectl_opts) + elif request_type == "Delete": + try: + kubectl('delete', manifest_file) + except Exception as e: + logger.info("delete error: %s" % e) + + +def kubectl(verb, file, *opts): + maxAttempts = 3 + retry = maxAttempts + while retry > 0: + try: + cmd = ['kubectl', verb, '--kubeconfig', kubeconfig, '-f', file] + list(opts) + logger.info(f'Running command: {cmd}') + output = subprocess.check_output(cmd, stderr=subprocess.STDOUT) + except subprocess.CalledProcessError as exc: + output = exc.output + if b'i/o timeout' in output and retry > 0: + retry = retry - 1 + logger.info("kubectl timed out, retries left: %s" % retry) + else: + raise Exception(output) + else: + logger.info(output) + return + raise Exception(f'Operation failed after {maxAttempts} attempts: {output}') diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/get/__init__.py b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/get/__init__.py new file mode 100644 index 0000000000000..fbc7016d1a406 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/get/__init__.py @@ -0,0 +1,88 @@ +import json +import logging +import os +import subprocess +import time + +logger = logging.getLogger() +logger.setLevel(logging.INFO) + +# these are coming from the kubectl layer +os.environ['PATH'] = '/opt/kubectl:/opt/awscli:' + os.environ['PATH'] + +outdir = os.environ.get('TEST_OUTDIR', '/tmp') +kubeconfig = os.path.join(outdir, 'kubeconfig') + + +def get_handler(event, context): + logger.info(json.dumps(dict(event, ResponseURL='...'))) + + request_type = event['RequestType'] + props = event['ResourceProperties'] + + # resource properties (all required) + cluster_name = props['ClusterName'] + role_arn = props['RoleArn'] + + # "log in" to the cluster + subprocess.check_call([ 'aws', 'eks', 'update-kubeconfig', + '--role-arn', role_arn, + '--name', cluster_name, + '--kubeconfig', kubeconfig + ]) + + if os.path.isfile(kubeconfig): + os.chmod(kubeconfig, 0o600) + + object_type = props['ObjectType'] + object_name = props['ObjectName'] + object_namespace = props['ObjectNamespace'] + json_path = props['JsonPath'] + timeout_seconds = props['TimeoutSeconds'] + + # json path should be surrouded with '{}' + path = '{{{0}}}'.format(json_path) + if request_type == 'Create' or request_type == 'Update': + output = wait_for_output(['get', '-n', object_namespace, object_type, object_name, "-o=jsonpath='{{{0}}}'".format(json_path)], int(timeout_seconds)) + return {'Data': {'Value': output}} + elif request_type == 'Delete': + pass + else: + raise Exception("invalid request type %s" % request_type) + +def wait_for_output(args, timeout_seconds): + + end_time = time.time() + timeout_seconds + error = None + + while time.time() < end_time: + try: + # the output is surrounded with '', so we unquote + output = kubectl(args).decode('utf-8')[1:-1] + if output: + return output + except Exception as e: + error = str(e) + # also a recoverable error + if 'NotFound' in error: + pass + time.sleep(10) + + raise RuntimeError(f'Timeout waiting for output from kubectl command: {args} (last_error={error})') + +def kubectl(args): + retry = 3 + while retry > 0: + try: + cmd = [ 'kubectl', '--kubeconfig', kubeconfig ] + args + output = subprocess.check_output(cmd, stderr=subprocess.PIPE) + except subprocess.CalledProcessError as exc: + output = exc.output + exc.stderr + if b'i/o timeout' in output and retry > 0: + logger.info("kubectl timed out, retries left: %s" % retry) + retry = retry - 1 + else: + raise Exception(output) + else: + logger.info(output) + return output diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/helm/__init__.py b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/helm/__init__.py new file mode 100644 index 0000000000000..ddf0753a8aa6b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/helm/__init__.py @@ -0,0 +1,203 @@ +import json +import logging +import os +import re +import subprocess +import shutil +import tempfile +import zipfile +import boto3 + +logger = logging.getLogger() +logger.setLevel(logging.INFO) + +# these are coming from the kubectl layer +os.environ['PATH'] = '/opt/helm:/opt/awscli:' + os.environ['PATH'] + +outdir = os.environ.get('TEST_OUTDIR', '/tmp') +kubeconfig = os.path.join(outdir, 'kubeconfig') + +def get_chart_asset_from_url(chart_asset_url): + chart_zip = os.path.join(outdir, 'chart.zip') + shutil.rmtree(chart_zip, ignore_errors=True) + subprocess.check_call(['aws', 's3', 'cp', chart_asset_url, chart_zip]) + chart_dir = os.path.join(outdir, 'chart') + shutil.rmtree(chart_dir, ignore_errors=True) + os.mkdir(chart_dir) + with zipfile.ZipFile(chart_zip, 'r') as zip_ref: + zip_ref.extractall(chart_dir) + return chart_dir + +def is_ecr_public_available(region): + s = boto3.Session() + return s.get_partition_for_region(region) == 'aws' + +def helm_handler(event, context): + logger.info(json.dumps(dict(event, ResponseURL='...'))) + + request_type = event['RequestType'] + props = event['ResourceProperties'] + + # resource properties + cluster_name = props['ClusterName'] + role_arn = props['RoleArn'] + release = props['Release'] + chart = props.get('Chart', None) + chart_asset_url = props.get('ChartAssetURL', None) + version = props.get('Version', None) + wait = props.get('Wait', False) + atomic = props.get('Atomic', False) + timeout = props.get('Timeout', None) + namespace = props.get('Namespace', None) + create_namespace = props.get('CreateNamespace', None) + repository = props.get('Repository', None) + values_text = props.get('Values', None) + skip_crds = props.get('SkipCrds', False) + + # "log in" to the cluster + subprocess.check_call([ 'aws', 'eks', 'update-kubeconfig', + '--role-arn', role_arn, + '--name', cluster_name, + '--kubeconfig', kubeconfig + ]) + + if os.path.isfile(kubeconfig): + os.chmod(kubeconfig, 0o600) + + # Write out the values to a file and include them with the install and upgrade + values_file = None + if not request_type == "Delete" and not values_text is None: + values = json.loads(values_text) + values_file = os.path.join(outdir, 'values.yaml') + with open(values_file, "w") as f: + f.write(json.dumps(values, indent=2)) + + if request_type == 'Create' or request_type == 'Update': + # Ensure chart or chart_asset_url are set + if chart == None and chart_asset_url == None: + raise RuntimeError(f'chart or chartAsset must be specified') + + if chart_asset_url != None: + assert(chart==None) + assert(repository==None) + assert(version==None) + if not chart_asset_url.startswith('s3://'): + raise RuntimeError(f'ChartAssetURL must point to as s3 location but is {chart_asset_url}') + # future work: support versions from s3 assets + chart = get_chart_asset_from_url(chart_asset_url) + + if repository is not None and repository.startswith('oci://'): + tmpdir = tempfile.TemporaryDirectory() + chart_dir = get_chart_from_oci(tmpdir.name, repository, version) + chart = chart_dir + + helm('upgrade', release, chart, repository, values_file, namespace, version, wait, timeout, create_namespace, atomic=atomic) + elif request_type == "Delete": + try: + helm('uninstall', release, namespace=namespace, wait=wait, timeout=timeout) + except Exception as e: + logger.info("delete error: %s" % e) + + +def get_oci_cmd(repository, version): + # Generates OCI command based on pattern. Public ECR vs Private ECR are treated differently. + private_ecr_pattern = 'oci://(?P\d+\.dkr\.ecr\.(?P[a-z0-9\-]+)\.amazonaws\.com(\.cn)?)*' + public_ecr_pattern = 'oci://(?Ppublic\.ecr\.aws)*' + + private_registry = re.match(private_ecr_pattern, repository).groupdict() + public_registry = re.match(public_ecr_pattern, repository).groupdict() + + if private_registry['registry'] is not None: + logger.info("Found AWS private repository") + cmnd = [ + f"aws ecr get-login-password --region {private_registry['region']} | " \ + f"helm registry login --username AWS --password-stdin {private_registry['registry']}; helm pull {repository} --version {version} --untar" + ] + elif public_registry['registry'] is not None: + logger.info("Found AWS public repository, will use default region as deployment") + region = os.environ.get('AWS_REGION', 'us-east-1') + + if is_ecr_public_available(region): + cmnd = [ + f"aws ecr-public get-login-password --region us-east-1 | " \ + f"helm registry login --username AWS --password-stdin {public_registry['registry']}; helm pull {repository} --version {version} --untar" + ] + else: + # `aws ecr-public get-login-password` and `helm registry login` not required as ecr public is not available in current region + # see https://helm.sh/docs/helm/helm_registry_login/ + cmnd = [f"helm pull {repository} --version {version} --untar"] + else: + logger.error("OCI repository format not recognized, falling back to helm pull") + cmnd = [f"helm pull {repository} --version {version} --untar"] + + return cmnd + + +def get_chart_from_oci(tmpdir, repository = None, version = None): + + cmnd = get_oci_cmd(repository, version) + + maxAttempts = 3 + retry = maxAttempts + while retry > 0: + try: + logger.info(cmnd) + output = subprocess.check_output(cmnd, stderr=subprocess.STDOUT, cwd=tmpdir, shell=True) + logger.info(output) + + # effectively returns "$tmpDir/$lastPartOfOCIUrl", because this is how helm pull saves OCI artifact. + # Eg. if we have oci://9999999999.dkr.ecr.us-east-1.amazonaws.com/foo/bar/pet-service repository, helm saves artifact under $tmpDir/pet-service + return os.path.join(tmpdir, repository.rpartition('/')[-1]) + except subprocess.CalledProcessError as exc: + output = exc.output + if b'Broken pipe' in output: + retry = retry - 1 + logger.info("Broken pipe, retries left: %s" % retry) + else: + raise Exception(output) + raise Exception(f'Operation failed after {maxAttempts} attempts: {output}') + + +def helm(verb, release, chart = None, repo = None, file = None, namespace = None, version = None, wait = False, timeout = None, create_namespace = None, skip_crds = False, atomic = False): + import subprocess + + cmnd = ['helm', verb, release] + if not chart is None: + cmnd.append(chart) + if verb == 'upgrade': + cmnd.append('--install') + if create_namespace: + cmnd.append('--create-namespace') + if not repo is None: + cmnd.extend(['--repo', repo]) + if not file is None: + cmnd.extend(['--values', file]) + if not version is None: + cmnd.extend(['--version', version]) + if not namespace is None: + cmnd.extend(['--namespace', namespace]) + if wait: + cmnd.append('--wait') + if skip_crds: + cmnd.append('--skip-crds') + if not timeout is None: + cmnd.extend(['--timeout', timeout]) + if atomic: + cmnd.append('--atomic') + cmnd.extend(['--kubeconfig', kubeconfig]) + + maxAttempts = 3 + retry = maxAttempts + while retry > 0: + try: + output = subprocess.check_output(cmnd, stderr=subprocess.STDOUT, cwd=outdir) + logger.info(output) + return + except subprocess.CalledProcessError as exc: + output = exc.output + if b'Broken pipe' in output: + retry = retry - 1 + logger.info("Broken pipe, retries left: %s" % retry) + else: + raise Exception(output) + raise Exception(f'Operation failed after {maxAttempts} attempts: {output}') diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/index.py b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/index.py new file mode 100644 index 0000000000000..188ef37d8e1c1 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/index.py @@ -0,0 +1,26 @@ +import json +import logging + +from apply import apply_handler +from helm import helm_handler +from patch import patch_handler +from get import get_handler + +def handler(event, context): + print(json.dumps(dict(event, ResponseURL='...'))) + + resource_type = event['ResourceType'] + if resource_type == 'Custom::AWSCDK-EKS-KubernetesResource': + return apply_handler(event, context) + + if resource_type == 'Custom::AWSCDK-EKS-HelmChart': + return helm_handler(event, context) + + if resource_type == 'Custom::AWSCDK-EKS-KubernetesPatch': + return patch_handler(event, context) + + if resource_type == 'Custom::AWSCDK-EKS-KubernetesObjectValue': + return get_handler(event, context) + + raise Exception("unknown resource type %s" % resource_type) + \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/patch/__init__.py b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/patch/__init__.py new file mode 100644 index 0000000000000..d7a73c67ee88d --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098/patch/__init__.py @@ -0,0 +1,70 @@ +import json +import logging +import os +import subprocess + +logger = logging.getLogger() +logger.setLevel(logging.INFO) + +# these are coming from the kubectl layer +os.environ['PATH'] = '/opt/kubectl:/opt/awscli:' + os.environ['PATH'] + +outdir = os.environ.get('TEST_OUTDIR', '/tmp') +kubeconfig = os.path.join(outdir, 'kubeconfig') + + +def patch_handler(event, context): + logger.info(json.dumps(dict(event, ResponseURL='...'))) + + request_type = event['RequestType'] + props = event['ResourceProperties'] + + # resource properties (all required) + cluster_name = props['ClusterName'] + role_arn = props['RoleArn'] + + # "log in" to the cluster + subprocess.check_call([ 'aws', 'eks', 'update-kubeconfig', + '--role-arn', role_arn, + '--name', cluster_name, + '--kubeconfig', kubeconfig + ]) + + if os.path.isfile(kubeconfig): + os.chmod(kubeconfig, 0o600) + + resource_name = props['ResourceName'] + resource_namespace = props['ResourceNamespace'] + apply_patch_json = props['ApplyPatchJson'] + restore_patch_json = props['RestorePatchJson'] + patch_type = props['PatchType'] + + patch_json = None + if request_type == 'Create' or request_type == 'Update': + patch_json = apply_patch_json + elif request_type == 'Delete': + patch_json = restore_patch_json + else: + raise Exception("invalid request type %s" % request_type) + + kubectl([ 'patch', resource_name, '-n', resource_namespace, '-p', patch_json, '--type', patch_type ]) + + +def kubectl(args): + maxAttempts = 3 + retry = maxAttempts + while retry > 0: + try: + cmd = [ 'kubectl', '--kubeconfig', kubeconfig ] + args + output = subprocess.check_output(cmd, stderr=subprocess.STDOUT) + except subprocess.CalledProcessError as exc: + output = exc.output + if b'i/o timeout' in output and retry > 0: + retry = retry - 1 + logger.info("kubectl timed out, retries left: %s" % retry) + else: + raise Exception(output) + else: + logger.info(output) + return + raise Exception(f'Operation failed after {maxAttempts} attempts: {output}') \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299/index.js new file mode 100644 index 0000000000000..193f7f3a02458 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299/index.js @@ -0,0 +1,55 @@ +"use strict";var SD=Object.create;var jC=Object.defineProperty;var RD=Object.getOwnPropertyDescriptor;var kD=Object.getOwnPropertyNames;var MD=Object.getPrototypeOf,GD=Object.prototype.hasOwnProperty;var mD=(I,A)=>()=>(I&&(A=I(I=0)),A);var U=(I,A)=>()=>(A||I((A={exports:{}}).exports,A),A.exports),Cr=(I,A)=>{for(var e in A)jC(I,e,{get:A[e],enumerable:!0})},tr=(I,A,e,g)=>{if(A&&typeof A=="object"||typeof A=="function")for(let C of kD(A))!GD.call(I,C)&&C!==e&&jC(I,C,{get:()=>A[C],enumerable:!(g=RD(A,C))||g.enumerable});return I};var ND=(I,A,e)=>(e=I!=null?SD(MD(I)):{},tr(A||!I||!I.__esModule?jC(e,"default",{value:I,enumerable:!0}):e,I)),TA=I=>tr(jC({},"__esModule",{value:!0}),I);var rr=U((kR,Er)=>{"use strict";var aC=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,UD=typeof AbortController=="function",zC=UD?AbortController:class{constructor(){this.signal=new ir}abort(A=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||A,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},LD=typeof AbortSignal=="function",JD=typeof zC.AbortSignal=="function",ir=LD?AbortSignal:JD?zC.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(A){A.type==="abort"&&(this.aborted=!0,this.onabort(A),this._listeners.forEach(e=>e(A),this))}onabort(){}addEventListener(A,e){A==="abort"&&this._listeners.push(e)}removeEventListener(A,e){A==="abort"&&(this._listeners=this._listeners.filter(g=>g!==e))}},zi=new Set,Xi=(I,A)=>{let e=`LRU_CACHE_OPTION_${I}`;$C(e)&&$i(e,`${I} option`,`options.${A}`,lI)},_i=(I,A)=>{let e=`LRU_CACHE_METHOD_${I}`;if($C(e)){let{prototype:g}=lI,{get:C}=Object.getOwnPropertyDescriptor(g,I);$i(e,`${I} method`,`cache.${A}()`,C)}},KD=(I,A)=>{let e=`LRU_CACHE_PROPERTY_${I}`;if($C(e)){let{prototype:g}=lI,{get:C}=Object.getOwnPropertyDescriptor(g,I);$i(e,`${I} property`,`cache.${A}`,C)}},Br=(...I)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...I):console.error(...I)},$C=I=>!zi.has(I),$i=(I,A,e,g)=>{zi.add(I);let C=`The ${A} is deprecated. Please use ${e} instead.`;Br(C,"DeprecationWarning",I,g)},bg=I=>I&&I===Math.floor(I)&&I>0&&isFinite(I),Qr=I=>bg(I)?I<=Math.pow(2,8)?Uint8Array:I<=Math.pow(2,16)?Uint16Array:I<=Math.pow(2,32)?Uint32Array:I<=Number.MAX_SAFE_INTEGER?hI:null:null,hI=class extends Array{constructor(A){super(A),this.fill(0)}},ji=class{constructor(A){if(A===0)return[];let e=Qr(A);this.heap=new e(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}},lI=class I{constructor(A={}){let{max:e=0,ttl:g,ttlResolution:C=1,ttlAutopurge:t,updateAgeOnGet:Q,updateAgeOnHas:u,allowStale:c,dispose:h,disposeAfter:r,noDisposeOnSet:a,noUpdateTTL:s,maxSize:i=0,maxEntrySize:B=0,sizeCalculation:E,fetchMethod:n,fetchContext:D,noDeleteOnFetchRejection:f,noDeleteOnStaleGet:S,allowStaleOnFetchRejection:k,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A,{length:J,maxAge:O,stale:b}=A instanceof I?{}:A;if(e!==0&&!bg(e))throw new TypeError("max option must be a nonnegative integer");let AA=e?Qr(e):Array;if(!AA)throw new Error("invalid max value: "+e);if(this.max=e,this.maxSize=i,this.maxEntrySize=B||this.maxSize,this.sizeCalculation=E||J,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=n||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=D,!this.fetchMethod&&D!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(e).fill(null),this.valList=new Array(e).fill(null),this.next=new AA(e),this.prev=new AA(e),this.head=0,this.tail=0,this.free=new ji(e),this.initialFill=1,this.size=0,typeof h=="function"&&(this.dispose=h),typeof r=="function"?(this.disposeAfter=r,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!a,this.noUpdateTTL=!!s,this.noDeleteOnFetchRejection=!!f,this.allowStaleOnFetchRejection=!!k,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.maxSize!==0&&!bg(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!bg(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!c||!!b,this.noDeleteOnStaleGet=!!S,this.updateAgeOnGet=!!Q,this.updateAgeOnHas=!!u,this.ttlResolution=bg(C)||C===0?C:1,this.ttlAutopurge=!!t,this.ttl=g||O||0,this.ttl){if(!bg(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){let W="LRU_CACHE_UNBOUNDED";$C(W)&&(zi.add(W),Br("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",W,I))}b&&Xi("stale","allowStale"),O&&Xi("maxAge","ttl"),J&&Xi("length","sizeCalculation")}getRemainingTTL(A){return this.has(A,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new hI(this.max),this.starts=new hI(this.max),this.setItemTTL=(g,C,t=aC.now())=>{if(this.starts[g]=C!==0?t:0,this.ttls[g]=C,C!==0&&this.ttlAutopurge){let Q=setTimeout(()=>{this.isStale(g)&&this.delete(this.keyList[g])},C+1);Q.unref&&Q.unref()}},this.updateItemAge=g=>{this.starts[g]=this.ttls[g]!==0?aC.now():0},this.statusTTL=(g,C)=>{g&&(g.ttl=this.ttls[C],g.start=this.starts[C],g.now=A||e(),g.remainingTTL=g.now+g.ttl-g.start)};let A=0,e=()=>{let g=aC.now();if(this.ttlResolution>0){A=g;let C=setTimeout(()=>A=0,this.ttlResolution);C.unref&&C.unref()}return g};this.getRemainingTTL=g=>{let C=this.keyMap.get(g);return C===void 0?0:this.ttls[C]===0||this.starts[C]===0?1/0:this.starts[C]+this.ttls[C]-(A||e())},this.isStale=g=>this.ttls[g]!==0&&this.starts[g]!==0&&(A||e())-this.starts[g]>this.ttls[g]}updateItemAge(A){}statusTTL(A,e){}setItemTTL(A,e,g){}isStale(A){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new hI(this.max),this.removeItemSize=A=>{this.calculatedSize-=this.sizes[A],this.sizes[A]=0},this.requireSize=(A,e,g,C)=>{if(this.isBackgroundFetch(e))return 0;if(!bg(g))if(C){if(typeof C!="function")throw new TypeError("sizeCalculation must be a function");if(g=C(e,A),!bg(g))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return g},this.addItemSize=(A,e,g)=>{if(this.sizes[A]=e,this.maxSize){let C=this.maxSize-this.sizes[A];for(;this.calculatedSize>C;)this.evict(!0)}this.calculatedSize+=this.sizes[A],g&&(g.entrySize=e,g.totalCalculatedSize=this.calculatedSize)}}removeItemSize(A){}addItemSize(A,e){}requireSize(A,e,g,C){if(g||C)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:A=this.allowStale}={}){if(this.size)for(let e=this.tail;!(!this.isValidIndex(e)||((A||!this.isStale(e))&&(yield e),e===this.head));)e=this.prev[e]}*rindexes({allowStale:A=this.allowStale}={}){if(this.size)for(let e=this.head;!(!this.isValidIndex(e)||((A||!this.isStale(e))&&(yield e),e===this.tail));)e=this.next[e]}isValidIndex(A){return A!==void 0&&this.keyMap.get(this.keyList[A])===A}*entries(){for(let A of this.indexes())this.valList[A]!==void 0&&this.keyList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield[this.keyList[A],this.valList[A]])}*rentries(){for(let A of this.rindexes())this.valList[A]!==void 0&&this.keyList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield[this.keyList[A],this.valList[A]])}*keys(){for(let A of this.indexes())this.keyList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield this.keyList[A])}*rkeys(){for(let A of this.rindexes())this.keyList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield this.keyList[A])}*values(){for(let A of this.indexes())this.valList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield this.valList[A])}*rvalues(){for(let A of this.rindexes())this.valList[A]!==void 0&&!this.isBackgroundFetch(this.valList[A])&&(yield this.valList[A])}[Symbol.iterator](){return this.entries()}find(A,e){for(let g of this.indexes()){let C=this.valList[g],t=this.isBackgroundFetch(C)?C.__staleWhileFetching:C;if(t!==void 0&&A(t,this.keyList[g],this))return this.get(this.keyList[g],e)}}forEach(A,e=this){for(let g of this.indexes()){let C=this.valList[g],t=this.isBackgroundFetch(C)?C.__staleWhileFetching:C;t!==void 0&&A.call(e,t,this.keyList[g],this)}}rforEach(A,e=this){for(let g of this.rindexes()){let C=this.valList[g],t=this.isBackgroundFetch(C)?C.__staleWhileFetching:C;t!==void 0&&A.call(e,t,this.keyList[g],this)}}get prune(){return _i("prune","purgeStale"),this.purgeStale}purgeStale(){let A=!1;for(let e of this.rindexes({allowStale:!0}))this.isStale(e)&&(this.delete(this.keyList[e]),A=!0);return A}dump(){let A=[];for(let e of this.indexes({allowStale:!0})){let g=this.keyList[e],C=this.valList[e],t=this.isBackgroundFetch(C)?C.__staleWhileFetching:C;if(t===void 0)continue;let Q={value:t};if(this.ttls){Q.ttl=this.ttls[e];let u=aC.now()-this.starts[e];Q.start=Math.floor(Date.now()-u)}this.sizes&&(Q.size=this.sizes[e]),A.unshift([g,Q])}return A}load(A){this.clear();for(let[e,g]of A){if(g.start){let C=Date.now()-g.start;g.start=aC.now()-C}this.set(e,g.value,g)}}dispose(A,e,g){}set(A,e,{ttl:g=this.ttl,start:C,noDisposeOnSet:t=this.noDisposeOnSet,size:Q=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,status:h}={}){if(Q=this.requireSize(A,e,Q,u),this.maxEntrySize&&Q>this.maxEntrySize)return h&&(h.set="miss",h.maxEntrySizeExceeded=!0),this.delete(A),this;let r=this.size===0?void 0:this.keyMap.get(A);if(r===void 0)r=this.newIndex(),this.keyList[r]=A,this.valList[r]=e,this.keyMap.set(A,r),this.next[this.tail]=r,this.prev[r]=this.tail,this.tail=r,this.size++,this.addItemSize(r,Q,h),h&&(h.set="add"),c=!1;else{this.moveToTail(r);let a=this.valList[r];if(e!==a){if(this.isBackgroundFetch(a)?a.__abortController.abort(new Error("replaced")):t||(this.dispose(a,A,"set"),this.disposeAfter&&this.disposed.push([a,A,"set"])),this.removeItemSize(r),this.valList[r]=e,this.addItemSize(r,Q,h),h){h.set="replace";let s=a&&this.isBackgroundFetch(a)?a.__staleWhileFetching:a;s!==void 0&&(h.oldValue=s)}}else h&&(h.set="update")}if(g!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),c||this.setItemTTL(r,g,C),this.statusTTL(h,r),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){let A=this.valList[this.head];return this.evict(!0),A}}evict(A){let e=this.head,g=this.keyList[e],C=this.valList[e];return this.isBackgroundFetch(C)?C.__abortController.abort(new Error("evicted")):(this.dispose(C,g,"evict"),this.disposeAfter&&this.disposed.push([C,g,"evict"])),this.removeItemSize(e),A&&(this.keyList[e]=null,this.valList[e]=null,this.free.push(e)),this.head=this.next[e],this.keyMap.delete(g),this.size--,e}has(A,{updateAgeOnHas:e=this.updateAgeOnHas,status:g}={}){let C=this.keyMap.get(A);if(C!==void 0)if(this.isStale(C))g&&(g.has="stale",this.statusTTL(g,C));else return e&&this.updateItemAge(C),g&&(g.has="hit"),this.statusTTL(g,C),!0;else g&&(g.has="miss");return!1}peek(A,{allowStale:e=this.allowStale}={}){let g=this.keyMap.get(A);if(g!==void 0&&(e||!this.isStale(g))){let C=this.valList[g];return this.isBackgroundFetch(C)?C.__staleWhileFetching:C}}backgroundFetch(A,e,g,C){let t=e===void 0?void 0:this.valList[e];if(this.isBackgroundFetch(t))return t;let Q=new zC;g.signal&&g.signal.addEventListener("abort",()=>Q.abort(g.signal.reason));let u={signal:Q.signal,options:g,context:C},c=(i,B=!1)=>{let{aborted:E}=Q.signal,n=g.ignoreFetchAbort&&i!==void 0;return g.status&&(E&&!B?(g.status.fetchAborted=!0,g.status.fetchError=Q.signal.reason,n&&(g.status.fetchAbortIgnored=!0)):g.status.fetchResolved=!0),E&&!n&&!B?r(Q.signal.reason):(this.valList[e]===s&&(i===void 0?s.__staleWhileFetching?this.valList[e]=s.__staleWhileFetching:this.delete(A):(g.status&&(g.status.fetchUpdated=!0),this.set(A,i,u.options))),i)},h=i=>(g.status&&(g.status.fetchRejected=!0,g.status.fetchError=i),r(i)),r=i=>{let{aborted:B}=Q.signal,E=B&&g.allowStaleOnFetchAbort,n=E||g.allowStaleOnFetchRejection,D=n||g.noDeleteOnFetchRejection;if(this.valList[e]===s&&(!D||s.__staleWhileFetching===void 0?this.delete(A):E||(this.valList[e]=s.__staleWhileFetching)),n)return g.status&&s.__staleWhileFetching!==void 0&&(g.status.returnedStale=!0),s.__staleWhileFetching;if(s.__returned===s)throw i},a=(i,B)=>{this.fetchMethod(A,t,u).then(E=>i(E),B),Q.signal.addEventListener("abort",()=>{(!g.ignoreFetchAbort||g.allowStaleOnFetchAbort)&&(i(),g.allowStaleOnFetchAbort&&(i=E=>c(E,!0)))})};g.status&&(g.status.fetchDispatched=!0);let s=new Promise(a).then(c,h);return s.__abortController=Q,s.__staleWhileFetching=t,s.__returned=null,e===void 0?(this.set(A,s,{...u.options,status:void 0}),e=this.keyMap.get(A)):this.valList[e]=s,s}isBackgroundFetch(A){return A&&typeof A=="object"&&typeof A.then=="function"&&Object.prototype.hasOwnProperty.call(A,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(A,"__returned")&&(A.__returned===A||A.__returned===null)}async fetch(A,{allowStale:e=this.allowStale,updateAgeOnGet:g=this.updateAgeOnGet,noDeleteOnStaleGet:C=this.noDeleteOnStaleGet,ttl:t=this.ttl,noDisposeOnSet:Q=this.noDisposeOnSet,size:u=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:h=this.noUpdateTTL,noDeleteOnFetchRejection:r=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:a=this.allowStaleOnFetchRejection,ignoreFetchAbort:s=this.ignoreFetchAbort,allowStaleOnFetchAbort:i=this.allowStaleOnFetchAbort,fetchContext:B=this.fetchContext,forceRefresh:E=!1,status:n,signal:D}={}){if(!this.fetchMethod)return n&&(n.fetch="get"),this.get(A,{allowStale:e,updateAgeOnGet:g,noDeleteOnStaleGet:C,status:n});let f={allowStale:e,updateAgeOnGet:g,noDeleteOnStaleGet:C,ttl:t,noDisposeOnSet:Q,size:u,sizeCalculation:c,noUpdateTTL:h,noDeleteOnFetchRejection:r,allowStaleOnFetchRejection:a,allowStaleOnFetchAbort:i,ignoreFetchAbort:s,status:n,signal:D},S=this.keyMap.get(A);if(S===void 0){n&&(n.fetch="miss");let k=this.backgroundFetch(A,S,f,B);return k.__returned=k}else{let k=this.valList[S];if(this.isBackgroundFetch(k)){let b=e&&k.__staleWhileFetching!==void 0;return n&&(n.fetch="inflight",b&&(n.returnedStale=!0)),b?k.__staleWhileFetching:k.__returned=k}let M=this.isStale(S);if(!E&&!M)return n&&(n.fetch="hit"),this.moveToTail(S),g&&this.updateItemAge(S),this.statusTTL(n,S),k;let N=this.backgroundFetch(A,S,f,B),J=N.__staleWhileFetching!==void 0,O=J&&e;return n&&(n.fetch=J&&M?"stale":"refresh",O&&M&&(n.returnedStale=!0)),O?N.__staleWhileFetching:N.__returned=N}}get(A,{allowStale:e=this.allowStale,updateAgeOnGet:g=this.updateAgeOnGet,noDeleteOnStaleGet:C=this.noDeleteOnStaleGet,status:t}={}){let Q=this.keyMap.get(A);if(Q!==void 0){let u=this.valList[Q],c=this.isBackgroundFetch(u);return this.statusTTL(t,Q),this.isStale(Q)?(t&&(t.get="stale"),c?(t&&(t.returnedStale=e&&u.__staleWhileFetching!==void 0),e?u.__staleWhileFetching:void 0):(C||this.delete(A),t&&(t.returnedStale=e),e?u:void 0)):(t&&(t.get="hit"),c?u.__staleWhileFetching:(this.moveToTail(Q),g&&this.updateItemAge(Q),u))}else t&&(t.get="miss")}connect(A,e){this.prev[e]=A,this.next[A]=e}moveToTail(A){A!==this.tail&&(A===this.head?this.head=this.next[A]:this.connect(this.prev[A],this.next[A]),this.connect(this.tail,A),this.tail=A)}get del(){return _i("del","delete"),this.delete}delete(A){let e=!1;if(this.size!==0){let g=this.keyMap.get(A);if(g!==void 0)if(e=!0,this.size===1)this.clear();else{this.removeItemSize(g);let C=this.valList[g];this.isBackgroundFetch(C)?C.__abortController.abort(new Error("deleted")):(this.dispose(C,A,"delete"),this.disposeAfter&&this.disposed.push([C,A,"delete"])),this.keyMap.delete(A),this.keyList[g]=null,this.valList[g]=null,g===this.tail?this.tail=this.prev[g]:g===this.head?this.head=this.next[g]:(this.next[this.prev[g]]=this.next[g],this.prev[this.next[g]]=this.prev[g]),this.size--,this.free.push(g)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return e}clear(){for(let A of this.rindexes({allowStale:!0})){let e=this.valList[A];if(this.isBackgroundFetch(e))e.__abortController.abort(new Error("deleted"));else{let g=this.keyList[A];this.dispose(e,g,"delete"),this.disposeAfter&&this.disposed.push([e,g,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return _i("reset","clear"),this.clear}get length(){return KD("length","size"),this.size}static get AbortController(){return zC}static get AbortSignal(){return ir}};Er.exports=lI});var or=U(ke=>{"use strict";var HD=ke&&ke.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),bD=ke&&ke.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),sr=ke&&ke.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&HD(A,I,e);return bD(A,I),A};Object.defineProperty(ke,"__esModule",{value:!0});ke.req=ke.json=ke.toBuffer=void 0;var YD=sr(require("http")),xD=sr(require("https"));async function nr(I){let A=0,e=[];for await(let g of I)A+=g.length,e.push(g);return Buffer.concat(e,A)}ke.toBuffer=nr;async function vD(I){let e=(await nr(I)).toString("utf8");try{return JSON.parse(e)}catch(g){let C=g;throw C.message+=` (input: ${e})`,C}}ke.json=vD;function TD(I,A={}){let g=((typeof I=="string"?I:I.href).startsWith("https:")?xD:YD).request(I,A),C=new Promise((t,Q)=>{g.once("response",t).once("error",Q).end()});return g.then=C.then.bind(C),g}ke.req=TD});var wI=U(Ne=>{"use strict";var ur=Ne&&Ne.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),PD=Ne&&Ne.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),cr=Ne&&Ne.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&ur(A,I,e);return PD(A,I),A},qD=Ne&&Ne.__exportStar||function(I,A){for(var e in I)e!=="default"&&!Object.prototype.hasOwnProperty.call(A,e)&&ur(A,I,e)};Object.defineProperty(Ne,"__esModule",{value:!0});Ne.Agent=void 0;var OD=cr(require("net")),ar=cr(require("http")),VD=require("https");qD(or(),Ne);var rg=Symbol("AgentBaseInternalState"),AB=class extends ar.Agent{constructor(A){super(A),this[rg]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint=="boolean")return A.secureEndpoint;if(typeof A.protocol=="string")return A.protocol==="https:"}let{stack:e}=new Error;return typeof e!="string"?!1:e.split(` +`).some(g=>g.indexOf("(https.js:")!==-1||g.indexOf("node:https:")!==-1)}incrementSockets(A){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[A]||(this.sockets[A]=[]);let e=new OD.Socket({writable:!1});return this.sockets[A].push(e),this.totalSocketCount++,e}decrementSockets(A,e){if(!this.sockets[A]||e===null)return;let g=this.sockets[A],C=g.indexOf(e);C!==-1&&(g.splice(C,1),this.totalSocketCount--,g.length===0&&delete this.sockets[A])}getName(A){return(typeof A.secureEndpoint=="boolean"?A.secureEndpoint:this.isSecureEndpoint(A))?VD.Agent.prototype.getName.call(this,A):super.getName(A)}createSocket(A,e,g){let C={...e,secureEndpoint:this.isSecureEndpoint(e)},t=this.getName(C),Q=this.incrementSockets(t);Promise.resolve().then(()=>this.connect(A,C)).then(u=>{if(this.decrementSockets(t,Q),u instanceof ar.Agent)return u.addRequest(A,C);this[rg].currentSocket=u,super.createSocket(A,e,g)},u=>{this.decrementSockets(t,Q),g(u)})}createConnection(){let A=this[rg].currentSocket;if(this[rg].currentSocket=void 0,!A)throw new Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[rg].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){this[rg]&&(this[rg].defaultPort=A)}get protocol(){return this[rg].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){this[rg]&&(this[rg].protocol=A)}};Ne.Agent=AB});var hr=U((mR,Dr)=>{"use strict";var fI=1e3,yI=fI*60,dI=yI*60,tI=dI*24,WD=tI*7,ZD=tI*365.25;Dr.exports=function(I,A){A=A||{};var e=typeof I;if(e==="string"&&I.length>0)return XD(I);if(e==="number"&&isFinite(I))return A.long?jD(I):_D(I);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(I))};function XD(I){if(I=String(I),!(I.length>100)){var A=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(I);if(A){var e=parseFloat(A[1]),g=(A[2]||"ms").toLowerCase();switch(g){case"years":case"year":case"yrs":case"yr":case"y":return e*ZD;case"weeks":case"week":case"w":return e*WD;case"days":case"day":case"d":return e*tI;case"hours":case"hour":case"hrs":case"hr":case"h":return e*dI;case"minutes":case"minute":case"mins":case"min":case"m":return e*yI;case"seconds":case"second":case"secs":case"sec":case"s":return e*fI;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:return}}}}function _D(I){var A=Math.abs(I);return A>=tI?Math.round(I/tI)+"d":A>=dI?Math.round(I/dI)+"h":A>=yI?Math.round(I/yI)+"m":A>=fI?Math.round(I/fI)+"s":I+"ms"}function jD(I){var A=Math.abs(I);return A>=tI?At(I,A,tI,"day"):A>=dI?At(I,A,dI,"hour"):A>=yI?At(I,A,yI,"minute"):A>=fI?At(I,A,fI,"second"):I+" ms"}function At(I,A,e,g){var C=A>=e*1.5;return Math.round(I/e)+" "+g+(C?"s":"")}});var eB=U((NR,lr)=>{"use strict";function zD(I){e.debug=e,e.default=e,e.coerce=c,e.disable=t,e.enable=C,e.enabled=Q,e.humanize=hr(),e.destroy=h,Object.keys(I).forEach(r=>{e[r]=I[r]}),e.names=[],e.skips=[],e.formatters={};function A(r){let a=0;for(let s=0;s{if(N==="%%")return"%";k++;let O=e.formatters[J];if(typeof O=="function"){let b=n[k];N=O.call(D,b),n.splice(k,1),k--}return N}),e.formatArgs.call(D,n),(D.log||e.log).apply(D,n)}return E.namespace=r,E.useColors=e.useColors(),E.color=e.selectColor(r),E.extend=g,E.destroy=e.destroy,Object.defineProperty(E,"enabled",{enumerable:!0,configurable:!1,get:()=>s!==null?s:(i!==e.namespaces&&(i=e.namespaces,B=e.enabled(r)),B),set:n=>{s=n}}),typeof e.init=="function"&&e.init(E),E}function g(r,a){let s=e(this.namespace+(typeof a>"u"?":":a)+r);return s.log=this.log,s}function C(r){e.save(r),e.namespaces=r,e.names=[],e.skips=[];let a,s=(typeof r=="string"?r:"").split(/[\s,]+/),i=s.length;for(a=0;a"-"+a)].join(",");return e.enable(""),r}function Q(r){if(r[r.length-1]==="*")return!0;let a,s;for(a=0,s=e.skips.length;a{"use strict";Ue.formatArgs=Ah;Ue.save=eh;Ue.load=gh;Ue.useColors=$D;Ue.storage=Ih();Ue.destroy=(()=>{let I=!1;return()=>{I||(I=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Ue.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function $D(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Ah(I){if(I[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+I[0]+(this.useColors?"%c ":" ")+"+"+et.exports.humanize(this.diff),!this.useColors)return;let A="color: "+this.color;I.splice(1,0,A,"color: inherit");let e=0,g=0;I[0].replace(/%[a-zA-Z%]/g,C=>{C!=="%%"&&(e++,C==="%c"&&(g=e))}),I.splice(g,0,A)}Ue.log=console.debug||console.log||(()=>{});function eh(I){try{I?Ue.storage.setItem("debug",I):Ue.storage.removeItem("debug")}catch{}}function gh(){let I;try{I=Ue.storage.getItem("debug")}catch{}return!I&&typeof process<"u"&&"env"in process&&(I=process.env.DEBUG),I}function Ih(){try{return localStorage}catch{}}et.exports=eB()(Ue);var{formatters:Ch}=et.exports;Ch.j=function(I){try{return JSON.stringify(I)}catch(A){return"[UnexpectedJSONParseError]: "+A.message}}});var yr=U((UR,fr)=>{"use strict";fr.exports=(I,A=process.argv)=>{let e=I.startsWith("-")?"":I.length===1?"-":"--",g=A.indexOf(e+I),C=A.indexOf("--");return g!==-1&&(C===-1||g{"use strict";var th=require("os"),dr=require("tty"),Ye=yr(),{env:$A}=process,Yg;Ye("no-color")||Ye("no-colors")||Ye("color=false")||Ye("color=never")?Yg=0:(Ye("color")||Ye("colors")||Ye("color=true")||Ye("color=always"))&&(Yg=1);"FORCE_COLOR"in $A&&($A.FORCE_COLOR==="true"?Yg=1:$A.FORCE_COLOR==="false"?Yg=0:Yg=$A.FORCE_COLOR.length===0?1:Math.min(parseInt($A.FORCE_COLOR,10),3));function gB(I){return I===0?!1:{level:I,hasBasic:!0,has256:I>=2,has16m:I>=3}}function IB(I,A){if(Yg===0)return 0;if(Ye("color=16m")||Ye("color=full")||Ye("color=truecolor"))return 3;if(Ye("color=256"))return 2;if(I&&!A&&Yg===void 0)return 0;let e=Yg||0;if($A.TERM==="dumb")return e;if(process.platform==="win32"){let g=th.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in $A)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(g=>g in $A)||$A.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in $A)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test($A.TEAMCITY_VERSION)?1:0;if($A.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in $A){let g=parseInt(($A.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch($A.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test($A.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test($A.TERM)||"COLORTERM"in $A?1:e}function ih(I){let A=IB(I,I&&I.isTTY);return gB(A)}Fr.exports={supportsColor:ih,stdout:gB(IB(!0,dr.isatty(1))),stderr:gB(IB(!0,dr.isatty(2)))}});var Rr=U((Be,It)=>{"use strict";var Bh=require("tty"),gt=require("util");Be.init=ah;Be.log=sh;Be.formatArgs=Eh;Be.save=nh;Be.load=oh;Be.useColors=Qh;Be.destroy=gt.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Be.colors=[6,2,3,4,5,1];try{let I=pr();I&&(I.stderr||I).level>=2&&(Be.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Be.inspectOpts=Object.keys(process.env).filter(I=>/^debug_/i.test(I)).reduce((I,A)=>{let e=A.substring(6).toLowerCase().replace(/_([a-z])/g,(C,t)=>t.toUpperCase()),g=process.env[A];return/^(yes|on|true|enabled)$/i.test(g)?g=!0:/^(no|off|false|disabled)$/i.test(g)?g=!1:g==="null"?g=null:g=Number(g),I[e]=g,I},{});function Qh(){return"colors"in Be.inspectOpts?!!Be.inspectOpts.colors:Bh.isatty(process.stderr.fd)}function Eh(I){let{namespace:A,useColors:e}=this;if(e){let g=this.color,C="\x1B[3"+(g<8?g:"8;5;"+g),t=` ${C};1m${A} \x1B[0m`;I[0]=t+I[0].split(` +`).join(` +`+t),I.push(C+"m+"+It.exports.humanize(this.diff)+"\x1B[0m")}else I[0]=rh()+A+" "+I[0]}function rh(){return Be.inspectOpts.hideDate?"":new Date().toISOString()+" "}function sh(...I){return process.stderr.write(gt.format(...I)+` +`)}function nh(I){I?process.env.DEBUG=I:delete process.env.DEBUG}function oh(){return process.env.DEBUG}function ah(I){I.inspectOpts={};let A=Object.keys(Be.inspectOpts);for(let e=0;eA.trim()).join(" ")};Sr.O=function(I){return this.inspectOpts.colors=this.useColors,gt.inspect(I,this.inspectOpts)}});var xe=U((JR,CB)=>{"use strict";typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?CB.exports=wr():CB.exports=Rr()});var Mr=U(kr=>{"use strict";var uh=require("url").parse,ch={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},Dh=String.prototype.endsWith||function(I){return I.length<=this.length&&this.indexOf(I,this.length-I.length)!==-1};function hh(I){var A=typeof I=="string"?uh(I):I||{},e=A.protocol,g=A.host,C=A.port;if(typeof g!="string"||!g||typeof e!="string"||(e=e.split(":",1)[0],g=g.replace(/:\d*$/,""),C=parseInt(C)||ch[e]||0,!lh(g,C)))return"";var t=FI("npm_config_"+e+"_proxy")||FI(e+"_proxy")||FI("npm_config_proxy")||FI("all_proxy");return t&&t.indexOf("://")===-1&&(t=e+"://"+t),t}function lh(I,A){var e=(FI("npm_config_no_proxy")||FI("no_proxy")).toLowerCase();return e?e==="*"?!1:e.split(/[,\s]/).every(function(g){if(!g)return!0;var C=g.match(/^(.+):(\d+)$/),t=C?C[1]:g,Q=C?parseInt(C[2]):0;return Q&&Q!==A?!0:/^[.*]/.test(t)?(t.charAt(0)==="*"&&(t=t.slice(1)),!Dh.call(I,t)):I!==t}):!0}function FI(I){return process.env[I.toLowerCase()]||process.env[I.toUpperCase()]||""}kr.getProxyForUrl=hh});var tB=U(ve=>{"use strict";var wh=ve&&ve.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),fh=ve&&ve.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),mr=ve&&ve.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&wh(A,I,e);return fh(A,I),A},yh=ve&&ve.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(ve,"__esModule",{value:!0});ve.HttpProxyAgent=void 0;var dh=mr(require("net")),Fh=mr(require("tls")),ph=yh(xe()),Sh=require("events"),Rh=wI(),Gr=require("url"),pI=(0,ph.default)("http-proxy-agent"),Ct=class extends Rh.Agent{constructor(A,e){super(e),this.proxy=typeof A=="string"?new Gr.URL(A):A,this.proxyHeaders=e?.headers??{},pI("Creating new HttpProxyAgent instance: %o",this.proxy.href);let g=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),C=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...e?kh(e,"headers"):null,host:g,port:C}}addRequest(A,e){A._header=null,this.setRequestProps(A,e),super.addRequest(A,e)}setRequestProps(A,e){let{proxy:g}=this,C=e.secureEndpoint?"https:":"http:",t=A.getHeader("host")||"localhost",Q=`${C}//${t}`,u=new Gr.URL(A.path,Q);e.port!==80&&(u.port=String(e.port)),A.path=String(u);let c=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(g.username||g.password){let h=`${decodeURIComponent(g.username)}:${decodeURIComponent(g.password)}`;c["Proxy-Authorization"]=`Basic ${Buffer.from(h).toString("base64")}`}c["Proxy-Connection"]||(c["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let h of Object.keys(c)){let r=c[h];r&&A.setHeader(h,r)}}async connect(A,e){A._header=null,A.path.includes("://")||this.setRequestProps(A,e);let g,C;pI("Regenerating stored HTTP header string for request"),A._implicitHeader(),A.outputData&&A.outputData.length>0&&(pI("Patching connection write() output buffer with updated header"),g=A.outputData[0].data,C=g.indexOf(`\r +\r +`)+4,A.outputData[0].data=A._header+g.substring(C),pI("Output buffer: %o",A.outputData[0].data));let t;return this.proxy.protocol==="https:"?(pI("Creating `tls.Socket`: %o",this.connectOpts),t=Fh.connect(this.connectOpts)):(pI("Creating `net.Socket`: %o",this.connectOpts),t=dh.connect(this.connectOpts)),await(0,Sh.once)(t,"connect"),t}};Ct.protocols=["http","https"];ve.HttpProxyAgent=Ct;function kh(I,...A){let e={},g;for(g in I)A.includes(g)||(e[g]=I[g]);return e}});var Nr=U(SI=>{"use strict";var Mh=SI&&SI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(SI,"__esModule",{value:!0});SI.parseProxyResponse=void 0;var Gh=Mh(xe()),tt=(0,Gh.default)("https-proxy-agent:parse-proxy-response");function mh(I){return new Promise((A,e)=>{let g=0,C=[];function t(){let r=I.read();r?h(r):I.once("readable",t)}function Q(){I.removeListener("end",u),I.removeListener("error",c),I.removeListener("readable",t)}function u(){Q(),tt("onend"),e(new Error("Proxy connection ended before receiving CONNECT response"))}function c(r){Q(),tt("onerror %o",r),e(r)}function h(r){C.push(r),g+=r.length;let a=Buffer.concat(C,g),s=a.indexOf(`\r +\r +`);if(s===-1){tt("have not received end of HTTP headers yet..."),t();return}let i=a.slice(0,s).toString("ascii").split(`\r +`),B=i.shift();if(!B)return I.destroy(),e(new Error("No header received from proxy CONNECT response"));let E=B.split(" "),n=+E[1],D=E.slice(2).join(" "),f={};for(let S of i){if(!S)continue;let k=S.indexOf(":");if(k===-1)return I.destroy(),e(new Error(`Invalid header from proxy CONNECT response: "${S}"`));let M=S.slice(0,k).toLowerCase(),N=S.slice(k+1).trimStart(),J=f[M];typeof J=="string"?f[M]=[J,N]:Array.isArray(J)?J.push(N):f[M]=N}tt("got proxy server response: %o %o",B,f),Q(),A({connect:{statusCode:n,statusText:D,headers:f},buffered:a})}I.on("error",c),I.on("end",u),t()})}SI.parseProxyResponse=mh});var iB=U(Te=>{"use strict";var Nh=Te&&Te.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Uh=Te&&Te.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),Jr=Te&&Te.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Nh(A,I,e);return Uh(A,I),A},Kr=Te&&Te.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(Te,"__esModule",{value:!0});Te.HttpsProxyAgent=void 0;var uC=Jr(require("net")),Ur=Jr(require("tls")),Lh=Kr(require("assert")),Jh=Kr(xe()),Kh=wI(),Hh=require("url"),bh=Nr(),cC=(0,Jh.default)("https-proxy-agent"),it=class extends Kh.Agent{constructor(A,e){super(e),this.options={path:void 0},this.proxy=typeof A=="string"?new Hh.URL(A):A,this.proxyHeaders=e?.headers??{},cC("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let g=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),C=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...e?Lr(e,"headers"):null,host:g,port:C}}async connect(A,e){let{proxy:g}=this;if(!e.host)throw new TypeError('No "host" provided');let C;if(g.protocol==="https:"){cC("Creating `tls.Socket`: %o",this.connectOpts);let s=this.connectOpts.servername||this.connectOpts.host;C=Ur.connect({...this.connectOpts,servername:s&&uC.isIP(s)?void 0:s})}else cC("Creating `net.Socket`: %o",this.connectOpts),C=uC.connect(this.connectOpts);let t=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},Q=uC.isIPv6(e.host)?`[${e.host}]`:e.host,u=`CONNECT ${Q}:${e.port} HTTP/1.1\r +`;if(g.username||g.password){let s=`${decodeURIComponent(g.username)}:${decodeURIComponent(g.password)}`;t["Proxy-Authorization"]=`Basic ${Buffer.from(s).toString("base64")}`}t.Host=`${Q}:${e.port}`,t["Proxy-Connection"]||(t["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let s of Object.keys(t))u+=`${s}: ${t[s]}\r +`;let c=(0,bh.parseProxyResponse)(C);C.write(`${u}\r +`);let{connect:h,buffered:r}=await c;if(A.emit("proxyConnect",h),this.emit("proxyConnect",h,A),h.statusCode===200){if(A.once("socket",Yh),e.secureEndpoint){cC("Upgrading socket connection to TLS");let s=e.servername||e.host;return Ur.connect({...Lr(e,"host","path","port"),socket:C,servername:uC.isIP(s)?void 0:s})}return C}C.destroy();let a=new uC.Socket({writable:!1});return a.readable=!0,A.once("socket",s=>{cC("Replaying proxy buffer for failed request"),(0,Lh.default)(s.listenerCount("data")>0),s.push(r),s.push(null)}),a}};it.protocols=["http","https"];Te.HttpsProxyAgent=it;function Yh(I){I.resume()}function Lr(I,...A){let e={},g;for(g in I)A.includes(g)||(e[g]=I[g]);return e}});var xr=U(Sg=>{"use strict";Object.defineProperty(Sg,"__esModule",{value:!0});var Hr=require("buffer"),iI={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};Sg.ERRORS=iI;function xh(I){if(!Hr.Buffer.isEncoding(I))throw new Error(iI.INVALID_ENCODING)}Sg.checkEncoding=xh;function br(I){return typeof I=="number"&&isFinite(I)&&qh(I)}Sg.isFiniteInteger=br;function Yr(I,A){if(typeof I=="number"){if(!br(I)||I<0)throw new Error(A?iI.INVALID_OFFSET:iI.INVALID_LENGTH)}else throw new Error(A?iI.INVALID_OFFSET_NON_NUMBER:iI.INVALID_LENGTH_NON_NUMBER)}function vh(I){Yr(I,!1)}Sg.checkLengthValue=vh;function Th(I){Yr(I,!0)}Sg.checkOffsetValue=Th;function Ph(I,A){if(I<0||I>A.length)throw new Error(iI.INVALID_TARGET_OFFSET)}Sg.checkTargetOffset=Ph;function qh(I){return typeof I=="number"&&isFinite(I)&&Math.floor(I)===I}function Oh(I){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof Hr.Buffer.prototype[I]>"u")throw new Error(`Platform does not support Buffer.prototype.${I}.`)}Sg.bigIntAndBufferInt64Check=Oh});var Tr=U(QB=>{"use strict";Object.defineProperty(QB,"__esModule",{value:!0});var wA=xr(),vr=4096,Vh="utf8",BB=class I{constructor(A){if(this.length=0,this._encoding=Vh,this._writeOffset=0,this._readOffset=0,I.isSmartBufferOptions(A))if(A.encoding&&(wA.checkEncoding(A.encoding),this._encoding=A.encoding),A.size)if(wA.isFiniteInteger(A.size)&&A.size>0)this._buff=Buffer.allocUnsafe(A.size);else throw new Error(wA.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(A.buff)if(Buffer.isBuffer(A.buff))this._buff=A.buff,this.length=A.buff.length;else throw new Error(wA.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(vr);else{if(typeof A<"u")throw new Error(wA.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(vr)}}static fromSize(A,e){return new this({size:A,encoding:e})}static fromBuffer(A,e){return new this({buff:A,encoding:e})}static fromOptions(A){return new this(A)}static isSmartBufferOptions(A){let e=A;return e&&(e.encoding!==void 0||e.size!==void 0||e.buff!==void 0)}readInt8(A){return this._readNumberValue(Buffer.prototype.readInt8,1,A)}readInt16BE(A){return this._readNumberValue(Buffer.prototype.readInt16BE,2,A)}readInt16LE(A){return this._readNumberValue(Buffer.prototype.readInt16LE,2,A)}readInt32BE(A){return this._readNumberValue(Buffer.prototype.readInt32BE,4,A)}readInt32LE(A){return this._readNumberValue(Buffer.prototype.readInt32LE,4,A)}readBigInt64BE(A){return wA.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,A)}readBigInt64LE(A){return wA.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,A)}writeInt8(A,e){return this._writeNumberValue(Buffer.prototype.writeInt8,1,A,e),this}insertInt8(A,e){return this._insertNumberValue(Buffer.prototype.writeInt8,1,A,e)}writeInt16BE(A,e){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,A,e)}insertInt16BE(A,e){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,A,e)}writeInt16LE(A,e){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,A,e)}insertInt16LE(A,e){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,A,e)}writeInt32BE(A,e){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,A,e)}insertInt32BE(A,e){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,A,e)}writeInt32LE(A,e){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,A,e)}insertInt32LE(A,e){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,A,e)}writeBigInt64BE(A,e){return wA.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,A,e)}insertBigInt64BE(A,e){return wA.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,A,e)}writeBigInt64LE(A,e){return wA.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,A,e)}insertBigInt64LE(A,e){return wA.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,A,e)}readUInt8(A){return this._readNumberValue(Buffer.prototype.readUInt8,1,A)}readUInt16BE(A){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,A)}readUInt16LE(A){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,A)}readUInt32BE(A){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,A)}readUInt32LE(A){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,A)}readBigUInt64BE(A){return wA.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,A)}readBigUInt64LE(A){return wA.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,A)}writeUInt8(A,e){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,A,e)}insertUInt8(A,e){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,A,e)}writeUInt16BE(A,e){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,A,e)}insertUInt16BE(A,e){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,A,e)}writeUInt16LE(A,e){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,A,e)}insertUInt16LE(A,e){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,A,e)}writeUInt32BE(A,e){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,A,e)}insertUInt32BE(A,e){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,A,e)}writeUInt32LE(A,e){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,A,e)}insertUInt32LE(A,e){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,A,e)}writeBigUInt64BE(A,e){return wA.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,A,e)}insertBigUInt64BE(A,e){return wA.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,A,e)}writeBigUInt64LE(A,e){return wA.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,A,e)}insertBigUInt64LE(A,e){return wA.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,A,e)}readFloatBE(A){return this._readNumberValue(Buffer.prototype.readFloatBE,4,A)}readFloatLE(A){return this._readNumberValue(Buffer.prototype.readFloatLE,4,A)}writeFloatBE(A,e){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,A,e)}insertFloatBE(A,e){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,A,e)}writeFloatLE(A,e){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,A,e)}insertFloatLE(A,e){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,A,e)}readDoubleBE(A){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,A)}readDoubleLE(A){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,A)}writeDoubleBE(A,e){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,A,e)}insertDoubleBE(A,e){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,A,e)}writeDoubleLE(A,e){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,A,e)}insertDoubleLE(A,e){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,A,e)}readString(A,e){let g;typeof A=="number"?(wA.checkLengthValue(A),g=Math.min(A,this.length-this._readOffset)):(e=A,g=this.length-this._readOffset),typeof e<"u"&&wA.checkEncoding(e);let C=this._buff.slice(this._readOffset,this._readOffset+g).toString(e||this._encoding);return this._readOffset+=g,C}insertString(A,e,g){return wA.checkOffsetValue(e),this._handleString(A,!0,e,g)}writeString(A,e,g){return this._handleString(A,!1,e,g)}readStringNT(A){typeof A<"u"&&wA.checkEncoding(A);let e=this.length;for(let C=this._readOffset;Cthis.length)throw new Error(wA.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(A,e){wA.checkOffsetValue(e),this._ensureCapacity(this.length+A),ethis.length?this.length=e+A:this.length+=A}_ensureWriteable(A,e){let g=typeof e=="number"?e:this._writeOffset;this._ensureCapacity(g+A),g+A>this.length&&(this.length=g+A)}_ensureCapacity(A){let e=this._buff.length;if(A>e){let g=this._buff,C=e*3/2+1;C"u"&&(this._readOffset+=e),C}_insertNumberValue(A,e,g,C){return wA.checkOffsetValue(C),this.ensureInsertable(e,C),A.call(this._buff,g,C),this._writeOffset+=e,this}_writeNumberValue(A,e,g,C){if(typeof C=="number"){if(C<0)throw new Error(wA.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);wA.checkOffsetValue(C)}let t=typeof C=="number"?C:this._writeOffset;return this._ensureWriteable(e,t),A.call(this._buff,g,t),typeof C=="number"?this._writeOffset=Math.max(this._writeOffset,t+e):this._writeOffset+=e,this}};QB.SmartBuffer=BB});var EB=U(NA=>{"use strict";Object.defineProperty(NA,"__esModule",{value:!0});NA.SOCKS5_NO_ACCEPTABLE_AUTH=NA.SOCKS5_CUSTOM_AUTH_END=NA.SOCKS5_CUSTOM_AUTH_START=NA.SOCKS_INCOMING_PACKET_SIZES=NA.SocksClientState=NA.Socks5Response=NA.Socks5HostType=NA.Socks5Auth=NA.Socks4Response=NA.SocksCommand=NA.ERRORS=NA.DEFAULT_TIMEOUT=void 0;var Wh=3e4;NA.DEFAULT_TIMEOUT=Wh;var Zh={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};NA.ERRORS=Zh;var Xh={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:I=>I+7,Socks4Response:8};NA.SOCKS_INCOMING_PACKET_SIZES=Xh;var Pr;(function(I){I[I.connect=1]="connect",I[I.bind=2]="bind",I[I.associate=3]="associate"})(Pr||(NA.SocksCommand=Pr={}));var qr;(function(I){I[I.Granted=90]="Granted",I[I.Failed=91]="Failed",I[I.Rejected=92]="Rejected",I[I.RejectedIdent=93]="RejectedIdent"})(qr||(NA.Socks4Response=qr={}));var Or;(function(I){I[I.NoAuth=0]="NoAuth",I[I.GSSApi=1]="GSSApi",I[I.UserPass=2]="UserPass"})(Or||(NA.Socks5Auth=Or={}));var _h=128;NA.SOCKS5_CUSTOM_AUTH_START=_h;var jh=254;NA.SOCKS5_CUSTOM_AUTH_END=jh;var zh=255;NA.SOCKS5_NO_ACCEPTABLE_AUTH=zh;var Vr;(function(I){I[I.Granted=0]="Granted",I[I.Failure=1]="Failure",I[I.NotAllowed=2]="NotAllowed",I[I.NetworkUnreachable=3]="NetworkUnreachable",I[I.HostUnreachable=4]="HostUnreachable",I[I.ConnectionRefused=5]="ConnectionRefused",I[I.TTLExpired=6]="TTLExpired",I[I.CommandNotSupported=7]="CommandNotSupported",I[I.AddressNotSupported=8]="AddressNotSupported"})(Vr||(NA.Socks5Response=Vr={}));var Wr;(function(I){I[I.IPv4=1]="IPv4",I[I.Hostname=3]="Hostname",I[I.IPv6=4]="IPv6"})(Wr||(NA.Socks5HostType=Wr={}));var Zr;(function(I){I[I.Created=0]="Created",I[I.Connecting=1]="Connecting",I[I.Connected=2]="Connected",I[I.SentInitialHandshake=3]="SentInitialHandshake",I[I.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",I[I.SentAuthentication=5]="SentAuthentication",I[I.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",I[I.SentFinalHandshake=7]="SentFinalHandshake",I[I.ReceivedFinalResponse=8]="ReceivedFinalResponse",I[I.BoundWaitingForConnection=9]="BoundWaitingForConnection",I[I.Established=10]="Established",I[I.Disconnected=11]="Disconnected",I[I.Error=99]="Error"})(Zr||(NA.SocksClientState=Zr={}))});var sB=U(RI=>{"use strict";Object.defineProperty(RI,"__esModule",{value:!0});RI.shuffleArray=RI.SocksClientError=void 0;var rB=class extends Error{constructor(A,e){super(A),this.options=e}};RI.SocksClientError=rB;function $h(I){for(let A=I.length-1;A>0;A--){let e=Math.floor(Math.random()*(A+1));[I[A],I[e]]=[I[e],I[A]]}}RI.shuffleArray=$h});var nB=U(kI=>{"use strict";Object.defineProperty(kI,"__esModule",{value:!0});kI.isCorrect=kI.isInSubnet=void 0;function Al(I){return this.subnetMask{"use strict";Object.defineProperty(sg,"__esModule",{value:!0});sg.RE_SUBNET_STRING=sg.RE_ADDRESS=sg.GROUPS=sg.BITS=void 0;sg.BITS=32;sg.GROUPS=4;sg.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;sg.RE_SUBNET_STRING=/\/\d{1,2}$/});var Qt=U(Bt=>{"use strict";Object.defineProperty(Bt,"__esModule",{value:!0});Bt.AddressError=void 0;var aB=class extends Error{constructor(A,e){super(A),this.name="AddressError",e!==null&&(this.parseMessage=e)}};Bt.AddressError=aB});var uB=U((Et,Xr)=>{"use strict";(function(){var I,A=0xdeadbeefcafe,e=(A&16777215)==15715070;function g(l,y,p){l!=null&&(typeof l=="number"?this.fromNumber(l,y,p):y==null&&typeof l!="string"?this.fromString(l,256):this.fromString(l,y))}function C(){return new g(null)}function t(l,y,p,m,q,Z){for(;--Z>=0;){var gA=y*this[l++]+p[m]+q;q=Math.floor(gA/67108864),p[m++]=gA&67108863}return q}function Q(l,y,p,m,q,Z){for(var gA=y&32767,tA=y>>15;--Z>=0;){var JA=this[l]&32767,zA=this[l++]>>15,be=tA*JA+zA*gA;JA=gA*JA+((be&32767)<<15)+p[m]+(q&1073741823),q=(JA>>>30)+(be>>>15)+tA*zA+(q>>>30),p[m++]=JA&1073741823}return q}function u(l,y,p,m,q,Z){for(var gA=y&16383,tA=y>>14;--Z>=0;){var JA=this[l]&16383,zA=this[l++]>>14,be=tA*JA+zA*gA;JA=gA*JA+((be&16383)<<14)+p[m]+q,q=(JA>>28)+(be>>14)+tA*zA,p[m++]=JA&268435455}return q}var c=typeof navigator<"u";c&&e&&navigator.appName=="Microsoft Internet Explorer"?(g.prototype.am=Q,I=30):c&&e&&navigator.appName!="Netscape"?(g.prototype.am=t,I=26):(g.prototype.am=u,I=28),g.prototype.DB=I,g.prototype.DM=(1<=0;--y)l[y]=this[y];l.t=this.t,l.s=this.s}function D(l){this.t=1,this.s=l<0?-1:0,l>0?this[0]=l:l<-1?this[0]=l+this.DV:this.t=0}function f(l){var y=C();return y.fromInt(l),y}function S(l,y){var p;if(y==16)p=4;else if(y==8)p=3;else if(y==256)p=8;else if(y==2)p=1;else if(y==32)p=5;else if(y==4)p=2;else{this.fromRadix(l,y);return}this.t=0,this.s=0;for(var m=l.length,q=!1,Z=0;--m>=0;){var gA=p==8?l[m]&255:E(l,m);if(gA<0){l.charAt(m)=="-"&&(q=!0);continue}q=!1,Z==0?this[this.t++]=gA:Z+p>this.DB?(this[this.t-1]|=(gA&(1<>this.DB-Z):this[this.t-1]|=gA<=this.DB&&(Z-=this.DB)}p==8&&l[0]&128&&(this.s=-1,Z>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==l;)--this.t}function M(l){if(this.s<0)return"-"+this.negate().toString(l);var y;if(l==16)y=4;else if(l==8)y=3;else if(l==2)y=1;else if(l==32)y=5;else if(l==4)y=2;else return this.toRadix(l);var p=(1<0)for(tA>tA)>0&&(q=!0,Z=B(m));gA>=0;)tA>(tA+=this.DB-y)):(m=this[gA]>>(tA-=y)&p,tA<=0&&(tA+=this.DB,--gA)),m>0&&(q=!0),q&&(Z+=B(m));return q?Z:"0"}function N(){var l=C();return g.ZERO.subTo(this,l),l}function J(){return this.s<0?this.negate():this}function O(l){var y=this.s-l.s;if(y!=0)return y;var p=this.t;if(y=p-l.t,y!=0)return this.s<0?-y:y;for(;--p>=0;)if((y=this[p]-l[p])!=0)return y;return 0}function b(l){var y=1,p;return(p=l>>>16)!=0&&(l=p,y+=16),(p=l>>8)!=0&&(l=p,y+=8),(p=l>>4)!=0&&(l=p,y+=4),(p=l>>2)!=0&&(l=p,y+=2),(p=l>>1)!=0&&(l=p,y+=1),y}function AA(){return this.t<=0?0:this.DB*(this.t-1)+b(this[this.t-1]^this.s&this.DM)}function W(l,y){var p;for(p=this.t-1;p>=0;--p)y[p+l]=this[p];for(p=l-1;p>=0;--p)y[p]=0;y.t=this.t+l,y.s=this.s}function j(l,y){for(var p=l;p=0;--tA)y[tA+Z+1]=this[tA]>>m|gA,gA=(this[tA]&q)<=0;--tA)y[tA]=0;y[Z]=gA,y.t=this.t+Z+1,y.s=this.s,y.clamp()}function oA(l,y){y.s=this.s;var p=Math.floor(l/this.DB);if(p>=this.t){y.t=0;return}var m=l%this.DB,q=this.DB-m,Z=(1<>m;for(var gA=p+1;gA>m;m>0&&(y[this.t-p-1]|=(this.s&Z)<>=this.DB;if(l.t>=this.DB;m+=this.s}else{for(m+=this.s;p>=this.DB;m-=l.s}y.s=m<0?-1:0,m<-1?y[p++]=this.DV+m:m>0&&(y[p++]=m),y.t=p,y.clamp()}function sA(l,y){var p=this.abs(),m=l.abs(),q=p.t;for(y.t=q+m.t;--q>=0;)y[q]=0;for(q=0;q=0;)l[p]=0;for(p=0;p=y.DV&&(l[p+y.t]-=y.DV,l[p+y.t+1]=1)}l.t>0&&(l[l.t-1]+=y.am(p,y[p],l,2*p,0,1)),l.s=0,l.clamp()}function DA(l,y,p){var m=l.abs();if(!(m.t<=0)){var q=this.abs();if(q.t0?(m.lShiftTo(JA,Z),q.lShiftTo(JA,p)):(m.copyTo(Z),q.copyTo(p));var zA=Z.t,be=Z[zA-1];if(be!=0){var me=be*(1<1?Z[zA-2]>>this.F2:0),pg=this.FV/me,XC=(1<=0&&(p[p.t++]=1,p.subTo(Hg,p)),g.ONE.dlShiftTo(zA,Hg),Hg.subTo(Z,Z);Z.t=0;){var Zi=p[--eg]==be?this.DM:Math.floor(p[eg]*pg+(p[eg-1]+Ag)*XC);if((p[eg]+=Z.am(0,Zi,p,_C,0,zA))0&&p.rShiftTo(JA,p),gA<0&&g.ZERO.subTo(p,p)}}}function T(l){var y=C();return this.abs().divRemTo(l,null,y),this.s<0&&y.compareTo(g.ZERO)>0&&l.subTo(y,y),y}function z(l){this.m=l}function Y(l){return l.s<0||l.compareTo(this.m)>=0?l.mod(this.m):l}function QA(l){return l}function hA(l){l.divRemTo(this.m,null,l)}function uA(l,y,p){l.multiplyTo(y,p),this.reduce(p)}function aA(l,y){l.squareTo(y),this.reduce(y)}z.prototype.convert=Y,z.prototype.revert=QA,z.prototype.reduce=hA,z.prototype.mulTo=uA,z.prototype.sqrTo=aA;function lA(){if(this.t<1)return 0;var l=this[0];if(!(l&1))return 0;var y=l&3;return y=y*(2-(l&15)*y)&15,y=y*(2-(l&255)*y)&255,y=y*(2-((l&65535)*y&65535))&65535,y=y*(2-l*y%this.DV)%this.DV,y>0?this.DV-y:-y}function fA(l){this.m=l,this.mp=l.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(y,y),y}function xA(l){var y=C();return l.copyTo(y),this.reduce(y),y}function ie(l){for(;l.t<=this.mt2;)l[l.t++]=0;for(var y=0;y>15)*this.mpl&this.um)<<15)&l.DM;for(p=y+this.m.t,l[p]+=this.m.am(0,m,l,y,0,this.m.t);l[p]>=l.DV;)l[p]-=l.DV,l[++p]++}l.clamp(),l.drShiftTo(this.m.t,l),l.compareTo(this.m)>=0&&l.subTo(this.m,l)}function VA(l,y){l.squareTo(y),this.reduce(y)}function je(l,y,p){l.multiplyTo(y,p),this.reduce(p)}fA.prototype.convert=te,fA.prototype.revert=xA,fA.prototype.reduce=ie,fA.prototype.mulTo=je,fA.prototype.sqrTo=VA;function MA(){return(this.t>0?this[0]&1:this.s)==0}function ze(l,y){if(l>4294967295||l<1)return g.ONE;var p=C(),m=C(),q=y.convert(this),Z=b(l)-1;for(q.copyTo(p);--Z>=0;)if(y.sqrTo(p,m),(l&1<0)y.mulTo(m,q,p);else{var gA=p;p=m,m=gA}return y.revert(p)}function Re(l,y){var p;return l<256||y.isEven()?p=new z(y):p=new fA(y),this.exp(l,p)}g.prototype.copyTo=n,g.prototype.fromInt=D,g.prototype.fromString=S,g.prototype.clamp=k,g.prototype.dlShiftTo=W,g.prototype.drShiftTo=j,g.prototype.lShiftTo=iA,g.prototype.rShiftTo=oA,g.prototype.subTo=rA,g.prototype.multiplyTo=sA,g.prototype.squareTo=eA,g.prototype.divRemTo=DA,g.prototype.invDigit=lA,g.prototype.isEven=MA,g.prototype.exp=ze,g.prototype.toString=M,g.prototype.negate=N,g.prototype.abs=J,g.prototype.compareTo=O,g.prototype.bitLength=AA,g.prototype.mod=T,g.prototype.modPowInt=Re,g.ZERO=f(0),g.ONE=f(1);function Jg(){var l=C();return this.copyTo(l),l}function Eg(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function eI(){return this.t==0?this.s:this[0]<<16>>16}function gI(l){return Math.floor(Math.LN2*this.DB/Math.log(l))}function Ke(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function II(l){if(l==null&&(l=10),this.signum()==0||l<2||l>36)return"0";var y=this.chunkSize(l),p=Math.pow(l,y),m=f(p),q=C(),Z=C(),gA="";for(this.divRemTo(m,q,Z);q.signum()>0;)gA=(p+Z.intValue()).toString(l).substr(1)+gA,q.divRemTo(m,q,Z);return Z.intValue().toString(l)+gA}function dg(l,y){this.fromInt(0),y==null&&(y=10);for(var p=this.chunkSize(y),m=Math.pow(y,p),q=!1,Z=0,gA=0,tA=0;tA=p&&(this.dMultiply(m),this.dAddOffset(gA,0),Z=0,gA=0)}Z>0&&(this.dMultiply(Math.pow(y,Z)),this.dAddOffset(gA,0)),q&&g.ZERO.subTo(this,this)}function pA(l,y,p){if(typeof y=="number")if(l<2)this.fromInt(1);else for(this.fromNumber(l,p),this.testBit(l-1)||this.bitwiseTo(g.ONE.shiftLeft(l-1),V,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(y);)this.dAddOffset(2,0),this.bitLength()>l&&this.subTo(g.ONE.shiftLeft(l-1),this);else{var m=new Array,q=l&7;m.length=(l>>3)+1,y.nextBytes(m),q>0?m[0]&=(1<0)for(p>p)!=(this.s&this.DM)>>p&&(y[q++]=m|this.s<=0;)p<8?(m=(this[l]&(1<>(p+=this.DB-8)):(m=this[l]>>(p-=8)&255,p<=0&&(p+=this.DB,--l)),m&128&&(m|=-256),q==0&&(this.s&128)!=(m&128)&&++q,(q>0||m!=this.s)&&(y[q++]=m);return y}function nA(l){return this.compareTo(l)==0}function LA(l){return this.compareTo(l)<0?this:l}function mA(l){return this.compareTo(l)>0?this:l}function G(l,y,p){var m,q,Z=Math.min(l.t,this.t);for(m=0;m>=16,y+=16),l&255||(l>>=8,y+=8),l&15||(l>>=4,y+=4),l&3||(l>>=2,y+=2),l&1||++y,y}function _(){for(var l=0;l=this.t?this.s!=0:(this[y]&1<>=this.DB;if(l.t>=this.DB;m+=this.s}else{for(m+=this.s;p>=this.DB;m+=l.s}y.s=m<0?-1:0,m>0?y[p++]=m:m<-1&&(y[p++]=this.DV+m),y.t=p,y.clamp()}function X(l){var y=C();return this.addTo(l,y),y}function CA(l){var y=C();return this.subTo(l,y),y}function SA(l){var y=C();return this.multiplyTo(l,y),y}function WA(){var l=C();return this.squareTo(l),l}function Fg(l){var y=C();return this.divRemTo(l,y,null),y}function Kg(l){var y=C();return this.divRemTo(l,null,y),y}function VC(l){var y=C(),p=C();return this.divRemTo(l,y,p),new Array(y,p)}function WC(l){this[this.t]=this.am(0,l-1,this,0,0,this.t),++this.t,this.clamp()}function He(l,y){if(l!=0){for(;this.t<=y;)this[this.t++]=0;for(this[y]+=l;this[y]>=this.DV;)this[y]-=this.DV,++y>=this.t&&(this[this.t++]=0),++this[y]}}function oC(){}function Ar(l){return l}function ID(l,y,p){l.multiplyTo(y,p)}function CD(l,y){l.squareTo(y)}oC.prototype.convert=Ar,oC.prototype.revert=Ar,oC.prototype.mulTo=ID,oC.prototype.sqrTo=CD;function tD(l){return this.exp(l,new oC)}function iD(l,y,p){var m=Math.min(this.t+l.t,y);for(p.s=0,p.t=m;m>0;)p[--m]=0;var q;for(q=p.t-this.t;m=0;)p[m]=0;for(m=Math.max(y-this.t,0);m2*this.m.t)return l.mod(this.m);if(l.compareTo(this.m)<0)return l;var y=C();return l.copyTo(y),this.reduce(y),y}function ED(l){return l}function rD(l){for(l.drShiftTo(this.m.t-1,this.r2),l.t>this.m.t+1&&(l.t=this.m.t+1,l.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);l.compareTo(this.r2)<0;)l.dAddOffset(1,this.m.t+1);for(l.subTo(this.r2,l);l.compareTo(this.m)>=0;)l.subTo(this.m,l)}function sD(l,y){l.squareTo(y),this.reduce(y)}function nD(l,y,p){l.multiplyTo(y,p),this.reduce(p)}CI.prototype.convert=QD,CI.prototype.revert=ED,CI.prototype.reduce=rD,CI.prototype.mulTo=nD,CI.prototype.sqrTo=sD;function oD(l,y){var p=l.bitLength(),m,q=f(1),Z;if(p<=0)return q;p<18?m=1:p<48?m=3:p<144?m=4:p<768?m=5:m=6,p<8?Z=new z(y):y.isEven()?Z=new CI(y):Z=new fA(y);var gA=new Array,tA=3,JA=m-1,zA=(1<1){var be=C();for(Z.sqrTo(gA[1],be);tA<=zA;)gA[tA]=C(),Z.mulTo(be,gA[tA-2],gA[tA]),tA+=2}var me=l.t-1,pg,XC=!0,Ag=C(),eg;for(p=b(l[me])-1;me>=0;){for(p>=JA?pg=l[me]>>p-JA&zA:(pg=(l[me]&(1<0&&(pg|=l[me-1]>>this.DB+p-JA)),tA=m;!(pg&1);)pg>>=1,--tA;if((p-=tA)<0&&(p+=this.DB,--me),XC)gA[pg].copyTo(q),XC=!1;else{for(;tA>1;)Z.sqrTo(q,Ag),Z.sqrTo(Ag,q),tA-=2;tA>0?Z.sqrTo(q,Ag):(eg=q,q=Ag,Ag=eg),Z.mulTo(Ag,gA[pg],q)}for(;me>=0&&!(l[me]&1<0&&(y.rShiftTo(Z,y),p.rShiftTo(Z,p));y.signum()>0;)(q=y.getLowestSetBit())>0&&y.rShiftTo(q,y),(q=p.getLowestSetBit())>0&&p.rShiftTo(q,p),y.compareTo(p)>=0?(y.subTo(p,y),y.rShiftTo(1,y)):(p.subTo(y,p),p.rShiftTo(1,p));return Z>0&&p.lShiftTo(Z,p),p}function uD(l){if(l<=0)return 0;var y=this.DV%l,p=this.s<0?l-1:0;if(this.t>0)if(y==0)p=this[0]%l;else for(var m=this.t-1;m>=0;--m)p=(y*p+this[m])%l;return p}function cD(l){var y=l.isEven();if(this.isEven()&&y||l.signum()==0)return g.ZERO;for(var p=l.clone(),m=this.clone(),q=f(1),Z=f(0),gA=f(0),tA=f(1);p.signum()!=0;){for(;p.isEven();)p.rShiftTo(1,p),y?((!q.isEven()||!Z.isEven())&&(q.addTo(this,q),Z.subTo(l,Z)),q.rShiftTo(1,q)):Z.isEven()||Z.subTo(l,Z),Z.rShiftTo(1,Z);for(;m.isEven();)m.rShiftTo(1,m),y?((!gA.isEven()||!tA.isEven())&&(gA.addTo(this,gA),tA.subTo(l,tA)),gA.rShiftTo(1,gA)):tA.isEven()||tA.subTo(l,tA),tA.rShiftTo(1,tA);p.compareTo(m)>=0?(p.subTo(m,p),y&&q.subTo(gA,q),Z.subTo(tA,Z)):(m.subTo(p,m),y&&gA.subTo(q,gA),tA.subTo(Z,tA))}if(m.compareTo(g.ONE)!=0)return g.ZERO;if(tA.compareTo(l)>=0)return tA.subtract(l);if(tA.signum()<0)tA.addTo(l,tA);else return tA;return tA.signum()<0?tA.add(l):tA}var ce=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],DD=(1<<26)/ce[ce.length-1];function hD(l){var y,p=this.abs();if(p.t==1&&p[0]<=ce[ce.length-1]){for(y=0;y>1,l>ce.length&&(l=ce.length);for(var q=C(),Z=0;Z>8&255,Ge[jA++]^=l>>16&255,Ge[jA++]^=l>>24&255,jA>=Wi&&(jA-=Wi)}function er(){wD(new Date().getTime())}if(Ge==null){Ge=new Array,jA=0;var $e;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var gr=new Uint8Array(32);for(window.crypto.getRandomValues(gr),$e=0;$e<32;++$e)Ge[jA++]=gr[$e]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var Ir=window.crypto.random(32);for($e=0;$e>>8,Ge[jA++]=$e&255;jA=0,er()}function fD(){if(ZC==null){for(er(),ZC=pD(),ZC.init(Ge),jA=0;jA{"use strict";(function(){"use strict";var I={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function A(Q){return g(t(Q),arguments)}function e(Q,u){return A.apply(null,[Q].concat(u||[]))}function g(Q,u){var c=1,h=Q.length,r,a="",s,i,B,E,n,D,f,S;for(s=0;s=0),B.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,B.width?parseInt(B.width):0);break;case"e":r=B.precision?parseFloat(r).toExponential(B.precision):parseFloat(r).toExponential();break;case"f":r=B.precision?parseFloat(r).toFixed(B.precision):parseFloat(r);break;case"g":r=B.precision?String(Number(r.toPrecision(B.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=B.precision?r.substring(0,B.precision):r;break;case"t":r=String(!!r),r=B.precision?r.substring(0,B.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=B.precision?r.substring(0,B.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=B.precision?r.substring(0,B.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase();break}I.json.test(B.type)?a+=r:(I.number.test(B.type)&&(!f||B.sign)?(S=f?"+":"-",r=r.toString().replace(I.sign,"")):S="",n=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",D=B.width-(S+r).length,E=B.width&&D>0?n.repeat(D):"",a+=B.align?S+r+E:n==="0"?S+E+r:E+S+r)}return a}var C=Object.create(null);function t(Q){if(C[Q])return C[Q];for(var u=Q,c,h=[],r=0;u;){if((c=I.text.exec(u))!==null)h.push(c[0]);else if((c=I.modulo.exec(u))!==null)h.push("%");else if((c=I.placeholder.exec(u))!==null){if(c[2]){r|=1;var a=[],s=c[2],i=[];if((i=I.key.exec(s))!==null)for(a.push(i[1]);(s=s.substring(i[0].length))!=="";)if((i=I.key_access.exec(s))!==null)a.push(i[1]);else if((i=I.index_access.exec(s))!==null)a.push(i[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");c[2]=a}else r|=2;if(r===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");h.push({placeholder:c[0],param_no:c[1],keys:c[2],sign:c[3],pad_char:c[4],align:c[5],width:c[6],precision:c[7],type:c[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");u=u.substring(c[0].length)}return C[Q]=h}typeof rt<"u"&&(rt.sprintf=A,rt.vsprintf=e),typeof window<"u"&&(window.sprintf=A,window.vsprintf=e,typeof define=="function"&&define.amd&&define(function(){return{sprintf:A,vsprintf:e}}))})()});var DB=U(ng=>{"use strict";var gl=ng&&ng.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Il=ng&&ng.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),zr=ng&&ng.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&gl(A,I,e);return Il(A,I),A};Object.defineProperty(ng,"__esModule",{value:!0});ng.Address4=void 0;var _r=zr(nB()),gg=zr(oB()),jr=Qt(),hC=uB(),MI=DC(),cB=class I{constructor(A){this.groups=gg.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=_r.isCorrect(gg.BITS),this.isInSubnet=_r.isInSubnet,this.address=A;let e=gg.RE_SUBNET_STRING.exec(A);if(e){if(this.parsedSubnet=e[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>gg.BITS)throw new jr.AddressError("Invalid subnet mask.");A=A.replace(gg.RE_SUBNET_STRING,"")}this.addressMinusSuffix=A,this.parsedAddress=this.parse(A)}static isValid(A){try{return new I(A),!0}catch{return!1}}parse(A){let e=A.split(".");if(!A.match(gg.RE_ADDRESS))throw new jr.AddressError("Invalid IPv4 address.");return e}correctForm(){return this.parsedAddress.map(A=>parseInt(A,10)).join(".")}static fromHex(A){let e=A.replace(/:/g,"").padStart(8,"0"),g=[],C;for(C=0;C<8;C+=2){let t=e.slice(C,C+2);g.push(parseInt(t,16))}return new I(g.join("."))}static fromInteger(A){return I.fromHex(A.toString(16))}static fromArpa(A){let g=A.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new I(g)}toHex(){return this.parsedAddress.map(A=>(0,MI.sprintf)("%02x",parseInt(A,10))).join(":")}toArray(){return this.parsedAddress.map(A=>parseInt(A,10))}toGroup6(){let A=[],e;for(e=0;e(0,MI.sprintf)("%02x",parseInt(A,10))).join(""),16)}_startAddress(){return new hC.BigInteger(this.mask()+"0".repeat(gg.BITS-this.subnetMask),2)}startAddress(){return I.fromBigInteger(this._startAddress())}startAddressExclusive(){let A=new hC.BigInteger("1");return I.fromBigInteger(this._startAddress().add(A))}_endAddress(){return new hC.BigInteger(this.mask()+"1".repeat(gg.BITS-this.subnetMask),2)}endAddress(){return I.fromBigInteger(this._endAddress())}endAddressExclusive(){let A=new hC.BigInteger("1");return I.fromBigInteger(this._endAddress().subtract(A))}static fromBigInteger(A){return I.fromInteger(parseInt(A.toString(),10))}mask(A){return A===void 0&&(A=this.subnetMask),this.getBitsBase2(0,A)}getBitsBase2(A,e){return this.binaryZeroPad().slice(A,e)}reverseForm(A){A||(A={});let e=this.correctForm().split(".").reverse().join(".");return A.omitSuffix?e:(0,MI.sprintf)("%s.in-addr.arpa.",e)}isMulticast(){return this.isInSubnet(new I("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(gg.BITS,"0")}groupForV6(){let A=this.parsedAddress;return this.address.replace(gg.RE_ADDRESS,(0,MI.sprintf)('%s.%s',A.slice(0,2).join("."),A.slice(2,4).join(".")))}};ng.Address4=cB});var hB=U(PA=>{"use strict";Object.defineProperty(PA,"__esModule",{value:!0});PA.RE_URL_WITH_PORT=PA.RE_URL=PA.RE_ZONE_STRING=PA.RE_SUBNET_STRING=PA.RE_BAD_ADDRESS=PA.RE_BAD_CHARACTERS=PA.TYPES=PA.SCOPES=PA.GROUPS=PA.BITS=void 0;PA.BITS=128;PA.GROUPS=8;PA.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};PA.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};PA.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;PA.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;PA.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;PA.RE_ZONE_STRING=/%.*$/;PA.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);PA.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var lB=U(og=>{"use strict";Object.defineProperty(og,"__esModule",{value:!0});og.simpleGroup=og.spanLeadingZeroes=og.spanAll=og.spanAllZeroes=void 0;var $r=DC();function As(I){return I.replace(/(0+)/g,'$1')}og.spanAllZeroes=As;function Cl(I,A=0){return I.split("").map((g,C)=>(0,$r.sprintf)('%s',g,C+A,As(g))).join("")}og.spanAll=Cl;function es(I){return I.replace(/^(0+)/,'$1')}function tl(I){return I.split(":").map(e=>es(e)).join(":")}og.spanLeadingZeroes=tl;function il(I,A=0){return I.split(":").map((g,C)=>/group-v4/.test(g)?g:(0,$r.sprintf)('%s',C+A,es(g)))}og.simpleGroup=il});var gs=U(Ae=>{"use strict";var Bl=Ae&&Ae.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Ql=Ae&&Ae.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),El=Ae&&Ae.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Bl(A,I,e);return Ql(A,I),A};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.possibleElisions=Ae.simpleRegularExpression=Ae.ADDRESS_BOUNDARY=Ae.padGroup=Ae.groupPossibilities=void 0;var rl=El(hB()),GI=DC();function nt(I){return(0,GI.sprintf)("(%s)",I.join("|"))}Ae.groupPossibilities=nt;function st(I){return I.length<4?(0,GI.sprintf)("0{0,%d}%s",4-I.length,I):I}Ae.padGroup=st;Ae.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function sl(I){let A=[];I.forEach((g,C)=>{parseInt(g,16)===0&&A.push(C)});let e=A.map(g=>I.map((C,t)=>{if(t===g){let Q=t===0||t===rl.GROUPS-1?":":"";return nt([st(C),Q])}return st(C)}).join(":"));return e.push(I.map(st).join(":")),nt(e)}Ae.simpleRegularExpression=sl;function nl(I,A,e){let g=A?"":":",C=e?"":":",t=[];!A&&!e&&t.push("::"),A&&e&&t.push(""),(e&&!A||!e&&A)&&t.push(":"),t.push((0,GI.sprintf)("%s(:0{1,4}){1,%d}",g,I-1)),t.push((0,GI.sprintf)("(0{1,4}:){1,%d}%s",I-1,C)),t.push((0,GI.sprintf)("(0{1,4}:){%d}0{1,4}",I-1));for(let Q=1;Q{"use strict";var ol=ag&&ag.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),al=ag&&ag.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),at=ag&&ag.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&ol(A,I,e);return al(A,I),A};Object.defineProperty(ag,"__esModule",{value:!0});ag.Address6=void 0;var Is=at(nB()),wB=at(oB()),UA=at(hB()),fB=at(lB()),BI=DB(),QI=gs(),Rg=Qt(),De=uB(),he=DC();function ot(I){if(!I)throw new Error("Assertion failed.")}function ul(I){let A=/(\d+)(\d{3})/;for(;A.test(I);)I=I.replace(A,"$1,$2");return I}function cl(I){return I=I.replace(/^(0{1,})([1-9]+)$/,'$1$2'),I=I.replace(/^(0{1,})(0)$/,'$1$2'),I}function Dl(I,A){let e=[],g=[],C;for(C=0;CA[1]&&g.push(I[C]);return e.concat(["compact"]).concat(g)}function Cs(I){return(0,he.sprintf)("%04x",parseInt(I,16))}function ts(I){return I&255}var yB=class I{constructor(A,e){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=Is.isInSubnet,this.isCorrect=Is.isCorrect(UA.BITS),e===void 0?this.groups=UA.GROUPS:this.groups=e,this.address=A;let g=UA.RE_SUBNET_STRING.exec(A);if(g){if(this.parsedSubnet=g[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>UA.BITS)throw new Rg.AddressError("Invalid subnet mask.");A=A.replace(UA.RE_SUBNET_STRING,"")}else if(/\//.test(A))throw new Rg.AddressError("Invalid subnet mask.");let C=UA.RE_ZONE_STRING.exec(A);C&&(this.zone=C[0],A=A.replace(UA.RE_ZONE_STRING,"")),this.addressMinusSuffix=A,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(A){try{return new I(A),!0}catch{return!1}}static fromBigInteger(A){let e=A.toString(16).padStart(32,"0"),g=[],C;for(C=0;C65536)&&(g=null)):g=null,{address:new I(e),port:g}}static fromAddress4(A){let e=new BI.Address4(A),g=UA.BITS-(wB.BITS-e.subnetMask);return new I(`::ffff:${e.correctForm()}/${g}`)}static fromArpa(A){let e=A.replace(/(\.ip6\.arpa)?\.$/,""),g=7;if(e.length!==63)throw new Rg.AddressError("Invalid 'ip6.arpa' form.");let C=e.split(".").reverse();for(let t=g;t>0;t--){let Q=t*4;C.splice(Q,0,":")}return e=C.join(""),new I(e)}microsoftTranscription(){return(0,he.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(A=this.subnetMask){return this.getBitsBase2(0,A)}possibleSubnets(A=128){let e=UA.BITS-this.subnetMask,g=Math.abs(A-UA.BITS),C=e-g;return C<0?"0":ul(new De.BigInteger("2",10).pow(C).toString(10))}_startAddress(){return new De.BigInteger(this.mask()+"0".repeat(UA.BITS-this.subnetMask),2)}startAddress(){return I.fromBigInteger(this._startAddress())}startAddressExclusive(){let A=new De.BigInteger("1");return I.fromBigInteger(this._startAddress().add(A))}_endAddress(){return new De.BigInteger(this.mask()+"1".repeat(UA.BITS-this.subnetMask),2)}endAddress(){return I.fromBigInteger(this._endAddress())}endAddressExclusive(){let A=new De.BigInteger("1");return I.fromBigInteger(this._endAddress().subtract(A))}getScope(){let A=UA.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&A!=="Link local"&&(A="Global"),A||"Unknown"}getType(){for(let A of Object.keys(UA.TYPES))if(this.isInSubnet(new I(A)))return UA.TYPES[A];return"Global unicast"}getBits(A,e){return new De.BigInteger(this.getBitsBase2(A,e),2)}getBitsBase2(A,e){return this.binaryZeroPad().slice(A,e)}getBitsBase16(A,e){let g=e-A;if(g%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(A,e).toString(16).padStart(g/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,UA.BITS)}reverseForm(A){A||(A={});let e=Math.floor(this.subnetMask/4),g=this.canonicalForm().replace(/:/g,"").split("").slice(0,e).reverse().join(".");return e>0?A.omitSuffix?g:(0,he.sprintf)("%s.ip6.arpa.",g):A.omitSuffix?"":"ip6.arpa."}correctForm(){let A,e=[],g=0,C=[];for(A=0;A0&&(g>1&&C.push([A-g,A-1]),g=0)}g>1&&C.push([this.parsedAddress.length-g,this.parsedAddress.length-1]);let t=C.map(u=>u[1]-u[0]+1);if(C.length>0){let u=t.indexOf(Math.max(...t));e=Dl(this.parsedAddress,C[u])}else e=this.parsedAddress;for(A=0;A1?"s":"",e.join("")),A.replace(UA.RE_BAD_CHARACTERS,'$1'));let g=A.match(UA.RE_BAD_ADDRESS);if(g)throw new Rg.AddressError((0,he.sprintf)("Address failed regex: %s",g.join("")),A.replace(UA.RE_BAD_ADDRESS,'$1'));let C=[],t=A.split("::");if(t.length===2){let Q=t[0].split(":"),u=t[1].split(":");Q.length===1&&Q[0]===""&&(Q=[]),u.length===1&&u[0]===""&&(u=[]);let c=this.groups-(Q.length+u.length);if(!c)throw new Rg.AddressError("Error parsing groups");this.elidedGroups=c,this.elisionBegin=Q.length,this.elisionEnd=Q.length+this.elidedGroups,C=C.concat(Q);for(let h=0;h(0,he.sprintf)("%x",parseInt(Q,16))),C.length!==this.groups)throw new Rg.AddressError("Incorrect number of groups found");return C}canonicalForm(){return this.parsedAddress.map(Cs).join(":")}decimal(){return this.parsedAddress.map(A=>(0,he.sprintf)("%05d",parseInt(A,16))).join(":")}bigInteger(){return new De.BigInteger(this.parsedAddress.map(Cs).join(""),16)}to4(){let A=this.binaryZeroPad().split("");return BI.Address4.fromHex(new De.BigInteger(A.slice(96,128).join(""),2).toString(16))}to4in6(){let A=this.to4(),g=new I(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),C="";return/:$/.test(g)||(C=":"),g+C+A.address}inspectTeredo(){let A=this.getBitsBase16(0,32),e=this.getBits(80,96).xor(new De.BigInteger("ffff",16)).toString(),g=BI.Address4.fromHex(this.getBitsBase16(32,64)),C=BI.Address4.fromHex(this.getBits(96,128).xor(new De.BigInteger("ffffffff",16)).toString(16)),t=this.getBits(64,80),Q=this.getBitsBase2(64,80),u=t.testBit(15),c=t.testBit(14),h=t.testBit(8),r=t.testBit(9),a=new De.BigInteger(Q.slice(2,6)+Q.slice(8,16),2).toString(10);return{prefix:(0,he.sprintf)("%s:%s",A.slice(0,4),A.slice(4,8)),server4:g.address,client4:C.address,flags:Q,coneNat:u,microsoft:{reserved:c,universalLocal:r,groupIndividual:h,nonce:a},udpPort:e}}inspect6to4(){let A=this.getBitsBase16(0,16),e=BI.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,he.sprintf)("%s",A.slice(0,4)),gateway:e.address}}to6to4(){if(!this.is4())return null;let A=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new I(A)}toByteArray(){let A=this.bigInteger().toByteArray();return A.length===17&&A[0]===0?A.slice(1):A}toUnsignedByteArray(){return this.toByteArray().map(ts)}static fromByteArray(A){return this.fromUnsignedByteArray(A.map(ts))}static fromUnsignedByteArray(A){let e=new De.BigInteger("256",10),g=new De.BigInteger("0",10),C=new De.BigInteger("1",10);for(let t=A.length-1;t>=0;t--)g=g.add(C.multiply(new De.BigInteger(A[t].toString(10),10))),C=C.multiply(e);return I.fromBigInteger(g)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new I("2001::/32"))}is6to4(){return this.isInSubnet(new I("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(A){return A===void 0?A="":A=(0,he.sprintf)(":%s",A),(0,he.sprintf)("http://[%s]%s/",this.correctForm(),A)}link(A){A||(A={}),A.className===void 0&&(A.className=""),A.prefix===void 0&&(A.prefix="/#address="),A.v4===void 0&&(A.v4=!1);let e=this.correctForm;return A.v4&&(e=this.to4in6),A.className?(0,he.sprintf)('%2$s',A.prefix,e.call(this),A.className):(0,he.sprintf)('%2$s',A.prefix,e.call(this))}group(){if(this.elidedGroups===0)return fB.simpleGroup(this.address).join(":");ot(typeof this.elidedGroups=="number"),ot(typeof this.elisionBegin=="number");let A=[],[e,g]=this.address.split("::");e.length?A.push(...fB.simpleGroup(e)):A.push("");let C=["hover-group"];for(let t=this.elisionBegin;t',C.join(" "))),g.length?A.push(...fB.simpleGroup(g,this.elisionEnd)):A.push(""),this.is4()&&(ot(this.address4 instanceof BI.Address4),A.pop(),A.push(this.address4.groupForV6())),A.join(":")}regularExpressionString(A=!1){let e=[],g=new I(this.correctForm());if(g.elidedGroups===0)e.push((0,QI.simpleRegularExpression)(g.parsedAddress));else if(g.elidedGroups===UA.GROUPS)e.push((0,QI.possibleElisions)(UA.GROUPS));else{let C=g.address.split("::");C[0].length&&e.push((0,QI.simpleRegularExpression)(C[0].split(":"))),ot(typeof g.elidedGroups=="number"),e.push((0,QI.possibleElisions)(g.elidedGroups,C[0].length!==0,C[1].length!==0)),C[1].length&&e.push((0,QI.simpleRegularExpression)(C[1].split(":"))),e=[e.join(":")]}return A||(e=["(?=^|",QI.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...e,")(?=[^\\w\\:]|",QI.ADDRESS_BOUNDARY,"|$)"]),e.join("")}regularExpression(A=!1){return new RegExp(this.regularExpressionString(A),"i")}};ag.Address6=yB});var dB=U(re=>{"use strict";var hl=re&&re.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),ll=re&&re.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),wl=re&&re.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&hl(A,I,e);return ll(A,I),A};Object.defineProperty(re,"__esModule",{value:!0});re.v6=re.AddressError=re.Address6=re.Address4=void 0;var fl=DB();Object.defineProperty(re,"Address4",{enumerable:!0,get:function(){return fl.Address4}});var yl=is();Object.defineProperty(re,"Address6",{enumerable:!0,get:function(){return yl.Address6}});var dl=Qt();Object.defineProperty(re,"AddressError",{enumerable:!0,get:function(){return dl.AddressError}});var Fl=wl(lB());re.v6={helpers:Fl}});var ns=U(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.ipToBuffer=Pe.int32ToIpv4=Pe.ipv4ToInt32=Pe.validateSocksClientChainOptions=Pe.validateSocksClientOptions=void 0;var le=sB(),ee=EB(),pl=require("stream"),FB=dB(),Bs=require("net");function Sl(I,A=["connect","bind","associate"]){if(!ee.SocksCommand[I.command])throw new le.SocksClientError(ee.ERRORS.InvalidSocksCommand,I);if(A.indexOf(I.command)===-1)throw new le.SocksClientError(ee.ERRORS.InvalidSocksCommandForOperation,I);if(!Es(I.destination))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsDestination,I);if(!rs(I.proxy))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsProxy,I);if(Qs(I.proxy,I),I.timeout&&!ss(I.timeout))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsTimeout,I);if(I.existing_socket&&!(I.existing_socket instanceof pl.Duplex))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsExistingSocket,I)}Pe.validateSocksClientOptions=Sl;function Rl(I){if(I.command!=="connect")throw new le.SocksClientError(ee.ERRORS.InvalidSocksCommandChain,I);if(!Es(I.destination))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsDestination,I);if(!(I.proxies&&Array.isArray(I.proxies)&&I.proxies.length>=2))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsProxiesLength,I);if(I.proxies.forEach(A=>{if(!rs(A))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsProxy,I);Qs(A,I)}),I.timeout&&!ss(I.timeout))throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsTimeout,I)}Pe.validateSocksClientChainOptions=Rl;function Qs(I,A){if(I.custom_auth_method!==void 0){if(I.custom_auth_methodee.SOCKS5_CUSTOM_AUTH_END)throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsCustomAuthRange,A);if(I.custom_auth_request_handler===void 0||typeof I.custom_auth_request_handler!="function")throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,A);if(I.custom_auth_response_size===void 0)throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,A);if(I.custom_auth_response_handler===void 0||typeof I.custom_auth_response_handler!="function")throw new le.SocksClientError(ee.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,A)}}function Es(I){return I&&typeof I.host=="string"&&typeof I.port=="number"&&I.port>=0&&I.port<=65535}function rs(I){return I&&(typeof I.host=="string"||typeof I.ipaddress=="string")&&typeof I.port=="number"&&I.port>=0&&I.port<=65535&&(I.type===4||I.type===5)}function ss(I){return typeof I=="number"&&I>0}function kl(I){return new FB.Address4(I).toArray().reduce((e,g)=>(e<<8)+g,0)}Pe.ipv4ToInt32=kl;function Ml(I){let A=I>>>24&255,e=I>>>16&255,g=I>>>8&255,C=I&255;return[A,e,g,C].join(".")}Pe.int32ToIpv4=Ml;function Gl(I){if(Bs.isIPv4(I)){let A=new FB.Address4(I);return Buffer.from(A.toArray())}else if(Bs.isIPv6(I)){let A=new FB.Address6(I);return Buffer.from(A.canonicalForm().split(":").map(e=>e.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}Pe.ipToBuffer=Gl});var os=U(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.ReceiveBuffer=void 0;var pB=class{constructor(A=4096){this.buffer=Buffer.allocUnsafe(A),this.offset=0,this.originalSize=A}get length(){return this.offset}append(A){if(!Buffer.isBuffer(A))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+A.length>=this.buffer.length){let e=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+A.length)),e.copy(this.buffer)}return A.copy(this.buffer,this.offset),this.offset+=A.length}peek(A){if(A>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,A)}get(A){if(A>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let e=Buffer.allocUnsafe(A);return this.buffer.slice(0,A).copy(e),this.buffer.copyWithin(0,A,A+this.offset-A),this.offset-=A,e}};ut.ReceiveBuffer=pB});var as=U(xg=>{"use strict";var mI=xg&&xg.__awaiter||function(I,A,e,g){function C(t){return t instanceof e?t:new e(function(Q){Q(t)})}return new(e||(e=Promise))(function(t,Q){function u(r){try{h(g.next(r))}catch(a){Q(a)}}function c(r){try{h(g.throw(r))}catch(a){Q(a)}}function h(r){r.done?t(r.value):C(r.value).then(u,c)}h((g=g.apply(I,A||[])).next())})};Object.defineProperty(xg,"__esModule",{value:!0});xg.SocksClientError=xg.SocksClient=void 0;var ml=require("events"),NI=require("net"),Me=Tr(),$=EB(),Le=ns(),Nl=os(),RB=sB();Object.defineProperty(xg,"SocksClientError",{enumerable:!0,get:function(){return RB.SocksClientError}});var SB=dB(),kB=class I extends ml.EventEmitter{constructor(A){super(),this.options=Object.assign({},A),(0,Le.validateSocksClientOptions)(A),this.setState($.SocksClientState.Created)}static createConnection(A,e){return new Promise((g,C)=>{try{(0,Le.validateSocksClientOptions)(A,["connect"])}catch(Q){return typeof e=="function"?(e(Q),g(Q)):C(Q)}let t=new I(A);t.connect(A.existing_socket),t.once("established",Q=>{t.removeAllListeners(),typeof e=="function"&&e(null,Q),g(Q)}),t.once("error",Q=>{t.removeAllListeners(),typeof e=="function"?(e(Q),g(Q)):C(Q)})})}static createConnectionChain(A,e){return new Promise((g,C)=>mI(this,void 0,void 0,function*(){try{(0,Le.validateSocksClientChainOptions)(A)}catch(t){return typeof e=="function"?(e(t),g(t)):C(t)}A.randomizeChain&&(0,RB.shuffleArray)(A.proxies);try{let t;for(let Q=0;Qthis.onDataReceivedHandler(g),this.onClose=()=>this.onCloseHandler(),this.onError=g=>this.onErrorHandler(g),this.onConnect=()=>this.onConnectHandler();let e=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||$.DEFAULT_TIMEOUT);e.unref&&typeof e.unref=="function"&&e.unref(),A?this.socket=A:this.socket=new NI.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState($.SocksClientState.Connecting),this.receiveBuffer=new Nl.ReceiveBuffer,A?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",g=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let C=this.receiveBuffer.get(this.receiveBuffer.length);g.socket.emit("data",C)}g.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==$.SocksClientState.Established&&this.state!==$.SocksClientState.BoundWaitingForConnection&&this.closeSocket($.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState($.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState($.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(A){this.receiveBuffer.append(A),this.processData()}processData(){for(;this.state!==$.SocksClientState.Established&&this.state!==$.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===$.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===$.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===$.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===$.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket($.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket($.ERRORS.SocketClosed)}onErrorHandler(A){this.closeSocket(A.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(A){this.state!==$.SocksClientState.Error&&(this.setState($.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new RB.SocksClientError(A,this.options)))}sendSocks4InitialHandshake(){let A=this.options.proxy.userId||"",e=new Me.SmartBuffer;e.writeUInt8(4),e.writeUInt8($.SocksCommand[this.options.command]),e.writeUInt16BE(this.options.destination.port),NI.isIPv4(this.options.destination.host)?(e.writeBuffer((0,Le.ipToBuffer)(this.options.destination.host)),e.writeStringNT(A)):(e.writeUInt8(0),e.writeUInt8(0),e.writeUInt8(0),e.writeUInt8(1),e.writeStringNT(A),e.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=$.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(e.toBuffer())}handleSocks4FinalHandshakeResponse(){let A=this.receiveBuffer.get(8);if(A[1]!==$.Socks4Response.Granted)this.closeSocket(`${$.ERRORS.Socks4ProxyRejectedConnection} - (${$.Socks4Response[A[1]]})`);else if($.SocksCommand[this.options.command]===$.SocksCommand.bind){let e=Me.SmartBuffer.fromBuffer(A);e.readOffset=2;let g={port:e.readUInt16BE(),host:(0,Le.int32ToIpv4)(e.readUInt32BE())};g.host==="0.0.0.0"&&(g.host=this.options.proxy.ipaddress),this.setState($.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:g,socket:this.socket})}else this.setState($.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let A=this.receiveBuffer.get(8);if(A[1]!==$.Socks4Response.Granted)this.closeSocket(`${$.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${$.Socks4Response[A[1]]})`);else{let e=Me.SmartBuffer.fromBuffer(A);e.readOffset=2;let g={port:e.readUInt16BE(),host:(0,Le.int32ToIpv4)(e.readUInt32BE())};this.setState($.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:g,socket:this.socket})}}sendSocks5InitialHandshake(){let A=new Me.SmartBuffer,e=[$.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&e.push($.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&e.push(this.options.proxy.custom_auth_method),A.writeUInt8(5),A.writeUInt8(e.length);for(let g of e)A.writeUInt8(g);this.nextRequiredPacketBufferSize=$.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(A.toBuffer()),this.setState($.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let A=this.receiveBuffer.get(2);A[0]!==5?this.closeSocket($.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):A[1]===$.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket($.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):A[1]===$.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=$.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):A[1]===$.Socks5Auth.UserPass?(this.socks5ChosenAuthType=$.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):A[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket($.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let A=this.options.proxy.userId||"",e=this.options.proxy.password||"",g=new Me.SmartBuffer;g.writeUInt8(1),g.writeUInt8(Buffer.byteLength(A)),g.writeString(A),g.writeUInt8(Buffer.byteLength(e)),g.writeString(e),this.nextRequiredPacketBufferSize=$.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(g.toBuffer()),this.setState($.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return mI(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState($.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(A){return mI(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(A)})}handleSocks5AuthenticationNoAuthHandshakeResponse(A){return mI(this,void 0,void 0,function*(){return A[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(A){return mI(this,void 0,void 0,function*(){return A[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return mI(this,void 0,void 0,function*(){this.setState($.SocksClientState.ReceivedAuthenticationResponse);let A=!1;this.socks5ChosenAuthType===$.Socks5Auth.NoAuth?A=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===$.Socks5Auth.UserPass?A=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(A=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),A?this.sendSocks5CommandRequest():this.closeSocket($.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let A=new Me.SmartBuffer;A.writeUInt8(5),A.writeUInt8($.SocksCommand[this.options.command]),A.writeUInt8(0),NI.isIPv4(this.options.destination.host)?(A.writeUInt8($.Socks5HostType.IPv4),A.writeBuffer((0,Le.ipToBuffer)(this.options.destination.host))):NI.isIPv6(this.options.destination.host)?(A.writeUInt8($.Socks5HostType.IPv6),A.writeBuffer((0,Le.ipToBuffer)(this.options.destination.host))):(A.writeUInt8($.Socks5HostType.Hostname),A.writeUInt8(this.options.destination.host.length),A.writeString(this.options.destination.host)),A.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=$.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(A.toBuffer()),this.setState($.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let A=this.receiveBuffer.peek(5);if(A[0]!==5||A[1]!==$.Socks5Response.Granted)this.closeSocket(`${$.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${$.Socks5Response[A[1]]}`);else{let e=A[3],g,C;if(e===$.Socks5HostType.IPv4){let t=$.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var Ul=EI&&EI.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Ll=EI&&EI.__exportStar||function(I,A){for(var e in I)e!=="default"&&!Object.prototype.hasOwnProperty.call(A,e)&&Ul(A,I,e)};Object.defineProperty(EI,"__esModule",{value:!0});Ll(as(),EI)});var GB=U(qe=>{"use strict";var Jl=qe&&qe.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Kl=qe&&qe.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),MB=qe&&qe.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Jl(A,I,e);return Kl(A,I),A},Hl=qe&&qe.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(qe,"__esModule",{value:!0});qe.SocksProxyAgent=void 0;var bl=us(),Yl=wI(),xl=Hl(xe()),vl=MB(require("dns")),Tl=MB(require("net")),Pl=MB(require("tls")),ql=require("url"),ct=(0,xl.default)("socks-proxy-agent");function Ol(I){let A=!1,e=5,g=I.hostname,C=parseInt(I.port,10)||1080;switch(I.protocol.replace(":","")){case"socks4":A=!0,e=4;break;case"socks4a":e=4;break;case"socks5":A=!0,e=5;break;case"socks":e=5;break;case"socks5h":e=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(I.protocol)}`)}let t={host:g,port:C,type:e};return I.username&&Object.defineProperty(t,"userId",{value:decodeURIComponent(I.username),enumerable:!1}),I.password!=null&&Object.defineProperty(t,"password",{value:decodeURIComponent(I.password),enumerable:!1}),{lookup:A,proxy:t}}var Dt=class extends Yl.Agent{constructor(A,e){super(e);let g=typeof A=="string"?new ql.URL(A):A,{proxy:C,lookup:t}=Ol(g);this.shouldLookup=t,this.proxy=C,this.timeout=e?.timeout??null,this.socketOptions=e?.socketOptions??null}async connect(A,e){let{shouldLookup:g,proxy:C,timeout:t}=this;if(!e.host)throw new Error("No `host` defined!");let{host:Q}=e,{port:u,lookup:c=vl.lookup}=e;g&&(Q=await new Promise((s,i)=>{c(Q,{},(B,E)=>{B?i(B):s(E)})}));let h={proxy:C,destination:{host:Q,port:typeof u=="number"?u:parseInt(u,10)},command:"connect",timeout:t??void 0,socket_options:this.socketOptions??void 0},r=s=>{A.destroy(),a.destroy(),s&&s.destroy()};ct("Creating socks proxy connection: %o",h);let{socket:a}=await bl.SocksClient.createConnection(h);if(ct("Successfully created socks proxy connection"),t!==null&&(a.setTimeout(t),a.on("timeout",()=>r())),e.secureEndpoint){ct("Upgrading socket connection to TLS");let s=e.servername||e.host,i=Pl.connect({...Vl(e,"host","path","port"),socket:a,servername:Tl.isIP(s)?void 0:s});return i.once("error",B=>{ct("Socket TLS error",B.message),r(i)}),i}return a}};Dt.protocols=["socks","socks4","socks4a","socks5","socks5h"];qe.SocksProxyAgent=Dt;function Vl(I,...A){let e={},g;for(g in I)A.includes(g)||(e[g]=I[g]);return e}});var cs=U(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.makeDataUriToBuffer=void 0;var Wl=I=>A=>{if(A=String(A),!/^data:/i.test(A))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');A=A.replace(/\r?\n/g,"");let e=A.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let g=A.substring(5,e).split(";"),C="",t=!1,Q=g[0]||"text/plain",u=Q;for(let r=1;r{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.dataUriToBuffer=void 0;var Zl=cs();function Ds(I){if(I.byteLength===I.buffer.byteLength)return I.buffer;let A=new ArrayBuffer(I.byteLength);return new Uint8Array(A).set(I),A}function Xl(I){return Ds(Buffer.from(I,"base64"))}function _l(I){return Ds(Buffer.from(I,"ascii"))}lt.dataUriToBuffer=(0,Zl.makeDataUriToBuffer)({stringToBuffer:_l,base64ToArrayBuffer:Xl})});var lC=U(NB=>{"use strict";Object.defineProperty(NB,"__esModule",{value:!0});var mB=class extends Error{constructor(A){super(A||'Source has not been modified since the provied "cache", re-use previous results'),this.code="ENOTMODIFIED"}};NB.default=mB});var ws=U(UI=>{"use strict";var ls=UI&&UI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(UI,"__esModule",{value:!0});UI.data=void 0;var jl=ls(xe()),zl=require("stream"),$l=require("crypto"),A0=hs(),e0=ls(lC()),UB=(0,jl.default)("get-uri:data"),LB=class extends zl.Readable{constructor(A,e){super(),this.push(e),this.push(null),this.hash=A}},g0=async({href:I},{cache:A}={})=>{let e=(0,$l.createHash)("sha1");e.update(I);let g=e.digest("hex");if(UB('generated SHA1 hash for "data:" URI: %o',g),A?.hash===g)throw UB("got matching cache SHA1 hash: %o",g),new e0.default;{UB('creating Readable stream from "data:" URI buffer');let{buffer:C}=(0,A0.dataUriToBuffer)(I);return new LB(g,Buffer.from(C))}};UI.data=g0});var ge=U(JB=>{"use strict";JB.fromCallback=function(I){return Object.defineProperty(function(...A){if(typeof A[A.length-1]=="function")I.apply(this,A);else return new Promise((e,g)=>{A.push((C,t)=>C!=null?g(C):e(t)),I.apply(this,A)})},"name",{value:I.name})};JB.fromPromise=function(I){return Object.defineProperty(function(...A){let e=A[A.length-1];if(typeof e!="function")return I.apply(this,A);A.pop(),I.apply(this,A).then(g=>e(null,g),e)},"name",{value:I.name})}});var ys=U((rk,fs)=>{"use strict";var vg=require("constants"),I0=process.cwd,wt=null,C0=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return wt||(wt=I0.call(process)),wt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(KB=process.chdir,process.chdir=function(I){wt=null,KB.call(process,I)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,KB));var KB;fs.exports=t0;function t0(I){vg.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&A(I),I.lutimes||e(I),I.chown=t(I.chown),I.fchown=t(I.fchown),I.lchown=t(I.lchown),I.chmod=g(I.chmod),I.fchmod=g(I.fchmod),I.lchmod=g(I.lchmod),I.chownSync=Q(I.chownSync),I.fchownSync=Q(I.fchownSync),I.lchownSync=Q(I.lchownSync),I.chmodSync=C(I.chmodSync),I.fchmodSync=C(I.fchmodSync),I.lchmodSync=C(I.lchmodSync),I.stat=u(I.stat),I.fstat=u(I.fstat),I.lstat=u(I.lstat),I.statSync=c(I.statSync),I.fstatSync=c(I.fstatSync),I.lstatSync=c(I.lstatSync),I.chmod&&!I.lchmod&&(I.lchmod=function(r,a,s){s&&process.nextTick(s)},I.lchmodSync=function(){}),I.chown&&!I.lchown&&(I.lchown=function(r,a,s,i){i&&process.nextTick(i)},I.lchownSync=function(){}),C0==="win32"&&(I.rename=typeof I.rename!="function"?I.rename:function(r){function a(s,i,B){var E=Date.now(),n=0;r(s,i,function D(f){if(f&&(f.code==="EACCES"||f.code==="EPERM"||f.code==="EBUSY")&&Date.now()-E<6e4){setTimeout(function(){I.stat(i,function(S,k){S&&S.code==="ENOENT"?r(s,i,D):B(f)})},n),n<100&&(n+=10);return}B&&B(f)})}return Object.setPrototypeOf&&Object.setPrototypeOf(a,r),a}(I.rename)),I.read=typeof I.read!="function"?I.read:function(r){function a(s,i,B,E,n,D){var f;if(D&&typeof D=="function"){var S=0;f=function(k,M,N){if(k&&k.code==="EAGAIN"&&S<10)return S++,r.call(I,s,i,B,E,n,f);D.apply(this,arguments)}}return r.call(I,s,i,B,E,n,f)}return Object.setPrototypeOf&&Object.setPrototypeOf(a,r),a}(I.read),I.readSync=typeof I.readSync!="function"?I.readSync:function(r){return function(a,s,i,B,E){for(var n=0;;)try{return r.call(I,a,s,i,B,E)}catch(D){if(D.code==="EAGAIN"&&n<10){n++;continue}throw D}}}(I.readSync);function A(r){r.lchmod=function(a,s,i){r.open(a,vg.O_WRONLY|vg.O_SYMLINK,s,function(B,E){if(B){i&&i(B);return}r.fchmod(E,s,function(n){r.close(E,function(D){i&&i(n||D)})})})},r.lchmodSync=function(a,s){var i=r.openSync(a,vg.O_WRONLY|vg.O_SYMLINK,s),B=!0,E;try{E=r.fchmodSync(i,s),B=!1}finally{if(B)try{r.closeSync(i)}catch{}else r.closeSync(i)}return E}}function e(r){vg.hasOwnProperty("O_SYMLINK")&&r.futimes?(r.lutimes=function(a,s,i,B){r.open(a,vg.O_SYMLINK,function(E,n){if(E){B&&B(E);return}r.futimes(n,s,i,function(D){r.close(n,function(f){B&&B(D||f)})})})},r.lutimesSync=function(a,s,i){var B=r.openSync(a,vg.O_SYMLINK),E,n=!0;try{E=r.futimesSync(B,s,i),n=!1}finally{if(n)try{r.closeSync(B)}catch{}else r.closeSync(B)}return E}):r.futimes&&(r.lutimes=function(a,s,i,B){B&&process.nextTick(B)},r.lutimesSync=function(){})}function g(r){return r&&function(a,s,i){return r.call(I,a,s,function(B){h(B)&&(B=null),i&&i.apply(this,arguments)})}}function C(r){return r&&function(a,s){try{return r.call(I,a,s)}catch(i){if(!h(i))throw i}}}function t(r){return r&&function(a,s,i,B){return r.call(I,a,s,i,function(E){h(E)&&(E=null),B&&B.apply(this,arguments)})}}function Q(r){return r&&function(a,s,i){try{return r.call(I,a,s,i)}catch(B){if(!h(B))throw B}}}function u(r){return r&&function(a,s,i){typeof s=="function"&&(i=s,s=null);function B(E,n){n&&(n.uid<0&&(n.uid+=4294967296),n.gid<0&&(n.gid+=4294967296)),i&&i.apply(this,arguments)}return s?r.call(I,a,s,B):r.call(I,a,B)}}function c(r){return r&&function(a,s){var i=s?r.call(I,a,s):r.call(I,a);return i&&(i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296)),i}}function h(r){if(!r||r.code==="ENOSYS")return!0;var a=!process.getuid||process.getuid()!==0;return!!(a&&(r.code==="EINVAL"||r.code==="EPERM"))}}});var ps=U((sk,Fs)=>{"use strict";var ds=require("stream").Stream;Fs.exports=i0;function i0(I){return{ReadStream:A,WriteStream:e};function A(g,C){if(!(this instanceof A))return new A(g,C);ds.call(this);var t=this;this.path=g,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,C=C||{};for(var Q=Object.keys(C),u=0,c=Q.length;uthis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){t._read()});return}I.open(this.path,this.flags,this.mode,function(r,a){if(r){t.emit("error",r),t.readable=!1;return}t.fd=a,t.emit("open",a),t._read()})}function e(g,C){if(!(this instanceof e))return new e(g,C);ds.call(this),this.path=g,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,C=C||{};for(var t=Object.keys(C),Q=0,u=t.length;Q= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=I.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var Rs=U((nk,Ss)=>{"use strict";Ss.exports=Q0;var B0=Object.getPrototypeOf||function(I){return I.__proto__};function Q0(I){if(I===null||typeof I!="object")return I;if(I instanceof Object)var A={__proto__:B0(I)};else var A=Object.create(null);return Object.getOwnPropertyNames(I).forEach(function(e){Object.defineProperty(A,e,Object.getOwnPropertyDescriptor(I,e))}),A}});var JI=U((ok,YB)=>{"use strict";var YA=require("fs"),E0=ys(),r0=ps(),s0=Rs(),ft=require("util"),Qe,dt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Qe=Symbol.for("graceful-fs.queue"),dt=Symbol.for("graceful-fs.previous")):(Qe="___graceful-fs.queue",dt="___graceful-fs.previous");function n0(){}function Gs(I,A){Object.defineProperty(I,Qe,{get:function(){return A}})}var rI=n0;ft.debuglog?rI=ft.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(rI=function(){var I=ft.format.apply(ft,arguments);I="GFS4: "+I.split(/\n/).join(` +GFS4: `),console.error(I)});YA[Qe]||(ks=global[Qe]||[],Gs(YA,ks),YA.close=function(I){function A(e,g){return I.call(YA,e,function(C){C||Ms(),typeof g=="function"&&g.apply(this,arguments)})}return Object.defineProperty(A,dt,{value:I}),A}(YA.close),YA.closeSync=function(I){function A(e){I.apply(YA,arguments),Ms()}return Object.defineProperty(A,dt,{value:I}),A}(YA.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){rI(YA[Qe]),require("assert").equal(YA[Qe].length,0)}));var ks;global[Qe]||Gs(global,YA[Qe]);YB.exports=HB(s0(YA));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!YA.__patched&&(YB.exports=HB(YA),YA.__patched=!0);function HB(I){E0(I),I.gracefulify=HB,I.createReadStream=M,I.createWriteStream=N;var A=I.readFile;I.readFile=e;function e(b,AA,W){return typeof AA=="function"&&(W=AA,AA=null),j(b,AA,W);function j(iA,oA,rA,sA){return A(iA,oA,function(eA){eA&&(eA.code==="EMFILE"||eA.code==="ENFILE")?LI([j,[iA,oA,rA],eA,sA||Date.now(),Date.now()]):typeof rA=="function"&&rA.apply(this,arguments)})}}var g=I.writeFile;I.writeFile=C;function C(b,AA,W,j){return typeof W=="function"&&(j=W,W=null),iA(b,AA,W,j);function iA(oA,rA,sA,eA,DA){return g(oA,rA,sA,function(T){T&&(T.code==="EMFILE"||T.code==="ENFILE")?LI([iA,[oA,rA,sA,eA],T,DA||Date.now(),Date.now()]):typeof eA=="function"&&eA.apply(this,arguments)})}}var t=I.appendFile;t&&(I.appendFile=Q);function Q(b,AA,W,j){return typeof W=="function"&&(j=W,W=null),iA(b,AA,W,j);function iA(oA,rA,sA,eA,DA){return t(oA,rA,sA,function(T){T&&(T.code==="EMFILE"||T.code==="ENFILE")?LI([iA,[oA,rA,sA,eA],T,DA||Date.now(),Date.now()]):typeof eA=="function"&&eA.apply(this,arguments)})}}var u=I.copyFile;u&&(I.copyFile=c);function c(b,AA,W,j){return typeof W=="function"&&(j=W,W=0),iA(b,AA,W,j);function iA(oA,rA,sA,eA,DA){return u(oA,rA,sA,function(T){T&&(T.code==="EMFILE"||T.code==="ENFILE")?LI([iA,[oA,rA,sA,eA],T,DA||Date.now(),Date.now()]):typeof eA=="function"&&eA.apply(this,arguments)})}}var h=I.readdir;I.readdir=a;var r=/^v[0-5]\./;function a(b,AA,W){typeof AA=="function"&&(W=AA,AA=null);var j=r.test(process.version)?function(rA,sA,eA,DA){return h(rA,iA(rA,sA,eA,DA))}:function(rA,sA,eA,DA){return h(rA,sA,iA(rA,sA,eA,DA))};return j(b,AA,W);function iA(oA,rA,sA,eA){return function(DA,T){DA&&(DA.code==="EMFILE"||DA.code==="ENFILE")?LI([j,[oA,rA,sA],DA,eA||Date.now(),Date.now()]):(T&&T.sort&&T.sort(),typeof sA=="function"&&sA.call(this,DA,T))}}}if(process.version.substr(0,4)==="v0.8"){var s=r0(I);D=s.ReadStream,S=s.WriteStream}var i=I.ReadStream;i&&(D.prototype=Object.create(i.prototype),D.prototype.open=f);var B=I.WriteStream;B&&(S.prototype=Object.create(B.prototype),S.prototype.open=k),Object.defineProperty(I,"ReadStream",{get:function(){return D},set:function(b){D=b},enumerable:!0,configurable:!0}),Object.defineProperty(I,"WriteStream",{get:function(){return S},set:function(b){S=b},enumerable:!0,configurable:!0});var E=D;Object.defineProperty(I,"FileReadStream",{get:function(){return E},set:function(b){E=b},enumerable:!0,configurable:!0});var n=S;Object.defineProperty(I,"FileWriteStream",{get:function(){return n},set:function(b){n=b},enumerable:!0,configurable:!0});function D(b,AA){return this instanceof D?(i.apply(this,arguments),this):D.apply(Object.create(D.prototype),arguments)}function f(){var b=this;O(b.path,b.flags,b.mode,function(AA,W){AA?(b.autoClose&&b.destroy(),b.emit("error",AA)):(b.fd=W,b.emit("open",W),b.read())})}function S(b,AA){return this instanceof S?(B.apply(this,arguments),this):S.apply(Object.create(S.prototype),arguments)}function k(){var b=this;O(b.path,b.flags,b.mode,function(AA,W){AA?(b.destroy(),b.emit("error",AA)):(b.fd=W,b.emit("open",W))})}function M(b,AA){return new I.ReadStream(b,AA)}function N(b,AA){return new I.WriteStream(b,AA)}var J=I.open;I.open=O;function O(b,AA,W,j){return typeof W=="function"&&(j=W,W=null),iA(b,AA,W,j);function iA(oA,rA,sA,eA,DA){return J(oA,rA,sA,function(T,z){T&&(T.code==="EMFILE"||T.code==="ENFILE")?LI([iA,[oA,rA,sA,eA],T,DA||Date.now(),Date.now()]):typeof eA=="function"&&eA.apply(this,arguments)})}}return I}function LI(I){rI("ENQUEUE",I[0].name,I[1]),YA[Qe].push(I),bB()}var yt;function Ms(){for(var I=Date.now(),A=0;A2&&(YA[Qe][A][3]=I,YA[Qe][A][4]=I);bB()}function bB(){if(clearTimeout(yt),yt=void 0,YA[Qe].length!==0){var I=YA[Qe].shift(),A=I[0],e=I[1],g=I[2],C=I[3],t=I[4];if(C===void 0)rI("RETRY",A.name,e),A.apply(null,e);else if(Date.now()-C>=6e4){rI("TIMEOUT",A.name,e);var Q=e.pop();typeof Q=="function"&&Q.call(null,g)}else{var u=Date.now()-t,c=Math.max(t-C,1),h=Math.min(c*1.2,100);u>=h?(rI("RETRY",A.name,e),A.apply(null,e.concat([C]))):YA[Qe].push(I)}yt===void 0&&(yt=setTimeout(bB,0))}}});var fe=U(kg=>{"use strict";var ms=ge().fromCallback,we=JI(),o0=["access","appendFile","chmod","chown","close","copyFile","fchmod","fchown","fdatasync","fstat","fsync","ftruncate","futimes","lchmod","lchown","link","lstat","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"].filter(I=>typeof we[I]=="function");Object.assign(kg,we);o0.forEach(I=>{kg[I]=ms(we[I])});kg.exists=function(I,A){return typeof A=="function"?we.exists(I,A):new Promise(e=>we.exists(I,e))};kg.read=function(I,A,e,g,C,t){return typeof t=="function"?we.read(I,A,e,g,C,t):new Promise((Q,u)=>{we.read(I,A,e,g,C,(c,h,r)=>{if(c)return u(c);Q({bytesRead:h,buffer:r})})})};kg.write=function(I,A,...e){return typeof e[e.length-1]=="function"?we.write(I,A,...e):new Promise((g,C)=>{we.write(I,A,...e,(t,Q,u)=>{if(t)return C(t);g({bytesWritten:Q,buffer:u})})})};kg.readv=function(I,A,...e){return typeof e[e.length-1]=="function"?we.readv(I,A,...e):new Promise((g,C)=>{we.readv(I,A,...e,(t,Q,u)=>{if(t)return C(t);g({bytesRead:Q,buffers:u})})})};kg.writev=function(I,A,...e){return typeof e[e.length-1]=="function"?we.writev(I,A,...e):new Promise((g,C)=>{we.writev(I,A,...e,(t,Q,u)=>{if(t)return C(t);g({bytesWritten:Q,buffers:u})})})};typeof we.realpath.native=="function"?kg.realpath.native=ms(we.realpath.native):process.emitWarning("fs.realpath.native is not a function. Is fs being monkey-patched?","Warning","fs-extra-WARN0003")});var Us=U((uk,Ns)=>{"use strict";var a0=require("path");Ns.exports.checkPath=function(A){if(process.platform==="win32"&&/[<>:"|?*]/.test(A.replace(a0.parse(A).root,""))){let g=new Error(`Path contains invalid characters: ${A}`);throw g.code="EINVAL",g}}});var Hs=U((ck,xB)=>{"use strict";var Ls=fe(),{checkPath:Js}=Us(),Ks=I=>{let A={mode:511};return typeof I=="number"?I:{...A,...I}.mode};xB.exports.makeDir=async(I,A)=>(Js(I),Ls.mkdir(I,{mode:Ks(A),recursive:!0}));xB.exports.makeDirSync=(I,A)=>(Js(I),Ls.mkdirSync(I,{mode:Ks(A),recursive:!0}))});var Ig=U((Dk,bs)=>{"use strict";var u0=ge().fromPromise,{makeDir:c0,makeDirSync:vB}=Hs(),TB=u0(c0);bs.exports={mkdirs:TB,mkdirsSync:vB,mkdirp:TB,mkdirpSync:vB,ensureDir:TB,ensureDirSync:vB}});var Tg=U((hk,xs)=>{"use strict";var D0=ge().fromPromise,Ys=fe();function h0(I){return Ys.access(I).then(()=>!0).catch(()=>!1)}xs.exports={pathExists:D0(h0),pathExistsSync:Ys.existsSync}});var PB=U((lk,vs)=>{"use strict";var KI=fe(),l0=ge().fromPromise;async function w0(I,A,e){let g=await KI.open(I,"r+"),C=null;try{await KI.futimes(g,A,e)}finally{try{await KI.close(g)}catch(t){C=t}}if(C)throw C}function f0(I,A,e){let g=KI.openSync(I,"r+");return KI.futimesSync(g,A,e),KI.closeSync(g)}vs.exports={utimesMillis:l0(w0),utimesMillisSync:f0}});var sI=U((wk,Os)=>{"use strict";var HI=fe(),Ie=require("path"),Ts=ge().fromPromise;function y0(I,A,e){let g=e.dereference?C=>HI.stat(C,{bigint:!0}):C=>HI.lstat(C,{bigint:!0});return Promise.all([g(I),g(A).catch(C=>{if(C.code==="ENOENT")return null;throw C})]).then(([C,t])=>({srcStat:C,destStat:t}))}function d0(I,A,e){let g,C=e.dereference?Q=>HI.statSync(Q,{bigint:!0}):Q=>HI.lstatSync(Q,{bigint:!0}),t=C(I);try{g=C(A)}catch(Q){if(Q.code==="ENOENT")return{srcStat:t,destStat:null};throw Q}return{srcStat:t,destStat:g}}async function F0(I,A,e,g){let{srcStat:C,destStat:t}=await y0(I,A,g);if(t){if(wC(C,t)){let Q=Ie.basename(I),u=Ie.basename(A);if(e==="move"&&Q!==u&&Q.toLowerCase()===u.toLowerCase())return{srcStat:C,destStat:t,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(C.isDirectory()&&!t.isDirectory())throw new Error(`Cannot overwrite non-directory '${A}' with directory '${I}'.`);if(!C.isDirectory()&&t.isDirectory())throw new Error(`Cannot overwrite directory '${A}' with non-directory '${I}'.`)}if(C.isDirectory()&&qB(I,A))throw new Error(Ft(I,A,e));return{srcStat:C,destStat:t}}function p0(I,A,e,g){let{srcStat:C,destStat:t}=d0(I,A,g);if(t){if(wC(C,t)){let Q=Ie.basename(I),u=Ie.basename(A);if(e==="move"&&Q!==u&&Q.toLowerCase()===u.toLowerCase())return{srcStat:C,destStat:t,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(C.isDirectory()&&!t.isDirectory())throw new Error(`Cannot overwrite non-directory '${A}' with directory '${I}'.`);if(!C.isDirectory()&&t.isDirectory())throw new Error(`Cannot overwrite directory '${A}' with non-directory '${I}'.`)}if(C.isDirectory()&&qB(I,A))throw new Error(Ft(I,A,e));return{srcStat:C,destStat:t}}async function Ps(I,A,e,g){let C=Ie.resolve(Ie.dirname(I)),t=Ie.resolve(Ie.dirname(e));if(t===C||t===Ie.parse(t).root)return;let Q;try{Q=await HI.stat(t,{bigint:!0})}catch(u){if(u.code==="ENOENT")return;throw u}if(wC(A,Q))throw new Error(Ft(I,e,g));return Ps(I,A,t,g)}function qs(I,A,e,g){let C=Ie.resolve(Ie.dirname(I)),t=Ie.resolve(Ie.dirname(e));if(t===C||t===Ie.parse(t).root)return;let Q;try{Q=HI.statSync(t,{bigint:!0})}catch(u){if(u.code==="ENOENT")return;throw u}if(wC(A,Q))throw new Error(Ft(I,e,g));return qs(I,A,t,g)}function wC(I,A){return A.ino&&A.dev&&A.ino===I.ino&&A.dev===I.dev}function qB(I,A){let e=Ie.resolve(I).split(Ie.sep).filter(C=>C),g=Ie.resolve(A).split(Ie.sep).filter(C=>C);return e.every((C,t)=>g[t]===C)}function Ft(I,A,e){return`Cannot ${e} '${I}' to a subdirectory of itself, '${A}'.`}Os.exports={checkPaths:Ts(F0),checkPathsSync:p0,checkParentPaths:Ts(Ps),checkParentPathsSync:qs,isSrcSubdir:qB,areIdentical:wC}});var _s=U((fk,Xs)=>{"use strict";var se=fe(),fC=require("path"),{mkdirs:S0}=Ig(),{pathExists:R0}=Tg(),{utimesMillis:k0}=PB(),yC=sI();async function M0(I,A,e={}){typeof e=="function"&&(e={filter:e}),e.clobber="clobber"in e?!!e.clobber:!0,e.overwrite="overwrite"in e?!!e.overwrite:e.clobber,e.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning(`Using the preserveTimestamps option in 32-bit node is not recommended; + + see https://github.com/jprichardson/node-fs-extra/issues/269`,"Warning","fs-extra-WARN0001");let{srcStat:g,destStat:C}=await yC.checkPaths(I,A,"copy",e);if(await yC.checkParentPaths(I,g,A,"copy"),!await Ws(I,A,e))return;let Q=fC.dirname(A);await R0(Q)||await S0(Q),await Zs(C,I,A,e)}async function Ws(I,A,e){return e.filter?e.filter(I,A):!0}async function Zs(I,A,e,g){let t=await(g.dereference?se.stat:se.lstat)(A);if(t.isDirectory())return U0(t,I,A,e,g);if(t.isFile()||t.isCharacterDevice()||t.isBlockDevice())return G0(t,I,A,e,g);if(t.isSymbolicLink())return L0(I,A,e,g);throw t.isSocket()?new Error(`Cannot copy a socket file: ${A}`):t.isFIFO()?new Error(`Cannot copy a FIFO pipe: ${A}`):new Error(`Unknown file: ${A}`)}async function G0(I,A,e,g,C){if(!A)return Vs(I,e,g,C);if(C.overwrite)return await se.unlink(g),Vs(I,e,g,C);if(C.errorOnExist)throw new Error(`'${g}' already exists`)}async function Vs(I,A,e,g){if(await se.copyFile(A,e),g.preserveTimestamps){m0(I.mode)&&await N0(e,I.mode);let C=await se.stat(A);await k0(e,C.atime,C.mtime)}return se.chmod(e,I.mode)}function m0(I){return(I&128)===0}function N0(I,A){return se.chmod(I,A|128)}async function U0(I,A,e,g,C){A||await se.mkdir(g);let t=await se.readdir(e);await Promise.all(t.map(async Q=>{let u=fC.join(e,Q),c=fC.join(g,Q);if(!await Ws(u,c,C))return;let{destStat:r}=await yC.checkPaths(u,c,"copy",C);return Zs(r,u,c,C)})),A||await se.chmod(g,I.mode)}async function L0(I,A,e,g){let C=await se.readlink(A);if(g.dereference&&(C=fC.resolve(process.cwd(),C)),!I)return se.symlink(C,e);let t=null;try{t=await se.readlink(e)}catch(Q){if(Q.code==="EINVAL"||Q.code==="UNKNOWN")return se.symlink(C,e);throw Q}if(g.dereference&&(t=fC.resolve(process.cwd(),t)),yC.isSrcSubdir(C,t))throw new Error(`Cannot copy '${C}' to a subdirectory of itself, '${t}'.`);if(yC.isSrcSubdir(t,C))throw new Error(`Cannot overwrite '${t}' with '${C}'.`);return await se.unlink(e),se.symlink(C,e)}Xs.exports=M0});var en=U((yk,An)=>{"use strict";var ye=JI(),dC=require("path"),J0=Ig().mkdirsSync,K0=PB().utimesMillisSync,FC=sI();function H0(I,A,e){typeof e=="function"&&(e={filter:e}),e=e||{},e.clobber="clobber"in e?!!e.clobber:!0,e.overwrite="overwrite"in e?!!e.overwrite:e.clobber,e.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning(`Using the preserveTimestamps option in 32-bit node is not recommended; + + see https://github.com/jprichardson/node-fs-extra/issues/269`,"Warning","fs-extra-WARN0002");let{srcStat:g,destStat:C}=FC.checkPathsSync(I,A,"copy",e);if(FC.checkParentPathsSync(I,g,A,"copy"),e.filter&&!e.filter(I,A))return;let t=dC.dirname(A);return ye.existsSync(t)||J0(t),js(C,I,A,e)}function js(I,A,e,g){let t=(g.dereference?ye.statSync:ye.lstatSync)(A);if(t.isDirectory())return q0(t,I,A,e,g);if(t.isFile()||t.isCharacterDevice()||t.isBlockDevice())return b0(t,I,A,e,g);if(t.isSymbolicLink())return W0(I,A,e,g);throw t.isSocket()?new Error(`Cannot copy a socket file: ${A}`):t.isFIFO()?new Error(`Cannot copy a FIFO pipe: ${A}`):new Error(`Unknown file: ${A}`)}function b0(I,A,e,g,C){return A?Y0(I,e,g,C):zs(I,e,g,C)}function Y0(I,A,e,g){if(g.overwrite)return ye.unlinkSync(e),zs(I,A,e,g);if(g.errorOnExist)throw new Error(`'${e}' already exists`)}function zs(I,A,e,g){return ye.copyFileSync(A,e),g.preserveTimestamps&&x0(I.mode,A,e),OB(e,I.mode)}function x0(I,A,e){return v0(I)&&T0(e,I),P0(A,e)}function v0(I){return(I&128)===0}function T0(I,A){return OB(I,A|128)}function OB(I,A){return ye.chmodSync(I,A)}function P0(I,A){let e=ye.statSync(I);return K0(A,e.atime,e.mtime)}function q0(I,A,e,g,C){return A?$s(e,g,C):O0(I.mode,e,g,C)}function O0(I,A,e,g){return ye.mkdirSync(e),$s(A,e,g),OB(e,I)}function $s(I,A,e){ye.readdirSync(I).forEach(g=>V0(g,I,A,e))}function V0(I,A,e,g){let C=dC.join(A,I),t=dC.join(e,I);if(g.filter&&!g.filter(C,t))return;let{destStat:Q}=FC.checkPathsSync(C,t,"copy",g);return js(Q,C,t,g)}function W0(I,A,e,g){let C=ye.readlinkSync(A);if(g.dereference&&(C=dC.resolve(process.cwd(),C)),I){let t;try{t=ye.readlinkSync(e)}catch(Q){if(Q.code==="EINVAL"||Q.code==="UNKNOWN")return ye.symlinkSync(C,e);throw Q}if(g.dereference&&(t=dC.resolve(process.cwd(),t)),FC.isSrcSubdir(C,t))throw new Error(`Cannot copy '${C}' to a subdirectory of itself, '${t}'.`);if(FC.isSrcSubdir(t,C))throw new Error(`Cannot overwrite '${t}' with '${C}'.`);return Z0(C,e)}else return ye.symlinkSync(C,e)}function Z0(I,A){return ye.unlinkSync(A),ye.symlinkSync(I,A)}An.exports=H0});var pt=U((dk,gn)=>{"use strict";var X0=ge().fromPromise;gn.exports={copy:X0(_s()),copySync:en()}});var pC=U((Fk,Cn)=>{"use strict";var In=JI(),_0=ge().fromCallback;function j0(I,A){In.rm(I,{recursive:!0,force:!0},A)}function z0(I){In.rmSync(I,{recursive:!0,force:!0})}Cn.exports={remove:_0(j0),removeSync:z0}});var on=U((pk,nn)=>{"use strict";var $0=ge().fromPromise,Qn=fe(),En=require("path"),rn=Ig(),sn=pC(),tn=$0(async function(A){let e;try{e=await Qn.readdir(A)}catch{return rn.mkdirs(A)}return Promise.all(e.map(g=>sn.remove(En.join(A,g))))});function Bn(I){let A;try{A=Qn.readdirSync(I)}catch{return rn.mkdirsSync(I)}A.forEach(e=>{e=En.join(I,e),sn.removeSync(e)})}nn.exports={emptyDirSync:Bn,emptydirSync:Bn,emptyDir:tn,emptydir:tn}});var Dn=U((Sk,cn)=>{"use strict";var Aw=ge().fromPromise,an=require("path"),Mg=fe(),un=Ig();async function ew(I){let A;try{A=await Mg.stat(I)}catch{}if(A&&A.isFile())return;let e=an.dirname(I),g=null;try{g=await Mg.stat(e)}catch(C){if(C.code==="ENOENT"){await un.mkdirs(e),await Mg.writeFile(I,"");return}else throw C}g.isDirectory()?await Mg.writeFile(I,""):await Mg.readdir(e)}function gw(I){let A;try{A=Mg.statSync(I)}catch{}if(A&&A.isFile())return;let e=an.dirname(I);try{Mg.statSync(e).isDirectory()||Mg.readdirSync(e)}catch(g){if(g&&g.code==="ENOENT")un.mkdirsSync(e);else throw g}Mg.writeFileSync(I,"")}cn.exports={createFile:Aw(ew),createFileSync:gw}});var yn=U((Rk,fn)=>{"use strict";var Iw=ge().fromPromise,hn=require("path"),Pg=fe(),ln=Ig(),{pathExists:Cw}=Tg(),{areIdentical:wn}=sI();async function tw(I,A){let e;try{e=await Pg.lstat(A)}catch{}let g;try{g=await Pg.lstat(I)}catch(Q){throw Q.message=Q.message.replace("lstat","ensureLink"),Q}if(e&&wn(g,e))return;let C=hn.dirname(A);await Cw(C)||await ln.mkdirs(C),await Pg.link(I,A)}function iw(I,A){let e;try{e=Pg.lstatSync(A)}catch{}try{let t=Pg.lstatSync(I);if(e&&wn(t,e))return}catch(t){throw t.message=t.message.replace("lstat","ensureLink"),t}let g=hn.dirname(A);return Pg.existsSync(g)||ln.mkdirsSync(g),Pg.linkSync(I,A)}fn.exports={createLink:Iw(tw),createLinkSync:iw}});var Fn=U((kk,dn)=>{"use strict";var qg=require("path"),SC=fe(),{pathExists:Bw}=Tg(),Qw=ge().fromPromise;async function Ew(I,A){if(qg.isAbsolute(I)){try{await SC.lstat(I)}catch(t){throw t.message=t.message.replace("lstat","ensureSymlink"),t}return{toCwd:I,toDst:I}}let e=qg.dirname(A),g=qg.join(e,I);if(await Bw(g))return{toCwd:g,toDst:I};try{await SC.lstat(I)}catch(t){throw t.message=t.message.replace("lstat","ensureSymlink"),t}return{toCwd:I,toDst:qg.relative(e,I)}}function rw(I,A){if(qg.isAbsolute(I)){if(!SC.existsSync(I))throw new Error("absolute srcpath does not exist");return{toCwd:I,toDst:I}}let e=qg.dirname(A),g=qg.join(e,I);if(SC.existsSync(g))return{toCwd:g,toDst:I};if(!SC.existsSync(I))throw new Error("relative srcpath does not exist");return{toCwd:I,toDst:qg.relative(e,I)}}dn.exports={symlinkPaths:Qw(Ew),symlinkPathsSync:rw}});var Rn=U((Mk,Sn)=>{"use strict";var pn=fe(),sw=ge().fromPromise;async function nw(I,A){if(A)return A;let e;try{e=await pn.lstat(I)}catch{return"file"}return e&&e.isDirectory()?"dir":"file"}function ow(I,A){if(A)return A;let e;try{e=pn.lstatSync(I)}catch{return"file"}return e&&e.isDirectory()?"dir":"file"}Sn.exports={symlinkType:sw(nw),symlinkTypeSync:ow}});var mn=U((Gk,Gn)=>{"use strict";var aw=ge().fromPromise,kn=require("path"),ug=fe(),{mkdirs:uw,mkdirsSync:cw}=Ig(),{symlinkPaths:Dw,symlinkPathsSync:hw}=Fn(),{symlinkType:lw,symlinkTypeSync:ww}=Rn(),{pathExists:fw}=Tg(),{areIdentical:Mn}=sI();async function yw(I,A,e){let g;try{g=await ug.lstat(A)}catch{}if(g&&g.isSymbolicLink()){let[u,c]=await Promise.all([ug.stat(I),ug.stat(A)]);if(Mn(u,c))return}let C=await Dw(I,A);I=C.toDst;let t=await lw(C.toCwd,e),Q=kn.dirname(A);return await fw(Q)||await uw(Q),ug.symlink(I,A,t)}function dw(I,A,e){let g;try{g=ug.lstatSync(A)}catch{}if(g&&g.isSymbolicLink()){let u=ug.statSync(I),c=ug.statSync(A);if(Mn(u,c))return}let C=hw(I,A);I=C.toDst,e=ww(C.toCwd,e);let t=kn.dirname(A);return ug.existsSync(t)||cw(t),ug.symlinkSync(I,A,e)}Gn.exports={createSymlink:aw(yw),createSymlinkSync:dw}});var Yn=U((mk,bn)=>{"use strict";var{createFile:Nn,createFileSync:Un}=Dn(),{createLink:Ln,createLinkSync:Jn}=yn(),{createSymlink:Kn,createSymlinkSync:Hn}=mn();bn.exports={createFile:Nn,createFileSync:Un,ensureFile:Nn,ensureFileSync:Un,createLink:Ln,createLinkSync:Jn,ensureLink:Ln,ensureLinkSync:Jn,createSymlink:Kn,createSymlinkSync:Hn,ensureSymlink:Kn,ensureSymlinkSync:Hn}});var St=U((Nk,xn)=>{"use strict";function Fw(I,{EOL:A=` +`,finalEOL:e=!0,replacer:g=null,spaces:C}={}){let t=e?A:"";return JSON.stringify(I,g,C).replace(/\n/g,A)+t}function pw(I){return Buffer.isBuffer(I)&&(I=I.toString("utf8")),I.replace(/^\uFEFF/,"")}xn.exports={stringify:Fw,stripBom:pw}});var qn=U((Uk,Pn)=>{"use strict";var bI;try{bI=JI()}catch{bI=require("fs")}var Rt=ge(),{stringify:vn,stripBom:Tn}=St();async function Sw(I,A={}){typeof A=="string"&&(A={encoding:A});let e=A.fs||bI,g="throws"in A?A.throws:!0,C=await Rt.fromCallback(e.readFile)(I,A);C=Tn(C);let t;try{t=JSON.parse(C,A?A.reviver:null)}catch(Q){if(g)throw Q.message=`${I}: ${Q.message}`,Q;return null}return t}var Rw=Rt.fromPromise(Sw);function kw(I,A={}){typeof A=="string"&&(A={encoding:A});let e=A.fs||bI,g="throws"in A?A.throws:!0;try{let C=e.readFileSync(I,A);return C=Tn(C),JSON.parse(C,A.reviver)}catch(C){if(g)throw C.message=`${I}: ${C.message}`,C;return null}}async function Mw(I,A,e={}){let g=e.fs||bI,C=vn(A,e);await Rt.fromCallback(g.writeFile)(I,C,e)}var Gw=Rt.fromPromise(Mw);function mw(I,A,e={}){let g=e.fs||bI,C=vn(A,e);return g.writeFileSync(I,C,e)}var Nw={readFile:Rw,readFileSync:kw,writeFile:Gw,writeFileSync:mw};Pn.exports=Nw});var Vn=U((Lk,On)=>{"use strict";var kt=qn();On.exports={readJson:kt.readFile,readJsonSync:kt.readFileSync,writeJson:kt.writeFile,writeJsonSync:kt.writeFileSync}});var Mt=U((Jk,Xn)=>{"use strict";var Uw=ge().fromPromise,VB=fe(),Wn=require("path"),Zn=Ig(),Lw=Tg().pathExists;async function Jw(I,A,e="utf-8"){let g=Wn.dirname(I);return await Lw(g)||await Zn.mkdirs(g),VB.writeFile(I,A,e)}function Kw(I,...A){let e=Wn.dirname(I);VB.existsSync(e)||Zn.mkdirsSync(e),VB.writeFileSync(I,...A)}Xn.exports={outputFile:Uw(Jw),outputFileSync:Kw}});var jn=U((Kk,_n)=>{"use strict";var{stringify:Hw}=St(),{outputFile:bw}=Mt();async function Yw(I,A,e={}){let g=Hw(A,e);await bw(I,g,e)}_n.exports=Yw});var $n=U((Hk,zn)=>{"use strict";var{stringify:xw}=St(),{outputFileSync:vw}=Mt();function Tw(I,A,e){let g=xw(A,e);vw(I,g,e)}zn.exports=Tw});var eo=U((bk,Ao)=>{"use strict";var Pw=ge().fromPromise,de=Vn();de.outputJson=Pw(jn());de.outputJsonSync=$n();de.outputJSON=de.outputJson;de.outputJSONSync=de.outputJsonSync;de.writeJSON=de.writeJson;de.writeJSONSync=de.writeJsonSync;de.readJSON=de.readJson;de.readJSONSync=de.readJsonSync;Ao.exports=de});var io=U((Yk,to)=>{"use strict";var qw=fe(),go=require("path"),{copy:Ow}=pt(),{remove:Co}=pC(),{mkdirp:Vw}=Ig(),{pathExists:Ww}=Tg(),Io=sI();async function Zw(I,A,e={}){let g=e.overwrite||e.clobber||!1,{srcStat:C,isChangingCase:t=!1}=await Io.checkPaths(I,A,"move",e);await Io.checkParentPaths(I,C,A,"move");let Q=go.dirname(A);return go.parse(Q).root!==Q&&await Vw(Q),Xw(I,A,g,t)}async function Xw(I,A,e,g){if(!g){if(e)await Co(A);else if(await Ww(A))throw new Error("dest already exists.")}try{await qw.rename(I,A)}catch(C){if(C.code!=="EXDEV")throw C;await _w(I,A,e)}}async function _w(I,A,e){return await Ow(I,A,{overwrite:e,errorOnExist:!0,preserveTimestamps:!0}),Co(I)}to.exports=Zw});var so=U((xk,ro)=>{"use strict";var Qo=JI(),ZB=require("path"),jw=pt().copySync,Eo=pC().removeSync,zw=Ig().mkdirpSync,Bo=sI();function $w(I,A,e){e=e||{};let g=e.overwrite||e.clobber||!1,{srcStat:C,isChangingCase:t=!1}=Bo.checkPathsSync(I,A,"move",e);return Bo.checkParentPathsSync(I,C,A,"move"),Af(A)||zw(ZB.dirname(A)),ef(I,A,g,t)}function Af(I){let A=ZB.dirname(I);return ZB.parse(A).root===A}function ef(I,A,e,g){if(g)return WB(I,A,e);if(e)return Eo(A),WB(I,A,e);if(Qo.existsSync(A))throw new Error("dest already exists.");return WB(I,A,e)}function WB(I,A,e){try{Qo.renameSync(I,A)}catch(g){if(g.code!=="EXDEV")throw g;return gf(I,A,e)}}function gf(I,A,e){return jw(I,A,{overwrite:e,errorOnExist:!0,preserveTimestamps:!0}),Eo(I)}ro.exports=$w});var oo=U((vk,no)=>{"use strict";var If=ge().fromPromise;no.exports={move:If(io()),moveSync:so()}});var uo=U((Tk,ao)=>{"use strict";ao.exports={...fe(),...pt(),...on(),...Yn(),...eo(),...Ig(),...oo(),...Mt(),...Tg(),...pC()}});var Gt=U(_B=>{"use strict";Object.defineProperty(_B,"__esModule",{value:!0});var XB=class extends Error{constructor(A){super(A||"File does not exist at the specified endpoint"),this.code="ENOTFOUND"}};_B.default=XB});var Do=U(YI=>{"use strict";var jB=YI&&YI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(YI,"__esModule",{value:!0});YI.file=void 0;var Cf=jB(xe()),tf=require("fs"),co=uo(),Bf=jB(Gt()),Qf=jB(lC()),Ef=require("url"),rf=(0,Cf.default)("get-uri:file"),sf=async({href:I},A={})=>{let{cache:e,flags:g="r",mode:C=438}=A;try{let t=(0,Ef.fileURLToPath)(I);rf("Normalized pathname: %o",t);let Q=await(0,co.open)(t,g,C),u=await(0,co.fstat)(Q);if(e&&e.stat&&u&&nf(e.stat,u))throw new Qf.default;let c=(0,tf.createReadStream)(null,{autoClose:!0,...A,fd:Q});return c.stat=u,c}catch(t){throw t.code==="ENOENT"?new Bf.default:t}};YI.file=sf;function nf(I,A){return+I.mtime==+A.mtime}});var mt=U(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.positiveIntermediate=Oe.positiveCompletion=Oe.isMultiline=Oe.isSingleLine=Oe.parseControlResponse=void 0;var zB=` +`;function of(I){let A=I.split(/\r?\n/).filter(cf),e=[],g=0,C;for(let Q=0;Q=200&&I<300}Oe.positiveCompletion=af;function uf(I){return I>=300&&I<400}Oe.positiveIntermediate=uf;function cf(I){return I.trim()!==""}});var AQ=U(xI=>{"use strict";Object.defineProperty(xI,"__esModule",{value:!0});xI.FTPContext=xI.FTPError=void 0;var Df=require("net"),hf=mt(),Nt=class extends Error{constructor(A){super(A.message),this.name=this.constructor.name,this.code=A.code}};xI.FTPError=Nt;function wo(){}var $B=class{constructor(A=0,e="utf8"){this.timeout=A,this.verbose=!1,this.ipFamily=void 0,this.tlsOptions={},this._partialResponse="",this._encoding=e,this._socket=this.socket=this._newSocket(),this._dataSocket=void 0}close(){let A=this._task?"User closed client during task":"User closed client",e=new Error(A);this.closeWithError(e)}closeWithError(A){this._closingError||(this._closingError=A,this._closeControlSocket(),this._closeSocket(this._dataSocket),this._passToHandler(A),this._stopTrackingTask())}get closed(){return this.socket.remoteAddress===void 0||this._closingError!==void 0}reset(){this.socket=this._newSocket()}get socket(){return this._socket}set socket(A){this.dataSocket=void 0,this.tlsOptions={},this._partialResponse="",this._socket&&(A.localPort===this._socket.localPort?this._removeSocketListeners(this.socket):this._closeControlSocket()),A&&(this._closingError=void 0,A.setTimeout(0),A.setEncoding(this._encoding),A.setKeepAlive(!0),A.on("data",e=>this._onControlSocketData(e)),A.on("end",()=>this.closeWithError(new Error("Server sent FIN packet unexpectedly, closing connection."))),A.on("close",e=>{e||this.closeWithError(new Error("Server closed connection unexpectedly."))}),this._setupDefaultErrorHandlers(A,"control socket")),this._socket=A}get dataSocket(){return this._dataSocket}set dataSocket(A){this._closeSocket(this._dataSocket),A&&(A.setTimeout(0),this._setupDefaultErrorHandlers(A,"data socket")),this._dataSocket=A}get encoding(){return this._encoding}set encoding(A){this._encoding=A,this.socket&&this.socket.setEncoding(A)}send(A){let g=A.startsWith("PASS")?"> PASS ###":`> ${A}`;this.log(g),this._socket.write(A+`\r +`,this.encoding)}request(A){return this.handle(A,(e,g)=>{e instanceof Error?g.reject(e):g.resolve(e)})}handle(A,e){if(this._task){let g=new Error("User launched a task while another one is still running. Forgot to use 'await' or '.then()'?");g.stack+=` +Running task launched at: ${this._task.stack}`,this.closeWithError(g)}return new Promise((g,C)=>{if(this._task={stack:new Error().stack||"Unknown call stack",responseHandler:e,resolver:{resolve:t=>{this._stopTrackingTask(),g(t)},reject:t=>{this._stopTrackingTask(),C(t)}}},this._closingError){let t=new Error(`Client is closed because ${this._closingError.message}`);t.stack+=` +Closing reason: ${this._closingError.stack}`,t.code=this._closingError.code!==void 0?this._closingError.code:"0",this._passToHandler(t);return}this.socket.setTimeout(this.timeout),A&&this.send(A)})}log(A){this.verbose&&console.log(A)}get hasTLS(){return"encrypted"in this._socket}_stopTrackingTask(){this.socket.setTimeout(0),this._task=void 0}_onControlSocketData(A){this.log(`< ${A}`);let e=this._partialResponse+A,g=(0,hf.parseControlResponse)(e);this._partialResponse=g.rest;for(let C of g.messages){let t=parseInt(C.substr(0,3),10),Q={code:t,message:C},u=t>=400?new Nt(Q):void 0;this._passToHandler(u||Q)}}_passToHandler(A){this._task&&this._task.responseHandler(A,this._task.resolver)}_setupDefaultErrorHandlers(A,e){A.once("error",g=>{g.message+=` (${e})`,this.closeWithError(g)}),A.once("close",g=>{g&&this.closeWithError(new Error(`Socket closed due to transmission error (${e})`))}),A.once("timeout",()=>{A.destroy(),this.closeWithError(new Error(`Timeout (${e})`))})}_closeControlSocket(){this._removeSocketListeners(this._socket),this._socket.on("error",wo),this.send("QUIT"),this._closeSocket(this._socket)}_closeSocket(A){A&&(this._removeSocketListeners(A),A.on("error",wo),A.destroy())}_removeSocketListeners(A){A.removeAllListeners(),A.removeAllListeners("timeout"),A.removeAllListeners("data"),A.removeAllListeners("end"),A.removeAllListeners("error"),A.removeAllListeners("close"),A.removeAllListeners("connect")}_newSocket(){return new Df.Socket}};xI.FTPContext=$B});var RC=U(TI=>{"use strict";Object.defineProperty(TI,"__esModule",{value:!0});TI.FileInfo=TI.FileType=void 0;var vI;(function(I){I[I.Unknown=0]="Unknown",I[I.File=1]="File",I[I.Directory=2]="Directory",I[I.SymbolicLink=3]="SymbolicLink"})(vI||(TI.FileType=vI={}));var Ut=class{constructor(A){this.name=A,this.type=vI.Unknown,this.size=0,this.rawModifiedAt="",this.modifiedAt=void 0,this.permissions=void 0,this.hardLinkCount=void 0,this.link=void 0,this.group=void 0,this.user=void 0,this.uniqueID=void 0,this.name=A}get isDirectory(){return this.type===vI.Directory}get isSymbolicLink(){return this.type===vI.SymbolicLink}get isFile(){return this.type===vI.File}get date(){return this.rawModifiedAt}set date(A){this.rawModifiedAt=A}};TI.FileInfo=Ut;Ut.UnixPermission={Read:4,Write:2,Execute:1}});var yo=U(Og=>{"use strict";Object.defineProperty(Og,"__esModule",{value:!0});Og.transformList=Og.parseLine=Og.testLine=void 0;var eQ=RC(),fo=new RegExp("(\\S+)\\s+(\\S+)\\s+(?:()|([0-9]+))\\s+(\\S.*)");function lf(I){return/^\d{2}/.test(I)&&fo.test(I)}Og.testLine=lf;function wf(I){let A=I.match(fo);if(A===null)return;let e=A[5];if(e==="."||e==="..")return;let g=new eQ.FileInfo(e);return A[3]===""?(g.type=eQ.FileType.Directory,g.size=0):(g.type=eQ.FileType.File,g.size=parseInt(A[4],10)),g.rawModifiedAt=A[1]+" "+A[2],g}Og.parseLine=wf;function ff(I){return I}Og.transformList=ff});var po=U(Vg=>{"use strict";Object.defineProperty(Vg,"__esModule",{value:!0});Vg.transformList=Vg.parseLine=Vg.testLine=void 0;var cg=RC(),yf="\u6708",df="\u65E5",Ff="\u5E74",Fo=new RegExp("([bcdelfmpSs-])(((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-]?)))\\+?\\s*(\\d+)\\s+(?:(\\S+(?:\\s\\S+)*?)\\s+)?(?:(\\S+(?:\\s\\S+)*)\\s+)?(\\d+(?:,\\s*\\d+)?)\\s+((?:\\d+[-/]\\d+[-/]\\d+)|(?:\\S{3}\\s+\\d{1,2})|(?:\\d{1,2}\\s+\\S{3})|(?:\\d{1,2}"+yf+"\\s+\\d{1,2}"+df+"))\\s+((?:\\d+(?::\\d+)?)|(?:\\d{4}"+Ff+"))\\s(.*)");function pf(I){return Fo.test(I)}Vg.testLine=pf;function Sf(I){let A=I.match(Fo);if(A===null)return;let e=A[21];if(e==="."||e==="..")return;let g=new cg.FileInfo(e);switch(g.size=parseInt(A[18],10),g.user=A[16],g.group=A[17],g.hardLinkCount=parseInt(A[15],10),g.rawModifiedAt=A[19]+" "+A[20],g.permissions={user:gQ(A[4],A[5],A[6]),group:gQ(A[8],A[9],A[10]),world:gQ(A[12],A[13],A[14])},A[1].charAt(0)){case"d":g.type=cg.FileType.Directory;break;case"e":g.type=cg.FileType.SymbolicLink;break;case"l":g.type=cg.FileType.SymbolicLink;break;case"b":case"c":g.type=cg.FileType.File;break;case"f":case"-":g.type=cg.FileType.File;break;default:g.type=cg.FileType.Unknown}if(g.isSymbolicLink){let C=e.indexOf(" -> ");C!==-1&&(g.name=e.substring(0,C),g.link=e.substring(C+4))}return g}Vg.parseLine=Sf;function Rf(I){return I}Vg.transformList=Rf;function gQ(I,A,e){let g=0;I!=="-"&&(g+=cg.FileInfo.UnixPermission.Read),A!=="-"&&(g+=cg.FileInfo.UnixPermission.Write);let C=e.charAt(0);return C!=="-"&&C.toUpperCase()!==C&&(g+=cg.FileInfo.UnixPermission.Execute),g}});var IQ=U(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.parseMLSxDate=Dg.transformList=Dg.parseLine=Dg.testLine=void 0;var PI=RC();function So(I,A){A.size=parseInt(I,10)}var kf={size:So,sizd:So,unique:(I,A)=>{A.uniqueID=I},modify:(I,A)=>{A.modifiedAt=ko(I),A.rawModifiedAt=A.modifiedAt.toISOString()},type:(I,A)=>{if(I.startsWith("OS.unix=slink"))return A.type=PI.FileType.SymbolicLink,A.link=I.substr(I.indexOf(":")+1),1;switch(I){case"file":A.type=PI.FileType.File;break;case"dir":A.type=PI.FileType.Directory;break;case"OS.unix=symlink":A.type=PI.FileType.SymbolicLink;break;case"cdir":case"pdir":return 2;default:A.type=PI.FileType.Unknown}return 1},"unix.mode":(I,A)=>{let e=I.substr(-3);A.permissions={user:parseInt(e[0],10),group:parseInt(e[1],10),world:parseInt(e[2],10)}},"unix.ownername":(I,A)=>{A.user=I},"unix.owner":(I,A)=>{A.user===void 0&&(A.user=I)},get"unix.uid"(){return this["unix.owner"]},"unix.groupname":(I,A)=>{A.group=I},"unix.group":(I,A)=>{A.group===void 0&&(A.group=I)},get"unix.gid"(){return this["unix.group"]}};function Ro(I,A){let e=I.indexOf(A),g=I.substr(0,e),C=I.substr(e+A.length);return[g,C]}function Mf(I){return/^\S+=\S+;/.test(I)||I.startsWith(" ")}Dg.testLine=Mf;function Gf(I){let[A,e]=Ro(I," ");if(e===""||e==="."||e==="..")return;let g=new PI.FileInfo(e),C=A.split(";");for(let t of C){let[Q,u]=Ro(t,"=");if(!u)continue;let c=kf[Q.toLowerCase()];if(!c)continue;if(c(u,g)===2)return}return g}Dg.parseLine=Gf;function mf(I){let A=new Map;for(let g of I)!g.isSymbolicLink&&g.uniqueID!==void 0&&A.set(g.uniqueID,g);let e=[];for(let g of I){if(g.isSymbolicLink&&g.uniqueID!==void 0&&g.link===void 0){let t=A.get(g.uniqueID);t!==void 0&&(g.link=t.name)}!g.name.includes("/")&&e.push(g)}return e}Dg.transformList=mf;function ko(I){return new Date(Date.UTC(+I.slice(0,4),+I.slice(4,6)-1,+I.slice(6,8),+I.slice(8,10),+I.slice(10,12),+I.slice(12,14),+I.slice(15,18)))}Dg.parseMLSxDate=ko});var tQ=U(hg=>{"use strict";var Nf=hg&&hg.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Uf=hg&&hg.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),CQ=hg&&hg.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Nf(A,I,e);return Uf(A,I),A};Object.defineProperty(hg,"__esModule",{value:!0});hg.parseList=void 0;var Lf=CQ(yo()),Jf=CQ(po()),Kf=CQ(IQ()),Hf=[Lf,Jf,Kf];function bf(I,A){return A.find(e=>e.testLine(I)===!0)}function Yf(I){return I.trim()!==""}function xf(I){return!I.startsWith("total")}var vf=/\r?\n/;function Tf(I){let A=I.split(vf).filter(Yf).filter(xf);if(A.length===0)return[];let e=A[A.length-1],g=bf(e,Hf);if(!g)throw new Error("This library only supports MLSD, Unix- or DOS-style directory listing. Your FTP server seems to be using another format. You can see the transmitted listing when setting `client.ftp.verbose = true`. You can then provide a custom parser to `client.parseList`, see the documentation for details.");let C=A.map(g.parseLine).filter(t=>t!==void 0);return g.transformList(C)}hg.parseList=Tf});var Mo=U(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.ProgressTracker=void 0;var iQ=class{constructor(){this.bytesOverall=0,this.intervalMs=500,this.onStop=Lt,this.onHandle=Lt}reportTo(A=Lt){this.onHandle=A}start(A,e,g){let C=0;this.onStop=Pf(this.intervalMs,()=>{let t=A.bytesRead+A.bytesWritten;this.bytesOverall+=t-C,C=t,this.onHandle({name:e,type:g,bytes:t,bytesOverall:this.bytesOverall})})}stop(){this.onStop(!1)}updateAndStop(){this.onStop(!0)}};Jt.ProgressTracker=iQ;function Pf(I,A){let e=setInterval(A,I),g=C=>{clearInterval(e),C&&A(),A=Lt};return A(),g}function Lt(){}});var Go=U(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.StringWriter=void 0;var qf=require("stream"),BQ=class extends qf.Writable{constructor(){super(...arguments),this.buf=Buffer.alloc(0)}_write(A,e,g){A instanceof Buffer?(this.buf=Buffer.concat([this.buf,A]),g(null)):g(new Error("StringWriter expects chunks of type 'Buffer'."))}getText(A){return this.buf.toString(A)}};Kt.StringWriter=BQ});var QQ=U(lg=>{"use strict";Object.defineProperty(lg,"__esModule",{value:!0});lg.ipIsPrivateV4Address=lg.upgradeSocket=lg.describeAddress=lg.describeTLS=void 0;var mo=require("tls");function Of(I){if(I instanceof mo.TLSSocket){let A=I.getProtocol();return A||"Server socket or disconnected client socket"}return"No encryption"}lg.describeTLS=Of;function Vf(I){return I.remoteFamily==="IPv6"?`[${I.remoteAddress}]:${I.remotePort}`:`${I.remoteAddress}:${I.remotePort}`}lg.describeAddress=Vf;function Wf(I,A){return new Promise((e,g)=>{let C=Object.assign({},A,{socket:I}),t=(0,mo.connect)(C,()=>{C.rejectUnauthorized!==!1&&!t.authorized?g(t.authorizationError):(t.removeAllListeners("error"),e(t))}).once("error",Q=>{g(Q)})})}lg.upgradeSocket=Wf;function Zf(I=""){I.startsWith("::ffff:")&&(I=I.substr(7));let A=I.split(".").map(e=>parseInt(e,10));return A[0]===10||A[0]===172&&A[1]>=16&&A[1]<=31||A[0]===192&&A[1]===168||I==="127.0.0.1"}lg.ipIsPrivateV4Address=Zf});var rQ=U(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.downloadTo=ne.uploadFrom=ne.connectForPassiveTransfer=ne.parsePasvResponse=ne.enterPassiveModeIPv4=ne.parseEpsvResponse=ne.enterPassiveModeIPv6=void 0;var qI=QQ(),Uo=require("stream"),No=require("tls"),Ht=mt();async function Xf(I){let A=await I.request("EPSV"),e=Lo(A.message);if(!e)throw new Error("Can't parse EPSV response: "+A.message);let g=I.socket.remoteAddress;if(g===void 0)throw new Error("Control socket is disconnected, can't get remote address.");return await EQ(g,e,I),A}ne.enterPassiveModeIPv6=Xf;function Lo(I){let A=I.match(/[|!]{3}(.+)[|!]/);if(A===null||A[1]===void 0)throw new Error(`Can't parse response to 'EPSV': ${I}`);let e=parseInt(A[1],10);if(Number.isNaN(e))throw new Error(`Can't parse response to 'EPSV', port is not a number: ${I}`);return e}ne.parseEpsvResponse=Lo;async function _f(I){let A=await I.request("PASV"),e=Jo(A.message);if(!e)throw new Error("Can't parse PASV response: "+A.message);let g=I.socket.remoteAddress;return(0,qI.ipIsPrivateV4Address)(e.host)&&g&&!(0,qI.ipIsPrivateV4Address)(g)&&(e.host=g),await EQ(e.host,e.port,I),A}ne.enterPassiveModeIPv4=_f;function Jo(I){let A=I.match(/([-\d]+,[-\d]+,[-\d]+,[-\d]+),([-\d]+),([-\d]+)/);if(A===null||A.length!==4)throw new Error(`Can't parse response to 'PASV': ${I}`);return{host:A[1].replace(/,/g,"."),port:(parseInt(A[2],10)&255)*256+(parseInt(A[3],10)&255)}}ne.parsePasvResponse=Jo;function EQ(I,A,e){return new Promise((g,C)=>{let t=e._newSocket(),Q=function(c){c.message="Can't open data connection in passive mode: "+c.message,C(c)},u=function(){t.destroy(),C(new Error(`Timeout when trying to open data connection to ${I}:${A}`))};t.setTimeout(e.timeout),t.on("error",Q),t.on("timeout",u),t.connect({port:A,host:I,family:e.ipFamily},()=>{e.socket instanceof No.TLSSocket&&(t=(0,No.connect)(Object.assign({},e.tlsOptions,{socket:t,session:e.socket.getSession()}))),t.removeListener("error",Q),t.removeListener("timeout",u),e.dataSocket=t,g()})})}ne.connectForPassiveTransfer=EQ;var bt=class{constructor(A,e){this.ftp=A,this.progress=e,this.response=void 0,this.dataTransferDone=!1}onDataStart(A,e){if(this.ftp.dataSocket===void 0)throw new Error("Data transfer should start but there is no data connection.");this.ftp.socket.setTimeout(0),this.ftp.dataSocket.setTimeout(this.ftp.timeout),this.progress.start(this.ftp.dataSocket,A,e)}onDataDone(A){this.progress.updateAndStop(),this.ftp.socket.setTimeout(this.ftp.timeout),this.ftp.dataSocket&&this.ftp.dataSocket.setTimeout(0),this.dataTransferDone=!0,this.tryResolve(A)}onControlDone(A,e){this.response=e,this.tryResolve(A)}onError(A,e){this.progress.updateAndStop(),this.ftp.socket.setTimeout(this.ftp.timeout),this.ftp.dataSocket=void 0,A.reject(e)}onUnexpectedRequest(A){let e=new Error(`Unexpected FTP response is requesting an answer: ${A.message}`);this.ftp.closeWithError(e)}tryResolve(A){this.dataTransferDone&&this.response!==void 0&&(this.ftp.dataSocket=void 0,A.resolve(this.response))}};function jf(I,A){let e=new bt(A.ftp,A.tracker),g=`${A.command} ${A.remotePath}`;return A.ftp.handle(g,(C,t)=>{if(C instanceof Error)e.onError(t,C);else if(C.code===150||C.code===125){let Q=A.ftp.dataSocket;if(!Q){e.onError(t,new Error("Upload should begin but no data connection is available."));return}let u="getCipher"in Q?Q.getCipher()!==void 0:!0;$f(u,Q,"secureConnect",()=>{A.ftp.log(`Uploading to ${(0,qI.describeAddress)(Q)} (${(0,qI.describeTLS)(Q)})`),e.onDataStart(A.remotePath,A.type),(0,Uo.pipeline)(I,Q,c=>{c?e.onError(t,c):e.onDataDone(t)})})}else(0,Ht.positiveCompletion)(C.code)?e.onControlDone(t,C):(0,Ht.positiveIntermediate)(C.code)&&e.onUnexpectedRequest(C)})}ne.uploadFrom=jf;function zf(I,A){if(!A.ftp.dataSocket)throw new Error("Download will be initiated but no data connection is available.");let e=new bt(A.ftp,A.tracker);return A.ftp.handle(A.command,(g,C)=>{if(g instanceof Error)e.onError(C,g);else if(g.code===150||g.code===125){let t=A.ftp.dataSocket;if(!t){e.onError(C,new Error("Download should begin but no data connection is available."));return}A.ftp.log(`Downloading from ${(0,qI.describeAddress)(t)} (${(0,qI.describeTLS)(t)})`),e.onDataStart(A.remotePath,A.type),(0,Uo.pipeline)(t,I,Q=>{Q?e.onError(C,Q):e.onDataDone(C)})}else g.code===350?A.ftp.send("RETR "+A.remotePath):(0,Ht.positiveCompletion)(g.code)?e.onControlDone(C,g):(0,Ht.positiveIntermediate)(g.code)&&e.onUnexpectedRequest(g)})}ne.downloadTo=zf;function $f(I,A,e,g){I===!0?g():A.once(e,()=>g())}});var xo=U(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.Client=void 0;var Wg=require("fs"),Ko=require("path"),Ay=require("tls"),OI=require("util"),kC=AQ(),ey=tQ(),gy=Mo(),Iy=Go(),Cy=IQ(),nI=QQ(),MC=rQ(),sQ=mt(),ty=(0,OI.promisify)(Wg.readdir),iy=(0,OI.promisify)(Wg.mkdir),nQ=(0,OI.promisify)(Wg.stat),Ho=(0,OI.promisify)(Wg.open),bo=(0,OI.promisify)(Wg.close),By=(0,OI.promisify)(Wg.unlink),Yo=()=>["LIST -a","LIST"],Qy=()=>["MLSD","LIST -a","LIST"],oQ=class{constructor(A=3e4){this.availableListCommands=Yo(),this.ftp=new kC.FTPContext(A),this.prepareTransfer=this._enterFirstCompatibleMode([MC.enterPassiveModeIPv6,MC.enterPassiveModeIPv4]),this.parseList=ey.parseList,this._progressTracker=new gy.ProgressTracker}close(){this.ftp.close(),this._progressTracker.stop()}get closed(){return this.ftp.closed}connect(A="localhost",e=21){return this.ftp.reset(),this.ftp.socket.connect({host:A,port:e,family:this.ftp.ipFamily},()=>this.ftp.log(`Connected to ${(0,nI.describeAddress)(this.ftp.socket)} (${(0,nI.describeTLS)(this.ftp.socket)})`)),this._handleConnectResponse()}connectImplicitTLS(A="localhost",e=21,g={}){return this.ftp.reset(),this.ftp.socket=(0,Ay.connect)(e,A,g,()=>this.ftp.log(`Connected to ${(0,nI.describeAddress)(this.ftp.socket)} (${(0,nI.describeTLS)(this.ftp.socket)})`)),this.ftp.tlsOptions=g,this._handleConnectResponse()}_handleConnectResponse(){return this.ftp.handle(void 0,(A,e)=>{A instanceof Error?e.reject(A):(0,sQ.positiveCompletion)(A.code)?e.resolve(A):e.reject(new kC.FTPError(A))})}send(A,e=!1){return e?(this.ftp.log("Deprecated call using send(command, flag) with boolean flag to ignore errors. Use sendIgnoringError(command)."),this.sendIgnoringError(A)):this.ftp.request(A)}sendIgnoringError(A){return this.ftp.handle(A,(e,g)=>{e instanceof kC.FTPError?g.resolve({code:e.code,message:e.message}):e instanceof Error?g.reject(e):g.resolve(e)})}async useTLS(A={},e="AUTH TLS"){let g=await this.send(e);return this.ftp.socket=await(0,nI.upgradeSocket)(this.ftp.socket,A),this.ftp.tlsOptions=A,this.ftp.log(`Control socket is using: ${(0,nI.describeTLS)(this.ftp.socket)}`),g}login(A="anonymous",e="guest"){return this.ftp.log(`Login security: ${(0,nI.describeTLS)(this.ftp.socket)}`),this.ftp.handle("USER "+A,(g,C)=>{g instanceof Error?C.reject(g):(0,sQ.positiveCompletion)(g.code)?C.resolve(g):g.code===331?this.ftp.send("PASS "+e):C.reject(new kC.FTPError(g))})}async useDefaultSettings(){let e=(await this.features()).has("MLST");this.availableListCommands=e?Qy():Yo(),await this.send("TYPE I"),await this.sendIgnoringError("STRU F"),await this.sendIgnoringError("OPTS UTF8 ON"),e&&await this.sendIgnoringError("OPTS MLST type;size;modify;unique;unix.mode;unix.owner;unix.group;unix.ownername;unix.groupname;"),this.ftp.hasTLS&&(await this.sendIgnoringError("PBSZ 0"),await this.sendIgnoringError("PROT P"))}async access(A={}){var e,g;let C=A.secure===!0,t=A.secure==="implicit",Q;if(t?Q=await this.connectImplicitTLS(A.host,A.port,A.secureOptions):Q=await this.connect(A.host,A.port),C){let u=(e=A.secureOptions)!==null&&e!==void 0?e:{};u.host=(g=u.host)!==null&&g!==void 0?g:A.host,await this.useTLS(u)}return await this.sendIgnoringError("OPTS UTF8 ON"),await this.login(A.user,A.password),await this.useDefaultSettings(),Q}async pwd(){let A=await this.send("PWD"),e=A.message.match(/"(.+)"/);if(e===null||e[1]===void 0)throw new Error(`Can't parse response to command 'PWD': ${A.message}`);return e[1]}async features(){let A=await this.sendIgnoringError("FEAT"),e=new Map;return A.code<400&&(0,sQ.isMultiline)(A.message)&&A.message.split(` +`).slice(1,-1).forEach(g=>{let C=g.trim().split(" ");e.set(C[0],C[1]||"")}),e}async cd(A){let e=await this.protectWhitespace(A);return this.send("CWD "+e)}async cdup(){return this.send("CDUP")}async lastMod(A){let e=await this.protectWhitespace(A),C=(await this.send(`MDTM ${e}`)).message.slice(4);return(0,Cy.parseMLSxDate)(C)}async size(A){let g=`SIZE ${await this.protectWhitespace(A)}`,C=await this.send(g),t=parseInt(C.message.slice(4),10);if(Number.isNaN(t))throw new Error(`Can't parse response to command '${g}' as a numerical value: ${C.message}`);return t}async rename(A,e){let g=await this.protectWhitespace(A),C=await this.protectWhitespace(e);return await this.send("RNFR "+g),this.send("RNTO "+C)}async remove(A,e=!1){let g=await this.protectWhitespace(A);return e?this.sendIgnoringError(`DELE ${g}`):this.send(`DELE ${g}`)}trackProgress(A){this._progressTracker.bytesOverall=0,this._progressTracker.reportTo(A)}async uploadFrom(A,e,g={}){return this._uploadWithCommand(A,e,"STOR",g)}async appendFrom(A,e,g={}){return this._uploadWithCommand(A,e,"APPE",g)}async _uploadWithCommand(A,e,g,C){return typeof A=="string"?this._uploadLocalFile(A,e,g,C):this._uploadFromStream(A,e,g)}async _uploadLocalFile(A,e,g,C){let t=await Ho(A,"r"),Q=(0,Wg.createReadStream)("",{fd:t,start:C.localStart,end:C.localEndInclusive,autoClose:!1});try{return await this._uploadFromStream(Q,e,g)}finally{await GC(()=>bo(t))}}async _uploadFromStream(A,e,g){let C=t=>this.ftp.closeWithError(t);A.once("error",C);try{let t=await this.protectWhitespace(e);return await this.prepareTransfer(this.ftp),await(0,MC.uploadFrom)(A,{ftp:this.ftp,tracker:this._progressTracker,command:g,remotePath:t,type:"upload"})}finally{A.removeListener("error",C)}}async downloadTo(A,e,g=0){return typeof A=="string"?this._downloadToFile(A,e,g):this._downloadToStream(A,e,g)}async _downloadToFile(A,e,g){let C=g>0,Q=await Ho(A,C?"r+":"w"),u=(0,Wg.createWriteStream)("",{fd:Q,start:g,autoClose:!1});try{return await this._downloadToStream(u,e,g)}catch(c){let h=await GC(()=>nQ(A)),r=h&&h.size>0;throw!C&&!r&&await GC(()=>By(A)),c}finally{await GC(()=>bo(Q))}}async _downloadToStream(A,e,g){let C=t=>this.ftp.closeWithError(t);A.once("error",C);try{let t=await this.protectWhitespace(e);return await this.prepareTransfer(this.ftp),await(0,MC.downloadTo)(A,{ftp:this.ftp,tracker:this._progressTracker,command:g>0?`REST ${g}`:`RETR ${t}`,remotePath:t,type:"download"})}finally{A.removeListener("error",C),A.end()}}async list(A=""){let e=await this.protectWhitespace(A),g;for(let C of this.availableListCommands){let t=e===""?C:`${C} ${e}`;await this.prepareTransfer(this.ftp);try{let Q=await this._requestListWithCommand(t);return this.availableListCommands=[C],Q}catch(Q){if(!(Q instanceof kC.FTPError))throw Q;g=Q}}throw g}async _requestListWithCommand(A){let e=new Iy.StringWriter;await(0,MC.downloadTo)(e,{ftp:this.ftp,tracker:this._progressTracker,command:A,remotePath:"",type:"list"});let g=e.getText(this.ftp.encoding);return this.ftp.log(g),this.parseList(g)}async removeDir(A){return this._exitAtCurrentDirectory(async()=>{await this.cd(A);let e=await this.pwd();await this.clearWorkingDir(),e==="/"||(await this.cdup(),await this.removeEmptyDir(e))})}async clearWorkingDir(){for(let A of await this.list())A.isDirectory?(await this.cd(A.name),await this.clearWorkingDir(),await this.cdup(),await this.removeEmptyDir(A.name)):await this.remove(A.name)}async uploadFromDir(A,e){return this._exitAtCurrentDirectory(async()=>(e&&await this.ensureDir(e),await this._uploadToWorkingDir(A)))}async _uploadToWorkingDir(A){let e=await ty(A);for(let g of e){let C=(0,Ko.join)(A,g),t=await nQ(C);t.isFile()?await this.uploadFrom(C,g):t.isDirectory()&&(await this._openDir(g),await this._uploadToWorkingDir(C),await this.cdup())}}async downloadToDir(A,e){return this._exitAtCurrentDirectory(async()=>(e&&await this.cd(e),await this._downloadFromWorkingDir(A)))}async _downloadFromWorkingDir(A){await Ey(A);for(let e of await this.list()){let g=(0,Ko.join)(A,e.name);e.isDirectory?(await this.cd(e.name),await this._downloadFromWorkingDir(g),await this.cdup()):e.isFile&&await this.downloadTo(g,e.name)}}async ensureDir(A){A.startsWith("/")&&await this.cd("/");let e=A.split("/").filter(g=>g!=="");for(let g of e)await this._openDir(g)}async _openDir(A){await this.sendIgnoringError("MKD "+A),await this.cd(A)}async removeEmptyDir(A){let e=await this.protectWhitespace(A);return this.send(`RMD ${e}`)}async protectWhitespace(A){if(!A.startsWith(" "))return A;let e=await this.pwd();return(e.endsWith("/")?e:e+"/")+A}async _exitAtCurrentDirectory(A){let e=await this.pwd();try{return await A()}finally{this.closed||await GC(()=>this.cd(e))}}_enterFirstCompatibleMode(A){return async e=>{e.log("Trying to find optimal transfer strategy...");let g;for(let C of A)try{let t=await C(e);return e.log("Optimal transfer strategy found."),this.prepareTransfer=C,t}catch(t){g=t}throw new Error(`None of the available transfer strategies work. Last error response was '${g}'.`)}}async upload(A,e,g={}){return this.ftp.log("Warning: upload() has been deprecated, use uploadFrom()."),this.uploadFrom(A,e,g)}async append(A,e,g={}){return this.ftp.log("Warning: append() has been deprecated, use appendFrom()."),this.appendFrom(A,e,g)}async download(A,e,g=0){return this.ftp.log("Warning: download() has been deprecated, use downloadTo()."),this.downloadTo(A,e,g)}async uploadDir(A,e){return this.ftp.log("Warning: uploadDir() has been deprecated, use uploadFromDir()."),this.uploadFromDir(A,e)}async downloadDir(A){return this.ftp.log("Warning: downloadDir() has been deprecated, use downloadToDir()."),this.downloadToDir(A)}};Yt.Client=oQ;async function Ey(I){try{await nQ(I)}catch{await iy(I,{recursive:!0})}}async function GC(I){try{return await I()}catch{return}}});var To=U(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0})});var qo=U(Fe=>{"use strict";var ry=Fe&&Fe.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),mC=Fe&&Fe.__exportStar||function(I,A){for(var e in I)e!=="default"&&!Object.prototype.hasOwnProperty.call(A,e)&&ry(A,I,e)};Object.defineProperty(Fe,"__esModule",{value:!0});Fe.enterPassiveModeIPv6=Fe.enterPassiveModeIPv4=void 0;mC(xo(),Fe);mC(AQ(),Fe);mC(RC(),Fe);mC(tQ(),Fe);mC(To(),Fe);var Po=rQ();Object.defineProperty(Fe,"enterPassiveModeIPv4",{enumerable:!0,get:function(){return Po.enterPassiveModeIPv4}});Object.defineProperty(Fe,"enterPassiveModeIPv6",{enumerable:!0,get:function(){return Po.enterPassiveModeIPv6}})});var Wo=U(VI=>{"use strict";var aQ=VI&&VI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(VI,"__esModule",{value:!0});VI.ftp=void 0;var sy=qo(),ny=require("stream"),Oo=require("path"),oy=aQ(xe()),Vo=aQ(Gt()),ay=aQ(lC()),uy=(0,oy.default)("get-uri:ftp"),cy=async(I,A={})=>{let{cache:e}=A,g=decodeURIComponent(I.pathname),C;if(!g)throw new TypeError('No "pathname"!');let t=new sy.Client;try{let u=I.hostname||I.host||"localhost",c=parseInt(I.port||"0",10)||21,h=I.username?decodeURIComponent(I.username):void 0,r=I.password?decodeURIComponent(I.password):void 0;await t.access({host:u,port:c,user:h,password:r,...A});try{C=await t.lastMod(g)}catch(i){if(i.code===550)throw new Vo.default}if(!C){let i=await t.list((0,Oo.dirname)(g)),B=(0,Oo.basename)(g),E=i.find(n=>n.name===B);E&&(C=E.modifiedAt)}if(C){if(Q())throw new ay.default}else throw new Vo.default;let a=new ny.PassThrough,s=a;return t.downloadTo(a,g).then(i=>{uy(i.message),t.close()}),s.lastModified=C,s}catch(u){throw t.close(),u}function Q(){return e?.lastModified&&C?+e.lastModified==+C:!1}};VI.ftp=cy});var Zo=U(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});var Dy=require("http"),uQ=class extends Error{constructor(A,e=Dy.STATUS_CODES[A]){super(e),this.statusCode=A,this.code=`E${String(e).toUpperCase().replace(/\s+/g,"")}`}};cQ.default=uQ});var DQ=U(oI=>{"use strict";var WI=oI&&oI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(oI,"__esModule",{value:!0});oI.http=void 0;var hy=WI(require("http")),ly=WI(require("https")),wy=require("events"),fy=WI(xe()),yy=WI(Zo()),dy=WI(Gt()),Xo=WI(lC()),oe=(0,fy.default)("get-uri:http"),Fy=async(I,A={})=>{oe("GET %o",I.href);let e=_o(I,A.cache);if(e&&py(e)&&typeof e.statusCode=="number")throw(e.statusCode/100|0)===3&&e.headers.location?(oe("cached redirect"),new Error("TODO: implement cached redirects!")):new Xo.default;let g=typeof A.maxRedirects=="number"?A.maxRedirects:5;oe("allowing %o max redirects",g);let C;A.http?(C=A.http,oe("using secure `https` core module")):(C=hy.default,oe("using `http` core module"));let t={...A};if(e){t.headers||(t.headers={});let a=e.headers["last-modified"];a&&(t.headers["If-Modified-Since"]=a,oe('added "If-Modified-Since" request header: %o',a));let s=e.headers.etag;s&&(t.headers["If-None-Match"]=s,oe('added "If-None-Match" request header: %o',s))}let Q=C.get(I,t),[u]=await(0,wy.once)(Q,"response"),c=u.statusCode||0;u.date=Date.now(),u.parsed=I,oe("got %o response status code",c);let h=c/100|0,r=u.headers.location;if(h===3&&r){A.redirects||(A.redirects=[]);let a=A.redirects;if(a.length{"use strict";var Sy=ZI&&ZI.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(ZI,"__esModule",{value:!0});ZI.https=void 0;var Ry=Sy(require("https")),ky=DQ(),My=(I,A)=>(0,ky.http)(I,{...A,http:Ry.default});ZI.https=My});var $o=U(Ve=>{"use strict";var Gy=Ve&&Ve.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(Ve,"__esModule",{value:!0});Ve.getUri=Ve.isValidProtocol=Ve.protocols=void 0;var my=Gy(xe()),Ny=ws(),Uy=Do(),Ly=Wo(),Jy=DQ(),Ky=jo(),Hy=(0,my.default)("get-uri");Ve.protocols={data:Ny.data,file:Uy.file,ftp:Ly.ftp,http:Jy.http,https:Ky.https};var by=new Set(Object.keys(Ve.protocols));function zo(I){return by.has(I)}Ve.isValidProtocol=zo;async function Yy(I,A){if(Hy("getUri(%o)",I),!I)throw new TypeError('Must pass in a URI to "getUri()"');let e=typeof I=="string"?new URL(I):I,g=e.protocol.replace(/:$/,"");if(!zo(g))throw new TypeError(`Unsupported protocol "${g}" specified in URI: "${I}"`);let C=Ve.protocols[g];return C(e,A)}Ve.getUri=Yy});var ea=U(Aa=>{"use strict";(function I(A){"use strict";var e,g,C,t,Q,u;function c(k){var M={},N,J;for(N in k)k.hasOwnProperty(N)&&(J=k[N],typeof J=="object"&&J!==null?M[N]=c(J):M[N]=J);return M}function h(k,M){var N,J,O,b;for(J=k.length,O=0;J;)N=J>>>1,b=O+N,M(k[b])?J=N:(O=b+1,J-=N+1);return O}e={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ChainExpression:"ChainExpression",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",PrivateIdentifier:"PrivateIdentifier",Program:"Program",Property:"Property",PropertyDefinition:"PropertyDefinition",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},C={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},t={},Q={},u={},g={Break:t,Skip:Q,Remove:u};function r(k,M){this.parent=k,this.key=M}r.prototype.replace=function(M){this.parent[this.key]=M},r.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)};function a(k,M,N,J){this.node=k,this.path=M,this.wrap=N,this.ref=J}function s(){}s.prototype.path=function(){var M,N,J,O,b,AA;function W(j,iA){if(Array.isArray(iA))for(J=0,O=iA.length;J=0;--N)if(k[N].node===M)return!0;return!1}s.prototype.traverse=function(M,N){var J,O,b,AA,W,j,iA,oA,rA,sA,eA,DA;for(this.__initialize(M,N),DA={},J=this.__worklist,O=this.__leavelist,J.push(new a(M,null,null,null)),O.push(new a(null,null,null,null));J.length;){if(b=J.pop(),b===DA){if(b=O.pop(),j=this.__execute(N.leave,b),this.__state===t||j===t)return;continue}if(b.node){if(j=this.__execute(N.enter,b),this.__state===t||j===t)return;if(J.push(DA),O.push(b),this.__state===Q||j===Q)continue;if(AA=b.node,W=AA.type||b.wrap,sA=this.__keys[W],!sA)if(this.__fallback)sA=this.__fallback(AA);else throw new Error("Unknown node type "+W+".");for(oA=sA.length;(oA-=1)>=0;)if(iA=sA[oA],eA=AA[iA],!!eA){if(Array.isArray(eA)){for(rA=eA.length;(rA-=1)>=0;)if(eA[rA]&&!E(O,eA[rA])){if(B(W,sA[oA]))b=new a(eA[rA],[iA,rA],"Property",null);else if(i(eA[rA]))b=new a(eA[rA],[iA,rA],null,null);else continue;J.push(b)}}else if(i(eA)){if(E(O,eA))continue;J.push(new a(eA,iA,null,null))}}}}},s.prototype.replace=function(M,N){var J,O,b,AA,W,j,iA,oA,rA,sA,eA,DA,T;function z(Y){var QA,hA,uA,aA;if(Y.ref.remove()){for(hA=Y.ref.key,aA=Y.ref.parent,QA=J.length;QA--;)if(uA=J[QA],uA.ref&&uA.ref.parent===aA){if(uA.ref.key=0;)if(T=rA[iA],sA=b[T],!!sA)if(Array.isArray(sA)){for(oA=sA.length;(oA-=1)>=0;)if(sA[oA]){if(B(AA,rA[iA]))j=new a(sA[oA],[T,oA],"Property",new r(sA,oA));else if(i(sA[oA]))j=new a(sA[oA],[T,oA],null,new r(sA,oA));else continue;J.push(j)}}else i(sA)&&J.push(new a(sA,T,null,new r(b,T)))}}return DA.root};function n(k,M){var N=new s;return N.traverse(k,M)}function D(k,M){var N=new s;return N.replace(k,M)}function f(k,M){var N;return N=h(M,function(O){return O.range[0]>k.range[0]}),k.extendedRange=[k.range[0],k.range[1]],N!==M.length&&(k.extendedRange[1]=M[N].range[0]),N-=1,N>=0&&(k.extendedRange[0]=M[N].range[1]),k}function S(k,M,N){var J=[],O,b,AA,W;if(!k.range)throw new Error("attachComments needs range information");if(!N.length){if(M.length){for(AA=0,b=M.length;AAj.range[0]));)iA.extendedRange[1]===j.range[0]?(j.leadingComments||(j.leadingComments=[]),j.leadingComments.push(iA),J.splice(W,1)):W+=1;if(W===J.length)return g.Break;if(J[W].extendedRange[0]>j.range[1])return g.Skip}}),W=0,n(k,{leave:function(j){for(var iA;Wj.range[1])return g.Skip}}),k}return A.Syntax=e,A.traverse=n,A.replace=D,A.attachComments=S,A.VisitorKeys=C,A.VisitorOption=g,A.Controller=s,A.cloneEnvironment=function(){return I({})},A})(Aa)});var Ia=U((sM,ga)=>{"use strict";(function(){"use strict";function I(Q){if(Q==null)return!1;switch(Q.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function A(Q){if(Q==null)return!1;switch(Q.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function e(Q){if(Q==null)return!1;switch(Q.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function g(Q){return e(Q)||Q!=null&&Q.type==="FunctionDeclaration"}function C(Q){switch(Q.type){case"IfStatement":return Q.alternate!=null?Q.alternate:Q.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return Q.body}return null}function t(Q){var u;if(Q.type!=="IfStatement"||Q.alternate==null)return!1;u=Q.consequent;do{if(u.type==="IfStatement"&&u.alternate==null)return!0;u=C(u)}while(u);return!1}ga.exports={isExpression:I,isStatement:e,isIterationStatement:A,isSourceElement:g,isProblematicIfStatement:t,trailingStatement:C}})()});var hQ=U((nM,Ca)=>{"use strict";(function(){"use strict";var I,A,e,g,C,t;A={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},I={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function Q(n){return 48<=n&&n<=57}function u(n){return 48<=n&&n<=57||97<=n&&n<=102||65<=n&&n<=70}function c(n){return n>=48&&n<=55}e=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function h(n){return n===32||n===9||n===11||n===12||n===160||n>=5760&&e.indexOf(n)>=0}function r(n){return n===10||n===13||n===8232||n===8233}function a(n){if(n<=65535)return String.fromCharCode(n);var D=String.fromCharCode(Math.floor((n-65536)/1024)+55296),f=String.fromCharCode((n-65536)%1024+56320);return D+f}for(g=new Array(128),t=0;t<128;++t)g[t]=t>=97&&t<=122||t>=65&&t<=90||t===36||t===95;for(C=new Array(128),t=0;t<128;++t)C[t]=t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||t===36||t===95;function s(n){return n<128?g[n]:A.NonAsciiIdentifierStart.test(a(n))}function i(n){return n<128?C[n]:A.NonAsciiIdentifierPart.test(a(n))}function B(n){return n<128?g[n]:I.NonAsciiIdentifierStart.test(a(n))}function E(n){return n<128?C[n]:I.NonAsciiIdentifierPart.test(a(n))}Ca.exports={isDecimalDigit:Q,isHexDigit:u,isOctalDigit:c,isWhiteSpace:h,isLineTerminator:r,isIdentifierStartES5:s,isIdentifierPartES5:i,isIdentifierStartES6:B,isIdentifierPartES6:E}})()});var ia=U((oM,ta)=>{"use strict";(function(){"use strict";var I=hQ();function A(s){switch(s){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function e(s,i){return!i&&s==="yield"?!1:g(s,i)}function g(s,i){if(i&&A(s))return!0;switch(s.length){case 2:return s==="if"||s==="in"||s==="do";case 3:return s==="var"||s==="for"||s==="new"||s==="try";case 4:return s==="this"||s==="else"||s==="case"||s==="void"||s==="with"||s==="enum";case 5:return s==="while"||s==="break"||s==="catch"||s==="throw"||s==="const"||s==="yield"||s==="class"||s==="super";case 6:return s==="return"||s==="typeof"||s==="delete"||s==="switch"||s==="export"||s==="import";case 7:return s==="default"||s==="finally"||s==="extends";case 8:return s==="function"||s==="continue"||s==="debugger";case 10:return s==="instanceof";default:return!1}}function C(s,i){return s==="null"||s==="true"||s==="false"||e(s,i)}function t(s,i){return s==="null"||s==="true"||s==="false"||g(s,i)}function Q(s){return s==="eval"||s==="arguments"}function u(s){var i,B,E;if(s.length===0||(E=s.charCodeAt(0),!I.isIdentifierStartES5(E)))return!1;for(i=1,B=s.length;i=B||(n=s.charCodeAt(i),!(56320<=n&&n<=57343)))return!1;E=c(E,n)}if(!D(E))return!1;D=I.isIdentifierPartES6}return!0}function r(s,i){return u(s)&&!C(s,i)}function a(s,i){return h(s)&&!t(s,i)}ta.exports={isKeywordES5:e,isKeywordES6:g,isReservedWordES5:C,isReservedWordES6:t,isRestrictedWord:Q,isIdentifierNameES5:u,isIdentifierNameES6:h,isIdentifierES5:r,isIdentifierES6:a}})()});var Ba=U(xt=>{"use strict";(function(){"use strict";xt.ast=Ia(),xt.code=hQ(),xt.keyword=ia()})()});var Ea=U(lQ=>{"use strict";var Qa="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");lQ.encode=function(I){if(0<=I&&I{"use strict";var ra=Ea(),wQ=5,sa=1<>1;return A?-e:e}fQ.encode=function(A){var e="",g,C=xy(A);do g=C&na,C>>>=wQ,C>0&&(g|=oa),e+=ra.encode(g);while(C>0);return e};fQ.decode=function(A,e,g){var C=A.length,t=0,Q=0,u,c;do{if(e>=C)throw new Error("Expected more digits in base 64 VLQ value.");if(c=ra.decode(A.charCodeAt(e++)),c===-1)throw new Error("Invalid base64 digit: "+A.charAt(e-1));u=!!(c&oa),c&=na,t=t+(c<{"use strict";function Ty(I,A,e){if(A in I)return I[A];if(arguments.length===3)return e;throw new Error('"'+A+'" is a required argument.')}ae.getArg=Ty;var aa=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Py=/^data:.+\,.+$/;function NC(I){var A=I.match(aa);return A?{scheme:A[1],auth:A[2],host:A[3],port:A[4],path:A[5]}:null}ae.urlParse=NC;function XI(I){var A="";return I.scheme&&(A+=I.scheme+":"),A+="//",I.auth&&(A+=I.auth+"@"),I.host&&(A+=I.host),I.port&&(A+=":"+I.port),I.path&&(A+=I.path),A}ae.urlGenerate=XI;function dQ(I){var A=I,e=NC(I);if(e){if(!e.path)return I;A=e.path}for(var g=ae.isAbsolute(A),C=A.split(/\/+/),t,Q=0,u=C.length-1;u>=0;u--)t=C[u],t==="."?C.splice(u,1):t===".."?Q++:Q>0&&(t===""?(C.splice(u+1,Q),Q=0):(C.splice(u,2),Q--));return A=C.join("/"),A===""&&(A=g?"/":"."),e?(e.path=A,XI(e)):A}ae.normalize=dQ;function ua(I,A){I===""&&(I="."),A===""&&(A=".");var e=NC(A),g=NC(I);if(g&&(I=g.path||"/"),e&&!e.scheme)return g&&(e.scheme=g.scheme),XI(e);if(e||A.match(Py))return A;if(g&&!g.host&&!g.path)return g.host=A,XI(g);var C=A.charAt(0)==="/"?A:dQ(I.replace(/\/+$/,"")+"/"+A);return g?(g.path=C,XI(g)):C}ae.join=ua;ae.isAbsolute=function(I){return I.charAt(0)==="/"||aa.test(I)};function qy(I,A){I===""&&(I="."),I=I.replace(/\/$/,"");for(var e=0;A.indexOf(I+"/")!==0;){var g=I.lastIndexOf("/");if(g<0||(I=I.slice(0,g),I.match(/^([^\/]+:\/)?\/*$/)))return A;++e}return Array(e+1).join("../")+A.substr(I.length+1)}ae.relative=qy;var ca=function(){var I=Object.create(null);return!("__proto__"in I)}();function Da(I){return I}function Oy(I){return ha(I)?"$"+I:I}ae.toSetString=ca?Da:Oy;function Vy(I){return ha(I)?I.slice(1):I}ae.fromSetString=ca?Da:Vy;function ha(I){if(!I)return!1;var A=I.length;if(A<9||I.charCodeAt(A-1)!==95||I.charCodeAt(A-2)!==95||I.charCodeAt(A-3)!==111||I.charCodeAt(A-4)!==116||I.charCodeAt(A-5)!==111||I.charCodeAt(A-6)!==114||I.charCodeAt(A-7)!==112||I.charCodeAt(A-8)!==95||I.charCodeAt(A-9)!==95)return!1;for(var e=A-10;e>=0;e--)if(I.charCodeAt(e)!==36)return!1;return!0}function Wy(I,A,e){var g=_I(I.source,A.source);return g!==0||(g=I.originalLine-A.originalLine,g!==0)||(g=I.originalColumn-A.originalColumn,g!==0||e)||(g=I.generatedColumn-A.generatedColumn,g!==0)||(g=I.generatedLine-A.generatedLine,g!==0)?g:_I(I.name,A.name)}ae.compareByOriginalPositions=Wy;function Zy(I,A,e){var g=I.generatedLine-A.generatedLine;return g!==0||(g=I.generatedColumn-A.generatedColumn,g!==0||e)||(g=_I(I.source,A.source),g!==0)||(g=I.originalLine-A.originalLine,g!==0)||(g=I.originalColumn-A.originalColumn,g!==0)?g:_I(I.name,A.name)}ae.compareByGeneratedPositionsDeflated=Zy;function _I(I,A){return I===A?0:I===null?1:A===null?-1:I>A?1:-1}function Xy(I,A){var e=I.generatedLine-A.generatedLine;return e!==0||(e=I.generatedColumn-A.generatedColumn,e!==0)||(e=_I(I.source,A.source),e!==0)||(e=I.originalLine-A.originalLine,e!==0)||(e=I.originalColumn-A.originalColumn,e!==0)?e:_I(I.name,A.name)}ae.compareByGeneratedPositionsInflated=Xy;function _y(I){return JSON.parse(I.replace(/^\)]}'[^\n]*\n/,""))}ae.parseSourceMapInput=_y;function jy(I,A,e){if(A=A||"",I&&(I[I.length-1]!=="/"&&A[0]!=="/"&&(I+="/"),A=I+A),e){var g=NC(e);if(!g)throw new Error("sourceMapURL could not be parsed");if(g.path){var C=g.path.lastIndexOf("/");C>=0&&(g.path=g.path.substring(0,C+1))}A=ua(XI(g),A)}return dQ(A)}ae.computeSourceURL=jy});var SQ=U(la=>{"use strict";var FQ=jI(),pQ=Object.prototype.hasOwnProperty,aI=typeof Map<"u";function Gg(){this._array=[],this._set=aI?new Map:Object.create(null)}Gg.fromArray=function(A,e){for(var g=new Gg,C=0,t=A.length;C=0)return e}else{var g=FQ.toSetString(A);if(pQ.call(this._set,g))return this._set[g]}throw new Error('"'+A+'" is not in the set.')};Gg.prototype.at=function(A){if(A>=0&&A{"use strict";var wa=jI();function zy(I,A){var e=I.generatedLine,g=A.generatedLine,C=I.generatedColumn,t=A.generatedColumn;return g>e||g==e&&t>=C||wa.compareByGeneratedPositionsInflated(I,A)<=0}function vt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}vt.prototype.unsortedForEach=function(A,e){this._array.forEach(A,e)};vt.prototype.add=function(A){zy(this._last,A)?(this._last=A,this._array.push(A)):(this._sorted=!1,this._array.push(A))};vt.prototype.toArray=function(){return this._sorted||(this._array.sort(wa.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};fa.MappingList=vt});var RQ=U(da=>{"use strict";var UC=yQ(),ZA=jI(),Tt=SQ().ArraySet,$y=ya().MappingList;function We(I){I||(I={}),this._file=ZA.getArg(I,"file",null),this._sourceRoot=ZA.getArg(I,"sourceRoot",null),this._skipValidation=ZA.getArg(I,"skipValidation",!1),this._sources=new Tt,this._names=new Tt,this._mappings=new $y,this._sourcesContents=null}We.prototype._version=3;We.fromSourceMap=function(A){var e=A.sourceRoot,g=new We({file:A.file,sourceRoot:e});return A.eachMapping(function(C){var t={generated:{line:C.generatedLine,column:C.generatedColumn}};C.source!=null&&(t.source=C.source,e!=null&&(t.source=ZA.relative(e,t.source)),t.original={line:C.originalLine,column:C.originalColumn},C.name!=null&&(t.name=C.name)),g.addMapping(t)}),A.sources.forEach(function(C){var t=C;e!==null&&(t=ZA.relative(e,C)),g._sources.has(t)||g._sources.add(t);var Q=A.sourceContentFor(C);Q!=null&&g.setSourceContent(C,Q)}),g};We.prototype.addMapping=function(A){var e=ZA.getArg(A,"generated"),g=ZA.getArg(A,"original",null),C=ZA.getArg(A,"source",null),t=ZA.getArg(A,"name",null);this._skipValidation||this._validateMapping(e,g,C,t),C!=null&&(C=String(C),this._sources.has(C)||this._sources.add(C)),t!=null&&(t=String(t),this._names.has(t)||this._names.add(t)),this._mappings.add({generatedLine:e.line,generatedColumn:e.column,originalLine:g!=null&&g.line,originalColumn:g!=null&&g.column,source:C,name:t})};We.prototype.setSourceContent=function(A,e){var g=A;this._sourceRoot!=null&&(g=ZA.relative(this._sourceRoot,g)),e!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[ZA.toSetString(g)]=e):this._sourcesContents&&(delete this._sourcesContents[ZA.toSetString(g)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};We.prototype.applySourceMap=function(A,e,g){var C=e;if(e==null){if(A.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);C=A.file}var t=this._sourceRoot;t!=null&&(C=ZA.relative(t,C));var Q=new Tt,u=new Tt;this._mappings.unsortedForEach(function(c){if(c.source===C&&c.originalLine!=null){var h=A.originalPositionFor({line:c.originalLine,column:c.originalColumn});h.source!=null&&(c.source=h.source,g!=null&&(c.source=ZA.join(g,c.source)),t!=null&&(c.source=ZA.relative(t,c.source)),c.originalLine=h.line,c.originalColumn=h.column,h.name!=null&&(c.name=h.name))}var r=c.source;r!=null&&!Q.has(r)&&Q.add(r);var a=c.name;a!=null&&!u.has(a)&&u.add(a)},this),this._sources=Q,this._names=u,A.sources.forEach(function(c){var h=A.sourceContentFor(c);h!=null&&(g!=null&&(c=ZA.join(g,c)),t!=null&&(c=ZA.relative(t,c)),this.setSourceContent(c,h))},this)};We.prototype._validateMapping=function(A,e,g,C){if(e&&typeof e.line!="number"&&typeof e.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(A&&"line"in A&&"column"in A&&A.line>0&&A.column>=0&&!e&&!g&&!C)){if(A&&"line"in A&&"column"in A&&e&&"line"in e&&"column"in e&&A.line>0&&A.column>=0&&e.line>0&&e.column>=0&&g)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:A,source:g,original:e,name:C}))}};We.prototype._serializeMappings=function(){for(var A=0,e=1,g=0,C=0,t=0,Q=0,u="",c,h,r,a,s=this._mappings.toArray(),i=0,B=s.length;i0){if(!ZA.compareByGeneratedPositionsInflated(h,s[i-1]))continue;c+=","}c+=UC.encode(h.generatedColumn-A),A=h.generatedColumn,h.source!=null&&(a=this._sources.indexOf(h.source),c+=UC.encode(a-Q),Q=a,c+=UC.encode(h.originalLine-1-C),C=h.originalLine-1,c+=UC.encode(h.originalColumn-g),g=h.originalColumn,h.name!=null&&(r=this._names.indexOf(h.name),c+=UC.encode(r-t),t=r)),u+=c}return u};We.prototype._generateSourcesContent=function(A,e){return A.map(function(g){if(!this._sourcesContents)return null;e!=null&&(g=ZA.relative(e,g));var C=ZA.toSetString(g);return Object.prototype.hasOwnProperty.call(this._sourcesContents,C)?this._sourcesContents[C]:null},this)};We.prototype.toJSON=function(){var A={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(A.file=this._file),this._sourceRoot!=null&&(A.sourceRoot=this._sourceRoot),this._sourcesContents&&(A.sourcesContent=this._generateSourcesContent(A.sources,A.sourceRoot)),A};We.prototype.toString=function(){return JSON.stringify(this.toJSON())};da.SourceMapGenerator=We});var Fa=U(uI=>{"use strict";uI.GREATEST_LOWER_BOUND=1;uI.LEAST_UPPER_BOUND=2;function kQ(I,A,e,g,C,t){var Q=Math.floor((A-I)/2)+I,u=C(e,g[Q],!0);return u===0?Q:u>0?A-Q>1?kQ(Q,A,e,g,C,t):t==uI.LEAST_UPPER_BOUND?A1?kQ(I,Q,e,g,C,t):t==uI.LEAST_UPPER_BOUND?Q:I<0?-1:I}uI.search=function(A,e,g,C){if(e.length===0)return-1;var t=kQ(-1,e.length,A,e,g,C||uI.GREATEST_LOWER_BOUND);if(t<0)return-1;for(;t-1>=0&&g(e[t],e[t-1],!0)===0;)--t;return t}});var Sa=U(pa=>{"use strict";function MQ(I,A,e){var g=I[A];I[A]=I[e],I[e]=g}function Ad(I,A){return Math.round(I+Math.random()*(A-I))}function GQ(I,A,e,g){if(e{"use strict";var BA=jI(),mQ=Fa(),zI=SQ().ArraySet,ed=yQ(),LC=Sa().quickSort;function KA(I,A){var e=I;return typeof I=="string"&&(e=BA.parseSourceMapInput(I)),e.sections!=null?new Cg(e,A):new Ee(e,A)}KA.fromSourceMap=function(I,A){return Ee.fromSourceMap(I,A)};KA.prototype._version=3;KA.prototype.__generatedMappings=null;Object.defineProperty(KA.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});KA.prototype.__originalMappings=null;Object.defineProperty(KA.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});KA.prototype._charIsMappingSeparator=function(A,e){var g=A.charAt(e);return g===";"||g===","};KA.prototype._parseMappings=function(A,e){throw new Error("Subclasses must implement _parseMappings")};KA.GENERATED_ORDER=1;KA.ORIGINAL_ORDER=2;KA.GREATEST_LOWER_BOUND=1;KA.LEAST_UPPER_BOUND=2;KA.prototype.eachMapping=function(A,e,g){var C=e||null,t=g||KA.GENERATED_ORDER,Q;switch(t){case KA.GENERATED_ORDER:Q=this._generatedMappings;break;case KA.ORIGINAL_ORDER:Q=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;Q.map(function(c){var h=c.source===null?null:this._sources.at(c.source);return h=BA.computeSourceURL(u,h,this._sourceMapURL),{source:h,generatedLine:c.generatedLine,generatedColumn:c.generatedColumn,originalLine:c.originalLine,originalColumn:c.originalColumn,name:c.name===null?null:this._names.at(c.name)}},this).forEach(A,C)};KA.prototype.allGeneratedPositionsFor=function(A){var e=BA.getArg(A,"line"),g={source:BA.getArg(A,"source"),originalLine:e,originalColumn:BA.getArg(A,"column",0)};if(g.source=this._findSourceIndex(g.source),g.source<0)return[];var C=[],t=this._findMapping(g,this._originalMappings,"originalLine","originalColumn",BA.compareByOriginalPositions,mQ.LEAST_UPPER_BOUND);if(t>=0){var Q=this._originalMappings[t];if(A.column===void 0)for(var u=Q.originalLine;Q&&Q.originalLine===u;)C.push({line:BA.getArg(Q,"generatedLine",null),column:BA.getArg(Q,"generatedColumn",null),lastColumn:BA.getArg(Q,"lastGeneratedColumn",null)}),Q=this._originalMappings[++t];else for(var c=Q.originalColumn;Q&&Q.originalLine===e&&Q.originalColumn==c;)C.push({line:BA.getArg(Q,"generatedLine",null),column:BA.getArg(Q,"generatedColumn",null),lastColumn:BA.getArg(Q,"lastGeneratedColumn",null)}),Q=this._originalMappings[++t]}return C};Pt.SourceMapConsumer=KA;function Ee(I,A){var e=I;typeof I=="string"&&(e=BA.parseSourceMapInput(I));var g=BA.getArg(e,"version"),C=BA.getArg(e,"sources"),t=BA.getArg(e,"names",[]),Q=BA.getArg(e,"sourceRoot",null),u=BA.getArg(e,"sourcesContent",null),c=BA.getArg(e,"mappings"),h=BA.getArg(e,"file",null);if(g!=this._version)throw new Error("Unsupported version: "+g);Q&&(Q=BA.normalize(Q)),C=C.map(String).map(BA.normalize).map(function(r){return Q&&BA.isAbsolute(Q)&&BA.isAbsolute(r)?BA.relative(Q,r):r}),this._names=zI.fromArray(t.map(String),!0),this._sources=zI.fromArray(C,!0),this._absoluteSources=this._sources.toArray().map(function(r){return BA.computeSourceURL(Q,r,A)}),this.sourceRoot=Q,this.sourcesContent=u,this._mappings=c,this._sourceMapURL=A,this.file=h}Ee.prototype=Object.create(KA.prototype);Ee.prototype.consumer=KA;Ee.prototype._findSourceIndex=function(I){var A=I;if(this.sourceRoot!=null&&(A=BA.relative(this.sourceRoot,A)),this._sources.has(A))return this._sources.indexOf(A);var e;for(e=0;e1&&(E.source=u+D[1],u+=D[1],E.originalLine=t+D[2],t=E.originalLine,E.originalLine+=1,E.originalColumn=Q+D[3],Q=E.originalColumn,D.length>4&&(E.name=c+D[4],c+=D[4])),B.push(E),typeof E.originalLine=="number"&&i.push(E)}LC(B,BA.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,LC(i,BA.compareByOriginalPositions),this.__originalMappings=i};Ee.prototype._findMapping=function(A,e,g,C,t,Q){if(A[g]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+A[g]);if(A[C]<0)throw new TypeError("Column must be greater than or equal to 0, got "+A[C]);return mQ.search(A,e,t,Q)};Ee.prototype.computeColumnSpans=function(){for(var A=0;A=0){var C=this._generatedMappings[g];if(C.generatedLine===e.generatedLine){var t=BA.getArg(C,"source",null);t!==null&&(t=this._sources.at(t),t=BA.computeSourceURL(this.sourceRoot,t,this._sourceMapURL));var Q=BA.getArg(C,"name",null);return Q!==null&&(Q=this._names.at(Q)),{source:t,line:BA.getArg(C,"originalLine",null),column:BA.getArg(C,"originalColumn",null),name:Q}}}return{source:null,line:null,column:null,name:null}};Ee.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(A){return A==null}):!1};Ee.prototype.sourceContentFor=function(A,e){if(!this.sourcesContent)return null;var g=this._findSourceIndex(A);if(g>=0)return this.sourcesContent[g];var C=A;this.sourceRoot!=null&&(C=BA.relative(this.sourceRoot,C));var t;if(this.sourceRoot!=null&&(t=BA.urlParse(this.sourceRoot))){var Q=C.replace(/^file:\/\//,"");if(t.scheme=="file"&&this._sources.has(Q))return this.sourcesContent[this._sources.indexOf(Q)];if((!t.path||t.path=="/")&&this._sources.has("/"+C))return this.sourcesContent[this._sources.indexOf("/"+C)]}if(e)return null;throw new Error('"'+C+'" is not in the SourceMap.')};Ee.prototype.generatedPositionFor=function(A){var e=BA.getArg(A,"source");if(e=this._findSourceIndex(e),e<0)return{line:null,column:null,lastColumn:null};var g={source:e,originalLine:BA.getArg(A,"line"),originalColumn:BA.getArg(A,"column")},C=this._findMapping(g,this._originalMappings,"originalLine","originalColumn",BA.compareByOriginalPositions,BA.getArg(A,"bias",KA.GREATEST_LOWER_BOUND));if(C>=0){var t=this._originalMappings[C];if(t.source===g.source)return{line:BA.getArg(t,"generatedLine",null),column:BA.getArg(t,"generatedColumn",null),lastColumn:BA.getArg(t,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};Pt.BasicSourceMapConsumer=Ee;function Cg(I,A){var e=I;typeof I=="string"&&(e=BA.parseSourceMapInput(I));var g=BA.getArg(e,"version"),C=BA.getArg(e,"sections");if(g!=this._version)throw new Error("Unsupported version: "+g);this._sources=new zI,this._names=new zI;var t={line:-1,column:0};this._sections=C.map(function(Q){if(Q.url)throw new Error("Support for url field in sections not implemented.");var u=BA.getArg(Q,"offset"),c=BA.getArg(u,"line"),h=BA.getArg(u,"column");if(c{"use strict";var gd=RQ().SourceMapGenerator,qt=jI(),Id=/(\r?\n)/,Cd=10,$I="$$$isSourceNode$$$";function Je(I,A,e,g,C){this.children=[],this.sourceContents={},this.line=I??null,this.column=A??null,this.source=e??null,this.name=C??null,this[$I]=!0,g!=null&&this.add(g)}Je.fromStringWithSourceMap=function(A,e,g){var C=new Je,t=A.split(Id),Q=0,u=function(){var s=B(),i=B()||"";return s+i;function B(){return Q=0;e--)this.prepend(A[e]);else if(A[$I]||typeof A=="string")this.children.unshift(A);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+A);return this};Je.prototype.walk=function(A){for(var e,g=0,C=this.children.length;g0){for(e=[],g=0;g{"use strict";Ot.SourceMapGenerator=RQ().SourceMapGenerator;Ot.SourceMapConsumer=ka().SourceMapConsumer;Ot.SourceNode=Ga().SourceNode});var Na=U((SM,td)=>{td.exports={name:"escodegen",description:"ECMAScript code generator",homepage:"http://github.com/estools/escodegen",main:"escodegen.js",bin:{esgenerate:"./bin/esgenerate.js",escodegen:"./bin/escodegen.js"},files:["LICENSE.BSD","README.md","bin","escodegen.js","package.json"],version:"2.1.0",engines:{node:">=6.0"},maintainers:[{name:"Yusuke Suzuki",email:"utatane.tea@gmail.com",web:"http://github.com/Constellation"}],repository:{type:"git",url:"http://github.com/estools/escodegen.git"},dependencies:{estraverse:"^5.2.0",esutils:"^2.0.2",esprima:"^4.0.1"},optionalDependencies:{"source-map":"~0.6.1"},devDependencies:{acorn:"^8.0.4",bluebird:"^3.4.7","bower-registry-client":"^1.0.0",chai:"^4.2.0","chai-exclude":"^2.0.2","commonjs-everywhere":"^0.9.7",gulp:"^4.0.2","gulp-eslint":"^6.0.0","gulp-mocha":"^7.0.2",minimist:"^1.2.5",optionator:"^0.9.1",semver:"^7.3.4"},license:"BSD-2-Clause",scripts:{test:"gulp travis","unit-test":"gulp test",lint:"gulp lint",release:"node tools/release.js","build-min":"./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js",build:"./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js"}}});var Ua=U(mg=>{"use strict";(function(){"use strict";var I,A,e,g,C,t,Q,u,c,h,r,a,s,i,B,E,n,D,f,S,k,M,N,J,O,b;C=ea(),t=Ba(),I=C.Syntax;function AA(o){return RA.Expression.hasOwnProperty(o.type)}function W(o){return RA.Statement.hasOwnProperty(o.type)}A={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},e={"??":A.Coalesce,"||":A.LogicalOR,"&&":A.LogicalAND,"|":A.BitwiseOR,"^":A.BitwiseXOR,"&":A.BitwiseAND,"==":A.Equality,"!=":A.Equality,"===":A.Equality,"!==":A.Equality,is:A.Equality,isnt:A.Equality,"<":A.Relational,">":A.Relational,"<=":A.Relational,">=":A.Relational,in:A.Relational,instanceof:A.Relational,"<<":A.BitwiseSHIFT,">>":A.BitwiseSHIFT,">>>":A.BitwiseSHIFT,"+":A.Additive,"-":A.Additive,"*":A.Multiplicative,"%":A.Multiplicative,"/":A.Multiplicative,"**":A.Exponentiation};var j=1,iA=2,oA=4,rA=8,sA=16,eA=32,DA=64,T=iA|oA,z=j|iA,Y=j|iA|oA,QA=j,hA=oA,uA=j|oA,aA=j,lA=j|eA,fA=0,te=j|sA,xA=j|rA;function ie(){return{indent:null,base:null,parse:null,comment:!1,format:{indent:{style:" ",base:0,adjustMultilineComment:!1},newline:` +`,space:" ",json:!1,renumber:!1,hexadecimal:!1,quotes:"single",escapeless:!1,compact:!1,parentheses:!0,semicolons:!0,safeConcatenation:!1,preserveBlankLines:!1},moz:{comprehensionExpressionStartsWithAssignment:!1,starlessGenerator:!1},sourceMap:null,sourceMapRoot:null,sourceMapWithCode:!1,directive:!1,raw:!0,verbatim:null,sourceCode:null}}function VA(o,d){var w="";for(d|=0;d>0;d>>>=1,o+=o)d&1&&(w+=o);return w}function je(o){return/[\r\n]/g.test(o)}function MA(o){var d=o.length;return d&&t.code.isLineTerminator(o.charCodeAt(d-1))}function ze(o,d){var w;for(w in d)d.hasOwnProperty(w)&&(o[w]=d[w]);return o}function Re(o,d){var w,F;function R(x){return typeof x=="object"&&x instanceof Object&&!(x instanceof RegExp)}for(w in d)d.hasOwnProperty(w)&&(F=d[w],R(F)?R(o[w])?Re(o[w],F):o[w]=Re({},F):o[w]=F);return o}function Jg(o){var d,w,F,R,x;if(o!==o)throw new Error("Numeric literal whose value is NaN");if(o<0||o===0&&1/o<0)throw new Error("Numeric literal whose value is negative");if(o===1/0)return c?"null":h?"1e400":"1e+400";if(d=""+o,!h||d.length<3)return d;for(w=d.indexOf("."),!c&&d.charCodeAt(0)===48&&w===1&&(w=0,d=d.slice(1)),F=d,d=d.replace("e+","e"),R=0,(x=F.indexOf("e"))>0&&(R=+F.slice(x+1),F=F.slice(0,x)),w>=0&&(R-=F.length-w-1,F=+(F.slice(0,w)+F.slice(w+1))+""),x=0;F.charCodeAt(F.length+x-1)===48;)--x;return x!==0&&(R-=x,F=F.slice(0,x)),R!==0&&(F+="e"+R),(F.length1e12&&Math.floor(o)===o&&(F="0x"+o.toString(16)).length255?"\\u"+"0000".slice(w.length)+w:o===0&&!t.code.isDecimalDigit(d)?"\\0":o===11?"\\x0B":"\\x"+"00".slice(w.length)+w)}function gI(o){if(o===92)return"\\\\";if(o===10)return"\\n";if(o===13)return"\\r";if(o===8232)return"\\u2028";if(o===8233)return"\\u2029";throw new Error("Incorrectly classified character")}function Ke(o){var d,w,F,R;for(R=a==="double"?'"':"'",d=0,w=o.length;d126))){d+=eI(R,o.charCodeAt(w+1));continue}d+=String.fromCharCode(R)}if(X=!(a==="double"||a==="auto"&&P=0&&!t.code.isLineTerminator(o.charCodeAt(d));--d);return o.length-1-d}function K(o,d){var w,F,R,x,P,X,CA,SA;for(w=o.split(/\r\n|[\r\n]/),X=Number.MAX_VALUE,F=1,R=w.length;FP&&(X=P)}for(typeof d<"u"?(CA=Q,w[1][X]==="*"&&(d+=" "),Q=d):(X&1&&--X,CA=Q),F=1,R=w.length;F0){if(x=d,J){for(R=o.leadingComments[0],d=[],SA=R.extendedRange,WA=R.range,Kg=N.substring(SA[0],WA[0]),He=(Kg.match(/\n/g)||[]).length,He>0?(d.push(VA(` +`,He)),d.push(LA(v(R)))):(d.push(Kg),d.push(v(R))),Fg=WA,w=1,F=o.leadingComments.length;w0?(d.push(VA(` +`,He)),d.push(LA(v(R)))):(d.push(Kg),d.push(v(R)));else for(P=!MA(pA(d).toString()),X=VA(" ",G(pA([Q,d,u]).toString())),w=0,F=o.trailingComments.length;w")),o.expression?(d.push(B),w=this.generateExpression(o.body,A.Assignment,Y),w.toString().charAt(0)==="{"&&(w=["(",w,")"]),d.push(w)):d.push(this.maybeBlock(o.body,xA)),d},RA.prototype.generateIterationForStatement=function(o,d,w){var F=["for"+(d.await?HA()+"await":"")+B+"("],R=this;return mA(function(){d.left.type===I.VariableDeclaration?mA(function(){F.push(d.left.kind+HA()),F.push(R.generateStatement(d.left.declarations[0],fA))}):F.push(R.generateExpression(d.left,A.Call,Y)),F=nA(F,o),F=[nA(F,R.generateExpression(d.right,A.Assignment,Y)),")"]}),F.push(this.maybeBlock(d.body,w)),F},RA.prototype.generatePropertyKey=function(o,d){var w=[];return d&&w.push("["),w.push(this.generateExpression(o,A.Assignment,Y)),d&&w.push("]"),w},RA.prototype.generateAssignment=function(o,d,w,F,R){return A.Assignment2&&(F=N.substring(w[0]+1,w[1]-1),F[0]===` +`&&(R=["{"]),R.push(F)));var P,X,CA,SA;for(SA=aA,d&rA&&(SA|=sA),P=0,X=o.body.length;P0&&!o.body[P-1].trailingComments&&!o.body[P].leadingComments&&IA(o.body[P-1].range[1],o.body[P].range[0],R)),P===X-1&&(SA|=eA),o.body[P].leadingComments&&J?CA=x.generateStatement(o.body[P],SA):CA=LA(x.generateStatement(o.body[P],SA)),R.push(CA),MA(pA(CA).toString())||J&&P1?mA(CA):CA(),w.push(this.semicolon(d)),w},ThrowStatement:function(o,d){return[nA("throw",this.generateExpression(o.argument,A.Sequence,Y)),this.semicolon(d)]},TryStatement:function(o,d){var w,F,R,x;if(w=["try",this.maybeBlock(o.block,aA)],w=this.maybeBlockSuffix(o.block,w),o.handlers)for(F=0,R=o.handlers.length;F0?` +`:""],P=te,R=0;R0&&!o.body[R-1].trailingComments&&!o.body[R].leadingComments&&IA(o.body[R-1].range[1],o.body[R].range[0],w)),F=LA(this.generateStatement(o.body[R],P)),w.push(F),R+10){for(F.push("("),x=0,P=R;x=2&&R.charCodeAt(0)===48)&&F.push(" ")),F.push(o.optional?"?.":"."),F.push(kA(o.property))),EA(F,A.Member,d)},MetaProperty:function(o,d,w){var F;return F=[],F.push(typeof o.meta=="string"?o.meta:kA(o.meta)),F.push("."),F.push(typeof o.property=="string"?o.property:kA(o.property)),EA(F,A.Member,d)},UnaryExpression:function(o,d,w){var F,R,x,P,X;return R=this.generateExpression(o.argument,A.Unary,Y),B===""?F=nA(o.operator,R):(F=[o.operator],o.operator.length>2?F=nA(F,R):(P=pA(F).toString(),X=P.charCodeAt(P.length-1),x=R.toString().charCodeAt(0),((X===43||X===45)&&X===x||t.code.isIdentifierPartES5(X)&&t.code.isIdentifierPartES5(x))&&F.push(HA()),F.push(R))),EA(F,A.Unary,d)},YieldExpression:function(o,d,w){var F;return o.delegate?F="yield*":F="yield",o.argument&&(F=nA(F,this.generateExpression(o.argument,A.Yield,Y))),EA(F,A.Yield,d)},AwaitExpression:function(o,d,w){var F=nA(o.all?"await*":"await",this.generateExpression(o.argument,A.Await,Y));return EA(F,A.Await,d)},UpdateExpression:function(o,d,w){return o.prefix?EA([o.operator,this.generateExpression(o.argument,A.Unary,Y)],A.Unary,d):EA([this.generateExpression(o.argument,A.Postfix,Y),o.operator],A.Postfix,d)},FunctionExpression:function(o,d,w){var F=[vA(o,!0),"function"];return o.id?(F.push(L(o)||HA()),F.push(kA(o.id))):F.push(L(o)||B),F.push(this.generateFunctionBody(o)),F},ArrayPattern:function(o,d,w){return this.ArrayExpression(o,d,w,!0)},ArrayExpression:function(o,d,w,F){var R,x,P=this;return o.elements.length?(x=F?!1:o.elements.length>1,R=["[",x?i:""],mA(function(X){var CA,SA;for(CA=0,SA=o.elements.length;CA1,mA(function(){x=P.generateExpression(o.properties[0],A.Sequence,Y)}),!F&&!je(pA(x).toString())?["{",B,x,B,"}"]:(mA(function(X){var CA,SA;if(R=["{",i,X,x],F)for(R.push(","+i),CA=1,SA=o.properties.length;CA0||S.moz.comprehensionExpressionStartsWithAssignment?F=nA(F,P):F.push(P)}),o.filter&&(F=nA(F,"if"+B),P=this.generateExpression(o.filter,A.Sequence,Y),F=nA(F,["(",P,")"])),S.moz.comprehensionExpressionStartsWithAssignment||(P=this.generateExpression(o.body,A.Assignment,Y),F=nA(F,P)),F.push(o.type===I.GeneratorExpression?")":"]"),F},ComprehensionBlock:function(o,d,w){var F;return o.left.type===I.VariableDeclaration?F=[o.left.kind,HA(),this.generateStatement(o.left.declarations[0],fA)]:F=this.generateExpression(o.left,A.Call,Y),F=nA(F,o.of?"of":"in"),F=nA(F,this.generateExpression(o.right,A.Sequence,Y)),["for"+B+"(",F,")"]},SpreadElement:function(o,d,w){return["...",this.generateExpression(o.argument,A.Assignment,Y)]},TaggedTemplateExpression:function(o,d,w){var F=z;w&iA||(F=QA);var R=[this.generateExpression(o.tag,A.Call,F),this.generateExpression(o.quasi,A.Primary,hA)];return EA(R,A.TaggedTemplate,d)},TemplateElement:function(o,d,w){return o.value.raw},TemplateLiteral:function(o,d,w){var F,R,x;for(F=["`"],R=0,x=o.quasis.length;R{"use strict";(function(A,e){typeof JC=="object"&&typeof NQ=="object"?NQ.exports=e():typeof define=="function"&&define.amd?define([],e):typeof JC=="object"?JC.esprima=e():A.esprima=e()})(JC,function(){return function(I){var A={};function e(g){if(A[g])return A[g].exports;var C=A[g]={exports:{},id:g,loaded:!1};return I[g].call(C.exports,C,C.exports,e),C.loaded=!0,C.exports}return e.m=I,e.c=A,e.p="",e(0)}([function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(1),C=e(3),t=e(8),Q=e(15);function u(s,i,B){var E=null,n=function(O,b){B&&B(O,b),E&&E.visit(O,b)},D=typeof B=="function"?n:null,f=!1;if(i){f=typeof i.comment=="boolean"&&i.comment;var S=typeof i.attachComment=="boolean"&&i.attachComment;(f||S)&&(E=new g.CommentHandler,E.attach=S,i.comment=!0,D=n)}var k=!1;i&&typeof i.sourceType=="string"&&(k=i.sourceType==="module");var M;i&&typeof i.jsx=="boolean"&&i.jsx?M=new C.JSXParser(s,i,D):M=new t.Parser(s,i,D);var N=k?M.parseModule():M.parseScript(),J=N;return f&&E&&(J.comments=E.comments),M.config.tokens&&(J.tokens=M.tokens),M.config.tolerant&&(J.errors=M.errorHandler.errors),J}A.parse=u;function c(s,i,B){var E=i||{};return E.sourceType="module",u(s,E,B)}A.parseModule=c;function h(s,i,B){var E=i||{};return E.sourceType="script",u(s,E,B)}A.parseScript=h;function r(s,i,B){var E=new Q.Tokenizer(s,i),n;n=[];try{for(;;){var D=E.getNextToken();if(!D)break;B&&(D=B(D)),n.push(D)}}catch(f){E.errorHandler.tolerate(f)}return E.errorHandler.tolerant&&(n.errors=E.errors()),n}A.tokenize=r;var a=e(2);A.Syntax=a.Syntax,A.version="4.0.1"},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(2),C=function(){function t(){this.attach=!1,this.comments=[],this.stack=[],this.leading=[],this.trailing=[]}return t.prototype.insertInnerComments=function(Q,u){if(Q.type===g.Syntax.BlockStatement&&Q.body.length===0){for(var c=[],h=this.leading.length-1;h>=0;--h){var r=this.leading[h];u.end.offset>=r.start&&(c.unshift(r.comment),this.leading.splice(h,1),this.trailing.splice(h,1))}c.length&&(Q.innerComments=c)}},t.prototype.findTrailingComments=function(Q){var u=[];if(this.trailing.length>0){for(var c=this.trailing.length-1;c>=0;--c){var h=this.trailing[c];h.start>=Q.end.offset&&u.unshift(h.comment)}return this.trailing.length=0,u}var r=this.stack[this.stack.length-1];if(r&&r.node.trailingComments){var a=r.node.trailingComments[0];a&&a.range[0]>=Q.end.offset&&(u=r.node.trailingComments,delete r.node.trailingComments)}return u},t.prototype.findLeadingComments=function(Q){for(var u=[],c;this.stack.length>0;){var h=this.stack[this.stack.length-1];if(h&&h.start>=Q.start.offset)c=h.node,this.stack.pop();else break}if(c){for(var r=c.leadingComments?c.leadingComments.length:0,a=r-1;a>=0;--a){var s=c.leadingComments[a];s.range[1]<=Q.start.offset&&(u.unshift(s),c.leadingComments.splice(a,1))}return c.leadingComments&&c.leadingComments.length===0&&delete c.leadingComments,u}for(var a=this.leading.length-1;a>=0;--a){var h=this.leading[a];h.start<=Q.start.offset&&(u.unshift(h.comment),this.leading.splice(a,1))}return u},t.prototype.visitNode=function(Q,u){if(!(Q.type===g.Syntax.Program&&Q.body.length>0)){this.insertInnerComments(Q,u);var c=this.findTrailingComments(u),h=this.findLeadingComments(u);h.length>0&&(Q.leadingComments=h),c.length>0&&(Q.trailingComments=c),this.stack.push({node:Q,start:u.start.offset})}},t.prototype.visitComment=function(Q,u){var c=Q.type[0]==="L"?"Line":"Block",h={type:c,value:Q.value};if(Q.range&&(h.range=Q.range),Q.loc&&(h.loc=Q.loc),this.comments.push(h),this.attach){var r={comment:{type:c,value:Q.value,range:[u.start.offset,u.end.offset]},start:u.start.offset};Q.loc&&(r.comment.loc=Q.loc),Q.type=c,this.leading.push(r),this.trailing.push(r)}},t.prototype.visit=function(Q,u){Q.type==="LineComment"?this.visitComment(Q,u):Q.type==="BlockComment"?this.visitComment(Q,u):this.attach&&this.visitNode(Q,u)},t}();A.CommentHandler=C},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.Syntax={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",DebuggerStatement:"DebuggerStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForOfStatement:"ForOfStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchCase:"SwitchCase",SwitchStatement:"SwitchStatement",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"}},function(I,A,e){"use strict";var g=this&&this.__extends||function(){var i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(B,E){B.__proto__=E}||function(B,E){for(var n in E)E.hasOwnProperty(n)&&(B[n]=E[n])};return function(B,E){i(B,E);function n(){this.constructor=B}B.prototype=E===null?Object.create(E):(n.prototype=E.prototype,new n)}}();Object.defineProperty(A,"__esModule",{value:!0});var C=e(4),t=e(5),Q=e(6),u=e(7),c=e(8),h=e(13),r=e(14);h.TokenName[100]="JSXIdentifier",h.TokenName[101]="JSXText";function a(i){var B;switch(i.type){case Q.JSXSyntax.JSXIdentifier:var E=i;B=E.name;break;case Q.JSXSyntax.JSXNamespacedName:var n=i;B=a(n.namespace)+":"+a(n.name);break;case Q.JSXSyntax.JSXMemberExpression:var D=i;B=a(D.object)+"."+a(D.property);break;default:break}return B}var s=function(i){g(B,i);function B(E,n,D){return i.call(this,E,n,D)||this}return B.prototype.parsePrimaryExpression=function(){return this.match("<")?this.parseJSXRoot():i.prototype.parsePrimaryExpression.call(this)},B.prototype.startJSX=function(){this.scanner.index=this.startMarker.index,this.scanner.lineNumber=this.startMarker.line,this.scanner.lineStart=this.startMarker.index-this.startMarker.column},B.prototype.finishJSX=function(){this.nextToken()},B.prototype.reenterJSX=function(){this.startJSX(),this.expectJSX("}"),this.config.tokens&&this.tokens.pop()},B.prototype.createJSXNode=function(){return this.collectComments(),{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},B.prototype.createJSXChildNode=function(){return{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},B.prototype.scanXHTMLEntity=function(E){for(var n="&",D=!0,f=!1,S=!1,k=!1;!this.scanner.eof()&&D&&!f;){var M=this.scanner.source[this.scanner.index];if(M===E)break;if(f=M===";",n+=M,++this.scanner.index,!f)switch(n.length){case 2:S=M==="#";break;case 3:S&&(k=M==="x",D=k||C.Character.isDecimalDigit(M.charCodeAt(0)),S=S&&!k);break;default:D=D&&!(S&&!C.Character.isDecimalDigit(M.charCodeAt(0))),D=D&&!(k&&!C.Character.isHexDigit(M.charCodeAt(0)));break}}if(D&&f&&n.length>2){var N=n.substr(1,n.length-2);S&&N.length>1?n=String.fromCharCode(parseInt(N.substr(1),10)):k&&N.length>2?n=String.fromCharCode(parseInt("0"+N.substr(1),16)):!S&&!k&&r.XHTMLEntities[N]&&(n=r.XHTMLEntities[N])}return n},B.prototype.lexJSX=function(){var E=this.scanner.source.charCodeAt(this.scanner.index);if(E===60||E===62||E===47||E===58||E===61||E===123||E===125){var n=this.scanner.source[this.scanner.index++];return{type:7,value:n,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index}}if(E===34||E===39){for(var D=this.scanner.index,f=this.scanner.source[this.scanner.index++],S="";!this.scanner.eof();){var k=this.scanner.source[this.scanner.index++];if(k===f)break;k==="&"?S+=this.scanXHTMLEntity(f):S+=k}return{type:8,value:S,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:D,end:this.scanner.index}}if(E===46){var M=this.scanner.source.charCodeAt(this.scanner.index+1),N=this.scanner.source.charCodeAt(this.scanner.index+2),n=M===46&&N===46?"...":".",D=this.scanner.index;return this.scanner.index+=n.length,{type:7,value:n,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:D,end:this.scanner.index}}if(E===96)return{type:10,value:"",lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(C.Character.isIdentifierStart(E)&&E!==92){var D=this.scanner.index;for(++this.scanner.index;!this.scanner.eof();){var k=this.scanner.source.charCodeAt(this.scanner.index);if(C.Character.isIdentifierPart(k)&&k!==92)++this.scanner.index;else if(k===45)++this.scanner.index;else break}var J=this.scanner.source.slice(D,this.scanner.index);return{type:100,value:J,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:D,end:this.scanner.index}}return this.scanner.lex()},B.prototype.nextJSXToken=function(){this.collectComments(),this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;var E=this.lexJSX();return this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.config.tokens&&this.tokens.push(this.convertToken(E)),E},B.prototype.nextJSXText=function(){this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;for(var E=this.scanner.index,n="";!this.scanner.eof();){var D=this.scanner.source[this.scanner.index];if(D==="{"||D==="<")break;++this.scanner.index,n+=D,C.Character.isLineTerminator(D.charCodeAt(0))&&(++this.scanner.lineNumber,D==="\r"&&this.scanner.source[this.scanner.index]===` +`&&++this.scanner.index,this.scanner.lineStart=this.scanner.index)}this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart;var f={type:101,value:n,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:E,end:this.scanner.index};return n.length>0&&this.config.tokens&&this.tokens.push(this.convertToken(f)),f},B.prototype.peekJSXToken=function(){var E=this.scanner.saveState();this.scanner.scanComments();var n=this.lexJSX();return this.scanner.restoreState(E),n},B.prototype.expectJSX=function(E){var n=this.nextJSXToken();(n.type!==7||n.value!==E)&&this.throwUnexpectedToken(n)},B.prototype.matchJSX=function(E){var n=this.peekJSXToken();return n.type===7&&n.value===E},B.prototype.parseJSXIdentifier=function(){var E=this.createJSXNode(),n=this.nextJSXToken();return n.type!==100&&this.throwUnexpectedToken(n),this.finalize(E,new t.JSXIdentifier(n.value))},B.prototype.parseJSXElementName=function(){var E=this.createJSXNode(),n=this.parseJSXIdentifier();if(this.matchJSX(":")){var D=n;this.expectJSX(":");var f=this.parseJSXIdentifier();n=this.finalize(E,new t.JSXNamespacedName(D,f))}else if(this.matchJSX("."))for(;this.matchJSX(".");){var S=n;this.expectJSX(".");var k=this.parseJSXIdentifier();n=this.finalize(E,new t.JSXMemberExpression(S,k))}return n},B.prototype.parseJSXAttributeName=function(){var E=this.createJSXNode(),n,D=this.parseJSXIdentifier();if(this.matchJSX(":")){var f=D;this.expectJSX(":");var S=this.parseJSXIdentifier();n=this.finalize(E,new t.JSXNamespacedName(f,S))}else n=D;return n},B.prototype.parseJSXStringLiteralAttribute=function(){var E=this.createJSXNode(),n=this.nextJSXToken();n.type!==8&&this.throwUnexpectedToken(n);var D=this.getTokenRaw(n);return this.finalize(E,new u.Literal(n.value,D))},B.prototype.parseJSXExpressionAttribute=function(){var E=this.createJSXNode();this.expectJSX("{"),this.finishJSX(),this.match("}")&&this.tolerateError("JSX attributes must only be assigned a non-empty expression");var n=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(E,new t.JSXExpressionContainer(n))},B.prototype.parseJSXAttributeValue=function(){return this.matchJSX("{")?this.parseJSXExpressionAttribute():this.matchJSX("<")?this.parseJSXElement():this.parseJSXStringLiteralAttribute()},B.prototype.parseJSXNameValueAttribute=function(){var E=this.createJSXNode(),n=this.parseJSXAttributeName(),D=null;return this.matchJSX("=")&&(this.expectJSX("="),D=this.parseJSXAttributeValue()),this.finalize(E,new t.JSXAttribute(n,D))},B.prototype.parseJSXSpreadAttribute=function(){var E=this.createJSXNode();this.expectJSX("{"),this.expectJSX("..."),this.finishJSX();var n=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(E,new t.JSXSpreadAttribute(n))},B.prototype.parseJSXAttributes=function(){for(var E=[];!this.matchJSX("/")&&!this.matchJSX(">");){var n=this.matchJSX("{")?this.parseJSXSpreadAttribute():this.parseJSXNameValueAttribute();E.push(n)}return E},B.prototype.parseJSXOpeningElement=function(){var E=this.createJSXNode();this.expectJSX("<");var n=this.parseJSXElementName(),D=this.parseJSXAttributes(),f=this.matchJSX("/");return f&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(E,new t.JSXOpeningElement(n,f,D))},B.prototype.parseJSXBoundaryElement=function(){var E=this.createJSXNode();if(this.expectJSX("<"),this.matchJSX("/")){this.expectJSX("/");var n=this.parseJSXElementName();return this.expectJSX(">"),this.finalize(E,new t.JSXClosingElement(n))}var D=this.parseJSXElementName(),f=this.parseJSXAttributes(),S=this.matchJSX("/");return S&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(E,new t.JSXOpeningElement(D,S,f))},B.prototype.parseJSXEmptyExpression=function(){var E=this.createJSXChildNode();return this.collectComments(),this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.finalize(E,new t.JSXEmptyExpression)},B.prototype.parseJSXExpressionContainer=function(){var E=this.createJSXNode();this.expectJSX("{");var n;return this.matchJSX("}")?(n=this.parseJSXEmptyExpression(),this.expectJSX("}")):(this.finishJSX(),n=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(E,new t.JSXExpressionContainer(n))},B.prototype.parseJSXChildren=function(){for(var E=[];!this.scanner.eof();){var n=this.createJSXChildNode(),D=this.nextJSXText();if(D.start0){var k=this.finalize(E.node,new t.JSXElement(E.opening,E.children,E.closing));E=n[n.length-1],E.children.push(k),n.pop()}else break}}return E},B.prototype.parseJSXElement=function(){var E=this.createJSXNode(),n=this.parseJSXOpeningElement(),D=[],f=null;if(!n.selfClosing){var S=this.parseComplexJSXElement({node:E,opening:n,closing:f,children:D});D=S.children,f=S.closing}return this.finalize(E,new t.JSXElement(n,D,f))},B.prototype.parseJSXRoot=function(){this.config.tokens&&this.tokens.pop(),this.startJSX();var E=this.parseJSXElement();return this.finishJSX(),E},B.prototype.isStartOfExpression=function(){return i.prototype.isStartOfExpression.call(this)||this.match("<")},B}(c.Parser);A.JSXParser=s},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var e={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};A.Character={fromCodePoint:function(g){return g<65536?String.fromCharCode(g):String.fromCharCode(55296+(g-65536>>10))+String.fromCharCode(56320+(g-65536&1023))},isWhiteSpace:function(g){return g===32||g===9||g===11||g===12||g===160||g>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(g)>=0},isLineTerminator:function(g){return g===10||g===13||g===8232||g===8233},isIdentifierStart:function(g){return g===36||g===95||g>=65&&g<=90||g>=97&&g<=122||g===92||g>=128&&e.NonAsciiIdentifierStart.test(A.Character.fromCodePoint(g))},isIdentifierPart:function(g){return g===36||g===95||g>=65&&g<=90||g>=97&&g<=122||g>=48&&g<=57||g===92||g>=128&&e.NonAsciiIdentifierPart.test(A.Character.fromCodePoint(g))},isDecimalDigit:function(g){return g>=48&&g<=57},isHexDigit:function(g){return g>=48&&g<=57||g>=65&&g<=70||g>=97&&g<=102},isOctalDigit:function(g){return g>=48&&g<=55}}},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(6),C=function(){function E(n){this.type=g.JSXSyntax.JSXClosingElement,this.name=n}return E}();A.JSXClosingElement=C;var t=function(){function E(n,D,f){this.type=g.JSXSyntax.JSXElement,this.openingElement=n,this.children=D,this.closingElement=f}return E}();A.JSXElement=t;var Q=function(){function E(){this.type=g.JSXSyntax.JSXEmptyExpression}return E}();A.JSXEmptyExpression=Q;var u=function(){function E(n){this.type=g.JSXSyntax.JSXExpressionContainer,this.expression=n}return E}();A.JSXExpressionContainer=u;var c=function(){function E(n){this.type=g.JSXSyntax.JSXIdentifier,this.name=n}return E}();A.JSXIdentifier=c;var h=function(){function E(n,D){this.type=g.JSXSyntax.JSXMemberExpression,this.object=n,this.property=D}return E}();A.JSXMemberExpression=h;var r=function(){function E(n,D){this.type=g.JSXSyntax.JSXAttribute,this.name=n,this.value=D}return E}();A.JSXAttribute=r;var a=function(){function E(n,D){this.type=g.JSXSyntax.JSXNamespacedName,this.namespace=n,this.name=D}return E}();A.JSXNamespacedName=a;var s=function(){function E(n,D,f){this.type=g.JSXSyntax.JSXOpeningElement,this.name=n,this.selfClosing=D,this.attributes=f}return E}();A.JSXOpeningElement=s;var i=function(){function E(n){this.type=g.JSXSyntax.JSXSpreadAttribute,this.argument=n}return E}();A.JSXSpreadAttribute=i;var B=function(){function E(n,D){this.type=g.JSXSyntax.JSXText,this.value=n,this.raw=D}return E}();A.JSXText=B},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.JSXSyntax={JSXAttribute:"JSXAttribute",JSXClosingElement:"JSXClosingElement",JSXElement:"JSXElement",JSXEmptyExpression:"JSXEmptyExpression",JSXExpressionContainer:"JSXExpressionContainer",JSXIdentifier:"JSXIdentifier",JSXMemberExpression:"JSXMemberExpression",JSXNamespacedName:"JSXNamespacedName",JSXOpeningElement:"JSXOpeningElement",JSXSpreadAttribute:"JSXSpreadAttribute",JSXText:"JSXText"}},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(2),C=function(){function L(H){this.type=g.Syntax.ArrayExpression,this.elements=H}return L}();A.ArrayExpression=C;var t=function(){function L(H){this.type=g.Syntax.ArrayPattern,this.elements=H}return L}();A.ArrayPattern=t;var Q=function(){function L(H,_,cA){this.type=g.Syntax.ArrowFunctionExpression,this.id=null,this.params=H,this.body=_,this.generator=!1,this.expression=cA,this.async=!1}return L}();A.ArrowFunctionExpression=Q;var u=function(){function L(H,_,cA){this.type=g.Syntax.AssignmentExpression,this.operator=H,this.left=_,this.right=cA}return L}();A.AssignmentExpression=u;var c=function(){function L(H,_){this.type=g.Syntax.AssignmentPattern,this.left=H,this.right=_}return L}();A.AssignmentPattern=c;var h=function(){function L(H,_,cA){this.type=g.Syntax.ArrowFunctionExpression,this.id=null,this.params=H,this.body=_,this.generator=!1,this.expression=cA,this.async=!0}return L}();A.AsyncArrowFunctionExpression=h;var r=function(){function L(H,_,cA){this.type=g.Syntax.FunctionDeclaration,this.id=H,this.params=_,this.body=cA,this.generator=!1,this.expression=!1,this.async=!0}return L}();A.AsyncFunctionDeclaration=r;var a=function(){function L(H,_,cA){this.type=g.Syntax.FunctionExpression,this.id=H,this.params=_,this.body=cA,this.generator=!1,this.expression=!1,this.async=!0}return L}();A.AsyncFunctionExpression=a;var s=function(){function L(H){this.type=g.Syntax.AwaitExpression,this.argument=H}return L}();A.AwaitExpression=s;var i=function(){function L(H,_,cA){var o=H==="||"||H==="&&";this.type=o?g.Syntax.LogicalExpression:g.Syntax.BinaryExpression,this.operator=H,this.left=_,this.right=cA}return L}();A.BinaryExpression=i;var B=function(){function L(H){this.type=g.Syntax.BlockStatement,this.body=H}return L}();A.BlockStatement=B;var E=function(){function L(H){this.type=g.Syntax.BreakStatement,this.label=H}return L}();A.BreakStatement=E;var n=function(){function L(H,_){this.type=g.Syntax.CallExpression,this.callee=H,this.arguments=_}return L}();A.CallExpression=n;var D=function(){function L(H,_){this.type=g.Syntax.CatchClause,this.param=H,this.body=_}return L}();A.CatchClause=D;var f=function(){function L(H){this.type=g.Syntax.ClassBody,this.body=H}return L}();A.ClassBody=f;var S=function(){function L(H,_,cA){this.type=g.Syntax.ClassDeclaration,this.id=H,this.superClass=_,this.body=cA}return L}();A.ClassDeclaration=S;var k=function(){function L(H,_,cA){this.type=g.Syntax.ClassExpression,this.id=H,this.superClass=_,this.body=cA}return L}();A.ClassExpression=k;var M=function(){function L(H,_){this.type=g.Syntax.MemberExpression,this.computed=!0,this.object=H,this.property=_}return L}();A.ComputedMemberExpression=M;var N=function(){function L(H,_,cA){this.type=g.Syntax.ConditionalExpression,this.test=H,this.consequent=_,this.alternate=cA}return L}();A.ConditionalExpression=N;var J=function(){function L(H){this.type=g.Syntax.ContinueStatement,this.label=H}return L}();A.ContinueStatement=J;var O=function(){function L(){this.type=g.Syntax.DebuggerStatement}return L}();A.DebuggerStatement=O;var b=function(){function L(H,_){this.type=g.Syntax.ExpressionStatement,this.expression=H,this.directive=_}return L}();A.Directive=b;var AA=function(){function L(H,_){this.type=g.Syntax.DoWhileStatement,this.body=H,this.test=_}return L}();A.DoWhileStatement=AA;var W=function(){function L(){this.type=g.Syntax.EmptyStatement}return L}();A.EmptyStatement=W;var j=function(){function L(H){this.type=g.Syntax.ExportAllDeclaration,this.source=H}return L}();A.ExportAllDeclaration=j;var iA=function(){function L(H){this.type=g.Syntax.ExportDefaultDeclaration,this.declaration=H}return L}();A.ExportDefaultDeclaration=iA;var oA=function(){function L(H,_,cA){this.type=g.Syntax.ExportNamedDeclaration,this.declaration=H,this.specifiers=_,this.source=cA}return L}();A.ExportNamedDeclaration=oA;var rA=function(){function L(H,_){this.type=g.Syntax.ExportSpecifier,this.exported=_,this.local=H}return L}();A.ExportSpecifier=rA;var sA=function(){function L(H){this.type=g.Syntax.ExpressionStatement,this.expression=H}return L}();A.ExpressionStatement=sA;var eA=function(){function L(H,_,cA){this.type=g.Syntax.ForInStatement,this.left=H,this.right=_,this.body=cA,this.each=!1}return L}();A.ForInStatement=eA;var DA=function(){function L(H,_,cA){this.type=g.Syntax.ForOfStatement,this.left=H,this.right=_,this.body=cA}return L}();A.ForOfStatement=DA;var T=function(){function L(H,_,cA,o){this.type=g.Syntax.ForStatement,this.init=H,this.test=_,this.update=cA,this.body=o}return L}();A.ForStatement=T;var z=function(){function L(H,_,cA,o){this.type=g.Syntax.FunctionDeclaration,this.id=H,this.params=_,this.body=cA,this.generator=o,this.expression=!1,this.async=!1}return L}();A.FunctionDeclaration=z;var Y=function(){function L(H,_,cA,o){this.type=g.Syntax.FunctionExpression,this.id=H,this.params=_,this.body=cA,this.generator=o,this.expression=!1,this.async=!1}return L}();A.FunctionExpression=Y;var QA=function(){function L(H){this.type=g.Syntax.Identifier,this.name=H}return L}();A.Identifier=QA;var hA=function(){function L(H,_,cA){this.type=g.Syntax.IfStatement,this.test=H,this.consequent=_,this.alternate=cA}return L}();A.IfStatement=hA;var uA=function(){function L(H,_){this.type=g.Syntax.ImportDeclaration,this.specifiers=H,this.source=_}return L}();A.ImportDeclaration=uA;var aA=function(){function L(H){this.type=g.Syntax.ImportDefaultSpecifier,this.local=H}return L}();A.ImportDefaultSpecifier=aA;var lA=function(){function L(H){this.type=g.Syntax.ImportNamespaceSpecifier,this.local=H}return L}();A.ImportNamespaceSpecifier=lA;var fA=function(){function L(H,_){this.type=g.Syntax.ImportSpecifier,this.local=H,this.imported=_}return L}();A.ImportSpecifier=fA;var te=function(){function L(H,_){this.type=g.Syntax.LabeledStatement,this.label=H,this.body=_}return L}();A.LabeledStatement=te;var xA=function(){function L(H,_){this.type=g.Syntax.Literal,this.value=H,this.raw=_}return L}();A.Literal=xA;var ie=function(){function L(H,_){this.type=g.Syntax.MetaProperty,this.meta=H,this.property=_}return L}();A.MetaProperty=ie;var VA=function(){function L(H,_,cA,o,d){this.type=g.Syntax.MethodDefinition,this.key=H,this.computed=_,this.value=cA,this.kind=o,this.static=d}return L}();A.MethodDefinition=VA;var je=function(){function L(H){this.type=g.Syntax.Program,this.body=H,this.sourceType="module"}return L}();A.Module=je;var MA=function(){function L(H,_){this.type=g.Syntax.NewExpression,this.callee=H,this.arguments=_}return L}();A.NewExpression=MA;var ze=function(){function L(H){this.type=g.Syntax.ObjectExpression,this.properties=H}return L}();A.ObjectExpression=ze;var Re=function(){function L(H){this.type=g.Syntax.ObjectPattern,this.properties=H}return L}();A.ObjectPattern=Re;var Jg=function(){function L(H,_,cA,o,d,w){this.type=g.Syntax.Property,this.key=_,this.computed=cA,this.value=o,this.kind=H,this.method=d,this.shorthand=w}return L}();A.Property=Jg;var Eg=function(){function L(H,_,cA,o){this.type=g.Syntax.Literal,this.value=H,this.raw=_,this.regex={pattern:cA,flags:o}}return L}();A.RegexLiteral=Eg;var AI=function(){function L(H){this.type=g.Syntax.RestElement,this.argument=H}return L}();A.RestElement=AI;var eI=function(){function L(H){this.type=g.Syntax.ReturnStatement,this.argument=H}return L}();A.ReturnStatement=eI;var gI=function(){function L(H){this.type=g.Syntax.Program,this.body=H,this.sourceType="script"}return L}();A.Script=gI;var Ke=function(){function L(H){this.type=g.Syntax.SequenceExpression,this.expressions=H}return L}();A.SequenceExpression=Ke;var II=function(){function L(H){this.type=g.Syntax.SpreadElement,this.argument=H}return L}();A.SpreadElement=II;var dg=function(){function L(H,_){this.type=g.Syntax.MemberExpression,this.computed=!1,this.object=H,this.property=_}return L}();A.StaticMemberExpression=dg;var pA=function(){function L(){this.type=g.Syntax.Super}return L}();A.Super=pA;var HA=function(){function L(H,_){this.type=g.Syntax.SwitchCase,this.test=H,this.consequent=_}return L}();A.SwitchCase=HA;var nA=function(){function L(H,_){this.type=g.Syntax.SwitchStatement,this.discriminant=H,this.cases=_}return L}();A.SwitchStatement=nA;var LA=function(){function L(H,_){this.type=g.Syntax.TaggedTemplateExpression,this.tag=H,this.quasi=_}return L}();A.TaggedTemplateExpression=LA;var mA=function(){function L(H,_){this.type=g.Syntax.TemplateElement,this.value=H,this.tail=_}return L}();A.TemplateElement=mA;var G=function(){function L(H,_){this.type=g.Syntax.TemplateLiteral,this.quasis=H,this.expressions=_}return L}();A.TemplateLiteral=G;var K=function(){function L(){this.type=g.Syntax.ThisExpression}return L}();A.ThisExpression=K;var v=function(){function L(H){this.type=g.Syntax.ThrowStatement,this.argument=H}return L}();A.ThrowStatement=v;var V=function(){function L(H,_,cA){this.type=g.Syntax.TryStatement,this.block=H,this.handler=_,this.finalizer=cA}return L}();A.TryStatement=V;var IA=function(){function L(H,_){this.type=g.Syntax.UnaryExpression,this.operator=H,this.argument=_,this.prefix=!0}return L}();A.UnaryExpression=IA;var EA=function(){function L(H,_,cA){this.type=g.Syntax.UpdateExpression,this.operator=H,this.argument=_,this.prefix=cA}return L}();A.UpdateExpression=EA;var yA=function(){function L(H,_){this.type=g.Syntax.VariableDeclaration,this.declarations=H,this.kind=_}return L}();A.VariableDeclaration=yA;var GA=function(){function L(H,_){this.type=g.Syntax.VariableDeclarator,this.id=H,this.init=_}return L}();A.VariableDeclarator=GA;var RA=function(){function L(H,_){this.type=g.Syntax.WhileStatement,this.test=H,this.body=_}return L}();A.WhileStatement=RA;var kA=function(){function L(H,_){this.type=g.Syntax.WithStatement,this.object=H,this.body=_}return L}();A.WithStatement=kA;var vA=function(){function L(H,_){this.type=g.Syntax.YieldExpression,this.argument=H,this.delegate=_}return L}();A.YieldExpression=vA},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(9),C=e(10),t=e(11),Q=e(7),u=e(12),c=e(2),h=e(13),r="ArrowParameterPlaceHolder",a=function(){function s(i,B,E){B===void 0&&(B={}),this.config={range:typeof B.range=="boolean"&&B.range,loc:typeof B.loc=="boolean"&&B.loc,source:null,tokens:typeof B.tokens=="boolean"&&B.tokens,comment:typeof B.comment=="boolean"&&B.comment,tolerant:typeof B.tolerant=="boolean"&&B.tolerant},this.config.loc&&B.source&&B.source!==null&&(this.config.source=String(B.source)),this.delegate=E,this.errorHandler=new C.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new u.Scanner(i,this.errorHandler),this.scanner.trackComment=this.config.comment,this.operatorPrecedence={")":0,";":0,",":0,"=":0,"]":0,"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":11,"/":11,"%":11},this.lookahead={type:2,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.hasLineTerminator=!1,this.context={isModule:!1,await:!1,allowIn:!0,allowStrictDirective:!0,allowYield:!0,firstCoverInitializedNameError:null,isAssignmentTarget:!1,isBindingElement:!1,inFunctionBody:!1,inIteration:!1,inSwitch:!1,labelSet:{},strict:!1},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.lastMarker={index:0,line:this.scanner.lineNumber,column:0},this.nextToken(),this.lastMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}return s.prototype.throwError=function(i){for(var B=[],E=1;E0&&this.delegate)for(var B=0;B>="||i===">>>="||i==="&="||i==="^="||i==="|="},s.prototype.isolateCoverGrammar=function(i){var B=this.context.isBindingElement,E=this.context.isAssignmentTarget,n=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var D=i.call(this);return this.context.firstCoverInitializedNameError!==null&&this.throwUnexpectedToken(this.context.firstCoverInitializedNameError),this.context.isBindingElement=B,this.context.isAssignmentTarget=E,this.context.firstCoverInitializedNameError=n,D},s.prototype.inheritCoverGrammar=function(i){var B=this.context.isBindingElement,E=this.context.isAssignmentTarget,n=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var D=i.call(this);return this.context.isBindingElement=this.context.isBindingElement&&B,this.context.isAssignmentTarget=this.context.isAssignmentTarget&&E,this.context.firstCoverInitializedNameError=n||this.context.firstCoverInitializedNameError,D},s.prototype.consumeSemicolon=function(){this.match(";")?this.nextToken():this.hasLineTerminator||(this.lookahead.type!==2&&!this.match("}")&&this.throwUnexpectedToken(this.lookahead),this.lastMarker.index=this.startMarker.index,this.lastMarker.line=this.startMarker.line,this.lastMarker.column=this.startMarker.column)},s.prototype.parsePrimaryExpression=function(){var i=this.createNode(),B,E,n;switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&this.lookahead.value==="await"&&this.tolerateUnexpectedToken(this.lookahead),B=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(i,new Q.Identifier(this.nextToken().value));break;case 6:case 8:this.context.strict&&this.lookahead.octal&&this.tolerateUnexpectedToken(this.lookahead,t.Messages.StrictOctalLiteral),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,E=this.nextToken(),n=this.getTokenRaw(E),B=this.finalize(i,new Q.Literal(E.value,n));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,E=this.nextToken(),n=this.getTokenRaw(E),B=this.finalize(i,new Q.Literal(E.value==="true",n));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,E=this.nextToken(),n=this.getTokenRaw(E),B=this.finalize(i,new Q.Literal(null,n));break;case 10:B=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case"(":this.context.isBindingElement=!1,B=this.inheritCoverGrammar(this.parseGroupExpression);break;case"[":B=this.inheritCoverGrammar(this.parseArrayInitializer);break;case"{":B=this.inheritCoverGrammar(this.parseObjectInitializer);break;case"/":case"/=":this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,E=this.nextRegexToken(),n=this.getTokenRaw(E),B=this.finalize(i,new Q.RegexLiteral(E.regex,n,E.pattern,E.flags));break;default:B=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword("yield")?B=this.parseIdentifierName():!this.context.strict&&this.matchKeyword("let")?B=this.finalize(i,new Q.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword("function")?B=this.parseFunctionExpression():this.matchKeyword("this")?(this.nextToken(),B=this.finalize(i,new Q.ThisExpression)):this.matchKeyword("class")?B=this.parseClassExpression():B=this.throwUnexpectedToken(this.nextToken()));break;default:B=this.throwUnexpectedToken(this.nextToken())}return B},s.prototype.parseSpreadElement=function(){var i=this.createNode();this.expect("...");var B=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(i,new Q.SpreadElement(B))},s.prototype.parseArrayInitializer=function(){var i=this.createNode(),B=[];for(this.expect("[");!this.match("]");)if(this.match(","))this.nextToken(),B.push(null);else if(this.match("...")){var E=this.parseSpreadElement();this.match("]")||(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.expect(",")),B.push(E)}else B.push(this.inheritCoverGrammar(this.parseAssignmentExpression)),this.match("]")||this.expect(",");return this.expect("]"),this.finalize(i,new Q.ArrayExpression(B))},s.prototype.parsePropertyMethod=function(i){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var B=this.context.strict,E=this.context.allowStrictDirective;this.context.allowStrictDirective=i.simple;var n=this.isolateCoverGrammar(this.parseFunctionSourceElements);return this.context.strict&&i.firstRestricted&&this.tolerateUnexpectedToken(i.firstRestricted,i.message),this.context.strict&&i.stricted&&this.tolerateUnexpectedToken(i.stricted,i.message),this.context.strict=B,this.context.allowStrictDirective=E,n},s.prototype.parsePropertyMethodFunction=function(){var i=!1,B=this.createNode(),E=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters(),D=this.parsePropertyMethod(n);return this.context.allowYield=E,this.finalize(B,new Q.FunctionExpression(null,n.params,D,i))},s.prototype.parsePropertyMethodAsyncFunction=function(){var i=this.createNode(),B=this.context.allowYield,E=this.context.await;this.context.allowYield=!1,this.context.await=!0;var n=this.parseFormalParameters(),D=this.parsePropertyMethod(n);return this.context.allowYield=B,this.context.await=E,this.finalize(i,new Q.AsyncFunctionExpression(null,n.params,D))},s.prototype.parseObjectPropertyKey=function(){var i=this.createNode(),B=this.nextToken(),E;switch(B.type){case 8:case 6:this.context.strict&&B.octal&&this.tolerateUnexpectedToken(B,t.Messages.StrictOctalLiteral);var n=this.getTokenRaw(B);E=this.finalize(i,new Q.Literal(B.value,n));break;case 3:case 1:case 5:case 4:E=this.finalize(i,new Q.Identifier(B.value));break;case 7:B.value==="["?(E=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect("]")):E=this.throwUnexpectedToken(B);break;default:E=this.throwUnexpectedToken(B)}return E},s.prototype.isPropertyKey=function(i,B){return i.type===c.Syntax.Identifier&&i.name===B||i.type===c.Syntax.Literal&&i.value===B},s.prototype.parseObjectProperty=function(i){var B=this.createNode(),E=this.lookahead,n,D=null,f=null,S=!1,k=!1,M=!1,N=!1;if(E.type===3){var J=E.value;this.nextToken(),S=this.match("["),N=!this.hasLineTerminator&&J==="async"&&!this.match(":")&&!this.match("(")&&!this.match("*")&&!this.match(","),D=N?this.parseObjectPropertyKey():this.finalize(B,new Q.Identifier(J))}else this.match("*")?this.nextToken():(S=this.match("["),D=this.parseObjectPropertyKey());var O=this.qualifiedPropertyName(this.lookahead);if(E.type===3&&!N&&E.value==="get"&&O)n="get",S=this.match("["),D=this.parseObjectPropertyKey(),this.context.allowYield=!1,f=this.parseGetterMethod();else if(E.type===3&&!N&&E.value==="set"&&O)n="set",S=this.match("["),D=this.parseObjectPropertyKey(),f=this.parseSetterMethod();else if(E.type===7&&E.value==="*"&&O)n="init",S=this.match("["),D=this.parseObjectPropertyKey(),f=this.parseGeneratorMethod(),k=!0;else if(D||this.throwUnexpectedToken(this.lookahead),n="init",this.match(":")&&!N)!S&&this.isPropertyKey(D,"__proto__")&&(i.value&&this.tolerateError(t.Messages.DuplicateProtoProperty),i.value=!0),this.nextToken(),f=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match("("))f=N?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),k=!0;else if(E.type===3){var J=this.finalize(B,new Q.Identifier(E.value));if(this.match("=")){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),M=!0;var b=this.isolateCoverGrammar(this.parseAssignmentExpression);f=this.finalize(B,new Q.AssignmentPattern(J,b))}else M=!0,f=J}else this.throwUnexpectedToken(this.nextToken());return this.finalize(B,new Q.Property(n,D,S,f,k,M))},s.prototype.parseObjectInitializer=function(){var i=this.createNode();this.expect("{");for(var B=[],E={value:!1};!this.match("}");)B.push(this.parseObjectProperty(E)),this.match("}")||this.expectCommaSeparator();return this.expect("}"),this.finalize(i,new Q.ObjectExpression(B))},s.prototype.parseTemplateHead=function(){g.assert(this.lookahead.head,"Template literal must start with a template head");var i=this.createNode(),B=this.nextToken(),E=B.value,n=B.cooked;return this.finalize(i,new Q.TemplateElement({raw:E,cooked:n},B.tail))},s.prototype.parseTemplateElement=function(){this.lookahead.type!==10&&this.throwUnexpectedToken();var i=this.createNode(),B=this.nextToken(),E=B.value,n=B.cooked;return this.finalize(i,new Q.TemplateElement({raw:E,cooked:n},B.tail))},s.prototype.parseTemplateLiteral=function(){var i=this.createNode(),B=[],E=[],n=this.parseTemplateHead();for(E.push(n);!n.tail;)B.push(this.parseExpression()),n=this.parseTemplateElement(),E.push(n);return this.finalize(i,new Q.TemplateLiteral(E,B))},s.prototype.reinterpretExpressionAsPattern=function(i){switch(i.type){case c.Syntax.Identifier:case c.Syntax.MemberExpression:case c.Syntax.RestElement:case c.Syntax.AssignmentPattern:break;case c.Syntax.SpreadElement:i.type=c.Syntax.RestElement,this.reinterpretExpressionAsPattern(i.argument);break;case c.Syntax.ArrayExpression:i.type=c.Syntax.ArrayPattern;for(var B=0;B")||this.expect("=>"),i={type:r,params:[],async:!1};else{var B=this.lookahead,E=[];if(this.match("..."))i=this.parseRestElement(E),this.expect(")"),this.match("=>")||this.expect("=>"),i={type:r,params:[i],async:!1};else{var n=!1;if(this.context.isBindingElement=!0,i=this.inheritCoverGrammar(this.parseAssignmentExpression),this.match(",")){var D=[];for(this.context.isAssignmentTarget=!1,D.push(i);this.lookahead.type!==2&&this.match(",");){if(this.nextToken(),this.match(")")){this.nextToken();for(var f=0;f")||this.expect("=>"),this.context.isBindingElement=!1;for(var f=0;f")&&(i.type===c.Syntax.Identifier&&i.name==="yield"&&(n=!0,i={type:r,params:[i],async:!1}),!n)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),i.type===c.Syntax.SequenceExpression)for(var f=0;f")){for(var k=0;k0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var D=[i,this.lookahead],f=B,S=this.isolateCoverGrammar(this.parseExponentiationExpression),k=[f,E.value,S],M=[n];n=this.binaryPrecedence(this.lookahead),!(n<=0);){for(;k.length>2&&n<=M[M.length-1];){S=k.pop();var N=k.pop();M.pop(),f=k.pop(),D.pop();var J=this.startNode(D[D.length-1]);k.push(this.finalize(J,new Q.BinaryExpression(N,f,S)))}k.push(this.nextToken().value),M.push(n),D.push(this.lookahead),k.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var O=k.length-1;B=k[O];for(var b=D.pop();O>1;){var AA=D.pop(),W=b&&b.lineStart,J=this.startNode(AA,W),N=k[O-1];B=this.finalize(J,new Q.BinaryExpression(N,k[O-2],B)),O-=2,b=AA}}return B},s.prototype.parseConditionalExpression=function(){var i=this.lookahead,B=this.inheritCoverGrammar(this.parseBinaryExpression);if(this.match("?")){this.nextToken();var E=this.context.allowIn;this.context.allowIn=!0;var n=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowIn=E,this.expect(":");var D=this.isolateCoverGrammar(this.parseAssignmentExpression);B=this.finalize(this.startNode(i),new Q.ConditionalExpression(B,n,D)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return B},s.prototype.checkPatternParam=function(i,B){switch(B.type){case c.Syntax.Identifier:this.validateParam(i,B,B.name);break;case c.Syntax.RestElement:this.checkPatternParam(i,B.argument);break;case c.Syntax.AssignmentPattern:this.checkPatternParam(i,B.left);break;case c.Syntax.ArrayPattern:for(var E=0;E")){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var D=i.async,f=this.reinterpretAsCoverFormalsList(i);if(f){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var S=this.context.strict,k=this.context.allowStrictDirective;this.context.allowStrictDirective=f.simple;var M=this.context.allowYield,N=this.context.await;this.context.allowYield=!0,this.context.await=D;var J=this.startNode(B);this.expect("=>");var O=void 0;if(this.match("{")){var b=this.context.allowIn;this.context.allowIn=!0,O=this.parseFunctionSourceElements(),this.context.allowIn=b}else O=this.isolateCoverGrammar(this.parseAssignmentExpression);var AA=O.type!==c.Syntax.BlockStatement;this.context.strict&&f.firstRestricted&&this.throwUnexpectedToken(f.firstRestricted,f.message),this.context.strict&&f.stricted&&this.tolerateUnexpectedToken(f.stricted,f.message),i=D?this.finalize(J,new Q.AsyncArrowFunctionExpression(f.params,O,AA)):this.finalize(J,new Q.ArrowFunctionExpression(f.params,O,AA)),this.context.strict=S,this.context.allowStrictDirective=k,this.context.allowYield=M,this.context.await=N}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(t.Messages.InvalidLHSInAssignment),this.context.strict&&i.type===c.Syntax.Identifier){var W=i;this.scanner.isRestrictedWord(W.name)&&this.tolerateUnexpectedToken(E,t.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(W.name)&&this.tolerateUnexpectedToken(E,t.Messages.StrictReservedWord)}this.match("=")?this.reinterpretExpressionAsPattern(i):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1),E=this.nextToken();var j=E.value,iA=this.isolateCoverGrammar(this.parseAssignmentExpression);i=this.finalize(this.startNode(B),new Q.AssignmentExpression(j,i,iA)),this.context.firstCoverInitializedNameError=null}}return i},s.prototype.parseExpression=function(){var i=this.lookahead,B=this.isolateCoverGrammar(this.parseAssignmentExpression);if(this.match(",")){var E=[];for(E.push(B);this.lookahead.type!==2&&this.match(",");)this.nextToken(),E.push(this.isolateCoverGrammar(this.parseAssignmentExpression));B=this.finalize(this.startNode(i),new Q.SequenceExpression(E))}return B},s.prototype.parseStatementListItem=function(){var i;if(this.context.isAssignmentTarget=!0,this.context.isBindingElement=!0,this.lookahead.type===4)switch(this.lookahead.value){case"export":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,t.Messages.IllegalExportDeclaration),i=this.parseExportDeclaration();break;case"import":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,t.Messages.IllegalImportDeclaration),i=this.parseImportDeclaration();break;case"const":i=this.parseLexicalDeclaration({inFor:!1});break;case"function":i=this.parseFunctionDeclaration();break;case"class":i=this.parseClassDeclaration();break;case"let":i=this.isLexicalDeclaration()?this.parseLexicalDeclaration({inFor:!1}):this.parseStatement();break;default:i=this.parseStatement();break}else i=this.parseStatement();return i},s.prototype.parseBlock=function(){var i=this.createNode();this.expect("{");for(var B=[];!this.match("}");)B.push(this.parseStatementListItem());return this.expect("}"),this.finalize(i,new Q.BlockStatement(B))},s.prototype.parseLexicalBinding=function(i,B){var E=this.createNode(),n=[],D=this.parsePattern(n,i);this.context.strict&&D.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(D.name)&&this.tolerateError(t.Messages.StrictVarName);var f=null;return i==="const"?!this.matchKeyword("in")&&!this.matchContextualKeyword("of")&&(this.match("=")?(this.nextToken(),f=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(t.Messages.DeclarationMissingInitializer,"const")):(!B.inFor&&D.type!==c.Syntax.Identifier||this.match("="))&&(this.expect("="),f=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(E,new Q.VariableDeclarator(D,f))},s.prototype.parseBindingList=function(i,B){for(var E=[this.parseLexicalBinding(i,B)];this.match(",");)this.nextToken(),E.push(this.parseLexicalBinding(i,B));return E},s.prototype.isLexicalDeclaration=function(){var i=this.scanner.saveState();this.scanner.scanComments();var B=this.scanner.lex();return this.scanner.restoreState(i),B.type===3||B.type===7&&B.value==="["||B.type===7&&B.value==="{"||B.type===4&&B.value==="let"||B.type===4&&B.value==="yield"},s.prototype.parseLexicalDeclaration=function(i){var B=this.createNode(),E=this.nextToken().value;g.assert(E==="let"||E==="const","Lexical declaration must be either let or const");var n=this.parseBindingList(E,i);return this.consumeSemicolon(),this.finalize(B,new Q.VariableDeclaration(n,E))},s.prototype.parseBindingRestElement=function(i,B){var E=this.createNode();this.expect("...");var n=this.parsePattern(i,B);return this.finalize(E,new Q.RestElement(n))},s.prototype.parseArrayPattern=function(i,B){var E=this.createNode();this.expect("[");for(var n=[];!this.match("]");)if(this.match(","))this.nextToken(),n.push(null);else{if(this.match("...")){n.push(this.parseBindingRestElement(i,B));break}else n.push(this.parsePatternWithDefault(i,B));this.match("]")||this.expect(",")}return this.expect("]"),this.finalize(E,new Q.ArrayPattern(n))},s.prototype.parsePropertyPattern=function(i,B){var E=this.createNode(),n=!1,D=!1,f=!1,S,k;if(this.lookahead.type===3){var M=this.lookahead;S=this.parseVariableIdentifier();var N=this.finalize(E,new Q.Identifier(M.value));if(this.match("=")){i.push(M),D=!0,this.nextToken();var J=this.parseAssignmentExpression();k=this.finalize(this.startNode(M),new Q.AssignmentPattern(N,J))}else this.match(":")?(this.expect(":"),k=this.parsePatternWithDefault(i,B)):(i.push(M),D=!0,k=N)}else n=this.match("["),S=this.parseObjectPropertyKey(),this.expect(":"),k=this.parsePatternWithDefault(i,B);return this.finalize(E,new Q.Property("init",S,n,k,f,D))},s.prototype.parseObjectPattern=function(i,B){var E=this.createNode(),n=[];for(this.expect("{");!this.match("}");)n.push(this.parsePropertyPattern(i,B)),this.match("}")||this.expect(",");return this.expect("}"),this.finalize(E,new Q.ObjectPattern(n))},s.prototype.parsePattern=function(i,B){var E;return this.match("[")?E=this.parseArrayPattern(i,B):this.match("{")?E=this.parseObjectPattern(i,B):(this.matchKeyword("let")&&(B==="const"||B==="let")&&this.tolerateUnexpectedToken(this.lookahead,t.Messages.LetInLexicalBinding),i.push(this.lookahead),E=this.parseVariableIdentifier(B)),E},s.prototype.parsePatternWithDefault=function(i,B){var E=this.lookahead,n=this.parsePattern(i,B);if(this.match("=")){this.nextToken();var D=this.context.allowYield;this.context.allowYield=!0;var f=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowYield=D,n=this.finalize(this.startNode(E),new Q.AssignmentPattern(n,f))}return n},s.prototype.parseVariableIdentifier=function(i){var B=this.createNode(),E=this.nextToken();return E.type===4&&E.value==="yield"?this.context.strict?this.tolerateUnexpectedToken(E,t.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(E):E.type!==3?this.context.strict&&E.type===4&&this.scanner.isStrictModeReservedWord(E.value)?this.tolerateUnexpectedToken(E,t.Messages.StrictReservedWord):(this.context.strict||E.value!=="let"||i!=="var")&&this.throwUnexpectedToken(E):(this.context.isModule||this.context.await)&&E.type===3&&E.value==="await"&&this.tolerateUnexpectedToken(E),this.finalize(B,new Q.Identifier(E.value))},s.prototype.parseVariableDeclaration=function(i){var B=this.createNode(),E=[],n=this.parsePattern(E,"var");this.context.strict&&n.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(t.Messages.StrictVarName);var D=null;return this.match("=")?(this.nextToken(),D=this.isolateCoverGrammar(this.parseAssignmentExpression)):n.type!==c.Syntax.Identifier&&!i.inFor&&this.expect("="),this.finalize(B,new Q.VariableDeclarator(n,D))},s.prototype.parseVariableDeclarationList=function(i){var B={inFor:i.inFor},E=[];for(E.push(this.parseVariableDeclaration(B));this.match(",");)this.nextToken(),E.push(this.parseVariableDeclaration(B));return E},s.prototype.parseVariableStatement=function(){var i=this.createNode();this.expectKeyword("var");var B=this.parseVariableDeclarationList({inFor:!1});return this.consumeSemicolon(),this.finalize(i,new Q.VariableDeclaration(B,"var"))},s.prototype.parseEmptyStatement=function(){var i=this.createNode();return this.expect(";"),this.finalize(i,new Q.EmptyStatement)},s.prototype.parseExpressionStatement=function(){var i=this.createNode(),B=this.parseExpression();return this.consumeSemicolon(),this.finalize(i,new Q.ExpressionStatement(B))},s.prototype.parseIfClause=function(){return this.context.strict&&this.matchKeyword("function")&&this.tolerateError(t.Messages.StrictFunction),this.parseStatement()},s.prototype.parseIfStatement=function(){var i=this.createNode(),B,E=null;this.expectKeyword("if"),this.expect("(");var n=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),B=this.finalize(this.createNode(),new Q.EmptyStatement)):(this.expect(")"),B=this.parseIfClause(),this.matchKeyword("else")&&(this.nextToken(),E=this.parseIfClause())),this.finalize(i,new Q.IfStatement(n,B,E))},s.prototype.parseDoWhileStatement=function(){var i=this.createNode();this.expectKeyword("do");var B=this.context.inIteration;this.context.inIteration=!0;var E=this.parseStatement();this.context.inIteration=B,this.expectKeyword("while"),this.expect("(");var n=this.parseExpression();return!this.match(")")&&this.config.tolerant?this.tolerateUnexpectedToken(this.nextToken()):(this.expect(")"),this.match(";")&&this.nextToken()),this.finalize(i,new Q.DoWhileStatement(E,n))},s.prototype.parseWhileStatement=function(){var i=this.createNode(),B;this.expectKeyword("while"),this.expect("(");var E=this.parseExpression();if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),B=this.finalize(this.createNode(),new Q.EmptyStatement);else{this.expect(")");var n=this.context.inIteration;this.context.inIteration=!0,B=this.parseStatement(),this.context.inIteration=n}return this.finalize(i,new Q.WhileStatement(E,B))},s.prototype.parseForStatement=function(){var i=null,B=null,E=null,n=!0,D,f,S=this.createNode();if(this.expectKeyword("for"),this.expect("("),this.match(";"))this.nextToken();else if(this.matchKeyword("var")){i=this.createNode(),this.nextToken();var k=this.context.allowIn;this.context.allowIn=!1;var M=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=k,M.length===1&&this.matchKeyword("in")){var N=M[0];N.init&&(N.id.type===c.Syntax.ArrayPattern||N.id.type===c.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(t.Messages.ForInOfLoopInitializer,"for-in"),i=this.finalize(i,new Q.VariableDeclaration(M,"var")),this.nextToken(),D=i,f=this.parseExpression(),i=null}else M.length===1&&M[0].init===null&&this.matchContextualKeyword("of")?(i=this.finalize(i,new Q.VariableDeclaration(M,"var")),this.nextToken(),D=i,f=this.parseAssignmentExpression(),i=null,n=!1):(i=this.finalize(i,new Q.VariableDeclaration(M,"var")),this.expect(";"))}else if(this.matchKeyword("const")||this.matchKeyword("let")){i=this.createNode();var J=this.nextToken().value;if(!this.context.strict&&this.lookahead.value==="in")i=this.finalize(i,new Q.Identifier(J)),this.nextToken(),D=i,f=this.parseExpression(),i=null;else{var k=this.context.allowIn;this.context.allowIn=!1;var M=this.parseBindingList(J,{inFor:!0});this.context.allowIn=k,M.length===1&&M[0].init===null&&this.matchKeyword("in")?(i=this.finalize(i,new Q.VariableDeclaration(M,J)),this.nextToken(),D=i,f=this.parseExpression(),i=null):M.length===1&&M[0].init===null&&this.matchContextualKeyword("of")?(i=this.finalize(i,new Q.VariableDeclaration(M,J)),this.nextToken(),D=i,f=this.parseAssignmentExpression(),i=null,n=!1):(this.consumeSemicolon(),i=this.finalize(i,new Q.VariableDeclaration(M,J)))}}else{var O=this.lookahead,k=this.context.allowIn;if(this.context.allowIn=!1,i=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=k,this.matchKeyword("in"))(!this.context.isAssignmentTarget||i.type===c.Syntax.AssignmentExpression)&&this.tolerateError(t.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(i),D=i,f=this.parseExpression(),i=null;else if(this.matchContextualKeyword("of"))(!this.context.isAssignmentTarget||i.type===c.Syntax.AssignmentExpression)&&this.tolerateError(t.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(i),D=i,f=this.parseAssignmentExpression(),i=null,n=!1;else{if(this.match(",")){for(var b=[i];this.match(",");)this.nextToken(),b.push(this.isolateCoverGrammar(this.parseAssignmentExpression));i=this.finalize(this.startNode(O),new Q.SequenceExpression(b))}this.expect(";")}}typeof D>"u"&&(this.match(";")||(B=this.parseExpression()),this.expect(";"),this.match(")")||(E=this.parseExpression()));var AA;if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),AA=this.finalize(this.createNode(),new Q.EmptyStatement);else{this.expect(")");var W=this.context.inIteration;this.context.inIteration=!0,AA=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=W}return typeof D>"u"?this.finalize(S,new Q.ForStatement(i,B,E,AA)):n?this.finalize(S,new Q.ForInStatement(D,f,AA)):this.finalize(S,new Q.ForOfStatement(D,f,AA))},s.prototype.parseContinueStatement=function(){var i=this.createNode();this.expectKeyword("continue");var B=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var E=this.parseVariableIdentifier();B=E;var n="$"+E.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,n)||this.throwError(t.Messages.UnknownLabel,E.name)}return this.consumeSemicolon(),B===null&&!this.context.inIteration&&this.throwError(t.Messages.IllegalContinue),this.finalize(i,new Q.ContinueStatement(B))},s.prototype.parseBreakStatement=function(){var i=this.createNode();this.expectKeyword("break");var B=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var E=this.parseVariableIdentifier(),n="$"+E.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,n)||this.throwError(t.Messages.UnknownLabel,E.name),B=E}return this.consumeSemicolon(),B===null&&!this.context.inIteration&&!this.context.inSwitch&&this.throwError(t.Messages.IllegalBreak),this.finalize(i,new Q.BreakStatement(B))},s.prototype.parseReturnStatement=function(){this.context.inFunctionBody||this.tolerateError(t.Messages.IllegalReturn);var i=this.createNode();this.expectKeyword("return");var B=!this.match(";")&&!this.match("}")&&!this.hasLineTerminator&&this.lookahead.type!==2||this.lookahead.type===8||this.lookahead.type===10,E=B?this.parseExpression():null;return this.consumeSemicolon(),this.finalize(i,new Q.ReturnStatement(E))},s.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(t.Messages.StrictModeWith);var i=this.createNode(),B;this.expectKeyword("with"),this.expect("(");var E=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),B=this.finalize(this.createNode(),new Q.EmptyStatement)):(this.expect(")"),B=this.parseStatement()),this.finalize(i,new Q.WithStatement(E,B))},s.prototype.parseSwitchCase=function(){var i=this.createNode(),B;this.matchKeyword("default")?(this.nextToken(),B=null):(this.expectKeyword("case"),B=this.parseExpression()),this.expect(":");for(var E=[];!(this.match("}")||this.matchKeyword("default")||this.matchKeyword("case"));)E.push(this.parseStatementListItem());return this.finalize(i,new Q.SwitchCase(B,E))},s.prototype.parseSwitchStatement=function(){var i=this.createNode();this.expectKeyword("switch"),this.expect("(");var B=this.parseExpression();this.expect(")");var E=this.context.inSwitch;this.context.inSwitch=!0;var n=[],D=!1;for(this.expect("{");!this.match("}");){var f=this.parseSwitchCase();f.test===null&&(D&&this.throwError(t.Messages.MultipleDefaultsInSwitch),D=!0),n.push(f)}return this.expect("}"),this.context.inSwitch=E,this.finalize(i,new Q.SwitchStatement(B,n))},s.prototype.parseLabelledStatement=function(){var i=this.createNode(),B=this.parseExpression(),E;if(B.type===c.Syntax.Identifier&&this.match(":")){this.nextToken();var n=B,D="$"+n.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,D)&&this.throwError(t.Messages.Redeclaration,"Label",n.name),this.context.labelSet[D]=!0;var f=void 0;if(this.matchKeyword("class"))this.tolerateUnexpectedToken(this.lookahead),f=this.parseClassDeclaration();else if(this.matchKeyword("function")){var S=this.lookahead,k=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(S,t.Messages.StrictFunction):k.generator&&this.tolerateUnexpectedToken(S,t.Messages.GeneratorInLegacyContext),f=k}else f=this.parseStatement();delete this.context.labelSet[D],E=new Q.LabeledStatement(n,f)}else this.consumeSemicolon(),E=new Q.ExpressionStatement(B);return this.finalize(i,E)},s.prototype.parseThrowStatement=function(){var i=this.createNode();this.expectKeyword("throw"),this.hasLineTerminator&&this.throwError(t.Messages.NewlineAfterThrow);var B=this.parseExpression();return this.consumeSemicolon(),this.finalize(i,new Q.ThrowStatement(B))},s.prototype.parseCatchClause=function(){var i=this.createNode();this.expectKeyword("catch"),this.expect("("),this.match(")")&&this.throwUnexpectedToken(this.lookahead);for(var B=[],E=this.parsePattern(B),n={},D=0;D0&&this.tolerateError(t.Messages.BadGetterArity);var D=this.parsePropertyMethod(n);return this.context.allowYield=E,this.finalize(i,new Q.FunctionExpression(null,n.params,D,B))},s.prototype.parseSetterMethod=function(){var i=this.createNode(),B=!1,E=this.context.allowYield;this.context.allowYield=!B;var n=this.parseFormalParameters();n.params.length!==1?this.tolerateError(t.Messages.BadSetterArity):n.params[0]instanceof Q.RestElement&&this.tolerateError(t.Messages.BadSetterRestParameter);var D=this.parsePropertyMethod(n);return this.context.allowYield=E,this.finalize(i,new Q.FunctionExpression(null,n.params,D,B))},s.prototype.parseGeneratorMethod=function(){var i=this.createNode(),B=!0,E=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();this.context.allowYield=!1;var D=this.parsePropertyMethod(n);return this.context.allowYield=E,this.finalize(i,new Q.FunctionExpression(null,n.params,D,B))},s.prototype.isStartOfExpression=function(){var i=!0,B=this.lookahead.value;switch(this.lookahead.type){case 7:i=B==="["||B==="("||B==="{"||B==="+"||B==="-"||B==="!"||B==="~"||B==="++"||B==="--"||B==="/"||B==="/=";break;case 4:i=B==="class"||B==="delete"||B==="function"||B==="let"||B==="new"||B==="super"||B==="this"||B==="typeof"||B==="void"||B==="yield";break;default:break}return i},s.prototype.parseYieldExpression=function(){var i=this.createNode();this.expectKeyword("yield");var B=null,E=!1;if(!this.hasLineTerminator){var n=this.context.allowYield;this.context.allowYield=!1,E=this.match("*"),E?(this.nextToken(),B=this.parseAssignmentExpression()):this.isStartOfExpression()&&(B=this.parseAssignmentExpression()),this.context.allowYield=n}return this.finalize(i,new Q.YieldExpression(B,E))},s.prototype.parseClassElement=function(i){var B=this.lookahead,E=this.createNode(),n="",D=null,f=null,S=!1,k=!1,M=!1,N=!1;if(this.match("*"))this.nextToken();else{S=this.match("["),D=this.parseObjectPropertyKey();var J=D;if(J.name==="static"&&(this.qualifiedPropertyName(this.lookahead)||this.match("*"))&&(B=this.lookahead,M=!0,S=this.match("["),this.match("*")?this.nextToken():D=this.parseObjectPropertyKey()),B.type===3&&!this.hasLineTerminator&&B.value==="async"){var O=this.lookahead.value;O!==":"&&O!=="("&&O!=="*"&&(N=!0,B=this.lookahead,D=this.parseObjectPropertyKey(),B.type===3&&B.value==="constructor"&&this.tolerateUnexpectedToken(B,t.Messages.ConstructorIsAsync))}}var b=this.qualifiedPropertyName(this.lookahead);return B.type===3?B.value==="get"&&b?(n="get",S=this.match("["),D=this.parseObjectPropertyKey(),this.context.allowYield=!1,f=this.parseGetterMethod()):B.value==="set"&&b&&(n="set",S=this.match("["),D=this.parseObjectPropertyKey(),f=this.parseSetterMethod()):B.type===7&&B.value==="*"&&b&&(n="init",S=this.match("["),D=this.parseObjectPropertyKey(),f=this.parseGeneratorMethod(),k=!0),!n&&D&&this.match("(")&&(n="init",f=N?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),k=!0),n||this.throwUnexpectedToken(this.lookahead),n==="init"&&(n="method"),S||(M&&this.isPropertyKey(D,"prototype")&&this.throwUnexpectedToken(B,t.Messages.StaticPrototype),!M&&this.isPropertyKey(D,"constructor")&&((n!=="method"||!k||f&&f.generator)&&this.throwUnexpectedToken(B,t.Messages.ConstructorSpecialMethod),i.value?this.throwUnexpectedToken(B,t.Messages.DuplicateConstructor):i.value=!0,n="constructor")),this.finalize(E,new Q.MethodDefinition(D,S,f,n,M))},s.prototype.parseClassElementList=function(){var i=[],B={value:!1};for(this.expect("{");!this.match("}");)this.match(";")?this.nextToken():i.push(this.parseClassElement(B));return this.expect("}"),i},s.prototype.parseClassBody=function(){var i=this.createNode(),B=this.parseClassElementList();return this.finalize(i,new Q.ClassBody(B))},s.prototype.parseClassDeclaration=function(i){var B=this.createNode(),E=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var n=i&&this.lookahead.type!==3?null:this.parseVariableIdentifier(),D=null;this.matchKeyword("extends")&&(this.nextToken(),D=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var f=this.parseClassBody();return this.context.strict=E,this.finalize(B,new Q.ClassDeclaration(n,D,f))},s.prototype.parseClassExpression=function(){var i=this.createNode(),B=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var E=this.lookahead.type===3?this.parseVariableIdentifier():null,n=null;this.matchKeyword("extends")&&(this.nextToken(),n=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var D=this.parseClassBody();return this.context.strict=B,this.finalize(i,new Q.ClassExpression(E,n,D))},s.prototype.parseModule=function(){this.context.strict=!0,this.context.isModule=!0,this.scanner.isModule=!0;for(var i=this.createNode(),B=this.parseDirectivePrologues();this.lookahead.type!==2;)B.push(this.parseStatementListItem());return this.finalize(i,new Q.Module(B))},s.prototype.parseScript=function(){for(var i=this.createNode(),B=this.parseDirectivePrologues();this.lookahead.type!==2;)B.push(this.parseStatementListItem());return this.finalize(i,new Q.Script(B))},s.prototype.parseModuleSpecifier=function(){var i=this.createNode();this.lookahead.type!==8&&this.throwError(t.Messages.InvalidModuleSpecifier);var B=this.nextToken(),E=this.getTokenRaw(B);return this.finalize(i,new Q.Literal(B.value,E))},s.prototype.parseImportSpecifier=function(){var i=this.createNode(),B,E;return this.lookahead.type===3?(B=this.parseVariableIdentifier(),E=B,this.matchContextualKeyword("as")&&(this.nextToken(),E=this.parseVariableIdentifier())):(B=this.parseIdentifierName(),E=B,this.matchContextualKeyword("as")?(this.nextToken(),E=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(i,new Q.ImportSpecifier(E,B))},s.prototype.parseNamedImports=function(){this.expect("{");for(var i=[];!this.match("}");)i.push(this.parseImportSpecifier()),this.match("}")||this.expect(",");return this.expect("}"),i},s.prototype.parseImportDefaultSpecifier=function(){var i=this.createNode(),B=this.parseIdentifierName();return this.finalize(i,new Q.ImportDefaultSpecifier(B))},s.prototype.parseImportNamespaceSpecifier=function(){var i=this.createNode();this.expect("*"),this.matchContextualKeyword("as")||this.throwError(t.Messages.NoAsAfterImportNamespace),this.nextToken();var B=this.parseIdentifierName();return this.finalize(i,new Q.ImportNamespaceSpecifier(B))},s.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(t.Messages.IllegalImportDeclaration);var i=this.createNode();this.expectKeyword("import");var B,E=[];if(this.lookahead.type===8)B=this.parseModuleSpecifier();else{if(this.match("{")?E=E.concat(this.parseNamedImports()):this.match("*")?E.push(this.parseImportNamespaceSpecifier()):this.isIdentifierName(this.lookahead)&&!this.matchKeyword("default")?(E.push(this.parseImportDefaultSpecifier()),this.match(",")&&(this.nextToken(),this.match("*")?E.push(this.parseImportNamespaceSpecifier()):this.match("{")?E=E.concat(this.parseNamedImports()):this.throwUnexpectedToken(this.lookahead))):this.throwUnexpectedToken(this.nextToken()),!this.matchContextualKeyword("from")){var n=this.lookahead.value?t.Messages.UnexpectedToken:t.Messages.MissingFromClause;this.throwError(n,this.lookahead.value)}this.nextToken(),B=this.parseModuleSpecifier()}return this.consumeSemicolon(),this.finalize(i,new Q.ImportDeclaration(E,B))},s.prototype.parseExportSpecifier=function(){var i=this.createNode(),B=this.parseIdentifierName(),E=B;return this.matchContextualKeyword("as")&&(this.nextToken(),E=this.parseIdentifierName()),this.finalize(i,new Q.ExportSpecifier(B,E))},s.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(t.Messages.IllegalExportDeclaration);var i=this.createNode();this.expectKeyword("export");var B;if(this.matchKeyword("default"))if(this.nextToken(),this.matchKeyword("function")){var E=this.parseFunctionDeclaration(!0);B=this.finalize(i,new Q.ExportDefaultDeclaration(E))}else if(this.matchKeyword("class")){var E=this.parseClassDeclaration(!0);B=this.finalize(i,new Q.ExportDefaultDeclaration(E))}else if(this.matchContextualKeyword("async")){var E=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression();B=this.finalize(i,new Q.ExportDefaultDeclaration(E))}else{this.matchContextualKeyword("from")&&this.throwError(t.Messages.UnexpectedToken,this.lookahead.value);var E=this.match("{")?this.parseObjectInitializer():this.match("[")?this.parseArrayInitializer():this.parseAssignmentExpression();this.consumeSemicolon(),B=this.finalize(i,new Q.ExportDefaultDeclaration(E))}else if(this.match("*")){if(this.nextToken(),!this.matchContextualKeyword("from")){var n=this.lookahead.value?t.Messages.UnexpectedToken:t.Messages.MissingFromClause;this.throwError(n,this.lookahead.value)}this.nextToken();var D=this.parseModuleSpecifier();this.consumeSemicolon(),B=this.finalize(i,new Q.ExportAllDeclaration(D))}else if(this.lookahead.type===4){var E=void 0;switch(this.lookahead.value){case"let":case"const":E=this.parseLexicalDeclaration({inFor:!1});break;case"var":case"class":case"function":E=this.parseStatementListItem();break;default:this.throwUnexpectedToken(this.lookahead)}B=this.finalize(i,new Q.ExportNamedDeclaration(E,[],null))}else if(this.matchAsyncFunction()){var E=this.parseFunctionDeclaration();B=this.finalize(i,new Q.ExportNamedDeclaration(E,[],null))}else{var f=[],S=null,k=!1;for(this.expect("{");!this.match("}");)k=k||this.matchKeyword("default"),f.push(this.parseExportSpecifier()),this.match("}")||this.expect(",");if(this.expect("}"),this.matchContextualKeyword("from"))this.nextToken(),S=this.parseModuleSpecifier(),this.consumeSemicolon();else if(k){var n=this.lookahead.value?t.Messages.UnexpectedToken:t.Messages.MissingFromClause;this.throwError(n,this.lookahead.value)}else this.consumeSemicolon();B=this.finalize(i,new Q.ExportNamedDeclaration(null,f,S))}return B},s}();A.Parser=a},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0});function e(g,C){if(!g)throw new Error("ASSERT: "+C)}A.assert=e},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var e=function(){function g(){this.errors=[],this.tolerant=!1}return g.prototype.recordError=function(C){this.errors.push(C)},g.prototype.tolerate=function(C){if(this.tolerant)this.recordError(C);else throw C},g.prototype.constructError=function(C,t){var Q=new Error(C);try{throw Q}catch(u){Object.create&&Object.defineProperty&&(Q=Object.create(u),Object.defineProperty(Q,"column",{value:t}))}return Q},g.prototype.createError=function(C,t,Q,u){var c="Line "+t+": "+u,h=this.constructError(c,Q);return h.index=C,h.lineNumber=t,h.description=u,h},g.prototype.throwError=function(C,t,Q,u){throw this.createError(C,t,Q,u)},g.prototype.tolerateError=function(C,t,Q,u){var c=this.createError(C,t,Q,u);if(this.tolerant)this.recordError(c);else throw c},g}();A.ErrorHandler=e},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.Messages={BadGetterArity:"Getter must not have any formal parameters",BadSetterArity:"Setter must have exactly one formal parameter",BadSetterRestParameter:"Setter function argument must not be a rest parameter",ConstructorIsAsync:"Class constructor may not be an async method",ConstructorSpecialMethod:"Class constructor may not be an accessor",DeclarationMissingInitializer:"Missing initializer in %0 declaration",DefaultRestParameter:"Unexpected token =",DuplicateBinding:"Duplicate binding %0",DuplicateConstructor:"A class may only have one constructor",DuplicateProtoProperty:"Duplicate __proto__ fields are not allowed in object literals",ForInOfLoopInitializer:"%0 loop variable declaration may not have an initializer",GeneratorInLegacyContext:"Generator declarations are not allowed in legacy contexts",IllegalBreak:"Illegal break statement",IllegalContinue:"Illegal continue statement",IllegalExportDeclaration:"Unexpected token",IllegalImportDeclaration:"Unexpected token",IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list",IllegalReturn:"Illegal return statement",InvalidEscapedReservedWord:"Keyword must not contain escaped characters",InvalidHexEscapeSequence:"Invalid hexadecimal escape sequence",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",InvalidLHSInForLoop:"Invalid left-hand side in for-loop",InvalidModuleSpecifier:"Unexpected token",InvalidRegExp:"Invalid regular expression",LetInLexicalBinding:"let is disallowed as a lexically bound name",MissingFromClause:"Unexpected token",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NewlineAfterThrow:"Illegal newline after throw",NoAsAfterImportNamespace:"Unexpected token",NoCatchOrFinally:"Missing catch or finally after try",ParameterAfterRestParameter:"Rest parameter must be last formal parameter",Redeclaration:"%0 '%1' has already been declared",StaticPrototype:"Classes may not have static property named prototype",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictModeWith:"Strict mode code may not include a with statement",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictReservedWord:"Use of future reserved word in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",TemplateOctalLiteral:"Octal literals are not allowed in template strings.",UnexpectedEOS:"Unexpected end of input",UnexpectedIdentifier:"Unexpected identifier",UnexpectedNumber:"Unexpected number",UnexpectedReserved:"Unexpected reserved word",UnexpectedString:"Unexpected string",UnexpectedTemplate:"Unexpected quasi %0",UnexpectedToken:"Unexpected token %0",UnexpectedTokenIllegal:"Unexpected token ILLEGAL",UnknownLabel:"Undefined label '%0'",UnterminatedRegExp:"Invalid regular expression: missing /"}},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(9),C=e(4),t=e(11);function Q(h){return"0123456789abcdef".indexOf(h.toLowerCase())}function u(h){return"01234567".indexOf(h)}var c=function(){function h(r,a){this.source=r,this.errorHandler=a,this.trackComment=!1,this.isModule=!1,this.length=r.length,this.index=0,this.lineNumber=r.length>0?1:0,this.lineStart=0,this.curlyStack=[]}return h.prototype.saveState=function(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart}},h.prototype.restoreState=function(r){this.index=r.index,this.lineNumber=r.lineNumber,this.lineStart=r.lineStart},h.prototype.eof=function(){return this.index>=this.length},h.prototype.throwUnexpectedToken=function(r){return r===void 0&&(r=t.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,r)},h.prototype.tolerateUnexpectedToken=function(r){r===void 0&&(r=t.Messages.UnexpectedTokenIllegal),this.errorHandler.tolerateError(this.index,this.lineNumber,this.index-this.lineStart+1,r)},h.prototype.skipSingleLineComment=function(r){var a=[],s,i;for(this.trackComment&&(a=[],s=this.index-r,i={start:{line:this.lineNumber,column:this.index-this.lineStart-r},end:{}});!this.eof();){var B=this.source.charCodeAt(this.index);if(++this.index,C.Character.isLineTerminator(B)){if(this.trackComment){i.end={line:this.lineNumber,column:this.index-this.lineStart-1};var E={multiLine:!1,slice:[s+r,this.index-1],range:[s,this.index-1],loc:i};a.push(E)}return B===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,a}}if(this.trackComment){i.end={line:this.lineNumber,column:this.index-this.lineStart};var E={multiLine:!1,slice:[s+r,this.index],range:[s,this.index],loc:i};a.push(E)}return a},h.prototype.skipMultiLineComment=function(){var r=[],a,s;for(this.trackComment&&(r=[],a=this.index-2,s={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{}});!this.eof();){var i=this.source.charCodeAt(this.index);if(C.Character.isLineTerminator(i))i===13&&this.source.charCodeAt(this.index+1)===10&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(i===42){if(this.source.charCodeAt(this.index+1)===47){if(this.index+=2,this.trackComment){s.end={line:this.lineNumber,column:this.index-this.lineStart};var B={multiLine:!0,slice:[a+2,this.index-2],range:[a,this.index],loc:s};r.push(B)}return r}++this.index}else++this.index}if(this.trackComment){s.end={line:this.lineNumber,column:this.index-this.lineStart};var B={multiLine:!0,slice:[a+2,this.index],range:[a,this.index],loc:s};r.push(B)}return this.tolerateUnexpectedToken(),r},h.prototype.scanComments=function(){var r;this.trackComment&&(r=[]);for(var a=this.index===0;!this.eof();){var s=this.source.charCodeAt(this.index);if(C.Character.isWhiteSpace(s))++this.index;else if(C.Character.isLineTerminator(s))++this.index,s===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,a=!0;else if(s===47)if(s=this.source.charCodeAt(this.index+1),s===47){this.index+=2;var i=this.skipSingleLineComment(2);this.trackComment&&(r=r.concat(i)),a=!0}else if(s===42){this.index+=2;var i=this.skipMultiLineComment();this.trackComment&&(r=r.concat(i))}else break;else if(a&&s===45)if(this.source.charCodeAt(this.index+1)===45&&this.source.charCodeAt(this.index+2)===62){this.index+=3;var i=this.skipSingleLineComment(3);this.trackComment&&(r=r.concat(i))}else break;else if(s===60&&!this.isModule)if(this.source.slice(this.index+1,this.index+4)==="!--"){this.index+=4;var i=this.skipSingleLineComment(4);this.trackComment&&(r=r.concat(i))}else break;else break}return r},h.prototype.isFutureReservedWord=function(r){switch(r){case"enum":case"export":case"import":case"super":return!0;default:return!1}},h.prototype.isStrictModeReservedWord=function(r){switch(r){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return!0;default:return!1}},h.prototype.isRestrictedWord=function(r){return r==="eval"||r==="arguments"},h.prototype.isKeyword=function(r){switch(r.length){case 2:return r==="if"||r==="in"||r==="do";case 3:return r==="var"||r==="for"||r==="new"||r==="try"||r==="let";case 4:return r==="this"||r==="else"||r==="case"||r==="void"||r==="with"||r==="enum";case 5:return r==="while"||r==="break"||r==="catch"||r==="throw"||r==="const"||r==="yield"||r==="class"||r==="super";case 6:return r==="return"||r==="typeof"||r==="delete"||r==="switch"||r==="export"||r==="import";case 7:return r==="default"||r==="finally"||r==="extends";case 8:return r==="function"||r==="continue"||r==="debugger";case 10:return r==="instanceof";default:return!1}},h.prototype.codePointAt=function(r){var a=this.source.charCodeAt(r);if(a>=55296&&a<=56319){var s=this.source.charCodeAt(r+1);if(s>=56320&&s<=57343){var i=a;a=(i-55296)*1024+s-56320+65536}}return a},h.prototype.scanHexEscape=function(r){for(var a=r==="u"?4:2,s=0,i=0;i1114111||r!=="}")&&this.throwUnexpectedToken(),C.Character.fromCodePoint(a)},h.prototype.getIdentifier=function(){for(var r=this.index++;!this.eof();){var a=this.source.charCodeAt(this.index);if(a===92)return this.index=r,this.getComplexIdentifier();if(a>=55296&&a<57343)return this.index=r,this.getComplexIdentifier();if(C.Character.isIdentifierPart(a))++this.index;else break}return this.source.slice(r,this.index)},h.prototype.getComplexIdentifier=function(){var r=this.codePointAt(this.index),a=C.Character.fromCodePoint(r);this.index+=a.length;var s;for(r===92&&(this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]==="{"?(++this.index,s=this.scanUnicodeCodePointEscape()):(s=this.scanHexEscape("u"),(s===null||s==="\\"||!C.Character.isIdentifierStart(s.charCodeAt(0)))&&this.throwUnexpectedToken()),a=s);!this.eof()&&(r=this.codePointAt(this.index),!!C.Character.isIdentifierPart(r));)s=C.Character.fromCodePoint(r),a+=s,this.index+=s.length,r===92&&(a=a.substr(0,a.length-1),this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]==="{"?(++this.index,s=this.scanUnicodeCodePointEscape()):(s=this.scanHexEscape("u"),(s===null||s==="\\"||!C.Character.isIdentifierPart(s.charCodeAt(0)))&&this.throwUnexpectedToken()),a+=s);return a},h.prototype.octalToDecimal=function(r){var a=r!=="0",s=u(r);return!this.eof()&&C.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(a=!0,s=s*8+u(this.source[this.index++]),"0123".indexOf(r)>=0&&!this.eof()&&C.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(s=s*8+u(this.source[this.index++]))),{code:s,octal:a}},h.prototype.scanIdentifier=function(){var r,a=this.index,s=this.source.charCodeAt(a)===92?this.getComplexIdentifier():this.getIdentifier();if(s.length===1?r=3:this.isKeyword(s)?r=4:s==="null"?r=5:s==="true"||s==="false"?r=1:r=3,r!==3&&a+s.length!==this.index){var i=this.index;this.index=a,this.tolerateUnexpectedToken(t.Messages.InvalidEscapedReservedWord),this.index=i}return{type:r,value:s,lineNumber:this.lineNumber,lineStart:this.lineStart,start:a,end:this.index}},h.prototype.scanPunctuator=function(){var r=this.index,a=this.source[this.index];switch(a){case"(":case"{":a==="{"&&this.curlyStack.push("{"),++this.index;break;case".":++this.index,this.source[this.index]==="."&&this.source[this.index+1]==="."&&(this.index+=2,a="...");break;case"}":++this.index,this.curlyStack.pop();break;case")":case";":case",":case"[":case"]":case":":case"?":case"~":++this.index;break;default:a=this.source.substr(this.index,4),a===">>>="?this.index+=4:(a=a.substr(0,3),a==="==="||a==="!=="||a===">>>"||a==="<<="||a===">>="||a==="**="?this.index+=3:(a=a.substr(0,2),a==="&&"||a==="||"||a==="=="||a==="!="||a==="+="||a==="-="||a==="*="||a==="/="||a==="++"||a==="--"||a==="<<"||a===">>"||a==="&="||a==="|="||a==="^="||a==="%="||a==="<="||a===">="||a==="=>"||a==="**"?this.index+=2:(a=this.source[this.index],"<>=!+-*%&|^/".indexOf(a)>=0&&++this.index)))}return this.index===r&&this.throwUnexpectedToken(),{type:7,value:a,lineNumber:this.lineNumber,lineStart:this.lineStart,start:r,end:this.index}},h.prototype.scanHexLiteral=function(r){for(var a="";!this.eof()&&C.Character.isHexDigit(this.source.charCodeAt(this.index));)a+=this.source[this.index++];return a.length===0&&this.throwUnexpectedToken(),C.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseInt("0x"+a,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:r,end:this.index}},h.prototype.scanBinaryLiteral=function(r){for(var a="",s;!this.eof()&&(s=this.source[this.index],!(s!=="0"&&s!=="1"));)a+=this.source[this.index++];return a.length===0&&this.throwUnexpectedToken(),this.eof()||(s=this.source.charCodeAt(this.index),(C.Character.isIdentifierStart(s)||C.Character.isDecimalDigit(s))&&this.throwUnexpectedToken()),{type:6,value:parseInt(a,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:r,end:this.index}},h.prototype.scanOctalLiteral=function(r,a){var s="",i=!1;for(C.Character.isOctalDigit(r.charCodeAt(0))?(i=!0,s="0"+this.source[this.index++]):++this.index;!this.eof()&&C.Character.isOctalDigit(this.source.charCodeAt(this.index));)s+=this.source[this.index++];return!i&&s.length===0&&this.throwUnexpectedToken(),(C.Character.isIdentifierStart(this.source.charCodeAt(this.index))||C.Character.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:6,value:parseInt(s,8),octal:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:a,end:this.index}},h.prototype.isImplicitOctalLiteral=function(){for(var r=this.index+1;r=0&&(i=i.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,function(E,n,D){var f=parseInt(n||D,16);return f>1114111&&B.throwUnexpectedToken(t.Messages.InvalidRegExp),f<=65535?String.fromCharCode(f):s}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,s));try{RegExp(i)}catch{this.throwUnexpectedToken(t.Messages.InvalidRegExp)}try{return new RegExp(r,a)}catch{return null}},h.prototype.scanRegExpBody=function(){var r=this.source[this.index];g.assert(r==="/","Regular expression literal must start with a slash");for(var a=this.source[this.index++],s=!1,i=!1;!this.eof();)if(r=this.source[this.index++],a+=r,r==="\\")r=this.source[this.index++],C.Character.isLineTerminator(r.charCodeAt(0))&&this.throwUnexpectedToken(t.Messages.UnterminatedRegExp),a+=r;else if(C.Character.isLineTerminator(r.charCodeAt(0)))this.throwUnexpectedToken(t.Messages.UnterminatedRegExp);else if(s)r==="]"&&(s=!1);else if(r==="/"){i=!0;break}else r==="["&&(s=!0);return i||this.throwUnexpectedToken(t.Messages.UnterminatedRegExp),a.substr(1,a.length-2)},h.prototype.scanRegExpFlags=function(){for(var r="",a="";!this.eof();){var s=this.source[this.index];if(!C.Character.isIdentifierPart(s.charCodeAt(0)))break;if(++this.index,s==="\\"&&!this.eof())if(s=this.source[this.index],s==="u"){++this.index;var i=this.index,B=this.scanHexEscape("u");if(B!==null)for(a+=B,r+="\\u";i=55296&&r<57343&&C.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},h}();A.Scanner=c},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.TokenName={},A.TokenName[1]="Boolean",A.TokenName[2]="",A.TokenName[3]="Identifier",A.TokenName[4]="Keyword",A.TokenName[5]="Null",A.TokenName[6]="Numeric",A.TokenName[7]="Punctuator",A.TokenName[8]="String",A.TokenName[9]="RegularExpression",A.TokenName[10]="Template"},function(I,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.XHTMLEntities={quot:'"',amp:"&",apos:"'",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",lang:"\u27E8",rang:"\u27E9"}},function(I,A,e){"use strict";Object.defineProperty(A,"__esModule",{value:!0});var g=e(10),C=e(12),t=e(13),Q=function(){function c(){this.values=[],this.curly=this.paren=-1}return c.prototype.beforeFunctionExpression=function(h){return["(","{","[","in","typeof","instanceof","new","return","case","delete","throw","void","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","**","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="].indexOf(h)>=0},c.prototype.isRegexStart=function(){var h=this.values[this.values.length-1],r=h!==null;switch(h){case"this":case"]":r=!1;break;case")":var a=this.values[this.paren-1];r=a==="if"||a==="while"||a==="for"||a==="with";break;case"}":if(r=!1,this.values[this.curly-3]==="function"){var s=this.values[this.curly-4];r=s?!this.beforeFunctionExpression(s):!1}else if(this.values[this.curly-4]==="function"){var s=this.values[this.curly-5];r=s?!this.beforeFunctionExpression(s):!0}break;default:break}return r},c.prototype.push=function(h){h.type===7||h.type===4?(h.value==="{"?this.curly=this.values.length:h.value==="("&&(this.paren=this.values.length),this.values.push(h.value)):this.values.push(null)},c}(),u=function(){function c(h,r){this.errorHandler=new g.ErrorHandler,this.errorHandler.tolerant=r?typeof r.tolerant=="boolean"&&r.tolerant:!1,this.scanner=new C.Scanner(h,this.errorHandler),this.scanner.trackComment=r?typeof r.comment=="boolean"&&r.comment:!1,this.trackRange=r?typeof r.range=="boolean"&&r.range:!1,this.trackLoc=r?typeof r.loc=="boolean"&&r.loc:!1,this.buffer=[],this.reader=new Q}return c.prototype.errors=function(){return this.errorHandler.errors},c.prototype.getNextToken=function(){if(this.buffer.length===0){var h=this.scanner.scanComments();if(this.scanner.trackComment)for(var r=0;reu,__assign:()=>Vt,__asyncDelegator:()=>Wa,__asyncGenerator:()=>Va,__asyncValues:()=>Za,__await:()=>AC,__awaiter:()=>xa,__classPrivateFieldGet:()=>za,__classPrivateFieldIn:()=>Au,__classPrivateFieldSet:()=>$a,__createBinding:()=>Zt,__decorate:()=>Ha,__disposeResources:()=>gu,__esDecorate:()=>id,__exportStar:()=>Ta,__extends:()=>Ja,__generator:()=>va,__importDefault:()=>ja,__importStar:()=>_a,__makeTemplateObject:()=>Xa,__metadata:()=>Ya,__param:()=>ba,__propKey:()=>Qd,__read:()=>LQ,__rest:()=>Ka,__runInitializers:()=>Bd,__setFunctionName:()=>Ed,__spread:()=>Pa,__spreadArray:()=>Oa,__spreadArrays:()=>qa,__values:()=>Wt,default:()=>nd});function Ja(I,A){if(typeof A!="function"&&A!==null)throw new TypeError("Class extends value "+String(A)+" is not a constructor or null");UQ(I,A);function e(){this.constructor=I}I.prototype=A===null?Object.create(A):(e.prototype=A.prototype,new e)}function Ka(I,A){var e={};for(var g in I)Object.prototype.hasOwnProperty.call(I,g)&&A.indexOf(g)<0&&(e[g]=I[g]);if(I!=null&&typeof Object.getOwnPropertySymbols=="function")for(var C=0,g=Object.getOwnPropertySymbols(I);C=0;u--)(Q=I[u])&&(t=(C<3?Q(t):C>3?Q(A,e,t):Q(A,e))||t);return C>3&&t&&Object.defineProperty(A,e,t),t}function ba(I,A){return function(e,g){A(e,g,I)}}function id(I,A,e,g,C,t){function Q(D){if(D!==void 0&&typeof D!="function")throw new TypeError("Function expected");return D}for(var u=g.kind,c=u==="getter"?"get":u==="setter"?"set":"value",h=!A&&I?g.static?I:I.prototype:null,r=A||(h?Object.getOwnPropertyDescriptor(h,g.name):{}),a,s=!1,i=e.length-1;i>=0;i--){var B={};for(var E in g)B[E]=E==="access"?{}:g[E];for(var E in g.access)B.access[E]=g.access[E];B.addInitializer=function(D){if(s)throw new TypeError("Cannot add initializers after decoration has completed");t.push(Q(D||null))};var n=(0,e[i])(u==="accessor"?{get:r.get,set:r.set}:r[c],B);if(u==="accessor"){if(n===void 0)continue;if(n===null||typeof n!="object")throw new TypeError("Object expected");(a=Q(n.get))&&(r.get=a),(a=Q(n.set))&&(r.set=a),(a=Q(n.init))&&C.unshift(a)}else(a=Q(n))&&(u==="field"?C.unshift(a):r[c]=a)}h&&Object.defineProperty(h,g.name,r),s=!0}function Bd(I,A,e){for(var g=arguments.length>2,C=0;C0&&t[t.length-1])&&(h[0]===6||h[0]===2)){e=0;continue}if(h[0]===3&&(!t||h[1]>t[0]&&h[1]=I.length&&(I=void 0),{value:I&&I[g++],done:!I}}};throw new TypeError(A?"Object is not iterable.":"Symbol.iterator is not defined.")}function LQ(I,A){var e=typeof Symbol=="function"&&I[Symbol.iterator];if(!e)return I;var g=e.call(I),C,t=[],Q;try{for(;(A===void 0||A-- >0)&&!(C=g.next()).done;)t.push(C.value)}catch(u){Q={error:u}}finally{try{C&&!C.done&&(e=g.return)&&e.call(g)}finally{if(Q)throw Q.error}}return t}function Pa(){for(var I=[],A=0;A1||u(s,i)})})}function u(s,i){try{c(g[s](i))}catch(B){a(t[0][3],B)}}function c(s){s.value instanceof AC?Promise.resolve(s.value.v).then(h,r):a(t[0][2],s)}function h(s){u("next",s)}function r(s){u("throw",s)}function a(s,i){s(i),t.shift(),t.length&&u(t[0][0],t[0][1])}}function Wa(I){var A,e;return A={},g("next"),g("throw",function(C){throw C}),g("return"),A[Symbol.iterator]=function(){return this},A;function g(C,t){A[C]=I[C]?function(Q){return(e=!e)?{value:AC(I[C](Q)),done:!1}:t?t(Q):Q}:t}}function Za(I){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var A=I[Symbol.asyncIterator],e;return A?A.call(I):(I=typeof Wt=="function"?Wt(I):I[Symbol.iterator](),e={},g("next"),g("throw"),g("return"),e[Symbol.asyncIterator]=function(){return this},e);function g(t){e[t]=I[t]&&function(Q){return new Promise(function(u,c){Q=I[t](Q),C(u,c,Q.done,Q.value)})}}function C(t,Q,u,c){Promise.resolve(c).then(function(h){t({value:h,done:u})},Q)}}function Xa(I,A){return Object.defineProperty?Object.defineProperty(I,"raw",{value:A}):I.raw=A,I}function _a(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Zt(A,I,e);return rd(A,I),A}function ja(I){return I&&I.__esModule?I:{default:I}}function za(I,A,e,g){if(e==="a"&&!g)throw new TypeError("Private accessor was defined without a getter");if(typeof A=="function"?I!==A||!g:!A.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?g:e==="a"?g.call(I):g?g.value:A.get(I)}function $a(I,A,e,g,C){if(g==="m")throw new TypeError("Private method is not writable");if(g==="a"&&!C)throw new TypeError("Private accessor was defined without a setter");if(typeof A=="function"?I!==A||!C:!A.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return g==="a"?C.call(I,e):C?C.value=e:A.set(I,e),e}function Au(I,A){if(A===null||typeof A!="object"&&typeof A!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof I=="function"?A===I:I.has(A)}function eu(I,A,e){if(A!=null){if(typeof A!="object"&&typeof A!="function")throw new TypeError("Object expected.");var g;if(e){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");g=A[Symbol.asyncDispose]}if(g===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");g=A[Symbol.dispose]}if(typeof g!="function")throw new TypeError("Object not disposable.");I.stack.push({value:A,dispose:g,async:e})}else e&&I.stack.push({async:!0});return A}function gu(I){function A(g){I.error=I.hasError?new sd(g,I.error,"An error was suppressed during disposal."):g,I.hasError=!0}function e(){for(;I.stack.length;){var g=I.stack.pop();try{var C=g.dispose&&g.dispose.call(g.value);if(g.async)return Promise.resolve(C).then(e,function(t){return A(t),e()})}catch(t){A(t)}}if(I.hasError)throw I.error}return e()}var UQ,Vt,Zt,rd,sd,nd,OA=mD(()=>{"use strict";UQ=function(I,A){return UQ=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,g){e.__proto__=g}||function(e,g){for(var C in g)Object.prototype.hasOwnProperty.call(g,C)&&(e[C]=g[C])},UQ(I,A)};Vt=function(){return Vt=Object.assign||function(A){for(var e,g=1,C=arguments.length;g{"use strict";Object.defineProperty(HC,"__esModule",{value:!0});HC.Def=void 0;var eC=(OA(),TA(qA)),Bu=Object.prototype,jt=Bu.toString,Ze=Bu.hasOwnProperty,KC=function(){function I(){}return I.prototype.assert=function(A,e){if(!this.check(A,e)){var g=KQ(A);throw new Error(g+" does not match type "+this)}return!0},I.prototype.arrayOf=function(){var A=this;return new JQ(A)},I}(),JQ=function(I){eC.__extends(A,I);function A(e){var g=I.call(this)||this;return g.elemType=e,g.kind="ArrayType",g}return A.prototype.toString=function(){return"["+this.elemType+"]"},A.prototype.check=function(e,g){var C=this;return Array.isArray(e)&&e.every(function(t){return C.elemType.check(t,g)})},A}(KC),Iu=function(I){eC.__extends(A,I);function A(e){var g=I.call(this)||this;return g.value=e,g.kind="IdentityType",g}return A.prototype.toString=function(){return String(this.value)},A.prototype.check=function(e,g){var C=e===this.value;return!C&&typeof g=="function"&&g(this,e),C},A}(KC),Cu=function(I){eC.__extends(A,I);function A(e){var g=I.call(this)||this;return g.fields=e,g.kind="ObjectType",g}return A.prototype.toString=function(){return"{ "+this.fields.join(", ")+" }"},A.prototype.check=function(e,g){return jt.call(e)===jt.call({})&&this.fields.every(function(C){return C.type.check(e[C.name],g)})},A}(KC),tu=function(I){eC.__extends(A,I);function A(e){var g=I.call(this)||this;return g.types=e,g.kind="OrType",g}return A.prototype.toString=function(){return this.types.join(" | ")},A.prototype.check=function(e,g){return this.types.some(function(C){return C.check(e,g)})},A}(KC),Xt=function(I){eC.__extends(A,I);function A(e,g){var C=I.call(this)||this;return C.name=e,C.predicate=g,C.kind="PredicateType",C}return A.prototype.toString=function(){return this.name},A.prototype.check=function(e,g){var C=this.predicate(e,g);return!C&&typeof g=="function"&&g(this,e),C},A}(KC),_t=function(){function I(A,e){this.type=A,this.typeName=e,this.baseNames=[],this.ownFields=Object.create(null),this.allSupertypes=Object.create(null),this.supertypeList=[],this.allFields=Object.create(null),this.fieldNames=[],this.finalized=!1,this.buildable=!1,this.buildParams=[]}return I.prototype.isSupertypeOf=function(A){if(A instanceof I){if(this.finalized!==!0||A.finalized!==!0)throw new Error("");return Ze.call(A.allSupertypes,this.typeName)}else throw new Error(A+" is not a Def")},I.prototype.checkAllFields=function(A,e){var g=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);function C(t){var Q=g[t],u=Q.type,c=Q.getValue(A);return u.check(c,e)}return A!==null&&typeof A=="object"&&Object.keys(g).every(C)},I.prototype.bases=function(){for(var A=[],e=0;e=0)return g[Y];if(typeof z!="string")throw new Error("missing name");return new Xt(z,T)}return new Iu(T)},def:function(T){return Ze.call(n,T)?n[T]:n[T]=new f(T)},hasDef:function(T){return Ze.call(n,T)}},e=[],g=[];function C(T,z){var Y=jt.call(z),QA=new Xt(T,function(hA){return jt.call(hA)===Y});return z&&typeof z.constructor=="function"&&(e.push(z.constructor),g.push(QA)),QA}var t=C("string","truthy"),Q=C("function",function(){}),u=C("array",[]),c=C("object",{}),h=C("RegExp",/./),r=C("Date",new Date),a=C("number",3),s=C("boolean",!0),i=C("null",null),B=C("undefined",void 0),E={string:t,function:Q,array:u,object:c,RegExp:h,Date:r,number:a,boolean:s,null:i,undefined:B},n=Object.create(null);function D(T){if(T&&typeof T=="object"){var z=T.type;if(typeof z=="string"&&Ze.call(n,z)){var Y=n[z];if(Y.finalized)return Y}}return null}var f=function(T){eC.__extends(z,T);function z(Y){var QA=T.call(this,new Xt(Y,function(hA,uA){return QA.check(hA,uA)}),Y)||this;return QA}return z.prototype.check=function(Y,QA){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(Y===null||typeof Y!="object")return!1;var hA=D(Y);return hA?QA&&hA===this?this.checkAllFields(Y,QA):this.isSupertypeOf(hA)?QA?hA.checkAllFields(Y,QA)&&this.checkAllFields(Y,!1):!0:!1:this.typeName==="SourceLocation"||this.typeName==="Position"?this.checkAllFields(Y,QA):!1},z.prototype.build=function(){for(var Y=this,QA=[],hA=0;hA=0&&rA(this.typeName)}},z}(_t);function S(T){if(!Ze.call(n,T))throw new Error("");var z=n[T];if(z.finalized!==!0)throw new Error("");return z.supertypeList.slice(1)}function k(T){for(var z={},Y=Object.keys(n),QA=Y.length,hA=0;hA{"use strict";Object.defineProperty($t,"__esModule",{value:!0});var ad=(OA(),TA(qA)),ud=ad.__importDefault(XA()),cd=Object.prototype,zt=cd.hasOwnProperty;function Dd(I){var A=I.use(ud.default),e=A.builtInTypes.array,g=A.builtInTypes.number,C=function a(s,i,B){if(!(this instanceof a))throw new Error("Path constructor cannot be invoked without 'new'");if(i){if(!(i instanceof a))throw new Error("")}else i=null,B=null;this.value=s,this.parentPath=i,this.name=B,this.__childCache=null},t=C.prototype;function Q(a){return a.__childCache||(a.__childCache=Object.create(null))}function u(a,s){var i=Q(a),B=a.getValueProperty(s),E=i[s];return(!zt.call(i,s)||E.value!==B)&&(E=i[s]=new a.constructor(B,a,s)),E}t.getValueProperty=function(s){return this.value[s]},t.get=function(){for(var s=[],i=0;i=0&&(B[a.name=E]=a)}else i[a.name]=a.value,B[a.name]=a;if(i[a.name]!==a.value)throw new Error("");if(a.parentPath.get(a.name)!==a)throw new Error("");return a}return t.replace=function(s){var i=[],B=this.parentPath.value,E=Q(this.parentPath),n=arguments.length;if(r(this),e.check(B)){for(var D=B.length,f=h(this.parentPath,n-1,this.name+1),S=[this.name,1],k=0;k{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});var hd=(OA(),TA(qA)),ld=hd.__importDefault(XA()),bC=Object.prototype.hasOwnProperty;function wd(I){var A=I.use(ld.default),e=A.Type,g=A.namedTypes,C=g.Node,t=g.Expression,Q=A.builtInTypes.array,u=A.builders,c=function f(S,k){if(!(this instanceof f))throw new Error("Scope constructor cannot be invoked without 'new'");r.assert(S.value);var M;if(k){if(!(k instanceof f))throw new Error("");M=k.depth+1}else k=null,M=0;Object.defineProperties(this,{path:{value:S},node:{value:S.value},isGlobal:{value:!k,enumerable:!0},depth:{value:M},parent:{value:k},bindings:{value:{}},types:{value:{}}})},h=[g.Program,g.Function,g.CatchClause],r=e.or.apply(e,h);c.isEstablishedBy=function(f){return r.check(f)};var a=c.prototype;a.didScan=!1,a.declares=function(f){return this.scan(),bC.call(this.bindings,f)},a.declaresType=function(f){return this.scan(),bC.call(this.types,f)},a.declareTemporary=function(f){if(f){if(!/^[a-z$_]/i.test(f))throw new Error("")}else f="t$";f+=this.depth.toString(36)+"$",this.scan();for(var S=0;this.declares(f+S);)++S;var k=f+S;return this.bindings[k]=A.builders.identifier(k)},a.injectTemporary=function(f,S){f||(f=this.declareTemporary());var k=this.path.get("body");return g.BlockStatement.check(k.value)&&(k=k.get("body")),k.unshift(u.variableDeclaration("var",[u.variableDeclarator(f,S||null)])),f},a.scan=function(f){if(f||!this.didScan){for(var S in this.bindings)delete this.bindings[S];s(this.path,this.bindings,this.types),this.didScan=!0}},a.getBindings=function(){return this.scan(),this.bindings},a.getTypes=function(){return this.scan(),this.types};function s(f,S,k){var M=f.value;if(r.assert(M),g.CatchClause.check(M)){var N=f.get("param");N.value&&n(N,S)}else i(f,S,k)}function i(f,S,k){var M=f.value;f.parent&&g.FunctionExpression.check(f.parent.node)&&f.parent.node.id&&n(f.parent.get("id"),S),M&&(Q.check(M)?f.each(function(N){E(N,S,k)}):g.Function.check(M)?(f.get("params").each(function(N){n(N,S)}),E(f.get("body"),S,k)):g.TypeAlias&&g.TypeAlias.check(M)||g.InterfaceDeclaration&&g.InterfaceDeclaration.check(M)||g.TSTypeAliasDeclaration&&g.TSTypeAliasDeclaration.check(M)||g.TSInterfaceDeclaration&&g.TSInterfaceDeclaration.check(M)?D(f.get("id"),k):g.VariableDeclarator.check(M)?(n(f.get("id"),S),E(f.get("init"),S,k)):M.type==="ImportSpecifier"||M.type==="ImportNamespaceSpecifier"||M.type==="ImportDefaultSpecifier"?n(f.get(M.local?"local":M.name?"name":"id"),S):C.check(M)&&!t.check(M)&&A.eachField(M,function(N,J){var O=f.get(N);if(!B(O,J))throw new Error("");E(O,S,k)}))}function B(f,S){return!!(f.value===S||Array.isArray(f.value)&&f.value.length===0&&Array.isArray(S)&&S.length===0)}function E(f,S,k){var M=f.value;if(!(!M||t.check(M)))if(g.FunctionDeclaration.check(M)&&M.id!==null)n(f.get("id"),S);else if(g.ClassDeclaration&&g.ClassDeclaration.check(M))n(f.get("id"),S);else if(r.check(M)){if(g.CatchClause.check(M)&&g.Identifier.check(M.param)){var N=M.param.name,J=bC.call(S,N);i(f.get("body"),S,k),J||delete S[N]}}else i(f,S,k)}function n(f,S){var k=f.value;g.Pattern.assert(k),g.Identifier.check(k)?bC.call(S,k.name)?S[k.name].push(f):S[k.name]=[f]:g.AssignmentPattern&&g.AssignmentPattern.check(k)?n(f.get("left"),S):g.ObjectPattern&&g.ObjectPattern.check(k)?f.get("properties").each(function(M){var N=M.value;g.Pattern.check(N)?n(M,S):g.Property.check(N)?n(M.get("value"),S):g.SpreadProperty&&g.SpreadProperty.check(N)&&n(M.get("argument"),S)}):g.ArrayPattern&&g.ArrayPattern.check(k)?f.get("elements").each(function(M){var N=M.value;g.Pattern.check(N)?n(M,S):g.SpreadElement&&g.SpreadElement.check(N)&&n(M.get("argument"),S)}):g.PropertyPattern&&g.PropertyPattern.check(k)?n(f.get("pattern"),S):(g.SpreadElementPattern&&g.SpreadElementPattern.check(k)||g.SpreadPropertyPattern&&g.SpreadPropertyPattern.check(k))&&n(f.get("argument"),S)}function D(f,S){var k=f.value;g.Pattern.assert(k),g.Identifier.check(k)&&(bC.call(S,k.name)?S[k.name].push(f):S[k.name]=[f])}return a.lookup=function(f){for(var S=this;S&&!S.declares(f);S=S.parent);return S},a.lookupType=function(f){for(var S=this;S&&!S.declaresType(f);S=S.parent);return S},a.getGlobalScope=function(){for(var f=this;!f.isGlobal;)f=f.parent;return f},c}Ai.default=wd;Eu.exports=Ai.default});var YQ=U((ei,su)=>{"use strict";Object.defineProperty(ei,"__esModule",{value:!0});var bQ=(OA(),TA(qA)),fd=bQ.__importDefault(XA()),yd=bQ.__importDefault(HQ()),dd=bQ.__importDefault(ru());function Fd(I){var A=I.use(fd.default),e=A.namedTypes,g=A.builders,C=A.builtInTypes.number,t=A.builtInTypes.array,Q=I.use(yd.default),u=I.use(dd.default),c=function D(f,S,k){if(!(this instanceof D))throw new Error("NodePath constructor cannot be invoked without 'new'");Q.call(this,f,S,k)},h=c.prototype=Object.create(Q.prototype,{constructor:{value:c,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(h,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),h.replace=function(){return delete this.node,delete this.parent,delete this.scope,Q.prototype.replace.apply(this,arguments)},h.prune=function(){var D=this.parent;return this.replace(),E(D)},h._computeNode=function(){var D=this.value;if(e.Node.check(D))return D;var f=this.parentPath;return f&&f.node||null},h._computeParent=function(){var D=this.value,f=this.parentPath;if(!e.Node.check(D)){for(;f&&!e.Node.check(f.value);)f=f.parentPath;f&&(f=f.parentPath)}for(;f&&!e.Node.check(f.value);)f=f.parentPath;return f||null},h._computeScope=function(){var D=this.value,f=this.parentPath,S=f&&f.scope;return e.Node.check(D)&&u.isEstablishedBy(D)&&(S=new u(this,S)),S||null},h.getValueProperty=function(D){return A.getFieldValue(this.value,D)},h.needsParens=function(D){var f=this.parentPath;if(!f)return!1;var S=this.value;if(!e.Expression.check(S)||S.type==="Identifier")return!1;for(;!e.Node.check(f.value);)if(f=f.parentPath,!f)return!1;var k=f.value;switch(S.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return k.type==="MemberExpression"&&this.name==="object"&&k.object===S;case"BinaryExpression":case"LogicalExpression":switch(k.type){case"CallExpression":return this.name==="callee"&&k.callee===S;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return this.name==="object"&&k.object===S;case"BinaryExpression":case"LogicalExpression":{var M=S,N=k.operator,J=s[N],O=M.operator,b=s[O];if(J>b)return!0;if(J===b&&this.name==="right"){if(k.right!==M)throw new Error("Nodes must be equal");return!0}}default:return!1}case"SequenceExpression":switch(k.type){case"ForStatement":return!1;case"ExpressionStatement":return this.name!=="expression";default:return!0}case"YieldExpression":switch(k.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return k.type==="MemberExpression"&&C.check(S.value)&&this.name==="object"&&k.object===S;case"AssignmentExpression":case"ConditionalExpression":switch(k.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return this.name==="callee"&&k.callee===S;case"ConditionalExpression":return this.name==="test"&&k.test===S;case"MemberExpression":return this.name==="object"&&k.object===S;default:return!1}default:if(k.type==="NewExpression"&&this.name==="callee"&&k.callee===S)return i(S)}return!!(D!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function r(D){return e.BinaryExpression.check(D)||e.LogicalExpression.check(D)}function a(D){return e.UnaryExpression.check(D)||e.SpreadElement&&e.SpreadElement.check(D)||e.SpreadProperty&&e.SpreadProperty.check(D)}var s={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(D,f){D.forEach(function(S){s[S]=f})});function i(D){return e.CallExpression.check(D)?!0:t.check(D)?D.some(i):e.Node.check(D)?A.someField(D,function(f,S){return i(S)}):!1}h.canBeFirstInStatement=function(){var D=this.node;return!e.FunctionExpression.check(D)&&!e.ObjectExpression.check(D)},h.firstInStatement=function(){return B(this)};function B(D){for(var f,S;D.parent;D=D.parent){if(f=D.node,S=D.parent.node,e.BlockStatement.check(S)&&D.parent.name==="body"&&D.name===0){if(S.body[0]!==f)throw new Error("Nodes must be equal");return!0}if(e.ExpressionStatement.check(S)&&D.name==="expression"){if(S.expression!==f)throw new Error("Nodes must be equal");return!0}if(e.SequenceExpression.check(S)&&D.parent.name==="expressions"&&D.name===0){if(S.expressions[0]!==f)throw new Error("Nodes must be equal");continue}if(e.CallExpression.check(S)&&D.name==="callee"){if(S.callee!==f)throw new Error("Nodes must be equal");continue}if(e.MemberExpression.check(S)&&D.name==="object"){if(S.object!==f)throw new Error("Nodes must be equal");continue}if(e.ConditionalExpression.check(S)&&D.name==="test"){if(S.test!==f)throw new Error("Nodes must be equal");continue}if(r(S)&&D.name==="left"){if(S.left!==f)throw new Error("Nodes must be equal");continue}if(e.UnaryExpression.check(S)&&!S.prefix&&D.name==="argument"){if(S.argument!==f)throw new Error("Nodes must be equal");continue}return!1}return!0}function E(D){if(e.VariableDeclaration.check(D.node)){var f=D.get("declarations").value;if(!f||f.length===0)return D.prune()}else if(e.ExpressionStatement.check(D.node)){if(!D.get("expression").value)return D.prune()}else e.IfStatement.check(D.node)&&n(D);return D}function n(D){var f=D.get("test").value,S=D.get("alternate").value,k=D.get("consequent").value;if(!k&&!S){var M=g.expressionStatement(f);D.replace(M)}else if(!k&&S){var N=g.unaryExpression("!",f,!0);e.UnaryExpression.check(f)&&f.operator==="!"&&(N=f.argument),D.get("test").replace(N),D.get("consequent").replace(S),D.get("alternate").replace()}}return c}ei.default=Fd;su.exports=ei.default});var au=U((Ii,ou)=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});var nu=(OA(),TA(qA)),pd=nu.__importDefault(XA()),Sd=nu.__importDefault(YQ()),gi=Object.prototype.hasOwnProperty;function Rd(I){var A=I.use(pd.default),e=I.use(Sd.default),g=A.builtInTypes.array,C=A.builtInTypes.object,t=A.builtInTypes.function,Q,u=function B(){if(!(this instanceof B))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=c(this),this._shouldVisitComments=gi.call(this._methodNameTable,"Block")||gi.call(this._methodNameTable,"Line"),this.Context=s(this),this._visiting=!1,this._changeReported=!1};function c(B){var E=Object.create(null);for(var n in B)/^visit[A-Z]/.test(n)&&(E[n.slice(5)]=!0);for(var D=A.computeSupertypeLookupTable(E),f=Object.create(null),S=Object.keys(D),k=S.length,M=0;M{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});var kd=(OA(),TA(qA)),Md=kd.__importDefault(XA());function Gd(I){var A=I.use(Md.default),e=A.getFieldNames,g=A.getFieldValue,C=A.builtInTypes.array,t=A.builtInTypes.object,Q=A.builtInTypes.Date,u=A.builtInTypes.RegExp,c=Object.prototype.hasOwnProperty;function h(B,E,n){return C.check(n)?n.length=0:n=null,a(B,E,n)}h.assert=function(B,E){var n=[];if(!h(B,E,n))if(n.length===0){if(B!==E)throw new Error("Nodes must be equal")}else throw new Error("Nodes differ in the following path: "+n.map(r).join(""))};function r(B){return/[_$a-z][_$a-z0-9]*/i.test(B)?"."+B:"["+JSON.stringify(B)+"]"}function a(B,E,n){return B===E?!0:C.check(B)?s(B,E,n):t.check(B)?i(B,E,n):Q.check(B)?Q.check(E)&&+B==+E:u.check(B)?u.check(E)&&B.source===E.source&&B.global===E.global&&B.multiline===E.multiline&&B.ignoreCase===E.ignoreCase:B==E}function s(B,E,n){C.assert(B);var D=B.length;if(!C.check(E)||E.length!==D)return n&&n.push("length"),!1;for(var f=0;f{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});var YC=(OA(),TA(qA)),md=YC.__importDefault(XA()),Nd=YC.__importDefault(au()),Ud=YC.__importDefault(cu()),Ld=YC.__importDefault(HQ()),Jd=YC.__importDefault(YQ());function Kd(I){var A=Hd(),e=A.use(md.default);I.forEach(A.use),e.finalize();var g=A.use(Nd.default);return{Type:e.Type,builtInTypes:e.builtInTypes,namedTypes:e.namedTypes,builders:e.builders,defineMethod:e.defineMethod,getFieldNames:e.getFieldNames,getFieldValue:e.getFieldValue,eachField:e.eachField,someField:e.someField,getSupertypeNames:e.getSupertypeNames,getBuilderName:e.getBuilderName,astNodesAreEquivalent:A.use(Ud.default),finalize:e.finalize,Path:A.use(Ld.default),NodePath:A.use(Jd.default),PathVisitor:g,use:A.use,visit:g.visit}}ti.default=Kd;function Hd(){var I=[],A=[];function e(C){var t=I.indexOf(C);return t===-1&&(t=I.length,I.push(C),A[t]=C(g)),A[t]}var g={use:e};return g}Du.exports=ti.default});var tg=U((ii,lu)=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});var bd=(OA(),TA(qA)),Yd=bd.__importDefault(XA());function xd(I){var A=I.use(Yd.default),e=A.Type,g=A.builtInTypes,C=g.number;function t(h){return e.from(function(r){return C.check(r)&&r>=h},C+" >= "+h)}var Q={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}},u=e.or(g.string,g.number,g.boolean,g.null,g.undefined),c=e.from(function(h){if(h===null)return!0;var r=typeof h;return!(r==="object"||r==="function")},u.toString());return{geq:t,defaults:Q,isPrimitive:c}}ii.default=xd;lu.exports=ii.default});var Qi=U((Bi,fu)=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});var wu=(OA(),TA(qA)),vd=wu.__importDefault(XA()),Td=wu.__importDefault(tg());function Pd(I){var A=I.use(vd.default),e=A.Type,g=e.def,C=e.or,t=I.use(Td.default),Q=t.defaults,u=t.geq;g("Printable").field("loc",C(g("SourceLocation"),null),Q.null,!0),g("Node").bases("Printable").field("type",String).field("comments",C([g("Comment")],null),Q.null,!0),g("SourceLocation").field("start",g("Position")).field("end",g("Position")).field("source",C(String,null),Q.null),g("Position").field("line",u(1)).field("column",u(0)),g("File").bases("Node").build("program","name").field("program",g("Program")).field("name",C(String,null),Q.null),g("Program").bases("Node").build("body").field("body",[g("Statement")]),g("Function").bases("Node").field("id",C(g("Identifier"),null),Q.null).field("params",[g("Pattern")]).field("body",g("BlockStatement")).field("generator",Boolean,Q.false).field("async",Boolean,Q.false),g("Statement").bases("Node"),g("EmptyStatement").bases("Statement").build(),g("BlockStatement").bases("Statement").build("body").field("body",[g("Statement")]),g("ExpressionStatement").bases("Statement").build("expression").field("expression",g("Expression")),g("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",g("Expression")).field("consequent",g("Statement")).field("alternate",C(g("Statement"),null),Q.null),g("LabeledStatement").bases("Statement").build("label","body").field("label",g("Identifier")).field("body",g("Statement")),g("BreakStatement").bases("Statement").build("label").field("label",C(g("Identifier"),null),Q.null),g("ContinueStatement").bases("Statement").build("label").field("label",C(g("Identifier"),null),Q.null),g("WithStatement").bases("Statement").build("object","body").field("object",g("Expression")).field("body",g("Statement")),g("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",g("Expression")).field("cases",[g("SwitchCase")]).field("lexical",Boolean,Q.false),g("ReturnStatement").bases("Statement").build("argument").field("argument",C(g("Expression"),null)),g("ThrowStatement").bases("Statement").build("argument").field("argument",g("Expression")),g("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",g("BlockStatement")).field("handler",C(g("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[g("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[g("CatchClause")],Q.emptyArray).field("finalizer",C(g("BlockStatement"),null),Q.null),g("CatchClause").bases("Node").build("param","guard","body").field("param",C(g("Pattern"),null),Q.null).field("guard",C(g("Expression"),null),Q.null).field("body",g("BlockStatement")),g("WhileStatement").bases("Statement").build("test","body").field("test",g("Expression")).field("body",g("Statement")),g("DoWhileStatement").bases("Statement").build("body","test").field("body",g("Statement")).field("test",g("Expression")),g("ForStatement").bases("Statement").build("init","test","update","body").field("init",C(g("VariableDeclaration"),g("Expression"),null)).field("test",C(g("Expression"),null)).field("update",C(g("Expression"),null)).field("body",g("Statement")),g("ForInStatement").bases("Statement").build("left","right","body").field("left",C(g("VariableDeclaration"),g("Expression"))).field("right",g("Expression")).field("body",g("Statement")),g("DebuggerStatement").bases("Statement").build(),g("Declaration").bases("Statement"),g("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",g("Identifier")),g("FunctionExpression").bases("Function","Expression").build("id","params","body"),g("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",C("var","let","const")).field("declarations",[g("VariableDeclarator")]),g("VariableDeclarator").bases("Node").build("id","init").field("id",g("Pattern")).field("init",C(g("Expression"),null),Q.null),g("Expression").bases("Node"),g("ThisExpression").bases("Expression").build(),g("ArrayExpression").bases("Expression").build("elements").field("elements",[C(g("Expression"),null)]),g("ObjectExpression").bases("Expression").build("properties").field("properties",[g("Property")]),g("Property").bases("Node").build("kind","key","value").field("kind",C("init","get","set")).field("key",C(g("Literal"),g("Identifier"))).field("value",g("Expression")),g("SequenceExpression").bases("Expression").build("expressions").field("expressions",[g("Expression")]);var c=C("-","+","!","~","typeof","void","delete");g("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",c).field("argument",g("Expression")).field("prefix",Boolean,Q.true);var h=C("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","**","&","|","^","in","instanceof");g("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",h).field("left",g("Expression")).field("right",g("Expression"));var r=C("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");g("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",r).field("left",C(g("Pattern"),g("MemberExpression"))).field("right",g("Expression"));var a=C("++","--");g("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",a).field("argument",g("Expression")).field("prefix",Boolean);var s=C("||","&&");g("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",s).field("left",g("Expression")).field("right",g("Expression")),g("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",g("Expression")).field("consequent",g("Expression")).field("alternate",g("Expression")),g("NewExpression").bases("Expression").build("callee","arguments").field("callee",g("Expression")).field("arguments",[g("Expression")]),g("CallExpression").bases("Expression").build("callee","arguments").field("callee",g("Expression")).field("arguments",[g("Expression")]),g("MemberExpression").bases("Expression").build("object","property","computed").field("object",g("Expression")).field("property",C(g("Identifier"),g("Expression"))).field("computed",Boolean,function(){var i=this.property.type;return i==="Literal"||i==="MemberExpression"||i==="BinaryExpression"}),g("Pattern").bases("Node"),g("SwitchCase").bases("Node").build("test","consequent").field("test",C(g("Expression"),null)).field("consequent",[g("Statement")]),g("Identifier").bases("Expression","Pattern").build("name").field("name",String).field("optional",Boolean,Q.false),g("Literal").bases("Expression").build("value").field("value",C(String,Boolean,null,Number,RegExp)).field("regex",C({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var i="";return this.value.ignoreCase&&(i+="i"),this.value.multiline&&(i+="m"),this.value.global&&(i+="g"),{pattern:this.value.source,flags:i}}return null}),g("Comment").bases("Printable").field("value",String).field("leading",Boolean,Q.true).field("trailing",Boolean,Q.false)}Bi.default=Pd;fu.exports=Bi.default});var vQ=U((Ei,yu)=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});var xQ=(OA(),TA(qA)),qd=xQ.__importDefault(Qi()),Od=xQ.__importDefault(XA()),Vd=xQ.__importDefault(tg());function Wd(I){I.use(qd.default);var A=I.use(Od.default),e=A.Type.def,g=A.Type.or,C=I.use(Vd.default).defaults;e("Function").field("generator",Boolean,C.false).field("expression",Boolean,C.false).field("defaults",[g(e("Expression"),null)],C.emptyArray).field("rest",g(e("Identifier"),null),C.null),e("RestElement").bases("Pattern").build("argument").field("argument",e("Pattern")).field("typeAnnotation",g(e("TypeAnnotation"),e("TSTypeAnnotation"),null),C.null),e("SpreadElementPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("FunctionDeclaration").build("id","params","body","generator","expression"),e("FunctionExpression").build("id","params","body","generator","expression"),e("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,C.null).field("body",g(e("BlockStatement"),e("Expression"))).field("generator",!1,C.false),e("ForOfStatement").bases("Statement").build("left","right","body").field("left",g(e("VariableDeclaration"),e("Pattern"))).field("right",e("Expression")).field("body",e("Statement")),e("YieldExpression").bases("Expression").build("argument","delegate").field("argument",g(e("Expression"),null)).field("delegate",Boolean,C.false),e("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",g(e("Expression"),null)),e("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",g(e("Expression"),null)),e("ComprehensionBlock").bases("Node").build("left","right","each").field("left",e("Pattern")).field("right",e("Expression")).field("each",Boolean),e("Property").field("key",g(e("Literal"),e("Identifier"),e("Expression"))).field("value",g(e("Expression"),e("Pattern"))).field("method",Boolean,C.false).field("shorthand",Boolean,C.false).field("computed",Boolean,C.false),e("ObjectProperty").field("shorthand",Boolean,C.false),e("PropertyPattern").bases("Pattern").build("key","pattern").field("key",g(e("Literal"),e("Identifier"),e("Expression"))).field("pattern",e("Pattern")).field("computed",Boolean,C.false),e("ObjectPattern").bases("Pattern").build("properties").field("properties",[g(e("PropertyPattern"),e("Property"))]),e("ArrayPattern").bases("Pattern").build("elements").field("elements",[g(e("Pattern"),null)]),e("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",g("constructor","method","get","set")).field("key",e("Expression")).field("value",e("Function")).field("computed",Boolean,C.false).field("static",Boolean,C.false),e("SpreadElement").bases("Node").build("argument").field("argument",e("Expression")),e("ArrayExpression").field("elements",[g(e("Expression"),e("SpreadElement"),e("RestElement"),null)]),e("NewExpression").field("arguments",[g(e("Expression"),e("SpreadElement"))]),e("CallExpression").field("arguments",[g(e("Expression"),e("SpreadElement"))]),e("AssignmentPattern").bases("Pattern").build("left","right").field("left",e("Pattern")).field("right",e("Expression"));var t=g(e("MethodDefinition"),e("VariableDeclarator"),e("ClassPropertyDefinition"),e("ClassProperty"));e("ClassProperty").bases("Declaration").build("key").field("key",g(e("Literal"),e("Identifier"),e("Expression"))).field("computed",Boolean,C.false),e("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",t),e("ClassBody").bases("Declaration").build("body").field("body",[t]),e("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",g(e("Identifier"),null)).field("body",e("ClassBody")).field("superClass",g(e("Expression"),null),C.null),e("ClassExpression").bases("Expression").build("id","body","superClass").field("id",g(e("Identifier"),null),C.null).field("body",e("ClassBody")).field("superClass",g(e("Expression"),null),C.null),e("Specifier").bases("Node"),e("ModuleSpecifier").bases("Specifier").field("local",g(e("Identifier"),null),C.null).field("id",g(e("Identifier"),null),C.null).field("name",g(e("Identifier"),null),C.null),e("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),e("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),e("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),e("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[g(e("ImportSpecifier"),e("ImportNamespaceSpecifier"),e("ImportDefaultSpecifier"))],C.emptyArray).field("source",e("Literal")).field("importKind",g("value","type"),function(){return"value"}),e("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",e("Expression")).field("quasi",e("TemplateLiteral")),e("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[e("TemplateElement")]).field("expressions",[e("Expression")]),e("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)}Ei.default=Wd;yu.exports=Ei.default});var cI=U((ri,du)=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});var TQ=(OA(),TA(qA)),Zd=TQ.__importDefault(vQ()),Xd=TQ.__importDefault(XA()),_d=TQ.__importDefault(tg());function jd(I){I.use(Zd.default);var A=I.use(Xd.default),e=A.Type.def,g=A.Type.or,C=I.use(_d.default).defaults;e("Function").field("async",Boolean,C.false),e("SpreadProperty").bases("Node").build("argument").field("argument",e("Expression")),e("ObjectExpression").field("properties",[g(e("Property"),e("SpreadProperty"),e("SpreadElement"))]),e("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("ObjectPattern").field("properties",[g(e("Property"),e("PropertyPattern"),e("SpreadPropertyPattern"))]),e("AwaitExpression").bases("Expression").build("argument","all").field("argument",g(e("Expression"),null)).field("all",Boolean,C.false)}ri.default=jd;du.exports=ri.default});var Su=U((si,pu)=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});var Fu=(OA(),TA(qA)),zd=Fu.__importDefault(cI()),$d=Fu.__importDefault(XA());function AF(I){I.use(zd.default);var A=I.use($d.default),e=A.Type.def;e("ImportExpression").bases("Expression").build("source").field("source",e("Expression"))}si.default=AF;pu.exports=si.default});var ku=U((ni,Ru)=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});var PQ=(OA(),TA(qA)),eF=PQ.__importDefault(cI()),gF=PQ.__importDefault(XA()),IF=PQ.__importDefault(tg());function CF(I){I.use(eF.default);var A=I.use(gF.default),e=A.Type.def,g=A.Type.or,C=I.use(IF.default).defaults;e("JSXAttribute").bases("Node").build("name","value").field("name",g(e("JSXIdentifier"),e("JSXNamespacedName"))).field("value",g(e("Literal"),e("JSXExpressionContainer"),null),C.null),e("JSXIdentifier").bases("Identifier").build("name").field("name",String),e("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",e("JSXIdentifier")).field("name",e("JSXIdentifier")),e("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",g(e("JSXIdentifier"),e("JSXMemberExpression"))).field("property",e("JSXIdentifier")).field("computed",Boolean,C.false);var t=g(e("JSXIdentifier"),e("JSXNamespacedName"),e("JSXMemberExpression"));e("JSXSpreadAttribute").bases("Node").build("argument").field("argument",e("Expression"));var Q=[g(e("JSXAttribute"),e("JSXSpreadAttribute"))];e("JSXExpressionContainer").bases("Expression").build("expression").field("expression",e("Expression")),e("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",e("JSXOpeningElement")).field("closingElement",g(e("JSXClosingElement"),null),C.null).field("children",[g(e("JSXElement"),e("JSXExpressionContainer"),e("JSXFragment"),e("JSXText"),e("Literal"))],C.emptyArray).field("name",t,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",Q,function(){return this.openingElement.attributes},!0),e("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",t).field("attributes",Q,C.emptyArray).field("selfClosing",Boolean,C.false),e("JSXClosingElement").bases("Node").build("name").field("name",t),e("JSXFragment").bases("Expression").build("openingElement","closingElement","children").field("openingElement",e("JSXOpeningFragment")).field("closingElement",e("JSXClosingFragment")).field("children",[g(e("JSXElement"),e("JSXExpressionContainer"),e("JSXFragment"),e("JSXText"),e("Literal"))],C.emptyArray),e("JSXOpeningFragment").bases("Node").build(),e("JSXClosingFragment").bases("Node").build(),e("JSXText").bases("Literal").build("value").field("value",String),e("JSXEmptyExpression").bases("Expression").build(),e("JSXSpreadChild").bases("Expression").build("expression").field("expression",e("Expression"))}ni.default=CF;Ru.exports=ni.default});var qQ=U((oi,Gu)=>{"use strict";Object.defineProperty(oi,"__esModule",{value:!0});var Mu=(OA(),TA(qA)),tF=Mu.__importDefault(XA()),iF=Mu.__importDefault(tg());function BF(I){var A=I.use(tF.default),e=A.Type.def,g=A.Type.or,C=I.use(iF.default).defaults,t=g(e("TypeAnnotation"),e("TSTypeAnnotation"),null),Q=g(e("TypeParameterDeclaration"),e("TSTypeParameterDeclaration"),null);e("Identifier").field("typeAnnotation",t,C.null),e("ObjectPattern").field("typeAnnotation",t,C.null),e("Function").field("returnType",t,C.null).field("typeParameters",Q,C.null),e("ClassProperty").build("key","value","typeAnnotation","static").field("value",g(e("Expression"),null)).field("static",Boolean,C.false).field("typeAnnotation",t,C.null),["ClassDeclaration","ClassExpression"].forEach(function(u){e(u).field("typeParameters",Q,C.null).field("superTypeParameters",g(e("TypeParameterInstantiation"),e("TSTypeParameterInstantiation"),null),C.null).field("implements",g([e("ClassImplements")],[e("TSExpressionWithTypeArguments")]),C.emptyArray)})}oi.default=BF;Gu.exports=oi.default});var OQ=U((ui,mu)=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});var ai=(OA(),TA(qA)),QF=ai.__importDefault(cI()),EF=ai.__importDefault(qQ()),rF=ai.__importDefault(XA()),sF=ai.__importDefault(tg());function nF(I){I.use(QF.default),I.use(EF.default);var A=I.use(rF.default),e=A.Type.def,g=A.Type.or,C=I.use(sF.default).defaults;e("Flow").bases("Node"),e("FlowType").bases("Flow"),e("AnyTypeAnnotation").bases("FlowType").build(),e("EmptyTypeAnnotation").bases("FlowType").build(),e("MixedTypeAnnotation").bases("FlowType").build(),e("VoidTypeAnnotation").bases("FlowType").build(),e("NumberTypeAnnotation").bases("FlowType").build(),e("NumberLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("NumericLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("StringTypeAnnotation").bases("FlowType").build(),e("StringLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",String).field("raw",String),e("BooleanTypeAnnotation").bases("FlowType").build(),e("BooleanLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Boolean).field("raw",String),e("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullableTypeAnnotation").bases("FlowType").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullLiteralTypeAnnotation").bases("FlowType").build(),e("NullTypeAnnotation").bases("FlowType").build(),e("ThisTypeAnnotation").bases("FlowType").build(),e("ExistsTypeAnnotation").bases("FlowType").build(),e("ExistentialTypeParam").bases("FlowType").build(),e("FunctionTypeAnnotation").bases("FlowType").build("params","returnType","rest","typeParameters").field("params",[e("FunctionTypeParam")]).field("returnType",e("FlowType")).field("rest",g(e("FunctionTypeParam"),null)).field("typeParameters",g(e("TypeParameterDeclaration"),null)),e("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",e("Identifier")).field("typeAnnotation",e("FlowType")).field("optional",Boolean),e("ArrayTypeAnnotation").bases("FlowType").build("elementType").field("elementType",e("FlowType")),e("ObjectTypeAnnotation").bases("FlowType").build("properties","indexers","callProperties").field("properties",[g(e("ObjectTypeProperty"),e("ObjectTypeSpreadProperty"))]).field("indexers",[e("ObjectTypeIndexer")],C.emptyArray).field("callProperties",[e("ObjectTypeCallProperty")],C.emptyArray).field("inexact",g(Boolean,void 0),C.undefined).field("exact",Boolean,C.false).field("internalSlots",[e("ObjectTypeInternalSlot")],C.emptyArray),e("Variance").bases("Node").build("kind").field("kind",g("plus","minus"));var t=g(e("Variance"),"plus","minus",null);e("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",g(e("Literal"),e("Identifier"))).field("value",e("FlowType")).field("optional",Boolean).field("variance",t,C.null),e("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",e("Identifier")).field("key",e("FlowType")).field("value",e("FlowType")).field("variance",t,C.null),e("ObjectTypeCallProperty").bases("Node").build("value").field("value",e("FunctionTypeAnnotation")).field("static",Boolean,C.false),e("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",g(e("Identifier"),e("QualifiedTypeIdentifier"))).field("id",e("Identifier")),e("GenericTypeAnnotation").bases("FlowType").build("id","typeParameters").field("id",g(e("Identifier"),e("QualifiedTypeIdentifier"))).field("typeParameters",g(e("TypeParameterInstantiation"),null)),e("MemberTypeAnnotation").bases("FlowType").build("object","property").field("object",e("Identifier")).field("property",g(e("MemberTypeAnnotation"),e("GenericTypeAnnotation"))),e("UnionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("IntersectionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("TypeofTypeAnnotation").bases("FlowType").build("argument").field("argument",e("FlowType")),e("ObjectTypeSpreadProperty").bases("Node").build("argument").field("argument",e("FlowType")),e("ObjectTypeInternalSlot").bases("Node").build("id","value","optional","static","method").field("id",e("Identifier")).field("value",e("FlowType")).field("optional",Boolean).field("static",Boolean).field("method",Boolean),e("TypeParameterDeclaration").bases("Node").build("params").field("params",[e("TypeParameter")]),e("TypeParameterInstantiation").bases("Node").build("params").field("params",[e("FlowType")]),e("TypeParameter").bases("FlowType").build("name","variance","bound").field("name",String).field("variance",t,C.null).field("bound",g(e("TypeAnnotation"),null),C.null),e("ClassProperty").field("variance",t,C.null),e("ClassImplements").bases("Node").build("id").field("id",e("Identifier")).field("superClass",g(e("Expression"),null),C.null).field("typeParameters",g(e("TypeParameterInstantiation"),null),C.null),e("InterfaceTypeAnnotation").bases("FlowType").build("body","extends").field("body",e("ObjectTypeAnnotation")).field("extends",g([e("InterfaceExtends")],null),C.null),e("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",e("Identifier")).field("typeParameters",g(e("TypeParameterDeclaration"),null),C.null).field("body",e("ObjectTypeAnnotation")).field("extends",[e("InterfaceExtends")]),e("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),e("InterfaceExtends").bases("Node").build("id").field("id",e("Identifier")).field("typeParameters",g(e("TypeParameterInstantiation"),null),C.null),e("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",e("Identifier")).field("typeParameters",g(e("TypeParameterDeclaration"),null)).field("right",e("FlowType")),e("OpaqueType").bases("Declaration").build("id","typeParameters","impltype","supertype").field("id",e("Identifier")).field("typeParameters",g(e("TypeParameterDeclaration"),null)).field("impltype",e("FlowType")).field("supertype",e("FlowType")),e("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),e("DeclareOpaqueType").bases("TypeAlias").build("id","typeParameters","supertype"),e("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",e("Expression")).field("typeAnnotation",e("TypeAnnotation")),e("TupleTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("DeclareVariable").bases("Statement").build("id").field("id",e("Identifier")),e("DeclareFunction").bases("Statement").build("id").field("id",e("Identifier")),e("DeclareClass").bases("InterfaceDeclaration").build("id"),e("DeclareModule").bases("Statement").build("id","body").field("id",g(e("Identifier"),e("Literal"))).field("body",e("BlockStatement")),e("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",e("TypeAnnotation")),e("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",g(e("DeclareVariable"),e("DeclareFunction"),e("DeclareClass"),e("FlowType"),null)).field("specifiers",[g(e("ExportSpecifier"),e("ExportBatchSpecifier"))],C.emptyArray).field("source",g(e("Literal"),null),C.null),e("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",g(e("Literal"),null),C.null),e("FlowPredicate").bases("Flow"),e("InferredPredicate").bases("FlowPredicate").build(),e("DeclaredPredicate").bases("FlowPredicate").build("value").field("value",e("Expression")),e("CallExpression").field("typeArguments",g(null,e("TypeParameterInstantiation")),C.null),e("NewExpression").field("typeArguments",g(null,e("TypeParameterInstantiation")),C.null)}ui.default=nF;mu.exports=ui.default});var Uu=U((ci,Nu)=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});var VQ=(OA(),TA(qA)),oF=VQ.__importDefault(cI()),aF=VQ.__importDefault(XA()),uF=VQ.__importDefault(tg());function cF(I){I.use(oF.default);var A=I.use(aF.default),e=I.use(uF.default).defaults,g=A.Type.def,C=A.Type.or;g("VariableDeclaration").field("declarations",[C(g("VariableDeclarator"),g("Identifier"))]),g("Property").field("value",C(g("Expression"),g("Pattern"))),g("ArrayPattern").field("elements",[C(g("Pattern"),g("SpreadElement"),null)]),g("ObjectPattern").field("properties",[C(g("Property"),g("PropertyPattern"),g("SpreadPropertyPattern"),g("SpreadProperty"))]),g("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),g("ExportBatchSpecifier").bases("Specifier").build(),g("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",C(g("Declaration"),g("Expression"),null)).field("specifiers",[C(g("ExportSpecifier"),g("ExportBatchSpecifier"))],e.emptyArray).field("source",C(g("Literal"),null),e.null),g("Block").bases("Comment").build("value","leading","trailing"),g("Line").bases("Comment").build("value","leading","trailing")}ci.default=cF;Nu.exports=ci.default});var ZQ=U((Di,Lu)=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});var WQ=(OA(),TA(qA)),DF=WQ.__importDefault(XA()),hF=WQ.__importDefault(tg()),lF=WQ.__importDefault(cI());function wF(I){I.use(lF.default);var A=I.use(DF.default),e=I.use(hF.default).defaults,g=A.Type.def,C=A.Type.or;g("Noop").bases("Statement").build(),g("DoExpression").bases("Expression").build("body").field("body",[g("Statement")]),g("Super").bases("Expression").build(),g("BindExpression").bases("Expression").build("object","callee").field("object",C(g("Expression"),null)).field("callee",g("Expression")),g("Decorator").bases("Node").build("expression").field("expression",g("Expression")),g("Property").field("decorators",C([g("Decorator")],null),e.null),g("MethodDefinition").field("decorators",C([g("Decorator")],null),e.null),g("MetaProperty").bases("Expression").build("meta","property").field("meta",g("Identifier")).field("property",g("Identifier")),g("ParenthesizedExpression").bases("Expression").build("expression").field("expression",g("Expression")),g("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",g("Identifier")),g("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),g("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),g("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",C(g("Declaration"),g("Expression"))),g("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",C(g("Declaration"),null)).field("specifiers",[g("ExportSpecifier")],e.emptyArray).field("source",C(g("Literal"),null),e.null),g("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",g("Identifier")),g("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",g("Identifier")),g("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",g("Identifier")),g("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",C(g("Identifier"),null)).field("source",g("Literal")),g("CommentBlock").bases("Comment").build("value","leading","trailing"),g("CommentLine").bases("Comment").build("value","leading","trailing"),g("Directive").bases("Node").build("value").field("value",g("DirectiveLiteral")),g("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,e["use strict"]),g("InterpreterDirective").bases("Node").build("value").field("value",String),g("BlockStatement").bases("Statement").build("body").field("body",[g("Statement")]).field("directives",[g("Directive")],e.emptyArray),g("Program").bases("Node").build("body").field("body",[g("Statement")]).field("directives",[g("Directive")],e.emptyArray).field("interpreter",C(g("InterpreterDirective"),null),e.null),g("StringLiteral").bases("Literal").build("value").field("value",String),g("NumericLiteral").bases("Literal").build("value").field("value",Number).field("raw",C(String,null),e.null).field("extra",{rawValue:Number,raw:String},function(){return{rawValue:this.value,raw:this.value+""}}),g("BigIntLiteral").bases("Literal").build("value").field("value",C(String,Number)).field("extra",{rawValue:String,raw:String},function(){return{rawValue:String(this.value),raw:this.value+"n"}}),g("NullLiteral").bases("Literal").build().field("value",null,e.null),g("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),g("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String).field("value",RegExp,function(){return new RegExp(this.pattern,this.flags)});var t=C(g("Property"),g("ObjectMethod"),g("ObjectProperty"),g("SpreadProperty"),g("SpreadElement"));g("ObjectExpression").bases("Expression").build("properties").field("properties",[t]),g("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",C("method","get","set")).field("key",C(g("Literal"),g("Identifier"),g("Expression"))).field("params",[g("Pattern")]).field("body",g("BlockStatement")).field("computed",Boolean,e.false).field("generator",Boolean,e.false).field("async",Boolean,e.false).field("accessibility",C(g("Literal"),null),e.null).field("decorators",C([g("Decorator")],null),e.null),g("ObjectProperty").bases("Node").build("key","value").field("key",C(g("Literal"),g("Identifier"),g("Expression"))).field("value",C(g("Expression"),g("Pattern"))).field("accessibility",C(g("Literal"),null),e.null).field("computed",Boolean,e.false);var Q=C(g("MethodDefinition"),g("VariableDeclarator"),g("ClassPropertyDefinition"),g("ClassProperty"),g("ClassPrivateProperty"),g("ClassMethod"),g("ClassPrivateMethod"));g("ClassBody").bases("Declaration").build("body").field("body",[Q]),g("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("key",C(g("Literal"),g("Identifier"),g("Expression"))),g("ClassPrivateMethod").bases("Declaration","Function").build("key","params","body","kind","computed","static").field("key",g("PrivateName")),["ClassMethod","ClassPrivateMethod"].forEach(function(c){g(c).field("kind",C("get","set","method","constructor"),function(){return"method"}).field("body",g("BlockStatement")).field("computed",Boolean,e.false).field("static",C(Boolean,null),e.null).field("abstract",C(Boolean,null),e.null).field("access",C("public","private","protected",null),e.null).field("accessibility",C("public","private","protected",null),e.null).field("decorators",C([g("Decorator")],null),e.null).field("optional",C(Boolean,null),e.null)}),g("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",g("PrivateName")).field("value",C(g("Expression"),null),e.null),g("PrivateName").bases("Expression","Pattern").build("id").field("id",g("Identifier"));var u=C(g("Property"),g("PropertyPattern"),g("SpreadPropertyPattern"),g("SpreadProperty"),g("ObjectProperty"),g("RestProperty"));g("ObjectPattern").bases("Pattern").build("properties").field("properties",[u]).field("decorators",C([g("Decorator")],null),e.null),g("SpreadProperty").bases("Node").build("argument").field("argument",g("Expression")),g("RestProperty").bases("Node").build("argument").field("argument",g("Expression")),g("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",C(g("VariableDeclaration"),g("Expression"))).field("right",g("Expression")).field("body",g("Statement")),g("Import").bases("Expression").build()}Di.default=wF;Lu.exports=Di.default});var Hu=U((hi,Ku)=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});var Ju=(OA(),TA(qA)),fF=Ju.__importDefault(ZQ()),yF=Ju.__importDefault(OQ());function dF(I){I.use(fF.default),I.use(yF.default)}hi.default=dF;Ku.exports=hi.default});var Yu=U((wi,bu)=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});var li=(OA(),TA(qA)),FF=li.__importDefault(ZQ()),pF=li.__importDefault(qQ()),SF=li.__importDefault(XA()),RF=li.__importDefault(tg());function kF(I){I.use(FF.default),I.use(pF.default);var A=I.use(SF.default),e=A.namedTypes,g=A.Type.def,C=A.Type.or,t=I.use(RF.default).defaults,Q=A.Type.from(function(r,a){return!!(e.StringLiteral&&e.StringLiteral.check(r,a)||e.Literal&&e.Literal.check(r,a)&&typeof r.value=="string")},"StringLiteral");g("TSType").bases("Node");var u=C(g("Identifier"),g("TSQualifiedName"));g("TSTypeReference").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("typeName","typeParameters").field("typeName",u),g("TSHasOptionalTypeParameterInstantiation").field("typeParameters",C(g("TSTypeParameterInstantiation"),null),t.null),g("TSHasOptionalTypeParameters").field("typeParameters",C(g("TSTypeParameterDeclaration"),null,void 0),t.null),g("TSHasOptionalTypeAnnotation").field("typeAnnotation",C(g("TSTypeAnnotation"),null),t.null),g("TSQualifiedName").bases("Node").build("left","right").field("left",u).field("right",u),g("TSAsExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",g("Expression")).field("typeAnnotation",g("TSType")).field("extra",C({parenthesized:Boolean},null),t.null),g("TSNonNullExpression").bases("Expression","Pattern").build("expression").field("expression",g("Expression")),["TSAnyKeyword","TSBigIntKeyword","TSBooleanKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword","TSThisType"].forEach(function(r){g(r).bases("TSType").build()}),g("TSArrayType").bases("TSType").build("elementType").field("elementType",g("TSType")),g("TSLiteralType").bases("TSType").build("literal").field("literal",C(g("NumericLiteral"),g("StringLiteral"),g("BooleanLiteral"),g("TemplateLiteral"),g("UnaryExpression"))),["TSUnionType","TSIntersectionType"].forEach(function(r){g(r).bases("TSType").build("types").field("types",[g("TSType")])}),g("TSConditionalType").bases("TSType").build("checkType","extendsType","trueType","falseType").field("checkType",g("TSType")).field("extendsType",g("TSType")).field("trueType",g("TSType")).field("falseType",g("TSType")),g("TSInferType").bases("TSType").build("typeParameter").field("typeParameter",g("TSTypeParameter")),g("TSParenthesizedType").bases("TSType").build("typeAnnotation").field("typeAnnotation",g("TSType"));var c=[C(g("Identifier"),g("RestElement"),g("ArrayPattern"),g("ObjectPattern"))];["TSFunctionType","TSConstructorType"].forEach(function(r){g(r).bases("TSType","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters").field("parameters",c)}),g("TSDeclareFunction").bases("Declaration","TSHasOptionalTypeParameters").build("id","params","returnType").field("declare",Boolean,t.false).field("async",Boolean,t.false).field("generator",Boolean,t.false).field("id",C(g("Identifier"),null),t.null).field("params",[g("Pattern")]).field("returnType",C(g("TSTypeAnnotation"),g("Noop"),null),t.null),g("TSDeclareMethod").bases("Declaration","TSHasOptionalTypeParameters").build("key","params","returnType").field("async",Boolean,t.false).field("generator",Boolean,t.false).field("params",[g("Pattern")]).field("abstract",Boolean,t.false).field("accessibility",C("public","private","protected",void 0),t.undefined).field("static",Boolean,t.false).field("computed",Boolean,t.false).field("optional",Boolean,t.false).field("key",C(g("Identifier"),g("StringLiteral"),g("NumericLiteral"),g("Expression"))).field("kind",C("get","set","method","constructor"),function(){return"method"}).field("access",C("public","private","protected",void 0),t.undefined).field("decorators",C([g("Decorator")],null),t.null).field("returnType",C(g("TSTypeAnnotation"),g("Noop"),null),t.null),g("TSMappedType").bases("TSType").build("typeParameter","typeAnnotation").field("readonly",C(Boolean,"+","-"),t.false).field("typeParameter",g("TSTypeParameter")).field("optional",C(Boolean,"+","-"),t.false).field("typeAnnotation",C(g("TSType"),null),t.null),g("TSTupleType").bases("TSType").build("elementTypes").field("elementTypes",[C(g("TSType"),g("TSNamedTupleMember"))]),g("TSNamedTupleMember").bases("TSType").build("label","elementType","optional").field("label",g("Identifier")).field("optional",Boolean,t.false).field("elementType",g("TSType")),g("TSRestType").bases("TSType").build("typeAnnotation").field("typeAnnotation",g("TSType")),g("TSOptionalType").bases("TSType").build("typeAnnotation").field("typeAnnotation",g("TSType")),g("TSIndexedAccessType").bases("TSType").build("objectType","indexType").field("objectType",g("TSType")).field("indexType",g("TSType")),g("TSTypeOperator").bases("TSType").build("operator").field("operator",String).field("typeAnnotation",g("TSType")),g("TSTypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",C(g("TSType"),g("TSTypeAnnotation"))),g("TSIndexSignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",[g("Identifier")]).field("readonly",Boolean,t.false),g("TSPropertySignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("key","typeAnnotation","optional").field("key",g("Expression")).field("computed",Boolean,t.false).field("readonly",Boolean,t.false).field("optional",Boolean,t.false).field("initializer",C(g("Expression"),null),t.null),g("TSMethodSignature").bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("key","parameters","typeAnnotation").field("key",g("Expression")).field("computed",Boolean,t.false).field("optional",Boolean,t.false).field("parameters",c),g("TSTypePredicate").bases("TSTypeAnnotation","TSType").build("parameterName","typeAnnotation","asserts").field("parameterName",C(g("Identifier"),g("TSThisType"))).field("typeAnnotation",C(g("TSTypeAnnotation"),null),t.null).field("asserts",Boolean,t.false),["TSCallSignatureDeclaration","TSConstructSignatureDeclaration"].forEach(function(r){g(r).bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",c)}),g("TSEnumMember").bases("Node").build("id","initializer").field("id",C(g("Identifier"),Q)).field("initializer",C(g("Expression"),null),t.null),g("TSTypeQuery").bases("TSType").build("exprName").field("exprName",C(u,g("TSImportType")));var h=C(g("TSCallSignatureDeclaration"),g("TSConstructSignatureDeclaration"),g("TSIndexSignature"),g("TSMethodSignature"),g("TSPropertySignature"));g("TSTypeLiteral").bases("TSType").build("members").field("members",[h]),g("TSTypeParameter").bases("Identifier").build("name","constraint","default").field("name",String).field("constraint",C(g("TSType"),void 0),t.undefined).field("default",C(g("TSType"),void 0),t.undefined),g("TSTypeAssertion").bases("Expression","Pattern").build("typeAnnotation","expression").field("typeAnnotation",g("TSType")).field("expression",g("Expression")).field("extra",C({parenthesized:Boolean},null),t.null),g("TSTypeParameterDeclaration").bases("Declaration").build("params").field("params",[g("TSTypeParameter")]),g("TSTypeParameterInstantiation").bases("Node").build("params").field("params",[g("TSType")]),g("TSEnumDeclaration").bases("Declaration").build("id","members").field("id",g("Identifier")).field("const",Boolean,t.false).field("declare",Boolean,t.false).field("members",[g("TSEnumMember")]).field("initializer",C(g("Expression"),null),t.null),g("TSTypeAliasDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","typeAnnotation").field("id",g("Identifier")).field("declare",Boolean,t.false).field("typeAnnotation",g("TSType")),g("TSModuleBlock").bases("Node").build("body").field("body",[g("Statement")]),g("TSModuleDeclaration").bases("Declaration").build("id","body").field("id",C(Q,u)).field("declare",Boolean,t.false).field("global",Boolean,t.false).field("body",C(g("TSModuleBlock"),g("TSModuleDeclaration"),null),t.null),g("TSImportType").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("argument","qualifier","typeParameters").field("argument",Q).field("qualifier",C(u,void 0),t.undefined),g("TSImportEqualsDeclaration").bases("Declaration").build("id","moduleReference").field("id",g("Identifier")).field("isExport",Boolean,t.false).field("moduleReference",C(u,g("TSExternalModuleReference"))),g("TSExternalModuleReference").bases("Declaration").build("expression").field("expression",Q),g("TSExportAssignment").bases("Statement").build("expression").field("expression",g("Expression")),g("TSNamespaceExportDeclaration").bases("Declaration").build("id").field("id",g("Identifier")),g("TSInterfaceBody").bases("Node").build("body").field("body",[h]),g("TSExpressionWithTypeArguments").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",u),g("TSInterfaceDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","body").field("id",u).field("declare",Boolean,t.false).field("extends",C([g("TSExpressionWithTypeArguments")],null),t.null).field("body",g("TSInterfaceBody")),g("TSParameterProperty").bases("Pattern").build("parameter").field("accessibility",C("public","private","protected",void 0),t.undefined).field("readonly",Boolean,t.false).field("parameter",C(g("Identifier"),g("AssignmentPattern"))),g("ClassProperty").field("access",C("public","private","protected",void 0),t.undefined),g("ClassBody").field("body",[C(g("MethodDefinition"),g("VariableDeclarator"),g("ClassPropertyDefinition"),g("ClassProperty"),g("ClassPrivateProperty"),g("ClassMethod"),g("ClassPrivateMethod"),g("TSDeclareMethod"),h)])}wi.default=kF;bu.exports=wi.default});var vu=U((fi,xu)=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});var XQ=(OA(),TA(qA)),MF=XQ.__importDefault(XA()),GF=XQ.__importDefault(tg()),mF=XQ.__importDefault(Qi());function NF(I){I.use(mF.default);var A=I.use(MF.default),e=A.Type,g=A.Type.def,C=e.or,t=I.use(GF.default),Q=t.defaults;g("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,Q.true),g("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,Q.true);var u=C("||","&&","??");g("LogicalExpression").field("operator",u)}fi.default=NF;xu.exports=fi.default});var Tu=U(xC=>{"use strict";Object.defineProperty(xC,"__esModule",{value:!0});xC.namedTypes=void 0;var UF;UF=xC.namedTypes||(xC.namedTypes={})});var qu=U(dA=>{"use strict";Object.defineProperty(dA,"__esModule",{value:!0});dA.visit=dA.use=dA.Type=dA.someField=dA.PathVisitor=dA.Path=dA.NodePath=dA.namedTypes=dA.getSupertypeNames=dA.getFieldValue=dA.getFieldNames=dA.getBuilderName=dA.finalize=dA.eachField=dA.defineMethod=dA.builtInTypes=dA.builders=dA.astNodesAreEquivalent=void 0;var ig=(OA(),TA(qA)),LF=ig.__importDefault(hu()),JF=ig.__importDefault(Qi()),KF=ig.__importDefault(vQ()),HF=ig.__importDefault(cI()),bF=ig.__importDefault(Su()),YF=ig.__importDefault(ku()),xF=ig.__importDefault(OQ()),vF=ig.__importDefault(Uu()),TF=ig.__importDefault(Hu()),PF=ig.__importDefault(Yu()),qF=ig.__importDefault(vu()),Pu=Tu();Object.defineProperty(dA,"namedTypes",{enumerable:!0,get:function(){return Pu.namedTypes}});var Ce=LF.default([JF.default,KF.default,HF.default,bF.default,YF.default,xF.default,vF.default,TF.default,PF.default,qF.default]),OF=Ce.astNodesAreEquivalent,VF=Ce.builders,WF=Ce.builtInTypes,ZF=Ce.defineMethod,XF=Ce.eachField,_F=Ce.finalize,jF=Ce.getBuilderName,zF=Ce.getFieldNames,$F=Ce.getFieldValue,Ap=Ce.getSupertypeNames,ep=Ce.namedTypes,gp=Ce.NodePath,Ip=Ce.Path,Cp=Ce.PathVisitor,tp=Ce.someField,ip=Ce.Type,Bp=Ce.use,Qp=Ce.visit;dA.astNodesAreEquivalent=OF;dA.builders=VF;dA.builtInTypes=WF;dA.defineMethod=ZF;dA.eachField=XF;dA.finalize=_F;dA.getBuilderName=jF;dA.getFieldNames=zF;dA.getFieldValue=$F;dA.getSupertypeNames=Ap;dA.NodePath=gp;dA.Path=Ip;dA.PathVisitor=Cp;dA.someField=tp;dA.Type=ip;dA.use=Bp;dA.visit=Qp;Object.assign(Pu.namedTypes,ep)});var _Q=U(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.degenerator=void 0;var Ep=require("util"),rp=Ua(),sp=La(),pe=qu();function np(I,A){if(!Array.isArray(A))throw new TypeError('an array of async function "names" is required');let e=A.slice(0),g=(0,sp.parseScript)(I),C=0;do C=e.length,(0,pe.visit)(g,{visitVariableDeclaration(t){if(t.node.declarations)for(let Q=0;Q{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.compile=void 0;var Vu=require("util"),op=_Q();function ap(I,A,e,g={}){let C=(0,op.degenerator)(A,g.names??[]),t=I.newContext();if(g.sandbox)for(let[r,a]of Object.entries(g.sandbox)){if(typeof a!="function")throw new Error(`Expected a "function" for sandbox property \`${r}\`, but got "${typeof a}"`);t.newFunction(r,(...i)=>{let B=a(...i.map(E=>Wu(t,E)));return t.runtime.executePendingJobs(),di(t,B)}).consume(i=>t.setProp(t.global,r,i))}let Q=t.evalCode(`${C};${e}`,g.filename),u=t.unwrapResult(Q),c=t.typeof(u);if(c!=="function")throw new Error(`Expected a "function" named \`${e}\` to be defined, but got "${c}"`);let h=async function(...r){let a,s;try{let i=t.callFunction(u,t.undefined,...r.map(n=>di(t,n)));a=t.unwrapResult(i);let B=t.resolvePromise(a);t.runtime.executePendingJobs();let E=await B;return s=t.unwrapResult(E),Wu(t,s)}catch(i){throw i&&typeof i=="object"&&"cause"in i&&i.cause?(typeof i.cause=="object"&&"stack"in i.cause&&"name"in i.cause&&"message"in i.cause&&typeof i.cause.stack=="string"&&typeof i.cause.name=="string"&&typeof i.cause.message=="string"&&(i.cause.stack=`${i.cause.name}: ${i.cause.message} +${i.cause.stack}`),i.cause):i}finally{a?.dispose(),s?.dispose()}};return Object.defineProperty(h,"toString",{value:()=>C,enumerable:!1}),h}Fi.compile=ap;function Wu(I,A){return I.dump(A)}function di(I,A){if(typeof A>"u")return I.undefined;if(A===null)return I.null;if(typeof A=="string")return I.newString(A);if(typeof A=="number")return I.newNumber(A);if(typeof A=="bigint")return I.newBigInt(A);if(typeof A=="boolean")return A?I.true:I.false;if(Vu.types.isPromise(A)){let e=I.newPromise();return e.settled.then(I.runtime.executePendingJobs),A.then(g=>{e.resolve(di(I,g))},g=>{e.reject(di(I,g))}),e.handle}else if(Vu.types.isNativeError(A))return I.newError(A);throw new Error(`Unsupported value: ${A}`)}});var _u=U(Zg=>{"use strict";var up=Zg&&Zg.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),Xu=Zg&&Zg.__exportStar||function(I,A){for(var e in I)e!=="default"&&!Object.prototype.hasOwnProperty.call(A,e)&&up(A,I,e)};Object.defineProperty(Zg,"__esModule",{value:!0});Xu(_Q(),Zg);Xu(Zu(),Zg)});var ju=U(jQ=>{"use strict";Object.defineProperty(jQ,"__esModule",{value:!0});function cp(){return!1}jQ.default=cp});var zu=U(zQ=>{"use strict";Object.defineProperty(zQ,"__esModule",{value:!0});function Dp(I,A){return I=String(I),A=String(A),I.substr(A.length*-1)===A}zQ.default=Dp});var $u=U($Q=>{"use strict";Object.defineProperty($Q,"__esModule",{value:!0});function hp(I){let A=String(I).match(/\./g),e=0;return A&&(e=A.length),e}$Q.default=hp});var vC=U(IC=>{"use strict";Object.defineProperty(IC,"__esModule",{value:!0});IC.isGMT=IC.dnsLookup=void 0;var lp=require("dns");function wp(I,A){return new Promise((e,g)=>{(0,lp.lookup)(I,A,(C,t)=>{C?g(C):e(t)})})}IC.dnsLookup=wp;function fp(I){return I==="GMT"}IC.isGMT=fp});var Ac=U(AE=>{"use strict";Object.defineProperty(AE,"__esModule",{value:!0});var yp=vC();async function dp(I){try{let e=await(0,yp.dnsLookup)(I,{family:4});if(typeof e=="string")return e}catch{}return null}AE.default=dp});var ec=U(TC=>{"use strict";(function(){var I,A,e,g,C,t,Q,u;u=function(c){var h,r,a,s;return h=(c&255<<24)>>>24,r=(c&255<<16)>>>16,a=(c&65280)>>>8,s=c&255,[h,r,a,s].join(".")},Q=function(c){var h,r,a,s,i,B;for(h=[],a=s=0;s<=3&&c.length!==0;a=++s){if(a>0){if(c[0]!==".")throw new Error("Invalid IP");c=c.substring(1)}B=A(c),i=B[0],r=B[1],c=c.substring(r),h.push(i)}if(c.length!==0)throw new Error("Invalid IP");switch(h.length){case 1:if(h[0]>4294967295)throw new Error("Invalid IP");return h[0]>>>0;case 2:if(h[0]>255||h[1]>16777215)throw new Error("Invalid IP");return(h[0]<<24|h[1])>>>0;case 3:if(h[0]>255||h[1]>255||h[2]>65535)throw new Error("Invalid IP");return(h[0]<<24|h[1]<<16|h[2])>>>0;case 4:if(h[0]>255||h[1]>255||h[2]>255||h[3]>255)throw new Error("Invalid IP");return(h[0]<<24|h[1]<<16|h[2]<<8|h[3])>>>0;default:throw new Error("Invalid IP")}},e=function(c){return c.charCodeAt(0)},g=e("0"),t=e("a"),C=e("A"),A=function(c){var h,r,a,s,i;for(s=0,h=10,r="9",a=0,c.length>1&&c[a]==="0"&&(c[a+1]==="x"||c[a+1]==="X"?(a+=2,h=16):"0"<=c[a+1]&&c[a+1]<="9"&&(a++,h=8,r="7")),i=a;a>>0;else if(h===16)if("a"<=c[a]&&c[a]<="f")s=s*h+(10+e(c[a])-t)>>>0;else if("A"<=c[a]&&c[a]<="F")s=s*h+(10+e(c[a])-C)>>>0;else break;else break;if(s>4294967295)throw new Error("too large");a++}if(a===i)throw new Error("empty octet");return[s,a]},I=function(){function c(h,r){var a,s,i,B;if(typeof h!="string")throw new Error("Missing `net' parameter");if(r||(B=h.split("/",2),h=B[0],r=B[1]),r||(r=32),typeof r=="string"&&r.indexOf(".")>-1){try{this.maskLong=Q(r)}catch(E){throw a=E,new Error("Invalid mask: "+r)}for(s=i=32;i>=0;s=--i)if(this.maskLong===4294967295<<32-s>>>0){this.bitmask=s;break}}else if(r||r===0)this.bitmask=parseInt(r,10),this.maskLong=0,this.bitmask>0&&(this.maskLong=4294967295<<32-this.bitmask>>>0);else throw new Error("Invalid mask: empty");try{this.netLong=(Q(h)&this.maskLong)>>>0}catch(E){throw a=E,new Error("Invalid net address: "+h)}if(!(this.bitmask<=32))throw new Error("Invalid mask for ip4: "+r);this.size=Math.pow(2,32-this.bitmask),this.base=u(this.netLong),this.mask=u(this.maskLong),this.hostmask=u(~this.maskLong),this.first=this.bitmask<=30?u(this.netLong+1):this.base,this.last=this.bitmask<=30?u(this.netLong+this.size-2):u(this.netLong+this.size-1),this.broadcast=this.bitmask<=30?u(this.netLong+this.size-1):void 0}return c.prototype.contains=function(h){return typeof h=="string"&&(h.indexOf("/")>0||h.split(".").length!==4)&&(h=new c(h)),h instanceof c?this.contains(h.base)&&this.contains(h.broadcast||h.last):(Q(h)&this.maskLong)>>>0===(this.netLong&this.maskLong)>>>0},c.prototype.next=function(h){return h==null&&(h=1),new c(u(this.netLong+this.size*h),this.mask)},c.prototype.forEach=function(h){var r,a,s;for(s=Q(this.first),a=Q(this.last),r=0;s<=a;)h(u(s),s,r),r++,s++},c.prototype.toString=function(){return this.base+"/"+this.bitmask},c}(),TC.ip2long=Q,TC.long2ip=u,TC.Netmask=I}).call(TC)});var gc=U(eE=>{"use strict";Object.defineProperty(eE,"__esModule",{value:!0});var Fp=ec(),pp=vC();async function Sp(I,A,e){try{let C=await(0,pp.dnsLookup)(I,{family:4});if(typeof C=="string")return new Fp.Netmask(A,e).contains(C)}catch{}return!1}eE.default=Sp});var Ic=U(gE=>{"use strict";Object.defineProperty(gE,"__esModule",{value:!0});function Rp(I){return!/\./.test(I)}gE.default=Rp});var Cc=U(IE=>{"use strict";Object.defineProperty(IE,"__esModule",{value:!0});var kp=vC();async function Mp(I){try{if(await(0,kp.dnsLookup)(I,{family:4}))return!0}catch{}return!1}IE.default=Mp});var tc=U(CE=>{"use strict";Object.defineProperty(CE,"__esModule",{value:!0});function Gp(I,A){let e=I.split("."),g=A.split("."),C=!0;for(let t=0;t{"use strict";var mp=Xg&&Xg.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(Xg,"__esModule",{value:!0});Xg.ip=void 0;var Np=mp(require("os"));Xg.ip={address(){let I=Np.default.networkInterfaces(),A=tE(),e=Object.values(I).map((g=[])=>{let C=g.filter(t=>!(tE(t.family)!==A||Xg.ip.isLoopback(t.address)));return C.length?C[0].address:void 0}).filter(Boolean);return e.length?e[0]:Xg.ip.loopback(A)},isLoopback(I){return/^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/.test(I)||/^fe80::1$/.test(I)||/^::1$/.test(I)||/^::$/.test(I)},loopback(I){if(I=tE(I),I!=="ipv4"&&I!=="ipv6")throw new Error("family must be ipv4 or ipv6");return I==="ipv4"?"127.0.0.1":"fe80::1"}};function tE(I){return I===4?"ipv4":I===6?"ipv6":I?I.toLowerCase():"ipv4"}});var Bc=U(PC=>{"use strict";var Up=PC&&PC.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(PC,"__esModule",{value:!0});var Lp=ic(),Jp=Up(require("net"));async function Kp(){return new Promise((I,A)=>{let e=Jp.default.connect({host:"8.8.8.8",port:53}),g=()=>{I(Lp.ip.address())};e.once("error",g),e.once("connect",()=>{e.removeListener("error",g);let C=e.address();e.destroy(),typeof C=="string"?I(C):C.address?I(C.address):A(new Error("Expected a `string`"))})})}PC.default=Kp});var Qc=U(iE=>{"use strict";Object.defineProperty(iE,"__esModule",{value:!0});function Hp(I,A){return bp(A).test(I)}iE.default=Hp;function bp(I){return I=String(I).replace(/\./g,"\\.").replace(/\?/g,".").replace(/\*/g,".*"),new RegExp(`^${I}$`)}});var sc=U(BE=>{"use strict";Object.defineProperty(BE,"__esModule",{value:!0});function Yp(){let I=Array.prototype.slice.call(arguments),A=I.pop(),e=A==="GMT",g=new Date;e||I.push(A);let C=!1,t=I.length,Q=I.map(u=>parseInt(u,10));if(t===1)C=pi(e,g)===Q[0];else if(t===2){let u=pi(e,g);C=Q[0]<=u&&u{"use strict";Object.defineProperty(rE,"__esModule",{value:!0});var nc=vC(),EE=["SUN","MON","TUE","WED","THU","FRI","SAT"];function vp(I,A,e){let g=!1,C=-1,t=-1,Q=!1;(0,nc.isGMT)(e)?g=!0:(0,nc.isGMT)(A)&&(g=!0,Q=!0),C=EE.indexOf(I),!Q&&Pp(A)&&(t=EE.indexOf(A));let u=Tp(g),c;return t<0?c=u===C:C<=t?c=QE(C,u,t):c=QE(C,u,6)||QE(0,u,t),c}rE.default=vp;function Tp(I){return I?new Date().getUTCDay():new Date().getDay()}function QE(I,A,e){return I<=A&&A<=e}function Pp(I){return I?EE.includes(I):!1}});var ac=U(Ng=>{"use strict";var Xe=Ng&&Ng.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(Ng,"__esModule",{value:!0});Ng.sandbox=Ng.createPacResolver=void 0;var qp=_u(),Op=Xe(ju()),Vp=Xe(zu()),Wp=Xe($u()),Zp=Xe(Ac()),Xp=Xe(gc()),_p=Xe(Ic()),jp=Xe(Cc()),zp=Xe(tc()),$p=Xe(Bc()),AS=Xe(Qc()),eS=Xe(sc()),gS=Xe(oc());function IS(I,A,e={}){let g=Buffer.isBuffer(A)?A.toString("utf8"):A,C={...Ng.sandbox,...e.sandbox},Q={filename:"proxy.pac",names:Object.keys(C).filter(h=>CS(C[h])),...e,sandbox:C},u=(0,qp.compile)(I,g,"FindProxyForURL",Q);function c(h,r){let a=typeof h=="string"?new URL(h):h,s=r||a.hostname;if(!s)throw new TypeError("Could not determine `host`");return u(a.href,s)}return Object.defineProperty(c,"toString",{value:()=>u.toString(),enumerable:!1}),c}Ng.createPacResolver=IS;Ng.sandbox=Object.freeze({alert:(I="")=>console.log("%s",I),dateRange:Op.default,dnsDomainIs:Vp.default,dnsDomainLevels:Wp.default,dnsResolve:Zp.default,isInNet:Xp.default,isPlainHostName:_p.default,isResolvable:jp.default,localHostOrDomainIs:zp.default,myIpAddress:$p.default,shExpMatch:AS.default,timeRange:eS.default,weekdayRange:gS.default});function CS(I){return typeof I!="function"?!1:I.constructor.name==="AsyncFunction"||String(I).indexOf("__awaiter(")!==-1?!0:!!I.async}});var uc=U(tC=>{"use strict";Object.defineProperty(tC,"__esModule",{value:!0});tC.unwrapJavascript=tC.unwrapTypescript=void 0;function tS(I){return I.default}function iS(I){return I.default??I}tC.unwrapTypescript=iS;tC.unwrapJavascript=tS});var iC=U(DI=>{"use strict";Object.defineProperty(DI,"__esModule",{value:!0});DI.debugLog=DI.QTS_DEBUG=void 0;DI.QTS_DEBUG=!!(typeof process=="object"&&process.env.QTS_DEBUG);DI.debugLog=DI.QTS_DEBUG?console.log.bind(console):()=>{}});var _g=U(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.QuickJSMemoryLeakDetected=ue.QuickJSAsyncifySuspended=ue.QuickJSAsyncifyError=ue.QuickJSNotImplemented=ue.QuickJSUseAfterFree=ue.QuickJSWrongOwner=ue.QuickJSUnwrapError=void 0;var sE=class extends Error{constructor(A,e){super(String(A)),this.cause=A,this.context=e,this.name="QuickJSUnwrapError"}};ue.QuickJSUnwrapError=sE;var nE=class extends Error{constructor(){super(...arguments),this.name="QuickJSWrongOwner"}};ue.QuickJSWrongOwner=nE;var oE=class extends Error{constructor(){super(...arguments),this.name="QuickJSUseAfterFree"}};ue.QuickJSUseAfterFree=oE;var aE=class extends Error{constructor(){super(...arguments),this.name="QuickJSNotImplemented"}};ue.QuickJSNotImplemented=aE;var uE=class extends Error{constructor(){super(...arguments),this.name="QuickJSAsyncifyError"}};ue.QuickJSAsyncifyError=uE;var cE=class extends Error{constructor(){super(...arguments),this.name="QuickJSAsyncifySuspended"}};ue.QuickJSAsyncifySuspended=cE;var DE=class extends Error{constructor(){super(...arguments),this.name="QuickJSMemoryLeakDetected"}};ue.QuickJSMemoryLeakDetected=DE});var lE=U(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});jg.awaitEachYieldedPromise=jg.maybeAsync=jg.maybeAsyncFn=void 0;function*cc(I){return yield I}function BS(I){return cc(Si(I))}var hE=cc;hE.of=BS;function QS(I,A){return(...e)=>{let g=A.call(I,hE,...e);return Si(g)}}jg.maybeAsyncFn=QS;function ES(I,A){let e=A.call(I,hE);return Si(e)}jg.maybeAsync=ES;function Si(I){function A(e){return e.done?e.value:e.value instanceof Promise?e.value.then(g=>A(I.next(g)),g=>A(I.throw(g))):A(I.next(e.value))}return A(I.next())}jg.awaitEachYieldedPromise=Si});var zg=U(wg=>{"use strict";Object.defineProperty(wg,"__esModule",{value:!0});wg.Scope=wg.WeakLifetime=wg.StaticLifetime=wg.Lifetime=void 0;var rS=lE(),sS=iC(),Dc=_g(),BC=class I{constructor(A,e,g,C){this._value=A,this.copier=e,this.disposer=g,this._owner=C,this._alive=!0,this._constructorStack=sS.QTS_DEBUG?new Error("Lifetime constructed").stack:void 0}get alive(){return this._alive}get value(){return this.assertAlive(),this._value}get owner(){return this._owner}get dupable(){return!!this.copier}dup(){if(this.assertAlive(),!this.copier)throw new Error("Non-dupable lifetime");return new I(this.copier(this._value),this.copier,this.disposer,this._owner)}consume(A){this.assertAlive();let e=A(this);return this.dispose(),e}dispose(){this.assertAlive(),this.disposer&&this.disposer(this._value),this._alive=!1}assertAlive(){if(!this.alive)throw this._constructorStack?new Dc.QuickJSUseAfterFree(`Lifetime not alive +${this._constructorStack} +Lifetime used`):new Dc.QuickJSUseAfterFree("Lifetime not alive")}};wg.Lifetime=BC;var fE=class extends BC{constructor(A,e){super(A,void 0,void 0,e)}get dupable(){return!0}dup(){return this}dispose(){}};wg.StaticLifetime=fE;var yE=class extends BC{constructor(A,e,g,C){super(A,e,g,C)}dispose(){this._alive=!1}};wg.WeakLifetime=yE;function wE(I,A){let e;try{I.dispose()}catch(g){e=g}if(A&&e)throw Object.assign(A,{message:`${A.message} + Then, failed to dispose scope: ${e.message}`,disposeError:e}),A;if(A||e)throw A||e}var dE=class I{constructor(){this._disposables=new BC(new Set)}static withScope(A){let e=new I,g;try{return A(e)}catch(C){throw g=C,C}finally{wE(e,g)}}static withScopeMaybeAsync(A,e){return(0,rS.maybeAsync)(void 0,function*(g){let C=new I,t;try{return yield*g.of(e.call(A,g,C))}catch(Q){throw t=Q,Q}finally{wE(C,t)}})}static async withScopeAsync(A){let e=new I,g;try{return await A(e)}catch(C){throw g=C,C}finally{wE(e,g)}}manage(A){return this._disposables.value.add(A),A}get alive(){return this._disposables.alive}dispose(){let A=Array.from(this._disposables.value.values()).reverse();for(let e of A)e.alive&&e.dispose();this._disposables.dispose()}};wg.Scope=dE});var pE=U(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.QuickJSDeferredPromise=void 0;var FE=class{constructor(A){this.resolve=e=>{this.resolveHandle.alive&&(this.context.unwrapResult(this.context.callFunction(this.resolveHandle,this.context.undefined,e||this.context.undefined)).dispose(),this.disposeResolvers(),this.onSettled())},this.reject=e=>{this.rejectHandle.alive&&(this.context.unwrapResult(this.context.callFunction(this.rejectHandle,this.context.undefined,e||this.context.undefined)).dispose(),this.disposeResolvers(),this.onSettled())},this.dispose=()=>{this.handle.alive&&this.handle.dispose(),this.disposeResolvers()},this.context=A.context,this.owner=A.context.runtime,this.handle=A.promiseHandle,this.settled=new Promise(e=>{this.onSettled=e}),this.resolveHandle=A.resolveHandle,this.rejectHandle=A.rejectHandle}get alive(){return this.handle.alive||this.resolveHandle.alive||this.rejectHandle.alive}disposeResolvers(){this.resolveHandle.alive&&this.resolveHandle.dispose(),this.rejectHandle.alive&&this.rejectHandle.dispose()}};Ri.QuickJSDeferredPromise=FE});var kE=U(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.ModuleMemory=void 0;var SE=zg(),RE=class{constructor(A){this.module=A}toPointerArray(A){let e=new Int32Array(A.map(Q=>Q.value)),g=e.length*e.BYTES_PER_ELEMENT,C=this.module._malloc(g);var t=new Uint8Array(this.module.HEAPU8.buffer,C,g);return t.set(new Uint8Array(e.buffer)),new SE.Lifetime(C,void 0,Q=>this.module._free(Q))}newMutablePointerArray(A){let e=new Int32Array(new Array(A).fill(0)),g=e.length*e.BYTES_PER_ELEMENT,C=this.module._malloc(g),t=new Int32Array(this.module.HEAPU8.buffer,C,A);return t.set(e),new SE.Lifetime({typedArray:t,ptr:C},void 0,Q=>this.module._free(Q.ptr))}newHeapCharPointer(A){let e=this.module.lengthBytesUTF8(A)+1,g=this.module._malloc(e);return this.module.stringToUTF8(A,g,e),new SE.Lifetime(g,void 0,C=>this.module._free(C))}consumeHeapCharPointer(A){let e=this.module.UTF8ToString(A);return this.module._free(A),e}};ki.ModuleMemory=RE});var hc=U(QC=>{"use strict";Object.defineProperty(QC,"__esModule",{value:!0});QC.EvalFlags=QC.assertSync=void 0;function nS(I){return function(...e){let g=I(...e);if(g&&typeof g=="object"&&g instanceof Promise)throw new Error("Function unexpectedly returned a Promise");return g}}QC.assertSync=nS;QC.EvalFlags={JS_EVAL_TYPE_GLOBAL:0,JS_EVAL_TYPE_MODULE:1,JS_EVAL_TYPE_DIRECT:2,JS_EVAL_TYPE_INDIRECT:3,JS_EVAL_TYPE_MASK:3,JS_EVAL_FLAG_STRICT:8,JS_EVAL_FLAG_STRIP:16,JS_EVAL_FLAG_COMPILE_ONLY:32,JS_EVAL_FLAG_BACKTRACE_BARRIER:64}});var rC=U($g=>{"use strict";Object.defineProperty($g,"__esModule",{value:!0});$g.concat=$g.evalOptionsToFlags=$g.DefaultIntrinsics=void 0;var EC=hc(),CG=Symbol("Unstable");$g.DefaultIntrinsics=Symbol("DefaultIntrinsics");function oS(I){if(typeof I=="number")return I;if(I===void 0)return 0;let{type:A,strict:e,strip:g,compileOnly:C,backtraceBarrier:t}=I,Q=0;return A==="global"&&(Q|=EC.EvalFlags.JS_EVAL_TYPE_GLOBAL),A==="module"&&(Q|=EC.EvalFlags.JS_EVAL_TYPE_MODULE),e&&(Q|=EC.EvalFlags.JS_EVAL_FLAG_STRICT),g&&(Q|=EC.EvalFlags.JS_EVAL_FLAG_STRIP),C&&(Q|=EC.EvalFlags.JS_EVAL_FLAG_COMPILE_ONLY),t&&(Q|=EC.EvalFlags.JS_EVAL_FLAG_BACKTRACE_BARRIER),Q}$g.evalOptionsToFlags=oS;function aS(...I){let A=[];for(let e of I)e!==void 0&&(A=A.concat(e));return A}$g.concat=aS});var mE=U(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.QuickJSContext=void 0;var uS=iC(),cS=pE(),lc=_g(),_A=zg(),DS=kE(),hS=rC(),ME=class extends DS.ModuleMemory{constructor(A){super(A.module),this.scope=new _A.Scope,this.copyJSValue=e=>this.ffi.QTS_DupValuePointer(this.ctx.value,e),this.freeJSValue=e=>{this.ffi.QTS_FreeValuePointer(this.ctx.value,e)},A.ownedLifetimes?.forEach(e=>this.scope.manage(e)),this.owner=A.owner,this.module=A.module,this.ffi=A.ffi,this.rt=A.rt,this.ctx=this.scope.manage(A.ctx)}get alive(){return this.scope.alive}dispose(){return this.scope.dispose()}manage(A){return this.scope.manage(A)}consumeJSCharPointer(A){let e=this.module.UTF8ToString(A);return this.ffi.QTS_FreeCString(this.ctx.value,A),e}heapValueHandle(A){return new _A.Lifetime(A,this.copyJSValue,this.freeJSValue,this.owner)}},GE=class{constructor(A){this._undefined=void 0,this._null=void 0,this._false=void 0,this._true=void 0,this._global=void 0,this._BigInt=void 0,this.fnNextId=-32768,this.fnMaps=new Map,this.cToHostCallbacks={callFunction:(e,g,C,t,Q)=>{if(e!==this.ctx.value)throw new Error("QuickJSContext instance received C -> JS call with mismatched ctx");let u=this.getFunction(Q);if(!u)throw new Error(`QuickJSContext had no callback with id ${Q}`);return _A.Scope.withScopeMaybeAsync(this,function*(c,h){let r=h.manage(new _A.WeakLifetime(g,this.memory.copyJSValue,this.memory.freeJSValue,this.runtime)),a=new Array(C);for(let s=0;sthis.ffi.QTS_Throw(this.ctx.value,i.value))}})}},this.runtime=A.runtime,this.module=A.module,this.ffi=A.ffi,this.rt=A.rt,this.ctx=A.ctx,this.memory=new ME({...A,owner:this.runtime}),A.callbacks.setContextCallbacks(this.ctx.value,this.cToHostCallbacks),this.dump=this.dump.bind(this),this.getString=this.getString.bind(this),this.getNumber=this.getNumber.bind(this),this.resolvePromise=this.resolvePromise.bind(this)}get alive(){return this.memory.alive}dispose(){this.memory.dispose()}get undefined(){if(this._undefined)return this._undefined;let A=this.ffi.QTS_GetUndefined();return this._undefined=new _A.StaticLifetime(A)}get null(){if(this._null)return this._null;let A=this.ffi.QTS_GetNull();return this._null=new _A.StaticLifetime(A)}get true(){if(this._true)return this._true;let A=this.ffi.QTS_GetTrue();return this._true=new _A.StaticLifetime(A)}get false(){if(this._false)return this._false;let A=this.ffi.QTS_GetFalse();return this._false=new _A.StaticLifetime(A)}get global(){if(this._global)return this._global;let A=this.ffi.QTS_GetGlobalObject(this.ctx.value);return this.memory.manage(this.memory.heapValueHandle(A)),this._global=new _A.StaticLifetime(A,this.runtime),this._global}newNumber(A){return this.memory.heapValueHandle(this.ffi.QTS_NewFloat64(this.ctx.value,A))}newString(A){let e=this.memory.newHeapCharPointer(A).consume(g=>this.ffi.QTS_NewString(this.ctx.value,g.value));return this.memory.heapValueHandle(e)}newUniqueSymbol(A){let e=(typeof A=="symbol"?A.description:A)??"",g=this.memory.newHeapCharPointer(e).consume(C=>this.ffi.QTS_NewSymbol(this.ctx.value,C.value,0));return this.memory.heapValueHandle(g)}newSymbolFor(A){let e=(typeof A=="symbol"?A.description:A)??"",g=this.memory.newHeapCharPointer(e).consume(C=>this.ffi.QTS_NewSymbol(this.ctx.value,C.value,1));return this.memory.heapValueHandle(g)}newBigInt(A){if(!this._BigInt){let C=this.getProp(this.global,"BigInt");this.memory.manage(C),this._BigInt=new _A.StaticLifetime(C.value,this.runtime)}let e=this._BigInt,g=String(A);return this.newString(g).consume(C=>this.unwrapResult(this.callFunction(e,this.undefined,C)))}newObject(A){A&&this.runtime.assertOwned(A);let e=A?this.ffi.QTS_NewObjectProto(this.ctx.value,A.value):this.ffi.QTS_NewObject(this.ctx.value);return this.memory.heapValueHandle(e)}newArray(){let A=this.ffi.QTS_NewArray(this.ctx.value);return this.memory.heapValueHandle(A)}newPromise(A){let e=_A.Scope.withScope(g=>{let C=g.manage(this.memory.newMutablePointerArray(2)),t=this.ffi.QTS_NewPromiseCapability(this.ctx.value,C.value.ptr),Q=this.memory.heapValueHandle(t),[u,c]=Array.from(C.value.typedArray).map(h=>this.memory.heapValueHandle(h));return new cS.QuickJSDeferredPromise({context:this,promiseHandle:Q,resolveHandle:u,rejectHandle:c})});return A&&typeof A=="function"&&(A=new Promise(A)),A&&Promise.resolve(A).then(e.resolve,g=>g instanceof _A.Lifetime?e.reject(g):this.newError(g).consume(e.reject)),e}newFunction(A,e){let g=++this.fnNextId;return this.setFunction(g,e),this.memory.heapValueHandle(this.ffi.QTS_NewFunction(this.ctx.value,g,A))}newError(A){let e=this.memory.heapValueHandle(this.ffi.QTS_NewError(this.ctx.value));return A&&typeof A=="object"?(A.name!==void 0&&this.newString(A.name).consume(g=>this.setProp(e,"name",g)),A.message!==void 0&&this.newString(A.message).consume(g=>this.setProp(e,"message",g))):typeof A=="string"?this.newString(A).consume(g=>this.setProp(e,"message",g)):A!==void 0&&this.newString(String(A)).consume(g=>this.setProp(e,"message",g)),e}typeof(A){return this.runtime.assertOwned(A),this.memory.consumeHeapCharPointer(this.ffi.QTS_Typeof(this.ctx.value,A.value))}getNumber(A){return this.runtime.assertOwned(A),this.ffi.QTS_GetFloat64(this.ctx.value,A.value)}getString(A){return this.runtime.assertOwned(A),this.memory.consumeJSCharPointer(this.ffi.QTS_GetString(this.ctx.value,A.value))}getSymbol(A){this.runtime.assertOwned(A);let e=this.memory.consumeJSCharPointer(this.ffi.QTS_GetSymbolDescriptionOrKey(this.ctx.value,A.value));return this.ffi.QTS_IsGlobalSymbol(this.ctx.value,A.value)?Symbol.for(e):Symbol(e)}getBigInt(A){this.runtime.assertOwned(A);let e=this.getString(A);return BigInt(e)}resolvePromise(A){this.runtime.assertOwned(A);let e=_A.Scope.withScope(g=>{let C=g.manage(this.getProp(this.global,"Promise")),t=g.manage(this.getProp(C,"resolve"));return this.callFunction(t,C,A)});return e.error?Promise.resolve(e):new Promise(g=>{_A.Scope.withScope(C=>{let t=C.manage(this.newFunction("resolve",h=>{g({value:h&&h.dup()})})),Q=C.manage(this.newFunction("reject",h=>{g({error:h&&h.dup()})})),u=C.manage(e.value),c=C.manage(this.getProp(u,"then"));this.unwrapResult(this.callFunction(c,u,t,Q)).dispose()})})}getProp(A,e){this.runtime.assertOwned(A);let g=this.borrowPropertyKey(e).consume(t=>this.ffi.QTS_GetProp(this.ctx.value,A.value,t.value));return this.memory.heapValueHandle(g)}setProp(A,e,g){this.runtime.assertOwned(A),this.borrowPropertyKey(e).consume(C=>this.ffi.QTS_SetProp(this.ctx.value,A.value,C.value,g.value))}defineProp(A,e,g){this.runtime.assertOwned(A),_A.Scope.withScope(C=>{let t=C.manage(this.borrowPropertyKey(e)),Q=g.value||this.undefined,u=!!g.configurable,c=!!g.enumerable,h=!!g.value,r=g.get?C.manage(this.newFunction(g.get.name,g.get)):this.undefined,a=g.set?C.manage(this.newFunction(g.set.name,g.set)):this.undefined;this.ffi.QTS_DefineProp(this.ctx.value,A.value,t.value,Q.value,r.value,a.value,u,c,h)})}callFunction(A,e,...g){this.runtime.assertOwned(A);let C=this.memory.toPointerArray(g).consume(Q=>this.ffi.QTS_Call(this.ctx.value,A.value,e.value,g.length,Q.value)),t=this.ffi.QTS_ResolveException(this.ctx.value,C);return t?(this.ffi.QTS_FreeValuePointer(this.ctx.value,C),{error:this.memory.heapValueHandle(t)}):{value:this.memory.heapValueHandle(C)}}evalCode(A,e="eval.js",g){let C=g===void 0?1:0,t=(0,hS.evalOptionsToFlags)(g),Q=this.memory.newHeapCharPointer(A).consume(c=>this.ffi.QTS_Eval(this.ctx.value,c.value,e,C,t)),u=this.ffi.QTS_ResolveException(this.ctx.value,Q);return u?(this.ffi.QTS_FreeValuePointer(this.ctx.value,Q),{error:this.memory.heapValueHandle(u)}):{value:this.memory.heapValueHandle(Q)}}throw(A){return this.errorToHandle(A).consume(e=>this.ffi.QTS_Throw(this.ctx.value,e.value))}borrowPropertyKey(A){return typeof A=="number"?this.newNumber(A):typeof A=="string"?this.newString(A):new _A.StaticLifetime(A.value,this.runtime)}getMemory(A){if(A===this.rt.value)return this.memory;throw new Error("Private API. Cannot get memory from a different runtime")}dump(A){this.runtime.assertOwned(A);let e=this.typeof(A);if(e==="string")return this.getString(A);if(e==="number")return this.getNumber(A);if(e==="bigint")return this.getBigInt(A);if(e==="undefined")return;if(e==="symbol")return this.getSymbol(A);let g=this.memory.consumeJSCharPointer(this.ffi.QTS_Dump(this.ctx.value,A.value));try{return JSON.parse(g)}catch{return g}}unwrapResult(A){if(A.error){let e="context"in A.error?A.error.context:this,g=A.error.consume(C=>this.dump(C));if(g&&typeof g=="object"&&typeof g.message=="string"){let{message:C,name:t,stack:Q}=g,u=new lc.QuickJSUnwrapError(""),c=u.stack;throw typeof t=="string"&&(u.name=g.name),typeof Q=="string"&&(u.stack=`${t}: ${C} +${g.stack}Host: ${c}`),Object.assign(u,{cause:g,context:e,message:C}),u}throw new lc.QuickJSUnwrapError(g,e)}return A.value}getFunction(A){let e=A>>8,g=this.fnMaps.get(e);if(g)return g.get(A)}setFunction(A,e){let g=A>>8,C=this.fnMaps.get(g);return C||(C=new Map,this.fnMaps.set(g,C)),C.set(A,e)}errorToHandle(A){return A instanceof _A.Lifetime?A:this.newError(A)}};Mi.QuickJSContext=GE});var UE=U(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.QuickJSRuntime=void 0;var wc=lE(),lS=mE(),Gi=iC(),wS=_g(),fc=zg(),fS=kE(),yS=rC(),NE=class{constructor(A){this.scope=new fc.Scope,this.contextMap=new Map,this.cToHostCallbacks={shouldInterrupt:e=>{if(e!==this.rt.value)throw new Error("QuickJSContext instance received C -> JS interrupt with mismatched rt");let g=this.interruptHandler;if(!g)throw new Error("QuickJSContext had no interrupt handler");return g(this)?1:0},loadModuleSource:(0,wc.maybeAsyncFn)(this,function*(e,g,C,t){let Q=this.moduleLoader;if(!Q)throw new Error("Runtime has no module loader");if(g!==this.rt.value)throw new Error("Runtime pointer mismatch");let u=this.contextMap.get(C)??this.newContext({contextPointer:C});try{let c=yield*e(Q(t,u));if(typeof c=="object"&&"error"in c&&c.error)throw(0,Gi.debugLog)("cToHostLoadModule: loader returned error",c.error),c.error;let h=typeof c=="string"?c:"value"in c?c.value:c;return this.memory.newHeapCharPointer(h).value}catch(c){return(0,Gi.debugLog)("cToHostLoadModule: caught error",c),u.throw(c),0}}),normalizeModule:(0,wc.maybeAsyncFn)(this,function*(e,g,C,t,Q){let u=this.moduleNormalizer;if(!u)throw new Error("Runtime has no module normalizer");if(g!==this.rt.value)throw new Error("Runtime pointer mismatch");let c=this.contextMap.get(C)??this.newContext({contextPointer:C});try{let h=yield*e(u(t,Q,c));if(typeof h=="object"&&"error"in h&&h.error)throw(0,Gi.debugLog)("cToHostNormalizeModule: normalizer returned error",h.error),h.error;let r=typeof h=="string"?h:h.value;return c.getMemory(this.rt.value).newHeapCharPointer(r).value}catch(h){return(0,Gi.debugLog)("normalizeModule: caught error",h),c.throw(h),0}})},A.ownedLifetimes?.forEach(e=>this.scope.manage(e)),this.module=A.module,this.memory=new fS.ModuleMemory(this.module),this.ffi=A.ffi,this.rt=A.rt,this.callbacks=A.callbacks,this.scope.manage(this.rt),this.callbacks.setRuntimeCallbacks(this.rt.value,this.cToHostCallbacks),this.executePendingJobs=this.executePendingJobs.bind(this)}get alive(){return this.scope.alive}dispose(){return this.scope.dispose()}newContext(A={}){if(A.intrinsics&&A.intrinsics!==yS.DefaultIntrinsics)throw new Error("TODO: Custom intrinsics are not supported yet");let e=new fc.Lifetime(A.contextPointer||this.ffi.QTS_NewContext(this.rt.value),void 0,C=>{this.contextMap.delete(C),this.callbacks.deleteContext(C),this.ffi.QTS_FreeContext(C)}),g=new lS.QuickJSContext({module:this.module,ctx:e,ffi:this.ffi,rt:this.rt,ownedLifetimes:A.ownedLifetimes,runtime:this,callbacks:this.callbacks});return this.contextMap.set(e.value,g),g}setModuleLoader(A,e){this.moduleLoader=A,this.moduleNormalizer=e,this.ffi.QTS_RuntimeEnableModuleLoader(this.rt.value,this.moduleNormalizer?1:0)}removeModuleLoader(){this.moduleLoader=void 0,this.ffi.QTS_RuntimeDisableModuleLoader(this.rt.value)}hasPendingJob(){return!!this.ffi.QTS_IsJobPending(this.rt.value)}setInterruptHandler(A){let e=this.interruptHandler;this.interruptHandler=A,e||this.ffi.QTS_RuntimeEnableInterruptHandler(this.rt.value)}removeInterruptHandler(){this.interruptHandler&&(this.ffi.QTS_RuntimeDisableInterruptHandler(this.rt.value),this.interruptHandler=void 0)}executePendingJobs(A=-1){let e=this.memory.newMutablePointerArray(1),g=this.ffi.QTS_ExecutePendingJob(this.rt.value,A??-1,e.value.ptr),C=e.value.typedArray[0];if(e.dispose(),C===0)return this.ffi.QTS_FreeValuePointerRuntime(this.rt.value,g),{value:0};let t=this.contextMap.get(C)??this.newContext({contextPointer:C}),Q=t.getMemory(this.rt.value).heapValueHandle(g);if(t.typeof(Q)==="number"){let c=t.getNumber(Q);return Q.dispose(),{value:c}}else return{error:Object.assign(Q,{context:t})}}setMemoryLimit(A){if(A<0&&A!==-1)throw new Error("Cannot set memory limit to negative number. To unset, pass -1");this.ffi.QTS_RuntimeSetMemoryLimit(this.rt.value,A)}computeMemoryUsage(){let A=this.getSystemContext().getMemory(this.rt.value);return A.heapValueHandle(this.ffi.QTS_RuntimeComputeMemoryUsage(this.rt.value,A.ctx.value))}dumpMemoryUsage(){return this.memory.consumeHeapCharPointer(this.ffi.QTS_RuntimeDumpMemoryUsage(this.rt.value))}setMaxStackSize(A){if(A<0)throw new Error("Cannot set memory limit to negative number. To unset, pass 0.");this.ffi.QTS_RuntimeSetMaxStackSize(this.rt.value,A)}assertOwned(A){if(A.owner&&A.owner.rt!==this.rt)throw new wS.QuickJSWrongOwner(`Handle is not owned by this runtime: ${A.owner.rt.value} != ${this.rt.value}`)}getSystemContext(){return this.context||(this.context=this.scope.manage(this.newContext())),this.context}};mi.QuickJSRuntime=NE});var KE=U(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.QuickJSWASMModule=fg.applyModuleEvalRuntimeOptions=fg.applyBaseRuntimeOptions=fg.QuickJSModuleCallbacks=void 0;var qC=iC(),yc=_g(),dc=zg(),dS=UE(),FS=rC(),LE=class{constructor(A){this.callFunction=A.callFunction,this.shouldInterrupt=A.shouldInterrupt,this.loadModuleSource=A.loadModuleSource,this.normalizeModule=A.normalizeModule}},Ni=class{constructor(A){this.contextCallbacks=new Map,this.runtimeCallbacks=new Map,this.suspendedCount=0,this.cToHostCallbacks=new LE({callFunction:(e,g,C,t,Q,u)=>this.handleAsyncify(e,()=>{try{let c=this.contextCallbacks.get(g);if(!c)throw new Error(`QuickJSContext(ctx = ${g}) not found for C function call "${u}"`);return c.callFunction(g,C,t,Q,u)}catch(c){return console.error("[C to host error: returning null]",c),0}}),shouldInterrupt:(e,g)=>this.handleAsyncify(e,()=>{try{let C=this.runtimeCallbacks.get(g);if(!C)throw new Error(`QuickJSRuntime(rt = ${g}) not found for C interrupt`);return C.shouldInterrupt(g)}catch(C){return console.error("[C to host interrupt: returning error]",C),1}}),loadModuleSource:(e,g,C,t)=>this.handleAsyncify(e,()=>{try{let Q=this.runtimeCallbacks.get(g);if(!Q)throw new Error(`QuickJSRuntime(rt = ${g}) not found for C module loader`);let u=Q.loadModuleSource;if(!u)throw new Error(`QuickJSRuntime(rt = ${g}) does not support module loading`);return u(g,C,t)}catch(Q){return console.error("[C to host module loader error: returning null]",Q),0}}),normalizeModule:(e,g,C,t,Q)=>this.handleAsyncify(e,()=>{try{let u=this.runtimeCallbacks.get(g);if(!u)throw new Error(`QuickJSRuntime(rt = ${g}) not found for C module loader`);let c=u.normalizeModule;if(!c)throw new Error(`QuickJSRuntime(rt = ${g}) does not support module loading`);return c(g,C,t,Q)}catch(u){return console.error("[C to host module loader error: returning null]",u),0}})}),this.module=A,this.module.callbacks=this.cToHostCallbacks}setRuntimeCallbacks(A,e){this.runtimeCallbacks.set(A,e)}deleteRuntime(A){this.runtimeCallbacks.delete(A)}setContextCallbacks(A,e){this.contextCallbacks.set(A,e)}deleteContext(A){this.contextCallbacks.delete(A)}handleAsyncify(A,e){if(A)return A.handleSleep(C=>{try{let t=e();if(!(t instanceof Promise)){(0,qC.debugLog)("asyncify.handleSleep: not suspending:",t),C(t);return}if(this.suspended)throw new yc.QuickJSAsyncifyError(`Already suspended at: ${this.suspended.stack} +Attempted to suspend at:`);this.suspended=new yc.QuickJSAsyncifySuspended(`(${this.suspendedCount++})`),(0,qC.debugLog)("asyncify.handleSleep: suspending:",this.suspended),t.then(Q=>{this.suspended=void 0,(0,qC.debugLog)("asyncify.handleSleep: resolved:",Q),C(Q)},Q=>{(0,qC.debugLog)("asyncify.handleSleep: rejected:",Q),console.error("QuickJS: cannot handle error in suspended function",Q),this.suspended=void 0})}catch(t){throw(0,qC.debugLog)("asyncify.handleSleep: error:",t),this.suspended=void 0,t}});let g=e();if(g instanceof Promise)throw new Error("Promise return value not supported in non-asyncify context.");return g}};fg.QuickJSModuleCallbacks=Ni;function Fc(I,A){A.interruptHandler&&I.setInterruptHandler(A.interruptHandler),A.maxStackSizeBytes!==void 0&&I.setMaxStackSize(A.maxStackSizeBytes),A.memoryLimitBytes!==void 0&&I.setMemoryLimit(A.memoryLimitBytes)}fg.applyBaseRuntimeOptions=Fc;function pc(I,A){A.moduleLoader&&I.setModuleLoader(A.moduleLoader),A.shouldInterrupt&&I.setInterruptHandler(A.shouldInterrupt),A.memoryLimitBytes!==void 0&&I.setMemoryLimit(A.memoryLimitBytes),A.maxStackSizeBytes!==void 0&&I.setMaxStackSize(A.maxStackSizeBytes)}fg.applyModuleEvalRuntimeOptions=pc;var JE=class{constructor(A,e){this.module=A,this.ffi=e,this.callbacks=new Ni(A)}newRuntime(A={}){let e=new dc.Lifetime(this.ffi.QTS_NewRuntime(),void 0,C=>{this.callbacks.deleteRuntime(C),this.ffi.QTS_FreeRuntime(C)}),g=new dS.QuickJSRuntime({module:this.module,callbacks:this.callbacks,ffi:this.ffi,rt:e});return Fc(g,A),A.moduleLoader&&g.setModuleLoader(A.moduleLoader),g}newContext(A={}){let e=this.newRuntime(),g=e.newContext({...A,ownedLifetimes:(0,FS.concat)(e,A.ownedLifetimes)});return e.context=g,g}evalCode(A,e={}){return dc.Scope.withScope(g=>{let C=g.manage(this.newContext());pc(C.runtime,e);let t=C.evalCode(A,"eval.js");if(e.memoryLimitBytes!==void 0&&C.runtime.setMemoryLimit(-1),t.error)throw C.dump(g.manage(t.error));return C.dump(g.manage(t.value))})}getFFI(){return this.ffi}};fg.QuickJSWASMModule=JE});var Sc=U(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.QuickJSAsyncContext=void 0;var pS=mE(),SS=iC(),RS=rC(),HE=class extends pS.QuickJSContext{async evalCodeAsync(A,e="eval.js",g){let C=g===void 0?1:0,t=(0,RS.evalOptionsToFlags)(g),Q=0;try{Q=await this.memory.newHeapCharPointer(A).consume(c=>this.ffi.QTS_Eval_MaybeAsync(this.ctx.value,c.value,e,C,t))}catch(c){throw(0,SS.debugLog)("QTS_Eval_MaybeAsync threw",c),c}let u=this.ffi.QTS_ResolveException(this.ctx.value,Q);return u?(this.ffi.QTS_FreeValuePointer(this.ctx.value,Q),{error:this.memory.heapValueHandle(u)}):{value:this.memory.heapValueHandle(Q)}}newAsyncifiedFunction(A,e){return this.newFunction(A,e)}};Ui.QuickJSAsyncContext=HE});var Rc=U(Li=>{"use strict";Object.defineProperty(Li,"__esModule",{value:!0});Li.QuickJSAsyncRuntime=void 0;var kS=YE(),MS=Sc(),GS=UE(),mS=rC(),bE=class extends GS.QuickJSRuntime{constructor(A){super(A)}newContext(A={}){if(A.intrinsics&&A.intrinsics!==mS.DefaultIntrinsics)throw new Error("TODO: Custom intrinsics are not supported yet");let e=new kS.Lifetime(this.ffi.QTS_NewContext(this.rt.value),void 0,C=>{this.contextMap.delete(C),this.callbacks.deleteContext(C),this.ffi.QTS_FreeContext(C)}),g=new MS.QuickJSAsyncContext({module:this.module,ctx:e,ffi:this.ffi,rt:this.rt,ownedLifetimes:[],runtime:this,callbacks:this.callbacks});return this.contextMap.set(e.value,g),g}setModuleLoader(A,e){super.setModuleLoader(A,e)}setMaxStackSize(A){return super.setMaxStackSize(A)}};Li.QuickJSAsyncRuntime=bE});var Mc=U(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.QuickJSAsyncWASMModule=void 0;var NS=_g(),kc=zg(),xE=KE(),US=Rc(),vE=class extends xE.QuickJSWASMModule{constructor(A,e){super(A,e),this.ffi=e,this.module=A}newRuntime(A={}){let e=new kc.Lifetime(this.ffi.QTS_NewRuntime(),void 0,C=>{this.callbacks.deleteRuntime(C),this.ffi.QTS_FreeRuntime(C)}),g=new US.QuickJSAsyncRuntime({module:this.module,ffi:this.ffi,rt:e,callbacks:this.callbacks});return(0,xE.applyBaseRuntimeOptions)(g,A),A.moduleLoader&&g.setModuleLoader(A.moduleLoader),g}newContext(A={}){let e=this.newRuntime(),g=A.ownedLifetimes?A.ownedLifetimes.concat([e]):[e],C=e.newContext({...A,ownedLifetimes:g});return e.context=C,C}evalCode(){throw new NS.QuickJSNotImplemented("QuickJSWASMModuleAsyncify.evalCode: use evalCodeAsync instead")}evalCodeAsync(A,e){return kc.Scope.withScopeAsync(async g=>{let C=g.manage(this.newContext());(0,xE.applyModuleEvalRuntimeOptions)(C.runtime,e);let t=await C.evalCodeAsync(A,"eval.js");if(e.memoryLimitBytes!==void 0&&C.runtime.setMemoryLimit(-1),t.error)throw C.dump(g.manage(t.error));return C.dump(g.manage(t.value))})}};Ji.QuickJSAsyncWASMModule=vE});var Gc=U(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.QuickJSFFI=void 0;var TE=class{constructor(A){this.module=A,this.DEBUG=!1,this.QTS_Throw=this.module.cwrap("QTS_Throw","number",["number","number"]),this.QTS_NewError=this.module.cwrap("QTS_NewError","number",["number"]),this.QTS_RuntimeSetMemoryLimit=this.module.cwrap("QTS_RuntimeSetMemoryLimit",null,["number","number"]),this.QTS_RuntimeComputeMemoryUsage=this.module.cwrap("QTS_RuntimeComputeMemoryUsage","number",["number","number"]),this.QTS_RuntimeDumpMemoryUsage=this.module.cwrap("QTS_RuntimeDumpMemoryUsage","number",["number"]),this.QTS_RecoverableLeakCheck=this.module.cwrap("QTS_RecoverableLeakCheck","number",[]),this.QTS_BuildIsSanitizeLeak=this.module.cwrap("QTS_BuildIsSanitizeLeak","number",[]),this.QTS_RuntimeSetMaxStackSize=this.module.cwrap("QTS_RuntimeSetMaxStackSize",null,["number","number"]),this.QTS_GetUndefined=this.module.cwrap("QTS_GetUndefined","number",[]),this.QTS_GetNull=this.module.cwrap("QTS_GetNull","number",[]),this.QTS_GetFalse=this.module.cwrap("QTS_GetFalse","number",[]),this.QTS_GetTrue=this.module.cwrap("QTS_GetTrue","number",[]),this.QTS_NewRuntime=this.module.cwrap("QTS_NewRuntime","number",[]),this.QTS_FreeRuntime=this.module.cwrap("QTS_FreeRuntime",null,["number"]),this.QTS_NewContext=this.module.cwrap("QTS_NewContext","number",["number"]),this.QTS_FreeContext=this.module.cwrap("QTS_FreeContext",null,["number"]),this.QTS_FreeValuePointer=this.module.cwrap("QTS_FreeValuePointer",null,["number","number"]),this.QTS_FreeValuePointerRuntime=this.module.cwrap("QTS_FreeValuePointerRuntime",null,["number","number"]),this.QTS_FreeVoidPointer=this.module.cwrap("QTS_FreeVoidPointer",null,["number","number"]),this.QTS_FreeCString=this.module.cwrap("QTS_FreeCString",null,["number","number"]),this.QTS_DupValuePointer=this.module.cwrap("QTS_DupValuePointer","number",["number","number"]),this.QTS_NewObject=this.module.cwrap("QTS_NewObject","number",["number"]),this.QTS_NewObjectProto=this.module.cwrap("QTS_NewObjectProto","number",["number","number"]),this.QTS_NewArray=this.module.cwrap("QTS_NewArray","number",["number"]),this.QTS_NewFloat64=this.module.cwrap("QTS_NewFloat64","number",["number","number"]),this.QTS_GetFloat64=this.module.cwrap("QTS_GetFloat64","number",["number","number"]),this.QTS_NewString=this.module.cwrap("QTS_NewString","number",["number","number"]),this.QTS_GetString=this.module.cwrap("QTS_GetString","number",["number","number"]),this.QTS_NewSymbol=this.module.cwrap("QTS_NewSymbol","number",["number","number","number"]),this.QTS_GetSymbolDescriptionOrKey=this.module.cwrap("QTS_GetSymbolDescriptionOrKey","number",["number","number"]),this.QTS_IsGlobalSymbol=this.module.cwrap("QTS_IsGlobalSymbol","number",["number","number"]),this.QTS_IsJobPending=this.module.cwrap("QTS_IsJobPending","number",["number"]),this.QTS_ExecutePendingJob=this.module.cwrap("QTS_ExecutePendingJob","number",["number","number","number"]),this.QTS_GetProp=this.module.cwrap("QTS_GetProp","number",["number","number","number"]),this.QTS_SetProp=this.module.cwrap("QTS_SetProp",null,["number","number","number","number"]),this.QTS_DefineProp=this.module.cwrap("QTS_DefineProp",null,["number","number","number","number","number","number","boolean","boolean","boolean"]),this.QTS_Call=this.module.cwrap("QTS_Call","number",["number","number","number","number","number"]),this.QTS_ResolveException=this.module.cwrap("QTS_ResolveException","number",["number","number"]),this.QTS_Dump=this.module.cwrap("QTS_Dump","number",["number","number"]),this.QTS_Eval=this.module.cwrap("QTS_Eval","number",["number","number","string","number","number"]),this.QTS_Typeof=this.module.cwrap("QTS_Typeof","number",["number","number"]),this.QTS_GetGlobalObject=this.module.cwrap("QTS_GetGlobalObject","number",["number"]),this.QTS_NewPromiseCapability=this.module.cwrap("QTS_NewPromiseCapability","number",["number","number"]),this.QTS_TestStringArg=this.module.cwrap("QTS_TestStringArg",null,["string"]),this.QTS_BuildIsDebug=this.module.cwrap("QTS_BuildIsDebug","number",[]),this.QTS_BuildIsAsyncify=this.module.cwrap("QTS_BuildIsAsyncify","number",[]),this.QTS_NewFunction=this.module.cwrap("QTS_NewFunction","number",["number","number","string"]),this.QTS_ArgvGetJSValueConstPointer=this.module.cwrap("QTS_ArgvGetJSValueConstPointer","number",["number","number"]),this.QTS_RuntimeEnableInterruptHandler=this.module.cwrap("QTS_RuntimeEnableInterruptHandler",null,["number"]),this.QTS_RuntimeDisableInterruptHandler=this.module.cwrap("QTS_RuntimeDisableInterruptHandler",null,["number"]),this.QTS_RuntimeEnableModuleLoader=this.module.cwrap("QTS_RuntimeEnableModuleLoader",null,["number","number"]),this.QTS_RuntimeDisableModuleLoader=this.module.cwrap("QTS_RuntimeDisableModuleLoader",null,["number"])}};Ki.QuickJSFFI=TE});var mc=U((Hi,qE)=>{"use strict";var PE=(()=>{var I=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(I=I||__filename),function(A={}){var e;e||(e=typeof A<"u"?A:{});var g,C;e.ready=new Promise(function(G,K){g=G,C=K});var t=Object.assign({},e),Q="./this.program",u=typeof window=="object",c=typeof importScripts=="function",h=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",r="",a,s,i;if(h){var B=require("fs"),E=require("path");r=c?E.dirname(r)+"/":__dirname+"/",a=(G,K)=>{var v=Ke(G);return v?K?v:v.toString():(G=G.startsWith("file://")?new URL(G):E.normalize(G),B.readFileSync(G,K?void 0:"utf8"))},i=G=>(G=a(G,!0),G.buffer||(G=new Uint8Array(G)),G),s=(G,K,v)=>{var V=Ke(G);V&&K(V),G=G.startsWith("file://")?new URL(G):E.normalize(G),B.readFile(G,function(IA,EA){IA?v(IA):K(EA.buffer)})},!e.thisProgram&&1{try{var K=new XMLHttpRequest;return K.open("GET",G,!1),K.send(null),K.responseText}catch(IA){if(G=Ke(G)){K=[];for(var v=0;v{try{var K=new XMLHttpRequest;return K.open("GET",G,!1),K.responseType="arraybuffer",K.send(null),new Uint8Array(K.response)}catch(v){if(G=Ke(G))return G;throw v}}),s=(G,K,v)=>{var V=new XMLHttpRequest;V.open("GET",G,!0),V.responseType="arraybuffer",V.onload=()=>{if(V.status==200||V.status==0&&V.response)K(V.response);else{var IA=Ke(G);IA?K(IA.buffer):v()}},V.onerror=v,V.send(null)});var n=e.print||console.log.bind(console),D=e.printErr||console.warn.bind(console);Object.assign(e,t),t=null,e.thisProgram&&(Q=e.thisProgram);var f;e.wasmBinary&&(f=e.wasmBinary);var S=e.noExitRuntime||!0;typeof WebAssembly!="object"&&DA("no native wasm support detected");var k,M=!1,N,J,O,b;function AA(){var G=k.buffer;e.HEAP8=N=new Int8Array(G),e.HEAP16=new Int16Array(G),e.HEAP32=O=new Int32Array(G),e.HEAPU8=J=new Uint8Array(G),e.HEAPU16=new Uint16Array(G),e.HEAPU32=b=new Uint32Array(G),e.HEAPF32=new Float32Array(G),e.HEAPF64=new Float64Array(G)}var W=[],j=[],iA=[];function oA(){var G=e.preRun.shift();W.unshift(G)}var rA=0,sA=null,eA=null;function DA(G){throw e.onAbort&&e.onAbort(G),G="Aborted("+G+")",D(G),M=!0,G=new WebAssembly.RuntimeError(G+". Build with -sASSERTIONS for more info."),C(G),G}var T="data:application/octet-stream;base64,",z;if(z="data:application/octet-stream;base64,AGFzbQEAAAAB9QZxYAJ/fwBgA39/fwF/YAR/fn9/AX5gAn9/AX9gAX8Bf2AFf35/f38BfmADf39/AGAEf39/fwF/YAJ/fgF+YAF/AGAFf39/f38Bf2ABfAF8YAJ/fgBgAn9/AX5gAn9+AX9gA39/fgF/YAN/fn8BfmADf35/AGAGf35/f39/AX5gBn9/f39/fwF/YAR/f39/AGADf35/AX9gBn9+fn9/fwF+YAR/f35/AX9gA39+fgF+YAN/f38BfmAFf39/fn4Bf2AEf39/fgF/YAR/f35+AX9gBX9+fn5+AGABfwF+YAN/fn4Bf2AEf39/fwF+YAd/f39/f39/AX9gBX9/f39/AX5gAnx8AXxgAAF/YAV/f39/fwBgBX9+f35/AX9gBX9+fn9/AX5gAX4Bf2AEf35+fwBgB39+f35+fn8Bf2AIf39/f39/f38Bf2AFf35+fn8Bf2AGf35/fn5/AX9gBH9+f34BfmAEf35/fwBgBH9+f34AYAZ/f39/f38BfmAEf35+fwF/YAl/f39/f39/f38Bf2AEf35+fwF+YAR/fn9/AX9gA39+fgBgA35/fwF/YAV/fn5/fwBgA39/fgF+YAd/fn9/f39/AX5gAABgA39/fgBgBH9+f34Bf2AFf39+f38Bf2AEf35+fgF/YAd/f39/f39/AGACfH8BfGABfAF/YAN8fH8BfGACf38BfGAEf39+fwBgBH9+fn4BfmABfgF+YAJ/fAF/YAZ/fH9/f38Bf2AAAXxgBX9+f35/AX5gBn9/fn5+fgF/YAJ+fwBgAn98AGAEf39+fwF+YAV/f39/fgF+YAd/fn5+f39/AX5gBH5+fn4Bf2AHf39/f39/fgF+YAp/f39/f39/f39/AX9gB39/fn5/f38Bf2AFf3x/f38BfmACfn8Bf2AGfH9/f39/AGAFf35/f38AYAV/f35/fwBgBn9+fn5+fwF/YAV/f35+fwF/YAZ/fn9/f38Bf2ADf3x/AX9gBX9+f39/AX9gBX9/fn5+AX5gBX9+fn5+AX9gBn9/fn5/fwF/YAd/f39+fn5/AX9gBH9/f34BfmACfH8Bf2AGf39/f39/AGAIf39/f39/f38AYAN/fnwBfmAAAX5gAnx8AX9gAn5+AXxgAX8BfGADfn5+AX9gA39/fABgCH9+fn5+f35+AX5gCX9/f39/f39/fwACWw8B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rgitCKcIqAimCKUIpAj0B44JjQmKCYgJjAnwB/EH7gfrB+QH4gfhB9MHwQeaB/EEvAmbCZoJmQmYCZcJlgmVCZQJkwmSCZEJiwntCOwInQicCJsImgiZCKAFmAiXCJYIlQiUCJMIkQiQCI8IjgiNCIwIiwiKCIkIiAiHCIYI6QOFCOkDhAiDCIIIgQieCKEIoAifCKII2QP/B/4HkQeQB5kHmAeWB5UHlAeTB5IH4AffB94H6QPdB6AF3AfbB9oH2AerCKoIqQj/BooHiQeIB4cHhgeFB4QHgweCB4EHgAfoB4sHjweOB5sHpAehB6MHogefB54HnQecB6UH5wfmB+UH/gHsB+kH7QfvB/IH9QbPBPQG8wbyBvEGyATwBu8G9wbRBPYG9gf1B/sH+gf5B/gH/QeoCeMGpwnmBqYJpQmkCaMJ4QbfBsYEogmhCaAJsQafCZ4JnQmwBrIJsQmwCa8JrgmtCawJqwmqCbgJnQO3CbYJtQm0CbMJxgnJB8gHxQnECcMJwgnWA8EJwAn3BPgEvwm+CbsJugm5CckJyAnHCdAJzwm9BLwEzgnNCcwJywnKCbQG1AnTCdIJ0Qm4BrcGtga1BroGuQa9BrwGuwbSBtEG0AbPBs4GzQbMBssGygbJBsgGxwbGBsUGxAbDBsEGwAa/Br4G0wbcBoAJ+gj7CNsGgwmECYEJnQT+CPkI6wPMAtoG9QjxCO8I2Qb4CPQI8AiCCf8I/QiXAqcD1gnyCPwI2AbXBtYG1QbUBugG5wblBuQG4gbgBt4G3QbrBuoG6QbtBuwG7gapB6cHpgfPB4EF1weABc4HzQfMB8sHxwfGB8UHxAfDB8IHwAe/B9IH0AfWB9QHtAezB7EHsAevB64HrQesB6sHqge+B70HvAe7B7oHuQe4B7cHtge1B4cJhQmGCdgD8wgK15YXyAk1AQF/AkAgAUIgiKdBdUkNACABpyICIAIoAgAiAkEBazYCACACQQFKDQAgACgCECABEJYECwtNAQJ/IAAoAkAiAkGAAmohAyACKAKcAiAAKAIERwRAIANBwgEQESADIAAoAgQQHSACIAAoAgQ2ApwCCyACIAIoAoQCNgKYAiADIAEQEQsmAQF/IwBBEGsiAiQAIAIgAToADyAAIAJBD2pBARByIAJBEGokAAv/FwIGfwJ+IwBBEGsiAiQAAn8CQCAAKAIAKAIQKAJ4IAJLBEAgAEGNIkEAEBYMAQsgACAAQRBqIgQQ/wEgACAAKAI4IgE2AjQgAiABNgIMIABBADYCMCAAIAAoAhQ2AgQDQCAAIAE2AhggACAAKAIIIgM2AhQCQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASwAACIFQf8BcSIGDn0AFxcXFxcXFxcEAwQEAhcXFxcXFxcXFxcXFxcXFxcXFwQSGggHDBMaFxcLDRcOCQUKHR0dHR0dHR0dFxcPERAWFwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHFwYXFAcBBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcXFRcLQQAhBSABIAAoAjxJDRggBEGsfzYCAAwgCyAAIAFBAWoQzwMNHSACIAAoAjg2AgwMHwsgAUEBaiABIAEtAAFBCkYbIQELIAIgAUEBajYCDAweCyACIAFBAWo2AgwMHgsCQAJAIAEtAAEiA0EqRwRAIANBL0YNASADQT1HDQIgAiABQQJqNgIMIARBhn82AgAMHgsgAiABQQJqIgE2AgwDQAJAAkACQAJAAkACQCABLQAAIgNBCmsOBAEDAwIACyADQSpHBEAgAw0DIAEgACgCPEkNBCAAQdUsQQAQFgwiCyABLQABQS9HDQMgAiABQQJqNgIMDCULIABBATYCMCAAIAAoAghBAWo2AgggAiABQQFqNgIMDAMLIABBATYCMCACIAFBAWo2AgwMAgsgA8BBAE4NACABQQYgAkEMahBYIgFBfnFBqMAARgRAIABBATYCMAwCCyABQX9HDQEgAiACKAIMQQFqNgIMDAELIAIgAUEBajYCDAsgAigCDCEBDAALAAsgAUECaiEBQQAMFwsgAiABQQFqNgIMIARBLzYCAAwbC0HcACEFIAEtAAFB9QBHDRIgAiABQQFqNgIEIAJBBGpBARD5ASIGQQBIDRIgBhDvAkUNEiACIAIoAgQ2AgwgAkEBNgIIDBcLIAJBADYCCCACIAFBAWo2AgwMFgsgAiABQQJqNgIEQdwAIQMCQCABLQABIgVB3ABGBEAgAS0AAkH1AEcNASACQQRqQQEQ+QEhAwwBCyAFIgPAQQBODQAgAUEBakEGIAJBBGoQWCEDCyADEO8CRQRAIABBxOcAQQAQFgwXCyACIAIoAgQ2AgwgACACQQxqIAJBCGogA0EBEOoEIgFFDRYgAEGrfzYCECAAIAE2AiAMGAtBLiEFIAEtAAEiA0EuRw0OIAEtAAJBLkcNDyACIAFBA2o2AgwgBEGnfzYCAAwXCyABLQABQTprQXZJDRIgACgCQC0AbkEBcUUNEiAAQfvsAEEAEBYMFAtBKiEFIAEtAAEiA0EqRwRAIANBPUcNDiACIAFBAmo2AgwgBEGFfzYCAAwWCyABLQACQT1GBEAgAiABQQNqNgIMIARBkX82AgAMFgsgAiABQQJqNgIMIARBpX82AgAMFQtBJSEFIAEtAAFBPUcNDCACIAFBAmo2AgwgBEGHfzYCAAwUC0ErIQUgAS0AASIDQStHBEAgA0E9Rw0MIAIgAUECajYCDCAEQYh/NgIADBQLIAIgAUECajYCDCAEQZZ/NgIADBMLQS0hBSABLQABIgZBLUcEQCAGQT1HDQsgAiABQQJqNgIMIARBiX82AgAMEwsCQCAAKAJIRQ0AIAEtAAJBPkcNACAAKAIEIANHDQ0LIAIgAUECajYCDCAEQZV/NgIADBILAkACQAJAIAEtAAEiA0E8aw4CAQACCyACIAFBAmo2AgwgBEGbfzYCAAwTCyABLQACQT1GBEAgAiABQQNqNgIMIARBin82AgAMEwsgAiABQQJqNgIMIARBl382AgAMEgtBPCEFIANBIUcNCSAAKAJIRQ0JIAEtAAJBLUcNCSABLQADQS1GDQsMCQtBPiEFAkACQCABLQABQT1rDgIAAQoLIAIgAUECajYCDCAEQZ1/NgIADBELAkACQAJAIAEtAAJBPWsOAgEAAgsgAS0AA0E9RgRAIAIgAUEEajYCDCAEQYx/NgIADBMLIAIgAUEDajYCDCAEQZl/NgIADBILIAIgAUEDajYCDCAEQYt/NgIADBELIAIgAUECajYCDCAEQZh/NgIADBALQT0hBQJAAkAgAS0AAUE9aw4CAAEJCyABLQACQT1GBEAgAiABQQNqNgIMIARBn382AgAMEQsgAiABQQJqNgIMIARBnn82AgAMEAsgAiABQQJqNgIMIARBpn82AgAMDwtBISEFIAEtAAFBPUcNBiABLQACQT1GBEAgAiABQQNqNgIMIARBoX82AgAMDwsgAiABQQJqNgIMIARBoH82AgAMDgtBJiEFIAEtAAEiA0EmRwRAIANBPUcNBiACIAFBAmo2AgwgBEGNfzYCAAwOCyABLQACQT1GBEAgAiABQQNqNgIMIARBkn82AgAMDgsgAiABQQJqNgIMIARBon82AgAMDQsCQCABLQABIgNB3gBHBEAgA0E9Rw0BIAIgAUECajYCDCAAKAJALQBuQQRxBEAgBEGQfzYCAAwPCyAEQY5/NgIADA4LIAEtAAJBPUYEQCACIAFBA2o2AgwgBEGOfzYCAAwOCyACIAFBAmo2AgwgBEHeADYCAAwNCyACIAFBAWo2AgwgACgCQC0AbkEEcQRAIARBpH82AgAMDQsgBEHeADYCAAwMC0H8ACEFIAEtAAEiA0H8AEcEQCADQT1HDQQgAiABQQJqNgIMIARBj382AgAMDAsgAS0AAkE9RgRAIAIgAUEDajYCDCAEQZN/NgIADAwLIAIgAUECajYCDCAEQaN/NgIADAsLQT8hBSABLQABIgNBLkcEQCADQT9HDQMgAS0AAkE9RgRAIAIgAUEDajYCDCAEQZR/NgIADAwLIAIgAUECajYCDCAEQah/NgIADAsLIAEtAAJBMGtB/wFxQQpJDQIgAiABQQJqNgIMIARBqX82AgAMCgsgBUEATg0BIAFBBiACQQxqEFgiBkF+cUGowABGBEAgACgCCCEDDAsLIAYQhwMNCyAGEO8CBEAgAkEANgIIDAcLIABB0cMAQQAQFgwHCyADQTBrQf8BcUEKSQ0ECyAEIAVB/wFxNgIAIAIgAUEBajYCDAwHCyAAIAZBASABQQFqIAQgAkEMahDzAkUNBgwEC0EBCyEDA0ACfwJAAkACQAJAIANFBEAgAiABNgIMDAELIAEtAAAiA0UNAgJAIANBCmsOBA0AAA0ACyADwEEATg0DIAFBBiACQQxqEFgiA0F+cUGowABGDQwgAigCDCEBIANBf0YNAQtBASEDDAQLIAFBAWoMAgsgASAAKAI8Tw0JCyABQQFqCyEBQQAhAwwACwALIAAoAkAtAG4hAyAAQShqIgVBADYCAAJAIAAoAgAgASACQQxqQQBB9AZB9AAgA0EEcRsgBRC3BSIHQoCAgIBwgyIIQoCAgIDAflIEQCAIQoCAgIDgAFENAyACKAIMQQYgAkEIahBYEMUBRQ0BCyAAKAIAIAcQDyAAQdXVAEEAEBYMAgsgACAHNwMgIABBgH82AhAMAwsgACACQQxqIAJBCGogBkEAEOoEIgFFDQAgACABNgIgIAIoAgghBSAAQQA2AiggACAFNgIkAkAgAUElSQ0AIAFBLU0EQCAAKAJAIgMtAG5BAXENASABQS1HDQMgAy8BbCIGQQFxDQEgBkGA/gNxQYAGRw0DIAMoAmQNAyADKAIEIgNFDQMgAy0AbEEBcQ0BDAMLIAFBLkcNAiAAKAJEDQAgACgCQCIDLwFsIgZBAnENACAGQYD+A3FBgAZHDQIgAygCZA0CIAMoAgQiA0UNAiADLQBsQQJxRQ0CCyAFBEAgAEGDfzYCECAAQQE2AigMAwsgBCABQdQAazYCAAwCCyAEQap/NgIADAULIARBg382AgALIAAgAigCDDYCOEEADAQLIABBATYCMCAAIANBAWo2AggLIAIoAgwhAQwACwALQX8LIQEgAkEQaiQAIAELFQAgAUHeAU4EQCAAKAIQIAEQ6AULC7oHAgZ/AX4jAEEgayIHJABCgICAgOAAIQsCQAJAAkACQAJAAkACQAJAAkACQCABQiCIpyIGQQFqDggDBQUAAQUFCQILIAAgAkGH1AAQjwEMBgsgACACQff4ABCPAQwFCyAGQXlGDQEMAgsgAachBgwCCyABpyEGIAJBAEgEQCACQf////8HcSIFIAYpAgQiC6dB/////wdxTw0BIAZBEGohAiAAAn8gC0KAgICACINQRQRAIAIgBUEBdGovAQAMAQsgAiAFai0AAAtB//8DcRCfAyELDAULIAJBMEcNACAGKQIEQv////8HgyELDAQLIAAgARCNBKciBkUNAgsgAkH/////B3EhCQNAIAYoAhAiBUEwaiEKIAUgBSgCGCACcUF/c0ECdGooAgAhBQJAA0AgBUUNASACIAogBUEBa0EDdCIFaiIIKAIERwRAIAgoAgBB////H3EhBQwBCwsgBigCFCAFaiEFAkACQAJAAkAgCCgCAEEedkEBaw4DAAECAwsgBSgCACICRQ0GIAIgAigCAEEBajYCACAAIAKtQoCAgIBwhCADQQBBABAvIQsMBwsgBSgCACgCECkDACILQoCAgIBwg0KAgICAwABRBEAgACACENkBDAULIAtCIIinQXVJDQYgC6ciACAAKAIAQQFqNgIADAYLIAAgBiACIAUgCBDIAkUNAgwDCyAFKQMAIgtCIIinQXVJDQQgC6ciACAAKAIAQQFqNgIADAQLAkAgBi0ABSIFQQRxRQ0AIAVBCHEEQCACQQBIBEAgBigCKCAJSwRAIAAgBq1CgICAgHCEIAkQsAEhCwwHCyAGLwEGQSBrQf//A3FB9f8DTw0FDAILIAYvAQZBFWtB//8DcUEKSw0BIAAgAhCeAyIFRQ0BQoCAgIDgAEKAgICAMCAFQQBIGyELDAULIAAoAhAoAkQgBi8BBkEYbGooAhQiBUUNACAFKAIUIggEQCAGIAYoAgBBAWo2AgAgACAGrUKAgICAcIQiASACIAMgCBEuACELIAAgARAPDAULIAUoAgAiBUUNACAGIAYoAgBBAWo2AgAgACAHIAatQoCAgIBwhCIBIAIgBREXACEFIAAgARAPIAVBAEgNAiAFRQ0AIActAABBEHEEQCAAIAcpAxgQDyAAIAcpAxAgA0EAQQAQLyELDAULIAcpAwghCwwECyAGKAIQKAIsIgYNAAtCgICAgDAhCyAERQ0CIAAgAhDHAgtCgICAgOAAIQsMAQtCgICAgDAhCwsgB0EgaiQAIAsLDQAgACABIAJBBBDOAgtfAQN/IwBBEGsiBCQAIAAoAgAhAyAEIAI2AgwgA0EDIAEgAkEAEPAFIAMgAygCECkDgAEgACgCDCAAKAIIIAAoAkAiAQR/IAEoAmhBAEdBAXQFQQALEMoCIARBEGokAAsMACAAQYACaiABECoLKwAgAUHeAU4EQCAAKAIQKAI4IAFBAnRqKAIAIgAgACgCAEEBajYCAAsgAQspACAAIAEgAiADQoCAgIAwQoCAgIAwIARBgM4AchBtIQIgACADEA8gAgsZACAAKAIAIAEQGCEBIABBQGsoAgAgARA5Cy0BAX8CQCAAKAIAIgFFDQAgACgCECIARQ0AIAEoAgAgAEEAIAEoAgQRAQAaCwtcAQF/IABBQGsoAgAiAxDmAkUEQEF/DwsgAkEASARAIAMQMiECCyAAIAFB/wFxEBAgAEFAayIAKAIAIAIQOSAAKAIAKAKkAiACQRRsaiIAIAAoAgBBAWo2AgAgAgsmAQF/IwBBEGsiAiQAIAIgATYCDCAAIAJBDGpBBBByIAJBEGokAAs5ACABQQBOBEAgAEG2ARAQIABBQGsiACgCACABEDkgACgCACIAKAKkAiABQRRsaiAAKAKEAjYCBAsLMwEBfyACBEAgACEDA0AgAyABLQAAOgAAIANBAWohAyABQQFqIQEgAkEBayICDQALCyAACxgBAX4gASkDACEDIAEgAjcDACAAIAMQDwsXACAAIAEgAkKAgICAMCADIARBAhDYAQvABQICfgZ/IwBB4ABrIgkkACADQQAgA0EAShshCwNAIAogC0ZFBEAgACACIApBBHRqIgMoAgAQtAUhBiADLQAEIQdCgICAgDAhBAJAAkACQAJAAkACQAJAAkACQAJAIAMtAAUOCgECAgUHAwQIBQAGCyAAIAMoAggQtAUhCAJ+AkACQAJAIAMoAgxBAWoOAwIAAQkLIAAgACkDwAEiBCAIIARBABAUDAILIAAgACgCKCkDECIEIAggBEEAEBQMAQsgACABIAggAUEAEBQLIQQgACAIEBMgBkHQAUYEQEEBIQcMCAsgBkHZAUcNB0EAIQcMBwsCQCAGQdABRgRAQQEhBwwBCyAGQdkBRw0AQQAhBwsgACABIAZBAiADIAcQlQMaDAcLQoCAgIAwIQUgAygCCARAIAkgAygCADYCECAJQSBqIghBwABBzDwgCUEQahBOGiAAIAMoAgggCEEAQQpBCCADLQAFQQJGGyADLgEGEIIBIQULIAMoAgwEQCAJIAMoAgA2AgAgCUEgaiIIQcAAQcU8IAkQThogACADKAIMIAhBAUELQQkgAy0ABUECRhsgAy4BBhCCASEECyAAIAEgBkKAgICAMCAFIAQgB0GAOnIQbRogACAFEA8gACAEEA8MBgsgAykDCCIEQoCAgIAIfEL/////D1gEQCAEQv////8PgyEEDAULQoCAgIDAfiAEub0iBEKAgICAwIGA/P8AfSAEQv///////////wCDQoCAgICAgID4/wBWGyEEDAQLQoCAgIDAfiADKQMIIgRCgICAgMCBgPz/AH0gBEL///////////8Ag0KAgICAgICA+P8AVhshBAwDCyAAIAEgBkECIAMgBxCVAxoMAwsQAQALIAM1AgghBAsgACABIAYgBCAHEBkaCyAAIAYQEyAKQQFqIQoMAQsLIAlB4ABqJAALMgEBfwJAIAFCIIinQXVJDQAgAaciAiACKAIAIgJBAWs2AgAgAkEBSg0AIAAgARCWBAsLCwAgAEGAMUEAEBULogICAn4BfwJAAkACQAJAAkACQAJAAkACQAJAAkBBByABQiCIpyIEIARBB2tBbkkbQQtqDhMEAgMIBgAAAAAAAQUHAAAAAAEFAAsgAEGVMEEAEBVCgICAgOAADwsgBEF1SQ0IIAGnIgAgACgCAEEBajYCAAwICyAAQSEQdiECDAYLIABBIhB2IQIMBQsgAEEkEHYhAgwECyAAQQQQdiECDAMLIAAgAEEFEHYiAkEwIAGnKQIEQv////8Hg0EAEBkaDAILIABBBhB2IQIMAQsgAEEHEHYhAgtCgICAgOAAIQMgAkKAgICAcINCgICAgOAAUgR+IARBdU8EQCABpyIEIAQoAgBBAWo2AgALIAAgAiABENsBIAIFQoCAgIDgAAsPCyABC9kBAgJ/AX5BfyECAkACQAJAAkACQAJAAkACQCABQiCIpyIDQQtqDhIHBwcFAgUFBQUFBAABAQEFBQYFCyABp0EARw8LIAGnDwsgAacpAgQhBCAAIAEQDyAEQv////8Hg0IAUg8LAAsgAacsAAUhAiAAIAEQDyACQQBODwsgA0EHa0FtTQRAIAFCgICAgMCBgPz/AHxC////////////AINCAX1CgICAgICAgPj/AFQPCyAAIAEQD0EBIQILIAIPCyABpygCDCECIAAgARAPIAJB/////wdqQX5JC6gEAQt/IAAoAgAhBSMAQRBrIgggAjYCDEF/IQkCQANAAkAgCCACIgNBBGoiAjYCDCADKAIAIgdBf0YNACAAKAIEIQoDQCABIgQgCk4NAyAEIAQgBWoiDC0AACIGQQJ0Ig1BgLgBai0AAGoiASAKSg0DIAZBwgFGBEAgDCgAASEJDAELCyAGIAdHBEAgBiAHQf8BcUYgBiAHQQh2Qf8BcUZyIAYgB0EQdkH/AXFGckUgB0EYdiAGR3EgBkUgB0GAAklycg0DIAAgBjYCEAsgBEEBaiEEAkACQAJAAkACQAJAAkACQCANQYO4AWotAABBBWsOGAAJAAkJAQkJAQkJAQEBAgICAgQFBgcJAwkLIAQgBWotAAAhBCAIIANBCGoiAjYCDCADKAIEIgNBf0YEQCAAIAQ2AhQMCQsgAyAERg0IDAkLIAQgBWovAAAhBCAIIANBCGoiAjYCDCADKAIEIgNBf0YEQCAAIAQ2AhQMCAsgAyAERg0HDAgLIAAgBCAFaigAADYCGAwGCyAAIAQgBWoiAygAADYCGCAAIAMvAAQ2AhwMBQsgACAEIAVqKAAANgIgDAQLIAAgBCAFaiIDKAAANgIgIAAgAy0ABDYCHAwDCyAAIAQgBWoiAygAADYCICAAIAMvAAQ2AhwMAgsgACAEIAVqIgMoAAA2AiAgACADKAAENgIYIAAgAy0ACDYCHAwBCwsgACAJNgIMIAAgATYCCEEBIQsLIAsLCwAgACABQQAQjgQLJAEBfyAAKAIQIgJBEGogASACKAIAEQMAIgFFBEAgABB8CyABCyYBAX8jAEEQayICJAAgAiABOwEOIAAgAkEOakECEHIgAkEQaiQACykBAX8gAgRAIAAhAwNAIAMgAToAACADQQFqIQMgAkEBayICDQALCyAACz8BAX8jAEEQayICJAACfyABIAAoAhBHBEAgAiABNgIAIABBoJgBIAIQFkF/DAELIAAQEgshACACQRBqJAAgAAsLACAAIAFBARDmBQvDCgIFfw9+IwBB4ABrIgUkACAEQv///////z+DIQwgAiAEhUKAgICAgICAgIB/gyEKIAJC////////P4MiDUIgiCEOIARCMIinQf//AXEhBwJAAkAgAkIwiKdB//8BcSIJQf//AWtBgoB+TwRAIAdB//8Ba0GBgH5LDQELIAFQIAJC////////////AIMiC0KAgICAgIDA//8AVCALQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQoMAgsgA1AgBEL///////////8AgyICQoCAgICAgMD//wBUIAJCgICAgICAwP//AFEbRQRAIARCgICAgICAIIQhCiADIQEMAgsgASALQoCAgICAgMD//wCFhFAEQCACIAOEUARAQoCAgICAgOD//wAhCkIAIQEMAwsgCkKAgICAgIDA//8AhCEKQgAhAQwCCyADIAJCgICAgICAwP//AIWEUARAIAEgC4QhAkIAIQEgAlAEQEKAgICAgIDg//8AIQoMAwsgCkKAgICAgIDA//8AhCEKDAILIAEgC4RQBEBCACEBDAILIAIgA4RQBEBCACEBDAILIAtC////////P1gEQCAFQdAAaiABIA0gASANIA1QIgYbeSAGQQZ0rXynIgZBD2sQZ0EQIAZrIQYgBSkDWCINQiCIIQ4gBSkDUCEBCyACQv///////z9WDQAgBUFAayADIAwgAyAMIAxQIggbeSAIQQZ0rXynIghBD2sQZyAGIAhrQRBqIQYgBSkDSCEMIAUpA0AhAwsgA0IPhiILQoCA/v8PgyICIAFCIIgiBH4iECALQiCIIhMgAUL/////D4MiAX58Ig9CIIYiESABIAJ+fCILIBFUrSACIA1C/////w+DIg1+IhUgBCATfnwiESAMQg+GIhIgA0IxiIRC/////w+DIgMgAX58IhQgDyAQVK1CIIYgD0IgiIR8Ig8gAiAOQoCABIQiDH4iFiANIBN+fCIOIBJCIIhCgICAgAiEIgIgAX58IhAgAyAEfnwiEkIghnwiF3whASAHIAlqIAZqQf//AGshBgJAIAIgBH4iGCAMIBN+fCIEIBhUrSAEIAQgAyANfnwiBFatfCACIAx+fCAEIAQgESAVVK0gESAUVq18fCIEVq18IAMgDH4iAyACIA1+fCICIANUrUIghiACQiCIhHwgBCACQiCGfCICIARUrXwgAiACIBAgElatIA4gFlStIA4gEFatfHxCIIYgEkIgiIR8IgJWrXwgAiACIA8gFFStIA8gF1atfHwiAlatfCIEQoCAgICAgMAAg1BFBEAgBkEBaiEGDAELIAtCP4ghAyAEQgGGIAJCP4iEIQQgAkIBhiABQj+IhCECIAtCAYYhCyADIAFCAYaEIQELIAZB//8BTgRAIApCgICAgICAwP//AIQhCkIAIQEMAQsCfiAGQQBMBEBBASAGayIHQf8ATQRAIAVBMGogCyABIAZB/wBqIgYQZyAFQSBqIAIgBCAGEGcgBUEQaiALIAEgBxCOAiAFIAIgBCAHEI4CIAUpAzAgBSkDOIRCAFKtIAUpAyAgBSkDEISEIQsgBSkDKCAFKQMYhCEBIAUpAwAhAiAFKQMIDAILQgAhAQwCCyAEQv///////z+DIAatQjCGhAsgCoQhCiALUCABQgBZIAFCgICAgICAgICAf1EbRQRAIAogAkIBfCIBUK18IQoMAQsgCyABQoCAgICAgICAgH+FhFBFBEAgAiEBDAELIAogAiACQgGDfCIBIAJUrXwhCgsgACABNwMAIAAgCjcDCCAFQeAAaiQACyEAIAAgASACQoCAgIAwIAMgBEECENgBIQIgACABEA8gAgumAQEEfyAAQQA2AgQgAVAEQCAAQYCAgIB4NgIIIABBABBBGkEADwsCQCABQv////8PWARAIABBARBBDQEgACgCECABIAGnZyICrYY+AgAg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IAMQ2QEMAgtBACEEIAItAAUiBUEEcUUNACAFQQhxBEAgA0EATg0BIANB/////wdxIgMgAigCKCIFSSEEIAFFIAMgBU9yDQEgAUKAgICAMDcDGCABQoCAgIAwNwMQIAFBBzYCACABIAAgAq1CgICAgHCEIAMQsAE3AwgMAwsgACgCECgCRCACLwEGQRhsaigCFCIFRQ0AIAUoAgAiBUUNACAAIAEgAq1CgICAgHCEIAMgBREXACEECyAEDwtBfw8LQQELoQQBAn8CQAJAIAFCgICAgHBUIAJC/////w9Wcg0AIAKnIgQgAaciAygCKE8NAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAy8BBkECaw4eAAsLCwsLAAsLCwsLCwsLCwsLCwIBAgMEBQYHCAkKCwsgAygCJCAEQQN0aikDACIBQiCIp0F1SQ0LIAGnIgAgACgCAEEBajYCACABDwsgAygCJCAEajAAAEL/////D4MPCyADKAIkIARqMQAADwsgAygCJCAEQQF0ajIBAEL/////D4MPCyADKAIkIARBAXRqMwEADwsgAygCJCAEQQJ0ajUCAA8LIAMoAiQgBEECdGooAgAiAEEATgRAIACtDwtCgICAgMB+IAC4vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbDwsgACADKAIkIARBA3RqKQMAEIcCDwsgACADKAIkIARBA3RqKQMAEPsDDwtCgICAgMB+IAMoAiQgBEECdGoqAgC7vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbDwtCgICAgMB+IAMoAiQgBEEDdGopAwAiAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGw8LIAAgAhAxIQMgACACEA8gA0UEQEKAgICA4AAPCyAAIAEgAyABQQAQFCEBIAAgAxATCyABCyoBAX8jAEEQayIEJAAgBCADNgIMIAAgASACIAMQywIhACAEQRBqJAAgAAuMAQECfyABKAJ8IgRBgIAETgRAIABBjTpBABBGQX8PC0F/IQMgACABQfQAakEQIAFB+ABqIARBAWoQeAR/QX8FIAEgASgCfCIDQQFqNgJ8IAEoAnQgA0EEdGoiA0IANwIAIANCADcCCCADIAAgAhAYNgIA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AwsNACAAIAEgARA/EJMCC20BAX8jAEGAAmsiBSQAIARBgMAEcSACIANMckUEQCAFIAFB/wFxIAIgA2siA0GAAiADQYACSSIBGxArGiABRQRAA0AgACAFQYACEFsgA0GAAmsiA0H/AUsNAAsLIAAgBSADEFsLIAVBgAJqJAALDAAgAEGAAmogARARC74BAgF+AX8CQAJAIAFCgICAgHCDQoCAgIAwUQRAIAAoAiggAkEDdGopAwAiA0IgiKdBdEsNAQwCCyAAIAFBOyABQQAQFCIDQoCAgIBwg0KAgICA4ABRBEAgAw8LIANC/////29WDQEgACADEA8gACABEIADIgRFBEBCgICAgOAADwsgBCgCKCACQQN0aikDACIDQiCIp0F1SQ0BCyADpyIEIAQoAgBBAWo2AgALIAAgAyACEEkhASAAIAMQDyABC3UBAX4gACABIAR+IAIgA358IANCIIgiAiABQiCIIgR+fCADQv////8PgyIDIAFC/////w+DIgF+IgVCIIggAyAEfnwiA0IgiHwgASACfiADQv////8Pg3wiAUIgiHw3AwggACAFQv////8PgyABQiCGhDcDAAtQAQF+AkAgA0HAAHEEQCABIANBQGqthiECQgAhAQwBCyADRQ0AIAIgA60iBIYgAUHAACADa62IhCECIAEgBIYhAQsgACABNwMAIAAgAjcDCAtVAQN/IAEgAkEFdSIESwRAIAAgBEECdGooAgAhAwsgAkEfcSICBH8gASAEQQFqIgRLBH8gACAEQQJ0aigCAAVBAAtBAXQgAkEfc3QgAyACdnIFIAMLC2QAAkACQCABQQBIDQAgACgCrAIgAUwNACAAKAKkAiABQRRsaiIAIAAoAgAgAmoiADYCACAAQQBIDQEgAA8LQYUpQa78AEHIqAFBlNUAEAAAC0GmjgFBrvwAQcuoAUGU1QAQAAALYAAgACABIAJCgICAgAh8Qv////8PWAR+IAJC/////w+DBUKAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLIANBh4ABEL0BCwwAIABBhvsAQQAQFQsLACAAIAFBARDBBQvSEAIMfwF+IwBBEGsiCiQAAkACQCABQv////9vWARAIAAQJAwBCyAGQYAwcSIORSAGIAZBCHYiEHEgEEF/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A6ciAiACKAIAQQFqNgIACyAAIAkgAyAGEMsFIQILIAZBggRxQYAERgRAIAogCSgCECIGQTBqNgIMQX8hByAAIAkgCkEMaiAGKAIwQRp2QT1xEJEDDQULIAIhBwwECyAMBEAgACAIKQMAEA8gA0IgiKdBdU8EQCADpyICIAIoAgBBAWo2AgALIAggAzcDAAsgBkGABHFFDQBBfyEHIAAgCSAKQQxqIAooAgwoAgBBGnZBPXEgBkECcXIQkQMNAwtBf0EBIAAgCSAKQQxqIBBBBXEiAEF/cyAKKAIMKAIAQRp2cSAAIAZxchCRAxshBwwCCyAAIAZB4ekAEG8hBwwBC0F/IQcLIApBEGokACAHC/8BAgJ/AXwjAEEQayIEJAACQCACQiCIpyIDQQJNBEAgASACp7c5AwBBACEADAELIANBB2tBbU0EQCABIAJCgICAgMCBgPz/AHw3AwBBACEADAELAn8gACACEI0BIgJCgICAgHCDQoCAgIDgAFEEQEQAAAAAAAD4fyEFQX8MAQsCfAJAAkBBByACQiCIpyIDIANBB2tBbkkbIgNBCmpBAk8EQCADQQdGDQIgAw0BIAKntwwDCyACp0EEaiAEQQhqELUFIAAgAhAPIAQrAwghBUEADAMLEAEACyACQoCAgIDAgYD8/wB8vwshBUEACyEAIAEgBTkDAAsgBEEQaiQAIAALXQECfyMAQRBrIgMkAAJAIAFBgIABcUUEQCABQYCAAnFFDQEgACgCECgCjAEiAUUNASABLQAoQQFxRQ0BCyADQQA2AgwgAEEEIAJBABCSBEF/IQQLIANBEGokACAEC8YJAgR/BX4jAEHwAGsiBiQAIARC////////////AIMhCQJAAkAgAVAiBSACQv///////////wCDIgpCgICAgICAwP//AH1CgICAgICAwICAf1QgClAbRQRAIANCAFIgCUKAgICAgIDA//8AfSILQoCAgICAgMCAgH9WIAtCgICAgICAwICAf1EbDQELIAUgCkKAgICAgIDA//8AVCAKQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQQgASEDDAILIANQIAlCgICAgICAwP//AFQgCUKAgICAgIDA//8AURtFBEAgBEKAgICAgIAghCEEDAILIAEgCkKAgICAgIDA//8AhYRQBEBCgICAgICA4P//ACAC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IAAgAaciAkEAIAIoAgRB/////wdxEFEhAiAAKAIAIAEQDyACC7UCAQd/IwBBEGsiBSQAAkAgAEFAaygCACIBRQRADAELAkAgAQJ/IAEoAsgBIgQgASgCxAEiAkgEQCABKALMASEDIAQMAQsgBEEBaiIDIAJBA2xBAm0iAiACIANIGyIGQQN0IQIgACgCACEDAkAgASgCzAEiByABQdABakYEQCADQQAgAiAFQQxqEKgBIgNFDQMgAyABKALMASABKALIAUEDdBAfGgwBCyADIAcgAiAFQQxqEKgBIgNFDQILIAUoAgwhAiABIAM2AswBIAEgAkEDdiAGajYCxAEgASgCyAELQQFqNgLIASADIARBA3RqIgIgASgCvAE2AgAgAiABKALAATYCBCAAQbQBEBAgAEFAaygCACAEQf//A3EQFyABIAQ2ArwBDAELQX8hBAsgBUEQaiQAIAQLoQECA38BfiMAIQYCQCACQoCAgIBwVA0AIAKnIgUvAQZBMEcNACAFKAIgIQQLAn8gBiAAKAIQKAJ4SQRAIAAQ6QFBAAwBCyAELQARBEAgABC2AkEADAELQQAgACAEKQMIIgIgAyACQQAQFCIHQoCAgIBwgyICQoCAgIDgAFENABogAUKAgICAMCAHIAJCgICAgCBRGzcDACAECyEFIAYkACAFCxYAIAAgASACIAMgBCAFIAApAzAQ8QELKQEBfyMAQRBrIgIkACACIAA2AgwgAkEMaiABEJMEIQAgAkEQaiQAIAALngICA38BfiACIAEpAgQiB6dB/////wdxIANHckUEQCABIAEoAgBBAWo2AgAgAa1CgICAgJB/hA8LIAFBEGohBSAHQoCAgIAIg1AgAyACayIEQQBMckUEQCADIAIgAiADSBshBkEAIQMgAiEBA0AgASAGRkUEQCAFIAFBAXRqLwEAIANyIQMgAUEBaiEBDAELCyADQf//A3FBgAJPBEAgACAFIAJBAXRqIAQQ7gMPC0EAIQEgACAEQQAQ6gEiAEUEQEKAgICA4AAPCyAAQRBqIQMDQCABIARGRQRAIAEgA2ogBSABIAJqQQF0ai0AADoAACABQQFqIQEMAQsLIAMgBGpBADoAACAArUKAgICAkH+EDwsgACACIAVqIAQQhAMLugEBAn8CQAJAIAJC/////wdYBEAgACABIAKnQYCAgIB4chBx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IANBCGogAhDiA0UEQEEAIQQgASADKQMIIgJCgICAgICAgBBaBH4gAEGAIEEAEFBBfyEEQgAFIAILNwMACyADQRBqJAAgBAsRACAAIAEgASACIANBAhCKBAtTAQF/IAAoAhAiBEEQaiABIAIgBCgCCBEBACIBIAJFckUEQCAAEHwgAQ8LIAMEQCADIAEgACgCECgCDBEEACIAIAJrIgJBACAAIAJPGzYCAAsgAQvAAQAgAAJ/IAEoAggiAEH+////B04EQEEAIAJBAXENARpB/////wcgAEH+////B0cNARogASgCBEH/////B2oMAQtBACAAQQBMDQAaIABBH00EQEEAIAEoAhAgASgCDEECdGpBBGsoAgBBICAAa3YiAmsgAiABKAIEGwwBCyACQQFxRQRAQYCAgIB4Qf////8HIAEoAgQbDAELQQAgASgCECABKAIMIgIgAkEFdCAAaxBoIgJrIAIgASgCBBsLNgIACw0AIAAgASABED8QhQML+QECA34CfyMAQRBrIgUkAAJ+IAG9IgNC////////////AIMiAkKAgICAgICACH1C/////////+//AFgEQCACQjyGIQQgAkIEiEKAgICAgICAgDx8DAELIAJCgICAgICAgPj/AFoEQCADQjyGIQQgA0IEiEKAgICAgIDA//8AhAwBCyACUARAQgAMAQsgBSACQgAgA6dnQSBqIAJCIIinZyACQoCAgIAQVBsiBkExahBnIAUpAwAhBCAFKQMIQoCAgICAgMAAhUGM+AAgBmutQjCGhAshAiAAIAQ3AwAgACACIANCgICAgICAgICAf4OENwMIIAVBEGokAAu2AQEBfyMAQRBrIgMkAAJAAkAgAkEASARAIAEgAkH/////B3E2AgBBASECDAELIAAoAhAiACgCLCACTQ0BAn8CQCAAKAI4IAJBAnRqKAIAIgApAgRCgICAgICAgIBAg0KAgICAgICAgMAAUg0AIANBDGogABC9BUUNAEEBIAMoAgwiAEF/Rw0BGgtBACEAQQALIQIgASAANgIACyADQRBqJAAgAg8LQe/fAEGu/ABBvxhBryAQAAAL1QECAn8DfgJ/IAJFBEBCgICAgDAhBUEADAELIAAoAhAiAykDgAEhBSADQoCAgIAgNwOAAUF/CyEDAkAgACABQQYgAUEAEBQiB0KAgICAcIMiBkKA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BUEgahBGQX8MAQsCQCABKAIEIARODQAgASAENgIEIARB//8DSA0AIAUgAjYCBCAFIAM2AgAgAEGjkwEgBRBGQX8MAQsgASgCCCACQQF0aiIDLwEAIgZB//8DRwRAQQAgBCAGRg0BGiAFIAI2AhggBSAENgIUIAUgBjYCECAAQdSSASAFQRBqEEZBfwwBCyADIAQ7AQBBfyAAIAFBDGpBBCABQRRqIAEoAhBBAWoQeA0AGiABIAEoAhAiAEEBajYCECABKAIMIABBAnRqIAI2AgBBAAshAyAFQTBqJAAgAwsTACAAIAEgAiADIARBAEEAEPgBCzkAIABB/wBNBEAgAEEDdkH8////AXFBoIECaigCACAAdkEBcQ8LIABBfnFBjMAARiAAENIEQQBHcgtmAQF/An9BACAAKAIIIgIgAU8NABpBfyAAKAIMDQAaIAAoAhQgACgCACACQQNsQQF2IgIgASABIAJJGyIBIAAoAhARAQAiAkUEQCAAQQE2AgxBfw8LIAAgATYCCCAAIAI2AgBBAAsLrAECAX8BfiAAKQIEIgSnQf////8HcSEDAkACQCAEQoCAgIAIg1BFBEAgAiADIAIgA0obIQMgAEEQaiEAA0AgAiADRg0CIAAgAkEBdGovAQAgAUYNAyACQQFqIQIMAAsACyABQf8BSw0AIAIgAyACIANKGyEDIABBEGohACABQf8BcSEBA0AgAiADRg0BIAAgAmotAAAgAUYNAiACQQFqIQIMAAsAC0F/IQILIAILpgEBAX8jAEEQayIDJAAgAyACNwMIAkAgACABQYYBIAFBABAUIgJCgICAgHCDQoCAgIDgAFENACAAIAIQOARAIAAgAiABQQEgA0EIahAvIgJC/////29WIAJCgICAgLB/g0KAgICAIFFyDQEgACACEA8gAEGK0wBBABAVQoCAgIDgACECDAELIAAgAhAPIAAgASADIANBCGoQ8QQhAgsgA0EQaiQAIAILowECA38BfiAAQRBqIQIgASgCACIEQQFqIQMCQCAAKQIEIgVCgICAgAiDUEUEQCACIARBAXRqLwEAIgBBgPgDcUGAsANHIAMgBadB/////wdxTnINASACIANBAXRqLwEAIgJBgPgDcUGAuANHDQEgAEEKdEGA+D9xIAJB/wdxckGAgARqIQAgBEECaiEDDAELIAIgBGotAAAh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OCAaKAIkIRQgCCAVQQ9qQfD//wFxayIXJAAgBSEVIAYEQCAHIAQgByAEIAdIGyIIQQAgCEEAShsiCGsiFUEAIAcgFU8bIREDQAJAIAggCUYEQANAIAggEUYNAiAXIAhBA3RqQoCAgIAwNwMAIAhBAWohCAwACwALIAUgCUEDdCIVaikDACIBQiCIp0F1TwRAIAGnIgogCigCAEEBajYCAAsgFSAXaiABNwMAIBFBAWohESAJQQFqIQkMAQsLIA4gBzYCVCAXIRULIA4gFTYCQCAOIBcgBkEDdGoiETYCREEAIQgDQCAIIAtHBEAgESAIQQN0akKAgICAMDcDACAIQQFqIQgMAQsLIBMoAhQhCiAOIBYoAowBNgIwIBYgDkEwaiISNgKMASATKAIwIQYgESALQQN0aiIIIRwLQQAMAQtBAQshBwNAAkACQAJAAkAgB0UEQCAEQQN0IScgA0KAgICAcIMhMyARQQhqIR0gEUEQaiEeIBFBGGohHyAVQQhqISAgFUEQaiEhIBVBGGohIiASQRhqISggBkHIAWohGyAcQRhqISkgBkHAAWohGSACQiCIpyIkQX5xISogA0IgiKchKyAErSEyIAOnISUgDkEwaiEsIA5B6ABqISYgCCEHAkADQAJAIApBAWohDUIBIS5CgICAgDAhAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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ajYCAAsgCCABNwMIIAhBCGspAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDECAIQRhqIQcM2wELIAggCEEIayIHKQMANwMAIAhBEGspAwAiAUIgiKdBdU8EQCABpyIKIAooAgBBAWo2AgALIAcgATcDACAIQQhqIQcM2gELIAggCEEIayIHKQMAIgE3AwAgByAIQRBrIgcpAwA3AwAgAUIgiKdBdU8EQCABpyIKIAooAgBBAWo2AgALIAcgATcDACAIQQhqIQcM2QELIAggCEEIayIHKQMAIgE3AwAgCEEQayIKKQMAIS0gCiAIQRhrIgopAwA3AwAgByAtNwMAIAFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAKIAE3AwAgCEEIaiEHDNgBCyAIIAhBCGsiBykDACIBNwMAIAhBEGsiCikDACEtIAogCEEYayIKKQMANwMAIAcgLTcDACAKIAhBIGsiBykDADcDACABQiCIp0F1TwRAIAGnIgogCigCAEEBajYCAAsgByABNwMAIAhBCGohBwzXAQsgCEEQayIHKQMAIQEgByAIQRhrIgcpAwA3AwAgByABNwMADNABCyAIQRhrIgcpAwAhASAHIAhBEGsiBykDADcDACAIQQhrIgopAwAhLSAKIAE3AwAgByAtNwMADM8BCyAIQSBrIgcpAwAhASAHIAhBGGsiBykDADcDACAIQRBrIgopAwAhLSAKIAhBCGsiCikDADcDACAHIC03AwAgCiABNwMADM4BCyAIQShrIgcpAwAhASAHIAhBIGsiBykDADcDACAIQRhrIgopAwAhLSAKIAhBEGsiCikDADcDACAHIC03AwAgCiAIQQhrIgcpAwA3AwAgByABNwMADM0BCyAIQQhrIgcpAwAhASAHIAhBEGsiBykDADcDACAIQRhrIgopAwAhLSAKIAE3AwAgByAtNwMADMwBCyAIQRBrIgcpAwAhASAHIAhBGGsiBykDADcDACAIQSBrIgopAwAhLSAKIAE3AwAgByAtNwMADMsBCyAIQRBrIgcpAwAhASAHIAhBGGsiBykDADcDACAIQSBrIgopAwAhLSAKIAhBKGsiCikDADcDACAHIC03AwAgCiABNwMADMoBCyAIQQhrIgcpAwAhASAHIAhBEGsiBykDADcDACAHIAE3AwAMyQELIAhBIGsiBykDACEBIAcgCEEQayIHKQMANwMAIAhBCGsiCikDACEtIAogCEEYayIKKQMANwMAIAcgATcDACAKIC03AwAMyAELIBMoAjQgDSgAAEEDdGopAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggBiABIBQgEhCMBCIBNwMAIAhBCGohByAKQQVqIQ0gAUKAgICAcINCgICAgOAAUQ1/DM0BCyAJQe4BawwBCyAKQQNqIQ0gCi8AAQshCyASIA02AiAgBiAIIAtBA3RrIgxBCGspAwBCgICAgDBCgICAgDAgCyAMQQAQ2AEiAUKAgICAcINCgICAgOAAUQ3OAUF/IQcgCUEjRg3RAQNAIAcgC0cEQCAGIAwgB0EDdGopAwAQDyAHQQFqIQcMAQsLIAggC0F/c0EDdGoiCCABNwMAIAhBCGohBwzKAQsgCi8AASEJIBIgCkEDaiINNgIgQX4hByAGIAggCUEDdGsiC0EQaykDACALQQhrKQMAIAkgC0EAEIoEIgFCgICAgHCDQoCAgIDgAFENzQEDQCAHIAlHBEAgBiALIAdBA3RqKQMAEA8gB0EBaiEHDAELCyAIQX4gCWtBA3RqIgggATcDACAIQQhqIQcMyQELIAovAAEhCyASIApBA2oiDTYCICAGIAggC0EDdGsiDEEIaykDACAMQRBrKQMAQoCAgIAwIAsgDEEAENgBIgFCgICAgHCDQoCAgIDgAFENzAFBfiEHIAlBJUYNzwEDQCAHIAtHBEAgBiAMIAdBA3RqKQMAEA8gB0EBaiEHDAELCyAIQX4gC2tBA3RqIgggATcDACAIQQhqIQcMyAELIApBA2ohDSAKLwABIQsgBhA+IgFCgICAgHCDQoCAgIDgAFENywEgCCALQQN0ayEJQQAhBwJAA0AgByALRg0BIAYgASAHQYCAgIB4ciAJIAdBA3RqIgwpAwBBh4ABEBkhDyAMQoCAgIAwNwMAIAdBAWohByAPQQBODQALIAYgARAPDMwBCyAJIAE3AwAgCUEIaiEHDMcBCyAKQQNqIQ0gBiAIQRhrIgkpAwAgCCAIQRBrIgcgCi8AARCdAyIBQoCAgIBwg0KAgICA4ABRDcoBIAYgCSkDABAPIAYgBykDABAPIAYgCEEIaykDABAPIAkgATcDAAzGAQtCgICAgBAhLgJAIAhBCGspAwAiAUL/////b1YNAEKBgICAECEuIAFCgICAgHCDQoCAgIAwUQ0AIABBlPgAQQAQFQzKAQsgCCAuNwMAIAhBCGohBwzFAQsgM0KAgICAMFINvgEgBkHRlAFBABAVDMgBCyAIQQhrKQMAIi1C/////29YDb8BIAhBEGspAwAhASAtpyIHLwEGEO4BRQ2/ASAHKAIoIgdFDb8BIAcoAhAiCUEwaiELIAkgCSgCGEF/c0ECdEHAeXJqKAIAIQkCQANAIAkEQCALIAlBAWtBA3QiCWoiDCgCBEHPAUYNAiAMKAIAQf///x9xIQkMAQsLIAZBn/UAQQAQFQzIAQsgAUKAgICAcFQNvwEgBygCFCAJaikDACItQoCAgIBwg0KAgICAgH9SDb8BIAYoAhAgLRCNAiEJIAGnKAIQIgdBMGohCyAHIAkgBygCGHFBf3NBAnRqKAIAIQcDQCAHBEAgCyAHQQFrQQN0aiIHKAIEIAlGDb8BIAcoAgBB////H3EhBwwBCwsgBkGuMEEAEBUMxwELIAhBCGsiDCkDACIBQv////9vWA2+ASAIQRBrIgkpAwAhLSABpyILKAIQIgdBMGohDyAHIAcoAhhBf3NBAnRBwHlyaigCACEHAkACQANAIAcEQCAPIAdBAWtBA3QiB2oiECgCBEHPAUYNAiAQKAIAQf///x9xIQcMAQsLIAZB9wAQ4AUiAUKAgICAcINCgICAgOAAUQ3IASAGIAtBzwFBBxB6IgdFBEAgBiABEA8MyQELIAFCIIinQXVPBEAgAaciCyALKAIAQQFqNgIACyAHIAE3AwAMAQsgCygCFCAHaikDACIBQiCIp0F1SQ0AIAGnIgcgBygCAEEBajYCAAsgBigCECABEI0CIQcgLUL/////b1gEQCAGECQgBiAHEBMMxwELIAYgLacgB0EHEHohCyAGIAcQEyALRQ3GASALQoCAgIAwNwMAIAYgCSkDABAPIAYgDCkDABAPIAkhBwzCAQsgBiAIQQhrIggpAwAQigEMxQELIApBBmohDSAKKAABIQcCQAJAAkACQAJAAkAgCi0ABSIJDgUAAQIDBAULIAYgB0HOHRCPAQzJAQsgBiAHEN8FDMgBCyAGIAcQ2QEMxwELIAZBvpcBQQAQxgIMxgELIAZBxvEAQQAQFQzFAQsgDiAJNgIQIAZB3fsAIA5BEGoQRgzEAQsgCi8AASEJIAovAAMhDCASIApBBWoiDTYCIEF/IQcCfiAGIAggCUEDdGsiC0EIayIPKQMAIAYpA7gBEFIEQCAGQoCAgIAwIAkEfiALKQMABUKAgICAMAtBAiAMQQFrEJwDDAELIAYgDykDAEKAgICAMEKAgICAMCAJIAtBABDYAQsiAUKAgICAcINCgICAgOAAUQ3DAQNAIAcgCUcEQCAGIAsgB0EDdGopAwAQDyAHQQFqIQcMAQsLIAggCUF/c0EDdGoiCCABNwMAIAhBCGohBwy/AQsgCkEDaiENIAovAAEhDyAGIA5B4ABqIAhBCGsiBykDABCJBCIJRQ3CAQJ+IAYgCEEQayILKQMAIAYpA7gBEFIEQCAGQoCAgIAwIA4oAmAiDAR+IAkpAwAFQoCAgIAwC0ECIA9BAWsQnAMMAQsgBiALKQMAQoCAgIAwIA4oAmAiDCAJECELIQEgBiAJIAwQmwMgAUKAgICAcINCgICAgOAAUQ3CASAGIAspAwAQDyAGIAcpAwAQDyALIAE3AwAMvgELIAhBEGsiByAGQoCAgIAwIAcpAwAgCEEIayIHKQMAEN4FNwMADL0BCyAGIAhBCGsiBykDABDoASIBQoCAgIBwg0KAgICA4ABRDcABIAYgBykDABAPIAcgATcDAAy2AQsgCEEIayIHKQMAIQECQCAGEOIFIglFBEBCgICAgCAhLgwBCyAGIAkQXCEuIAYgCRATIC5CgICAgHCDQoCAgIDgAFENwAELIAYgDkGAAWoQzQIiLUKAgICAcINCgICAgOAAUQRAIAYgLhAPDMABCyAOIA4pA4ABIi83A2AgDiABNwN4IA4gLjcDcCAOIA4pA4gBIgE3A2ggBkE8QQQgDkHgAGoQmgMgBiAuEA8gBiAvEA8gBiABEA8gBiAHKQMAEA8gByAtNwMADLUBCyAKQQVqIQ0gGygCACgCECIHQTBqIQwgByAKKAABIgkgBygCGHFBf3NBAnRqKAIAIQcCQANAIAcEQEEBIQsgDCAHQQFrQQN0aiIHKAIEIAlGDQIgBygCAEH///8fcSEHDAELCyAGIAYpA8ABIAkQcSILQQBIDb8BCyAIIAtBAEetQoCAgIAQhDcDACAIQQhqIQcMugELIAlBN2shCyAKQQVqIQ0gGygCACIMKAIQIgdBMGohDyAHIAooAAEiCSAHKAIYcUF/c0ECdGooAgAhBwJAAkADQCAHRQ0BIAkgDyAHQQFrQQN0IgdqIhAoAgRHBEAgECgCAEH///8fcSEHDAELCyAMKAIUIAdqKQMAIi5CgICAgHCDIgFCgICAgMAAUQRAIAYgCRDZAQzAAQsgLkIgiKdBdUkNASAupyIHIAcoAgBBAWo2AgAMAQsgBiAGKQPAASIBIAkgASALEBQiLkKAgICAcIMhAQsgAUKAgICA4ABRDb0BIAggLjcDACAIQQhqIQcMuQELIApBBWohDSAGIAooAAEgCEEIayIHKQMAIAlBOWsQ3QVBAEgNagy4AQsgCkEFaiENIAooAAEhCSAIQRBrIgcoAgBFBEAgBiAJEMcCDLwBCyAGIAkgCEEIaykDAEECEN0FIghBAE4NtwEgCEEedkECcQy4AQsgCkEGaiENIBkoAgAiDCgCECIJQTBqIQ8gCSAKKAABIgcgCSgCGHFBf3NBAnRqKAIAIQkgCiwABSELAkADQCAJRQ0BIAcgCUEDdCAPakEIayIJKAIERwRAIAkoAgBB////H3EhCQwBCwsgC0EASARAIAktAANBBHENsQEMswELIAtBwABxRQ2wASAJKAIAIglBgICAIHENsAEgCUGAgICAfHFBgICAgARGDa8BIAlBgICAwAFxQYCAgMABRg2wAQyvAQsgC0EATg2tAQyvAQsgCiwABSIHQQFxQQZyIAdBAnFBBXIgB0EATiIHGyEQIBkgGyAHGygCACIJKAIQIgwgCigAASIPIAwoAhhxQX9zQQJ0aigCACELIApBBmohDSAMQTBqIQwDQCALBEAgDCALQQFrQQN0aiILKAIEIA9GDbEBIAsoAgBB////H3EhCwwBCwsgCS0ABUEBcUUNrwEgBiAJIA8gEBB6IglFDbkBIAlCgICAgDBCgICAgMAAIAcbNwMADK8BCyAKQQZqIQ0gGSkDACIBpygCECIHQTBqIQwgByAKKAABIgsgBygCGHFBf3NBAnRqKAIAIQcgCi0ABSEPIAYgASALIAhBCGsiCSkDAEKAgICAMEKAgICAMAJ/AkADQCAHRQ0BIAdBA3QgDGpBCGsiECgCACEHIAsgECgCBEcEQCAHQf///x9xIQcMAQsLQYDAASAHQYCAgCBxRQ0BGgsgD0GGzgFyCxBtQQBIDbgBIAYgCSkDABAPIAkhBwy0AQsgESAKLwABQQN0aikDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCkEDaiENIAggATcDACAIQQhqIQcMswELIAYgESAKLwABQQN0aiAIQQhrIgcpAwAQICAKQQNqIQ0MsgELIBEgCi8AAUEDdGohByAIQQhrKQMAIgFCIIinQXVPBEAgAaciDSANKAIAQQFqNgIACyAKQQNqIQ0gBiAHIAEQIAyrAQsgFSAKLwABQQN0aikDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCkEDaiENIAggATcDACAIQQhqIQcMsAELIAYgFSAKLwABQQN0aiAIQQhrIgcpAwAQICAKQQNqIQ0MrwELIBUgCi8AAUEDdGohByAIQQhrKQMAIgFCIIinQXVPBEAgAaciDSANKAIAQQFqNgIACyAKQQNqIQ0gBiAHIAEQIAyoAQsgESAKLQABQQN0aikDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCkECaiENIAggATcDACAIQQhqIQcMrQELIAYgESAKLQABQQN0aiAIQQhrIgcpAwAQICAKQQJqIQ0MrAELIBEgCi0AAUEDdGohByAIQQhrKQMAIgFCIIinQXVPBEAgAaciDSANKAIAQQFqNgIACyAKQQJqIQ0gBiAHIAEQIAylAQsgESkDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAhBCGohBwyqAQsgHSkDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAhBCGohBwypAQsgHikDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAhBCGohBwyoAQsgHykDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAhBCGohBwynAQsgBiARIAhBCGsiBykDABAgDKYBCyAGIB0gCEEIayIHKQMAECAMpQELIAYgHiAIQQhrIgcpAwAQIAykAQsgBiAfIAhBCGsiBykDABAgDKMBCyAIQQhrKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIBEgARAgDJwBCyAIQQhrKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIB0gARAgDJsBCyAIQQhrKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIB4gARAgDJoBCyAIQQhrKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIB8gARAgDJkBCyAVKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAIIAE3AwAgCEEIaiEHDJ4BCyAgKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAIIAE3AwAgCEEIaiEHDJ0BCyAhKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAIIAE3AwAgCEEIaiEHDJwBCyAiKQMAIgFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAIIAE3AwAgCEEIaiEHDJsBCyAGIBUgCEEIayIHKQMAECAMmgELIAYgICAIQQhrIgcpAwAQIAyZAQsgBiAhIAhBCGsiBykDABAgDJgBCyAGICIgCEEIayIHKQMAECAMlwELIAhBCGspAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAYgFSABECAMkAELIAhBCGspAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAYgICABECAMjwELIAhBCGspAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAYgISABECAMjgELIAhBCGspAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAYgIiABECAMjQELIBQoAgAoAhApAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDACAIQQhqIQcMkgELIBQoAgQoAhApAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDACAIQQhqIQcMkQELIBQoAggoAhApAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDACAIQQhqIQcMkAELIBQoAgwoAhApAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDACAIQQhqIQcMjwELIAYgFCgCACgCECAIQQhrIgcpAwAQIAyOAQsgBiAUKAIEKAIQIAhBCGsiBykDABAgDI0BCyAGIBQoAggoAhAgCEEIayIHKQMAECAMjAELIAYgFCgCDCgCECAIQQhrIgcpAwAQIAyLAQsgFCgCACgCECEHIAhBCGspAwAiAUIgiKdBdU8EQCABpyIKIAooAgBBAWo2AgALIAYgByABECAMhAELIBQoAgQoAhAhByAIQQhrKQMAIgFCIIinQXVPBEAgAaciCiAKKAIAQQFqNgIACyAGIAcgARAgDIMBCyAUKAIIKAIQIQcgCEEIaykDACIBQiCIp0F1TwRAIAGnIgogCigCAEEBajYCAAsgBiAHIAEQIAyCAQsgFCgCDCgCECEHIAhBCGspAwAiAUIgiKdBdU8EQCABpyIKIAooAgBBAWo2AgALIAYgByABECAMgQELIBQgCi8AAUECdGooAgAoAhApAwAiAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIApBA2ohDSAIIAE3AwAgCEEIaiEHDIYBCyAGIBQgCi8AAUECdGooAgAoAhAgCEEIayIHKQMAECAgCkEDaiENDIUBCyAUIAovAAFBAnRqKAIAKAIQIQcgCEEIaykDACIBQiCIp0F1TwRAIAGnIg0gDSgCAEEBajYCAAsgCkEDaiENIAYgByABECAMfgsgCkEDaiENIBQgCi8AASIHQQJ0aigCACgCECkDACIBQoCAgIBwg0KAgICAwABSBEAgAUIgiKdBdU8EQCABpyIHIAcoAgBBAWo2AgALIAggATcDACAIQQhqIQcMhAELIAYgEyAHQQEQxQIMhwELIApBA2ohDSAUIAovAAEiB0ECdGooAgAoAhAiCTUCBEIghkKAgICAwABSBEAgBiAJIAhBCGsiBykDABAgDIMBCyAGIBMgB0EBEMUCDIYBCyAKQQNqIQ0gFCAKLwABIgdBAnRqKAIAKAIQIgk1AgRCIIZCgICAgMAAUgRAIAYgEyAHQQEQxQIMhgELIAYgCSAIQQhrIgcpAwAQIAyBAQsgBiARIAovAAFBA3RqQoCAgIDAABAgIApBA2ohDQx6CyAKQQNqIQ0gESAKLwABIgdBA3RqKQMAIgFCgICAgHCDQoCAgIDAAFIEQCABQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAhBCGohBwyAAQsgBiATIAdBABDFAgyDAQsgCkEDaiENIBEgCi8AASIHQQN0aiIJNQIEQiCGQoCAgIDAAFIEQCAGIAkgCEEIayIHKQMAECAMfwsgBiATIAdBABDFAgyCAQsgCkEDaiENIBEgCi8AAUEDdGoiBzUCBEIghkKAgICAwABSBEAgBkHk7wBBABDGAgyCAQsgBiAHIAhBCGsiBykDABAgDH0LIBIoAhwhCSANLwAAIQsDQCAJIgcgKEYNYSAHKAIEIQkgB0ECay8BACALRw0AIAdBA2siDS0AAEECcQ0AIBIoAhQgC0EDdGopAwAiAUIgiKdBdU8EQCABpyIMIAwoAgBBAWo2AgALIAcgATcDECAHIAdBEGo2AgggBygCACIMIAk2AgQgCSAMNgIAIAdBADYCACANIA0tAABBAXI6AAAgBigCECENIAdBBGtBAzoAACANKAJQIgwgBzYCBCAHIA1B0ABqNgIEIAcgDDYCACANIAc2AlAMAAsACyAKLwAFIQsgCigAASEMIAggBkKAgICAIBBHIgE3AwAgCEEIaiEHIApBB2ohDQJAAkAgAUKAgICAcINCgICAgOAAUQ0AAkAgCUH6AEYEQCAUIAtBAnRqKAIAIgkgCSgCAEEBajYCAAwBCyAGIBIgCyAJQfkARhCLBCIJRQ0BCyAGIAgoAgAgDEEiEHoiCw0BIBYgCRDrAQsgByEIDIABCyALIAk2AgAgCCAGIAwQXDcDCCAIQRBqIQcMewsgCkEFaiENIBspAwAiLqciCygCECIHQTBqIQwgByAKKAABIgkgBygCGHFBf3NBAnRqKAIAIQcCQAJAAkACQANAIAdFDQEgCSAMIAdBAWtBA3QiD2oiBygCBEcEQCAHKAIAQf///x9xIQcMAQsLIAsoAhQgD2o1AgRCIIZCgICAgMAAUQRAIAYgCRDZAQyDAQsgBy0AA0EIcUUNAyAuQiCIp0F0Sw0BDAILIAYgBikDwAEgCRBxIgdBAEgNgQEgB0UEQEKAgICAMCEuDAILIBkpAwAiLkIgiKdBdUkNASAupyELCyALIAsoAgBBAWo2AgALIAggLjcDACAIIAYgCRBcNwMIIAhBEGohBwx7CyAGIAlBzh0QjwEMfgsgDSANKAAAaiENIAghByAGEHtFDXkMfQsgDSANLgAAaiENIAghByAGEHtFDXgMfAsgDSANLAAAaiENIAghByAGEHtFDXcMewsgCkEFaiEJAn8gCEEIayIHKQMAIgFC/////z9YBEAgAacMAQsgBiABECYLBH8gDSgAACAJakEEawUgCQshDSAGEHtFDXYMKAsgCkEFaiEJAn8gCEEIayIHKQMAIgFC/////z9YBEAgAacMAQsgBiABECYLBH8gCQUgDSgAACAJakEEawshDSAGEHtFDXUMJwsgCkECaiEJAn8gCEEIayIHKQMAIgFC/////z9YBEAgAacMAQsgBiABECYLBH8gDSwAACAJakEBawUgCQshDSAGEHtFDXQMJgsgCkECaiEJAn8gCEEIayIHKQMAIgFC/////z9YBEAgAacMAQsgBiABECYLBH8gCQUgDSwAACAJakEBawshDSAGEHtFDXMMJQsgCCANIAooAAFqIBMoAhRrrUKAgICA0ACENwMAIApBBWohDSAIQQhqIQcMcgsgCigAASEHIAggCiATKAIUa0EFaq03AwAgByANaiENIAhBCGohBwxxCwJAIAhBCGsiBykDACIBQv////8PVg0AIAGnIgkgEygCGE8NACATKAIUIAlqIQ0McQsgBkH14QBBABBGDHQLIAhBCGsiDykDACItQiCIpyIHQQFqIglBBE1BAEEBIAl0QRlxG0UEQCAGIC0Q3AUhLQsCQCAGQRgQKSIJBEAgBkKAgICAIEEREEkiLkKAgICAcINCgICAgOAAUg0BIAYoAhAiB0EQaiAJIAcoAgQRAAALIC0hLgxlCyAJQQA2AhAgCSAtNwMAIAlBADYCCCAupyAJNgIgIAdBfnFBAkYNZSAtIgFCIIinIgdBdU8EQCAtpyILIAsoAgBBAWo2AgALA0AgBiABEIwCIgFCgICAgHCDIi9CgICAgCBSBEAgL0KAgICA4ABRDWYgBiAOQeAAaiAOQYABaiABp0EREI4BDWUgBiAOKAJgIA4oAoABIgsQWiALBEAgBiABEA8gB0F1SQ1lIC2nIgcgBygCAEEBajYCAAxlCyAGEHtFDQEMZQsLAkACQCAtpyIMLQAFQQhxRQ0AQQAhByAMKAIQIgsoAiAiEEEAIBBBAEobIRAgC0EwaiELA0AgByAQRg0CIAstAANBEHENASALQQhqIQsgB0EBaiEHDAALAAsgBiAOQeAAaiAOQYABaiAMQREQjgENZUEAIQcgDigCYCEKIA4oAoABIQkDQCAHIAlHBEAgBiAuIAogB0EDdGooAgRCgICAgCBBABDQARogB0EBaiEHDAELCyAGIAogCRBaDGYLIAlBATYCCCAJIAwoAig2AgwMZQtCgYCAgBAhLgJAIAhBCGspAwAiLUKAgICAcFQNACAtpyILLwEGQRFHDQAgCygCICEHA0ACQCAHKAIIBEAgBygCECIJIAcoAgxPDQMgByAJQQFqNgIQIAlBgICAgHhyIQkMAQsgBygCECIMIAsoAhAiCSgCIE8NAiAJQTBqIAxBA3RqIg8oAgQhCSAHIAxBAWo2AhAgCUUNASAPLQADQRBxRQ0BCyAGIAcpAwAgCRBxIgxBAEgNdCAMRQ0AC0KAgICAECEuIAYgCRBcIQELIAggLjcDCCAIIAE3AwAgCEEQaiEHDG4LIAYgCEEAEJkDDXEgCEKAgICA0AA3AwggCEEQaiEHDG0LIAotAAEhCUEBIQcgDkEBNgJgIApBAmohDUKAgICAMCEuIAhBfSAJa0EDdGoiCykDACIBQoCAgIBwg0KAgICAMFENXiAGIAEgCEF+IAlrQQN0aikDACAOQeAAahCuASIuQoCAgIBwg0KAgICA4ABRBEBBfyEHIA5BfzYCYAxeCyAOKAJgIgcNXUEAIQcMXgsgBiAIQQEQmQMNbyAIQoCAgIDQADcDCCAIQRBqIQcMawsgCEEIayIHKQMAIgFC/////29YBEAgBkGOMUEAEBUMbwsgBiABIA5B4ABqENsFIi1CgICAgHCDQoCAgIDgAFENbiAGIAEQDyAHIC03AwAgCCAOKAJgQQBHrUKAgICAEIQ3AwAgCEEIaiEHDGoLIAhBCGspAwBC/////29WDWMgBkGOMUEAEBUMbQsgBiAIQRBrIgkpAwAQDyAIQRhrIgcpAwAiAUKAgICAcINCgICAgDBRDWggBiABQQAQrQEEQCAJIQgMbQsgBiAHKQMAEA8MaAsgCEEIayIIKQMAIQEDQAJAIAggHE0NACAIQQhrIgcpAwAiLUKAgICAcINCgICAgNAAUQ0AIAYgLRAPIAchCAwBCwsgCCApSQRAIAZB3coAQQAQRiAGIAEQDwxsCyAIIAhBCGsiBykDADcDACAIQRBrIgopAwAhLSAKIAhBGGsiCikDADcDACAHIC03AwAgCiABNwMAIAhBCGohBwxnCyAGIAhBGGspAwAgCEEgaykDAEEBIAhBCGsiBxAhIgFCgICAgHCDQoCAgIDgAFENaiAGIAcpAwAQDyAHIAE3AwAMYAsgCkECaiENIAggBiAIQSBrIgcpAwAiAUEXQQYgCi0AASIJQQFxGyABQQAQFCIBQoCAgIBwgyItQoCAgIAgUSAtQoCAgIAwUXIEfkKBgICAEAUgLUKAgICA4ABRDWogBykDACEtAn4gCUECcQRAIAYgASAtQQBBABAvDAELIAYgASAtQQEgCEEIaxAvCyIBQoCAgIBwg0KAgICA4ABRDWogBiAIQQhrIgcpAwAQDyAHIAE3AwBCgICAgBALNwMAIAhBCGohBwxlCwJ/IAhBCGsiBykDACIBQv////8/WARAIAGnQQBHDAELIAYgARAmCyEKIAcgCkWtQoCAgIAQhDcDAAxeCyAKQQVqIQ0gBiAIQQhrIgcpAwAiASAKKAABIAFBABAUIgFCgICAgHCDQoCAgIDgAFENZyAGIAcpAwAQDyAHIAE3AwAMXQsgCkEFaiENIAYgCEEIaykDACIBIAooAAEgAUEAEBQiAUKAgICAcINCgICAgOAAUQ1mIAggATcDACAIQQhqIQcMYgsgBiAIQRBrIgcpAwAgCigAASAIQQhrKQMAQYCAAhDQASEIIAYgBykDABAPIApBBWohDSAIQQBODWEMEwsgCkEFaiENIAYgCigAARDgBSIBQoCAgIBwg0KAgICA4ABRDWQgCCABNwMAIAhBCGohBwxgCyAIQQhrIQcCQCAIQRBrIgkpAwAiAUL/////b1gEQCAGECRCgICAgOAAIS4MAQsgBykDACItQoCAgIBwg0KAgICAgH9SBEAgBhCIBEKAgICA4AAhLgwBCyAGKAIQIC0QjQIhCCABpyIMKAIQIgtBMGohDyALIAggCygCGHFBf3NBAnRqKAIAIQsCQANAIAsEQCAPIAtBAWtBA3QiC2oiECgCBCAIRg0CIBAoAgBB////H3EhCwwBCwsgBiAIENoFQoCAgIDgACEuDAELIAwoAhQgC2opAwAiLkIgiKdBdUkNACAupyIIIAgoAgBBAWo2AgALIAYgBykDABAPIAYgCSkDABAPIAkgLjcDACAuQoCAgIBwg0KAgICA4ABSDV8MEQsgCEEQaykDACEBIAhBCGshCQJAAkAgCEEYayIHKQMAIi1C/////29YBEAgBhAkDAELIAkpAwAiLkKAgICAcINCgICAgIB/UgRAIAYQiAQMAQsgBigCECAuEI0CIQggLaciDCgCECILQTBqIQ8gCyAIIAsoAhhxQX9zQQJ0aigCACELA0AgCwRAIA8gC0EBa0EDdCILaiIQKAIEIAhGDQMgECgCAEH///8fcSELDAELCyAGIAgQ2gULIAYgARAPIAYgBykDABAPIAYgCSkDABAPIAchCAxjCyAGIAwoAhQgC2ogARAgIAYgBykDABAPIAYgCSkDABAPDF4LIAhBGGshByAIQQhrKQMAIQEgCEEQayEIAkACQCAHKQMAIi1C/////29YBEAgBhAkDAELIAgpAwAiLkKAgICAcINCgICAgIB/UgRAIAYQiAQMAQsgBigCECAuEI0CIQcgLaciCygCECIJQTBqIQwgCSAHIAkoAhhxQX9zQQJ0aigCACEJAkADQCAJRQ0BIAcgDCAJQQFrQQN0aiIJKAIERwRAIAkoAgBB////H3EhCQwBCwsgBiAHQZgzEI8BDAELIAYgCyAHQQcQeiIHDQELIAYgARAPIAYgCCkDABAPDGILIAcgATcDACAGIAgpAwAQDwxXCyAKQQVqIQ0gBiAIQRBrKQMAIAooAAEgCEEIayIHKQMAQYeAARAZQQBODVwMDgsgCkEFaiENIAghByAGIAhBCGspAwAgCigAARDZBUEATg1bDF8LIAghByAGIAhBCGspAwAgCEEQaykDABDYBUEATg1aDF4LIAhBCGsiBykDACIBQv////9vWCABQoCAgIBwg0KAgICAIFJxRQRAIAYgCEEQaykDACABQQEQiwJBAEgNXgsgBiABEA8MWQsgBiAIQQhrKQMAIAhBEGspAwAQhwQMUgsgCAJ/IAlB1QBGBEBBfSAGIAhBEGspAwAQMSILDQEaDF0LIApBBWohDSAKKAABIQtBfgtBA3RqIQcCfgJ+AkACQAJAIA0tAAAiDEEDcQ4CAAECC0GDzgEhCiAIQQhrKQMAIgEhL0KAgICAMAwCC0KAgICAMCEvQYGaASEKQoCAgIAwIS0gCEEIaykDACIBDAILQoCAgIAwIS9BgaoBIQogCEEIaykDACIBCyEtQoCAgIAwCyExIAcpAwAhMEG2mQEhByAGIAsQ1wUhLgJAIApBgBBxRQRAQbGZASEHIApBgCBxRQ0BCyAGIAcgLkHMngEQvgEhLgsgCEEIayEHAn9BfyAuQoCAgIBwg0KAgICA4ABRDQAaQX8gBiABQTYgLkEBEBlBAEgNABogBiABIDAQhwQgBiAwIAsgLyAxIC0gCiAMQQRxchBtCyEKIAYgBykDABAPIA1BAWohDSAIIAlB1QBGBH8gBiALEBMgBiAIQRBrKQMAEA9BfgVBfwtBA3RqIQcgCkEATg1XIApBHnZBAnEMWAsgCkEGaiENIAhBCGsiDCkDACExIAhBEGshCyAKKAABIQ8CQAJAIAotAAVBAXEEQEKAgICAICEtIAspAwAiMEKAgICAcINCgICAgCBRBEAgBikDMCIwQiCIp0F0Sw0CDAMLQoCAgIAwIS9BgT4hByAwQoCAgIBwVA1GIDCnLQAFQRBxRQ1GIAYgMEE7IDBBABAUIi1CgICAgHCDIgFCgICAgCBRDQIgAUKAgICA4ABRDUggLUKAgICAcFoNAkG70wAhBwxHCyAGKAIoKQMIIi1CIIinQXVPBEAgLaciByAHKAIAQQFqNgIACyAGKQMwIjBCIIinQXVJDQELIDCnIgcgBygCAEEBajYCAAtCgICAgOAAIS8gBiAtEEciAUKAgICAcINCgICAgOAAUQ1FIDGnIgctABFBMHENP0KAgICA4AAhLiAGIDBBDRBJIi9CgICAgHCDQoCAgIDgAFENQkKAgICAMCExIAYgLyAHIBQgEhDWBSIuQoCAgIBwg0KAgICA4ABRDUIgBiAuIAEQhwQgLkKAgICAcFoEQCAupyIQIBAtAAVBEHI6AAULIAYgLkEwIAczASxBARAZGgJAIAlB1wBGBEAgBiAuIAhBGGspAwAQ2AVBAEgNRAwBCyAGIC4gDxDZBUEASA1DCyAuQiCIp0F1TwRAIC6nIgcgBygCAEEBajYCAAsgBiABQTwgLkGDgAEQGUEASA1CIAFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIC5BOyABQYCAARAZQQBIDUIgBiAtEA8gBiAwEA8gCyAuNwMAIAwgATcDAAxQCyAGIAhBEGsiCSkDACAIQQhrIgcpAwAQTSEBIAYgCSkDABAPIAkgATcDACABQoCAgIBwg0KAgICA4ABSDVUMBwsgCEEIayIHIAYgCEEQaykDACAHKQMAEE0iATcDACAIIQcgAUKAgICAcINCgICAgOAAUg1UDFgLIAhBCGspAwAhASAIQRBrKQMAIi1CgICAgHCDQoCAgIAwUQRAIAYgARAxIgdFDVggBiAHEMcCIAYgBxATDFgLIAFCIIinQXVPBEAgAaciByAHKAIAQQFqNgIACyAGIC0gARBNIgFCgICAgHCDQoCAgIDgAFENVyAIIAE3AwAgCEEIaiEHDFMLIAYgCEEIayIMKQMAEDEiCUUNViAGIAhBEGsiBykDACAJIAhBGGsiCykDAEEAEBQhASAGIAkQEyABQoCAgIBwg0KAgICA4ABRDVYgBiAMKQMAEA8gBiAHKQMAEA8gBiALKQMAEA8gCyABNwMADFILIAYgCEEYayIHKQMAIAhBEGspAwAgCEEIaykDAEGAgAIQ1wEhCCAGIAcpAwAQDyAIQQBODVEMAwsgBigCECgCjAEhCQJ/AkAgCEEYayIHKQMAIi5CgICAgHCDQoCAgIAwUQRAAkAgCUUNACAJLQAoQQFxRQ0AIAYgCEEQaykDABAxIgdFDVggBiAHEMcCIAYgBxATDFgLIBkpAwAiLkIgiKdBdU8EQCAupyIKIAooAgBBAWo2AgALIAcgLjcDAAwBCyAJRQ0AQYCABiAJKAIoQQFxDQEaC0GAgAILIQogBiAuIAhBEGspAwAgCEEIaykDACAKENcBIQggBiAHKQMAEA8gCEEATg1QIAhBHnZBAnEMUQsgCEEYayIJKQMAQv////9vWA1LIAYgCEEQayIMKQMAEDEiC0UNUyAGIAkpAwAgCyAIQQhrKQMAIAhBIGsiBykDAEGAgAIQhgQhCCAGIAsQEyAGIAcpAwAQDyAGIAkpAwAQDyAGIAwpAwAQDyAIQQBODU8gCEEedkECcQxQCyAIQRhrKQMAIS0gCEEQaykDACIBQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgBiAtIAEgCEEIayIHKQMAQYeAARC9AUEATg1OCyAHIQgMUQsgCEEQayIMKQMAIi5CgICAgBBaBEAgBkH28gBBABBGDFELIAYgCEEIayIHKQMAIgFB0QEgAUEAEBQiAUKAgICAcINCgICAgOAAUQ1QIAFBPUEBEIUEIQsgBiABEA8gBiAHKQMAQQAQ5wEiAUKAgICAcINCgICAgOAAUQ1QIAYgAUHqACABQQAQFCItQoCAgIBwg0KAgICA4ABRBEAgBiABEA8MUQsgLqchCQJAAkAgC0UNACAtQT5BABCFBEUNACAHKQMAIi4gDkHgAGogDkGAAWoQigJFDQAgBiAOQZwBaiAuENYBDTkgDigCnAEiDyAOKAKAAUcNACAIQRhrIRBBACELIA4oAmAhIwNAIAsgD0YNAiAQKQMAIS8gIyALQQN0aikDACIuQiCIp0F1TwRAIC6nIhggGCgCAEEBajYCAAsgBiAvIAkgLkEHEK8BIRggC0EBaiELIAlBAWohCSAYQQBODQALDDkLIAhBGGshCwNAIAYgASAtIA5BnAFqEK4BIi5CgICAgHCDQoCAgIDgAFENOSAOKAKcAQ0BIAYgCykDACAJIC5BBxCvAUEASA05IAlBAWohCQwACwALIAwgCa03AwAgBiABEA8gBiAtEA8gBiAHKQMAEA8MTAsgCkECaiENIAghByAGIAggCi0AASIJQX9zIgtBA3RBYHJqKQMAIAggC0EBdEFAckF4cWopAwAgCCAJQQV2QX9zQQN0aikDAEEAENQFRQ1LDE8LAkAgCEEIayIHKQMAIgFCIIinIgsgCEEQayIJKQMAIi1CIIinIgxyRQRAIAHEIC3EfCIBQoCAgIAIfEL/////D1YNASAJIAFC/////w+DNwMADEwLIAxBB2tBbUsgC0EHa0FtS3INACAJQoCAgIDAfiAtQoCAgIDAgYD8/wB8vyABQoCAgIDAgYD8/wB8v6C9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhs3AwAMSwsgBiAIENMFRQ1KDE4LIApBAmohDQJAIAhBCGsiCCkDACItIBEgCi0AAUEDdGoiBykDACIBhEL/////D1gEQCAtxCABxHwiLUKAgICACHxC/////w9WDQEgByAtQv////8PgzcDAAxFCyABQoCAgIBwg0KAgICAkH9SDQAgBiAtQQIQmgEiLUKAgICAcINCgICAgOAAUQ1OIAcpAwAiAUIgiKdBdU8EQCABpyIJIAkoAgBBAWo2AgALIAYgASAtEMQCIgFCgICAgHCDQoCAgIDgAFENTiAGIAcgARAgDEQLIAFCIIinQXVPBEAgAaciCSAJKAIAQQFqNgIACyAOIAE3AyAgDiAIKQMANwMoIAYgLBDTBQ1NIAYgByAOKQMgECAMQwsgCEEIayIHKQMAIgFCIIinIgwgCEEQayILKQMAIi1CIIinIg9yRQRAIC3EIAHEfSIBQoCAgIAIfEL/////D1YNBCALIAFC/////w+DNwMADEkLIA9BB2tBbUsgDEEHa0FtS3INAyALQoCAgIDAfiAtQoCAgIDAgYD8/wB8vyABQoCAgIDAgYD8/wB8v6G9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhs3AwAMSAsCfCAIQQhrIgcpAwAiLUIgiKciDCAIQRBrIgspAwAiLkIgiKciD3JFBEAgLcQgLsR+IgFCgICAgAh8QoCAgIAQWgRAIBItAChBBHFBACABQoCAgICAgIAQfUKBgICAgICAYFQbDQUgAbkMAgtEAAAAAAAAAIAgLSAuhEKAgICACINQIAFCAFJyRQ0BGiALIAFC/////w+DNwMADEkLIA9BB2tBbUsgDEEHa0FtS3INAyASLQAoQQRxDQMgLkKAgICAwIGA/P8AfL8gLUKAgICAwIGA/P8AfL+iCyE0IAtCgICAgMB+IDS9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhs3AwAMRwsgCEEIayIHKQMAIgEgCEEQayILKQMAIi2EQv////8PVg0BIBItAChBBHENASALAn4gLae3IAGnt6MiNL0iAQJ/IDSZRAAAAAAAAOBBYwRAIDSqDAELQYCAgIB4CyIIt71RBEAgCK0MAQtCgICAgMB+IAFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLNwMADEYLIAhBCGsiBykDACIBIAhBEGsiCykDACIthEL/////D1YNACAtpyIMQQBIDQAgAaciD0EATA0AIAsgDCAPcK03AwAMRQsjAEEgayIHJAACfwJAAkACQAJAAn4CQAJAAkACQAJAAkACQEEHIAhBEGsiCykDACIBQiCIpyIMIAxBB2tBbkkbIgxBB0dBByAIQQhrIiMpAwAiLkIgiKciDyAPQQdrQW5JGyIPQQdHckUEQCAHIC5CgICAgMCBgPz/AHw3AwggByABQoCAgIDAgYD8/wB8NwMQDAELAkAgDEF/RiAPQX5xQQJHcUUgDEF+cUECRiAPQX9HcnENACAGIAdBGGogASAuIAlBAUEAEIUCIgxFDQAgBiABEA8gBiAuEA8gDEEASA0MIAsgBykDGDcDAAwJCyAGIAEQbCIBQoCAgIBwg0KAgICA4ABRDQogBiAuEGwiLkKAgICAcINCgICAgOAAUQRAIAYgARAPDAwLQQcgAUIgiKciDCAMQQdrQW5JGyIMQQcgLkIgiKciDyAPQQdrQW5JGyIPckUEQCAupyEMIAGnIQ8CQAJAAkACQAJAAkAgCUGaAWsOBgABAgkFAwQLIC7EIAHEfiEtAkAgBigCECIQKAKMASIYRQ0AIBgtAChBBHFFDQAgLUKAgICAgICAEH1CgYCAgICAgGBUDQgLQgAhASAtQgBSDQogDCAPckEATg0LIAtCgICAgMD+/wM3AwAMDgsgBigCECIQKAKMASIYBEAgGC0AKEEEcQ0HCyALQoCAgIDAfiAPtyAMt6O9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhs3AwAMDQsgDEEASiAPQQBOcUUEQCALAn4gD7cgDLcQjgMiNL0iAQJ/IDSZRAAAAAAAAOBBYwRAIDSqDAELQYCAgIB4CyIJt71RBEAgCa0MAQtCgICAgMB+IAFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLNwMADA0LIA8gDHCtIS0MCAsgBigCECIQKAKMASIYBEAgGC0AKEEEcQ0FCyAPtyE0IAsCfgJ8IAy3IjW9QoCAgICAgID4/wCDQoCAgICAgID4/wBRBEBEAAAAAAAA+H8gNJlEAAAAAAAA8D9hDQEaCyA0IDUQjwMLIjS9IgECfyA0mUQAAAAAAADgQWMEQCA0qgwBC0GAgICAeAsiCbe9UQRAIAmtDAELQoCAgIDAfiABQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbCzcDAAwLCyAJQbIBRg0FDAQLIAHEIC7EfSEtDAULIAxBdUcgD0F1R3FFBEAgBiAJIAsgASAuIAYoAhAoAtgCERoADQwMCQsgDEF3RyAPQXdHcUUEQCAGIAkgCyABIC4gBigCECgCvAIRGgBFDQkMDAsgDEF2RyAPQXZHcUUEQCAGKAIQIRAMAgsgBiAHQRBqIAEQbg0KIAYgB0EIaiAuEG4NCwsCQCAGKAIQIhAoAowBIgxFDQAgDC0AKEEEcUUNACAHKwMQEL0CRQ0AIAcrAwgQvQINAQsCQAJAAkACQAJAAkACQCAJQZoBaw4GAAECCAUEAwsgBysDECAHKwMIoiE0DAULIAcrAxAgBysDCKMhNAwECyAHKwMQIAcrAwgQjgMhNAwDCyAJQbIBRw0EIAcrAxAgBysDCJkiNRCOAyI0RAAAAAAAAAAAY0UNAiA1IDSgITQMAgsgBysDECE1IAcrAwgiNr1CgICAgICAgPj/AINCgICAgICAgPj/AFEEQEQAAAAAAAD4fyE0IDWZRAAAAAAAAPA/YQ0CCyA1IDYQjwMhNAwBCyAHKwMQIAcrAwihITQLIAtCgICAgMB+IDS9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhs3AwAMBwsgBiAJIAsgASAuIBAoAqACERoARQ0GDAkLEAEACyAMRQ0FIAHEIC7EIgGBIi1CAFkNACAMQQBIBEAgLSABfSEtDAELIAEgLXwhLQsgLUKAgICACHxC/////w9WDQEgLSEBCyABQv////8PgwwBC0KAgICAwH4gLbm9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLIQEgCyABNwMAC0EADAMLIAZBAhCEAgwBCyAGIC4QDwsgC0KAgICAMDcDACAjQoCAgIAwNwMAQX8LIQkgB0EgaiQAIAkNSCAIQQhrIQcMRAsgCEEEaygCACIHRSAHQQdrQW5Jcg09IAghByAGIAhBjQEQ5gFFDUMMRwsCQAJ8IAhBCGsiBykDACIBQiCIpyIJRQRARAAAAAAAAACAIAGnIgpFDQEaRAAAAAAAAOBBIApBgICAgHhGDQEaIAdCACABfUL/////D4M3AwAMPwsgCUEHa0FtSw0BIAFCgICAgMD+/wN9vwshNCAHQoCAgIDAfiA0vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbNwMADD0LIAghByAGIAhBjAEQ5gFFDUIMRgsgCEEIayIHKQMAIgFC/////w9WIAFC/////w+DQv////8HUXJFBEAgByABQgF8Qv////8PgzcDAAw8CyAIIQcgBiAIQY8BEOYBRQ1BDEULIAhBCGsiBykDACIBQv////8PViABQv////8Pg0KAgICACFFyRQRAIAcgAUIBfUL/////D4M3AwAMOwsgCCEHIAYgCEGOARDmAUUNQAxECyAGIAhBCGsiBykDABBsIgFCgICAgHCDQoCAgIDgAFEEQCAHQoCAgIAwNwMADEQLIAcgATcDACABQiCIp0F1TwRAIAGnIgcgBygCAEEBajYCAAsgCCABNwMAIAYgCEEIaiIHIAlBAmsQ5gFFDT8MQwsgCkECaiENIBEgCi0AAUEDdGoiBykDACIBQv////8PViABQv////8Pg0L/////B1FyRQRAIAcgAUIBfEL/////D4M3AwAMOQsgAUIgiKdBdU8EQCABpyIJIAkoAgBBAWo2AgALIA4gATcDYCAGICZBjwEQ5gENQiAGIAcgDikDYBAgDDgLIApBAmohDSARIAotAAFBA3RqIgcpAwAiAUL/////D1YgAUL/////D4NCgICAgAhRckUEQCAHIAFCAX1C/////w+DNwMADDgLIAFCIIinQXVPBEAgAaciCSAJKAIAQQFqNgIACyAOIAE3A2AgBiAmQY4BEOYBDUEgBiAHIA4pA2AQIAw3CyAIQQhrIgcpAwAiAUL/////D1gEQCAHIAFC/////w+FNwMADDcLIAghByMAQRBrIgkkAAJ/AkACQAJAIAhBCGsiCykDACIBQoCAgIBwVA0AIAYgCUEIaiABQZUBEMIFIgxBAEgNASAMRQ0AIAYgARAPIAsgCSkDCDcDAAwCCwJAIAYgARBsIgFCgICAgHCDIi1CgICAgOAAUQ0AIAYoAhAiDCgCjAEiDwR/IA8tAChBBHFBAnYFQQALRSAtQoCAgIDgflJxRQRAIAYgC0GVASABIAwoApwCERsADQEMAwsgBiAJQQRqIAEQmAENACALIAk1AgRC/////w+FNwMADAILIAtCgICAgDA3AwALQX8MAQtBAAshCyAJQRBqJAAgC0UNPAxACwJAAkACQCAIQQhrIgcpAwAiASAIQRBrIgspAwAiLYRC/////w9WDQAgAachCSASLQAoQQRxRQ0BIAlBH0sNACAtIAGGQoCAgIAIfEKAgICAEFQNAgsgBiAIQaABEMMCRQ09DEELIAlBH3EhCQsgCyAtpyAJdK03AwAMOwsgCEEIayIHKQMAIgEgCEEQayIJKQMAIi2EQv////8PWARAIAkCfiAtpyABp3YiCEEATgRAIAitDAELQoCAgIDAfiAIuL0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGws3AwAMOwsjAEEQayIJJAAgCEEIayIMKQMAIS0CfwJAAkAgBiAIQRBrIgspAwAQbCIBQoCAgIBwgyIuQoCAgIDgAFEEQCAGIC0QDwwBCyAGIC0QbCItQoCAgIBw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gICAgOAAIQEgACACKQMAEOgBIgZCgICAgHCDQoCAgIDgAFEEQCAAIAUQDwwGCyAAIAYQDyAGpyAFp0YNBAsgACAFEA8gAEGE5ABBABAVC0KAgICA4AAhAQwDCyACKAIQKAIsIgBFBEBCgICAgCAhAQwDCyAAIAAoAgBBAWo2AgAgAK1CgICAgHCEIQEMAgsgACABEI0EIgFCIIinQXVJDQEgAaciACAAKAIAQQFqNgIADAELIAUhAQsgA0EQaiQAIAELCwAgAEGNIkEAEEYLGgAgACgCECABIAIQ7wQiAUUEQCAAEHwLIAELgAEBAn8CQAJAIAFFDQAgASgCACICQQBMDQEgASACQQFrIgI2AgAgAg0AIAEtAAVBAXEEQCAAIAEpAxgQIwsgASgCCCICIAEoAgwiAzYCBCADIAI2AgAgAUIANwIIIABBEGogASAAKAIEEQAACw8LQdaNAUGu/ABB9ChB6t0AEAAACxIAIAFB3gFOBEAgACABEOgFCwvbAQIBfwJ+QQEhBAJAIABCAFIgAUL///////////8AgyIFQoCAgICAgMD//wBWIAVCgICAgICAwP//AFEbDQAgAkIAUiADQv///////////wCDIgZCgICAgICAwP//AFYgBkKAgICAgIDA//8AURsNACAAIAKEIAUgBoSEUARAQQAPCyABIAODQgBZBEBBfyEEIAAgAlQgASADUyABIANRGw0BIAAgAoUgASADhYRCAFIPC0F/IQQgACACViABIANVIAEgA1EbDQAgACAChSABIAOFhEIAUiEECyAECy0BAX9BASEBAkACQAJAIABBDWsOBAIBAQIACyAAQTRGDQELIABBOEYhAQsgAQsfACAAIAEgACACEKoBIgIgAyAEEBkhBCAAIAIQEyAEC0QBAX9BfyEDIAAgACgCBCACahDGAQR/QX8FIAAoAgAgAWoiAyACaiADIAAoAgQgAWsQnAEgACAAKAIEIAJqNgIEQQALC44BAQF/IAAgBkEMEEkiBkKAgICAcINCgICAgOAAUgRAIAAgACgCAEEBajYCACAGpyIHIAU7ASogByAEOgApIAcgAzoAKCAHIAE2AiQgByAANgIgIAcgBy0ABUHvAXEgBEECa0EESUEEdHI6AAUgACAGIAAgAkHMngEgAhsQqgEiASADEJYDIAAgARATCyAGCykBAX9B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IAAgD0ElEEsiCEUNACAAIANB3QEgA0EAEBQiDkKAgICAcIMiDUKAgICA4ABRDQAgDUKAgICAMFEEQCAAIA8QD0EADAILIAAgDkElEEsiC0UNAAJAIAgoAgRFDQAgCygCBEUNACAAIA8QDyAAIA4QD0EADAILIAQQ9wMhBwJ/IAgoAgAiCiALKAIAIgxGBEAgCCAHQQJ0aigCCAwBCyAKIAxLBEAgCEHUAGogDCAHELgFDAELIAtB3ABqIAogBxC4BQsiCkUEQCAJIAdBAnRBwMABajYCACAAQZL6ACAJEBUMAQsCQCAIKAIEBEACfiAFBEAgACACELkCDAELIAAgAiAGEJACCyICQoCAgIBwg0KAgICA4ABSDQEMAgsgAkIgiKdBdUkNACACpyIIIAgoAgBBAWo2AgALAkAgCygCBARAAn4gBQRAIAAgAxC5AgwBCyAAIAMgBhCQAgsiA0KAgICAcINCgICAgOAAUg0BIAAgAhAPDAILIANCIIinQXVJDQAgA6ciBSAFKAIAQQFqNgIACyAKIAooAgBBAWo2AgAgCSACIAMgBEF+cUGkAUYgB0ENRnEiBRs3AxggCSADIAIgBRs3AxAgACAKrUKAgICAcIRCgICAgDBBAiAJQRBqEC8hDSAAIAIQDyAAIAMQDyANQoCAgIBwgyICQoCAgIDgAFENAAJ+IAdBDEYEQCAAIA0QJiAEQaoBRketQoCAgIAQhAwBCyANIAdBDUcNABpCgICAgBAgAkKAgICAMFENABogACANECYgBEF9cUGkAUZHrUKAgICAEIQLIQMgACAPEA8gACAOEA8gASADNwMAQQEMAQsgACAPEA8gACAOEA8gAUKAgICAMDcDAEF/CyEHIAlBIGokACAHC2MCAX8BfiMAQRBrIgIkACAAAn4gAUUEQEIADAELIAIgAa1CACABZyIBQdEAahBnIAIpAwhCgICAgICAwACFQZ6AASABa61CMIZ8IQMgAikDAAs3AwAgACADNwMIIAJBEGokAAvHAQIBfgF/AkAgACgCECgCjAEiA0UgAUL/////////D3xC/v///////x9Wcg0AIAMoAihBBHFFDQAgAUKAgICACHxC/////w9YBEAgAUL/////D4MPC0KAgICAwH4gAbm9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA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ACAAIAEQiANBH3YLvgEBB38gACgCDCIFIQMCQANAIAMiBEUNASAAKAIQIgkgBEEBayIDQQJ0aiIGKAIARQ0ACyAAIAAoAgggBCAFa0EFdGo2AgggBigCAGciBwRAQSAgB2shBUEAIQMDQCADIARGRQRAIAkgA0ECdGoiBiAIIAV2IAYoAgAiCCAHdHI2AgAgA0EBaiEDDAELCyAAIAAoAgggB2s2AggLIAAgASACIARBABCqAw8LIABBgICAgHg2AgggAEEAEEEaQQALTgIBfwF+An4jACICIAAoAhAoAnhJBEAgABDpAUKAgICA4AAMAQsgACABrSABKQMAQoCAgIAwIAEoAgggASgCIEEEENgBCyEDIAIkACADCwwAIABB+swAQQAQFQsLACAAQcMaQQAQFQvVAQEDfyMAQRBrIgUkAEF/IQMCQCAAKAIUDQACQAJAIAFBgICAgAROBEAgACgCAEHA2gBBABBGDAELIAEgACgCDEEDbEECbSIEIAEgBEobIQEgACgCECIEIAJBgAJIckUEQCAAIAEQ9QMhAwwDCyAAKAIAIAAoAgQgASAEdCAEa0ERaiAFQQxqEKgBIgINAQsgABCDAwwBCyAFKAIMIQMgACACNgIEIABB/////wMgAyAAKAIQdiABaiIAIABB/////wNOGzYCDEEAIQMLIAVBEGokACADCxEAIAAgASACIAMgBEEAELcFCyYBAX8gAUIgiKdBdU8EQCABpyICIAIoAgBBAWo2AgALIAAgARBsCycBAX8gAUIAUwRAIABCACABfRAwIQIgAEEBNgIEIAIPCyAAIAEQMAvsAQEBfwJAAkACQAJAAkACQAJAQQcgAkIgiKciAyADQQdrQW5JGyIDDggAAAAEBAQEAQMLIAAoAtgBIQAgAUIANwIMIAFCgICAgICAgICAfzcCBCABIAA2AgAgASACxBC6Ag0BDAQLIAAoAtgBIQAgAUIANwIMIAFCgICAgICAgICAfzcCBCABIAA2AgAgASACQoCAgIDAgYD8/wB8vxC6BUUNAwsgARAbQQAPCyADQQpqQQJJDQILIAAoAtgBIQAgAUIANwIMIAFCgICAgICAgICAfzcCBCABIAA2AgAgARA1CyABDwsgAqdBBGoL5AEBBH8jAEEQayICJAAgACACQQhqIAEQ5QEhAyAAIAEQDwJAIANFBEBC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IAMoAgAgAygCBHEMBAsgAygCACADKAIEcgwDCyADKAIAIAMoAgRzDAILEAEACyADKAIEIAMoAgB0C603AwAMAQsgAUKAgICAMDcDACAGQoCAgIAwNwMAQX8MAQtBAAshACADQRBqJAAgAAuGBQIHfwJ+AkAgAUKAgICAcINCgICAgJB/UgRAQoCAgIDgACEKIAAgARA3IgFCgICAgHCDQoCAgIDgAFENAQsCQCACQoCAgIBwg0KAgICAkH9RDQBCgICAgOAAIQogACACEDciAkKAgICAcINCgICAgOAAUg0AIAEhAgwBCwJAIAKnIgUpAgQiCkL/////B4NQDQAgAaciAykCBCELAkAgAygCAEEBRyAKIAuFQoCAgIAIg0IAUnINACADIAAoAhAoAgwRBAAgBSkCBCIKpyIEQf////8HcSIHIAMpAgQiC6ciBkH/////B3EiCGogBEEfdnQgBkEfdiIJQRFzakkNACAFQRBqIQYgA0EQaiEEIAkEQCAEIAhBAXRqIAYgB0EBdBAfGiADIAMpAgQiCiAFKQIEfEL/////B4MgCkKAgICAeIOENwIEDAILIAQgCGogBiAHEB8aIAMgAykCBCIKIAUpAgR8Qv////8HgyILIApCgICAgHiDhDcCBCAEIAunakEAOgAADAELAn4CQAJAIAunQf////8HcSAKp0H/////B3FqIgdBgICAgARPBEAgAEHA2gBBABBGDAELIAAgByAKIAuEpyIGQR92EOoBIggNAQtCgICAgOAADAELIAhBEGohBAJAIAZBAE4EQCAEIANBEGogAygCBEH/////B3EQHyIEIAMoAgRB/////wdxaiAFQRBqIAUoAgRB/////wdxEB8aIAQgB2pBADoAAAwBCyAEIAMgAygCBEH/////B3EQwwUgBCADKAIEQQF0aiAFIAUoAgRB/////wdxEMMFCyAIrUKAgICAkH+ECyEKIAAgARAPDAELIAEhCgsgACACEA8gCgtAACAAAn8CfyADBEAgASgCJCACQQN0akEEagwBC0EAIAEoAiAiA0UNARogAyABLwEoIAJqQQR0agsoAgALENkBCw0AIAAgASACQQIQzgILNQEBfyMAQdAAayICJAAgAiAAKAIQIAJBEGogARCQATYCACAAQef5ACACEMYCIAJB0ABqJAALowECAX8BfiMAQRBr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AiAAKAIQQf0ARw0ACyAAEPMBC0F/QQAgABASGyEBCyABC2gAIAAgASACEE8iAEEATgRAIAEoAnQgAEEEdGoiAiACKAIMQYd/cSADQQN0QfgAcXI2AgwgAiABKAK8ASIDNgIEIAIgASgCwAE2AgggASgCzAEgA0EDdGogADYCBCABIAA2AsABCyAAC20BAX8gACABQfwBakEQIAFB+AFqIAEoAvQBQQFqEHhFBEAgASABKAL0ASIDQQFqNgL0ASABKAL8ASADQQR0aiIDQX82AgAgAyADLQAEQfgBcToABCADIAEoArwBNgIIIAMgACACEBg2AgwLIAMLxgMBBH8gAEFAayIFKAIAQbACaiEDA0BBACECAkADQCADKAIAIgNFDQEgAygCHARAIAFFBEAgAEEGEBALIABBhAEQEEGDASECIAAgBSgCAC0AbEEDRgR/IABBDhAQIABBDhAQIABBwgAQECAAQQYQGiAAQREQECAAQbABEBAgAEHqAEF/EBwhASAAQSQQECAFKAIAQQAQFyAAQYEBEBAgAEGLARAQIABB6wBBfxAcIQQgACABEB4gAEEOEBAgACAEEB5BDgVBgwELEBBBfSECQQEhAQsgAygCECACaiECIAMoAhRBf0YNAAtBD0EOIAEbIQQDQCACBEAgACAEEBAgAkEBayECDAELCyABRQRAIABBBhAQCyAAQe0AIAMoAhQQHBpBASEBDAELCwJAIABBQGsoAgAiAigCYARAAkAgAUUEQEF/IQIMAQsgAEEqEBAgAEHpAEF/EBwhAiAAQQ4QEAsgAEG4ARAQIABBCBAaIABBQGsoAgBBABAXIAAgAhAeQSghAgwBCyACLQBsIgMEQCABRQRAIABBBhAQQS4hAgwCC0EuIQIgA0EDRw0BIABBiwEQEAwBC0EoQSkgARshAgsgACACEBALXQECfwJAAkAgACgCmAIiAUEASA0AIAAoAoACIAFqLQAAIgBBI2siAUENTUEAQQEgAXRB5fAAcRsNAQJAIABB6wBrDgQCAQECAAsgAEHsAWtBAkkNAQtBASECCyACCy8AIAAgASACIAMQ4wIiAEEATgRAIAEoAnQgAEEEdGoiASABKAIMQQNyNgIMCyAACy4AIABBDBApIgAEQCAAIAM2AgggACACNgIEIAAgASgCEDYCACABIAA2AhALIAALawEBfwJA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CyAAKAIQIgJBEGogAyACKAIEEQAAQQAhAgNAIAEoAvwBIQMgAiABKAL0AU5FBEAgACADIAJBBHRqKAIMEBMgAkEBaiECDAELCyAAKAIQIgJBEGogAyACKAIEEQAAQQAhAgNAIAEoAsgCIQMgAiABKALAAk5FBEAgACADIAJBA3RqKAIEEBMgAkEBaiECDAELCyAAKAIQIgJBEGogAyACKAIEEQAAIAEoAswBIgIgAUHQAWpHBEAgACgCECIDQRBqIAIgAygCBBEAAAsgACABKALsAhATIAFB9AJqEPYBIAAoAhAiAkEQaiABKAKMAyACKAIEEQAAIAEoAgQEQCABKAIYIgIgASgCHCIDNgIEIAMgAjYCACABQgA3AhgLIAAoAhAiAEEQaiABIAAoAgQRAAALggEBAn8gACABQRBqEM8FAkAgASgCICICBEAgASgCPCIDRQ0BA0AgAiADT0UEQCAAIAIpAwAQIyACQQhqIQIgASgCPCEDDAELCyAAQRBqIAEoAiAgACgCBBEAAAsgACABKQMYECMgACABKQMAECMPC0GEhAFBrvwAQYmUAUHC6wAQAAALaAEBfgJAAkAgABA0IgNCgICAgHCDQoCAgIDgAFEEQCABIQMMAQsgACADQcAAIAFBBxAZQQBIDQAgACADQekAIAJBAEetQoCAgIAQhEEHEBlBAE4NAQsgACADEA9CgICAgOAAIQMLIAMLjAEBAn8CQANAIAFCgICAgHBUDQECQAJAAkACQAJAAkAgAaciAi8BBiIDQQxrDgUFAQMHAQALIANBMEYNASADQTRrDgUABgYGAAYLIAIoAiAoAjAPCyACKAIgIgJFDQQgAi0AEUUNASAAELYCQQAPCyACKAIgIQILIAIpAwAhAQwBCwsgAigCICEACyAACyIAIAAgAkEBahApIgAEQCAAIAEgAhAfIAJqQQA6AAALIAALjQMCA34EfwJAIAEoAggiBkH+////B04EQEEBIQcgAkEBcQ0BQv///////////wAhAyAGQf7///8HRw0BIAE0AgRC////////////AHwhAwwBCyAGQQBMBEAMAQsgBkE/TQRAIAEoAhAiCSABKAIMIgJBAnRqQQRrKAIAIQhCACAGQSBNBH4gCEEgIAZrdq0FIAJBAk8EfiACQQJ0IAlqQQhrNQIABUIACyAIrUIghoRBwAAg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LQAFQf4BcToABSABIAs3A0ALIAtCIIinQXVPBEAgC6ciACAAKAIAQQFqNgIACyALIQwLIANBIGokACAMC4kEAgR+An8CQAJAIAG9IgRCAYYiA1ANACABvSECIAC9IgVCNIinQf8PcSIGQf8PRg0AIAJC////////////AINCgYCAgICAgPj/AFQNAQsgACABoiIAIACjDwsgAyAFQgGGIgJaBEAgAEQAAAAAAAAAAKIgACACIANRGw8LIARCNIinQf8PcSEHAn4gBkUEQEEAIQYgBUIMhiICQgBZBEADQCAGQQFrIQYgAkIBhiICQgBZDQALCyAFQQEgBmuthgwBCyAFQv////////8Hg0KAgICAgICACIQLIQICfiAHRQRAQQAhByAEQgyGIgNCAFkEQANAIAdBAWshByADQgGGIgNCAFkNAAsLIARBASAHa62GDAELIARC/////////weDQoCAgICAgIAIhAshBCAGIAdKBEADQAJAIAIgBH0iA0IAUw0AIAMiAkIAUg0AIABEAAAAAAAAAACiDwsgAkIBhiECIAZBAWsiBiAHSg0ACyAHIQYLAkAgAiAEfSIDQgBTDQAgAyICQgBSDQAgAEQAAAAAAAAAAKIPCwJAIAJC/////////wdWBEAgAiEDDAELA0AgBkEBayEGIAJCgICAgICAgARUIQcgAkIBhiIDIQIgBw0ACwsgBUKAgICAgICAgIB/gyADQoCAgICAgIAIfSAGrUI0hoQgA0EBIAZrrYggBkEAShuEvwvoDwMHfAh/An5EAAAAAAAA8D8hAwJAAkACQCABvSIRQiCIpyIPQf////8HcSIJIBGnIgxyRQ0AIAC9IhJCIIinIQogEqciEEUgCkGAgMD/A0ZxDQAgCkH/////B3EiC0GAgMD/B0sgC0GAgMD/B0YgEEEAR3FyIAlBgIDA/wdLckUgDEUgCUGAgMD/B0dycUUEQCAAIAGgDwsCQAJAAkACQAJAAn9BACASQgBZDQAaQQIgCUH///+ZBEsNABpBACAJQYCAwP8DSQ0AGiAJQRR2IQ0gCUGAgICKBEkNAUEAIAxBswggDWsiDnYiDSAOdCAMRw0AGkECIA1BAXFrCyEOIAwNAiAJQYCAwP8HRw0BIAtBgIDA/wNrIBByRQ0FIAtBgIDA/wNJDQMgAUQAAAAAAAAAACARQgBZGw8L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A38jAEFAaiIGJAACQCAEIANrIghBAUYEQAJAIANFBEAgAUIDEDAaDAELIAEgA60QMBogAUEBNgIECyACIANBAXRBAXKtEDAaIAIgAigCCEECajYCCCAAIAEQRBoMAQsgACgCACEHIAAgASACIAMgCEEBdiADaiIDQQEQoAQgBkIANwI4IAZCgICAgICAgICAfzcCMCAGIAc2AiwgBkIANwIkIAZCgICAgICAgICAfzcCHCAGIAc2AhggBkIANwIQIAZCgICAgICAgICAfzcCCCAGIAc2AgQgBkEsaiIHIAZBGGogBkEEaiIIIAMgBCAFEKAEIAAgACAIQf////8DQQEQQxogByAHIAFB/////wNBARBDGiAAIAAgB0H/////A0EBEMsBGiAFBEAgASABIAZBGGpB/////wNBARBDGgsgAiACIAZBBGoiAEH/////A0EBEEMaIAZBLGoQGyAGQRhqEBsgABAbCyAGQUBrJAALzgUCB38DfiMAQTBrIggkAAJ/AkACQAJAAkACQCADDgMAAQIDC0HcjAFB1PwAQbUaQZb8ABAAAAsgASACKAIQIAIoAgwiACAAQQV0IAIoAghrEGg2AgAMAgsgAigCECIDIAIoAgwiACAAQQV0IAIoAghrIgJBIGoQaK1CIIYgAyAAIAIQaK2EIQ8gBkGAlOvcA0YEQCABIA9CgJTr3AOAIhA+AgQgASAQQoDslKMMfiAPfD4CAAwCCyABIA8gBq0iEIAiET4CBCABIA8gECARfn0+AgAMAQsgAigCACEKIAhCADcCKCAIQoCAgICAgICAgH83AiAgCCAKNgIcIAhCADcCFCAIQoCAgICAgICAgH83AgwgCCAKNgIIIAMgBUEBdCAEQQFqIgt2QQFqQQF2IgprIQwgACAEQQF0QQFyQRRsaiENQQAhAyAAIARBKGxqIgQoAgxFBEAgBCAGIApB/////wNBARD8AiAIQQhqIglCARAwciANIAkgBCAKQQFqIAdsQQJqQQAQlQFyIQkLAkACQCAIQRxqIg4gAiANIAcgDGxBABBDIAlyIA5BARDRAXIgCEEIaiIJIA4gBEH/////A0EBEENyIAkgAiAJQf////8DQQEQ5AFyQSBxDQADQAJAIAgoAgxFDQAgCCgCFEUNACAIQQhqIgIgAiAEQf////8DQQEQywENAiADQQFrIQMM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3gQBCX8jAEEQayIGJAAgACAAKQOAARAjIABBEGohAyAAQaABaiEEIAAoAqQBIQEDQCABIARGRQRAIAEoAgQhBUEAIQIDQCACIAEoAhBORQRAIAAgASACQQN0aikDGBAjIAJBAWohAgwBCwsgAyABIAAoAgQRAAAgBSEBDAELCyAAIAQ2AqQBIAAgAEGgAWo2AqABIAAQogUgACgCVCAAQdAAakYEQEEAIQIDQAJAIAAoAkQhASACIAAoAkBODQAgASACQRhsaiIBKAIABEAgACABKAIEEOwBCyACQQFqIQIMAQsLIAMgASAAKAIEEQAAIAAoApACIgQEQEEAIQEDQEEAIQUgAUEFRkUEQANAQQAhAiAFQQJGRQRAA0AgAkEURwRAIAQgAUGgAWxqIAVB0ABsaiACQQJ0akGoDWoiBygCACIIBEAgBCgCACIJKAIAIAhBACAJKAIEEQEAGiAHQQA2AgALIAJBAWohAgwBCwsgBUEBaiEFDAELCyABQQFqIQEMAQsLIAAoAtgBIARBACAAKALcAREBABogAEEANgKQAgsgAEHgAWoQoQUgAEH4AWoQoQVBACECA0ACQCAAKAI4IQEgAiAAKAIsTg0AIAEgAkECdGooAgAiAUEBcUUEQCADIAEgACgCBBEAAAsgAkEBaiECDAELCyADIAEgACgCBBEAACADIAAoAjQgACgCBBEAACADIAAoAtQBIAAoAgQRAAAgBiADKQIINwMIIAYgAykCADcDACAGIAAgACgCBBEAACAGQRBqJAAPC0GNkQFBrvwAQb8PQaTlABAAAAtDAQJ/IAAoAogBIQJBfyEDAkADQCACQQBMDQEgACgCgAEgAkEBayICQQR0aigCACABRw0ACyACQYCAgIACciEDCyADC8YBAgR/AX4jAEEQayIDJAAgACABEC0iB0KAgICAcINCgICAgOAAUgRAAkAgACADQQxqIAcQ5QEiBkUEQAwBCwJAIAAgAhA/IgEgAygCDGpBAWoQKSIERQRAQQAhBAwBCyAEIAYgAygCDBAfIgUgAygCDGogAiABEB8aIAUgAygCDCABampBADoAACAAIAUgAygCDCABahCFAyEEIAAoAhAiAUEQaiAFIAEoAgQRAAALIAAgBhBUCyAAIAcQDwsgA0EQaiQAIAQLvwEBAX8gASADai0AAEE8RgRAIAAgBEH/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BEAgCygCJCIEIAJBA3RqIAQgAadBA3QQnAFBAAwBCyABpwshDUEAIQQgAkEAIAJBAEobIQIDQCACIARHBEAgAyAEQQN0aikDACIBQiCIp0F1TwRAIAGnIg4gDigCAEEBajYCAAsgCygCJCAEIA1qQQN0aiABNwMAIARBAWohBAwBCwsgCyAFPgIoIAsoAhQgBUL/////D4M3AwAgBUKAgICACHwhAQwBCyAAIAxBCGogBhA8DQEgDCkDCCIBIAKsIgh8IgVCgICAgICAgBBZBEAgAEHQ2gBBABAVDAILAkAgBEUgAkEATHJFBEBCACEHIAAgBiAIQgAgAUF/EPQCDQMMAQsgASEHCyACQQAgAkEAShutIQlCACEBA0AgASAJUgRAIAMgAadBA3RqKQMAIghCIIinQXVPBEAgCKciAiACKAIAQQFqNgIACyABIAd8IQogAUIBfCEBIAAgBiAKIAgQhgFBAE4NAQwDCwsgACAGQTAgBUKAgICACHwiAUL/////D1gEfiAFQv////8PgwVCgICAgMB+IAW5vSIHQoCAgIDAgYD8/wB9IAdC////////////AINCgICAgICAgPj/AFYbCxBFQQBIDQELIAAgBhAPIAVC/////w+DIAFC/////w9YDQEaQoCAgIDAfiAFub0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwwBCyAAIAYQD0KAgICA4AALIQEgDEEQaiQAIAEL0gMCB38DfiMAQSBrIgQkACAEQQA2AgwgBEEANgIIAkACQCAEIAAoAhAoAnhJBEAgABDpAQwBCyAAIAEgAiABQQAQFCILQoCAgIBwg0KAgICA4ABRBEAgCyEBDAILAkACQCALQoCAgIBwVA0AIAAgCxDKASIKQQBIDQECQCAKBEAgACAEQQxqIAsQ1gFFDQEMAwsgACAEQQhqIARBDGogC6dBERCOASEJIAQoAgghBSAJQQBIDQILIAQoAgwhCANAIAcgCEYNAQJAIAoEQCAAIAcQqQUiBkUNBAwBCyAAIAUgB0EDdGooAgQQGCEGCwJ/AkAgACALIAYgAxD5BCINQoCAgIBwgyIMQoCAgIAwUgRAIAxCgICAgOAAUg0BIAAgBhATDAULIAAgCyAGQQAQ1QEMAQsgACALIAYgDUEHEBkLIQkgACAGEBMgB0EBaiEHIAlBAE4NAAsMAQsgACAFIAgQWkEAIQUgACACEFwiDEKAgICAcINCgICAgOAAUQ0AIAQgCzcDGCAEIAw3AxAgACADIAFBAiAEQRBqECEhASAAIAwQDyAAIAsQDwwCCyAAIAUgBCgCDBBaIAAgCxAPC0KAgICA4AAhAQsgBEEgaiQAIAELPwEBfyABQQAgAUEAShshAQNAAkAgASADRgRAQX8hAwwBCyAAIANBA3RqKAIEIAJGDQAgA0EBaiEDDAELCyADC/8EAgJ/BH4CQCACQv////9vWARAIAAQJAwBCwJAIAAgAkE9EHEEf0KAgICAMCEFQoCAgIAwIQZCgICAgDAhCCAAIAJBPSACQQAQFCIHQoCAgIBwg0KAgICA4ABRDQFBgQJBgAIgACAHECYbBUEACyEDIAAgAkE+EHEEQEKAgICAMCEFQoCAgIAwIQZCgICAgDAhCCAAIAJBPiACQQAQFCIHQoCAgIBwg0KAgICA4ABRDQFBggRBgAQgACAHECYbIANyIQMLIAAgAkE/EHEEQEKAgICAMCEFQoCAgIAwIQZCgICAgDAhCCAAIAJBPyACQQAQFCIHQoCAgIBwg0KAgICA4ABRDQFBhAhBgAggACAHECYbIANyIQMLQoCAgIAwIQYCQCAAIAJBwAAQcUUEQEKAgICAMCEIDAELQoCAgIAwIQUgACACQcAAIAJBABAUIghCgICAgHCDQoCAgIDgAFEEQAwCCyADQYDAAHIhAwsCQAJAIAAgAkHBABBxRQ0AQoCAgIAwIQUgA0GAEHIhAyAAIAJBwQAgAkEAEBQiBkKAgICAcIMiB0KAgICAMFENAEHDwgAhBCAHQoCAgIDgAFENASAAIAYQOEUNAQsCQCAAIAJBwgAQcUUEQEKAgICAMCEFDAELIANBgCByIQMgACACQcIAIAJBABAUIgVCgICAgHCDIgJCgICAgDBRDQBBtMIAIQQgAkKAgICA4ABRDQEgACAFEDhFDQELIANBgDBxBEBBsekAIQQgA0GAxABxDQELIAEgBTcDGCABIAY3AxAgASAINwMIIAEgAzYCAEEADwsgACAEQQAQFQsgACAIEA8gACAGEA8gACAFEA8LQX8LwgEBAn8gAigCBEUEQCACKAIYIgMgAigCHCIENgIEIAQgAzYCACACQgA3AhgCQCABKAIABEAgAhCfBQwBCyAAIAIpAyAQIwsgACACKQMoECMgAiACKAIAQQFrIgM2AgACQCADRQRAIAIoAhAiAyACKAIUIgQ2AgQgBCADNgIAIAJCADcCECAAQRBqIAIgACgCBBEAAAwBCyACQoCAgIAwNwMoIAJCgICAgDA3AyAgAkEBNgIECyABIAEoAgxBAWs2AgwLC5UBAQN+IAG9IgJC////////////AIMhAyAAvSIEQv///////////wCDQoGAgICAgID4/wBaBEAgA0KBgICAgICA+P8AVA8LAn9BfyADQoCAgICAgID4/wBWIAAgAWNyDQAaQQEgACABZA0AGkEAIABEAAAAAAAAAABiDQAaIARCAFMEQCACQj+Hp0F/cw8LIAJCP4inCwswACABQoCAgIAQhEKAgICAcINCgICAgDBRBEAgACABEDcPCyAAIAFBOEEAQQAQrQILKQEBfyACQiCIp0F1TwRAIAKnIgMgAygCAEEBajYCAAsgACABIAIQxQULUgIBfwF+QoCAgIDgACEEIAAgASACEJMBIgMEfiADKAIgIgMoAgwoAiAtAAQEQCACRQRAQgAPCyAAEGtCgICAgOAADwsgAzUCEAVCgICAgOAACws4ACAAIAEgAhCTASIARQRAQoCAgIDgAA8LIAAoAiAoAgwiACAAKAIAQQFqNgIAIACtQoCAgIBwhAtRAgF+AX8gACAAKQOQAUEDEEkiAkKAgICAcINCgICAgOAAUgRAIAFCIIinQXVPBEAgAaciAyADKAIAQQFqNgIACyAAIAJBNCABQQMQGRoLIAILlQEBA38jAEEQayIEJAAgBCACNwMIIAEoAgAiBSABKAIEIgY2AgQgBiAFNgIAIAFCADcCACAAIAAgAUEgaiADQQN0aikDAEKAgICAMEEBIARBCGoQIRAPIAAgASkDEBAPIAAgASkDGBAPIAAgASkDIBAPIAAgASkDKBAPIAAoAhAiAEEQaiABIAAoAgQRAAAgBEEQaiQAC40BAQN/IwBBEGsiBCQAIAQgATcDCCADQQF0IQZBACEDA0ACQAJAIANBAkYNACAAQcwAQQEgAyAGakEBIARBCGoQzwEiAUKAgICAcINCgICAgOAAUg0BQX8hBSADQQFHDQAgACACKQMAEA8LIARBEGokACAFDwsgAiADQQN0aiABNwMAIANBAWohAwwACwALyAYC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IARuDAILIARBACABQQJPGyADbAwBCyAAQX9zQR92IQQgAUECayEBIAQCfiACBEAgA60iBiABQQN0IgFB5KEEajUCAH5CIIggAUHgoQRqNQIAIAZ+fEIfiAwBCyABQQJ0QYCkBGo1AgAgA61+Qh2IC6dqCyIBayABIABBAEgbC0gBAn8jAEEQayICJABBfyEDAkAgACACQQxqIAEQugENACACKAIMIgNBJWtBXEsNACAAQdmJAUEAEFBBfyEDCyACQRBqJAAgAwt1AQF/AkAgAUKAgICAcINCgICAgOB+UQRADAELAkAgAUKAgICAcFQNACABpyICLwEGQSFHDQAgAikDICIBQoCAgIBwg0KAgICA4H5SDQAMAQsgAEGiLEEAEBVCgICAgOAADwsgAaciACAAKAIAQQFqNgIAIAELrgICAXwBfwJAA0ACQAJAAkACQAJAQQcgAkIgiKciBCAEQQdrQW5JG0EJag4RAgMDAwMDAwMDAAAAAAMDBAEDCyABIALENwMADAULIAJCgICAgMCBgPz/AHwiAkL///////////8Ag0KBgICAgICA+P8AWgRAIAFCADcDAAwFCyACvyIDRAAAAAAAAODDYwRAIAFCgICAgICAgICAfzcDAAwFCyADRAAAAAAAAOBDZARAIAFC////////////ADcDAAwFCyABAn4gA5lEAAAAAAAA4ENjBEAgA7AMAQtCgICAgICAgICAfws3AwAMBAsgASACp0EEakEAEIIDGiAAIAIQDwwDCyAAIAIQjQEiAkKAgICAcINCgICAgOAAUg0BCwsgAUIANwMAQX8PC0EAC7ECAQJ/IwBBIGsiBCQAAkACQAJAIAIoAgxFBEACQAJAAkACQCACKAIIQf7///8Haw4CAQACCyAAEDUMAgsgAigCBA0DCyAAIAIQRBoLQQAhAiABRQ0DIAFCABAwGgwDCyACKAIERQ0BCyAAEDVBASECIAFFDQEgAUIAEDAaDAELIAAgAiACKAIIQQFqQQJtQQEQkQYgAEEBENEBGiABIgNFBEAgACgCACEDIARCADcCGCAEQoCAgICAgICAgH83AhAgBCADNgIMIARBDGohAwsgAyAAIABB/////wNBARBDGiADIAMoAgRBAXM2AgQgAyADIAJB/////wNBARDLARpBICECIAMoAghB/////wdHBEAgAygCDEEAR0EEdCECCyABDQAgAxAbCyAEQSBqJAAgAgsMACAAIAEQiANBAEwLDQAgACABIAJBAhDjAwvRDAEIfyMAQYABayIFJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASgCDARAIAIoAgwNAQsgAigCCEGAgICAeEYEQCAAQgEQMBoMCwsgASgCCEH/////B0YNCSAAQgEQMBoCQCABIAAQ0wEiAyAEQYCABHFFckUEQCACKAIIQf7///8HTg0LDAELIAMNAgsgASgCBEUNCiACKAIIQf////8HRg0JDAoLIAAoAgAhByAFQgA3AjwgBUKAgICAgICAgIB/NwI0IAUgBzYCMCAFQTBqIAEQRBogAhCxAiEKIAQhCCABKAIEBEAgCkEASARAIAAQNSAFQTBqEBtBASEGDAwLIAUgBSgCNEEBczYCNCAKRSIMIARBBnFBAkZxIARzIQgLIABCARAwGiAFQTBqIAAQggINBCAFQgA3AiggBUKAgICAgICAgIB/NwIgIAUgBzYCHCAFQgA3AhQgBUKAgICAgICAgIB/NwIMIAUgBzYCCCAFQRxqIgEgBUEwaiIJQSBBAhCfBCAFQQhqIgYgCUEgQQMQnwQgASABIAJBICACKAIEQQJzEEMaIAYgBiACQSAgAigCBEEDcxBDGkEAIQYCQCAFKAIQQQBMDQAgBUIANwJkIAVCgICAgICAgICAfzcCXCAFIAc2AlggBUIANwJQIAVCgICAgICAgICAfzcCSCAFIAc2AkQgBUHEAGoiCUEgQQMQ0wIgBUIANwJ4IAVCgICAgICAgICAfzcCcCAFIAUoAlg2AmwgBUHsAGoiB0GAgICAAkEBQRwgCEEFdkE/cSIBa3QgAUE/RhsiAawQMBogBUHYAGoiCyAJIAdBIEEDEEMaIAcQGyALIAVBHGoQsgIEQCAFQdgAahAbIAVBxABqEBsgAEEAIAMgCBCrBCEGDAELIAVBxABqIgdBIEECENMCIAVB2ABqIgkgB0EBIAEgA0EBayAIQRx0QR91cWoiAWusQSBBAhDUAiAFQQhqIAkQsgIEQCAFQdgAahAbIAVBxABqEBsgCEEHcUEDRgRAIABCARAwGiAAQQMgAWs2AghBGCEGDAILIABBABCJAUEYIQYMAQsgBUHEAGoQGyAFQdgAahAbCyAFQRxqEBsgBUEIahAbIAYNBCAEQQdxIQYgCkEATg0CIAZBBkYNA0EAIQcgACgCACEJIAVBMGoQsQIhAQJAQQAgCmsiBEEgTwRAIAFFDQEMBQsgAUF/IAR0QX9zcQ0EIAEgBHUhBwsgBSgCQCAFKAI8IgsgASAFKAI4ayALQQV0ahBoQQdxQQFHDQMgBUIANwJ4IAVCgICAgICAgICAfzcCcCAFIAk2AmwgBUHsAGogBUEwahBEGiAFIAUoAnQgAWs2AnRBACEBA0AgASAERg0CIAEEQCAFQewAaiAAEEQaCyABQQFqIQEgAEEAIAVB7ABqEJEFRQ0ACwwDCyACKAIIQf7///8Haw4CBgcFCyAAIAAoAgggB2o2AgggBUEwaiAAEEQaIAUgAigCEDYCfCAFIAIoAgw2AnggBSACKAIENgJwIAUgAigCCCAKazYCdCAFQewAaiECCyAFKAI4IgEgBUEwahCxAmsiBEEBRgRAIAVBMGoiBCACIAFBAWusQSBBARDUAiAFQQRqIARBABCpASAAQgEQMBogACAFKAIEIAMgCBDMASEGDAILIANB/////wNGBEAgBUHYAGogAkEAEKkBIAIoAgQNAyAFKAJYIgFB/////wFMBEAgACAFQTBqIAFB/////wNBARCiBCEGDAMLIAVBMGoQGyAAQQBB/////wMgCBCrBCEGDAgLIAIoAghBIE4EQCAGQQZGDQEgAigCBA0BIAAgAiAEQQFrrEEgQQEQ1AIgBUEEaiAAQQAQqQEgBSgCBCADSw0BCyAAIAVBMGogAyAIQcgAIAIQngQhBgwBCyAAIAVBMGogAyAIQckAIAIQngQhBgsgBUEwahAbIAAgDDYCBAwFC0HO0ABB1PwAQaElQfEhEAAACyABKAIEIAIQsQJFcSEDIAIoAgQgASgCCEGAgICAeEZGBEAgACADEIwBQQIhBiACKAIERQ0DDAQLIAAgAxCJAQwCCyACKAIEIANBAEpGBEAgAEEAEIkBDAILIABBABCMAQwBCyAAEDULQQAhBgsgBUGAAWokACAGC1MBAn8jAEEgayIEJAAgACgCACEFIARCADcCGCAEQoCAgICAgICAgH83AhAgBCAFNgIMIARBDGoiBSAAIAEgAiADEOQDIQAgBRAbIARBIGokACAAC4gCAgJ/AX4jAEEQayIEJAACQAJAIAFCgICAgHCDQoCAgIDgflINACABpyEDAkAgAkUNACAEQQhqIANBBGpBABCCAw0AIAQpAwgiBUKBgICAgICAcFMgBUL/////////D1VyDQAgACABEA8gBUKAgICACHxC/////w9YBEAgBUL/////D4MhAQwCC0KAgICAwH4gBbm9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhshAQwBCyADKAIMQYCAgIB4Rw0AIAMoAghFDQAgAygCAEEBRw0BIANBADYCCAsgBEEQaiQAIAEPC0HjjAFBrvwAQbHgAEGSjAEQAAALQAEDf0EBIABB3qgEai0AACIBIAFBAU0bIQNBASECIAAhAQNAIAIgA0ZFBEAgAkEBaiECIAAgAWwhAQwBCwsgAQu2FQMJfwx+AnwjAEFAaiICJAAgAkEAQcAAECshBCABQQBB0AEQKyICIAA1AhA3AxggAiAANQIUNwMAIAA1AhghCyACQgI3AyAgAiALNwMIIAIgACgCQEEDdEHwAmqtNwMQIABBzABqIQEgAEHIAGohCANAIAEoAgAiBSAIRkUEQCAFKAIQIQEgAiACKQMgQgJ8NwMgIAIgAikDECAAKAJAQQN0QYgCaq18NwMQIAIgAikDwAEgBTMBCHw3A8ABIAIgAikDyAEgBTQCDHw3A8gBAkAgAUUNACABLQAQDQAgASgCGCEDIAIgAikDaEIBfDcDaCACIAIpA3AgA0ECdCABKAIcQQN0akE0aq18NwNwCyAFQeQBaiEBIAVB4AFqIQkDQCAJIAEoAgAiA0cEQCACIAIpAyAiDUIBfCIMNwMgIAIgAikDEELwAHwiCzcDECADKAIIBEAgAiANQgJ8Igw3AyAgAiALIAMoAgxBA3StfCILNwMQCwJAIAMoAhRFDQAgAiAMQgF8NwMgIAIgCyADKAIYIgZBFGytfDcDEEEAIQEDQCABIAZODQECQCADKAIUIAFBFGxqIgcoAggNACAHKAIERQ0AIAIgAikDIEIBfDcDICAHKAIEKQMYIAQQnQEgAygCGCEGCyABQQFqIQEMAAsACyADKAIgBEAgAiACKQMgQgF8NwMgIAIgAikDECADKAIkQQJ0rXw3AxALIAMoAiwEQCACIAIpAyBCAXw3AyAgAiACKQMQIAMoAjBBDGytfDcDEAsgAykDOCAEEJ0BIAMpA0AgBBCdASADQQRqIQEMAQsLIAVBBGohAQwBCwsgAEHUAGohASAAQdAAaiEIA0AgASgCACIDIAhGRQRAAkACQAJAIANBBGstAABBD3EOAgEAAgsgAygCGAR/IAMvASIgAy8BIGpBBHRBQGsFQcAACyEGIAMoAiwEQEEAIQEgAygCMCIHIQUDQCABIAVORQRAIAMoAiwgAUEDdGopAwAgBBCdASABQQFqIQEgAygCMCEFDAELCyAHQQN0IAZqIQYLIAMoAhwEQCADKAI0QQN0IAZqIQYLAkAgAy8ACSIFQYAgcQ0AIAMoAgxFDQAgBCAEKQMoIAM0AhB8NwMoCwJ/QQAgBUGACHFFDQAaAn8gAygCTEUEQCAGQRhqIQZBAAwBCyAGIAMoAkBqQRlqIQZBAQsiASADKAJEIgVFDQAaIAQgBCkDMEIBfDcDMCAEIAQpAzggBax8NwM4IAFBAWoLIQEgBCAEKQMYQgF8NwMYIAQgBCsDICAGt6A5AyAgBCAEKwMAIAG3oDkDAAwBCyADKAIIIQcgAiACKQNIQgF8NwNIAkAgAygCDEUNACACIAIpAyBCAXw3AyAgAiACKQNgIAcoAhxBA3StfDcDYCACIAIpA1ggBygCICIGrHw3A1ggB0EwaiEBQQAhBQNAIAUgBk4NAQJAIAEoAgRFDQAgASgCAEH/////A0sNACADKAIMIAVBA3RqKQMAIAQQnQEgBygCICEGCyAFQQFqIQUgAUEIaiEBDAALAAsgBy0AEEUEQCAHKAIYIQEgAiACKQNoQgF8NwNoIAIgAikDcCABQQJ0IAcoAhxBA3RqQTRqrXw3A3ALAkACQAJAAkACQAJAAkACQAJAAkAgA0ECay8BAEECaw4jAAkBAQEBAAkBCQIDBAUJBwYICAkJCQkJCQkJCQkJCQEBCQEJCyACIAIpA6gBQgF8NwOoASADQQNrLQAAQQhxRQ0JIAIgAikDsAFCAXw3A7ABIAMoAhxFDQkgAiACKQMgQgF8NwMgIAIgAikDECADKAIgQQN0rXw3AxAgAiACKQO4ASADNQIgfDcDuAFBACEBA0AgASADKAIgTw0KIAMoAhwgAUEDdGopAwAgBBCdASABQQFqIQEMAAsACyADKQMYIAQQnQEMCAsgAiACKQOgAUIBfDcDoAEMBwsgAygCHCIJRQ0GIAMoAhghByACIAIpAyBCAXw3AyAgAiACKQOAASAHKAI8IgZBAnStfDcDgAFBACEBA0AgASAGTg0HAkAgCSABQQJ0aigCACIFRQ0AIAICfkQAAAAAAADwPyAFKAIAtyIXoyACKQMguaAiGJlEAAAAAAAA4ENjBEAgGLAMAQtCgICAgICAgICAfws3AyAgAgJ+RAAAAAAAAEBAIBejIAIpA4ABuaAiF5lEAAAAAAAA4ENjBEAgF7AMAQtCgICAgICAgICAfws3A4ABIAUoAhAiCiAFQRhqRw0AIAopAwAgBBCdASAHKAI8IQYLIAFBAWohAQwACwALIAMoAhghBkEAIQEDQCABIAYoAhAiBU5FBEAgBiABQQN0aikDGCAEEJ0BIAFBAWohAQwBCwsgAiACKQMgQgF8NwMgIAIgAikDECAFQQN0QRhqrXw3AxAMBQsgAygCGCIGRQ0EQQAhAQNAIAEgBi0ABSIFT0UEQCAGIAFBA3RqKQMIIAQQnQEgAUEBaiEBDAELCyACIAIpAyBCAXw3AyAgAiACKQMQIAWtQgOGfEIIfDcDEAwECyADKAIYIAQQtwQgAygCHCAEELcEDAMLIAMoAhgiAUUNAiABKQMAIAQQnQEgAiACKQMgQgF8NwMgIAIgAikDEEIYfDcDEAwCCyADKAIYIgFFDQEgAiACKQMgIgtCAXw3AyAgAiACKQMQQhx8Igw3AxAgASgCCEUNASACIAtCAnw3AyAgAiAMIAE0AgB8NwMQDAELIAMoAhhFDQAgAiACKQMgQgF8NwMgCyADQQRqIQEMAQsLIAIgAikDUCACKQNIIg5CMH58Ig83A1AgAiACKQMQIAAoAswBIgFBAnStfCIQNwMQQQAhBSABQQAgAUEAShshAyACKQMgIQsDQCADIAVGRQRAIAAoAtQBIAVBAnRqIQEDQCABKAIAIgEEQCABKAIYIQYgAiACKQNoQgF8NwNoIAIgAikDcCAGQQJ0IAEoAhxBA3RqQTRqrXw3A3AgAUEoaiEBDAELCyAFQQFqIQUMAQsLIAIgC0IDfCIRNwMgIAIgACgCKCIGrDcDKCACIAAoAiwiAyAAKAIkakECdK0iCzcDMEEAIQEgA0EAIANBAEobIQUDQCABIAVHBEAgACgCOCABQQJ0aigCACIDQQFxRQRAIAIgCyADKAIEIgNBH3UgA0H/////B3EgA0EfdnRqQRFqrXwiCzcDMAsgAUEBaiEBDAELCyACAn4gBCsDCBCxAyIXmUQAAAAAAADgQ2MEQCAXsAwBC0KAgICAgICAgIB/CyIMNwM4IAICfiAEKwMQELEDIheZRAAAAAAAAOBDYwRAIBewDAELQoCAgICAgICAgH8LIg03A0AgAiAEKQMYIhI3A3ggAgJ+IAQrAyAQsQMiF5lEAAAAAAAA4ENjBEAgF7AMAQtCgICAgICAgICAfwsiEzcDgAEgAiAEKQMoIhQ3A4gBIAIgBCkDMCIVNwOQASACIAQpAzgiFjcDmAEgBCsDACEXIAIgAikDcCACKQNgIBYgFCAPIBB8IA18IBN8fHwgC3x8fDcDECACAn4gFxCxAyAGt6AgDLmgIA65oCACKQNouaAgErmgIBW5oCARuaAiF5lEAAAAAAAA4ENjBEAgF7AMAQtCgICAgICAgICAfws3AyAgBEFAayQAC1ABAn8DQCABLAAAIgQEQCAEIAAsAAAiA0EgaiADIANBwQBrQRpJG0cEQEEADwUgAUEBaiEBIABBAWohAAwCCwALCyACBEAgAiAANgIAC0EBC70HAgp/AX4jAEHgAGsiAyQAQoCAgIDgACENAkAgACADQQxqIAEQuwEiBkUNACAGKAIEIgwhBSAGKAIIIgRBgICAgHhGBEAgBkEANgIEQQAhBQsgBigCACEKIANCADcDUCADQgA3A0ggAyAKNgJcIANBxQA2AlgCfwJAAkAgBEH/////B0YEQCADQcgAakGBgwEQ+wIMAQsgBQRAIANByABqQS0QESAGKAIIIQQLIARB/v///wdGBEAgA0HIAGpB9RwQ+wIMAQtBACEFIANCADcCQCADQoCAgICAgICAgH83AjggAyAKNgI0IAIgAkEBayIIcUUEQEEgIAhna0EAIAJBAk8bIQULAkACQAJAAkAgBQRAIANBNGogBhBEDQEgA0E0akEAQREQzgFBIHENASADKAI8IgQgBUEBa0EAIARBAE4baiAFbSEFIARBgICAgHhGBEAgA0HIAGpBqJABEPsCDAULQQAhBCAFQQBKDQIgA0HIAGpBvZABEPsCQQAgBWshAgNAIAIgBEYNBSADQcgAakEwEBEgBEEBaiEEDAALAAsgAyAGKAIQNgIwIAMgBigCDCIFNgIsIANBADYCJCADIAQ2AiggBEEAIARBAEobIAJBARCNBUEBaiEIAkAgBQRAIAggAkEAEI0FIQVBECEEA0AgA0E0aiILIAJBACAEIAVqIglBAWoiB0HgDxD8AiALIAsgA0EgaiAHQeAPEENyIgdBIHENAyAHQRBxRQ0CIANBNGogAygCPEEBIAkQ4QMNAiAEQQJtIARqIQQMAAsACyADQTRqIANBIGoQRA0BDAMLIANBNGpBARDRAUEgcUUNAgsgA0E0ahAbDAQLIANByABqIANBNGogAiAFIAUQjAUMAQsgAygCTCEFIANByABqIANBNGogAiAIIAgQjAUgAygCTCIJIAVBAWoiAiACIAlJG0EBayEIIAMoAkghByAFIQQDQAJAIAkgBCICQQFqIgRNBEAgCCECDAELIAIgB2otAABBMEcNACAEIAdqLQAAQS5HDQELCyACIAVNDQAgBSAHaiACIAdqIAkgAmsQnAEgAyAFIAJrIAlqNgJMCyADQTRqEBsLIANByABqQQAQESADKAJUDQAgAygCSAwBC0EAIAMoAkgiAkUNABogCigCACACQQAgCigCBBEBABpBAAshBCAGIAw2AgQgACAGIANBDGoQXiAERQRAIAAQfAwBCyAAIAQQYiENIAAoAtgBIgAoAgAgBEEAIAAoAgQRAQAaCyADQeAAaiQAIA0Lw3UCEn8BfiMAQaAGayIDJAAgASgCyAEiBEEAIARBAEobIQYDQCACIAZGRQRAIAEoAswBIAJBA3RqQX82AgQgAkEBaiECDAELCyABKAI8BEAgASgCzAFBfjYCDAtBACECIAEoAnwiBkEAIAZBAEobIQYCfgJAAkADQCACIAZGBEACQEECIQJBAiAEIARBAkwbIQgDQAJAIAIgCEYEQEEAIQIDQCACIAZGDQICQCABKAJ0IAJBBHRqIgQoAghBAE4NACAEKAIEIghBAkgNACAEIAEoAswBIgQgBCAIQQN0aigCAEEDdGooAgQ2AggLIAJBAWohAgwACwALIAEoAswBIgcgAkEDdGoiBCgCBEEASARAIAQgByAEKAIAQQN0aigCBDYCBAsgAkEBaiECDAELCwJAIAEoAkRFDQACQCABKAIgDQAgAS0AbkEBcQ0AIAEgACABQdIAEE82ApABIAEoAjxFDQAgASAAIAFB0wAQTzYClAELAkAgASgCTCIIRQ0AIAEoAqgBQQBIBEAgASAAIAEQygM2AqgBCyABKAKsAUEASARAIAEgACAB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KAIAEB0gAkHAABARIAIgACAJKAIMEBgQHSACIBEQEQsgACAJKAIMEBMgBEEBaiEEDAALAAtBhSlBrvwAQYzyAUH7ORAAAAtBmoIBQa78AEHY6wFB3/QAEAAAC0GuhAFBrvwAQZvrAUHf9AAQAAALA0AgAiAOTkUEQCADQYAGaiACIA1qIgQgBC0AAEECdEGAuAFqLQAAIgQQciACIARqIQIMAQsLIAwQ9gEgDCADKQOQBjcCECAMIAMpA4gGNwIIIAwgAykDgAY3AgAMDAsgDBD2ASAMIAMpA5AGNwIQIAwgAykDiAY3AgggDCADKQOABjcCAAJAIAEoAowCDQAgASgCpAIhDSADIAEoAvACNgKYBiADIAEoAoACIgk2AtwFIAMgASgChAIiCzYC4AUgACgCECECIANCADcDiAYgA0IANwOABiADIAI2ApQGIANBOzYCkAYgASgC0AIiAgRAIAEgASgCACACQQR0EF8iAjYCzAIgAkUNDQsCQCABKALcAiICRQ0AIAEtAG5BAnENACABIAEoAgAgAkEDdBBfIgI2AtgCIAJFDQ0gAUEANgLoAiABIAEoAvACNgLkAgsgASgCtAFBAE4EQCADQYAGaiICQQwQESACQQQQESACQdkAIAEoArQBEF0LIAEoArABQQBOBEAgA0GABmoiAkEMEBEgAkECEBEgAkHZACABKAKwARBdCyABKAKsAUEATgRAIANBgAZqIgJBDBARIAJBAxARIAJB2QAgASgCrAEQXQsCQCABKAKoAUEASA0AIAEoAmAEQCADQYAGaiICQeEAEBEgAiABLwGoARAqDAELIANBgAZqIgJBCBARIAJB2QAgASgCqAEQXQsgASgCmAFBAE4EQEEAIQIgAS0AbkEBcUUEQCABKAI4QQBHIQILIANBgAZqIgRBDBARIAQgAhARIAEoApwBIgJBAE4EQCADQYAGakHaACACEF0LIANBgAZqQdkAIAEoApgBEF0LIAEoAqABQQBOBEAgA0GABmoiAkEMEBEgAkECEBEgAkHZACABKAKgARBdCyABKAKQAUEATgRAIANBgAZqIgJBDBARIAJBBRARIAJB2QAgASgCkAEQXQsgASgClAFBAE4EQCADQYAGaiICQQwQESACQQUQESACQdkAIAEoApQBEF0LQQAhAgJAA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAiALTgRAQQAhAiABKAKsAiIEQQAgBEEAShshBANAIAIgBEYNAiACQRRsIQYgAkEBaiECIAYgDWooAhBFDQALQdWDAUGu/ABB/foBQZQ4EAAACyACIAIgCWoiBi0AACIFQQJ0QYC4AWotAAAiB2ohBAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUHYAGsOIBASGhESGhESGhoaGhoaGhoaBAQBAwIaGgwMBQUFBQUFAAsCQCAFQQFrDhUJCgoLGg0HGggIGhoaBhoaDxoaGg4ACyAFQSJrIghBH0sNGEEBIAh0IgpBwOEBcQ0SIApBBXFFBEAgCEEfRw0ZIAYoAAFBMEcNGiABIAMoAoQGIAMoApgGEDMgA0GABmpB6QEQESAEIQIMIwsgBi8AASECIANCqICAgHA3A1AgA0HcBWogBCADQdAAahAnBEACQCADKALoBSIEQQBIBEAgAygCmAYhBAwBCyADIAQ2ApgGCyABIAMoAoQGIAQQMyADQYAGaiAFQQFqIAIQXSABIAkgCyADKALkBSADQZgGahCkAiECDCMLIAEgAygChAYgAygCmAYQMyADQYAGaiAFIAIQXSAEIQIMIgsgBigAASEFIAQhBgwWCyAGKAABIQdB7QAhBQwUCyAGKAABIQdB7AAhBQwTCyABIAYoAAEgA0GcBmpBABDHAyEHIAMoAtwFIAMoAuAFIAQgBxDGAwRAIAEgB0F/EGkaIANBgAZqQQ4QESAEIQIMHwsgA0LrgICAcDcDYCADQdwFaiAEIANB4ABqECdFDRIgAygC6AUhCCADKALcBSADKALgBSADKALkBSIGIAcQxgNFDRIgCEEATgRAIAMgCDYCmAYLIAEgB0F/EGkaIAVBA3MhBSADKAL0BSEHDBwLIAYtAAkhCCAGKAABIQcgASAGKAAFIANBnAZqQQAQxwMiAkEASA0PIAIgASgCrAJODQ8gASADKAKEBiADKAKYBhAzIAEgASgC1AIiBkEBajYC1AIgASgCzAIgBkEEdGoiBkEENgIEIAYgBTYCACADKAKEBiEKIAYgAjYCDCAGIApBBWo2AgggA0GABmoiBiAFEBEgBiAHEB0gBiANIAJBFGxqIgIoAgwgAygChAZrEB0gAigCDEF/RgRAIAAgAiADKAKEBkEEa0EEEOgCRQ0dCyADQYAGaiAIEBEgBCECDB0LIANCqYCAgHA3A3AgA0HcBWogBCADQfAAahAnRQ0TIAQhAiADKALoBSIEQQBIDRwgAyAENgKYBgwcCyADQquBgIBwNwOgASADQdwFaiAEIANBoAFqECcEQAJAIAMoAugFIgJBAEgEQCADKAKYBiECDAELIAMgAjYCmAYLIAEgAygChAYgAhAzIANBgAZqQfMBEBEMGAsgA0F/NgKYASADQqyBgICQzRo3A5ABIANB3AVqIAQgA0GQAWoQJ0UNAAJAIAMoAugFIgVBAEgEQCADKAKYBiEFDAELIAMgBTYCmAYLIAEgAygChAYgBRAzIANBgAZqQfMBEBEgAygC7AVBA3MhBQwYCyADQunUgYBwNwOAASADQdwFaiAEIANBgAFqECdFDREgBUEKRiEKDA0LAkAgBigAASIGQYCAgIB4ckGAgICAeEYNACADQoyBgIBwNwPgASADQdwFaiAEIANB4AFqECdFDQAgAygC6AUiAkEATgRAIAMgAjYCmAYLIANCjoCAgHA3A9ABIANB3AVqIAMoAuQFIANB0AFqECcEQCADKALoBSICQQBIDRcgAyACNgKYBgwXCyABIAMoAoQGIAMoApgGEDMgA0GABmpBACAGaxDFAwwWCyADQo6AgIBwNwPAASADQdwFaiAEIANBwAFqECcEQCADKALoBSICQQBIDRYgAyACNgKYBgwWCyADQunUgYBwNwOwASADQdwFaiAEIANBsAFqECcEQCAGQQBHIQoMDQsgASADKAKEBiADKAKYBhAzIANBgAZqIAYQxQMgBCECDBkLIAYoAAEiAkH/AUoNDyABIAMoAoQGIAMoApgGEDMgA0GABmoiBiAFQcMAa0H/AXEQESAGIAJB/wFxEBEgBCECDBgLIAYoAAEhAiADQo6AgIBwNwPwASADQdwFaiAEIANB8AFqECcEQCAAIAIQEyADKALoBSICQQBIDRQgAyACNgKYBgwUCyACQS9HDQ4gASADKAKEBiADKAKYBhAzIANBgAZqQcEBEBEgBCECDBcLIANCyYCAgHA3A6gCIANC2Lb5gnA3A6ACIANB3AVqIAQiAiADQaACahAnDRYgA0F/NgKYAiADQoGEkICQCTcDkAIgA0HcBWogAiADQZACahAnDRYgA0F/NgKIAiADQoaO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DQMgAyAGKAABNgKYBiAEIQIMDAsgBigAASICQQBIDQMgAiABKAKsAk4NAyANIAJBFGxqIggoAgxBf0cNBCAIIAMoAoQGNgIMIAgoAhAhBwNAIAciAgRAIAgoAgwgAigCBCIFayEGIAIoAgAhBwJAAkACQAJAIAIoAghBAWsOBAIBAwADCyADKAKABiAFaiAGNgAADAILIAZBgIACakGAgARPDQkgAygCgAYgBWogBjsAAAwBCyAGQYABakGAAk8NCSADKAKABiAFaiAGOgAACyAAKAIQIgZBEGogAiAGKAIEEQAADAELCyAIQQA2AhAgBCECDAsLIANCjoCAgHA3A6gFIANC2bj9gnA3A6AFIANB3AVqIAQgA0GgBWoQJwRAIAMoAugFIgJBAE4EQCADIAI2ApgGCyADIAMoAvAFIgY2ApQFIANBfzYCmAUgAyADKALsBSIEQQFrNgKQBSADQdwFaiADKALkBSICIANBkAVqECcEQCADKALoBSICQQBOBEAgAyACNgKYBgsgBEEBaiEEIAMoAuQFIQILIAEgAygChAYgAygCmAYQMyADQYAGaiIHIAVBAmtB/wFxEBEgByAEIAYQXQwLCyADQo6AgIBwNwOIBSADQpiAgICw6A43A4AFIANB3AVqIAQgA0GABWoQJwRAAkAgAygC6AUiAkEASARAIAMoApgGIQIMAQsgAyACNgKYBgsgASADKAKEBiACEDMgA0GABmoiAiAFQQJrQf8BcRARIAIgAy0A7AUQESACIAMoAvwFEB0MBwsgA0KOgICAcDcD+AQgA0KZgICAkAk3A/AEIANB3AVqIAQgA0HwBGoQJ0UNAQJAIAMoAugFIgJBAEgEQCADKAKYBiECDAELIAMgAjYCmAYLIAEgAygChAYgAhAzIANBgAZqIgIgBUECa0H/AXEQESACQckAEBEMBgsgA0F/NgLIBSADQoSAgICwlevUqn83A8AFIANB3AVqIAQgA0HABWoQJ0UNACADKALoBSIIQQBOBEAgAyAINgKYBgsgAygC7AUhCCADKAL8BSIFQcUARgR/QfQBBSAFQRtHDQFB9QELIQogCEF9cUGpAUYEQCABIAMoAoQGIAMoApgGEDMgA0GABmogChARIAAgAygC/AUQEwwGCyADQumAgIBwNwOwBSADQdwFaiADKALkBSADQbAFahAnRQ0AAkAgAygC6AUiBUEASARAIAMoApgGIQUMAQsgAyAFNgKYBgsgASADKAKEBiAFEDMgA0GABmogChARIAAgAygC/AUQE0HqACEFDAYLIAEgAygChAYgAygCmAYQMyADQYAGaiAGIAcQciAEIQIMCAtBhSlBrvwAQeP1AUGUOBAAAAtBvYwBQa78AEHl9QFBlDgQAAALQcXdAEGu/ABB8PUBQZQ4EAAAC0Gw3QBBrvwAQfT1AUGUOBAAAAsgAygC5AUhAgwDCyADKAL0BSEHIAMoAuQFIQYLIAEgAygChAYgAygCmAYQMyAFQesARyIKRQRAIAEgCSALIAYgA0GYBmoQpAIhBgsgB0EASA0CIAcgASgCrAJODQIgASABKALUAiIEQQFqNgLUAiABKALMAiAEQQR0aiIEQQQ2AgQgBCAFNgIAIAMoAoQGIQ4gBCAHNgIMIAQgDkEBajYCCAJAIA0gB0EUbGoiCCgCDCIHQX9GBEAgCCgCCCACQX9zaiICQf8ASiAFQekAa0ECS3JFBEAgBEEBNgIEIAQgBUGBAWoiAjYCACADQYAGaiIEIAJB/wFxEBEgBEEAEBEgBiECIAAgCCADKAKEBkEBa0EBEOgCDQQMAwsgCiACQf//AUpyDQEgBEECNgIEIARB7QE2AgAgA0GABmoiAkHtARARIAJBABAqIAYhAiAAIAggAygChAZBAmtBAhDoAg0DDAILIAcgDkF/c2oiAkGAAWpB/wFLIAVB6QBrQQJLckUEQCAEQQE2AgQgBCAFQYEBaiIENgIAIANBgAZqIgUgBEH/AXEQESAFIAJB/wFxEBEgBiECDAMLIAogAkGAgAJqQf//A0tyDQAgBEECNgIEIARB7QE2AgAgA0GABmoiBEHtARARIAQgAkH//wNxECogBiECDAILIANBgAZqIgIgBUH/AXEQESACIAgoAgwgAygChAZrEB0gBiECIAgoAgxBf0cNASAAIAggAygChAZBBGtBBBDoAg0BCwsgAygCgAYiAkUNDSADKAKUBiACQQAgAygCkAYRAQAaDA0LQYUpQa78AEHl9gFBlDgQAAALIAAQfAwLCyAJKAABIQYgASABKALcAkEBajYC3AIMBgsgA0F/NgJIIANC6dSBgOABNwNAIANB3AVqIAggA0FAaxAnRQ0FAkAgAygC9AUiB0EASA0AIAcgASgCrAJODQAgAygC6AUhBCADKALkBSEKIAMoAuwFIRAgByEFA0AgASgCgAIhESABKAKkAiESQQAhCwNAAkAgC0EURg0AIBIgBUEUbGooAgQhAgNAIAIgEWoiEy0AACIFQbYBRiAFQcIBRnIEQCACQQVqIQIMAQUgBUHrAEcNAiALQQFqIQsgEygAASEFDAMLAAsACwsgA0KOgICAcDcDOCADIBA2AjQgA0ERNgIwIANB3AVqIAIgA0EwahAnBEAgAygC9AUhBQwBCwsgA0F/NgIkIAMgEDYCICADQdwFaiACIANBIGoQJ0UNBiABIAEoAtACQQFqNgLQAiABIAdBfxBpGiABIAMoAvQFIgJBARBpGiADQYAGaiIFIBBB/wFxEBEgBSACEB0gCiEIIARBf0YgBCAGRnINCCABIAEoAtwCQQFqNgLcAiADQYAGaiICQcIBEBEgAiAEEB0gBCEGDAgLQaopQa78AEHd8gFB+zkQAAALIAEoAswBIAkvAAEiB0EDdGpBBGohAgNAIAIoAgAiAkEASA0HIAEoAnQgAkEEdGoiBCgCBCAHRw0HIAQtAAxBBHEEQCADQYAGaiIFQegAEBEgBSACQf//A3EQKgsgBEEIaiECDAALAAsgASgCzAEgD0EDdGpBBGohAgNAIAIoAgAiAkEASA0GIAEoAnQgAkEEdGoiBygCBCAPRw0GIAEoApwBIAJHBEBB4QAhBCADQYAGaiIFIAcoAgxBA3ZBD3FBAWtBAU0EfyADQYAGaiIEQQMQESAEIAcoAgxBAXRBCHUQHUHZAAVB4QALEBEgBSACQf//A3EQKgsgB0EIaiECDAALAAsCQAJAAkAgBEHpAGsOBgQEAgQBAwALIARBMUYEQCAJLwABIQIgASAJLwADIgQQ5QQgA0GABmoiBUExEBEgBSACECogBSABKALMASAEQQN0ai8BBEEBakH//wNxECoMBwsgBEEyRwRAIARBzQBHDQUgCSgAAUUNBwwFCyABIAkvAAEiAhDlBCADQYAGaiIEQTIQESAEIAEoAswBIAJBA3RqLwEEQQFqQf//A3EQKgwGCyABIAEoAtACQQFqNgLQAiAJKAABIgJBAEgNBCACIAEoAqwCTg0EIAEoAqQCIAJBFGxqIgIoAgQhBCADQu6AgIBwNwMAIANB3AVqIAQgAxAnRQ0DIAIgAigCAEEBazYCAAwFCyABIAEoAtACQQFqNgLQAgsgA0F/NgKcBiADQYAGaiAJIA8QciABIA0gDiAIIANBnAZqEKQCIgggDk4NAyADKAKcBiICQQBIIAIgBkZyDQMgASABKALcAkEBajYC3AIgA0GABmoiBEHCARARIAQgAhAdIAIhBgwDCyABIAEoAtACQQFqNgLQAgsgA0GABmogCSAPEHIMAQsLQYUpQa78AEG88QFB+zkQAAALQYOOAUGu/ABBg/4BQf3LABAAAAsgACABEP0CQoCAgIDgAAshFCADQaAGaiQAIBQLxw0BB38CQAJAAkACQAJAIAAoAhAiA0FHRwRAIABBQGsoAgAhASAAQYUBEEpFDQEgACgCOEEBEIMBQUdHDQELQX8hBiAAQQBBACAAKAIYIAAoAhQQxAFFDQEMAgsCQAJAAkACQAJAAkAgA0Ezag4DAAIBAgsgASgClAMiA0UNASAAKAIAIQFBfyEGIAAQEg0GAkACQAJAAkAgACgCECICQTlqDgQCAQEAAQsgAEEAQQEQ7QIhAAwHCyAAQYUBEEpFDQEgACgCOEEBEIMBQUdHDQELIABBAEEAIAAoAhggACgCFEEBQQAQ+AEhAAwFCyAAEBINBgJAAkAgAkGzf0YNAAJAIAJBQkcEQCACQUtGIAJBU0ZyDQIgAkEqRwRAIAJB+wBHDQQgAygCICEEA0ACQCAAKAIQIgJB/QBGDQAgAkGDf0YgAkElakFRS3JFBEAMDwtBACECIAEgACgCIBAYIQUCQAJAAkAgABASDQAgAEH5ABBKRQ0BIAAQEg0AIAAoAhAiAkGDf0YgAkElakFRS3JFBEBBACECIABB3vYAQQAQFgwBCyABIAAoAiAQGCECIAAQEkUNAgsgASAFEBMMDAsgASAFEBghAgsgACADIAUgAkEAEPcBIQcgASAFEBMgASACEBMgB0UNDSAAKAIQQSxHDQAgABASRQ0BDA0LCyAAQf0AECwNCyAAQfoAEEpFDQIgABDsAiICRQ0LIAEgAyACEOsCIQUgASACEBMgBUEASA0LA0AgBCADKAIgTg0DIAMoAhwgBEEUbGoiASAFNgIAIAFBATYCCCAEQQFqIQQMAAsACyAAQfkAEEoEQCAAEBINCyAAKAIQIgJBg39GIAJBJWpBUUtyRQRADA0LIAEgACgCIBAYIQIgABASDQggABDsAiIERQ0IIAEgAyAEEOsCIQUgASAEEBMgBUEASA0IIAAgA0H9ACACQQEQ9wEhAyABIAIQEyADRQ0LIAMgBTYCAAwCCyAAEOwCIgJFDQogASADIAIQ6wIhBCABIAIQEyAEQQBIDQogASADQShqQQQgA0EwaiADKAIsQQFqEHgNCiADIAMoAiwiAUEBajYCLCADKAIoIAFBAnRqIAQ2AgAMAQsCQAJAAkACQCAAKAIQQTlqDgQCAQEAAQsgAEEAQQIQ7QIhAAwKCyAAQYUBEEpFDQEgACgCOEEBEIMBQUdHDQELIABBAEEAIAAoAhggACgCFEECQQAQ+AEhAAwICyAAEFYNCSAAQRYQoQEgACAAQUBrIgEoAgBB/ABBARCgAUEASA0JIABBvQEQECAAQfwAEBogASgCAEEAEBcgACADQfwAQRZBABD3AUUNCQsgABC3ASEADAYLIABBASACQQEQzAMhAAwFCyAAQc0gQQAQFgwICyABKAKUAyIERQ0AIAAoAjhBABCDASIBQShGIAFBLkZyDQAgACgCACEDQX8hBiAAEBINBSAEKAI4IQUCQAJAAkACQAJAIAAoAhAiAUH/AGoOAwACAQILIAMgACkDIBAxIgJFDQkgABASRQ0DIAMgAhATDAsLIAAoAigEQCAAEOIBDAsLQRYhAiADIAAoAiAQGCEBIAAQEg0EIAAgBCABQRYQywMNBCADIAEQEyAAKAIQQSxHDQEgABASDQggACgCECEBCyABQfsARwRAIAFBKkcNASAAEBINCCAAQfkAEEpFBEAgAEH/lAFBABAWDAsLIAAQEg0IIAAoAhAiAUGDf0YgAUElakFRS3JFBEAMCgtB/QAhAiADIAAoAiAQGCEBIAAQEg0EIAAgBCABQf0AEMsDDQQgAyABEBMMAQsgABASDQcDQAJAIAAoAhAiAUH9AEYNACABQYN/RiABQSVqQVFLckUEQAwLC0EAIQEgAyAAKAIgEBghAiAAEBINBQJAIABB+QAQSgRAIAAQEg0HIAAoAhAiAUGDf0YgAUElakFRS3JFBEBBACEBIABB3vYAQQAQFgwICyADIAAoAiAQGCEBIAAQEkUNAQwHCyADIAIQGCEBCyAAIAQgASACEMsDDQUgAyABEBMgAyACEBMgACgCEEEsRw0AIAAQEkUNAQwJCwsgAEH9ABAsDQcLIAAQ7AIiAkUNBgsgAyAEIAIQ6wIhASADIAIQEyABQQBIDQUgBSAEKAI4IgMgAyAFSBshAwNAIAMgBUZFBEAgBCgCNCAFQQxsaiABNgIIIAVBAWohBQwBCwsgABC3AUUNBAwFC0F/IQYgAEEHEOEBDQQMAwsgAyABEBMgAyACEBMMBQsgASACEBMMBAsgAA0BC0EAIQYLIAYPCyAAQd72AEEAEBYLQX8LtQMBA38jAEFAaiIBJAACQCAAKAIQQYF/Rw0AIAEgACgCBDYCECABIAAoAhQ2AhQgASAAKAIYNgIcIAEgACgCMDYCGEGBfyECA0ACQCACQYF/Rw0AIAAoAjghAiABIAAoAhgiA0EBajYCBCABIAIgA2tBAms2AgAgAUEgakEUQbs8IAEQThpBfyECIAAQEg0CAkACQAJAIAAoAhAiA0GAAWoOWQEBAQEBAwMDAwMDAwMDAwMDAwMDAwEBAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgEBAQEDAQEBAQMBAQMDAQEBAwMBAwMBAQMDAQEBAQEBAQMBAQMBAQEBAQEBAAsgA0H9AEYNASADQTtHDQIgABASRQ0BDAQLIAAoAjBFDQELAkACfyABQSBqQd4vQQsQYUUEQCAAKAJAIgJBATYCQEEBDAELIAFBIGpBicoAQQoQYUUEQCAAKAJAIQJBAgwBCyAAKAIALQDoAUUNASABQSBqQbTZAEEJEGENASAAKAJAIQJBBAshAyACIAItAG4gA3I6AG4LIAAoAhAhAgwBCwsgACABQRBqEO4CIQILIAFBQGskACACCzUBAn9BASECIAAoAgAiAUHxAGtBA0kgAUEIRnIgAUHTAEZyBH9BAQUgACgCDEH4AHFBIEYLC0wBA38gACgCIEEYaiEBAkADQCABIgMoAgAiAkUNASACQQxqIQEgACACRw0ACyADIAAoAgw2AgAPC0GihAFBrvwAQaPlAkGl3gAQAAALGAEBfyABpygCICIDBEAgACADIAIRAAALCxsAIAAQGyAAQgA3AhAgAEIANwIIIABCADcCAAvEBAEIfyAAQeQAaiIHIABB4ABqIgM2AgAgACADNgJgIABB0ABqIQQgAEHUAGoiBSgCACECA0AgBCACIgFGBEACQAJAA0ACQCAEIAUoAgAiAUYEQCAHIQEDQCABKAIAIgEgA0YNAiAAIAFBCGtBwgAQ8AMgAUEEaiEBDAALAAsgAUEIayICKAIAQQBMDQIgAUEEayIFIAUtAABBD3E6AAAgACACQcMAEPADIAFBBGohBQwBCwsgAEECOgBoIABB2ABqIQIDQCADIAcoAgAiAUcEQCABQQRrLQAAQQ5xBEAgASgCACIEIAEoAgQiBTYCBCAFIAQ2AgAgAUEANgIAIAIoAgAiBCABNgIEIAEgAjYCBCABIAQ2AgAgAiABNgIADAIFIAAgAUEIaxDtBQwCCwALCyAAQQA6AGggAEEQaiEDIAAoAlwhAQNAIAEgAkcEQCABQQRrLQAAQQ5xDQMgASgCBCEHIAMgAUEIayAAKAIEEQAAIAchAQwBCwsgACACNgJcIAAgAEHYAGo2AlgPC0HFjQFBrvwAQecsQfrRABAAAAtB+YYBQa78AEGdLUHZORAAAAsgAUEEayIGLQAAQRBJBEAgASgCBCECIAAgAUEIayIIQcQAEPADIAYgBi0AAEEPcUEQcjoAACAIKAIADQEgASgCACIGIAEoAgQiCDYCBCAIIAY2AgAgAUEANgIAIAMoAgAiBiABNgIEIAEgAzYCBCABIAY2AgAgAyABNgIADAELC0GojwFBrvwAQcQsQeDdABAAAAsoAQF/IAEgASgCAEEBayICNgIAIAJFBEAgAEEQaiABIAAoAgQRAAALC/EBAgZ/AX4gAEEIECkiBEUEQEF/DwsgBEIBNwIAIAKnIQYgAkIgiKdBdUkhCANAAkACQCADQQJGDQAgACAAKQMwIANBMmoQSSIJQoCAgIBwg0KAgICA4ABSBEAgAEEQECkiBQ0CIAAgCRAPC0F/IQcgA0UNACAAIAEpAwAQDwsgACgCECAEEKMFIAcPCyAEIAQoAgBBAWo2AgAgBSAENgIIIAhFBEAgBiAGKAIAQQFqNgIACyAFIAI3AwAgCUKAgICAcFoEQCAJpyAFNgIgCyAAIAlBL0EBEJYDIAEgA0EDdGogCTcDACADQQFqIQMMAAsAC5gDAgJ+An9CgICAgDAhAgJAAkAgASkCVCIDQhiGQjiHpw0AIANCIIZCOIenBEAgA0IQhkI4h6dFDQEgASkDYCICQiCIp0F1TwRAIAKnIgEgASgCAEEBajYCAAsgACACEIoBQoCAgIDgAA8LIAEgA0L/////j2CDQoCAgIAQhDcCVANAIAEoAhQgBEoEQCABKAIQIARBA3RqKAIEIgUpAlRCGIZCOIenRQRAIAAgBRClBSICQoCAgIBwg0KAgICA4ABRDQQgACACEA8LIARBAWohBAwBCwsCQCABKAJQIgQEQEKAgICA4ABCgICAgDAgACABIAQRAwBBAEgbIQIMAQsgACABKQNIQoCAgIAwQQBBABAvIQIgAUKAgICAMDcDSAsgAkKAgICAcINCgICAgOAAUQRAIAFBAToAWSAAKAIQKQOAASIDQiCIp0F1TwRAIAOnIgAgACgCAEEBajYCAAsgASADNwNgCyABIAEpAlRC////h4Bgg0KAgIAIhDcCVAsgAg8LIAEgASkCVEL/////j2CDNwJUIAIL5gUCB38BfiMAQRBrIgUkAAJAIAEpAlQiCUIohkI4h6cNACABIAlC//+DeINCgIAEhDcCVANAAkAgASgCFCADTARAQQAhAwNAIAEoAiAgA0oEQAJAIAEoAhwiBCADQRRsaiICKAIIQQFHDQAgAigCDCIHQf0ARg0AIAAgBUEIaiAFQQxqIAEoAhAgAigCAEEDdGooAgQgBxD0AyICRQ0AIAAgAiABIAQgA0EUbGooAhAQ8wMMBAsgA0EBaiEDDAELC0EAIQIgASgCUA0DIAEoAkgoAiQhCEEAIQNBACEEA0ACQCABKAI4IARMBEADQCADIAEoAiBODQIgASgCHCADQRRsaiICKAIIRQRAIAggAigCAEECdGooAgAiBCAEKAIAQQFqNgIAIAIgBDYCBAsgA0EBaiEDDAALAAsgASgCECABKAI0IARBDGxqIgcoAghBA3RqKAIEIQICQAJAIAcoAgQiBkH9AEYEQCAAIAIQjQMiCUKAgICAcINCgICAgOAAUg0BDAYLIAAgBUEIaiAFQQxqIAIgBhD0AyIGBEAgACAGIAIgBygCBBDzAwwGCwJAIAUoAgwiBigCDEH9AEYEQCAAIAUoAggoAhAgBigCAEEDdGooAgQQjQMiCUKAgICAcINCgICAgOAAUQ0HIABBARDxAyICRQRAIAAgCRAPDAgLIAAgAkEYaiAJECAMAQsgBigCBCICRQRAIAUoAggoAkgoAiQgBigCAEECdGooAgAhAgsgAiACKAIAQQFqNgIACyAIIAcoAgBBAnRqIAI2AgAMAQsgACAIIAcoAgBBAnRqKAIAQRhqIAkQIAsgBEEBaiEEDAELC0F/IQIgACABKQNIQoGAgIAQQQBBABAhIglCgICAgHCDQoCAgIDgAFENAyAAIAkQD0EAIQIMAwsgA0EDdCEEQX8hAiADQQFqIQMgACAEIAEoAhBqKAIEEKYFQQBODQEMAgsLQX8hAgsgBUEQaiQAIAIL/gICBH8CfgJAIAEpAlRCMIZCOIenDQACQCABKAJQBEADQCACIAEoAiBODQIgASgCHCACQRRsaiIDKAIIRQRAIABBABDxAyIERQRAQX8PCyADIAQ2AgQLIAJBAWohAgwACwALIAEpA0ghB0F/IQMgACAAKQMwQQ0QSSIGQoCAgIBwg0KAgICA4ABRDQEgBqciAiAHpyIDNgIgIAMgAygCAEEBajYCACACQgA3AiQCQCADKAI8IgRFDQACQCAAIARBAnQQXyIERQ0AIAIgBDYCJEEAIQIDQCACIAMoAjxODQIgAygCJCACQQN0ai0AACIFQQFxBEAgACAFQQN2QQFxEPEDIgVFDQIgBCACQQJ0aiAFNgIACyACQQFqIQIMAAsACyAAIAYQD0F/DwsgASAGNwNIIAAgBxAPCyABQQE6AFVBACECA0AgASgCFCACTARAQQAPCyACQQN0IQRBfyEDIAJBAWohAiAAIAQgASgCEGooAgQQpwVBAE4NAAsLIAMLMQECfwJ/IAAQP0EBaiEBA0BBACABRQ0BGiAAIAFBAWsiAWoiAi0AAEEvRw0ACyACCwtwAgJ/AX4jAEEQayICJAACQCABQQBOBEAgAUGAgICAeHIhAwwBCyACIAE2AgAgAkEFaiIBQQtB3CIgAhBOGiAAIAEQYiIEQoCAgIBwg0KAgICA4ABRDQAgACgCECAEp0EBEKcCIQMLIAJBEGokACADCzIAIAAgARC8AiIBQoCAgIBwg0KAgICAwH5RBH4gAEG+1QBBABCAAkKAgICA4AAFIAELC9ADAgJ/AX4CQANAAkACQAJAAkACQAJAAkACQEEHIAJCIIinIgMgA0EHa0FuSRtBCmoOEgMEBwUHBwcHBwYAAQAABwcHAgcLIAAoAhAoAowBIgNFDQYgAy0AKEEEcUUNBgsgACgC2AEhACABQgA3AgwgAUKAgICAgICAgIB/NwIEIAEgADYCACABIALEELoCGiABDwsgACgCECgCjAEiA0UNBCADLQAoQQRxRQ0EIAJCgICAgMCBgPz/AHwiBUKAgICAgICA+P8Ag0KAgICAgICA+P8AUQ0EIAAoAtgBIQAgAUIANwIMIAFCgICAgICAgICAfzcCBCABIAA2AgAgASAFv50QugUaIAEPCyACp0EEag8LIAAoAhAoAowBIgNFDQIgAy0AKEEEcUUNAiACpyIDKAIMQf3///8HSg0CIAAoAtgBIQQgAUIANwIMIAFCgICAgICAgICAfzcCBCABIAQ2AgAgASADQQRqEEQaIAFBARDRARogACACEA8gAQ8LIAAgAhCqBSICQoCAgIBwg0KAgICA4ABSDQIMAwsgACACQQEQmgEiAkKAgICAcINCgICAgOAAUg0BDAILCyAAIAIQDyAAQewrQQAQFUEADwtBAAtmAQJ/IwBBEGsiAyQAIAAgASgCJCACIAEoAiBBA2xBAXYiACAAIAJIGyIAQQN0IANBDGoQqAEiAgR/IAMoAgwhBCABIAI2AiQgASAEQQN2IABqNgIgQQAFQX8LIQEgA0EQaiQAIAELUgEEfyAAKAIgIgJBACACQQBKGyEEQQAhAgNAAkAgAiAERwR/IAAoAhwiBSACQRRsaigCECABRw0BIAUgAkEUbGoFQQALDwsgAkEBaiECDAALAAvhAwEGfyMAQRBrIgckACAFQQRqIQkCQAJAA0BBACEGIAFBADYCACACQQA2AgAgBSgCCCIIQQAgCEEAShshCgJAA0AgBiAKRg0BAkAgAyAFKAIAIAZBA3RqIgsoAgBGBEAgCygCBCAERg0BCyAGQQFqIQYMAQsLIAZBAEgNAEECIQQMAwsgACAFQQggCSAIQQFqEHgEQEF/IQQMAwsgBSAFKAIIIgZBAWo2AgggBSgCACAGQQN0aiIGIAM2AgAgBiAAIAQQGCIINgIEIAMgCBCtBSIGBEAgBigCCEUNAiAGKAIMIgRB/QBGDQIgAygCECAGKAIAQQN0aigCBCEDDAELCyAIQRZHBEBBACEGA0AgAygCLCAGSgRAAkACQCAAIAdBDGogB0EIaiADKAIQIAMoAiggBkECdGooAgBBA3RqKAIEIAggBRCuBSIEQQFqDgUGAAEBBgELIAIoAgAiBARAIAEoAgAgBygCDEYEQCAHKAIIKAIMIAQoAgxGDQILIAFBADYCACACQQA2AgBBAyEEDAYLIAEgBygCDDYCACACIAcoAgg2AgALIAZBAWohBgwBCwtBACEEIAIoAgANAgtBASEEDAELIAEgAzYCACACIAY2AgBBACEECyAHQRBqJAAgBAvCAwEJfyABKAIIIgZBACAGQQBKGyEFAkACQANAIAQgBUYNASAEQQJ0IQcgBEEBaiEEIAcgASgCAGooAgAgAkcNAAtBACEFDAELQX8hBSAAIAFBBCABQQRqIAZBAWoQeA0AIAEgASgCCCIEQQFqNgIIIAEoAgAgBEECdGogAjYCACABQRBqIQkgAUEMaiEHQQAhBQNAAkAgAigCICAFTARAQQAhBUEAIQQDQCAEIAIoAixODQQgBEECdCEDIARBAWohBCAAIAEgAigCECADIAIoAihqKAIAQQN0aigCBEEBEK8FRQ0ACwwBCwJAIANBACACKAIcIAVBFGxqIgYoAhAiCkEWRhsNAEEAIQQgASgCFCIIQQAgCEEAShshCwJAAkADQCAEIAtGDQEgCiAHKAIAIARBDGxqIgwoAgBHBEAgBEEBaiEEDAELCyAEQQBODQELIAAgB0EMIAkgCEEBahB4DQIgASABKAIUIgRBAWo2AhQgASgCDCAEQQxsaiIEIAYoAhA2AgACQCADRQRAIAYoAghFDQELIARBADYCCAwCCyAEIAY2AggMAQsgDEEANgIICyAFQQFqIQUMAQsLQX8PCyAFC2gCAn8BfiAAQRBqIQIgACkCBCIEp0H/////B3EhAwJAIARCgICAgAiDUEUEQEEAIQADQCAAIANGDQIgAiAAQQF0ai8BACABQYcCbGohASAAQQFqIQAMAAsACyACIAMgARCyBSEBCyABCxIAIAAgASACIANBgIABENABGgssAQF/A0AgASADRkUEQCAAIANqLQAAIAJBhwJsaiECIANBAWohAwwBCwsgAgvOAQIDfwF+IAEgAkEBELIFIgNB/////wNxIQUgACgCNCAAKAIkQQFrIANxQQJ0aiEDA0AgAygCACIERQRAQQAPCwJAIAAoAjggBEECdGooAgAiAykCBCIGQiCIp0H/////A3EgBUcgBkKAgICAgICAgECDQoCAgICAgICAwABSciAGp0H/////B3EgAkcgBkKAgICACINCAFJycg0AIANBEGogASACEGENACAEQd4BTgRAIAMgAygCAEEBajYCAAsgBA8LIANBDGohAwwACwALfwEEfyABLQAAQdsARgRAIAFBAWoiAxA/QQFrIQIgACgCECgCOCEEQdABIQEDQCABQd4BRwRAAkAgBCABQQJ0aigCACIFKAIEQf////8HcSACRw0AIAVBEGogAyACEGENACAAIAEQGA8LIAFBAWohAQwBCwsQAQALIAAgARCqAQusAgMCfwJ+AXwjAEEgayICJABEAAAAAAAA+H8hBiAAKAIIQf////8HRwRAIAAoAgAhAyACQgA3AhggAkKAgICAgICAgIB/NwIQIAIgAzYCDCACQQxqIAAQRBoCfiACKAIUIgBB/f///wdMBEAgAkEMakE1QcgEEM4BGiACKAIUIQALQoCAgICAgID4/wAgAEH+////B0YNABogAEGAgICAeEYEQEIADAELIAIoAhwhAwJ+IAIoAhhBAkYEQCADKQIADAELIAM1AgBCIIYLIQQgAEGCeEwEQCAEQY54IABrrYghBEIADAELIARCC4hC/////////weDIQQgAEH+B2qtQjSGCyEFIAQgBYQgAjUCEEI/hoS/IQYgAkEMahAbCyABIAY5AwAgAkEgaiQACw4AIABCgICAgPB+EIAGC+4PAwt/A34BfCMAQUBqIhAkAEHfAEGAAiAEQSBxGyEJIARBgANxIQsCQAJAAkACfwJAAkACQAJAAkACQAJAAkACQCABLQAAIgZBK2sOAwEDAAMLQQEhDiABQQFqIQEMAQsgAUEBaiEBCyAEQYAIcUUNASABLQAAIQYLIAZB/wFxQTBHDQACQAJAAkAgAS0AASIHQfgARwRAIAdB7wBGDQIgB0HYAEcNAQsgA0FvcQ0FIAFBAmohB0EQIQMMCQsgAyAHQc8AR3INAQwFCyADRQ0EDAMLAkACQCAHQeIARwRAIANFIAdBwgBGcQ0BIAMgB0Ewa0H/AXFBCUtyDQQgBEEQcQ0CDAcLIAMNBAsgBEEEcUUNBUECIQMgAUECaiEHDAcLIAFBAWohB0EBIQYDQCABIAZqIQMgBkEBaiEGIAMtAAAiCEH4AXFBMEYNAAtBCCEDQYACIQlBASEKIAhB/gFxQThGDQQMBgsgBEEBcSALQYACckGAAkdyDQAgAUEIaiEHQfUcIQYgASEIA0AgBkH9HEcEQCAILQAAIAYtAABHDQIgBkEBaiEGIAhBAWohCAwBCwsgC0GAAkYEQCAAELYFIhFCgICAgHCDQoCAgIDgAFEEQEKAgICA4AAhEQwJCyARp0EEaiAOEIwBDAgLRAAAAAAAAPD/RAAAAAAAAPB/IA4bIhS9IhECfyAUmUQAAAAAAADgQWMEQCAUqgwBC0GAgICAeAsiBre9UQRAIAatIREMCAtCgICAgMB+IBFCgICAgMCBgPz/AH0gEUL///////////8Ag0KAgICAgICA+P8AVhshEQwHCyABIgcgA0UNAxoMBQsgASEHDAQLIARBBHFFDQAgAUECaiEHQQghAwwCCyABCyEHQQohAwwBC0KAgICAwH4hESAHLQAAEJYBIANPDQELQQAhBiADQQpHIQwgByEBA0ACQCAGIAdqIg0tAAAiCMAhDyAIEJYBIANOBEAgCSAPRw0BAkAgDCAGQQFHcg0AIA1BAWstAABBMEcNAEEBIQYMAgsgDS0AARCWASADTg0BCyAHIAZBAWoiBmohAQwBCwtBACEMAkACQCAEQQFxDQACQCAIQS5HDQAgDS0AASEIIAZFBEAgCBCWASADTg0BCyANQQFqIQFCgICAgMB+IREgCSAIwEYNAgNAAkAgCEH/AXEQlgEgA0gEQCABLQABIQgMAQtBASEMIAkgCMBHDQIgAS0AASIIEJYBIANODQILIAFBAWohAQwACwALIAEgB00NAAJAIAEtAAAiBkHlAEcEQCADQQpGIAZBxQBGcQ0BIAZBIHJB8ABHIANBEEtyDQJBASADdEGEggRxDQEMAgsgA0EKRw0BC0EBIQwgAUEBaiEGAkACQAJAIAEtAAFBK2sOAwACAQILIAFBAmohBgwBCyABQQJqIQYLIAYtAABBOmtBdkkNACAGIQEDQCABIgZBAWohASAGLQABIgjAIQ0gCEE6a0F1Sw0AIAkgDUcNASAGLQACQTprQXVLDQALCyABIAdGBEBCgICAgMB+IREMAQsgECEJAkAgASAHayINQQJqIg9BwQBPBEAgACgCECIGQRBqIA8gBigCABEDACIJRQ0BC0EAIQZBACEIIA4EQCAJQS06AABBASEICyANQQAgDUEAShshDgNAIAYgDkZFBEAgBiAHai0AACINQd8ARwRAIAggCWogDToAACAIQQFqIQgLIAZBAWohBgwBCwsgCCAJakEAOgAAAn4CQAJAIARBwABxBEACQAJAAkACQCABLQAAQewAaw4DAQIAAwsgAUEBaiEBQYABIQsMBQsgAUEBaiEBQYACIQsMBAsgAUEBaiEBQYADIQsM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IAFBEGohAgJ/IAdCgICAgAiDUCIFRQRAIAIvAQAMAQsgAi0AAAsiAUEwayIDQQlLDQACfwJAIAFBMEcEQEEBIQEDQCABIARGDQICfyAFRQRAIAIgAUEBdGovAQAMAQsgASACai0AAAtBMGsiBkEJSw0EIAFBAWohASAGrSADrUIKfnwiB6chAyAHQoCAgIAQVA0ACwwDC0EAIgMgBEEBRw0BGgsgACADNgIAQQELDwtBAAupAgIDfwF+AkAgACACEDhFDQAgAqciBC8BBkEORgRAIAAgASAEKAIgKQMAENAFDwsgAUKAgICAcFQNAAJAIAAgAkE7IAJBABAUIgJC/////29YBEBBfyEDIAJCgICAgHCDQoCAgIDgAFENASAAQcYwQQAQFQwBCyABpyEEIAKnIQUCQANAAkAgBCgCECgCLCIDRQRAQQAhAyAELwEGQTBHDQQgBCAEKAIAQQFqNgIAIAStQoCAgIBwhCEBA0AgACABEIwCIgFCgICAgHCDIgZCgICAgCBRDQRBfyEDIAZCgICAgOAAUQ0FIAGnIAVGBEAgACABEA8MAwsgABB7RQ0ACyAAIAEQDwwECyADIgQgBUcNAQsLQQEhAwwBC0EAIQMLIAAgAhAPCyADC9IDAgJ+An8jAEEgayIEJAACQCABQv///////////wCDIgNCgICAgICAwIA8fSADQoCAgICAgMD/wwB9VARAIAFCBIYgAEI8iIQhAyAAQv//////////D4MiAEKBgICAgICAgAhaBEAgA0KBgICAgICAgMAAfCECDAILIANCgICAgICAgIBAfSECIABCgICAgICAgIAIUg0BIAIgA0IBg3whAgwBCyAAUCADQoCAgICAgMD//wBUIANCgICAgICAwP//AFEbRQRAIAFCBIYgAEI8iIRC/////////wODQoCAgICAgID8/wCEIQIMAQtCgICAgICAgPj/ACECIANC////////v//DAFYNAEIAIQIgA0IwiKciBUGR9wBJDQAgBEEQaiAAIAFC////////P4NCgICAgICAwACEIgIgBUGB9wBrEGcgBCAAIAJBgfgAIAVrEI4CIAQpAwhCBIYgBCkDACIAQjyIhCECIAQpAxAgBCkDGIRCAFKtIABC//////////8Pg4QiAEKBgICAgICAgAhaBEAgAkIBfCECDAELIABCgICA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cINCgICAgJB/UXFFBEAgAEGN9wBBABAVDAELIAAgAUESEGUiAUKAgICAcINCgICAgOAAUQ0AIAGnIgQgAz4CJCAEIAI+AiAgACABQdUAQgBBAhAZGiABDwsgACADEA8gACACEA9CgICAgOAACw0AIAAgAUHOlQEQ/wMLZwEBfwJAIAFBAE4EQCAAKAIQIgIoAiwgAU0NASACKAI4IAFBAnRqKAIAIgEgASgCAEEBajYCACAAIAFBBBCABA8LQfKRAUGu/ABBzhdBmdIAEAAAC0HZ3wBBrvwAQc8XQZnSABAAAAtEAQF/IABB+AFqIQIgAEH0AWohAAN/IAAgAigCACICRgRAQQAPCyABIAJBBGsoAgBGBH8gAkEIawUgAkEEaiECDAELCwtSAgJ/AX4CQCAAKAIQKAKMASIBRQ0AIAEpAwgiA0KAgICAcFQNACADpyIBLwEGEO4BRQ0AIAEoAiAiAS0AEkEEcUUNACAAIAEoAkAQGCECCyACC6oPAgV/D34jAEHQAmsiBSQAIARC////////P4MhCyACQv///////z+DIQogAiAEhUKAgICAgICAgIB/gyENIARCMIinQf//AXEhCAJAAkAgAkIwiKdB//8BcSIJQf//AWtBgoB+TwRAIAhB//8Ba0GBgH5LDQELIAFQIAJC////////////AIMiDEKAgICAgIDA//8AVCAMQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQ0MAgsgA1AgBEL///////////8AgyICQoCAgICAgMD//wBUIAJCgICAgICAwP//AFEbRQRAIARCgICAgICAIIQhDSADIQEMAgsgASAMQoCAgICAgMD//wCFhFAEQCADIAJCgICAgICAwP//AIWEUARAQgAhAUKAgICAgIDg//8AIQ0MAwsgDUKAgICAgIDA//8AhCENQgAhAQwCCyADIAJCgICAgICAwP//AIWEUARAQgAhAQwCCyABIAyEUARAQoCAgICAgOD//wAgDSACIAOEUBshDUIAIQEMAgsgAiADhFAEQCANQoCAgICAgMD//wCEIQ1CACEBDAILIAxC////////P1gEQCAFQcACaiABIAogASAKIApQIgYbeSAGQQZ0rXynIgZBD2sQZ0EQIAZrIQYgBSkDyAIhCiAFKQPAAiEBCyACQv///////z9WDQAgBUGw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AgQLIBIgFHwhEgwDCyADRSEFIABBAEgNAQsgAikDcEIAUw0AIAIgAigCBEEBazYCBAsgBUUNAEGg1ARBHDYCACACEJoEQgAhE0IADAELIAEoApAGIgBFBEAgASAGt0QAAAAAAAAAAKIQqwEgASkDACETIAEpAwgMAQsgEiATUiATQglVckUEQCABQTBqIAYQeSABQSBqIAAQhgIgAUEQaiABKQMwIAEpAzggASkDICABKQMoEC4gASkDECETIAEpAxgMAQsgEkKaBFkEQEGg1ARBxAA2AgAgAUHgAGogBhB5IAFB0ABqIAEpA2AgASkDaEJ/Qv///////7///wAQLiABQUBrIAEpA1AgASkDWEJ/Qv///////7///wAQLiABKQNAIRMgASkDSAwBCyASQut1VwRAQaDUBEHEADYCACABQZABaiAGEHkgAUGAAWogASkDkAEgASkDmAFCAEKAgICAgIDAABAuIAFB8ABqIAEpA4ABIAEpA4gBQgBCgICAgICAwAAQLiABKQNwIRMgASkDeAwBCyAKBEAgCkEITARAIAFBkAZqIAdBAnRqIgAoAgAhCQNAIAlBCmwhCSAKQQFqIgpBCUcNAAsgACAJNgIACyAHQQFqIQcLAkAgCyASpyIISiALQQhKciAIQRFKcg0AIAhBCUYEQCABQcABaiAGEHkgAUGwAWogASgCkAYQhgIgAUGgAWogASkDwAEgASkDyAEgASkDsAEgASkDuAEQLiABKQOgASETIAEpA6gBDAILIAhBCEwEQCABQZACaiAGEHkgAUGAAmogASgCkAYQhgIgAUHwAWogASkDkAIgASkDmAIgASkDgAIgASkDiAIQLiABQeABakEAIAhrQQJ0QeDBBGooAgAQeSABQdABaiABKQPwASABKQP4ASABKQPgASABKQPoARDjBSABKQPQASETIAEpA9gBDAILIAhBEU5BACABKAKQBiIAIAhBfWxB0ABqdhsNACABQeACaiAGEHkgAUHQAmogABCGAiABQcACaiABKQPgAiABKQPoAiABKQPQAiABKQPYAhAuIAFBsAJqIAhBAnRBmMEEaigCABB5IAFBoAJqIAEpA8ACIAEpA8gCIAEpA7ACIAEpA7gCEC4gASkDoAIhEyABKQOoAgwBCwNAIAFBkAZqIAciAEEBayIHQQJ0aigCAEUNAAsCQCAI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AAEiAjoAASAAQQFqIQAgAUEBaiEBIAINAAsLC/UBAgF/AX4jAEHQAGsiAyQAAkACfiABQQBIBEAgAyABQf////8HcTYCACADQRBqIgFBwABB3CIgAxBOGiAAIAEQYgwBCyAAKAIQIgAoAiwgAU0NAQJAAkAgACgCOCIAIAFBAnRqKAIAIgEpAgQiBEKAgICAgICAgECDQoCAgICAgICAwABRDQAgAkUNASAEp0GAgICAeEcNACAAKAK8ASEBCyABIAEoAgBBAWo2AgAgAa1CgICAgJB/hAwBCyABIAEoAgBBAWo2AgAgAa1CgICAgIB/hAshBCADQdAAaiQAIAQPC0Hv3wBBrvwAQZgYQYfiABAAAAvrAgECfyAAIAEoAgQQEwNAIAEoAhAhAyACIAEoAhRORQRAIAAgAyACQQN0aigCABATIAJBAWohAgwBCwsgACgCECICQRBqIAMgAigCBBEAAEEAIQIDQAJAIAEoAhwhAyACIAEoAiBODQAgAyACQRRsaiIDKAIIRQRAIAAoAhAgAygCBBDrAQsgACADKAIQEBMgACADKAIMEBMgAkEBaiECDAELCyAAKAIQIgJBEGogAyACKAIEEQAAIAAoAhAiAkEQaiABKAIoIAIoAgQRAABBACECA0AgASgCNCEDIAIgASgCOE5FBEAgACADIAJBDGxqKAIEEBMgAkEBaiECDAELCyAAKAIQIgJBEGogAyACKAIEEQAAIAAgASkDQBAPIAAgASkDSBAPIAAgASkDYBAPIAAgASkDaBAPIAEoAggiAiABKAIMIgM2AgQgAyACNgIAIAFCADcCCCAAKAIQIgBBEGogASAAKAIEEQAACzABAX8gACgCOCABQQJ0aigCACIBIAEoAgAiAkEBazYCACACQQFMBEAgACABEKIDCwvAAQIBfwJ+QX8hAwJAIABCAFIgAUL///////////8AgyIEQoCAgICAgMD//wBWIARCgICAgICAwP//AFEbDQAgAkL///////////8AgyIFQoCAgICAgMD//wBWIAVCgICAgICAwP//AFJxDQAgACAEIAWEhFAEQEEADwsgASACg0IAWQRAIAEgAlIgASACU3ENASAAIAEgAoWEQgBSDwsgAEIAUiABIAJVIAEgAlEbDQAgACABIAKFhEIAUiEDCyADCwoAIABBfHEQpAMLZQEEfwNA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sgEhAyAAIAIQDyAAIAAgA0HdwAAQsgEiAiADQQEgARAhIQQgACACEA8gACADEA8gBAsMACAAIAEpAwAQswELygYCBH8DfiMAQYABayIFJAACQAJAAkAgAyAEQgBCABDtAUUNAAJ/IARC////////P4MhCgJ/IARCMIinQf//AXEiBkH//wFHBEBBBCAGDQEaQQJBAyADIAqEUBsMAgsgAyAKhFALCyEGIAJCMIinIghB//8BcSIHQf//AUYNACAGDQELIAVBEGogASACIAMgBBAuIAUgBSkDECICIAUpAxgiASACIAEQ4wUgBSkDCCECIAUpAwAhBAwBCyABIAJC////////////AIMiCiADIARC////////////AIMiCRDtAUEATARAIAEgCiADIAkQ7QEEQCABIQQMAgsgBUHwAGogASACQgBCABAuIAUpA3ghAiAFKQNwIQQMAQsgBEIwiKdB//8BcSEGIAcEfiABBSAFQeAAaiABIApCAEKAgICAgIDAu8AAEC4gBSkDaCIKQjCIp0H4AGshByAFKQNgCyEEIAZFBEAgBUHQAGogAyAJQgBCgICAgICAwLvAABAuIAUpA1giCUIwiKdB+ABrIQYgBSkDUCEDCyAJQv///////z+DQoCAgICAgMAAhCELIApC////////P4NCgICAgICAwACEIQogBiAHSARAA0ACfiAKIAt9IAMgBFatfSIJQgBZBEAgCSAEIAN9IgSEUARAIAVBIGogASACQgBCABAuIAUpAyghAiAFKQMgIQQMBQsgCUIBhiAEQj+IhAwBCyAKQgGGIARCP4iECyEKIARCAYYhBCAHQQFrIgcgBkoNAAsgBiEHCwJAIAogC30gAyAEVq19IglCAFMEQCAKIQkMAQsgCSAEIAN9IgSEQgBSDQAgBUEwaiABIAJCAEIAEC4gBSkDOCECIAUpAzAhBAwBCyAJQv///////z9YBEADQCAEQj+IIQEgB0EBayEHIARCAYYhBCABIAlCAYaEIglCgICAgICAwABUDQALCyAIQYCAAnEhBiAHQQBMBEAgBUFAayAEIAlC////////P4MgB0H4AGogBnKtQjCGhEIAQoCAgICAgMDDPxAuIAUpA0ghAiAFKQNAIQQMAQsgCUL///////8/gyAGIAdyrUIwhoQhAgsgACAENwMAIAAgAjcDCCAF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QCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAAALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC14BBH8gACgCACECA0AgAiwAACIDENECBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFQX8LIQEMAQsLIAEL3BICEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRICQAJAAkACQANAIAEhDCAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCAMIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAHIQkDQCAJLQABQSVHBEAgCSEBDAILIAdBAWohByAJLQACIQogCUECaiIBIQkgCkElRg0ACwsgByAMayIHIA5B/////wdzIhhKDQcgAARAIAAgDCAHEFsLIAcNBiAIIAE2AkwgAUEBaiEHQX8hDwJAIAEsAAEiChDRAkUNACABLQACQSRHDQAgAUEDaiEHIApBMGshD0EBIRMLIAggBzYCTEEAIQ0CQCAHLAAAIglBIGsiAUEfSwRAIAchCgwBCyAHIQpBASABdCIBQYnRBHFFDQADQCAIIAdBAWoiCjYCTCABIA1yIQ0gBywAASIJQSBrIgFBIE8NASAKIQdBASABdCIBQYnRBHENAAsLAkAgCUEqRgRAAn8CQCAKLAABIgEQ0QJFDQAgCi0AAkEkRw0AIAFBAnQgBGpBwAFrQQo2AgAgCkEDaiEJQQEhEyAKLAABQQN0IANqQYADaygCAAwBCyATDQYgCkEBaiEJIABFBEAgCCAJNgJMQQAhE0EAIRAM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IAgoAgRBAWsiBzYCBCAEIAlqQRBqIQQgBw0JIAAgACgCMEEBazYCMAwJCyAHCyEFIARBAWohBAwACwALIANBACAEQQFGGw0EQQAhCSADDQAgBEECRg0DCyAAIAU2AjAMAAsACyAJDwsgASAIQRBqIAAoAgxBA3QQHxoLIAgoAgghBSAIKAIMIQQgAiAIIAAoAgxBA3RqQRBqIAgtAAEiA0ECdBAfGiAAIAAoAjBBAWs2AjAMAAsAC4sCAQd/IAFBAnRBwP4DaigCACICIAFBAXRBkIAEai8BAGohCEEAIQECQANAIAIgCE8NASACQQFqIQYCQAJAIAItAAAiBEE/TQRAIAMgBEEDdmpBAWohAiABBEAgACADIAIQfg0DCyABQQFzIQEgBEEHcSACakEBaiEFDAELAn8gAyAEakH/AGsgBMBBAEgNABogBi0AACEFIARB3wBNBEAgAkECaiEGIAMgBEEIdGogBWpB//8AawwBCyACQQNqIQYgAi0AAiADIARBEHRqIAVBCHRqakH///8CawshBSADIQILIAEEQCAAIAIgBRB+DQELIAFBAXMhASAGIQIgBSEDDAELC0F/IQcLIAcLOABBsNQCIAEQrwQiAUEASARAQX4PCyAAIAFBHU0Ef0IBIAGthqcFIAFBAnRB2NgCaigCAAsQoQYLNQEBfyMAQRBrIgMkACADIAE2AgggAyACQQFqNgIMIAAgA0EIakECELEEIQAgA0EQaiQAIAALlwIBA38gASgCACICQf7/B08EQCAAQYY7QQAQOkF/DwsCQCACQQFNBEAgAEECQX8QuAEaDAELIAEoAgggAkECdGoiBEEEaygCACIDQX9GBEAgBEEIaygCACEDCyACQQF2IQIgA0H//wNNBEAgAEEVIAIQsgRBACECA0AgAiABKAIATg0CIAAgAkECdCIDIAEoAghqLwEAECogAEF/IAEoAgggA0EEcmooAgBBAWsiAyADQX5GG0H//wNxECogAkECaiECDAALAAsgAEEWIAIQsgRBACECA0AgAiABKAIATg0BIAAgAkECdCIDIAEoAghqKAIAEB0gACABKAIIIANBBHJqKAIAQQFrEB0gAkECaiECDAALAAtBAAsmAQF/IAAoAjgiAUEASARAIAAgACAAQTxqQQAQqwYiATYCOAsgAQvgAgEFfyMAQZABayIEJAAg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IgMgAkohBEKAgICAECEBIAMhAiAERQ0BDAILIAYoAgwgBWsiAyECC0KAgICAECEBIANBAEggAiADSHINAANAIAkgByADQQAgBRCzA0UEQEKBgICAECEBDAILIAIgA0chBCADQQFqIQMgBA0ACwsgACAKEA8gACALEA8LIAZBEGokACABC7ADAwd/AXwBfiMAQRBrIgUkAAJAIAAgARBZIgFCgICAgHCDQoCAgIDgAFENAAJAAkAgACADKQMAECgiDUKAgICAcINCgICAgOAAUQ0AIA2nIgkoAgRB/////wdxIQYgAaciCigCBEH/////B3EhBwJAIAQEQCAFIAcgBmsiCzYCDEF/IQhBACEEIAJBAkgNASAAIAUgAykDCBBCDQIgBSsDACIMvUL///////////8Ag0KAgICAgICA+P8AVg0BIAxEAAAAAAAAAABlBEAgBUEANgIMDAILIAwgC7djRQ0BIAUCfyAMmUQAAAAAAADgQWMEQCAMqgwBC0GAgICAeAs2AgwMAQsgBUEANgIMIAJBAk4EQCAAIAVBDGogAykDCCAHQQAQVw0CCyAHIAZrIQRBASEIC0F/IQIgBiAHSw0BIAQgBSgCDCIDayAIbEEASA0BA0AgCiAJIANBACAGELMDRQRAIAMhAgwDCyADIARGDQIgAyAIaiEDDAALAAsgACABEA8gACANEA9CgICAgOAAIQEMAQsgACABEA8gACANEA8gAq0hAQsgBUEQaiQAIAELkwECAX4BfyMAQRBrIgIkAEKAgICA4AAhBAJAIAAgARBZIgFCgICAgHCDQoCAgIDgAFEEQCABIQQMAQsCQCAAIAJBDGogAykDABC6AQ0AQoCAgIAwIQQgAigCDCIDQQBIDQAgAyABpyIFKAIEQf////8HcU8NACAFIAJBDGoQyQGtIQQLIAAgARAPCyACQRBqJAAgBAtpAgJ/AX4gACABEFkhAQNAIAIgBEwgAUKAgICAcINCgICAgOAAUXJFBEAgAyAEQQN0aikDACIGQiCIp0F1TwRAIAanIgUgBSgCAEEBajYCAAsgBEEBaiEEIAAgASAGEMQCIQEMAQsLIAELyAECAX4BfyMAQRBrIgIkAEKAgICA4AAhBAJAIAAgARBZIgFCgICAgHCDQoCAgIDgAFEEQCABIQQMAQsCQCAAIAJBDGogAykDABC6AQ0AAkAgAigCDCIDQQBOBEAgAyABpyIFKQIEIgSnQf////8HcUkNAQsgAEEvEC0hBAwBCyAFQRBqIQUgAAJ/IARCgICAgAiDUEUEQCAFIANBAXRqLwEADAELIAMgBWotAAALQf//A3EQnwMhBAsgACABEA8LIAJBEGokACAEC7gBAgJ+AX8jAEEQayICJABCgICAgOAAIQQCQCAAIAEQWSIBQoCAgIBwg0KAgICA4ABRBEAgASEEDAELAkAgACACQQxqIAMpAwAQugENAEKAgICAwH4hBCACKAIMIgNBAEgNACADIAGnIgYpAgQiBadB/////wdxTw0AIAZBEGohBiAFQoCAgIAIg1BFBEAgBiADQQF0ajMBACEEDAELIAMgBmoxAAAhBAsgACABEA8LIAJBEGokACAEC+MBAgF+An8jAEEQayICJAACQCAAIAFBLRBLIgNFBEAgBEEANgIAQoCAgIDgACEBDAELQoCAgIAwIQECQCADKQMAIgZCgICAgHCDQoCAgIAwUgRAIAIgAygCDCIFNgIMIAUgBqciBygCBEH/////B3FJDQEgACAGEA8gA0KAgICAMDcDAAsgBEEBNgIADAELIAcgAkEMahDJASEIIAMgAigCDDYCDCAEQQA2AgAgCEH//wNNBEAgACAIQf//A3EQnwMhAQwBCyAAIAcgBUEBdGpBEGpBAhDuAyEBCyACQRBqJAAgAQs3ACMAQRBrIgIkACAAIAJBDGogAykDABB3IQAgAigCDCEDIAJBEGokAEKAgICA4AAgA2etIAAbC04AIwBBEGsiAiQAQoCAgIDgACEBAkAgACACQQxqIAMpAwAQdw0AIAAgAkEIaiADKQMIEHcNACACKAIIIAIoAgxsrSEBCyACQRBqJAAgAQsGACAAtrsLfwAgACAAKQPQASIBQgyIIAGFIgFCGYYgAYUiAUIbiCABhSIBNwPQAUKAgICAwH4gAUKdurP7lJL9oiV+QgyIQoCAgICAgID4P4S/RAAAAAAAAPC/oL0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwujBAMDfAV/A34jAEEQayIIJAAgCEIANwMIAkACQCACQQBMDQBCgICAgOAAIQEgACAIQQhqIAMpAwAQQg0BQQEhCSAIKwMIIQQgAkEBRwRAA0AgAiAJRg0CIAAgCCADIAlBA3RqKQMAEEINAyAJQQFqIQkgCCsDACEFIwBBIGsiByQAIAS9Qv///////////wCDIg0gBb1C////////////AIMiDCAMIA1WGyIOvyEEAkAgDkI0iKciCkH/D0YNACANIAwgDCANVBsiDL8hBQJAIA5QDQAgDEI0iKciC0H/D0YNACALIAprQcEATgRAIAUgBKAhBAwCCwJ8IAtB/gtPBEAgBEQAAAAAAAAwFKIhBCAFRAAAAAAAADAUoiEFRAAAAAAAALBrDAELRAAAAAAAAPA/IApBvARLDQAaIAREAAAAAAAAsGuiIQQgBUQAAAAAAACwa6IhBUQAAAAAAAAwFAshBiAHQRhqIAdBEGogBRCKBiAHQQhqIAcgBBCKBiAGIAcrAwAgBysDEKAgBysDCKAgBysDGKCfoiEEDAELIAUhBAsgB0EgaiQADAALAAsgBJkhBAsgBL0iAQJ/IASZRAAAAAAAAOBBYwRAIASqDAELQYCAgIB4CyIAt71RBEAgAK0hAQwBC0KAgICAwH4gAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGyEBCyAIQRBqJAAgAQtOACAAIABEAAAAAAAA8L9EAAAAAAAA8D8gAEQAAAAAAAAAAGMbIAC9Qv///////////wCDQoCAgICAgID4/wBWGyAARAAAAAAAAAAAYRsLQwACfCABvUKAgICAgICA+P8Ag0KAgICAgICA+P8AUQRARAAAAAAAAPh/IACZRAAAAAAAAPA/YQ0BGgsgACABEI8DCwuDAQICfgF/IAC9IgFCNIinQf8PcSIDQf4HTQRAIAFCgICAgICAgICAf4MhAiADQf4HRyABQoCAgICAgIDwv39RckUEQCACQoCAgICAgID4P4S/DwsgAr8PCyADQbIITQR8IAFCP4cgAXxCAUGzCCADa62GIgFCAYh8QgAgAX2DvwUgAAsLggUDAnwFfwF+IwBBEGsiCSQAAn5CgICAgMD+//v/AEKAgICAwP7/eyAEGyACRQ0AGgJ8IAMpAwAiAUL/////D1gEQEEBIAIgAkEBTBshCiABpyEIQQEhBwNAIAcgCkcEQCAItyADIAdBA3RqKQMAIgFCgICAgBBaDQMaIAggAaciCyAIIAtKGyAIIAsgCCALSBsgBBshCCAHQQFqIQcMAQsLIAitDAILQoCAgIDgACAAIAlBCGogARBCDQEaQQEhByAJKwMICyEFIAcgAiACIAdIGyECA0AgAiAHRwRAQoCAgIDgACAAIAkgAyAHQQN0aikDABBCDQIaAkAgBb0iDEL///////////8Ag0KAgICAgICA+P8AVg0AIAkrAwAiBr0iAUL///////////8Ag0KAgICAgICA+P8AVgRAIAYhBQwBCyAFRAAAAAAAAAAAYSAGRAAAAAAAAAAAYXEhCiAEBEAgCgRAIAEgDIO/IQUMAgsgBSAFIAalIAa9Qv///////////wCDQoCAgICAgID4/wBWGyAGIAW9Qv///////////wCDQoCAgICAgID4/wBYGyEFDAELIAoEQCABIAyEvyEFDAELIAUgBSAGpCAGvUL///////////8Ag0KAgICAgICA+P8AVhsgBiAFvUL///////////8Ag0KAgICAgICA+P8AWBshBQsgB0EBaiEHDAELCyAFvSIBAn8gBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIgC3vVEEQCAArQwBC0KAgICAwH4gAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwshASAJQRBqJAAgAQstAEKAgICA4AAgACADKQMAIAMpAwhBABCLAiIAQQBHrUKAgICAEIQgAEEASBsLoAEBA34gAykDACIFIQQgAkEETgRAIAMpAxghBAsgBUL/////b1gEQCAAECRCgICAgOAADwsgAykDECEBQoCAgIDgACEGAkAgACADKQMIEDEiAkUNACABQiCIp0F1TwRAIAGnIgMgAygCAEEBajYCAAsgACAFIAIgASAEQQAQhgQhAyAAIAIQEyADQQBIDQAgA0EAR61CgICAgBCEIQYLIAYLjwEAAkACQCADKQMAIgFC/////29YBEAgBARAIAAQJAwDCyABQiCIp0F1SQ0BIAGnIgAgACgCAEEBajYCACABDwsgACABELYDIgJBAEgNASAEBEAgAkEAR61CgICAgBCEDwsgAkUEQCAAQfjiAEEAEBUMAgsgAaciACAAKAIAQQFqNgIACyABDwtCgICAgOAACyoAIAMpAwAiAUL/////b1gEQCAAECRCgICAgOAADwsgACABQQNBABCqAgtPAAJAAkAgAykDACIBQv////9vWARAIARFBEBCgICAgBAPCyAAECQMAQsgACABEJkBIgBBAE4NAQtCgICAgOAADwsgAEEAR61CgICAgBCEC2MBAX4gAykDACIEQv////9vWARAIAAQJEKAgICA4AAPC0KAgICA4AAhAQJAIAAgAykDCBAxIgJFDQAgACAEIAIQcSEDIAAgAhATIANBAEgNACADQQBHrUKAgICAEIQhAQsgAQs2ACADKQMAIgFCIIinIgJBf0YgBEUgAkF+cUECR3FyRQRAIAAQJEKAgICA4AAPCyAAIAEQ6AELYwECfgJAAkAgAykDACIBQv////9vWARAIAAQJAwBCyADKQMIIQUgASEEIAJBA04EQCADKQMQIQQLIAAgBRAxIgINAQtCgICAgOAADwsgACABIAIgBEEAEBQhASAAIAIQEyABC2YBAX4gAykDACIEQv////9vWARAIAAQJEKAgICA4AAPC0KAgICA4AAhAQJAIAAgAykDCBAxIgJFDQAgACAEIAJBABDVASEDIAAgAhATIANBAEgNACADQQBHrUKAgICAEIQhAQsgAQuLAQECfiADKQMAIgFC/////29YBEAgABAkQoCAgIDgAA8LIAMpAxAhBkKAgICA4AAhBQJAIAAgAykDCBAxIgJFDQAgACABIAIgBiAERUEOdBDHBCEDIAAgAhATIANBAEgNACAEBEAgA0EAR61CgICAgBCEDwsgAaciACAAKAIAQQFqNgIAIAEhBQsgBQuaAQIBfwJ+IwBBEGsiBCQAIAMpAwghBSADKQMAIgYhAQJAAkACQAJAIAJBA0gNACADKQMQIgFCgICAgHBaBEAgAactAAVBEHENAQsgAEGiPkEAEBUMAQsgACAEQQxqIAUQiQQiAg0BC0KAgICA4AAhAQwBCyAAIAYgASAEKAIMIgMgAhCQAyEBIAAgAiADEJsDCyAEQRBqJAAgAQsVACAAIAMpAwAgAyADQQhqQQIQnQMLVgIBfgF/IAAgARC0AyIBQoCAgIBwg0KAgICA4ABRBEAgAQ8LQoCAgIAwIQIgAaciAygCBEGAgICAeEcEQCAAIAAoAhAgAxDBAhAtIQILIAAgARAPIAILCQAgACABELQDC1sBAX4jAEEQayICJAAgAiAAIAEQtAMiATcDCAJAIAFCgICAgHCDQoCAgIDgAFEEQCABIQQMAQsgAEKAgICAMEEBIAJB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IQMCQAJAAkAgAkHGAGsOBgIDAQMDAgALIAJBFkcNAgtBECEDCyAAIAEgAxCQAg8LIABBtitBABAVC0KAgICA4AALlgEBAXwjAEEQayICJAACfkKAgICA4AAgACACQQhqIAEQmwINABogAisDCCIEvSIBAn8gBJlEAAAAAAAA4EFjBEAgBKoMAQtBgICAgHgLIgC3vVEEQCAArQwBC0KAgICAwH4gAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwshASACQRBqJAAgAQvsAgIDfwF8IwBB0ABrIgQkACAEQRBqQQBBOBArGiAEQoCAgICAgID4PzcDIEKAgICAwH4hAQJAIAJFDQBBByACIAJBB04bIgJBACACQQBKGyECA0AgAiAFRwRAIAAgBEEIaiADIAVBA3QiBmopAwAQQgRAQoCAgIDgACEBDAMLIAQrAwgiB71CgICAgICAgPj/AINCgICAgICAgPj/AFENAiAEQRBqIAZqIAedOQMAAkAgBQ0AIAQrAxAiB0QAAAAAAAAAAGZFIAdEAAAAAAAAWUBjRXINACAEIAdEAAAAAACwnUCgOQMQCyAFQQFqIQUMAQsLIARBEGpBABDgAiIHvSIBAn8gB5lEAAAAAAAA4EFjBEAgB6oMAQtBgICAgHgLIgW3vVEEQCAFrSEBDAELQoCAgIDAfiABQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbIQELIARB0ABqJAAgAQtWABDQBCIBQoCAgIAIfEL/////D1gEQCABQv////8Pgw8LQoCAgIDAfiABub0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwsIAEKAgICAMAuqHQIGfwR+IwBB0ABrIgYkAAJAAkAgAEEQaiIDQYgCIAAoAgARAwAiAUUNACABQQVqQQBBgwIQKxogAUEFOgAEIAFBATYCACAAKAJQIgQgAUEIaiIFNgIEIAEgAEHQAGo2AgwgASAENgIIIAAgBTYCUCABIAMgACgCQEEDdCAAKAIAEQMAIgQ2AiggBEUEQCADIAEgACgCBBEAAAwBCyABIAA2AhAgACgCSCIDIAFBFGoiBTYCBCABIABByABqNgIYIAEgAzYCFCAAIAU2AkggAULxgICAgDk3AtwB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aiAAIAFB1QAgAUEAEBQQowENACAAIAVB1QACfiACKQMIIgFCgICAgAh8Qv////8PWARAIAFC/////w+DDAELQoCAgIDAfiABub0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwsQRUEASA0AQoCAgIDgACEIIABBLhB2IgFCgICAgHCDQoCAgIDgAFENACAAQSAQKSIDRQRAIAEhCAwBCyADIAk3AwggAyAFNwMAIAMgBKciCkHnAEEAEMcBQX9zQR92NgIQIApB9QBBABDHASEKIANBADYCGCADIApBf3NBH3Y2AhQgAUKAgICAcFoEQCABpyADNgIgCyAAIAYQDyAAIAQQDyABIQcMAQsgACAJEA8gACAGEA8gACAEEA8gACAFEA8gACAIEA8LIAJBIGokACAHC74EAgd+An8jAEEQayICJAACQCABQv////9vWARAIAAQJEKAgICA4AAhBgwBC0KAgICA4AAhBkKAgICAMCEFAkAgAAJ+AkAgACADKQMAECgiB0KAgICAcINCgICAgOAAUQ0AIAAgACABQe4AIAFBABAUECYiA0EASA0AIANFBEAgACABIAcQyAEhBgwDCyAAIAAgAUHvACABQQAQFBAmIgtBAEgNACAAIAFB1QBCABBFQQBIDQBCgICAgOAAIAAQPiIIQoCAgIBwg0KAgICA4ABRDQEaIAenIQwCQANAIAAgBRAPIAAgASAHEMgBIgVCgICAgHCDIgRCgICAgCBRDQECQCAEQoCAgIDgAFENAAJ/IAAgACAFQgAQTRA3IgRCgICAgHCDIgpCgICAgJB/UgRAQQAgCkKAgICA4ABSDQEaDAILIASnKAIEQf////8HcUULIQMgACAIIAkgBBCGAUEASA0AIAlCAXwhCSADRQ0BIAAgAkEIaiAAIAFB1QAgAUEAEBQQowFBAEgNACAAIAFB1QACfiAMIAIpAwggCxDxAiIEQoCAgIAIfEL/////D1gEQCAEQv////8PgwwBC0KAgICAwH4gBLm9IgRCgICAgMCBgPz/AH0gBEL///////////8Ag0KAgICAgICA+P8AVhsLEEVBAE4NAQsLIAgMAgsgCacEQCAIIQYMAwsgACAIEA9CgICAgCAhBgwCC0KAgICAMAsQDwsgACAFEA8gACAHEA8LIAJBEGokACAG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/////w+DEGpBAEgNDSADRQRAIAkgCSgCAEEBajYCAAsgACABIAZBAWqtIBQQakEASA0NIA5CgICAgDBSBEAgEUIgiKdBdU8EQCARpyICIAIoAgBBAWo2AgALIAAgASAGQQJqrSAREGpBAEgNDgsgBCABNwNYIARCgICAgDA3A1AgACATEA8gACAAIBkgBCAEQdAAakEAEJ0DEDchEwwBC0KAgICAMCEVIA5CgICAgDBSBEAgACARECUiFUKAgICAcINCgICAgOAAUQ0NCyAEIBc3A3ggBCAVNwNwIAQgATcDaCAEIBQ3A1ggBCAPNwNQIAQgEkL/////D4M3A2AgACATEA8gACAEQdAAahDtBCETIAAgFRAPCyATQoCAgIBwg0KAgICA4ABRDQsgB6wgElcEQCAEQThqIgIgCSAHIBKnEFEaIAIgExCHARogD6cpAgRC/////weDIBJ8pyEHCyAFQQFqIQUMAQsLIARBOGoiAiAJIAcgCSgCBEH/////B3EQURogAhA2IRAMCgsgACAPEA9CgICAgDAhEwJAAn8CQCAAIAAgEkIAEE0QNyIPQoCAgIBwgyIOQoCAgICQf1IEQCAOQoCAgIDgAFINASAOIRAMAwsgD6coAgRB/////wdxDQAgACAEQdAAaiAAIAFB1QAgAUEAEBQQowFBAEgNAiAAIAFB1QACfiAJIAQpA1AgDRDxAiIOQoCAgIAIfEL/////D1gEQCAOQv////8PgwwBC0KAgICAwH4gDrm9Ig5CgICAgMCBgPz/AH0gDkL///////////8Ag0KAgICAgICA+P8AVhsLEEUiAkEATg0AIAJBHnZBAnEMAQtBAAtFDQELCwwCCwwGC0KAgICAMCETC0KAgICAMCEBDAQLIARB0ABqIAsgCCALKAIEQf////8HcRBRDQAgACASEA8gACgCECICQRBqIAMgAigCBBEAACAEQdAAahA2IRAMAQsgACASEA8gACgCECICQRBqIAMgAigCBBEAACAEKAJQKAIQIgJBEGogBCgCVCACKAIEEQAAC0KAgICAMCERC0KAgICAMCETQoCAgIAwIQFCgICAgDAhDwsgBCgCOCgCECICQRBqIAQoAjwgAigCBBEAAAsgBBDuBCAAIBcQDyAAIA8QDyAAIAEQDyAAIBMQDyAAIBEQDyAAIBQQDwsgBEGQAWokACAQC6IBACMAQSBrIgIkAAJ+AkAgAUL/////b1gEQCAAECQMAQsgACACQQhqIgNBABA9GiADQS8QOxoCQCADIAAgAUHsACABQQAQFBB/DQAgAkEIaiIDQS8QOxogAyAAIAFB7QAgAUEAEBQQfw0AIAJBCGoQNgwCCyACKAIIKAIQIgBBEGogAigCDCAAKAIEEQAAC0KAgICA4AALIQEgAkEgaiQAIAELTgECfkKAgICA4AAhBCAAIAEgAykDABDIASIBQoCAgIBwgyIFQoCAgIDgAFIEfiAAIAEQDyAFQoCAgIAgUq1CgICAgBCEBUKAgICA4AALC/gCAgN+AX8CQAJAIAAgARDwAiICRQ0AIAMpAwghBgJAAkACQCADKQMAIgRCgICAgHBUDQAgBKciAy8BBkESRw0AIAZCgICAgHCDQoCAgIAwUgRAIABBnvkAQQAQFUKAgICA4AAPCyADKAIgIgcgBygCAEEBajYCACADKAIkIgMgAygCAEEBajYCACAHrUKAgICAkH+EIQQgA61CgICAgJB/hCEFDAELQoCAgIAwIQUCfiAEQoCAgIBwg0KAgICAMFEEQCAAQS8QLQwBCyAAIAQQKAsiBEKAgICAcINCgICAgOAAUQ0BIAAgBCAGEJgEIgVCgICAgHCDQoCAgIDgAFENAQsgACACNQIAQoCAgICQf4QQDyAAIAI1AgRCgICAgJB/hBAPIAIgBT4CBCACIAQ+AgAgACABQdUAQgAQRUEASA0BIAFCIIinQXVJDQIgAaciACAAKAIAQQFqNgIADAILIAAgBBAPIAAgBRAPC0KAgICA4AAPCyABC2oBAX8gAUL/////b1gEQCAAECRCgICAgOAADwsCfiABpyIDLwEGQRJHBEBCgICAgDAgACABIAAoAigpA5ABEFINARogAEESEIYDQoCAgIDgAA8LIAMoAiQtABAgAnFBAEetQoCAgIAQhAsLvQQBCX8jAEEgayIHJAACQAJAAkACQAJAIAFC/////29YBEAgABAkDAELIAAgASAAKAIoKQOQARBSDQIgACABEPACIgINAQtCgICAgOAAIQEMAwsgAigCACIIKAIEIgJB/////wdxIgMNAQsgAEH+kwEQYiEBDAELIAAgB0EIaiADIAJBH3YQigMaIAhBEGohBiAIKAIEQf////8HcSEJQQAhAANAAkACQCAAIAlIBEAgAEEBaiECQX8hBQJAAn8CQAJAAkACQAJAAkACQAJ/IAgpAgRCgICAgAiDIgFQIgpFBEAgBiAAQQF0ai8BAAwBCyAAIAZqLQAACyIDQdsAaw4DAwECAAsgAiEAAkAgA0EKaw4EBAsLBQALIANBL0cNByAERQ0FQQEhBEEvIQMMBwtB3AAhAyACIAlODQYgAEECaiEAIApFBEAgBiACQQF0ai8BACEFDAoLIAIgBmotAAAhBQwJC0EAIQRB3QAhAwwFC0HbACEDIAQgAiAJTnINBiAAQQJqIQAgAVAEQEHdAEF/IAIgBmotAABB3QBGIgQbIQUgACACIAQbIQBBASEEDAgLQQEhBEHdAEF/IAYgAkEBdGovAQBB3QBGIgobIQUgACACIAobIQAMBwtB7gAMAgtB8gAMAQtBACEEQS8LIQVB3AAhAwsgAiEADAILIAdBCGoQNiEBDAMLIAIhAEEBIQQLIAdBCGogAxCLARogBUEASA0AIAdBCGogBRCLARoMAAsACyAHQSBqJAAgAQvWAgIDfwF+IwBBEGsiBCQAAkAgAUL/////b1gEQCAAECRCgICAgOAAIQUMAQtCgICAgOAAIQUgACAAIAFB7gAgAUEAEBQQJiICQQBIDQAgAgR/IARB5wA6AAggBEEJagUgBEEIagshAiAAIAAgAUHr4wAQsgEQJiIDQQBIDQAgAwRAIAJB6QA6AAAgAkEBaiECCyAAIAAgAUGL5QAQsgEQJiIDQQBIDQAgAwRAIAJB7QA6AAAgAkEBaiECCyAAIAAgAUH01AAQsgEQJiIDQQBIDQAgAwRAIAJB8wA6AAAgAkEBaiECCyAAIAAgAUHvACABQQAQFBAmIgNBAEgNACADBEAgAkH1ADoAACACQQFqIQILIAAgACABQfsdELIBECYiA0EASA0AIAAgBEEIaiIAIAMEfyACQfkAOgAAIAJBAWoFIAILIABrEJMCIQULIARBEGokACAFC6UDAQR+IwBBEGsiAyQAIAQCfwJAAkACQAJAIAAgAUEuEEsiAkUEQEKAgICAMCEBDAELIAIoAhgEQEKAgICAMCEBQQEMBQsgACACKQMAIgggAikDCCIGEMgBIgFCgICAgHCDIgdCgICAgOAAUg0BC0KAgICAMCEHDAELIAdCgICAgCBRBEAgAkEBNgIYQoCAgIAwIQFBAQwDCyACKAIQBEAgACAAIAFCABBNEDciB0KAgICAcIMiCUKAgICA4ABRDQECQCAJQoCAgICQf1INACAHpygCBEH/////B3ENACAAIANBCGogACAIQdUAIAhBABAUEKMBQQBIDQIgACAIQdUAAn4gBqcgAykDCCACKAIUEPECIgZCgICAgAh8Qv////8PWARAIAZC/////w+DDAELQoCAgIDAfiAGub0iBkKAgICAwIGA/P8AfSAGQv///////////wCDQoCAgICAgID4/wBWGwsQRUEASA0CCyAAIAcQDwwCCyACQQE2AhgMAQsgACABEA8gACAHEA9CgICAgOAAIQELQQALNgIAIANBEGokACABCw4AIAAQtQJCgICAgOAACwkAQoCAgIDAfgsWACAAIAMpAwAgAykDCCADKQMQEJQEC9EBAgN+An8jAEEQayIHJAACQCAAIAdBDGogAykDABDlASIIRQRAQoCAgIDgACEEDAELIAAgCCAHKAIMQdKIARD1BSEBIAAgCBBUAkAgAkECSCABQoCAgIBwg0KAgICA4ABRcg0AIAAgAykDCCIGEDhFDQBCgICAgOAAIQQCQCAAEDQiBUKAgICAcINCgICAgOAAUQRAIAEhBQwBCyAAIAVBLyABQQcQGUEASA0AIAAgBUEvIAYQ+QQhBAsgACAFEA8MAQsgASEECyAHQRBqJAAgBAsNACAAIAEgAkEwEP0FCwsAIAAgAUEwEP4FC7QDAgN/An4jAEHQAGsiBiQAQX8hBwJAIAAgBkHIAGogAUHCABCBASIIRQ0AIAYpA0giAUKAgICAcINCgICAgDBRBEAgCCkDACEBIANCIIinQXVPBEAgA6ciByAHKAIAQQFqNgIACyAAIAEgAiADIAQgBRCGBCEHDAELIAAgAhBcIglCgICAgHCDQoCAgIDgAFEEQCAAIAEQDwwBCyAIKQMAIQogBiAENwM4IAYgAzcDMCAGIAk3AyggBiAKNwMgIAAgASAIKQMIQQQgBkEgahAvIQEgACAJEA8gAUKAgICAcINCgICAgOAAUQ0AAkACQCAAIAEQJiIHBEAgACAGIAgoAgAgAhBMIgJBAEgNASACRQ0DAkAgBigCACICQRNxRQRAIAAgBikDCCADEFJFDQEMBAsgAkERcUEQRw0DIAY1AhxCIIZCgICAgDBSDQMLIAAgBhBI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gICAwH4gALi9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLOQEBfkKAgICAwH4gASkDACICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCzsBAX5CgICAgMB+IAEqAgC7vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCwwAIAAgASkDABD7AwsMACAAIAEpAwAQhwILSQEBfiABKAIAIgBBAE4EQCAArQ8LQoCAgIDAfiAAuL0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsHACABNQIACwcAIAEzAQALDgAgATIBAEL/////D4MLCQAgABC1AkF/Cw4AIAEwAABC/////w+DCwcAIAExAAALDwAgACsDACABKwMAEP0ECxEAIAAqAgC7IAEqAgC7EP0ECxkBAn4gASkDACIDIAApAwAiBFQgAyAEVmsLGQECfiABKQMAIgMgACkDACIEUyADIARVawsXACABKAIAIgEgACgCACIASSAAIAFJawsXACABKAIAIgEgACgCACIASCAAIAFIawsNACAALwEAIAEvAQBrCw0AIAAuAQAgAS4BAGsLDQAgACwAACABLAAAawsNACAALQAAIAEtAABrC8wNBAd/AXwBfgF9IwBBIGsiBiQAQoCAgIDgACENAkAgACABEJIBIgpBAEgNAEF/IQUCQAJAAkAgCkUNAEEBIQgCQAJAIARBAUYEQEF/IQggBiAKQQFrIgU2AhwgAkECSA0BIAAgBkEIaiADKQMIEEINBiAGKwMIIgy9Qv///////////wCDQoGAgICAgID4/wBaBEAgBkEANgIcDAILIAxEAAAAAAAAAABmBEAgDCAFt2NFDQIgBgJ/IAyZRAAAAAAAAOBBYwRAIAyqDAELQYCAgIB4CzYCHAwCC0F/IQUgDCAKt6AiDEQAAAAAAAAAAGMNBCAGAn8gDJlEAAAAAAAA4EFjBEAgDKoMAQtBgICAgHgLNgIcDAELIAZBADYCHCACQQJIBEAgCiECDAILIAAgBkEcaiADKQMIIAoiAiACEFcNBQwBC0F/IQILIAGnIgkoAiAoAgwoAiAtAAQEQEF/IQUgBEF/Rw0CQX9BACADNQIEQiCGQoCAgIAwUhshBQwDCyAGQgA3AxACf0EHIAMpAwAiAUIgiKciAyADQQdrQW5JGyIDQXZHBEAgA0EHRwRAQX8hBSADDQMgBiABxCIBNwMQIAG5IQxBASEHQQEMAgsgBgJ+IAFCgICAgMCBgPz/AHy/IgyZRAAAAAAAAOBDYwRAIAywDAELQoCAgICAgICAgH8LIg03AxBBASEHIAwgDblhDAELIAGnIQNBfyEFAn8CQAJAIAkvAQZBHGsOAgABBAtBACAGQRBqIANBBGpBABCCA0UNARoMAwsgAygCDCIHQf////8HRg0CIAYCfkIAIAdBAEwNABogAygCCA0DIAdBwABLDQMgAygCFCILIAMoAhAiA0ECdGpBBGsoAgAhBSAFQSAgB2t2rSAHQSBNDQAaQgAhDSADQQJPBH4gA0ECdCALakEIazUCAAVCAAsgBa1CIIaEQcAAIAdrrYgLNwMQQQALIQdEAAAAAAAAAAAhDEEACyEDQX8hBQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAJLwEGQRVrDgsBAAEDBAYHCwwJCg8LIANFDQ4gBikDECINQoABfEKAAloNDgwBCyADRQ0NIAYpAxAiDUL/AVYNDQsgCSgCJCEAIARBAUYEQCANp0H//wNxIQMgBigCHCEFA0AgAiAFRg0NIAMgACAFai0AAEYNDiAFIAhqIQUMAAsACyAAIAYoAhwiAmogDadB//8DcSAKIAJrEPsBIgJFDQwgAiAAayEFDAwLIANFDQsgBikDECINQoCAAnxCgIAEWg0LDAELIANFDQogBikDECINQv//A1YNCgsgCSgCJCEAIAYoAhwhBSANp0H//wNxIQMDQCACIAVGDQkgACAFQQF0ai8BACADRg0KIAUgCGohBQwACwALIANFDQggBikDECINQoCAgIAIfEKAgICAEFoNCAwBCyADRQ0HIAYpAxAiDUL/////D1YNBwsgDachACAJKAIkIQMgBigCHCEFA0AgAiAFRg0GIAMgBUECdGooAgAgAEYNByAFIAhqIQUMAAsACyAHRQ0FIAy9Qv///////////wCDQoGAgICAgID4/wBaBEAgBEF/Rw0HIAkoAiQhACAGKAIcIQUDQCACIAVGDQYgACAFQQJ0aigCAEH/////B3FBgICA/AdLDQcgBSAIaiEFDAALAAsgDCAMtiIOu2INBSAJKAIkIQAgBigCHCEFA0AgAiAFRg0FIAAgBUECdGoqAgAgDlsNBiAFIAhqIQUMAAsACyAHRQ0EIAkoAiQhACAMvUL///////////8Ag0KBgICAgICA+P8AWgRAIARBf0cNBiAGKAIcIQUDQCACIAVGDQUgACAFQQN0aikDAEL///////////8Ag0KAgICAgICA+P8AVg0GIAUgCGohBQwACwALIAYoAhwhBQNAIAIgBUYNBCAAIAVBA3RqKwMAIAxhDQUgBSAIaiEFDAALAAsgB0UNASAAKAIQKAKMASIABH8gAC0AKEEEcUECdgVBAAtFDQMgA0UNAyAGKQMQIgFCgYCAgICAgHBTDQMgAUKAgICAgICAEFkNAwwBCyAHRQ0AIAAoAhAoAowBIgAEfyAALQAoQQRxQQJ2BUEAC0UNAiADRQ0CIAYpAxAiAUIAUw0CIAFC/////////w9VDQILIAkoAiQhACAGKAIcIQUgBikDECEBA0AgAiAFRg0BIAAgBUEDdGopAwAgAVENAiAFIAhqIQUMAAsAC0F/IQULIARBf0YNAQsgBa0hDQwBCyAFQQBOrUKAgICAEIQhDQsgBkEgaiQAIA0LggMCBH8DfiMAQSBrIgUkAAJ+IAAgARCSASIIQQBOBEBBLCEHAkAgAkEATCAEckUEQEKAgICAMCEJIAMpAwAiCkKAgICAcINCgICAgDBRDQFCgICAgOAAIAAgChAoIglCgICAgHCDQoCAgIDgAFENAxpBfyEHIAmnIgYoAgRBAUcNASAGLQAQIQcMAQtCgICAgDAhCQsgACAFQQhqQQAQPRpBACECAkADQCACIAhHBEACQCACRQ0AIAdBAE4EQCAFQQhqIAcQO0UNAQwECyAFQQhqIAZBACAGKAIEQf////8HcRBRDQMLIAAgASACELABIgtCgICAgHCDIgpCgICAgCBRIApCgICAgDBRckUEQCAKQoCAgIDgAFENAyAFQQhqIAQEfiAAIAsQ/gQFIAsLEH8NAwsgAkEBaiECDAELCyAAIAkQDyAFQQhqEDYMAgsgBSgCCCgCECICQRBqIAUoAgwgAigCBBEAACAAIAkQDwtCgICAgOAACyELIAVBIGokACALC7gCAwN/AX4BfCMAQSBrIgMkACACKAIERQRAIAEoAgAhBSADIAIoAgAiASACKAIcIAAoAgAiACACKAIgbGogAigCGBENADcDECADIAEgAigCHCAFIAIoAiBsaiACKAIYEQ0ANwMYAkAgASACKQMQQoCAgIAwQQIgA0EQahAhIgZCgICAgHCDQoCAgIDgAFEEQCACQQE2AgQMAQsCQAJ/IAZC/////w9YBEAgBqciBEEfdSAEQQBHcgwBCyABIANBCGogBhBuQQBIDQEgAysDCCIHRAAAAAAAAAAAZCAHRAAAAAAAAAAAY2sLIgRFBEAgACAFSyAAIAVJayEECyABIAIpAwgQ9wJBAE4NASACQQE2AgQMAQsgAkEBNgIECyABIAMpAxAQDyABIAMpAxgQDwsgA0EgaiQAIAQLtwUCBX8DfiMAQTBrIgIkACACIAE3AxAgAiAANgIIIAJBADYCDCACIAMpAwAiCTcDGEKAgICA4AAhCgJAAkAgACABEJIBIgVBAEgNACAJQoCAgIBwgyILQoCAgIAwUgRAIAAgCRBgDQELAkAgBUECSQ0AIAGnIgMvAQZBFWsiBEH//wNxQQtPDQIgAiAEQQJ0Qfz/D3EiBEGAgAJqKAIANgIgQQEgAy8BBkHlpgFqLQAAIgZ0IQggAygCJCEHIAtCgICAgDBSBEAgACAFQQJ0ECkiBEUNAkEAIQMDQCADIAVGRQRAIAQgA0ECdGogAzYCACADQQFqIQMMAQsLIAIgCDYCKCACIAc2AiQgBCAFQQRB0wAgAkEIahC+AgJAIAIoAgxFBEAgACAFIAZ0IgMQKSIGDQELIAAoAhAiAEEQaiAEIAAoAgQRAAAMAwsgBiAHIAMQHyEGQQAhAwJAAkACQAJAAkAgCEEBaw4IAAEIAggICAMICwNAIAMgBUYNBCADIAdqIAYgBCADQQJ0aigCAGotAAA6AAAgA0EBaiEDDAALAAsDQCADIAVGDQMgByADQQF0aiAGIAQgA0ECdGooAgBBAXRqLwEAOwEAIANBAWohAwwACwALA0AgAyAFRg0CIAcgA0ECdCIIaiAGIAQgCGooAgBBAnRqKAIANgIAIANBAWohAwwACwALA0AgAyAFRg0BIAcgA0EDdGogBiAEIANBAnRqKAIAQQN0aikDADcDACADQQFqIQMMAAsACyAAKAIQIgNBEGogBiADKAIEEQAAIAAoAhAiAEEQaiAEIAAoAgQRAAAMAQsgByAFIAggBEGsgAJqKAIAIAJBCGoQvgIgAigCDA0BCyABQiCIp0F1TwRAIAGnIgAgACgCAEEBajYCAAsgASEKCyACQTBqJAAgCg8LEAEAC6ECAgJ/A34jAEEwayICJABCgICAgOAAIQYCQCAAIAFBABCTASIFRQ0AIAAgAkEMaiADKQMAIAUoAigiBCAEEFcNACACIAQ2AgggAykDCCIHQoCAgIBwg0KAgICAMFIEQCAAIAJBCGogByAEIAQQVw0BIAIoAgghBAsgAigCDCEDIAAgAUEAEIAFIgdCgICAgPAAg0KAgICA4ABRDQAgBS8BBiEFIAAgBxAPIAAgAUEAEIEFIghCgICAgHCDQoCAgIDgAFENACAFQeWmAWotAAAhBSACIAg3AxggAiABNwMQIAIgBCADayIEQQAgBEEAShutNwMoIAIgB6cgAyAFdGqtNwMgIABBBCACQRBqEPYCIQYgACAIEA8LIAJBMGokACAGC8IDAgV/BH4jAEEgayICJABCgICAgDAhCQJAAkAgACABEJIBIgRBAEgNACAAIAJBDGogAykDACAEIAQQVw0AIAIgBDYCCCADKQMIIgpCgICAgHCDQoCAgIAwUgRAIAAgAkEIaiAKIAQgBBBXDQEgAigCCCEECyACKAIMIQMgACABQQAQkwEiBkUNACAGLwEGIQcgAiAEIANrIgVBACAFQQBKGyIErSILNwMYIAIgATcDECAAQQIgAkEQahD2AiIJQoCAgIBwg0KAgICA4ABRDQAgBUEATA0BIAdB5aYBai0AACEHIAAgARD3Ag0AIAAgCRD3Ag0AQgAhCgJAIAAgCUEAEJMBIgVFDQAgBi8BBiIIIAUvAQZHDQAgBSgCICgCFCAIQeWmAWotAAAiCHYgBEkNACADIARqIAYoAiAoAhQgCHZLDQAgBSgCJCAGKAIkIAMgB3RqIAQgB3QQHxoMAgsDQCAKIAtRDQIgACABIAMgCqdqrRBNIgxCgICAgHCDQoCAgIDgAFENASAAIAkgCiAMQYCAARDXASEEIApCAXwhCiAEQQBODQALCyAAIAkQD0KAgICA4AAhCQsgAkEgaiQAIAkL5wIBAX4gACABEJIBIgJBAEgEQEKAgICA4AAPCwJAIAJFDQACQAJAAkACQAJAIAGnIgAvAQZB5aYBai0AAA4EAAECAwQLIAAoAiQiACACaiECA0AgACACQQFrIgJPDQUgAC0AACEDIAAgAi0AADoAACACIAM6AAAgAEEBaiEADAALAAsgACgCJCIAIAJBAXRqIQIDQCAAIAJBAmsiAk8NBCAALwEAIQMgACACLwEAOwEAIAIgAzsBACAAQQJqIQAMAAsACyAAKAIkIgAgAkECdGohAgNAIAAgAkEEayICTw0DIAAoAgAhAyAAIAIoAgA2AgAgAiADNgIAIABBBGohAAwACwALIAAoAiQiACACQQN0aiECA0AgACACQQhrIgJPDQIgACkDACEEIAAgAikDADcDACACIAQ3AwAgAEEIaiEADAALAAsQAQALIAFCIIinQXVPBEAgAaciACAAKAIAQQFqNgIACyABC4cCAgZ+An8jAEEgayILJABCgICAgDAhBgJAAkAgACABEJIBIgxBAEgNACAAIAMpAwAiCBBgDQBCgICAgDAhByACQQJOBEAgAykDCCEHCyAMrSEJA0AgBSAJUgRAIAAgASAFEE0iBkKAgICAcINCgICAgOAAUQ0CIAsgATcDECALIAU3AwggCyAGNwMAIAAgCCAHQQMgCxAhIgpCgICAgHCDQoCAgIDgAFENAiAAIAoQJgRAIARFBEAgBiEFDAULIAAgBhAPDAQFIAAgBhAPIAVCAXwhBQwCCwALC0L/////D0KAgICAMCAEGyEFDAELIAAgBhAPQoCAgIDgACEFCyALQSBqJAAgBQufBQIEfwJ+IwBBIGsiBCQAQoCAgIDgACEIAkAgACABEJIBIgZBAEgNAAJAIAGnIgUvAQYiB0EVRgRAIAMpAwAiCUIgiKdBdU8EQCAJpyIHIAcoAgBBAWo2AgALIAAgBEEIaiAJEMQFDQIgBCAENAIINwMQDAELIAdBG00EQCAAIARBCGogAykDABB3DQIgBCAENQIINwMQDAELIAdBHU0EQCAAIARBEGogAykDABD/BEUNAQwCCyAAIARBCGogAykDABBCDQEgBAJ+IAUvAQZBHkYEQCAEKwMItrytDAELIAQpAwgLNwMQCyAEQQA2AggCQCACQQFMBEAgBCAGNgIcDAELIAAgBEEIaiADKQMIIAYgBhBXDQEgBCAGNgIcIAJBA0kNACADKQMQIglCgICAgHCDQoCAgIAwUQ0AIAAgBEEcaiAJIAYgBhBXDQELIAUoAiAoAgwoAiAtAAQEQCAAEGsMAQsCQAJAAkACQAJAAkAgBS8BBkHlpgFqLQAADgQAAQIDBAsgBCgCHCICIAQoAggiAEwNBCAFKAIkIABqIAQtABAgAiAAaxArGgwECyAEKAIIIgAgBCgCHCICIAAgAkobIQIgBC8BECEDA0AgACACRg0EIAUoAiQgAEEBdGogAzsBACAAQQFqIQAMAAsACyAEKAIIIgAgBCgCHCICIAAgAkobIQIgBCgCECEDA0AgACACRg0DIAUoAiQgAEECdGogAzYCACAAQQFqIQAMAAsACyAEKAIIIgAgBCgCHCICIAAgAkobIQIgBCkDECEIA0AgACACRg0CIAUoAiQgAEEDdGogCDcDACAAQQFqIQAMAAsACxABAAsgAUIgiKdBdU8EQCAFIAUoAgBBAWo2AgALIAEhCAsgBEEgaiQAIAgL2wUCA38IfiMAQUBqIgUkAEKAgICAMCELIAVCgICAgDA3AzggBUKAgICAMDcDMAJAAkACQCAEQQhxIgcEQCABQiCIp0F1TwRAIAGnIgYgBigCAEEBajYCAAsgBSAAIAEQkgEiBqw3AwggBkEATg0BDAILIAAgBUEIaiAAIAEQJSIBEDwNAQsgACADKQMAIg0QYA0AAkAgAkEBTARAIAUpAwgiDEIAIAxCAFUbIQogBEEBcSEEA0AgCCAKUQRAIABBsh5BABAVDAQLIAwgCEJ/hXwgCCAEGyEJIAhCAXwhCCAHBEAgBSAAIAEgCRBzIgk3AzAgCUKAgICAcINCgICAgOAAUQ0EDAMLIAAgASAJIAVBMGoQhQEiAkEASA0DIAJFDQALIAUpAzAhCQwBCyADKQMIIglCIIinQXVPBEAgCaciAiACKAIAQQFqNgIACyAEQQFxIQQgBSkDCCEMCyAIIAwgCCAMVRshDgNAIAggDlENAiAMIAhCf4V8IAggBBshCgJAAkACQCAHBEAgBSAAIAEgChBzIgs3AzggC0KAgICAcINCgICAgOAAUg0BDAMLIAAgASAKIAVBOGoQhQEiAkEASA0CIAJFDQELIApCgICAgAh8Qv////8PWAR+IApC/////w+DBUKAgICAwH4gCrm9IgpCgICAgMCBgPz/AH0gCkL///////////8Ag0KAgICAgICA+P8AVhsLIgtCgICAgHCDQoCAgIDgAFENASAFIAk3AxAgBSABNwMoIAUgCzcDICAFIAUpAzgiDzcDGCAAIA1CgICAgDBBBCAFQRBqECEhCiAAIAsQDyAAIA8QDyAFQoCAgIAwNwM4IApCgICAgHCDQoCAgIDgAFENASAAIAkQDyAKIQkLIAhCAXwhCAwBCwsgBSAJNwMwIAUpAzghCwsgACAFKQMwEA8gACALEA9CgICAgOAAIQkLIAAgARAPIAVBQGskACAJC6wIAgN/CX4jAEEwayIFJABCgICAgDAhCSAFQoCAgIAwNwMoAkACQAJAAkAgBEEIcSIHBEAgAUIgiKdBdU8EQCABpyIGIAYoAgBBAWo2AgALIAUgACABEJIBIgasNwMIIAZBAE4NAQwCCyAAIAVBCGogACABECUiARA8DQELIAMpAwAhD0KAgICAMCEOIAJBAk4EQCADKQMIIQ4LIAAgDxBgDQACQAJAAkACQAJAAkACQCAEDg0FAAYBAgYGBgUABgMEBgtCgICAgBAhCQwFCyAAIAECfiAFKQMIIghCgICAgAh8Qv////8PWARAIAhC/////w+DDAELQoCAgIDAfiAIub0iCEKAgICAwIGA/P8AfSAIQv///////////wCDQoCAgICAgID4/wBWGwsQqwIiCUKAgICAcINCgICAgOAAUg0EDAULIAAgAUIAEKsCIglCgICAgHCDQoCAgIDgAFINAwwECyAFIAE3AxAgBSAFNQIINwMYIABBAiAFQRBqEPYCIglCgICAgHCDQoCAgIDgAFINAgwDCyAAED4iCUKAgICAcINCgICAgOAAUg0BQoCAgIDgACEJDAILQoGAgIAQIQkLQgAhCCAFKQMIIgpCACAKQgBVGyEQA0AgCCAQUgRAAkACQCAHBEAgBSAAIAEgCBBzIgo3AyggCkKAgICAcINCgICAgOAAUg0BDAULIAAgASAIIAVBKGoQhQEiAkEASA0EIAJFDQELIAghCiAIQoCAgIAIWgRAQoCAgIDAfiAIub0iCkKAgICAwIGA/P8AfSAKQv///////////wCDQoCAgICAgID4/wBWGyEKCyAKQoCAgIBwg0KAgICA4ABRDQMgBSABNwMgIAUgCjcDGCAFIAUpAygiDTcDECAAIA8gDkEDIAVBEGoQISELIAAgChAPIAtCgICAgHCDQoCAgIDgAFENAwJAAkACQAJAAkACQAJAIAQODQABBQIEBQUFAAEFAwQFCyAAIAsQJg0FQoCAgIAQIQgM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AUL///////////8Ag0KAgICAgICA+P8AVhshBQwCCxABAAsgAjAAAEL/////D4MhBQsgB0EQaiQAIAULUgIBfwF+QoCAgIDgACEEIAAgASACEJMBIgMEfiADKAIgIgMoAgwoAiAtAAQEQCACRQRAQgAPCyAAEGtCgICAgOAADwsgAzUCFAVCgICAgOAACwvXAQEDfwJAIAFCgICAgHBUDQAgAaciAy8BBkE5Rw0AIAMoAiAiBEUNACAEQcwAaiEDIARByABqIQUDQCAFIAMoAgAiA0cEQCADKQMQIgFCgICAgGBaBEAgACABpyACEQAACyADKQMYIgFCgICAgGBaBEAgACABpyACEQAACyADKQMgIgFCgICAgGBaBEAgACABpyACEQAACyADKQMoIgFCgICAgGBaBEAgACABpyACEQAACyADQQRqIQMMAQsLIAQoAgRBfnFBBEYNACAAIARBCGogAhDvAwsLBgBB4MYECzABAX8CQCABQoCAgIBwVA0AIAGnIgIvAQZBOUcNACACKAIgIgJFDQAgACACEIcFCwsNACAAIAEgAkE3EP0FCwsAIAAgAUE3EP4FCxYBAX8gAacoAiAiAgRAIAAgAhCIBQsLMQEBfyABpygCICICBEAgACACKAIIEKMFIAAgAikDABAjIABBEGogAiAAKAIEEQAACwvcAQEEfwJAIAFCgICAgHBUDQAgAaciBC8BBkExRw0AIAQoAiAiBkUNAEEAIQQDQCAEQQJGRQRAIAYgBEEDdGoiBUEIaiEDIAVBBGohBQNAIAUgAygCACIDRwRAIAMpAwgiAUKAgICAYFoEQCAAIAGnIAIRAAALIAMpAxAiAUKAgICAYFoEQCAAIAGnIAIRAAALIAMpAxgiAUKAgICAYFoEQCAAIAGnIAIRAAALIANBBGohAwwBCwsgBEEBaiEEDAELCyAGKQMYIgFCgICAgGBUDQAgACABpyACEQAACwuMAQEFfwJAIAFCgICAgHBUDQAgAaciAi8BBkExRw0AIAIoAiAiBEUNAANAIANBAkZFBEAgBCADQQN0aiICQQRqIQUgAigCCCECA0AgAiAFRkUEQCACKAIEIQYgACACEK4CIAYhAgwBCwsgA0EBaiEDDAELCyAAIAQpAxgQIyAAQRBqIAQgACgCBBEAAAsLJQAgBSkDACIBQiCIp0F1TwRAIAGn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IAMpAwAQpgENACAAEJcBIgVCgICAgHCDQoCAgIDgAFENACAAIAJBFGogAykDCBC7ASIGRQRAIAAgBRAPDAELIAAoAtgBIQMgAkIANwIMIAJCgICAgICAgICAfzcCBCACIAM2AgAgAkIBEDAaIAIgAikDKCIBpyIHQf////8DQQEQzAEaIAIgAkJ/Qf////8DQQEQdRogBadBBGoiAyAGIAIQkwUaAkAgBEUgAVByDQAgAkIBEDAaIAIgB0EBa0H/////A0EBEMwBGiADIAIQ0wFBAEgNACACQgEQMBogAiAHQf////8DQQEQzAEaIAMgAyACQf////8DQQEQ5AEaCyACEBsgACAGIAJBFGoQXiAAIAUQzQEhAQsgAkEwaiQAIAEL6hMCAn4BfyMAQdABayIEJAAgACAEEJgFIAEgARA0IgNBqi0CfiAEKQMIIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANB3+AAAn4gBCkDECICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQboqAn4gBCkDGCICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQagqAn4gBCkDICICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQfooAn4gBCkDKCICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQfrfAAJ+IAQpAzAiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0HYKAJ+IAQpAzgiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0G23wACfiAEKQNAIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANBzSkCfiAEKQNIIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANBl+AAAn4gBCkDUCICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQeIoAn4gBCkDWCICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQc/fAAJ+IAQpA2AiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0GGKgJ+IAQpA2giAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0Gt4AACfiAEKQNwIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANBxyoCfiAEKQN4IgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANB8OAAAn4gBCkDgAEiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0HN4AACfiAEKQOIASICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQZIqAn4gBCkDkAEiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0G44AACfiAEKQOYASICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQdUqAn4gBCkDoAEiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0HvJwJ+IAQpA6gBIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANB6icCfiAEKQOwASICQoCAgIAIfEL/////D1gEQCACQv////8PgwwBC0KAgICAwH4gArm9IgJCgICAgMCBgPz/AH0gAkL///////////8Ag0KAgICAgICA+P8AVhsLEEAgASADQeszAn4gBCkDuAEiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAEgA0H7JwJ+IAQpA8ABIgJCgICAgAh8Qv////8PWARAIAJC/////w+DDAELQoCAgIDAfiACub0iAkKAgICAwIGA/P8AfSACQv///////////wCDQoCAgICAgID4/wBWGwsQQCABIANBo98AAn4gBCkDyAEiAkKAgICACHxC/////w9YBEAgAkL/////D4MMAQtCgICAgMB+IAK5vSICQoCAgIDAgYD8/wB9IAJC////////////AINCgICAgICAgPj/AFYbCxBAIAMQUyEAIARB0AFqJAAgAAufAgEDfiABQv////9vWARAIAAQJEKAgICA4AAPC0KAgICA4AAhBQJ+IAAgAUE2IAFBABAUIgRCgICAgHCDQoCAgIAwUQRAIABBlAEQLQwBCyAAIAQQNwsiBEKAgICAcIMiBkKAgICA4ABSBH4CfiAAIAFBMyABQQAQFCIBQoCAgIBwg0KAgICAMFEEQCAAQS8QLQwBCyAAIAEQNwsiAUKAgICAcIMiBUKAgICA4ABRBEAgACAEEA9CgICAgOAADwsCQCAGQoCAgICQf1EEQCAEpygCBEH/////B3FFDQELIAVCgICAgJB/UQRAIAGnKAIEQf////8HcUUNAQsgAEHMngEgBEH4mQEQvgEhBAsgACAEIAEQxAIFQoCAgIDgAAsLXwEBfwJAIAFFBEAgAkUNASAAIAIQ2QMPCyACRQRAIAAgACgCAEEBazYCACAAIAAoAgRBCGs2AgQgARCbAQwBCyAAKAIIIAAoAgQgAmpPBH8gASACEPMFBUEACw8LQQALJgAgAQRAIAAgACgCAEEBazYCACAAIAAoAgRBCGs2AgQgARCbAQsLCQAgACABNgIYCygBAX8CQCABpygCICIDRQ0AIAMoAgBBBEYNACAAIANBCGogAhDvAwsLPwEBfwJAIAFCgICAgHBUDQAgAaciAi8BBkEvRw0AIAIoAiAiAkUNACAAIAIQ7AMgAEEQaiACIAAoAgQRAAALC0cBAX8CQCABpygCICIDRQ0AIAMpAwAiAUKAgICAYFoEQCAAIAGnIAIRAAALIAMpAwgiAUKAgICAYFQNACAAIAGnIAIRAAALCzABAX8gAacoAiAiAgRAIAAgAikDABAjIAAgAikDCBAjIABBEGogAiAAKAIEEQAACwsnAQF/IAGnKAIgIgIEQCAAIAIpAwAQIyAAQRBqIAIgACgCBBEAAAsLWgECfyABpygCICICBEACQCACKQMAIgFCgICAgHBUDQAgAactAAVBAnENACACKAIMIgNFDQAgACADEOoDIAIpAwAhAQsg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ACIGRQ0AIAYtAAVBAXFFDQAgACAGIAIRAAALIANBAWohAwwACwALIAAgBCACEQAACwt8AQN/IAGnIgIoAigiAwRAIAAgA61CgICAgHCEECMLIAIoAiAiAwRAIAIoAiQiBARAQQAhAgNAIAIgAygCPE5FBEAgACAEIAJBAnRqKAIAEOsBIAJBAWohAgwBCwsgAEEQaiAEIAAoAgQRAAALIAAgA61CgICAgGCEECMLCxIAIAGnKAIgIgAEQCAAEKQDCwseACABpykDICIBQoCAgIBgWgRAIAAgAacgAhEAAAsLGQAgACABpyIAKQMgECMgAEKAgICAMDcDIAtEAQJ/IAGnIQQDQCAEKAIoIANLBEAgBCgCJCADQQN0aikDACIBQoCAgIBgWgRAIAAgAacgAhEAAAsgA0EBaiEDDAELCwtGAQN/IAGnIQMDQCADKAIkIQQgAiADKAIoT0UEQCAAIAQgAkEDdGopAwAQIyACQQFqIQIMAQsLIABBEGogBCAAKAIEEQAAC2kBAn8jAEEQayIHJAACfwJAIAGnIggtAAVBCHFFDQAgACAHQQxqIAIQrAFFDQAgBygCDCAIKAIoTw0AQX8gACAIEJIDDQEaCyAAIAEgAiADIAQgBSAGQYCACHIQbQshACAHQRBqJAAgAAuBAgIDfwF+AkACQCACQQBODQAgAacpAyAiCkKAgICAcINCgICAgJB/Ug0AIAJB/////wdxIgggCqciBykCBCIKp0H/////B3FPDQACQEEEIAYQkwNFDQBBASECIAZBgMAAcUUNAiADQoCAgIBwg0KAgICAkH9SDQAgA6ciCSkCBCIBQv////8Hg0IBUg0AIAdBEGohBwJ/IApCgICAgAiDUEUEQCAHIAhBAXRqLwEADAELIAcgCGotAAALAn8gAUKAgICACINQRQRAIAkvARAMAQsgCS0AEAtGDQILIAAgBkHh6QAQbw8LIAAgASACIAMgBCAFIAZBgIAIchBtIQILIAILRgACfwJAIAJBAE4NACABpykDICIBQoCAgIBwg0KAgICAkH9SDQBBACACQf////8HcSABpygCBEH/////B3FJDQEaC0EBCwuzAQECfwJAIANBAE4NACACpykDICICQoCAgIBwg0KAgICAkH9SDQAgA0H/////B3EiAyACpyIEKQIEIgKnQf////8HcU8NAEEBIQUgAUUNACAEQRBqIQQCfyACQoCAgIAIg1BFBEAgBCADQQF0ai8BAAwBCyADIARqLQAACyEDIAFBBDYCACAAIANB//8DcRCfAyECIAFCgICAgDA3AxggAUKAgICAMDcDECABIAI3AwgLIAULWwECfyABpygCECIAQTBqIQMgACAAKAIYIAJxQX9zQQJ0aigCACEAA0ACQCAARQ0AIAMgAEEBa0EDdGoiBCgCBCACRg0AIAQoAgBB////H3EhAAwBCwsgAEEARws1AQF+IAEpAwAiAkIgiKdBdU8EQCACpyIBIAEoAgBBAWo2AgALIAAgAhCKAUKAgICA4AAQUwuOAQECfyABKAIAIgJBAEoEQCABIAJBAWsiAjYCAAJAIAINACABLQAEQfABcUEQRw0AIAEoAggiAiABKAIMIgM2AgQgAyACNgIAIAFBADYCCCAAKAJgIgIgAUEIaiIDNgIEIAEgAEHgAGo2AgwgASACNgIIIAAgAzYCYAsPC0HFjQFBrvwAQbAsQc/0ABAAAAtvAQJ/IAEgASgCACICQQFqNgIAIAJFBEAgASgCCCICIAEoAgwiAzYCBCADIAI2AgAgAUEANgIIIAAoAlAiAiABQQhqIgM2AgQgASAAQdAAajYCDCABIAI2AgggACADNgJQIAEgAS0ABEEPcToABAsLDwAgASABKAIAQQFqNgIAC4gBAgF+AX9BACECQoCAgIAwIQEDQAJAIAJBAkcEfiAFIAJBA3QiBGoiBzUCBEIghkKAgICAMFENASAAQawuQQAQFUKAgICA4AAFQoCAgIAwCw8LIAMgBGopAwAiBkIgiKdBdU8EQCAGpyIEIAQoAgBBAWo2AgALIAcgBjcDACACQQFqIQIMAAsAC1wBAn4gAiAAKAIAEC0hA0EAIQAgA0KAgICAcINCgICAgOAAUSACIAEoAgAQLSIEQoCAgIBwg0KAgICA4ABRckUEQCADpyAEpxCDAiEACyACIAMQDyACIAQQDyAAC2sBAX4CQAJAAkACQAJAIAMtAAUiAQ4EAwICAAELIAAgAygCCBDKBA8LIAFBCEYNAgsQAQALIAAgAygCDCADKAIAIAMtAAggAy0ACSADLgEGEIIBDwsgACAAEDQiBCADKAIIIAMoAgwQIiAECwkAIAAgAxCNAwtTAQF+IAAQNCIEQoCAgIBwg0KAgICA4ABSBEAgASABKAIAQQFqNgIAIAAgBEE8IAGtQoCAgIBwhEEDEBlBAE4EQCAEDwsgACAEEA8LQoCAgIDgAAsDAAELagEBfyMAQRBrIgMkACABKAIEIQEgAiADQQxqIAAoAgQQrAFBACACIANBCGogARCsARtFBEBB0MUAQa78AEGDOkH8yQAQAAALIAMoAgghACADKAIMIQEgA0EQaiQAQX8gACABRyAAIAFLGwvaAwICfgF/IwBBIGsiBSQAAkACQCAAIAFBLBBLIgJFDQBCgICAgDAhAQJAIAIpAwAiBkKAgICAcINCgICAgDBSBEACfwJAIAanIgMvAQZBFWtB//8DcUEKTQRAIAMoAiAoAgwoAiAtAARFDQEgABBrDAULIAAgBUEcaiAGENYBDQQgBUEcagwBCyADQShqCyEIIAIoAgwiAyAIKAIASQ0BIAAgAikDABAPIAJCgICAgDA3AwALIARBATYCAAwCCyACIANBAWo2AgwgBEEANgIAIAIoAghFBEAgA0EATgRAIAOtIQEMAwtCgICAgMB+IAO4vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbIQEMAgtCgICAgOAAIQEgACACKQMAIAMQsAEiBkKAgICAcINCgICAgOAAUQ0BIAIoAghBAUYEQCAGIQEMAgsgBSAGNwMIIAUgA0EATgR+IAOtBUKAgICAwH4gA7i9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLIgc3AwAgAEECIAUQiQMhASAAIAYQDyAAIAcQDwwBCyAEQQA2AgBCgICAgOAAIQELIAVBIGokACABCxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwAL7gICBH8CfiMAQRBrIgMkAAJAAkAgAikDECIHQoCAgIBwg0KAgICAkH9SBEAgAEGDlAFBABAVDAELIAIpAxghCCAAIAcQswEiBEUEQEEAIQQMAQsgACAIELMBIgZFDQACQCAAIAQgBhDJBSIBRQ0AIAAgARD+A0EASARAIABBARCPBAwBCyABIAEoAgBBAWo2AgAgACABrUKAgICAUIQgACkDwAFBAEEAEMgFIgdCgICAgHCDQoCAgIDgAFENACAAIAcQDyABIQULIAAgBhBUIAVFDQAgAyAAIAUQjQMiBzcD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ACEEIANCADcCaCADQoCAgICAgICAgH83AmAgAyAENgJcIANB3ABqIgUgARBEGiADQgA3AlQgA0KAgICAgICAgIB/NwJMIAMgBDYCSCADKAJkIQYgA0EANgJkIANByABqIgFCqtWq1QoQMBogA0EANgJQIAUgARCyAgRAIAMgAygCZEEBajYCZCAGQQFrIQYLIANByABqEBsgAkEBakEBdhCVBiEFIANCADcCVCADQoCAgICAgICAgH83AkwgAyAENgJIIANCADcCQCADQoCAgICAgICAgH83AjggAyAENgI0IANB3ABqIgEgAUJ/Qf////8DQQAQdRogBUEAIAVBAEobIQkgAiAFaiACIAVBAXRuQQFqIgpBAXRqQSBqIQJBACEBA0AgASAJRkUEQCADQcgAaiIHIANB3ABqIghCASACQQAQdRogA0E0aiILIAcgAkEGEJEGIAcgC0IBIAJBABB1GiAIIAggByACQQAQlQEaIAFBAWohAQwBCwsgA0IANwIsIANCgICAgICAgICAfzcCJCADIAQ2AiAgA0IANwIYIANCgICAgICAgICAfzcCECADIAQ2AgwgA0EgaiIBIANB3ABqIgRCAiACQQAQdRogASAEIAEgAkEAEJUBGiADQQxqIAEgASACQQAQQxogAEIAEDAaIAqsIQwDQCAMQgBXRQRAIANByABqIgFCARAwGiADQTRqIgQgDKdBAXRBAXKsEDAaIAEgASAEIAJBABCVARogACAAIAEgAkEAEMsBGiAAIAAgA0EMaiACQQAQQxogDEIBfSEMDAELCyAAIABCASACQQAQdRogACAAIANBIGoiASACQQAQQxogARAbIANBDGoQGyADQTRqEBsgA0HIAGoQGyAAIAVBAWpB/////wNBARDMARogA0HcAGoiASACQQYQ0wIgASABIAasIAJBABDUAiAAIAAgASACQQAQywEaIAEQGyADQfAAaiQAQRAPC0HY/QBB1PwAQdciQajWABAAAAsRACAAIAEgAiADIARBABCWBgsRACAAIAEgAiADIARBARCWBgvYAwEHfyACKAIEIAEoAgRzIQcCQAJAAkACQAJAAkACQCABKAIIIgZB/f///wdMBEAgAigCCCIFQf3///8HSg0BIAZBgICAgHhHDQYgBUGAgICAeEYNBAwHCyAGQf////8HRg0BIAIoAggh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gICAMEEBENQFDQIgACABEA8LIAJBAWohAgwACwALIAAgBBAPIAAgARAPQoCAgIDgAAsYACAAIAMpAwAgAykDCBBSrUKAgICAEIQL4gICA34DfyMAQSBrIgIkAEKAgICA4AAhBCAAIAMpAwAQJSIFQoCAgIBwg0KAgICA4ABSBEBCgICAgDAhAQJAAkAgACACQRxqIAJBGGogBadBAxCOAQ0AQoCAgIDgACEBIAAQNCIEQoCAgIBwg0KAgICA4ABRDQAgAigCHCEHIAIoAhghCEEAIQMDQCADIAhHBEACQAJAIAAgByADQQN0aiIJKAIEEFwiAUKAgICAcINCgICAgOAAUQ0AIAIgATcDCCACIAU3AwAgACAEIAAgAkEAEMYEIQYgACABEA8gBkKAgICAcIMiAUKAgICAMFENASABQoCAgIDgAFENACAAIAQgCSgCBCAGQYeAARAZQQBODQELIAQhAQwDCyADQQFqIQMMAQsLIAAgByAIEFogBSEBDAELIAAgAigCHCACKAIYEFogACAFEA9CgICAgOAAIQQLIAAgARAPCyACQSBqJAAgBAsQACAAIAMpAwBBESAEEKoCCxAAIAAgAykDAEECQQAQqgILEAAgACADKQMAQQFBABCqAgtHAQF+QoCAgIDgACEEIAAgAykDACIBIAMpAwgQrgYEfkKAgICA4AAFIAFCIIinQXVPBEAgAaciACAAKAIAQQFqNgIACyABCwtBACAAIAMpAwAiASADKQMIQQEQiwJBAEgEQEKAgICA4AAPCyABQiCIp0F1TwRAIAGnIgAgACgCAEEBajYCAAsgAQuJAQEBfiADKQMAIgFC/////29WIAFCgICAgHCDQoCAgIAgUXJFBEAgAEG35ABBABAVQoCAgIDgAA8LAkAgACABEEciAUKAgICAcINCgICAgOAAUgRAIAMpAwgiBEKAgICAcINCgICAgDBRDQEgACABIAQQrgZFDQEgACABEA8LQoCAgIDgAA8LIAELpQQCBX8CfiMAQSBrIgUkACAAIAVBCGoiBkEAED0aIAZBKBA7GiAEQX5xQQJGBEAgBUEIakHxmQEQiAEaCyAFQQhqQbrMABCIARogBEF9cUEBRgRAIAVBCGpBKhA7GgsgBUEIakGvlAEQiAEaQQAhBiACQQFrIgdBACAHQQBKGyEIAkACQAJAA0AgBiAIRwRAIAYEQCAFQQhqQSwQOxoLIAZBA3QhCSAGQQFqIQYgBUEIaiADIAlqKQMAEIcBRQ0BDAILCyAFQQhqQYaaARCIARogAkEASgRAIAVBCGogAyAHQQN0aikDABCHAQ0BCyAFQQhqIgJBiZEBEIgBGkKAgICAMCELIAIQNiIKQoCAgIBwg0KAgICA4ABRDQEgACAAKQPAASAKQQNBfxCcAyELIAAgChAPIAtCgICAgHCDQoCAgIDgAFENASABQoCAgIBwg0KAgICAMFENAiAAIAFBOyABQQAQFCIKQoCAgIBwg0KAgICA4ABRDQECQCAKQv////9vVg0AIAAgChAPIAAgARCAAyICRQ0CIAIoAiggBEEBdEGuwAFqLwEAQQN0aikDACIKQiCIp0F1SQ0AIAqnIgIgAigCAEEBajYCAAsgACALIApBARCLAiECIAAgChAPIAJBAE4NAgwBCyAFKAIIKAIQIgJBEGogBSgCDCACKAIEEQAAQoCAgIAwIQsLIAAgCxAPQoCAgIDgACELCyAFQSBqJAAgCwuAAgICfgF/IwBBIGsiByQAQoCAgIDgACEFAkACQCAAIAEQJSIBQoCAgIBwg0KAgICA4ABRDQAgACADKQMAEDEiA0UNAANAIAAgByABpyADEEwiAkEASA0CIAIEQEKAgICAMCEFAkAgBy0AAEEQcUUNACAHQRhBECAEG2opAwAiBUIgiKdBdUkNACAFpyICIAIoAgBBAWo2AgALIAAgBxBIDAMLIAAgARCMAiIBQoCAgIBwgyIGQoCAgIAgUgRAIAZCgICAgOAAUQRAIAYhBQwECyAAEHtFDQEMAwsLQoCAgIAwIQUMAQtBACEDCyAAIAMQEyAAIAEQDyAHQSBqJAAgBQuxAQEDfiADKQMIIQUgAykDACEGQoCAgIDgACEHAkAgACABECUiAUKAgICAcINCgICAgOAAUgR+IAAgBRBgDQEgACAGEDEiAkUNASAAIAEgAkKAgICAMEKAgICAMCAFIAQbIAVCgICAgDAgBBtBhaoBQYWaASAEGxBtIQMgACABEA8gACACEBNCgICAgOAAQoCAgIAwIANBAEgbBUKAgICA4AALDwsgACABEA9CgICAgOAAC3IBAX5CgICAgDAhAyABQoCAgIAQhEKAgICAcINCgICAgDBRBEAgABAkQoCAgIDgAA8LIAJCgICAgHCDQoCAgIAgUiACQv////9vWHEEfkKAgICAMAVCgICAgOAAQoCAgIAwIAAgASACQQEQiwJBAEgbCwsyAQF+IAAgARAlIgFCgICAgHCDQoCAgIDgAFEEQCABDwsgACABEOgBIQIgACABEA8gAgugAQIBfgF/IwBBIGsiAiQAQoCAgIDgACEEAkACQCAAIAEQJSIBQoCAgIBwg0KAgICA4ABRDQAgACADKQMAEDEiA0UNACAAIAIgAacgAxBMIgVBAEgNASAFRQRAQoCAgIAQIQQMAgsgAjUCACEEIAAgAhBIIARCAohCAYNCgICAgBCEIQQMAQtBACEDCyAAIAMQEyAAIAEQDyACQSBqJAAgBAvBAQECfgJAAn5CgICAgBAgAykDACIEQoCAgIBwVA0AGkKAgICA4AAgACABECUiAUKAgICAcINCgICAgOAAUQ0AGiAEpyICIAIoAgBBAWo2AgAgAachAgNAIAAgBBCMAiIEQoCAgIBwgyIFQoCAgIDgAFIEQCACIASnRiAFQoCAgIAgUXINAyAAEHtFDQELCyAAIAQQDyAAIAEQD0KAgICA4AALDwsgACAEEA8gACABEA8gBUKAgICAIFKtQoCAgIAQhAt6AQF+IAAgAykDABAxIgJFBEBCgICAgOAADwtCgICAgOAAIQQgACABECUiAUKAgICAcINCgICAgOAAUQRAIAAgAhATIAEPCyAAQQAgAacgAhBMIQMgACACEBMgACABEA9CgICAgOAAIANBAEetQoCAgIAQhCADQQBIGwsIACAAIAEQJQsPACAAIAFBN0EAQQAQrAILLQEBfkKAgICAMCECAkAgARCjAyIARQ0AIAAtABJBBHFFDQAgADUCRCECCyACCzMCAX4Bf0KAgICAMCECAkAgARCjAyIDRQ0AIAMtABJBBHFFDQAgACADKAJAEC0hAgsgAgsoAEKAgICA4AAgACADKQMAIAEQvgUiAEEAR61CgICAgBCEIABBAEgbC7cBAgF+An9CgICAgOAAIQQgACABEGAEfkKAgICA4AAFQcqZASECAkAgAaciAy8BBhDuAUUNAAJAIAMoAiAiAy8AESIFQYAIcUUNACADKAJUIgZFDQAgACAGIAMoAkgQkwIPCyAFQQR2QQNxQQFrIgNBAksNACADQQJ0QfT/AWooAgAhAgsgACACIAAgAUE2IAFBABAUIgFCgICAgHCDQoCAgIAwUQR+IABBLxAtBSABC0G+GRC+AQsL6QUDA34GfwN8AkACfkKAgICA4AAgACABEGANABpCgICAgOAAIAAgACkDMEEOEEkiBUKAgICAcINCgICAgOAAUQ0AGiAFpyIKIAFCgICAgHBaBH8gAactAAVBEHEFQQALIAotAAVB7wFxcjoABSAAQQEgAiACQQFMGyILQQFrIghBA3RBGGoQKSIHRQ0BIAFCIIinQXVPBEAgAaciAiACKAIAQQFqNgIACyAHIAE3AwAgAykDACIEQiCIp0F1TwRAIASnIgIgAigCAEEBajYCAAsgByAINgIQIAcgBDcDCEEAIQIDQCACIAhHBEAgAyACQQFqIglBA3RqKQMAIgRCIIinQXVPBEAgBKciDCAMKAIAQQFqNgIACyAHIAJBA3RqIAQ3AxggCSECDAELCyAKIAc2AiAgAUL/////b1gEQCAAECQMAgsgAEEAIAGnQTAQTCICQQBIDQFCACEEAkAgAkUNACAAIAFBMCABQQAQFCIGQoCAgIBwg0KAgICA4ABRDQIgBkL/////D1gEQCAGpyICIAhrQQAgAiALThutIQQMAQsgBkIgiKdBB2tBbU0EQAJAIAZCgICAgMCBgPz/AHwiBEL///////////8Ag0KAgICAgICA+P8AVg0AIAS/nSIOIAi3Ig9lDQAgDiAPoSENCyANvSIEAn8gDZlEAAAAAAAA4EFjBEAgDaoMAQtBgICAgHgLIgK3vVEEQCACrSEEDAILQoCAgIDAfiAEQoCAgIDAgYD8/wB9IARC////////////AINCgICAgICAgPj/AFYbIQQMAQsgACAGEA8LIAAgBUEwIARBARAZGiAAQdSZASAAIAFBNiABQQAQFCIEQoCAgIBwgyIBQoCAgICQf1IEfiABQoCAgIDgAFENAiAAIAQQDyAAQS8QLQUgBAtBzJ4BEL4BIgFCgICAgHCDQoCAgIDgAFENASAAIAVBNiABQQEQGRogBQsPCyAAIAUQD0KAgICA4AALMAAgAkEATARAIAAgAUKAgICAMEEAQQAQIQ8LIAAgASADKQMAIAJBAWsgA0EIahAhC6MCAgF/BH4jAEEQayIFJABCgICAgDAhBgJAAkAgACAFQQhqIAAgARAlIgkQPA0AIAVBATYCBAJAIAQEQCAD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gDBSBEAgB0KAgICA4ABRDQcgACABECYMAQsgACAFEMoBCyICQQBIDQUgAkUNACAAIAkgBRA8DQUgCSkDACIHIAR8Qv////////8PVQ0EQgAhASAHQgAgB0IAVRshBwNAIAEgB1ENAiAAIAUgASAJQQhqEIUBIgJBAEgNBiACBEAgACAGIAQgCSkDCBBqQQBIDQcLIARCAXwhBCABQgF8IQEMAAsACyAEQv7///////8PVQ0DIAVCIIinQXVPBEAgBaciAiACKAIAQQFqNgIACyAAIAYgBCAFEGpBAEgNBCAEQgF8IQQLIApBAWohCgwBCwsgACAGQTAgBEKAgICACHxC/////w9YBH4gBEL/////D4MFQoCAgIDAfiAEub0iAUKAgICAwIGA/P8AfSABQv///////////wCDQoCAgICAgID4/wBWGwsQRUEASA0BDAILIABB0NoAQQAQFQsgACAGEA9CgICAgOAAIQYLIAAgCBAPIAlBEGokACAGC7ECAgR+An8jAEEQayIIJABCgICAgOAAIQUCQAJ+AkAgAUKAgICAcFQNACABpy0ABUEQcUUNACAIIAKtNwMIIAAgAUEBIAhBCGoQpwEMAQsgABA+CyIEQoCAgIBwg0KAgICA4ABRDQAgAkEAIAJBAEobrSEHQgAhAQJAA0AgASAHUgRAIAMgAadBA3RqKQMAIgZCIIinQXVPBEAgBqciCSAJKAIAQQFqNgIACyAAIAQgASAGQYCAARDSASEJIAFCAXwhASAJQQBODQEMAgsLIAAgBEEwIAJBAE4EfiACrQVCgICAgMB+IAK4vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbCxBFQQBIDQAgBCEFDAELIAAgBBAPCyAIQRBqJAAgBQu6CQICfwh+IwBBMGsiBCQAIAMpAwAhBiAEQoCAgIAwNwMYQQEhBQJAAkACfiACQQJIBEBCgICAgDAhDEKAgICAMAwBC0KAgICAMCADKQMIIgxCgICAgHCDQoCAgIAwUQ0AGkKAgICAMCEKQoCAgIAwIQlCgICAgDAhCEKAgICAMCELIAAgDBBgDQFBACEFQoCAgIAwIAJBA0kNABogAykDEAshDQJAAkACQAJAIAAgBkHRASAGQQAQFCIHQoCAgIBwgyIIQoCAgIAwUgRAAkACQCAIQoCAgIDgAFEEQEKAgICAMCEKQoCAgIAwIQlCgICAgDAhCAwBCyAAIAcQDwJ+AkAgAUKAgICAcFQNACABpy0ABUEQcUUNACAAIAFBAEEAEKcBDAELIAAQPgsiCEKAgICAcINCgICAgOAAUQRAQoCAgIAwIQpCgICAgDAhCQwBCyAGQiCIp0F1TwRAIAanIgIgAigCAEEBajYCAAsgBCAGNwMQIAAgBEEQakEIckEAEJkDIQIgBCkDGCEKIAQpAxAhCSACRQ0BC0KAgICAMCELDAYLQgAhBwNAIAAgCSAKIARBCGoQrgEiBkKAgICAcINCgICAgOAAUQ0CIAQoAggEQEKAgICAMCELDAYLAkAgBQRAIAYhAQwBCyAEIAY3AyAgBCAHQv////8PgzcDKCAAIAwgDUECIARBIGoQISEBIAAgBhAPIAFCgICAgHCDQoCAgIDgAFENAwsgACAIIAcgARBqQQBIDQIgB0IBfCEHDAALAAsgACAGECUiC0KAgICAcINCgICAgOAAUQ0CIAAgBEEIaiALEDxBAEgNAiAEAn4gBCkDCCIGQoCAgIAIfEL/////D1gEQCAGQv////8PgwwBC0KAgICAwH4gBrm9IgdCgICAgMCBgPz/AH0gB0L///////////8Ag0KAgICAgICA+P8AVhsLIgc3AyACfgJAIAFCgICAgHBUDQAgAactAAVBEHFFDQAgACABQQEgBEEgahCnAQwBCyAAQoCAgIAwQQEgBEEgahCuAwshCCAAIAcQDyAIQoCAgIBwg0KAgICA4ABRBEBCgICAgDAhCgwCC0IAIQcgBkIAIAZCAFUbIQkDQCAHIAlRBEBCgICAgDAhCkKAgICAMCEJDAULQoCAgIAwIQogACALIAcQcyIGQoCAgIBwg0KAgICA4ABRDQICQCAFBEAgBiEBDAELIAQgBjcDICAEIAdC/////w+DNwMoIAAgDCANQQIgBEEgahAhIQEgACAGEA8gAUKAgICAcINCgICAgOAAUQ0DCyAAIAggByABEGpBAEgNAiAHQgF8IQcMAAsAC0KAgICAMCELIAlCgICAgHCDQoCAgIAwUQ0DIAAgCUEBEK0BGgwDC0KAgICAMCEJDAILQoCAgIAwIQpCgICAgDAhCUKAgICAMCEIDAELIAAgCEEwIAenIgJBAE4EfiAHQv////8PgwVCgICAgMB+IAK4vSIBQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbCxBFQQBODQELIAAgCBAPQoCAgIDgACEICyAAIAsQDyAAIAkQDyAAIAoQDyAEQTBqJAAgCAsmAEKAgICA4AAgACADKQMAEMoBIgBBAEetQoCAgIAQhCAAQQBIGwuAAQAjAEEQayIAJAAgABCjBAJ+IAA0AgggACkDAELAhD1+fCIBQoCAgIAIfEL/////D1gEQCABQv////8PgwwBC0KAgICAwH4gAbm9IgFCgICAgMCBgPz/AH0gAUL///////////8Ag0KAgICAgICA+P8AVhsLIQEgAEEQaiQAIAELxwIBBX8jAEEgayIEJAAgACADKQMAECgiAUKAgICAcINCgICAgOAAUgRAIAAgBEEIakEAED0aIAGnIgVBEGohBiAFKAIEQf////8HcSEHQQAhAwNAIAMgB05FBEACQAJ/IAUpAgRCgICAgAiDUCIIRQRAIAYgA0EBdGovAQAMAQsgAyAGai0AAAsiAkElRw0AAkAgA0EGaiAHSg0AIANBAWohAgJ/IAhFBEAgBiACQQF0ai8BAAwBCyACIAZqLQAAC0H1AEcNACAFIANBAmpBBBC4BCICQQBIDQAgA0EFaiEDDAELQSUhAiADQQNqIAdKDQAgBSADQQFqQQIQuAQiAkElIAJBAE4iCBshAiADQQJqIAMgCBshAwsgBEEIaiACEIsBGiADQQFqIQMMAQsLIAAgARAPIARBCGoQNiEBCyAEQSBqJAAgAQvkAQEEfyMAQSBrIgIkACAAIAMpAwAQKCIBQoCAgIBwg0KAgICA4ABSBEAgACACQQhqIAGnIgUoAgRB/////wdxED0aIAVBEGohBiAFKAIEQf////8HcSEHQQAhAwNAIAMgB0ZFBEACQAJAAkAgBS0AB0GAAXFFBEAgAyAGai0AACEEDAELIAYgA0EBdGovAQAiBEH/AUsNAQtBkOEBIARBxQAQ+wFFDQAgAkEIaiAEEIsBGgwBCyACQQhqIAQQmgILIANBAWohAwwBCwsgACABEA8gAkEIahA2IQELIAJBIGokACABC84EAgZ/AX4jAEEgayIGJAACQCAAIAMpAwAQKCIBQoCAgIBwg0KAgICA4ABRDQAgACAGQQhqIAGnIgkoAgRB/////wdxED0aIAlBEGohCEEAIQICQANAIAkpAgQiC6dB/////wdxIgogAkoEQCACQQFqIQUCQAJAIAtCgICAgAiDIgtQBEAgAiAIai0AACEDDAELIAggAkEBdGovAQAiA0H/AUsNAQsCQCADQTBrQQpJIANB3/8DcUHBAGtBGklyDQBBpZQBIANBCRD7AQ0AIAQNASADELIGRQ0BCyAGQQhqIAMQiwEaIAUhAgwCCwJ/An8CQCADQYD4A3EiB0GAsANHBEAgB0GAuANHDQFBv8MAIQcMBgtB5MAAIQcgBSAKTg0FAn8gC1BFBEAgCCAFQQF0ai8BAAwBCyAFIAhqLQAACyIFQYDAA2tBgHhJDQUgBkEIaiAFQf8HcSADQQp0QYD4P3FyQYCABGoiA0ESdkHwAXIQmgIgA0EMdkE/cUGAAXIhByACQQJqDAELIANB/wBNBEAgBkEIaiADEJoCIAUhAgwECyADQf8PTQRAIAUhAiADQQZ2QcABcgwCCyADQQx2QeABciEHIAULIQIgBkEIaiAHEJoCIANBBnZBP3FBgAFyCyEHIAZBCGoiBSAHEJoCIAUgA0E/cUGAAXIQmgIMAQsLIAAgARAPIAZBCGoQNiEBDAELIAAgBxC5BCAAIAEQDyAGKAIIKAIQIgBBEGogBigCDCAAKAIEEQAAQoCAgIDgACEBCyAGQSBqJAAgAQuVBAIGfwF+IwBBIGsiBSQAAkAgACADKQMAECgiAUKAgICAcINCgICAgOAAUQ0AIAAgBUEIakEAED0aIAGnIghBEGohCUEAIQIDQAJAAkACQCAIKQIEIgunQf////8HcSACSgRAAn8gC0KAgICACINQRQRAIAkgAkEBdGovAQAMAQsgAiAJai0AAAsiA0ElRgRAIAAgCCACELMGIgNBAEgNAyACQQNqIQYgA0H/AE0EQCAEBEAgBiECDAYLQSUgAyADELIGIgcbIQMgAkEBaiAGIAcbIQIMBQsCfyADQWBxQcABRgRAIANBH3EhA0GAASEHQQEMAQsgA0FwcUHgAUYEQCADQQ9xIQNBgBAhB0ECDAELIANBeHFB8AFHBEBBASEHQQAhA0EADAELIANBB3EhA0GAgAQhB0EDCyECA0AgAkEATA0DIAAgCCAGELMGIgpBAEgNBCAGQQNqIQYgCkHAAXFBgAFHBEBBACEDDAQFIAJBAWshAiAKQT9xIANBBnRyIQMMAQsACwALIAJBAWohAgwDCyAAIAEQDyAFQQhqEDYhAQwECyAGIQIgAyAHSCADQf//wwBKckUgA0GAcHFBgLADR3ENASAAQcmJARC5BAsgACABEA8gBSgCCCgCECIAQRBqIAUoAgwgACgCBBEAAEKAgICA4AAhAQwCCyAFQQhqIAMQuQEaDAALAAsgBUEgaiQAIAELNwAgACADKQMAELMBIgJFBEBCgICAgOAADwsgACACEIECIAJqQQBBCkEAELgCIQEgACACEFQgAQuHAQEBfyMAQRBrIgIkAAJAIAAgAykDABCzASIERQRAQoCAgIDgACEBDAELAn5CgICAgOAAIAAgAkEMaiADKQMIEHcNABogAigCDCIDBEBCgICAgMB+IANBJWtBXUkNARoLIAAgBBCBAiAEakEAIANBgQgQuAILIQEgACAEEFQLIAJBEGokACABCwkAIAAgARDdAgujAQIBfgF/IwBBEGsiAiQAAn4gACABEN0CIgVCgICAgHCDQoCAgIDgAFEEQCAFDAELQQohBgJAAkAgBA0AIAMpAwAiAUKAgICAcINCgICAgDBRDQAgACABEI4FIgZBAEgNAQtCgICAgOAAIAAgAkEIaiAFEG4NARogACACKwMIIAZBAEEAEI8CDAELIAAgBRAPQoCAgIDgAAshASACQRBqJAAgAQuMAgIBfgF8IwBBEGsiAiQAQoCAgIDgACEEAkAgACABEN0CIgFCgICAgHCDQoCAgIDgAFEEQCABIQQMAQsgACACIAEQbg0AAkACQCADKQMAIgFCgICAgHCDQoCAgIAwUQRAIAIpAwAhAQwBCyAAIAJBDGogARC6AQ0CIAIrAwAiBb0iAUKAgICAgICA+P8Ag0KAgICAgICA+P8AUg0BCyAAQoCAgIDAfiABQoCAgIDAgYD8/wB9IAFC////////////AINCgICAgICAgPj/AFYbEDchBAwBCyACKAIMIgNB5QBrQZt/TQRAIABBijRBABBQDAELIAAgBUEKIANBARCPAiEECyACQRBqJAAgBAvYAQIBfgF8IwBBEGsiAiQAQoCAgIDgACEEAkAgACABEN0CIgFCgICAgHCDQoCAgIDgAFEEQCABIQQMAQsgACACIAEQbg0AIAAgAkEMaiADKQMAELoBDQAgAigCDCIDQeUATwRAIABBijRB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LUiv7z8IIKpBvMOOPCdaYe4buu8/Muupw5QrhDyXums3K8XvP+6F0TGpZIo8QEVuW3bQ7z/t4zvkujeOvBS+nK392+8/nc2RTTuJdzzYkJ6BwefvP4nMYEHBBVM88XGPK8Lz7z8AAAAAAADwPwAAAAAAAPg/AAAAAAAAAAAG0M9D6/1MPgBBmxkL54UBQAO44j8oKXt9ACgpe3N1cGVyKC4uLmFyZ3VtZW50cyk7fQAoKSB7CiAgICBbbmF0aXZlIGNvZGVdCn0AY2Fubm90IG1peCA/PyB3aXRoICYmIG9yIHx8AGN0egBwcm94eTogcHJvcGVydHkgbm90IHByZXNlbnQgaW4gdGFyZ2V0IHdlcmUgcmV0dXJuZWQgYnkgbm9uIGV4dGVuc2libGUgcHJveHkAcmV2b2tlZCBwcm94eQBQcm94eQBhZGRfcHJvcGVydHkAcHJveHk6IGNhbm5vdCBzZXQgcHJvcGVydHkAbm8gc2V0dGVyIGZvciBwcm9wZXJ0eQB2YWx1ZSBoYXMgbm8gcHJvcGVydHkAY291bGQgbm90IGRlbGV0ZSBwcm9wZXJ0eQBwcm94eTogZHVwbGljYXRlIHByb3BlcnR5AEpTX0RlZmluZUF1dG9Jbml0UHJvcGVydHkAaGFzT3duUHJvcGVydHkAcHJveHk6IGluY29uc2lzdGVudCBkZWxldGVQcm9wZXJ0eQBwcm94eTogaW5jb25zaXN0ZW50IGRlZmluZVByb3BlcnR5AEpTX0RlZmluZVByb3BlcnR5ACFtci0+ZW1wdHkAaW5maW5pdHkASW5maW5pdHkAb3V0IG9mIG1lbW9yeQB1bmtub3duIHVuaWNvZGUgZ2VuZXJhbCBjYXRlZ29yeQBHZW5lcmFsX0NhdGVnb3J5AGV2ZXJ5AGFueQBhcHBseQAnJXMnIGlzIHJlYWQtb25seQBleHBlY3RpbmcgY2F0Y2ggb3IgZmluYWxseQBzdGlja3kAYmlnaW50IGFyZSBmb3JiaWRkZW4gaW4gSlNPTi5zdHJpbmdpZnkAc3ViYXJyYXkAZW1wdHkgYXJyYXkAbm9uIGludGVnZXIgaW5kZXggaW4gdHlwZWQgYXJyYXkAbmVnYXRpdmUgaW5kZXggaW4gdHlwZWQgYXJyYXkAb3V0LW9mLWJvdW5kIGluZGV4IGluIHR5cGVkIGFycmF5AGNhbm5vdCBjcmVhdGUgbnVtZXJpYyBpbmRleCBpbiB0eXBlZCBhcnJheQBpc0FycmF5AFR5cGVkQXJyYXkAZ2V0RGF5AGdldFVUQ0RheQBqc19nZXRfYXRvbV9pbmRleABpbnZhbGlkIGFycmF5IGluZGV4AG91dC1vZi1ib3VuZCBudW1lcmljIGluZGV4AEpTX0F0b21Jc0FycmF5SW5kZXgAZmluZEluZGV4AGludmFsaWQgZXhwb3J0IHN5bnRheABpbnZhbGlkIGFzc2lnbm1lbnQgc3ludGF4AG1heABcdSUwNHgAaW52YWxpZCBvcGNvZGU6IHBjPSV1IG9wY29kZT0weCUwMngALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABsaW5lIHRlcm1pbmF0b3Igbm90IGFsbG93ZWQgYWZ0ZXIgdGhyb3cAYmZfcG93AG5vdwBpbnRlZ2VyIG92ZXJmbG93AHN0YWNrIG92ZXJmbG93AG11c3QgYmUgY2FsbGVkIHdpdGggbmV3AGlzVmlldwBEYXRhVmlldwByYXcAdGRpdgBmZGl2AGVkaXYAY2RpdgAldQBjbGFzcyBkZWNsYXJhdGlvbnMgY2FuJ3QgYXBwZWFyIGluIHNpbmdsZS1zdGF0ZW1lbnQgY29udGV4dABmdW5jdGlvbiBkZWNsYXJhdGlvbnMgY2FuJ3QgYXBwZWFyIGluIHNpbmdsZS1zdGF0ZW1lbnQgY29udGV4dABsZXhpY2FsIGRlY2xhcmF0aW9ucyBjYW4ndCBhcHBlYXIgaW4gc2luZ2xlLXN0YXRlbWVudCBjb250ZXh0AGR1cGxpY2F0ZSBhcmd1bWVudCBuYW1lcyBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQAZHVwbGljYXRlIHBhcmFtZXRlciBuYW1lcyBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQAaW1wb3J0Lm1ldGEgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGNvbnRleHQASlNfRnJlZUNvbnRleHQASlNDb250ZXh0AGpzX21hcF9pdGVyYXRvcl9uZXh0AGpzX2FzeW5jX2dlbmVyYXRvcl9yZXN1bWVfbmV4dAB1bmV4cGVjdGVkIGVuZCBvZiBpbnB1dAB0dABleHBvcnRlZCB2YXJpYWJsZSAnJXMnIGRvZXMgbm90IGV4aXN0AHByaXZhdGUgY2xhc3MgZmllbGQgJyVzJyBkb2VzIG5vdCBleGlzdAB0ZXN0AGFzc2lnbm1lbnQgcmVzdCBwcm9wZXJ0eSBtdXN0IGJlIGxhc3QAYmZfc3FydABzb3J0AGNicnQAdHJpbVN0YXJ0AHBhZFN0YXJ0AHVua25vd24gdW5pY29kZSBzY3JpcHQAU2NyaXB0AGh5cG90AGZyZWVfemVyb19yZWZjb3VudABmYXN0X2FycmF5X2NvdW50AGJpbmFyeV9vYmplY3RfY291bnQAc3RyX2luZGV4ID09IG51bV9rZXlzX2NvdW50ICsgc3RyX2tleXNfY291bnQAbnVtX2luZGV4ID09IG51bV9rZXlzX2NvdW50AHN0cl9jb3VudABwcm9wX2NvdW50AHN5bV9pbmRleCA9PSBhdG9tX2NvdW50AGxhYmVsID49IDAgJiYgbGFiZWwgPCBzLT5sYWJlbF9jb3VudABsYWIxID49IDAgJiYgbGFiMSA8IHMtPmxhYmVsX2NvdW50AG9ial9jb3VudAB2YWwgPCBzLT5jYXB0dXJlX2NvdW50AHZhbDIgPCBzLT5jYXB0dXJlX2NvdW50AHNoYXBlX2NvdW50AGpzX2Z1bmNfcGMybGluZV9jb3VudABtZW1vcnlfdXNlZF9jb3VudABtYWxsb2NfY291bnQAanNfZnVuY19jb3VudABjX2Z1bmNfY291bnQAaW52YWxpZCByZXBlYXQgY291bnQAaW52YWxpZCByZXBldGl0aW9uIGNvdW50AGZvbnQAaW52YWxpZCBjb2RlIHBvaW50AGZyb21Db2RlUG9pbnQAaW52YWxpZCBoaW50AGNhbm5vdCBjb252ZXJ0IE5hTiBvciBJbmZpbml0eSB0byBiaWdpbnQAY2Fubm90IGNvbnZlcnQgdG8gYmlnaW50AGJvdGggb3BlcmFuZHMgbXVzdCBiZSBiaWdpbnQAbm90IGEgYmlnaW50AGVuY29kZVVSSUNvbXBvbmVudABkZWNvZGVVUklDb21wb25lbnQAdW5leHBlY3RlZCBlbmQgb2YgY29tbWVudABpbnZhbGlkIHN3aXRjaCBzdGF0ZW1lbnQAQmlnSW50AHBhcnNlSW50AGR1cGxpY2F0ZSBkZWZhdWx0AG1hbGxvY19saW1pdABzcGxpdABleHBlY3RpbmcgaGV4IGRpZ2l0AHRyaW1SaWdodAByZWR1Y2VSaWdodAB1bnNoaWZ0AHRyaW1MZWZ0AGludmFsaWQgb2Zmc2V0AGludmFsaWQgYnl0ZU9mZnNldABnZXRUaW1lem9uZU9mZnNldAByZXNvbHZpbmcgZnVuY3Rpb24gYWxyZWFkeSBzZXQAcHJveHk6IGluY29uc2lzdGVudCBzZXQAZmluZF9qdW1wX3RhcmdldABleHBlY3RpbmcgdGFyZ2V0AGludmFsaWQgZGVzdHJ1Y3R1cmluZyB0YXJnZXQAcHJveHk6IGluY29uc2lzdGVudCBnZXQAV2Vha1NldABjb25zdHJ1Y3QASlNfRnJlZUF0b21TdHJ1Y3QAdXNlIHN0cmljdABSZWZsZWN0AHJlamVjdABub3QgYW4gQXN5bmNHZW5lcmF0b3Igb2JqZWN0AGNhbm5vdCBjb252ZXJ0IHRvIG9iamVjdABpbnZhbGlkIGJyYW5kIG9uIG9iamVjdABvcGVyYW5kICdwcm90b3R5cGUnIHByb3BlcnR5IGlzIG5vdCBhbiBvYmplY3QAcmVjZWl2ZXIgaXMgbm90IGFuIG9iamVjdABpdGVyYXRvciBtdXN0IHJldHVybiBhbiBvYmplY3QAbm90IGEgRGF0ZSBvYmplY3QAbm90IGEgb2JqZWN0AEpTT2JqZWN0AGJpZ2Zsb2F0AHBhcnNlRmxvYXQAZmxhdABub3RoaW5nIHRvIHJlcGVhdABjb25jYXQAY29kZVBvaW50QXQAY2hhckF0AGNoYXJDb2RlQXQAa2V5cwBwcm94eTogdGFyZ2V0IHByb3BlcnR5IG11c3QgYmUgcHJlc2VudCBpbiBwcm94eSBvd25LZXlzACAgZmFzdCBhcnJheXMAZXhwb3J0ICclcycgaW4gbW9kdWxlICclcycgaXMgYW1iaWd1b3VzAHByaXZhdGUgY2xhc3MgZmllbGQgJyVzJyBhbHJlYWR5IGV4aXN0cwB0b28gbWFueSBhcmd1bWVudHMAVG9vIG1hbnkgY2FsbCBhcmd1bWVudHMAZmFzdF9hcnJheV9lbGVtZW50cwAgIGVsZW1lbnRzAGludmFsaWQgbnVtYmVyIG9mIGRpZ2l0cwBiaW5hcnkgb2JqZWN0cwBpbnZhbGlkIHByb3BlcnR5IGFjY2VzcwBqc19vcF9kZWZpbmVfY2xhc3MAZmQtPmJ5dGVfY29kZS5idWZbZGVmaW5lX2NsYXNzX3Bvc10gPT0gT1BfZGVmaW5lX2NsYXNzAF9fZ2V0Q2xhc3MAc2V0SG91cnMAZ2V0SG91cnMAc2V0VVRDSG91cnMAZ2V0VVRDSG91cnMAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycwB0b28gbWFueSBpbWJyaWNhdGVkIHF1YW50aWZpZXJzAHVuaWNvZGVfcHJvcF9vcHMAYWNvcwBmb3IgYXdhaXQgaXMgb25seSB2YWxpZCBpbiBhc3luY2hyb25vdXMgZnVuY3Rpb25zAG5ldy50YXJnZXQgb25seSBhbGxvd2VkIHdpdGhpbiBmdW5jdGlvbnMAYnl0ZWNvZGUgZnVuY3Rpb25zAEMgZnVuY3Rpb25zAHByb3h5OiBpbmNvbnNpc3RlbnQgcHJldmVudEV4dGVuc2lvbnMAU2NyaXB0X0V4dGVuc2lvbnMAYXRvbXMAcHJveHk6IHByb3BlcnRpZXMgbXVzdCBiZSBzdHJpbmdzIG9yIHN5bWJvbHMAZ2V0T3duUHJvcGVydHlTeW1ib2xzAHJlc29sdmVfbGFiZWxzAEpTX0V2YWxUaGlzAHN0cmluZ3MAaW52YWxpZCBkZXNjcmlwdG9yIGZsYWdzAGludmFsaWQgcmVndWxhciBleHByZXNzaW9uIGZsYWdzAHZhbHVlcwBzZXRNaW51dGVzAGdldE1pbnV0ZXMAc2V0VVRDTWludXRlcwBnZXRVVENNaW51dGVzAHRvbyBtYW55IGNhcHR1cmVzACAgc2hhcGVzAGdldE93blByb3BlcnR5TmFtZXMAZ2NfZnJlZV9jeWNsZXMAYWRkX2V2YWxfdmFyaWFibGVzAHJlc29sdmVfdmFyaWFibGVzAHRvbyBtYW55IGxvY2FsIHZhcmlhYmxlcwB0b28gbWFueSBjbG9zdXJlIHZhcmlhYmxlcwBjb21wYWN0X3Byb3BlcnRpZXMAICBwcm9wZXJ0aWVzAGRlZmluZVByb3BlcnRpZXMAZW50cmllcwBmcm9tRW50cmllcwB0b28gbWFueSByYW5nZXMAaW5jbHVkZXMAc2V0TWlsbGlzZWNvbmRzAGdldE1pbGxpc2Vjb25kcwBzZXRVVENNaWxsaXNlY29uZHMAZ2V0VVRDTWlsbGlzZWNvbmRzAHNldFNlY29uZHMAZ2V0U2Vjb25kcwBzZXRVVENTZWNvbmRzAGdldFVUQ1NlY29uZHMAaXRhbGljcwBhYnMAcHJveHk6IGluY29uc2lzdGVudCBoYXMAJS4qcwAgKCVzAHNldCAlcwBnZXQgJXMAICAgIGF0ICVzAG5vIG92ZXJsb2FkZWQgb3BlcmF0b3IgJXMAbm90IGEgJXMAdW5zdXBwb3J0ZWQga2V5d29yZDogJXMAc3Vic3RyAHByb3h5OiBpbmNvbnNpc3RlbnQgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yAHN1cGVyKCkgaXMgb25seSB2YWxpZCBpbiBhIGRlcml2ZWQgY2xhc3MgY29uc3RydWN0b3IAcGFyZW50IGNsYXNzIG11c3QgYmUgY29uc3RydWN0b3IAbm90IGEgY29uc3RydWN0b3IAQXJyYXkgSXRlcmF0b3IAU2V0IEl0ZXJhdG9yAE1hcCBJdGVyYXRvcgBSZWdFeHAgU3RyaW5nIEl0ZXJhdG9yAG5vdCBhbiBBc3luYy1mcm9tLVN5bmMgSXRlcmF0b3IAY2Fubm90IGludm9rZSBhIHJ1bm5pbmcgZ2VuZXJhdG9yAG5vdCBhIGdlbmVyYXRvcgBBc3luY0dlbmVyYXRvcgBzeW50YXggZXJyb3IAU3ludGF4RXJyb3IARXZhbEVycm9yAEludGVybmFsRXJyb3IAQWdncmVnYXRlRXJyb3IAVHlwZUVycm9yAFJhbmdlRXJyb3IAUmVmZXJlbmNlRXJyb3IAVVJJRXJyb3IAZmxvb3IAZm9udGNvbG9yAGFuY2hvcgBmb3IAa2V5Rm9yAGV4cGVjdGluZyBzdXJyb2dhdGUgcGFpcgBhIGRlY2xhcmF0aW9uIGluIHRoZSBoZWFkIG9mIGEgZm9yLSVzIGxvb3AgY2FuJ3QgaGF2ZSBhbiBpbml0aWFsaXplcgAnYXJndW1lbnRzJyBpZGVudGlmaWVyIGlzIG5vdCBhbGxvd2VkIGluIGNsYXNzIGZpZWxkIGluaXRpYWxpemVyAGludmFsaWQgbnVtYmVyIG9mIGFyZ3VtZW50cyBmb3IgZ2V0dGVyIG9yIHNldHRlcgBpbnZhbGlkIHNldHRlcgBpbnZhbGlkIGdldHRlcgBmaWx0ZXIAbWlzc2luZyBmb3JtYWwgcGFyYW1ldGVyACJ1c2Ugc3RyaWN0IiBub3QgYWxsb3dlZCBpbiBmdW5jdGlvbiB3aXRoIGRlZmF1bHQgb3IgZGVzdHJ1Y3R1cmluZyBwYXJhbWV0ZXIAaW52YWxpZCBjaGFyYWN0ZXIAdW5leHBlY3RlZCBjaGFyYWN0ZXIAcHJpdmF0ZSBjbGFzcyBmaWVsZCBmb3JiaWRkZW4gYWZ0ZXIgc3VwZXIAaW52YWxpZCByZWRlZmluaXRpb24gb2YgbGV4aWNhbCBpZGVudGlmaWVyACdsZXQnIGlzIG5vdCBhIHZhbGlkIGxleGljYWwgaWRlbnRpZmllcgBpbnZhbGlkIHJlZGVmaW5pdGlvbiBvZiBnbG9iYWwgaWRlbnRpZmllcgB5aWVsZCBpcyBhIHJlc2VydmVkIGlkZW50aWZpZXIAJyVzJyBpcyBhIHJlc2VydmVkIGlkZW50aWZpZXIAb3RoZXIAYXRvbTFfaXNfaW50ZWdlciAmJiBhdG9tMl9pc19pbnRlZ2VyAGNhbm5vdCBjb252ZXJ0IHRvIGJpZ2ludDogbm90IGFuIGludGVnZXIAaXNJbnRlZ2VyAGlzU2FmZUludGVnZXIAYnVmZmVyAFNoYXJlZEFycmF5QnVmZmVyAGNhbm5vdCB1c2UgaWRlbnRpY2FsIEFycmF5QnVmZmVyAGNhbm5vdCBjb252ZXJ0IGJpZ2ludCB0byBudW1iZXIAY2Fubm90IGNvbnZlcnQgYmlnZmxvYXQgdG8gbnVtYmVyAGNhbm5vdCBjb252ZXJ0IHN5bWJvbCB0byBudW1iZXIAY2Fubm90IGNvbnZlcnQgYmlnZGVjaW1hbCB0byBudW1iZXIAbm90IGEgbnVtYmVyAGxpbmVOdW1iZXIAbWFsZm9ybWVkIHVuaWNvZGUgY2hhcgBjbGVhcgBzZXRZZWFyAGdldFllYXIAc2V0RnVsbFllYXIAZ2V0RnVsbFllYXIAc2V0VVRDRnVsbFllYXIAZ2V0VVRDRnVsbFllYXIAcSAhPSByAHVuZXhwZWN0ZWQgbGluZSB0ZXJtaW5hdG9yIGluIHJlZ2V4cAB1bmV4cGVjdGVkIGVuZCBvZiByZWdleHAAUmVnRXhwAHN1cABpbnZhbGlkIGdyb3VwAHBvcABjb250aW51ZSBtdXN0IGJlIGluc2lkZSBsb29wAGJmX2xvZ2ljX29wAG51bV9rZXlzX2NtcAB1c2Ugc3RyaXAAbWFwAGZsYXRNYXAAV2Vha01hcABleHBlY3RpbmcgJ3snIGFmdGVyIFxwAGxvZzFwAGRpdmlzaW9uIGJ5IHplcm8AdW5rbm93bgBpdGVyYXRvcl9jbG9zZV9yZXR1cm4AcHJvbWlzZSBzZWxmIHJlc29sdXRpb24Ab3V0IG9mIG1lbW9yeSBpbiByZWdleHAgZXhlY3V0aW9uAGRlc2NyaXB0aW9uAHByb3h5OiBkZWZpbmVQcm9wZXJ0eSBleGNlcHRpb24AanNfYXN5bmNfZ2VuZXJhdG9yX3Jlc29sdmVfZnVuY3Rpb24AanNfY3JlYXRlX2Z1bmN0aW9uAHNldC9hZGQgaXMgbm90IGEgZnVuY3Rpb24AcmV0dXJuIG5vdCBpbiBhIGZ1bmN0aW9uAEFzeW5jR2VuZXJhdG9yRnVuY3Rpb24AQXN5bmNGdW5jdGlvbgBpbnZhbGlkIG9wZXJhdGlvbgB1bnN1cHBvcnRlZCBvcGVyYXRpb24AYXdhaXQgaW4gZGVmYXVsdCBleHByZXNzaW9uAHlpZWxkIGluIGRlZmF1bHQgZXhwcmVzc2lvbgBpbnZhbGlkIGRlY2ltYWwgZXNjYXBlIGluIHJlZ3VsYXIgZXhwcmVzc2lvbgBiYWNrIHJlZmVyZW5jZSBvdXQgb2YgcmFuZ2UgaW4gcmVndWxhciBleHByZXNzaW9uAGludmFsaWQgZXNjYXBlIHNlcXVlbmNlIGluIHJlZ3VsYXIgZXhwcmVzc2lvbgBleHBlY3RlZCAnb2YnIG9yICdpbicgaW4gZm9yIGNvbnRyb2wgZXhwcmVzc2lvbgB0b28gY29tcGxpY2F0ZWQgZGVzdHJ1Y3R1cmluZyBleHByZXNzaW9uAGV4cGVjdGVkICd9JyBhZnRlciB0ZW1wbGF0ZSBleHByZXNzaW9uAHRvUHJlY2lzaW9uAGFzaW4Aam9pbgBtaW4AY29weVdpdGhpbgB0ZW1wbGF0ZSBsaXRlcmFsIGNhbm5vdCBhcHBlYXIgaW4gYW4gb3B0aW9uYWwgY2hhaW4AY2lyY3VsYXIgcHJvdG90eXBlIGNoYWluAGFzc2lnbgAheS0+c2lnbgBpc0Zyb3plbgBtYXJrX2NoaWxkcmVuAChwb3MgKyBsZW4pIDw9IGJjX2J1Zl9sZW4AdW5leHBlY3RlZCBlbGxpcHNpcyB0b2tlbgB0aGVuAHNldHRlciBpcyBmb3JiaWRkZW4AbnVsbCBvciB1bmRlZmluZWQgYXJlIGZvcmJpZGRlbgBhdGFuAG5hbgBub3QgYSBib29sZWFuAEJvb2xlYW4AZ2Nfc2NhbgBiYWQgbm9ybWFsaXphdGlvbiBmb3JtAEpTX05ld1N5bWJvbEZyb21BdG9tAGZyb20AcmFuZG9tAHRyaW0AdGRpdnJlbQBmZGl2cmVtAGVkaXZyZW0AY2RpdnJlbQBiZl9kaXZyZW0Ac3FydHJlbQBpbXVsAG5vdCBhIHN5bWJvbABTeW1ib2wAUmVnRXhwIGV4ZWMgbWV0aG9kIG11c3QgcmV0dXJuIGFuIG9iamVjdCBvciBudWxsAHBhcmVudCBwcm90b3R5cGUgbXVzdCBiZSBhbiBvYmplY3Qgb3IgbnVsbABjYW5ub3Qgc2V0IHByb3BlcnR5ICclcycgb2YgbnVsbABjYW5ub3QgcmVhZCBwcm9wZXJ0eSAnJXMnIG9mIG51bGwATnVsbABmaWxsAG5ldyBBcnJheUJ1ZmZlciBpcyB0b28gc21hbGwAVHlwZWRBcnJheSBsZW5ndGggaXMgdG9vIHNtYWxsAGNhbGwAZG90QWxsAG1hdGNoQWxsAHJlcGxhY2VBbGwAY2VpbAB1cGRhdGVfbGFiZWwAYmNfYnVmW3Bvc10gPT0gT1BfbGFiZWwAZXZhbABpbnZhbGlkIGJpZ2ludCBsaXRlcmFsAGludmFsaWQgbnVtYmVyIGxpdGVyYWwAbWFsZm9ybWVkIGVzY2FwZSBzZXF1ZW5jZSBpbiBzdHJpbmcgbGl0ZXJhbABiZl9leHBfaW50ZXJuYWwAYmZfbG9nX2ludGVybmFsAEpTX1NldFByb3BlcnR5SW50ZXJuYWwASlNfR2V0T3duUHJvcGVydHlOYW1lc0ludGVybmFsAF9fSlNfRXZhbEludGVybmFsAGJpZ2RlY2ltYWwAbnR0X2ZmdF9wYXJ0aWFsAHRvRXhwb25lbnRpYWwAc2VhbABnbG9iYWwAYmxpbmsAX19kYXRlX2Nsb2NrAHN0YWNrAGxyZV9leGVjX2JhY2t0cmFjawBzLT5pc193ZWFrAGJmX3Bvd191aQBzZXRNb250aABnZXRNb250aABzZXRVVENNb250aABnZXRVVENNb250aABpbnZhbGlkIGtleXdvcmQ6IHdpdGgAc3RhcnRzV2l0aABlbmRzV2l0aABwcm9wID09IEpTX0FUT01fbGVuZ3RoAGludmFsaWQgYXJyYXkgbGVuZ3RoAGludmFsaWQgYXJyYXkgYnVmZmVyIGxlbmd0aABpbnZhbGlkIGxlbmd0aABpbnZhbGlkIGJ5dGVMZW5ndGgAdXNlIG1hdGgATWF0aABwdXNoAGFjb3NoAEpTX1Jlc2l6ZUF0b21IYXNoAGFzaW5oAGF0YW5oAGJyZWFrIG11c3QgYmUgaW5zaWRlIGxvb3Agb3Igc3dpdGNoAG1hdGNoAGNhdGNoAHNlYXJjaABmb3JFYWNoAGJmX2xvZwBBcnJheSB0b28gbG9uZwBzdHJpbmcgdG9vIGxvbmcAQXJyYXkgbG9vIGxvbmcAc3Vic3RyaW5nAGNhbm5vdCBjb252ZXJ0IHN5bWJvbCB0byBzdHJpbmcAdW5leHBlY3RlZCBlbmQgb2Ygc3RyaW5nAG5vdCBhIHN0cmluZwBpbnZhbGlkIGNoYXJhY3RlciBpbiBhIEpTT04gc3RyaW5nAHRvU3RyaW5nAHRvRGF0ZVN0cmluZwB0b0xvY2FsZURhdGVTdHJpbmcAdG9UaW1lU3RyaW5nAHRvTG9jYWxlVGltZVN0cmluZwB0b0xvY2FsZVN0cmluZwB0b0dNVFN0cmluZwBKU1N0cmluZwB0b0lTT1N0cmluZwB0b1VUQ1N0cmluZwBkdXBsaWNhdGUgaW1wb3J0IGJpbmRpbmcAaW52YWxpZCBpbXBvcnQgYmluZGluZwBiaWcAcmVnZXhwIG11c3QgaGF2ZSB0aGUgJ2cnIGZsYWcAb2YAaW5mAGRpZmYgPT0gKGludDhfdClkaWZmAGRpZmYgPT0gKGludDE2X3QpZGlmZgBocmVmAGdjX2RlY3JlZgBmcmVlX3Zhcl9yZWYAb3B0aW1pemVfc2NvcGVfbWFrZV9nbG9iYWxfcmVmAHJlc2V0X3dlYWtfcmVmAGRlbGV0ZV93ZWFrX3JlZgBvcHRpbWl6ZV9zY29wZV9tYWtlX3JlZgBpbmRleE9mAGxhc3RJbmRleE9mAHZhbHVlT2YAc2V0UHJvdG90eXBlT2YAZ2V0UHJvdG90eXBlT2YAaXNQcm90b3R5cGVPZgAlLipmAGZvbnRzaXplAGJpbmFyeV9vYmplY3Rfc2l6ZQBzdHJfc2l6ZQBuZXdfc2l6ZSA8PSBzaC0+cHJvcF9zaXplAGRlc2NyIDwgcnQtPmF0b21fc2l6ZQBhdG9tIDwgcnQtPmF0b21fc2l6ZQBjb21wdXRlX3N0YWNrX3NpemUAb2JqX3NpemUAbiA8IGJ1Zl9zaXplAHNoYXBlX3NpemUAanNfZnVuY19wYzJsaW5lX3NpemUAanNfZnVuY19jb2RlX3NpemUAbWVtb3J5X3VzZWRfc2l6ZQBqc19mdW5jX3NpemUAbm9ybWFsaXplAGZyZWV6ZQByZXNvbHZlAHRvUHJpbWl0aXZlAHB1dF9sdmFsdWUAdW5rbm93biB1bmljb2RlIHByb3BlcnR5IHZhbHVlAHJlc3QgZWxlbWVudCBjYW5ub3QgaGF2ZSBhIGRlZmF1bHQgdmFsdWUAaW52YWxpZCByZXQgdmFsdWUAX19KU19BdG9tVG9WYWx1ZQBfX3F1b3RlAGlzRmluaXRlAGRlbGV0ZQBjcmVhdGUAc2V0RGF0ZQBnZXREYXRlAHNldFVUQ0RhdGUAZ2V0VVRDRGF0ZQBJbnZhbGlkIERhdGUAcmV2ZXJzZQBwYXJzZQBwcm94eSBwcmV2ZW50RXh0ZW5zaW9ucyBoYW5kbGVyIHJldHVybmVkIGZhbHNlAFByb21pc2UAdG9Mb3dlckNhc2UAdG9Mb2NhbGVMb3dlckNhc2UAdG9VcHBlckNhc2UAdG9Mb2NhbGVVcHBlckNhc2UAaWdub3JlQ2FzZQBsb2NhbGVDb21wYXJlAHByb3h5OiBpbmNvbnNpc3RlbnQgcHJvdG90eXBlAHByb3h5OiBiYWQgcHJvdG90eXBlAG5vdCBhIHByb3RvdHlwZQBpbnZhbGlkIG9iamVjdCB0eXBlAHVuZXNjYXBlAG5vbmUAcmVzdCBlbGVtZW50IG11c3QgYmUgdGhlIGxhc3Qgb25lAG11bHRpbGluZQAgIHBjMmxpbmUAc29tZQBKU19GcmVlUnVudGltZQBKU1J1bnRpbWUAc2V0VGltZQBnZXRUaW1lAHNldF9vYmplY3RfbmFtZQBleHBlY3RpbmcgcHJvcGVydHkgbmFtZQB1bmtub3duIHVuaWNvZGUgcHJvcGVydHkgbmFtZQBpbnZhbGlkIHByb3BlcnR5IG5hbWUAZHVwbGljYXRlIF9fcHJvdG9fXyBwcm9wZXJ0eSBuYW1lAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIHBhcmFtZXRlciBuYW1lAGV4cGVjdGluZyBncm91cCBuYW1lAGR1cGxpY2F0ZSBncm91cCBuYW1lAGludmFsaWQgZ3JvdXAgbmFtZQBkdXBsaWNhdGUgbGFiZWwgbmFtZQBpbnZhbGlkIGZpcnN0IGNoYXJhY3RlciBvZiBwcml2YXRlIG5hbWUAaW52YWxpZCBsZXhpY2FsIHZhcmlhYmxlIG5hbWUAaW52YWxpZCBtZXRob2QgbmFtZQBleHBlY3RpbmcgZmllbGQgbmFtZQBpbnZhbGlkIGZpZWxkIG5hbWUAY2xhc3Mgc3RhdGVtZW50IHJlcXVpcmVzIGEgbmFtZQBmaWxlTmFtZQBjb21waWxlAG9iamVjdCBpcyBub3QgZXh0ZW5zaWJsZQBwcm94eTogaW5jb25zaXN0ZW50IGlzRXh0ZW5zaWJsZQBjYW5ub3QgaGF2ZSBzZXR0ZXIvZ2V0dGVyIGFuZCB2YWx1ZSBvciB3cml0YWJsZQBwcm9wZXJ0eSBpcyBub3QgY29uZmlndXJhYmxlAHZhbHVlIGlzIG5vdCBpdGVyYWJsZQBwcm9wZXJ0eUlzRW51bWVyYWJsZQBtaXNzaW5nIGluaXRpYWxpemVyIGZvciBjb25zdCB2YXJpYWJsZQBsZXhpY2FsIHZhcmlhYmxlAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGEgdmFyaWFibGUAcmV2b2NhYmxlAHN0cmlrZQBtcF9kaXZub3JtX2xhcmdlAGludmFsaWQgY2xhc3MgcmFuZ2UAbWVzc2FnZQBhc3luY19mdW5jX2ZyZWUAaW52YWxpZCBsdmFsdWUgaW4gc3RyaWN0IG1vZGUAaW52YWxpZCB2YXJpYWJsZSBuYW1lIGluIHN0cmljdCBtb2RlAGNhbm5vdCBkZWxldGUgYSBkaXJlY3QgcmVmZXJlbmNlIGluIHN0cmljdCBtb2RlAG9jdGFsIGVzY2FwZSBzZXF1ZW5jZXMgYXJlIG5vdCBhbGxvd2VkIGluIHN0cmljdCBtb2RlAG9jdGFsIGxpdGVyYWxzIGFyZSBkZXByZWNhdGVkIGluIHN0cmljdCBtb2RlAHVuaWNvZGUAICBieXRlY29kZQBKU0Z1bmN0aW9uQnl0ZWNvZGUAc2tpcF9kZWFkX2NvZGUAaW52YWxpZCBhcmd1bWVudCBuYW1lIGluIHN0cmljdCBjb2RlAGludmFsaWQgZnVuY3Rpb24gbmFtZSBpbiBzdHJpY3QgY29kZQBpbnZhbGlkIHJlZGVmaW5pdGlvbiBvZiBnbG9iYWwgaWRlbnRpZmllciBpbiBtb2R1bGUgY29kZQBpbXBvcnQubWV0YSBvbmx5IHZhbGlkIGluIG1vZHVsZSBjb2RlAGZyb21DaGFyQ29kZQBpbnZhbGlkIGZvciBpbi9vZiBsZWZ0IGhhbmQtc2lkZQBpbnZhbGlkIGFzc2lnbm1lbnQgbGVmdC1oYW5kIHNpZGUAcmVkdWNlAHNvdXJjZQAndGhpcycgY2FuIGJlIGluaXRpYWxpemVkIG9ubHkgb25jZQBwcm9wZXJ0eSBjb25zdHJ1Y3RvciBhcHBlYXJzIG1vcmUgdGhhbiBvbmNlAGludmFsaWQgVVRGLTggc2VxdWVuY2UAY2lyY3VsYXIgcmVmZXJlbmNlAHNsaWNlAHNwbGljZQByYWNlAHJlcGxhY2UAJSsuKmUAdW5leHBlY3RlZCAnYXdhaXQnIGtleXdvcmQAdW5leHBlY3RlZCAneWllbGQnIGtleXdvcmQAbWFwX2RlY3JlZl9yZWNvcmQAaXRlcmF0b3IgZG9lcyBub3QgaGF2ZSBhIHRocm93IG1ldGhvZABvYmplY3QgbmVlZHMgdG9JU09TdHJpbmcgbWV0aG9kACdzdXBlcicgaXMgb25seSB2YWxpZCBpbiBhIG1ldGhvZABmcm91bmQAX19iZl9yb3VuZABicmVhay9jb250aW51ZSBsYWJlbCBub3QgZm91bmQAb3V0IG9mIGJvdW5kAGZpbmQAYmluZABpbnZhbGlkIGluZGV4IGZvciBhcHBlbmQAZXh0cmFuZW91cyBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQAdW5leHBlY3RlZCBkYXRhIGF0IHRoZSBlbmQAdW5leHBlY3RlZCBlbmQAaW52YWxpZCBpbmNyZW1lbnQvZGVjcmVtZW50IG9wZXJhbmQAaW52YWxpZCAnaW5zdGFuY2VvZicgcmlnaHQgb3BlcmFuZABpbnZhbGlkICdpbicgb3BlcmFuZAB0cmltRW5kAHBhZEVuZABib2xkACVsbGQAZ2NfZGVjcmVmX2NoaWxkAHJlc29sdmVfc2NvcGVfcHJpdmF0ZV9maWVsZABjYW5ub3QgZGVsZXRlIGEgcHJpdmF0ZSBjbGFzcyBmaWVsZABleHBlY3RpbmcgPGJyYW5kPiBwcml2YXRlIGZpZWxkACVzIGlzIG5vdCBpbml0aWFsaXplZABmaXhlZAB0b0ZpeGVkAHNldF9vYmplY3RfbmFtZV9jb21wdXRlZAByZWdleCBub3Qgc3VwcG9ydGVkAGV2YWwgaXMgbm90IHN1cHBvcnRlZABSZWdFeHAgYXJlIG5vdCBzdXBwb3J0ZWQAaW50ZXJydXB0ZWQAJXMgb2JqZWN0IGV4cGVjdGVkAGlkZW50aWZpZXIgZXhwZWN0ZWQAYnl0ZWNvZGUgZnVuY3Rpb24gZXhwZWN0ZWQAc3RyaW5nIGV4cGVjdGVkAGZyb20gY2xhdXNlIGV4cGVjdGVkAGZ1bmN0aW9uIG5hbWUgZXhwZWN0ZWQAdmFyaWFibGUgbmFtZSBleHBlY3RlZABtZXRhIGV4cGVjdGVkAHJlamVjdGVkAG1lbW9yeSBhbGxvY2F0ZWQAbWVtb3J5IHVzZWQAZGVyaXZlZCBjbGFzcyBjb25zdHJ1Y3RvciBtdXN0IHJldHVybiBhbiBvYmplY3Qgb3IgdW5kZWZpbmVkAGNhbm5vdCBzZXQgcHJvcGVydHkgJyVzJyBvZiB1bmRlZmluZWQAY2Fubm90IHJlYWQgcHJvcGVydHkgJyVzJyBvZiB1bmRlZmluZWQAZmxhZ3MgbXVzdCBiZSB1bmRlZmluZWQAVW5kZWZpbmVkAHByaXZhdGUgY2xhc3MgZmllbGQgaXMgYWxyZWFkeSBkZWZpbmVkACclcycgaXMgbm90IGRlZmluZWQAZ3JvdXAgbmFtZSBub3QgZGVmaW5lZABvcGVyYXRvciAlczogbm8gZnVuY3Rpb24gZGVmaW5lZABhbGxTZXR0bGVkAGZ1bGZpbGxlZABjYW5ub3QgYmUgY2FsbGVkAGlzU2VhbGVkACFzaC0+aXNfaGFzaGVkAHZhcl9yZWYtPmlzX2RldGFjaGVkAEFycmF5QnVmZmVyIGlzIGRldGFjaGVkAGFkZAAlKzA3ZAAlMDRkACUwMmQlMDJkACUwMmQvJTAyZC8lMCpkACUuM3MgJS4zcyAlMDJkICUwKmQAOiVkAGludmFsaWQgdGhyb3cgdmFyIHR5cGUgJWQAc2MAanNfZGVmX21hbGxvYwB0cnVuYwBnYwBleGVjAGJmX2ludGVnZXJfdG9fcmFkaXhfcmVjAHF1aWNranMvcXVpY2tqcy5jAHF1aWNranMvbGlicmVnZXhwLmMAcXVpY2tqcy9saWJiZi5jAHF1aWNranMvbGlidW5pY29kZS5jAHN1YgBwcm9taXNlX3JlYWN0aW9uX2pvYgBqc19wcm9taXNlX3Jlc29sdmVfdGhlbmFibGVfam9iAHIgIT0gYSAmJiByICE9IGIAcSAhPSBhICYmIHEgIT0gYgByd2EAciAhPSBhAF9fbG9va3VwU2V0dGVyX18AX19kZWZpbmVTZXR0ZXJfXwBfX2xvb2t1cEdldHRlcl9fAF9fZGVmaW5lR2V0dGVyX18AX19wcm90b19fAFtTeW1ib2wuc3BsaXRdAFtTeW1ib2wuc3BlY2llc10AW1N5bWJvbC5pdGVyYXRvcl0AW1N5bWJvbC5hc3luY0l0ZXJhdG9yXQBbU3ltYm9sLm1hdGNoQWxsXQBbU3ltYm9sLm1hdGNoXQBbU3ltYm9sLnNlYXJjaF0AW1N5bWJvbC50b1N0cmluZ1RhZ10AW1N5bWJvbC50b1ByaW1pdGl2ZV0AW3Vuc3VwcG9ydGVkIHR5cGVdAFtmdW5jdGlvbiBieXRlY29kZV0AW1N5bWJvbC5oYXNJbnN0YW5jZV0AW1N5bWJvbC5yZXBsYWNlXQBbACUwMmQ6JTAyZDolMDJkLiUwM2RaAFBPU0lUSVZFX0lORklOSVRZAE5FR0FUSVZFX0lORklOSVRZAHAtPmNsYXNzX2lkID09IEpTX0NMQVNTX0FSUkFZAHN0YWNrX2xlbiA8IFBPUF9TVEFDS19MRU5fTUFYAC0lMDJkLSUwMmRUAEpTX0F0b21HZXRTdHJSVABvcGNvZGUgPCBSRU9QX0NPVU5UAEJZVEVTX1BFUl9FTEVNRU5UACUwMmQ6JTAyZDolMDJkIEdNVABKU19WQUxVRV9HRVRfVEFHKHNmLT5jdXJfZnVuYykgPT0gSlNfVEFHX09CSkVDVAB2YXJfa2luZCA9PSBKU19WQVJfUFJJVkFURV9TRVRURVIATUFYX1NBRkVfSU5URUdFUgBNSU5fU0FGRV9JTlRFR0VSAGFzVWludE4AYXNJbnROAGlzTmFOAERhdGUgdmFsdWUgaXMgTmFOAHRvSlNPTgBFUFNJTE9OAE5BTgAlMDJkOiUwMmQ6JTAyZCAlY00Acy0+bGFiZWxfc2xvdHNbbGFiZWxdLmZpcnN0X3JlbG9jID09IE5VTEwAbGFiZWxfc2xvdHNbaV0uZmlyc3RfcmVsb2MgPT0gTlVMTABwcnMgIT0gTlVMTABzZi0+Y3VyX3NwICE9IE5VTEwAc2YgIT0gTlVMTABtcjEgIT0gTlVMTAB2YXJfa2luZCAhPSBKU19WQVJfTk9STUFMAGItPmZ1bmNfa2luZCA9PSBKU19GVU5DX05PUk1BTABlbmNvZGVVUkkAZGVjb2RlVVJJAFBJAHNwZWNpYWwgPT0gUFVUX0xWQUxVRV9OT0tFRVAgfHwgc3BlY2lhbCA9PSBQVVRfTFZBTFVFX05PS0VFUF9ERVBUSABzLT5zdGF0ZSA9PSBKU19BU1lOQ19HRU5FUkFUT1JfU1RBVEVfRVhFQ1VUSU5HAHByZWMxICE9IEJGX1BSRUNfSU5GADAxMjM0NTY3ODlBQkNERUYAU0laRQBNQVhfVkFMVUUATUlOX1ZBTFVFAE5BTUUAZXZhbF90eXBlID09IEpTX0VWQUxfVFlQRV9HTE9CQUwgfHwgZXZhbF90eXBlID09IEpTX0VWQUxfVFlQRV9NT0RVTEUAcC0+Z2Nfb2JqX3R5cGUgPT0gSlNfR0NfT0JKX1RZUEVfSlNfT0JKRUNUIHx8IHAtPmdjX29ial90eXBlID09IEpTX0dDX09CSl9UWVBFX0ZVTkNUSU9OX0JZVEVDT0RFAExPRzJFAExPRzEwRQBzLT5zdGF0ZSA9PSBKU19BU1lOQ19HRU5FUkFUT1JfU1RBVEVfQVdBSVRJTkdfUkVUVVJOIHx8IHMtPnN0YXRlID09IEpTX0FTWU5DX0dFTkVSQVRPUl9TVEFURV9DT01QTEVURUQAVVRDADxpbnB1dD4APHNldD4APGFub255bW91cz4APGR1bXA+ADxudWxsPgBiaWdpbnQgb3BlcmFuZHMgYXJlIGZvcmJpZGRlbiBmb3IgPj4+ACZxdW90OwBzZXRVaW50OABnZXRVaW50OABzZXRJbnQ4AGdldEludDgAbWFsZm9ybWVkIFVURi04AHJhZGl4IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAzNgBzZXRVaW50MTYAZ2V0VWludDE2AHNldEludDE2AGdldEludDE2AGFyZ2MgPT0gNQBzZXRCaWdVaW50NjQAZ2V0QmlnVWludDY0AHNldEJpZ0ludDY0AGdldEJpZ0ludDY0AHNldEZsb2F0NjQAZ2V0RmxvYXQ2NABhcmdjID09IDMAYXRhbjIAbG9nMgBmbG9vckxvZzIAU1FSVDFfMgBTUVJUMgBMTjIAY2x6MzIAc2V0VWludDMyAGdldFVpbnQzMgBzZXRJbnQzMgBnZXRJbnQzMgBzZXRGbG9hdDMyAGdldEZsb2F0MzIAc3RhY2tfbGVuID49IDIASlNfQXRvbUlzTnVtZXJpY0luZGV4MQBqc19mY3Z0MQBKU19Db21wYWN0QmlnSW50MQBleHBtMQByICE9IGExICYmIHIgIT0gYjEAbHMtPmFkZHIgPT0gLTEAbnEgPj0gMQBzdGFja19sZW4gPj0gMQBwLT5oZWFkZXIucmVmX2NvdW50ID09IDEAcC0+c2hhcGUtPmhlYWRlci5yZWZfY291bnQgPT0gMQBzdGFja19sZW4gPT0gMQBqc19mcmVlX3NoYXBlMABsb2cxMABMTjEwAHAtPnJlZl9jb3VudCA+IDAAdmFyX3JlZi0+aGVhZGVyLnJlZl9jb3VudCA+IDAAc3RhY2tfc2l6ZSA+IDAAY3Bvb2xfaWR4ID49IDAAcnQtPmF0b21fY291bnQgPj0gMABscy0+cmVmX2NvdW50ID49IDAAcy0+aXNfZXZhbCB8fCBzLT5jbG9zdXJlX3Zhcl9jb3VudCA9PSAwAHAtPnJlZl9jb3VudCA9PSAwAGN0eC0+aGVhZGVyLnJlZl9jb3VudCA9PSAwAHNoLT5oZWFkZXIucmVmX2NvdW50ID09IDAAcC0+bWFyayA9PSAwAChuMiAlIHN0cmlwX2xlbikgPT0gMAAocHItPnUuaW5pdC5yZWFsbV9hbmRfaWQgJiAzKSA9PSAwAChuZXdfaGFzaF9zaXplICYgKG5ld19oYXNoX3NpemUgLSAxKSkgPT0gMABpICE9IDAAc2l6ZSAhPSAwAF4kXC4qKz8oKVtde318LwA8LwAwLgBtaXNzaW5nIGJpbmRpbmcgcGF0dGVybi4uLgBiaWdpbnQgYXJndW1lbnQgd2l0aCB1bmFyeSArAGFzeW5jIGZ1bmN0aW9uICoACn0pAGxpc3RfZW1wdHkoJnJ0LT5nY19vYmpfbGlzdCkAaiA9PSAoc2gtPnByb3BfY291bnQgLSBzaC0+ZGVsZXRlZF9wcm9wX2NvdW50KQBKU19Jc1VuZGVmaW5lZChmdW5jX3JldCkAIV9fSlNfQXRvbUlzVGFnZ2VkSW50KGRlc2NyKQAhYXRvbV9pc19mcmVlKHApAChudWxsKQAgKG5hdGl2ZSkAanNfY2xhc3NfaGFzX2J5dGVjb2RlKHAtPmNsYXNzX2lkKQB1bmNvbnNpc3RlbnQgc3RhY2sgc2l6ZTogJWQgJWQgKHBjPSVkKQBieXRlY29kZSBidWZmZXIgb3ZlcmZsb3cgKG9wPSVkLCBwYz0lZCkAc3RhY2sgb3ZlcmZsb3cgKG9wPSVkLCBwYz0lZCkAc3RhY2sgdW5kZXJmbG93IChvcD0lZCwgcGM9JWQpAGludmFsaWQgb3Bjb2RlIChvcD0lZCwgcGM9JWQpACg/OikAbm8gZnVuY3Rpb24gZmlsZW5hbWUgZm9yIGltcG9ydCgpAC1fLiF+KicoKQAgYW5vbnltb3VzKABTeW1ib2woAGV4cGVjdGluZyAnfScAY2xhc3MgY29uc3RydWN0b3JzIG11c3QgYmUgaW52b2tlZCB3aXRoICduZXcnAGV4cGVjdGluZyAnYXMnAHVuZXhwZWN0ZWQgdG9rZW4gaW4gZXhwcmVzc2lvbjogJyUuKnMnAHVuZXhwZWN0ZWQgdG9rZW46ICclLipzJwByZWRlY2xhcmF0aW9uIG9mICclcycAZHVwbGljYXRlIGV4cG9ydGVkIG5hbWUgJyVzJwBjaXJjdWxhciByZWZlcmVuY2Ugd2hlbiBsb29raW5nIGZvciBleHBvcnQgJyVzJyBpbiBtb2R1bGUgJyVzJwBDb3VsZCBub3QgZmluZCBleHBvcnQgJyVzJyBpbiBtb2R1bGUgJyVzJwBjb3VsZCBub3QgbG9hZCBtb2R1bGUgJyVzJwBjYW5ub3QgZGVmaW5lIHZhcmlhYmxlICclcycAdW5kZWZpbmVkIHByaXZhdGUgZmllbGQgJyVzJwB1bnN1cHBvcnRlZCByZWZlcmVuY2UgdG8gJ3N1cGVyJwBpbnZhbGlkIHVzZSBvZiAnc3VwZXInACdmb3IgYXdhaXQnIGxvb3Agc2hvdWxkIGJlIHVzZWQgd2l0aCAnb2YnAGV4cGVjdGluZyAnJWMnAHVucGFyZW50aGVzaXplZCB1bmFyeSBleHByZXNzaW9uIGNhbid0IGFwcGVhciBvbiB0aGUgbGVmdC1oYW5kIHNpZGUgb2YgJyoqJwBpbnZhbGlkIHVzZSBvZiAnaW1wb3J0KCknAGV4cGVjdGluZyAlJQA7Lz86QCY9KyQsIwA9IgBzZXQgAGdldCAAW29iamVjdCAAYXN5bmMgZnVuY3Rpb24gAGJvdW5kIAAlLjNzLCAlMDJkICUuM3MgJTAqZCAAYXN5bmMgADogACAgICAgICAgICAACikgewoACkpTT2JqZWN0IGNsYXNzZXMKACUtMjBzICU4cyAlOHMKACAgJTVkICAlMi4wZCAlcwoAICAlM3UgKyAlLTJ1ICAlcwoAICBtYWxsb2NfdXNhYmxlX3NpemUgdW5hdmFpbGFibGUKACUtMjBzICU4bGxkCgAlLTIwcyAlOGxsZCAlOGxsZAoAX19KU19GcmVlVmFsdWU6IHVua25vd24gdGFnPSVkCgAlLTIwcyAlOGxsZCAlOGxsZCAgKCUwLjFmIHBlciBmYXN0IGFycmF5KQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgb2JqZWN0KQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgZnVuY3Rpb24pCgAlLTIwcyAlOGxsZCAlOGxsZCAgKCUwLjFmIHBlciBhdG9tKQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgYmxvY2spCgAlLTIwcyAlOGxsZCAlOGxsZCAgKCVkIG92ZXJoZWFkLCAlMC4xZiBhdmVyYWdlIHNsYWNrKQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgc3RyaW5nKQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgc2hhcGUpCgBRdWlja0pTIG1lbW9yeSB1c2FnZSAtLSBCaWdOdW0gMjAyMS0wMy0yNyB2ZXJzaW9uLCAlZC1iaXQsIG1hbGxvYyBsaW1pdDogJWxsZAoKAAAAAHwpAADLLQAA6igAAOooAADqKAAA6igAAOooAADqKAAA6igAAOooAADFGAAArDwAAKw8AEGQnwELAZIAQZyfAQsNkwAAAGUAAABmAAAAlABBtJ8BCz2VAAAAZwAAAGgAAACWAAAAZwAAAGgAAACXAAAAZwAAAGgAAACYAAAAZwAAAGgAAACZAAAAZQAAAGYAAACZAEH8nwELDZwAAABnAAAAaAAAAJIAQZSgAQutA50AAABpAAAAagAAAJ0AAABrAAAAbAAAAJ0AAABtAAAAbgAAAJ0AAABvAAAAcAAAAJ4AAABrAAAAbAAAAJ8AAABxAAAAcgAAAKAAAABzAAAAAAAAAKEAAAB0AAAAAAAAAKIAAAB0AAAAAAAAAKMAAAB1AAAAdgAAAKQAAAB1AAAAdgAAAKUAAAB1AAAAdgAAAKYAAAB1AAAAdgAAAKcAAAB1AAAAdgAAAKgAAAB1AAAAdgAAAKkAAAB1AAAAdgAAAKoAAAB1AAAAdgAAAKsAAAB1AAAAdgAAAKwAAAB1AAAAdgAAAK0AAAB1AAAAdgAAAK4AAAB1AAAAdgAAAK8AAABnAAAAaAAAALAAAABnAAAAaAAAALEAAAB3AAAAAAAAALIAAABnAAAAaAAAALMAAAB4AAAAeQAAALUAAAB6AAAAewAAALYAAAB6AAAAewAAALcAAAB6AAAAewAAALgAAAB6AAAAewAAALkAAAB8AAAAfQAAALoAAAB8AAAAfQAAALsAAAB+AAAAfwAAALwAAAB+AAAAfwAAAL0AAACAAAAAgQAAAL4AAACCAAAAgwBB0KMBCwGEAEHgowELDYUAAAAAAAAAhgAAAIcAQYykAQsBiABBmKQBCwmJAAAAigAAAIsAQbCkAQvVArMyAABwAQAAvBIAAAgBAADMGAAAMAAAADYuAAAQAAAAuzYAAFgAAACSAAAAjAAAAI0AAACOAAAAjwAAAJAAAACRAAAAkgAAAJMAAACUAAAAMGIAAPBiAACgYwAA8GMAADBkAABQZAAADAsFBAICAADAAAAAlQAAAJYAAADBAAAAlwAAAJgAAADCAAAAlwAAAJgAAADDAAAAawAAAGwAAADEAAAAmQAAAJoAAADFAAAAmQAAAJoAAAAvAAAAmwAAAJwAAADGAAAAawAAAGwAAADHAAAAnQAAAJ4AAAAAAAAA7h8AAB8gAAAqIAAA4h8AABUgAAA5IAAA+B8AAAYgAABjb3B5V2l0aGluAGVudHJpZXMAZmlsbABmaW5kAGZpbmRJbmRleABmbGF0AGZsYXRNYXAAaW5jbHVkZXMAa2V5cwB2YWx1ZXMAAAAAAAEBAgIDAwIDAEGQpwEL3xBudWxsAGZhbHNlAHRydWUAaWYAZWxzZQByZXR1cm4AdmFyAHRoaXMAZGVsZXRlAHZvaWQAdHlwZW9mAG5ldwBpbgBpbnN0YW5jZW9mAGRvAHdoaWxlAGZvcgBicmVhawBjb250aW51ZQBzd2l0Y2gAY2FzZQBkZWZhdWx0AHRocm93AHRyeQBjYXRjaABmaW5hbGx5AGZ1bmN0aW9uAGRlYnVnZ2VyAHdpdGgAY2xhc3MAY29uc3QAZW51bQBleHBvcnQAZXh0ZW5kcwBpbXBvcnQAc3VwZXIAaW1wbGVtZW50cwBpbnRlcmZhY2UAbGV0AHBhY2thZ2UAcHJpdmF0ZQBwcm90ZWN0ZWQAcHVibGljAHN0YXRpYwB5aWVsZABhd2FpdAAAbGVuZ3RoAGZpbGVOYW1lAGxpbmVOdW1iZXIAbWVzc2FnZQBlcnJvcnMAc3RhY2sAbmFtZQB0b1N0cmluZwB0b0xvY2FsZVN0cmluZwB2YWx1ZU9mAGV2YWwAcHJvdG90eXBlAGNvbnN0cnVjdG9yAGNvbmZpZ3VyYWJsZQB3cml0YWJsZQBlbnVtZXJhYmxlAHZhbHVlAGdldABzZXQAb2YAX19wcm90b19fAHVuZGVmaW5lZABudW1iZXIAYm9vbGVhbgBzdHJpbmcAb2JqZWN0AHN5bWJvbABpbnRlZ2VyAHVua25vd24AYXJndW1lbnRzAGNhbGxlZQBjYWxsZXIAPGV2YWw+ADxyZXQ+ADx2YXI+ADxhcmdfdmFyPgA8d2l0aD4AbGFzdEluZGV4AHRhcmdldABpbmRleABpbnB1dABkZWZpbmVQcm9wZXJ0aWVzAGFwcGx5AGpvaW4AY29uY2F0AHNwbGl0AGNvbnN0cnVjdABnZXRQcm90b3R5cGVPZgBzZXRQcm90b3R5cGVPZgBpc0V4dGVuc2libGUAcHJldmVudEV4dGVuc2lvbnMAaGFzAGRlbGV0ZVByb3BlcnR5AGRlZmluZVByb3BlcnR5AGdldE93blByb3BlcnR5RGVzY3JpcHRvcgBvd25LZXlzAGFkZABkb25lAG5leHQAdmFsdWVzAHNvdXJjZQBmbGFncwBnbG9iYWwAdW5pY29kZQByYXcAbmV3LnRhcmdldAB0aGlzLmFjdGl2ZV9mdW5jADxob21lX29iamVjdD4APGNvbXB1dGVkX2ZpZWxkPgA8c3RhdGljX2NvbXB1dGVkX2ZpZWxkPgA8Y2xhc3NfZmllbGRzX2luaXQ+ADxicmFuZD4AI2NvbnN0cnVjdG9yAGFzAGZyb20AbWV0YQAqZGVmYXVsdCoAKgBNb2R1bGUAdGhlbgByZXNvbHZlAHJlamVjdABwcm9taXNlAHByb3h5AHJldm9rZQBhc3luYwBleGVjAGdyb3VwcwBzdGF0dXMAcmVhc29uAGdsb2JhbFRoaXMAYmlnaW50AGJpZ2Zsb2F0AGJpZ2RlY2ltYWwAcm91bmRpbmdNb2RlAG1heGltdW1TaWduaWZpY2FudERpZ2l0cwBtYXhpbXVtRnJhY3Rpb25EaWdpdHMAdG9KU09OAE9iamVjdABBcnJheQBFcnJvcgBOdW1iZXIAU3RyaW5nAEJvb2xlYW4AU3ltYm9sAEFyZ3VtZW50cwBNYXRoAEpTT04ARGF0ZQBGdW5jdGlvbgBHZW5lcmF0b3JGdW5jdGlvbgBGb3JJbkl0ZXJhdG9yAFJlZ0V4cABBcnJheUJ1ZmZlcgBTaGFyZWRBcnJheUJ1ZmZlcgBVaW50OENsYW1wZWRBcnJheQBJbnQ4QXJyYXkAVWludDhBcnJheQBJbnQxNkFycmF5AFVpbnQxNkFycmF5AEludDMyQXJyYXkAVWludDMyQXJyYXkAQmlnSW50NjRBcnJheQBCaWdVaW50NjRBcnJheQBGbG9hdDMyQXJyYXkARmxvYXQ2NEFycmF5AERhdGFWaWV3AEJpZ0ludABCaWdGbG9hdABCaWdGbG9hdEVudgBCaWdEZWNpbWFsAE9wZXJhdG9yU2V0AE9wZXJhdG9ycwBNYXAAU2V0AFdlYWtNYXAAV2Vha1NldABNYXAgSXRlcmF0b3IAU2V0IEl0ZXJhdG9yAEFycmF5IEl0ZXJhdG9yAFN0cmluZyBJdGVyYXRvcgBSZWdFeHAgU3RyaW5nIEl0ZXJhdG9yAEdlbmVyYXRvcgBQcm94eQBQcm9taXNlAFByb21pc2VSZXNvbHZlRnVuY3Rpb24AUHJvbWlzZVJlamVjdEZ1bmN0aW9uAEFzeW5jRnVuY3Rpb24AQXN5bmNGdW5jdGlvblJlc29sdmUAQXN5bmNGdW5jdGlvblJlamVjdABBc3luY0dlbmVyYXRvckZ1bmN0aW9uAEFzeW5jR2VuZXJhdG9yAEV2YWxFcnJvcgBSYW5nZUVycm9yAFJlZmVyZW5jZUVycm9yAFN5bnRheEVycm9yAFR5cGVFcnJvcgBVUklFcnJvcgBJbnRlcm5hbEVycm9yADxicmFuZD4AU3ltYm9sLnRvUHJpbWl0aXZlAFN5bWJvbC5pdGVyYXRvcgBTeW1ib2wubWF0Y2gAU3ltYm9sLm1hdGNoQWxsAFN5bWJvbC5yZXBsYWNlAFN5bWJvbC5zZWFyY2gAU3ltYm9sLnNwbGl0AFN5bWJvbC50b1N0cmluZ1RhZwBTeW1ib2wuaXNDb25jYXRTcHJlYWRhYmxlAFN5bWJvbC5oYXNJbnN0YW5jZQBTeW1ib2wuc3BlY2llcwBTeW1ib2wudW5zY29wYWJsZXMAU3ltYm9sLmFzeW5jSXRlcmF0b3IAU3ltYm9sLm9wZXJhdG9yU2V0AEGAuAELtQgBAAAABQABFAUAARUFAAEVBQABFwUAARcBAAEAAQABAAEAAQABAAEAAQABAAEAAQACAAEFAwABCgEBAAABAgEAAQMCAAEBAgABAgMAAQIEAAEDBgABAgMAAQMEAAEEBQABAwMAAQQEAAEFBQABAgIAAQQEAAEDAwABAwMAAQQEAAEFBQADAgENAwEBDQMBAA0DAgENAwIADQMAAQ0DAwEKAQEAAAEAAAABAQIAAQAAAAECAgABAgAAAQEAAAEBAAAGAAAYBQEBDwMCAQoBAgEAAQEBAAEBAQAFAAEXBQABFwUAARcFAQAXBQEAFwUCABcBAgMAAQMAAAYAABgGAAAYBgEAGAUBARcFAQIXBQIAFwECAQABAwAAAQMBAAECAQABAgIAAQMAAAEDAQABBAAABQIBFwUBARcBAgIAAQIBAAECAgABAwIAAQMCAAIDAwUGAgEYAgMBBQYCAhgGAwMYAwABEAMBABADAQEQAwABEQMBABEDAQERAwABEgMBABIDAQESAwAAEAMAARADAQAQAwEAEAMAARIDAQASAwEAEgMAABAFAQAWBQEAFgUAABYFAAEWBQAAFgEBAAABAQEAAQEBAAECAgAKAQAaCgIBGgoBABoKAQAaCgEAGgoBABoHAAIZBwACGQcAAhkFAAIXAQEBAAEBAwABAQMAAQEDAAIDBQUBAQEAAQECAAEDAAABBAQAAQQEAAIEBQUBAAAAAQECAAEBAgABAQIAAQEBAAEBAQABAQEAAQEBAAEBAQABAQIAAQECAAIAAAcCAAAHAgEABwEBAQABAQEAAQEBAAECAQAFAAEXAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAEBAQABAgEAAQIBAAEAAAADAAAKAwAACgUAABYHAAEZBwABGQcBABkHAAEZCwACGwcAAhkHAAIZBwEBGQcBAhkHAQEZBQEBEwUAABMBAAEBAQABAQEAAQEBAAEBAQABAQEAAQEBAAEBAQABAQEAAQECAAEGAwABCwIAAQgCAAEIAQABAAIAAQcCAQAHAgEBBwEAAQIBAAECAQABAgEAAQIBAQACAQEAAgEBAAIBAQACAQEBAgEBAQIBAQECAQEBAgEAAQMBAAEDAQABAwEAAQMBAQADAQEAAwEBAAMBAQADAQEBAwEBAQMBAQEDAQEBAwEAAQQBAAEEAQABBAEAAQQBAQAEAQEABAEBAAQBAQAEAQEBBAEBAQQBAQEEAQEBBAEBAQACAQAJAgEACQIAAAkDAAAMAQEBDgEBAQ4BAQEOAQEBDgEBAQABAQEAAQEBAAEBAQCfAAAAoAAAAKEAAABuAGYAaQBuAGkAdAB5AA0AEAA0ADgAQcDAAQuVESsAAAAtAAAAKgAAAC8AAAAlAAAAKioAAHwAAAAmAAAAXgAAADw8AAA+PgAAPj4+AD09AAA8AAAAcG9zAG5lZwArKwAALS0AAH4AAAAAAAAAfTAAAAMAAAAAAAAAogAAAGscAAABAQAAowAAAAAAAADdNwAAAQEAAKQAAAAAAAAArisAAAECAQClAAAAAAAAAOsxAAABAgIApQAAAAAAAACLMgAAAQIEAKUAAAAAAAAAdCoAAAECCAClAAAAAAAAAKg2AAABAhAApQAAAAAAAAD7DgAAAQIgAKUAAAAAAAAAET4AAAMAAAABAAAAVQAAAG80AAADAAAAAgAAAKYAAABjEwAAAwAAAAEAAACnAAAA0i0AAAMAAAAAAAAAqAAAAA1AAAADAAAAAgAAAKkAAACIPwAAAwAAAAEAAACqAAAAdj8AAAMAAAABAAAAqwAAAJc/AAADAAAAAQAAAKwAAAAtPwAAAwAAAAIAAACtAAAAPD8AAAEBAACuAAAAAAAAAPUSAAADAAAAAAwAAK8AAACnPwAAAQMAAF0fAAAAAAAAh0EAAAMIAADwYQAAAwAAAHIxAAADAAAAAgAAALAAAAAfDwAAAwAAAAMAAACxAAAApz8AAAEDAACHQQAAAAAAAIQ1AAADAAAAAgAAALIAAABfFwAAAwAAAAIBAACzAAAAthcAAAMAAAABAQAAtAAAADceAAADAAAAAQEAALUAAAApMQAAAwAAAAEBAAC2AAAAJSQAAAMAAAAAAQAAtwAAAHgwAAABAgAAuAAAAAAAAAAiLQAAAwAAAAEBAAC5AAAAcRwAAAMABAAAAQAAugAAACUZAAADAAAAAAEAALoAAAByHQAAAwAIAAABAAC6AAAATT8AAAMJAAByHQAA/////6c/AAABAwAAIyUAAAAAAACePQAAAwABAAEBAACzAAAANx4AAAMAAQABAQAAtQAAACkxAAADAAEAAQEAALYAAAAlJAAAAwABAAABAAC3AAAAeDAAAAECAQC4AAAAAAAAACItAAADAAEAAQEAALkAAABxHAAAAwABAAABAAC6AAAAJRkAAAMJAABxHAAA/////00/AAADCQAAcRwAAP////9yHQAAAwAJAAABAAC6AAAApz8AAAEDAAC+FwAAAAAAAF8XAAADAAIAAgEAALMAAAC2FwAAAwACAAEBAAC0AAAANx4AAAMAAgABAQAAtQAAACkxAAADAAIAAQEAALYAAACnPwAAAQMAAB8lAAAAAAAAnj0AAAMAAwABAQAAswAAADceAAADAAMAAQEAALUAAAApMQAAAwADAAEBAAC2AAAApz8AAAEDAAC6FwAAAAAAAPUSAAADAAAAAAwAALsAAACnPwAAAQMAAFAfAAAAAAAA9RIAAAMAAQAADAAAuwAAAKc/AAABAwAAQx8AAAAAAAA8PwAAAQEAAK4AAAAAAAAAoigAAAMAAAACAAAAvAAAABUtAAADAAAAAQAAAL0AAADzDgAAAwAAAAEAAAC+AAAApz8AAAEDAACnMQAAAAAAAI4wAAADAAAAAQEAAL8AAADxFwAAAwABAAEBAAC/AAAAcCoAAAMAAAABAQAAwAAAADM9AAADAAEAAQEAAMAAAADEDgAAAwACAAEBAADAAAAAazgAAAMAAAABAAAAwQAAADw/AAABAQAArgAAAAAAAACnPwAAAQMAAFomAAAAAAAAXz8AAAMAAAAAAAAAwgAAAPUSAAADAAAAAQEAAMMAAABsJQAAAwABAAEBAADDAAAA6xAAAAMAAgABAQAAwwAAAPUSAAADAAAAAQEAAMQAAABsJQAAAwABAAEBAADEAAAA6xAAAAMAAgABAQAAxAAAAKc/AAABAwAAxh8AAAAAAACnPwAAAQMAAEMmAAAAAAAAYS8AAAMAAAAAAAAAxQAAANItAAADABMAAAEAAMYAAAC8PwAAAwAAAAEAAADHAAAASy4AAAMAAwAAAQAAxgAAACouAAADCQAASy4AAP////8/LgAAAwAjAAABAADGAAAA2y0AAAMAEQAAAQAAxgAAAPstAAADABIAAAEAAMYAAAAbLgAAAwAzAAABAADGAAAA6C0AAAMAMQAAAQAAxgAAAAguAAADADIAAAEAAMYAAAAaFwAAAwAAAAAAAADIAAAAxTIAAAMAAAAAAAAAxQAAADMkAAADAAEBAAEAAMkAAABHJAAAAwABAAABAADJAAAAYiQAAAMAAAAAAQAAyQAAAP8rAAADABEAAAEAAMkAAAAULAAAAwAQAAABAADJAAAAPzEAAAMAIQAAAQAAyQAAAFIxAAADACAAAAEAAMkAAACoGgAAAwAxAAABAADJAAAAvRoAAAMAMAAAAQAAyQAAAIMcAAADAEEAAAEAAMkAAACcHAAAAwBAAAABAADJAAAA8B0AAAMAUQAAAQAAyQAAAAkeAAADAFAAAAEAAMkAAACvHQAAAwBhAAABAADJAAAA0h0AAAMAYAAAAQAAyQAAAN0PAAADAHEAAAEAAMkAAADkDwAAAwBwAAABAADJAAAAvTIAAAMAAAABAAAAygAAAJ8dAAADAHEGAQEAAMsAAAC/HQAAAwBwBgEBAADLAAAA5R0AAAMAcQUCAQAAywAAAPsdAAADAHAFAgEAAMsAAAB4HAAAAwBxBAMBAADLAAAAjhwAAAMAcAQDAQAAywAAAJ8aAAADAHEDBAEAAMsAAACxGgAAAwBwAwQBAADLAAAANzEAAAMAMQIBAQAAywAAAEcxAAADADACAQEAAMsAAAD2KwAAAwAxAQIBAADLAAAACCwAAAMAMAECAQAAywAAACskAAADAAAAAQAAAMwAAAA7JAAAAwAxAAMBAADLAAAAUyQAAAMAMAADAQAAywAAAIVBAAADAAAAAQAAAM0AAABTdW5Nb25UdWVXZWRUaHVGcmlTYXQAQeDRAQskSmFuRmViTWFyQXByTWF5SnVuSnVsQXVnU2VwT2N0Tm92RGVjAEGQ0gEL5g4fAAAAHAAAAB8AAAAeAAAAHwAAAB4AAAAfAAAAHwAAAB4AAAAfAAAAHgAAAB8AAAD4EAAAAwAAAAAAAADOAAAAcjEAAAMAAAABAAAAzwAAAE5EAAADAAAABwAAANAAAACam5ydnqChoq2ur5+fAAAA0i0AAAMAAAAAAAAA0QAAAGEvAAADAAAAAAAAANIAAACnPwAAAQMAAIgWAAAAAAAAXkEAAAMAAAACAQAA0wAAAGZBAAADAAEAAgEAANMAAABIEQAAAwABAAIBAADUAAAATREAAAMAAgACAQAA1AAAAFcRAAADAAMAAgEAANQAAABSEQAAAwAGAAIBAADUAAAAPykAAAMAEQACAQAA1AAAAEcpAAADABIAAgEAANQAAABXKQAAAwATAAIBAADUAAAATykAAAMAFgACAQAA1AAAAJETAAADAAAAAQEAANUAAABpKQAAAwABAAEBAADVAAAAhUUAAAMAAAABAQAA1gAAAPMMAAADAAEAAQEAANYAAADSLQAAAwAAAAAAAADXAAAAYTQAAAMDAAA8IAAAAAAAALo1AAADAwAATE8AAAAAAAAwMQAAAwAAAAIAAADYAAAAeC8AAAMAAAABAQAA2QAAAGkvAAADAAAAAgAAANoAAABADgAAAwAAAAMBAADbAAAAYR0AAAMAAAACAAAA3AAAAMUcAAADAAAAAQAAAN0AAAD+GwAAAwAAAAEAAADeAAAAJRkAAAMAAAABAQAA3wAAAHEcAAADAAEAAQEAAN8AAAByHQAAAwACAAEBAADfAAAApDQAAAMAAAABAQAA4AAAAKcbAAADAAAAAQEAAOEAAACzHgAAAwAAAAIBAADiAAAAyRoAAAMAAAABAAAA4wAAACwcAAADAAAAAgAAAOQAAABHKAAAAwAAAAIAAADlAAAAqSsAAAMAAAABAQAA5gAAAIcwAAADAAEAAQEAAOYAAABZPQAAAwAAAAEBAADnAAAAVygAAAMAAQABAQAA5wAAAJQaAAADAAAAAQAAAOgAAAB6HQAAAwAAAAEAAADpAAAA0i0AAAMAAAAAAAAA6gAAABsuAAADAAAAAAAAAOsAAABhLwAAAwAAAAAAAADsAAAA+g0AAAMAAAABAAAA7QAAAIcvAAADAAAAAQAAAO4AAAAUNQAAAwAAAAEAAADvAAAAIz8AAAEBAADwAAAA8QAAABI/AAADAAAAAgEAAPIAAADwPgAAAwABAAIBAADyAAAAAT8AAAMAAAABAQAA8wAAAN8+AAADAAEAAQEAAPMAAABvKgAAAwAAAAEAAAD0AAAAyA4AAAMAAAACAQAA9QAAAHE5AAADAAAAAQAAAPYAAADSLQAAAwAAAAAAAAD3AAAA+D8AAAMAAAABAAAA+AAAAGY0AAABAQAA+QAAAAAAAAADJAAAAQEAAPoAAAAAAAAATT8AAAMAAAAAAAAAwgAAAAAZAAADAAAAAQAAAPsAAAC+DgAAAwAAAAEBAAD8AAAAnzIAAAMAAQABAQAA/AAAACItAAADAAIAAQEAAPwAAAATJQAAAwADAAEBAAD8AAAAUiEAAAMABAABAQAA/AAAANY3AAADAAAAAQEAAP0AAADbFgAAAwABAAEBAAD9AAAALioAAAMAAAABAAAA/gAAAGw5AAADAAAAAQEAAP8AAABDEAAAAwABAAEBAAD/AAAATS8AAAMAAAABAAAAAAEAAFUvAAADAAAAAQAAAAEBAACWHQAAAwAAAAEAAAACAQAA5icAAAMAAAABAQAAAwEAANItAAADAAAAAAAAAAQBAAAbLgAAAwABAAABAAADAQAAzyQAAAMAAAAAAQAABQEAAMIsAAADAAAAAQEAAAYBAADpFgAAAwABAAABAAAFAQAA5xYAAAMAAQABAQAABgEAAGoxAAADAAAAAAAAAAcBAACWEwAAAwAAAAEAAAAIAQAAXjgAAAMAAAACAQAACQEAAGQ4AAADAAEAAgEAAAkBAADvJwAAAwAAAAIAAAAKAQAAFyUAAAMAAQABAQAACwEAAOkYAAADAAAAAAEAAAsBAABxHAAAAwABAAABAAA9AAAATT8AAAMJAABxHAAA/////yUZAAADAAAAAAEAAD0AAAByHQAAAwACAAABAAA9AAAAyg8AAAMAAAABAAAADAEAAC4pAAADAAAAAQAAAA0BAACpLgAAAwAAAAAAAAAOAQAAPD8AAAEBAACuAAAAAAAAAPUSAAADAAAAAAwAAD4AAACnPwAAAQMAADQfAAAAAAAAjxYAAAMAAAACAAAADwEAAN4YAAADAAAAAQAAABABAABtQQAAAwAAAAEAAAARAQAAIDEAAAMAAAABAAAAEgEAAHFCAAADAAAAAQEAABMBAABCFgAAAwABAAEBAAATAQAAZ0IAAAMAAAABAQAAFAEAAC8WAAADAAEAAQEAABQBAABdMgAAAwAAAAEAAAAVAQAAWzIAAAMAAAABAAAAFgEAAHUOAAAABgAAAAAAAAAA8H+BQQAAAAYAAAAAAAAAAPh/rDwAAAAHAEGA4QELVbsrAAADAAAAAAAAABcBAABBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OUAqXystLi8AQeDhAQuWA5srAAADAAAAAQAAABgBAADbOgAAAwAAAAEAAAAZAQAA1ScAAAMAAAABAAAAGgEAANItAAADAAAAAQEAABsBAAAbLgAAAwABAAABAAAbAQAAYS8AAAMAAAAAAAAAHAEAAI8WAAADCQAAjxYAAAAAAADeGAAAAwkAAN4YAAAAAAAAbUEAAAMAAAABAAAAHQEAACAxAAADAAAAAQAAAB4BAAAeIwAAAwAAAAEAAAAfAQAAKCMAAAMAAAABAAAAIAEAABtDAAAABgAA////////738lQwAAAAYAAAEAAAAAAAAAgUEAAAAGAAAAAAAAAAD4f0dAAAAABgAAAAAAAAAA8P81QAAAAAYAAAAAAAAAAPB/jEEAAAAGAAAAAAAAAACwPDxBAAAABgAA////////P0NNQQAAAAYAAP///////z/D0i0AAAMAAAAAAAAAIQEAAGEvAAADAAAAAAAAACIBAACGNwAAAwAAAAEAAAAjAQAAqBUAAAMAAAABAAAAJAEAAEQRAAADAAAAAQAAACUBAACaLAAAAQQAQYDlAQviBhoZAAADAAAAAQAAACYBAAATGQAAAwAAAAEAAAAnAQAAABkAAAMAAAABAAAAKAEAAAcZAAADAAAAAQAAACkBAABNLwAAAwAAAAEBAAAqAQAAVS8AAAMAAQABAQAAKgEAAJYdAAADAAAAAQEAACsBAABBLAAAAwACAAEBAAArAQAANiwAAAMAAQABAQAAKwEAAA8tAAADANIAAQEAACwBAAB7KgAAAwDTAAEBAAAsAQAAGy0AAAMA1QABAQAALAEAALcWAAADAAAAAgAAAC0BAABfLQAAAwAAAAIAAAAuAQAAmB4AAAMAAAACAAAALwEAAF44AAADAAAAAgAAADABAAD5GAAAAwAAAAEAAAAxAQAAcDgAAAMAAAACAQAAMgEAAIQqAAADAAEAAgEAADIBAAA+OgAAAwABAAEBAAAzAQAAqhMAAAMAAAABAQAAMwEAADopAAADAAMAAAEAADQBAAA2OgAAAwACAAABAAA0AQAA0RYAAAMJAAA2OgAA/////6ATAAADAAEAAAEAADQBAADvFgAAAwkAAKATAAD/////0i0AAAMAAAAAAAAANQEAAGEvAAADAAAAAAAAADUBAAAYMQAAAwAAAAEAAAA2AQAA9jEAAAMAAAABAAAANwEAAK8xAAADAAEAAAEAADgBAADNMQAAAwAAAAABAAA4AQAAuzEAAAMAAQAAAQAAOAEAANkxAAADAAAAAAEAADgBAABNPwAAAwAFAAABAAA9AAAAUiAAAAMAAAABAQAAOQEAAIcuAAADAAEAAAEAADkBAAC1KwAAAwACAAABAAA5AQAARToAAAMAAwAAAQAAOQEAANU6AAADAAQAAAEAADkBAABIIAAAAwAFAAEBAAA5AQAAmi8AAAMABgABAQAAOQEAABceAAADAAcAAAEAADkBAAC2KwAAAwAIAAEBAAA5AQAAaSoAAAMACQAAAQAAOQEAAI41AAADAAoAAAEAADkBAAB5PgAAAwALAAABAAA5AQAAvSQAAAMADAAAAQAAOQEAAN0+AABhNAAAhy4AAAAAAAC1KwAAAAAAANI+AAAAAAAAEhMAAAAAAACQFQAATCAAAJAVAAB4MAAA9CsAAAAAAADdPgAA2y4AAGkqAAAAAAAAjjUAAAAAAAB5PgAAAAAAAL0kAEHw6wELsRL1EgAAAwAAAAAMAAA6AQAApz8AAAEDAABkHwAAAAAAAL0sAAADCAAAIHYAACwAAADrJwAAAwAAAAIBAAA7AQAAfRAAAAMAAQACAQAAOwEAAB8eAAADAAAAAQYAADwBAABCIAAAAwAAAAEGAAA9AQAAjyoAAAMAAAABBgAAPgEAADo5AAADAAAAAQYAAD8BAACREwAAAwAAAAEGAABAAQAAFBsAAAMAAAABBgAAQQEAAOEnAAADAAAAAQYAAEIBAADbKAAAAwAAAAEGAABDAQAAekUAAAMAAAACBwAARAEAABUbAAADAAAAAQYAAEUBAACyJAAAAwAAAAEGAABGAQAALS0AAAMAAAABBgAARwEAAPQQAAADAAAAAgcAAEgBAADiJwAAAwAAAAEGAABJAQAA3CgAAAMAAAABBgAASgEAAAg+AAADAAAAAQYAAEsBAABSKAAAAwAAAAEGAABMAQAAyCwAAAMAAAABBgAATQEAAOAsAAADAAAAAQYAAE4BAADmLAAAAwAAAAEGAABPAQAAxywAAAMAAAABBgAAUAEAAN8sAAADAAAAAQYAAFEBAADlLAAAAwAAAAEGAABSAQAAJEYAAAMAAAABBgAAUwEAAD4lAAADAAAAAQYAAFQBAACARQAAAwAAAAEGAABVAQAAukYAAAMAAAABBgAAVgEAAJsTAAADAAAAAQYAAFcBAADREwAAAwAAAAIAAABYAQAAMykAAAMAAAAAAAAAWQEAAC45AAADAAAAAQYAAFoBAABxKQAAAwAAAAIAAABbAQAAoUUAAAMAAAABAAAAXAEAAKc/AAABAwAAvSwAAAAAAADlQwAAAAYAAGlXFIsKvwVAwEYAAAAGAAAWVbW7sWsCQJ1FAAAABgAA7zn6/kIu5j/aQwAAAAYAAP6CK2VHFfc/4EMAAAAGAAAO5SYVe8vbP3tCAAAABgAAGC1EVPshCUCPRQAAAAYAAM07f2aeoOY/l0UAAAAGAADNO39mnqD2P+kXAAADCAAA8HgAAA4AAADIDgAAAwAAAAMAAABdAQAAwhcAAAMAAAACAAAAXgEAAEAOAAADAAEAAwEAANsAAAAdDgAAAwAAAAIAAABfAQAAthcAAAMAAAACAAAAYAEAALMeAAADAAEAAgEAAOIAAAB4LwAAAwABAAEBAADZAAAANx4AAAMAAAACAAAAYQEAAKQ0AAADAAEAAQEAAOAAAABaGQAAAwAAAAEAAABiAQAApxsAAAMAAQABAQAA4QAAAF8XAAADAAAAAwAAAGMBAABpLwAAAwAAAAIAAABkAQAApz8AAAEDAADpFwAAAAAAANItAAADAAAAAAAAAGUBAABhLwAAAwAAAAAAAABmAQAAvD8AAAMAAAABAAAAZgEAAKc/AAABAwAAgykAAAAAAACtJQAAAQEAAGcBAAAAAAAAWSAAAAMAAAABAAAAaAEAAF0gAAADAAAAAQAAAGkBAAD1EgAAAwAAAAEMAABqAQAAbCUAAAMAAQABDAAAagEAAOsQAAADAAIAAQwAAGoBAACnPwAAAQMAAMsfAAAAAAAApz8AAAEDAABIJgAAAAAAAKksAAABAhMAawEAAAAAAABeOAAAAwATAAIBAABsAQAApz8AAAEDAABkIwAAAAAAADQRAAADAAAAAQAAAG0BAAA8PwAAAQEAAK4AAAAAAAAAqSwAAAECFABrAQAAAAAAAF44AAADABQAAgEAAGwBAACnPwAAAQMAAD0jAAAAAAAAPD8AAAEBAACuAAAAAAAAAJosAAABAQAAbgEAAAAAAAA2IwAAAQIAAG8BAAAAAAAAqSwAAAECAABwAQAAAAAAAA8XAAABAgAAcQEAAAAAAABfFwAAAwAAAAEAAAByAQAAcRwAAAMAAQAAAQAAcwEAAE0/AAADCQAAcRwAAP////8lGQAAAwAAAAABAABzAQAAch0AAAMAAgAAAQAAcwEAAKc/AAABAQAAdAEAAAAAAADvJwAAAwAAAAIAAAB1AQAAvg4AAAMACAABAQAA/AAAAJ8yAAADAAkAAQEAAPwAAAAiLQAAAwAKAAEBAAD8AAAAEyUAAAMACwABAQAA/AAAAFIhAAADAAwAAQEAAPwAAADWNwAAAwAIAAEBAAD9AAAA2xYAAAMACQABAQAA/QAAAC4qAAADAAAAAQAAAHYBAABsOQAAAwAAAAEBAAB3AQAAQxAAAAMAAQABAQAAdwEAAGoxAAADAAAAAAAAAHgBAABeOAAAAwAAAAIAAAB5AQAAKQ8AAAMAAAACAAAAegEAAJYTAAADAAAAAQAAAHsBAADmJwAAAwAAAAEBAAB8AQAAGy4AAAMAAQAAAQAAfAEAAE0vAAADAAAAAQEAAH0BAABVLwAAAwABAAEBAAB9AQAAlh0AAAMA//8BAQAAfQEAAC4pAAADAAAAAQAAAH4BAACpLgAAAwAAAAAAAAB/AQAAPD8AAAEBAACuAAAAAAAAADYjAAABAgEAbwEAAAAAAACpLAAAAQIBAHABAAAAAAAADxcAAAECAQBxAQAAAAAAAMFEAAADABYAAQEAAIABAACwRAAAAwAXAAEBAACAAQAAFUUAAAMAGAABAQAAgAEAAAJFAAADABkAAQEAAIABAADERQAAAwAaAAEBAACAAQAAsUUAAAMAGwABAQAAgAEAAE5FAAADABwAAQEAAIABAAA1RQAAAwAdAAEBAACAAQAA2EUAAAMAHgABAQAAgAEAAGVFAAADAB8AAQEAAIABAAC5RAAAAwAWAAIBAACBAQAAp0QAAAMAFwACAQAAgQEAAAxFAAADABgAAgEAAIEBAAD4RAAAAwAZAAIBAACBAQAAu0UAAAMAGgACAQAAgQEAAKdFAAADABsAAgEAAIEBAABCRQAAAwAcAAIBAACBAQAAKEUAAAMAHQACAQAAgQEAAM1FAAADAB4AAgEAAIEBAABaRQAAAwAfAAIBAACBAQAApz8AAAEDAAA7EQAAAAAAACQAAAAhAAAAIgAAAAcAAAAFAAAAIQAAACEAAAAhAAAAIQAAACEAAAAhAAAABAAAAAYAAAAhAAAAIQAAACEAAAAhAAAAIQAAAAQAAAABAAAAAgAAAAEAAAAEAAAAAQAAAAEAAAAIAAAAEAAAAAEAAAAgAEGs/gELIQIAAAAAAAAAAQAAAAEAAAABAAAADwAAAA4AAAARAAAAEABB+P4BCzECAAAAAwAAAAQAAAAAAAAAAQAAAAUAAAAJAAAACgAAAAsAAAANAAAADQAAAA0AAAANAEG0/wELBQwAAAAMAEHE/wELCQcAAAAIAAAABgBB2P8BC34EAAAALQAAAC0AAABUAAAAOgAAADoAAAAuAAAAfkgAAMRMAAB4SAAAggEAAIMBAACCAQAAhAEAAIUBAACGAQAAhwEAAIgBAACJAQAAigEAAIsBAACMAQAAjQEAAIwBAACOAQAAjwEAAJABAACRAQAAkgEAAJMBAACUAQAAlQEAQeCAAgsqCgAJAA4AIAAhAKAAoQCAFoEWACALICggKiAvIDAgXyBgIAAwATD//gD/AEGUgQILLRAAAAD+//+H/v//BwAAAAAQAP8D/v//h/7//we8gAAAYIAAANCAAAABADAAOgBB0IECCxEEADAAOgBBAFsAXwBgAGEAewBB8IECC8QLAQMFAQEBAQUFBQECAgMFBQEBAQICAwMFBQEFAREAAAAwmiAAAJowAHOBWgAwF2AAMAdsALOBbwAAF3AAAAd8AACBfwBAMIAAwwGYAJCBmABABpkAQJCcALSBpABALqUAMAG8AECGvABwgb8AAAHAADCBwABABMEAMAHDAECCwwAwgsQAQILFADABxwAwgccAMAHIAECCyAAwgckAMAHKAACBygAwAcsAMIHLAEACzAAAAc0AMAHOADCBzgAAAc8AMIHPAEAG0AAwAdMAQILTADCB1ABAAtYAMAHXAECC1wAwgtgAQITZADCB2wBAAtwAQALeAACB3wBQA+IAUIPjAFAD5QBAkOYAAIHuAEAS7wC0AfgAUIP4AEAC+gAwAfsAMIH7AEAo/AAwARABQBIRATEBHQFAgh0BMIEeATEBHwEBgh8BQIIgATCBIQEwASIBMIEiAUAKIwEBASgBAYEoAQEBKQEAgSkBAAEqAQACKwEAgSwBAIEtAQEBLgEAATABAYEwAQCBMQEBgTIBAQEzAQABNAEAgTQBAQE1AQGBNQEBATYBAIE3AQGBOAEAATkBAIE6AQGBPgEAAUABAQFBAQCBQQEBgUMBAAFEAQCBRAEAAkUBAAFGAQABSQEBgU4BAQFPAXOBogFABLgBQAK7AQCDvQEwgb8BMAHDATADxAEwAcYBMALHAdAByAEwkcgBMInRAQAB1gEAg9YB0wHYAQCR2AFzAeEBAInhAQAB5gEAguYBMIHnAXMB6AFzgegBc4HqAXMB6wEAgesBQBjsAXMB+AFzgfgBAAH5AQCB+QGgAfoBc4H6AUCC+wEwgfwBQAL9ATCD/gEwEAACMCAIAgAgGAIAECgCQCIwAkA2RQIwAWACQI5gAgCBZwJAYGgCMKaYAgCmsAK1gcMCMSZQCDGBYwgxgWYIACtoCACDfggRUNAJEAb4CSAG/Al0AUAOdIFADnQBQQ50gUEOdAFCDnSBQg50AUMOgIFDDoABRA4wK0gOMINeDgGBvA4Bgb4OAQHHDkB+AA9AGD8PtQFLD7aBSw+2AUwPtoFMD7cBTQ+AgU0PMAFPD0BgUA8ACIAPMAiEDwAGiA8wBowPAAiQDzAIlA8ACJgPMAicDwAGoA8wBqQPsAGoDwCBqA/T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iaCCsQARDAiAqCSBQOs4CYlgTyOAQuCPj48Rl4JAv4mkgEK8gEDhgECUhEEkiUVWEAyDpxOAQKSBQjwfiUFwgUCYikCugrSOnomOg6yKtIkqo42AiSGrgIuCr407gIvRiyhAn4uEiSu2CDEJgoiAiQkyhEC/kYiJGNCTi4lA1DGImoHRkI6J0IyHidKOg4lA8Y5ApInFKAkYAIGLifYxMoCbiacwH4CIiq2PQZQ4h4+Jt5WAjfkqAAgwB4mvIAgniUFIg2BLaIlAhYS6hpiJQ/QAtjPQgIqBYEyqgVTFIi85hp2DQJOCRYixQf+2g7E4jYCVII5FTzCQDgEEQQSGiIlBoY1F1YbsNIlSlYlsBQVA7wBBoKcCC6MS+gYAhAkA8AoAcAwA9A0AShAgGhggdBsg3SAADKgAWqogGv8ArQ4BOBIhwRUh5Rkhqh0hjNFBSuEh8AEOAAAAAEFkbGFtLEFkbG0AQWhvbSxBaG9tAEFuYXRvbGlhbl9IaWVyb2dseXBocyxIbHV3AEFyYWJpYyxBcmFiAEFybWVuaWFuLEFybW4AQXZlc3RhbixBdnN0AEJhbGluZXNlLEJhbGkAQmFtdW0sQmFtdQBCYXNzYV9WYWgsQmFzcwBCYXRhayxCYXRrAEJlbmdhbGksQmVuZwBCaGFpa3N1a2ksQmhrcwBCb3BvbW9mbyxCb3BvAEJyYWhtaSxCcmFoAEJyYWlsbGUsQnJhaQBCdWdpbmVzZSxCdWdpAEJ1aGlkLEJ1aGQAQ2FuYWRpYW5fQWJvcmlnaW5hbCxDYW5zAENhcmlhbixDYXJpAENhdWNhc2lhbl9BbGJhbmlhbixBZ2hiAENoYWttYSxDYWttAENoYW0sQ2hhbQBDaGVyb2tlZSxDaGVyAENob3Jhc21pYW4sQ2hycwBDb21tb24sWnl5eQBDb3B0aWMsQ29wdCxRYWFjAEN1bmVpZm9ybSxYc3V4AEN5cHJpb3QsQ3BydABDeXJpbGxpYyxDeXJsAERlc2VyZXQsRHNydABEZXZhbmFnYXJpLERldmEARGl2ZXNfQWt1cnUsRGlhawBEb2dyYSxEb2dyAER1cGxveWFuLER1cGwARWd5cHRpYW5fSGllcm9nbHlwaHMsRWd5cABFbGJhc2FuLEVsYmEARWx5bWFpYyxFbHltAEV0aGlvcGljLEV0aGkAR2VvcmdpYW4sR2VvcgBHbGFnb2xpdGljLEdsYWcAR290aGljLEdvdGgAR3JhbnRoYSxHcmFuAEdyZWVrLEdyZWsAR3VqYXJhdGksR3VqcgBHdW5qYWxhX0dvbmRpLEdvbmcAR3VybXVraGksR3VydQBIYW4sSGFuaQBIYW5ndWwsSGFuZwBIYW5pZmlfUm9oaW5neWEsUm9oZwBIYW51bm9vLEhhbm8ASGF0cmFuLEhhdHIASGVicmV3LEhlYnIASGlyYWdhbmEsSGlyYQBJbXBlcmlhbF9BcmFtYWljLEFybWkASW5oZXJpdGVkLFppbmgsUWFhaQBJbnNjcmlwdGlvbmFsX1BhaGxhdmksUGhsaQBJbnNjcmlwdGlvbmFsX1BhcnRoaWFuLFBydGkASmF2YW5lc2UsSmF2YQBLYWl0aGksS3RoaQBLYW5uYWRhLEtuZGEAS2F0YWthbmEsS2FuYQBLYXlhaF9MaSxLYWxpAEtoYXJvc2h0aGksS2hhcgBLaG1lcixLaG1yAEtob2praSxLaG9qAEtoaXRhbl9TbWFsbF9TY3JpcHQsS2l0cwBLaHVkYXdhZGksU2luZABMYW8sTGFvbwBMYXRpbixMYXRuAExlcGNoYSxMZXBjAExpbWJ1LExpbWIATGluZWFyX0EsTGluYQBMaW5lYXJfQixMaW5iAExpc3UsTGlzdQBMeWNpYW4sTHljaQBMeWRpYW4sTHlkaQBNYWthc2FyLE1ha2EATWFoYWphbmksTWFoagBNYWxheWFsYW0sTWx5bQBNYW5kYWljLE1hbmQATWFuaWNoYWVhbixNYW5pAE1hcmNoZW4sTWFyYwBNYXNhcmFtX0dvbmRpLEdvbm0ATWVkZWZhaWRyaW4sTWVkZgBNZWV0ZWlfTWF5ZWssTXRlaQBNZW5kZV9LaWtha3VpLE1lbmQATWVyb2l0aWNfQ3Vyc2l2ZSxNZXJjAE1lcm9pdGljX0hpZXJvZ2x5cGhzLE1lcm8ATWlhbyxQbHJkAE1vZGksTW9kaQBNb25nb2xpYW4sTW9uZwBNcm8sTXJvbwBNdWx0YW5pLE11bHQATXlhbm1hcixNeW1yAE5hYmF0YWVhbixOYmF0AE5hbmRpbmFnYXJpLE5hbmQATmV3X1RhaV9MdWUsVGFsdQBOZXdhLE5ld2EATmtvLE5rb28ATnVzaHUsTnNodQBOeWlha2VuZ19QdWFjaHVlX0htb25nLEhtbnAAT2doYW0sT2dhbQBPbF9DaGlraSxPbGNrAE9sZF9IdW5nYXJpYW4sSHVuZwBPbGRfSXRhbGljLEl0YWwAT2xkX05vcnRoX0FyYWJpYW4sTmFyYgBPbGRfUGVybWljLFBlcm0AT2xkX1BlcnNpYW4sWHBlbwBPbGRfU29nZGlhbixTb2dvAE9sZF9Tb3V0aF9BcmFiaWFuLFNhcmIAT2xkX1R1cmtpYyxPcmtoAE9yaXlhLE9yeWEAT3NhZ2UsT3NnZQBPc21hbnlhLE9zbWEAUGFoYXdoX0htb25nLEhtbmcAUGFsbXlyZW5lLFBhbG0AUGF1X0Npbl9IYXUsUGF1YwBQaGFnc19QYSxQaGFnAFBob2VuaWNpYW4sUGhueABQc2FsdGVyX1BhaGxhdmksUGhscABSZWphbmcsUmpuZwBSdW5pYyxSdW5yAFNhbWFyaXRhbixTYW1yAFNhdXJhc2h0cmEsU2F1cgBTaGFyYWRhLFNocmQAU2hhdmlhbixTaGF3AFNpZGRoYW0sU2lkZABTaWduV3JpdGluZyxTZ253AFNpbmhhbGEsU2luaABTb2dkaWFuLFNvZ2QAU29yYV9Tb21wZW5nLFNvcmEAU295b21ibyxTb3lvAFN1bmRhbmVzZSxTdW5kAFN5bG90aV9OYWdyaSxTeWxvAFN5cmlhYyxTeXJjAFRhZ2Fsb2csVGdsZwBUYWdiYW53YSxUYWdiAFRhaV9MZSxUYWxlAFRhaV9UaGFtLExhbmEAVGFpX1ZpZXQsVGF2dABUYWtyaSxUYWtyAFRhbWlsLFRhbWwAVGFuZ3V0LFRhbmcAVGVsdWd1LFRlbHUAVGhhYW5hLFRoYWEAVGhhaSxUaGFpAFRpYmV0YW4sVGlidABUaWZpbmFnaCxUZm5nAFRpcmh1dGEsVGlyaABVZ2FyaXRpYyxVZ2FyAFZhaSxWYWlpAFdhbmNobyxXY2hvAFdhcmFuZ19DaXRpLFdhcmEAWWV6aWRpLFllemkAWWksWWlpaQBaYW5hYmF6YXJfU3F1YXJlLFphbmIAQdC5AguxFMAZmUWFGZlFrhmARY4ZgEWEGZZFgBmeRYAZ4WBFphmERYQZgQ2TGeAPN4MrgBmCKwGDK4AZgCsDgCuAGYArgBmCKwCAKwCT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ayxNb2RpZmllcl9TeW1ib2wAU28sT3RoZXJfU3ltYm9sAFBjLENvbm5lY3Rvcl9QdW5jdHVhdGlvbgBQZCxEYXNoX1B1bmN0dWF0aW9uAFBzLE9wZW5fUHVuY3R1YXRpb24AUGUsQ2xvc2VfUHVuY3R1YXRpb24AUGksSW5pdGlhbF9QdW5jdHVhdGlvbgBQZixGaW5hbF9QdW5jdHVhdGlvbgBQbyxPdGhlcl9QdW5jdHVhdGlvbgBacyxTcGFjZV9TZXBhcmF0b3IAWmwsTGluZV9TZXBhcmF0b3IAWnAsUGFyYWdyYXBoX1NlcGFyYXRvcgBDYyxDb250cm9sLGNudHJsAENmLEZvcm1hdABDcyxTdXJyb2dhdGUAQ28sUHJpdmF0ZV9Vc2UATEMsQ2FzZWRfTGV0dGVyAEwsTGV0dGVyAE0sTWFyayxDb21iaW5pbmdfTWFyawBOLE51bWJlcgBTLFN5bWJvbABQLFB1bmN0dWF0aW9uLHB1bmN0AFosU2VwYXJhdG9yAEMsT3RoZXIAQdDZAguwCA4AAAA+AAAAwAEAAAAOAAAA8AAAAAB/AAAAgAMBAAA8QVNDSUlfSGV4X0RpZ2l0LEFIZXgAQmlkaV9Db250cm9sLEJpZGlfQwBEYXNoAERlcHJlY2F0ZWQsRGVwAERpYWNyaXRpYyxEaWEARXh0ZW5kZXIsRXh0AEhleF9EaWdpdCxIZXgASURTX0JpbmFyeV9PcGVyYXRvcixJRFNCAElEU19UcmluYXJ5X09wZXJhdG9yLElEU1QASWRlb2dyYXBoaWMsSWRlbwBKb2luX0NvbnRyb2wsSm9pbl9DAExvZ2ljYWxfT3JkZXJfRXhjZXB0aW9uLExPRQBOb25jaGFyYWN0ZXJfQ29kZV9Qb2ludCxOQ2hhcgBQYXR0ZXJuX1N5bnRheCxQYXRfU3luAFBhdHRlcm5fV2hpdGVfU3BhY2UsUGF0X1dTAFF1b3RhdGlvbl9NYXJrLFFNYXJrAFJhZGljYWwAUmVnaW9uYWxfSW5kaWNhdG9yLFJJAFNlbnRlbmNlX1Rlcm1pbmFsLFNUZXJtAFNvZnRfRG90dGVkLFNEAFRlcm1pbmFsX1B1bmN0dWF0aW9uLFRlcm0AVW5pZmllZF9JZGVvZ3JhcGgsVUlkZW8AVmFyaWF0aW9uX1NlbGVjdG9yLFZTAFdoaXRlX1NwYWNlLHNwYWNlAEJpZGlfTWlycm9yZWQsQmlkaV9NAEVtb2ppAEVtb2ppX0NvbXBvbmVudCxFQ29tcABFbW9qaV9Nb2RpZmllcixFTW9kAEVtb2ppX01vZGlmaWVyX0Jhc2UsRUJhc2UARW1vamlfUHJlc2VudGF0aW9uLEVQcmVzAEV4dGVuZGVkX1BpY3RvZ3JhcGhpYyxFeHRQaWN0AERlZmF1bHRfSWdub3JhYmxlX0NvZGVfUG9pbnQsREkASURfU3RhcnQsSURTAENhc2VfSWdub3JhYmxlLENJAEFTQ0lJAEFscGhhYmV0aWMsQWxwaGEAQW55AEFzc2lnbmVkAENhc2VkAENoYW5nZXNfV2hlbl9DYXNlZm9sZGVkLENXQ0YAQ2hhbmdlc19XaGVuX0Nhc2VtYXBwZWQsQ1dDTQBDaGFuZ2VzX1doZW5fTG93ZXJjYXNlZCxDV0wAQ2hhbmdlc19XaGVuX05GS0NfQ2FzZWZvbGRlZCxDV0tDRgBDaGFuZ2VzX1doZW5fVGl0bGVjYXNlZCxDV1QAQ2hhbmdlc19XaGVuX1VwcGVyY2FzZWQsQ1dVAEdyYXBoZW1lX0Jhc2UsR3JfQmFzZQBHcmFwaGVtZV9FeHRlbmQsR3JfRXh0AElEX0NvbnRpbnVlLElEQwBMb3dlcmNhc2UsTG93ZXIATWF0aABVcHBlcmNhc2UsVXBwZXIAWElEX0NvbnRpbnVlLFhJREMAWElEX1N0YXJ0LFhJRFMAQZDiAgu0IIEAKACXACoAgYAqAJfAKwAVgSwAlwAtAIFALQCXAC4AFUEuAJkBLwAWIDAAQghAAEKKRABCBEoAlgBMABeBTABCAk0AQkNOAC/BTwBCw1AAv0BSAEIDUwBCCVUAQghaAJYAXgBCQ14AgcBfAEIBaABCwWsAhQFxABfDcQBESHMARIN3AEKDeQC+AnsAl0F8AEIBfQBEBH4AQg6AAEKBhwBEh4kAgwSsABcDtgCDArgAFALQAJYA0QCAAN0Al4DeAICA3wCXAOEAPkHhAIDA4QC+BOIAroPqAK6C8gCtAfQALsH0AANB9QADA/wAgUD+AD4CAAG+wAEBvgEDAb5ABgG+QA4BPgIUAb7AFQG+ARcBRIEdAURBMAFEAjQBRIE1AUSDNgFEgzgBRIY6AUQBPgGFwGEB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SHpUSHq8AxMhbQATIWQAEyFrABMhZgBtbgBtvANtbQBtYwBtawBtYwAKCk8ACk9tALIAYwAICk8KClAAClBtALMAawBtALMAbQAVInMAbQAVInMAsgBQYWtQYU1QYUdQYXJhZHJhZNFzcgBhAGQAFSJzALIAcABzbgBzvANzbQBzcABWbgBWvANWbQBWawBWTQBWcABXbgBXvANXbQBXawBXTQBXawCpA00AqQNhLm0uQnFjY2NkQ9FrZ0NvLmRCR3loYUhQaW5LS0tNa3RsbWxubG9nbHhtYm1pbG1vbFBIcC5tLlBQTVBSc3JTdldiVtFtQdFtMQDlZTEAMADlZTIAMADlZTMAMADlZWdhbEoETAQmAVMBJ6c3q2sCUqtIjPRmyo7IjNFuMk7lU5yfnJ9RWdGRh1VIWfZhaXaFfz+Guof4iI+QAmobbdlw3nM9hGqR8ZmCTnVTBGsbci2GHp5QXetvzYVkicli2IEfiMpeF2dqbfxyzpCGT7dR3lLEZNNqEHLndgGABoZchu+NMpdvm/qdjHh/eaB9yYMEk3+e1orfWARfYHx+gGJyynjCjPeW2FhiXBNq2m0Pby99N35LltJSi4DcUcxRHHq+ffGDdZaAi89iAmr+ijlO51sSYIdzcHUXU/t4v0+pXw1OzGx4ZSJ9w1NeWAF3SYSqirprsI+IbP5i5YKgY2V1rk5pUclRgWjnfG+C0orPkfVSQlRzWexexWX+byp5rZVqmpeezp6bUsZmd2tij3RekGEAYppkI29JcYl0ynn0fW+AJo/uhCOQSpMXUqNSvVTIcMKIqorJXvVfe2Ouaz58dXPkTvlW51u6XRxgsnNpdJp/RoA0kvaWSJcYmItPrnm0kbiW4WCGTtpQ7ls/XJllAmrOcUJ2/IR8kI2fiGYulolSe2fzZ0FtnG4JdFl1a3gQfV6YbVEuYniWK1AZXeptKo+LX0RhF2iHc4aWKVIPVGVcE2ZOZ6ho5WwGdOJ1eX/PiOGIzJHilj9Tum4dVNBxmHT6haOWV5yfnpdny23ogct6IHuSfMBymXBYi8BONoM6UgdSpl7TYtZ8hVsebbRmO49MiE2Wi4nTXkBRwFUAAAAAWlgAAHRmAAAAAN5RKnPKdjx5XnlleY95Vpe+fL1/AAAShgAA+IoAAAAAOJD9kO+Y/JgombSd3pC3lq5P51BNUclS5FJR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",!z.startsWith(T)){var Y=z;z=e.locateFile?e.locateFile(Y,r):r+Y}function QA(G){try{if(G==z&&f)return new Uint8Array(f);var K=Ke(G);if(K)return K;if(i)return i(G);throw"both async and sync fetching of the wasm failed"}catch(v){DA(v)}}function hA(G){if(!f&&(u||c)){if(typeof fetch=="function"&&!G.startsWith("file://"))return fetch(G,{credentials:"same-origin"}).then(function(K){if(!K.ok)throw"failed to load wasm binary file at '"+G+"'";return K.arrayBuffer()}).catch(function(){return QA(G)});if(s)return new Promise(function(K,v){s(G,function(V){K(new Uint8Array(V))},v)})}return Promise.resolve().then(function(){return QA(G)})}function uA(G,K,v){return hA(G).then(function(V){return WebAssembly.instantiate(V,K)}).then(function(V){return V}).then(v,function(V){D("failed to asynchronously prepare wasm: "+V),DA(V)})}function aA(G,K){var v=z;return f||typeof WebAssembly.instantiateStreaming!="function"||v.startsWith(T)||v.startsWith("file://")||h||typeof fetch!="function"?uA(v,G,K):fetch(v,{credentials:"same-origin"}).then(function(V){return WebAssembly.instantiateStreaming(V,G).then(K,function(IA){return D("wasm streaming compile failed: "+IA),D("falling back to ArrayBuffer instantiation"),uA(v,G,K)})})}function lA(G){for(;0=V);)++v;if(16IA?V+=String.fromCharCode(IA):(IA-=65536,V+=String.fromCharCode(55296|IA>>10,56320|IA&1023))}}else V+=String.fromCharCode(IA)}return V}function xA(G,K){return G?te(J,G,K):""}var ie=[0,31,60,91,121,152,182,213,244,274,305,335],VA=[0,31,59,90,120,151,181,212,243,273,304,334];function je(G){for(var K=0,v=0;v=V?K++:2047>=V?K+=2:55296<=V&&57343>=V?(K+=4,++v):K+=3}return K}function MA(G,K,v){var V=J;if(!(0=yA){var GA=G.charCodeAt(++EA);yA=65536+((yA&1023)<<10)|GA&1023}if(127>=yA){if(K>=v)break;V[K++]=yA}else{if(2047>=yA){if(K+1>=v)break;V[K++]=192|yA>>6}else{if(65535>=yA){if(K+2>=v)break;V[K++]=224|yA>>12}else{if(K+3>=v)break;V[K++]=240|yA>>18,V[K++]=128|yA>>12&63}V[K++]=128|yA>>6&63}V[K++]=128|yA&63}}return V[K]=0,K-IA}function ze(G){var K=je(G)+1,v=dg(K);return v&&MA(G,v,K),v}var Re={};function Jg(){if(!Eg){var G={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:Q||"./this.program"},K;for(K in Re)Re[K]===void 0?delete G[K]:G[K]=Re[K];var v=[];for(K in G)v.push(K+"="+G[K]);Eg=v}return Eg}var Eg,AI=[null,[],[]];function eI(G,K,v,V){var IA={string:kA=>{var vA=0;if(kA!=null&&kA!==0){vA=je(kA)+1;var L=nA(vA);MA(kA,L,vA),vA=L}return vA},array:kA=>{var vA=nA(kA.length);return N.set(kA,vA),vA}};G=e["_"+G];var EA=[],yA=0;if(V)for(var GA=0;GA>4,IA=(IA&15)<<4|EA>>2;var GA=(EA&3)<<6|yA;K+=String.fromCharCode(V),EA!==64&&(K+=String.fromCharCode(IA)),yA!==64&&(K+=String.fromCharCode(GA))}while(v>2]+4294967296*O[G+4>>2])),O[K>>2]=G.getSeconds(),O[K+4>>2]=G.getMinutes(),O[K+8>>2]=G.getHours(),O[K+12>>2]=G.getDate(),O[K+16>>2]=G.getMonth(),O[K+20>>2]=G.getFullYear()-1900,O[K+24>>2]=G.getDay();var v=G.getFullYear();O[K+28>>2]=(v%4!==0||v%100===0&&v%400!==0?VA:ie)[G.getMonth()]+G.getDate()-1|0,O[K+36>>2]=-(60*G.getTimezoneOffset()),v=new Date(G.getFullYear(),6,1).getTimezoneOffset();var V=new Date(G.getFullYear(),0,1).getTimezoneOffset();O[K+32>>2]=(v!=V&&G.getTimezoneOffset()==Math.min(V,v))|0},k:function(G,K,v){function V(RA){return(RA=RA.toTimeString().match(/\(([A-Za-z ]+)\)$/))?RA[1]:"GMT"}var IA=new Date().getFullYear(),EA=new Date(IA,0,1),yA=new Date(IA,6,1);IA=EA.getTimezoneOffset();var GA=yA.getTimezoneOffset();b[G>>2]=60*Math.max(IA,GA),O[K>>2]=+(IA!=GA),G=V(EA),K=V(yA),G=ze(G),K=ze(K),GA>2]=G,b[v+4>>2]=K):(b[v>>2]=K,b[v+4>>2]=G)},b:function(){DA("")},m:function(){return Date.now()},j:function(G){var K=J.length;if(G>>>=0,2147483648=v;v*=2){var V=K*(1+.2/v);V=Math.min(V,G+100663296);var IA=Math,EA=IA.min;V=Math.max(G,V),V+=(65536-V%65536)%65536;A:{var yA=k.buffer;try{k.grow(EA.call(IA,2147483648,V)-yA.byteLength+65535>>>16),AA();var GA=1;break A}catch{}GA=void 0}if(GA)return!0}return!1},e:function(G,K){var v=0;return Jg().forEach(function(V,IA){var EA=K+v;for(IA=b[G+4*IA>>2]=EA,EA=0;EA>0]=V.charCodeAt(EA);N[IA>>0]=0,v+=V.length+1}),0},f:function(G,K){var v=Jg();b[G>>2]=v.length;var V=0;return v.forEach(function(IA){V+=IA.length+1}),b[K>>2]=V,0},d:function(){return 52},i:function(){return 70},c:function(G,K,v,V){for(var IA=0,EA=0;EA>2],GA=b[K+4>>2];K+=8;for(var RA=0;RA>2]=IA,0},o:function(G,K,v,V,IA){return e.callbacks.callFunction(void 0,G,K,v,V,IA)},n:function(G){return e.callbacks.shouldInterrupt(void 0,G)},h:function(G,K,v){return v=xA(v),e.callbacks.loadModuleSource(void 0,G,K,v)},g:function(G,K,v,V){return v=xA(v),V=xA(V),e.callbacks.normalizeModule(void 0,G,K,v,V)}};(function(){function G(v){if(v=v.exports,e.asm=v,k=e.asm.p,AA(),j.unshift(e.asm.q),rA--,e.monitorRunDependencies&&e.monitorRunDependencies(rA),rA==0&&(sA!==null&&(clearInterval(sA),sA=null),eA)){var V=eA;eA=null,V()}return v}var K={a:II};if(rA++,e.monitorRunDependencies&&e.monitorRunDependencies(rA),e.instantiateWasm)try{return e.instantiateWasm(K,G)}catch(v){D("Module.instantiateWasm callback failed with error: "+v),C(v)}return aA(K,function(v){G(v.instance)}).catch(C),{}})();var dg=e._malloc=function(){return(dg=e._malloc=e.asm.r).apply(null,arguments)};e._QTS_Throw=function(){return(e._QTS_Throw=e.asm.s).apply(null,arguments)},e._QTS_NewError=function(){return(e._QTS_NewError=e.asm.t).apply(null,arguments)},e._QTS_RuntimeSetMemoryLimit=function(){return(e._QTS_RuntimeSetMemoryLimit=e.asm.u).apply(null,arguments)},e._QTS_RuntimeComputeMemoryUsage=function(){return(e._QTS_RuntimeComputeMemoryUsage=e.asm.v).apply(null,arguments)},e._QTS_RuntimeDumpMemoryUsage=function(){return(e._QTS_RuntimeDumpMemoryUsage=e.asm.w).apply(null,arguments)},e._QTS_RecoverableLeakCheck=function(){return(e._QTS_RecoverableLeakCheck=e.asm.x).apply(null,arguments)},e._QTS_BuildIsSanitizeLeak=function(){return(e._QTS_BuildIsSanitizeLeak=e.asm.y).apply(null,arguments)},e._QTS_RuntimeSetMaxStackSize=function(){return(e._QTS_RuntimeSetMaxStackSize=e.asm.z).apply(null,arguments)},e._QTS_GetUndefined=function(){return(e._QTS_GetUndefined=e.asm.A).apply(null,arguments)},e._QTS_GetNull=function(){return(e._QTS_GetNull=e.asm.B).apply(null,arguments)},e._QTS_GetFalse=function(){return(e._QTS_GetFalse=e.asm.C).apply(null,arguments)},e._QTS_GetTrue=function(){return(e._QTS_GetTrue=e.asm.D).apply(null,arguments)},e._QTS_NewRuntime=function(){return(e._QTS_NewRuntime=e.asm.E).apply(null,arguments)},e._QTS_FreeRuntime=function(){return(e._QTS_FreeRuntime=e.asm.F).apply(null,arguments)},e._QTS_NewContext=function(){return(e._QTS_NewContext=e.asm.G).apply(null,arguments)},e._QTS_FreeContext=function(){return(e._QTS_FreeContext=e.asm.H).apply(null,arguments)},e._QTS_FreeValuePointer=function(){return(e._QTS_FreeValuePointer=e.asm.I).apply(null,arguments)},e._free=function(){return(e._free=e.asm.J).apply(null,arguments)},e._QTS_FreeValuePointerRuntime=function(){return(e._QTS_FreeValuePointerRuntime=e.asm.K).apply(null,arguments)},e._QTS_FreeVoidPointer=function(){return(e._QTS_FreeVoidPointer=e.asm.L).apply(null,arguments)},e._QTS_FreeCString=function(){return(e._QTS_FreeCString=e.asm.M).apply(null,arguments)},e._QTS_DupValuePointer=function(){return(e._QTS_DupValuePointer=e.asm.N).apply(null,arguments)},e._QTS_NewObject=function(){return(e._QTS_NewObject=e.asm.O).apply(null,arguments)},e._QTS_NewObjectProto=function(){return(e._QTS_NewObjectProto=e.asm.P).apply(null,arguments)},e._QTS_NewArray=function(){return(e._QTS_NewArray=e.asm.Q).apply(null,arguments)},e._QTS_NewFloat64=function(){return(e._QTS_NewFloat64=e.asm.R).apply(null,arguments)},e._QTS_GetFloat64=function(){return(e._QTS_GetFloat64=e.asm.S).apply(null,arguments)},e._QTS_NewString=function(){return(e._QTS_NewString=e.asm.T).apply(null,arguments)},e._QTS_GetString=function(){return(e._QTS_GetString=e.asm.U).apply(null,arguments)},e._QTS_NewSymbol=function(){return(e._QTS_NewSymbol=e.asm.V).apply(null,arguments)},e._QTS_GetSymbolDescriptionOrKey=function(){return(e._QTS_GetSymbolDescriptionOrKey=e.asm.W).apply(null,arguments)},e._QTS_IsGlobalSymbol=function(){return(e._QTS_IsGlobalSymbol=e.asm.X).apply(null,arguments)},e._QTS_IsJobPending=function(){return(e._QTS_IsJobPending=e.asm.Y).apply(null,arguments)},e._QTS_ExecutePendingJob=function(){return(e._QTS_ExecutePendingJob=e.asm.Z).apply(null,arguments)},e._QTS_GetProp=function(){return(e._QTS_GetProp=e.asm._).apply(null,arguments)},e._QTS_SetProp=function(){return(e._QTS_SetProp=e.asm.$).apply(null,arguments)},e._QTS_DefineProp=function(){return(e._QTS_DefineProp=e.asm.aa).apply(null,arguments)},e._QTS_Call=function(){return(e._QTS_Call=e.asm.ba).apply(null,arguments)},e._QTS_ResolveException=function(){return(e._QTS_ResolveException=e.asm.ca).apply(null,arguments)},e._QTS_Dump=function(){return(e._QTS_Dump=e.asm.da).apply(null,arguments)},e._QTS_Eval=function(){return(e._QTS_Eval=e.asm.ea).apply(null,arguments)},e._QTS_Typeof=function(){return(e._QTS_Typeof=e.asm.fa).apply(null,arguments)},e._QTS_GetGlobalObject=function(){return(e._QTS_GetGlobalObject=e.asm.ga).apply(null,arguments)},e._QTS_NewPromiseCapability=function(){return(e._QTS_NewPromiseCapability=e.asm.ha).apply(null,arguments)},e._QTS_TestStringArg=function(){return(e._QTS_TestStringArg=e.asm.ia).apply(null,arguments)},e._QTS_BuildIsDebug=function(){return(e._QTS_BuildIsDebug=e.asm.ja).apply(null,arguments)},e._QTS_BuildIsAsyncify=function(){return(e._QTS_BuildIsAsyncify=e.asm.ka).apply(null,arguments)},e._QTS_NewFunction=function(){return(e._QTS_NewFunction=e.asm.la).apply(null,arguments)},e._QTS_ArgvGetJSValueConstPointer=function(){return(e._QTS_ArgvGetJSValueConstPointer=e.asm.ma).apply(null,arguments)},e._QTS_RuntimeEnableInterruptHandler=function(){return(e._QTS_RuntimeEnableInterruptHandler=e.asm.na).apply(null,arguments)},e._QTS_RuntimeDisableInterruptHandler=function(){return(e._QTS_RuntimeDisableInterruptHandler=e.asm.oa).apply(null,arguments)},e._QTS_RuntimeEnableModuleLoader=function(){return(e._QTS_RuntimeEnableModuleLoader=e.asm.pa).apply(null,arguments)},e._QTS_RuntimeDisableModuleLoader=function(){return(e._QTS_RuntimeDisableModuleLoader=e.asm.qa).apply(null,arguments)};function pA(){return(pA=e.asm.sa).apply(null,arguments)}function HA(){return(HA=e.asm.ta).apply(null,arguments)}function nA(){return(nA=e.asm.ua).apply(null,arguments)}e.___start_em_js=74916,e.___stop_em_js=75818,e.cwrap=function(G,K,v,V){var IA=!v||v.every(EA=>EA==="number"||EA==="boolean");return K!=="string"&&IA&&!V?e["_"+G]:function(){return eI(G,K,v,arguments)}},e.UTF8ToString=xA,e.stringToUTF8=function(G,K,v){return MA(G,K,v)},e.lengthBytesUTF8=je;var LA;eA=function G(){LA||mA(),LA||(eA=G)};function mA(){function G(){if(!LA&&(LA=!0,e.calledRun=!0,!M)){if(lA(j),g(e),e.onRuntimeInitialized&&e.onRuntimeInitialized(),e.postRun)for(typeof e.postRun=="function"&&(e.postRun=[e.postRun]);e.postRun.length;){var K=e.postRun.shift();iA.unshift(K)}lA(iA)}}if(!(0{"use strict";var LS=bA&&bA.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),JS=bA&&bA.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),bi=bA&&bA.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&LS(A,I,e);return JS(A,I),A};Object.defineProperty(bA,"__esModule",{value:!0});bA.RELEASE_ASYNC=bA.DEBUG_ASYNC=bA.RELEASE_SYNC=bA.DEBUG_SYNC=bA.memoizePromiseFactory=bA.newQuickJSAsyncWASMModule=bA.newQuickJSWASMModule=void 0;var Yi=uc();async function KS(I=bA.RELEASE_SYNC){let[A,e,{QuickJSWASMModule:g}]=await Promise.all([I.importModuleLoader(),I.importFFI(),Promise.resolve().then(()=>bi(KE())).then(Yi.unwrapTypescript)]),C=await A();C.type="sync";let t=new e(C);return new g(C,t)}bA.newQuickJSWASMModule=KS;async function HS(I=bA.RELEASE_ASYNC){let[A,e,{QuickJSAsyncWASMModule:g}]=await Promise.all([I.importModuleLoader(),I.importFFI(),Promise.resolve().then(()=>bi(Mc())).then(Yi.unwrapTypescript)]),C=await A();C.type="async";let t=new e(C);return new g(C,t)}bA.newQuickJSAsyncWASMModule=HS;function bS(I){let A;return()=>A??(A=I())}bA.memoizePromiseFactory=bS;bA.DEBUG_SYNC={type:"sync",async importFFI(){throw new Error("not implemented")},async importModuleLoader(){throw new Error("not implemented")}};bA.RELEASE_SYNC={type:"sync",async importFFI(){let I=await Promise.resolve().then(()=>bi(Gc()));return(0,Yi.unwrapTypescript)(I).QuickJSFFI},async importModuleLoader(){let I=await Promise.resolve().then(()=>bi(mc()));return(0,Yi.unwrapJavascript)(I)}};bA.DEBUG_ASYNC={type:"async",async importFFI(){throw new Error("not implemented")},async importModuleLoader(){throw new Error("not implemented")}};bA.RELEASE_ASYNC={type:"async",async importFFI(){throw new Error("not implemented")},async importModuleLoader(){throw new Error("not implemented")}}});var Uc=U(sC=>{"use strict";Object.defineProperty(sC,"__esModule",{value:!0});sC.isFail=sC.isSuccess=void 0;function YS(I){return!("error"in I)}sC.isSuccess=YS;function xS(I){return"error"in I}sC.isFail=xS});var Jc=U(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.TestQuickJSWASMModule=void 0;var OE=_g(),Lc=zg(),VE=class{constructor(A){this.parent=A,this.contexts=new Set,this.runtimes=new Set}newRuntime(A){let e=this.parent.newRuntime({...A,ownedLifetimes:[new Lc.Lifetime(void 0,void 0,()=>this.runtimes.delete(e)),...A?.ownedLifetimes??[]]});return this.runtimes.add(e),e}newContext(A){let e=this.parent.newContext({...A,ownedLifetimes:[new Lc.Lifetime(void 0,void 0,()=>this.contexts.delete(e)),...A?.ownedLifetimes??[]]});return this.contexts.add(e),e}evalCode(A,e){return this.parent.evalCode(A,e)}disposeAll(){let A=[...this.contexts,...this.runtimes];this.runtimes.clear(),this.contexts.clear(),A.forEach(e=>{e.alive&&e.dispose()})}assertNoMemoryAllocated(){if(this.getFFI().QTS_RecoverableLeakCheck())throw new OE.QuickJSMemoryLeakDetected("Leak sanitizer detected un-freed memory");if(this.contexts.size>0)throw new OE.QuickJSMemoryLeakDetected(`${this.contexts.size} contexts leaked`);if(this.runtimes.size>0)throw new OE.QuickJSMemoryLeakDetected(`${this.runtimes.size} runtimes leaked`)}getFFI(){return this.parent.getFFI()}};xi.TestQuickJSWASMModule=VE});var YE=U(FA=>{"use strict";var Kc=FA&&FA.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),vS=FA&&FA.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),vi=FA&&FA.__exportStar||function(I,A){for(var e in I)e!=="default"&&!Object.prototype.hasOwnProperty.call(A,e)&&Kc(A,I,e)},TS=FA&&FA.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&Kc(A,I,e);return vS(A,I),A};Object.defineProperty(FA,"__esModule",{value:!0});FA.shouldInterruptAfterDeadline=FA.newAsyncContext=FA.newAsyncRuntime=FA.getQuickJSSync=FA.getQuickJS=FA.errors=FA.RELEASE_SYNC=FA.RELEASE_ASYNC=FA.DEBUG_SYNC=FA.DEBUG_ASYNC=FA.newQuickJSAsyncWASMModule=FA.newQuickJSWASMModule=void 0;var Ug=Nc();Object.defineProperty(FA,"newQuickJSWASMModule",{enumerable:!0,get:function(){return Ug.newQuickJSWASMModule}});Object.defineProperty(FA,"newQuickJSAsyncWASMModule",{enumerable:!0,get:function(){return Ug.newQuickJSAsyncWASMModule}});Object.defineProperty(FA,"DEBUG_ASYNC",{enumerable:!0,get:function(){return Ug.DEBUG_ASYNC}});Object.defineProperty(FA,"DEBUG_SYNC",{enumerable:!0,get:function(){return Ug.DEBUG_SYNC}});Object.defineProperty(FA,"RELEASE_ASYNC",{enumerable:!0,get:function(){return Ug.RELEASE_ASYNC}});Object.defineProperty(FA,"RELEASE_SYNC",{enumerable:!0,get:function(){return Ug.RELEASE_SYNC}});vi(Uc(),FA);vi(zg(),FA);FA.errors=TS(_g());vi(pE(),FA);vi(Jc(),FA);var ZE,WE;async function PS(){return WE??(WE=(0,Ug.newQuickJSWASMModule)().then(I=>(ZE=I,I))),await WE}FA.getQuickJS=PS;function qS(){if(!ZE)throw new Error("QuickJS not initialized. Await getQuickJS() at least once.");return ZE}FA.getQuickJSSync=qS;async function OS(I){return(await(0,Ug.newQuickJSAsyncWASMModule)()).newRuntime(I)}FA.newAsyncRuntime=OS;async function VS(I){return(await(0,Ug.newQuickJSAsyncWASMModule)()).newContext(I)}FA.newAsyncContext=VS;function WS(I){let A=typeof I=="number"?I:I.getTime();return function(){return Date.now()>A}}FA.shouldInterruptAfterDeadline=WS});var xc=U(_e=>{"use strict";var ZS=_e&&_e.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),XS=_e&&_e.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),_E=_e&&_e.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&ZS(A,I,e);return XS(A,I),A},_S=_e&&_e.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(_e,"__esModule",{value:!0});_e.PacProxyAgent=void 0;var XE=_E(require("net")),jS=_E(require("tls")),zS=_E(require("crypto")),$S=require("events"),AR=_S(xe()),Hc=require("url"),bc=wI(),eR=tB(),gR=iB(),Yc=GB(),IR=$o(),CR=ac(),tR=YE(),yg=(0,AR.default)("pac-proxy-agent"),Ti=class extends bc.Agent{constructor(A,e){super(e),this.clearResolverPromise=()=>{this.resolverPromise=void 0};let g=typeof A=="string"?A:A.href;this.uri=new Hc.URL(g.replace(/^pac\+/i,"")),yg("Creating PacProxyAgent with URI %o",this.uri.href),this.opts={...e},this.cache=void 0,this.resolver=void 0,this.resolverHash="",this.resolverPromise=void 0,this.opts.filename||(this.opts.filename=this.uri.href)}getResolver(){return this.resolverPromise||(this.resolverPromise=this.loadResolver(),this.resolverPromise.then(this.clearResolverPromise,this.clearResolverPromise)),this.resolverPromise}async loadResolver(){try{let[A,e]=await Promise.all([(0,tR.getQuickJS)(),this.loadPacFile()]),g=zS.createHash("sha1").update(e).digest("hex");return this.resolver&&this.resolverHash===g?(yg("Same sha1 hash for code - contents have not changed, reusing previous proxy resolver"),this.resolver):(yg("Creating new proxy resolver instance"),this.resolver=(0,CR.createPacResolver)(A,e,this.opts),this.resolverHash=g,this.resolver)}catch(A){if(this.resolver&&A.code==="ENOTMODIFIED")return yg("Got ENOTMODIFIED response, reusing previous proxy resolver"),this.resolver;throw A}}async loadPacFile(){yg("Loading PAC file: %o",this.uri);let A=await(0,IR.getUri)(this.uri,{...this.opts,cache:this.cache});yg("Got `Readable` instance for URI"),this.cache=A;let e=await(0,bc.toBuffer)(A);return yg("Read %o byte PAC file from URI",e.length),e.toString("utf8")}async connect(A,e){let{secureEndpoint:g}=e,C=await this.getResolver(),t=g?443:80,Q=A.path,u=null,c=Q.indexOf("?");c!==-1&&(u=Q.substring(c),Q=Q.substring(0,c));let h={...e,protocol:g?"https:":"http:",pathname:Q,search:u,hostname:e.host,host:null,href:null,port:t===e.port?null:e.port},r=(0,Hc.format)(h);yg("url: %o",r);let a=await C(r);a||(a="DIRECT");let s=String(a).trim().split(/\s*;\s*/g).filter(Boolean);this.opts.fallbackToDirect&&!s.includes("DIRECT")&&s.push("DIRECT");for(let i of s){let B=null,E=null,[n,D]=i.split(/\s+/);if(yg("Attempting to use proxy: %o",i),n==="DIRECT")if(g){let f=e.servername||e.host;E=jS.connect({...e,servername:!f||XE.isIP(f)?void 0:f})}else E=XE.connect(e);else if(n==="SOCKS"||n==="SOCKS5")B=new Yc.SocksProxyAgent(`socks://${D}`,this.opts);else if(n==="SOCKS4")B=new Yc.SocksProxyAgent(`socks4a://${D}`,this.opts);else if(n==="PROXY"||n==="HTTP"||n==="HTTPS"){let f=`${n==="HTTPS"?"https":"http"}://${D}`;g?B=new gR.HttpsProxyAgent(f,this.opts):B=new eR.HttpProxyAgent(f,this.opts)}try{if(E)return await(0,$S.once)(E,"connect"),A.emit("proxy",{proxy:i,socket:E}),E;if(B){let f=await B.connect(A,e);if(!(f instanceof XE.Socket))throw new Error("Expected a `net.Socket` to be returned from agent");return A.emit("proxy",{proxy:i,socket:f}),f}throw new Error(`Could not determine proxy type for: ${i}`)}catch(f){yg("Got error for proxy %o: %o",i,f),A.emit("proxy",{proxy:i,error:f})}}throw new Error(`Failed to establish a socket connection to proxies: ${JSON.stringify(s)}`)}};Ti.protocols=["pac+data","pac+file","pac+ftp","pac+http","pac+https"];_e.PacProxyAgent=Ti});var Oc=U(Se=>{"use strict";var iR=Se&&Se.__createBinding||(Object.create?function(I,A,e,g){g===void 0&&(g=e);var C=Object.getOwnPropertyDescriptor(A,e);(!C||("get"in C?!A.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return A[e]}}),Object.defineProperty(I,g,C)}:function(I,A,e,g){g===void 0&&(g=e),I[g]=A[e]}),BR=Se&&Se.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),Pc=Se&&Se.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var e in I)e!=="default"&&Object.prototype.hasOwnProperty.call(I,e)&&iR(A,I,e);return BR(A,I),A},qc=Se&&Se.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(Se,"__esModule",{value:!0});Se.ProxyAgent=Se.proxies=void 0;var QR=Pc(require("http")),ER=Pc(require("https")),vc=require("url"),rR=qc(rr()),sR=wI(),nR=qc(xe()),oR=Mr(),Bg=xc(),jE=tB(),Tc=iB(),Qg=GB(),OC=(0,nR.default)("proxy-agent"),aR=[...jE.HttpProxyAgent.protocols,...Qg.SocksProxyAgent.protocols,...Bg.PacProxyAgent.protocols];Se.proxies={http:[jE.HttpProxyAgent,Tc.HttpsProxyAgent],https:[jE.HttpProxyAgent,Tc.HttpsProxyAgent],socks:[Qg.SocksProxyAgent,Qg.SocksProxyAgent],socks4:[Qg.SocksProxyAgent,Qg.SocksProxyAgent],socks4a:[Qg.SocksProxyAgent,Qg.SocksProxyAgent],socks5:[Qg.SocksProxyAgent,Qg.SocksProxyAgent],socks5h:[Qg.SocksProxyAgent,Qg.SocksProxyAgent],"pac+data":[Bg.PacProxyAgent,Bg.PacProxyAgent],"pac+file":[Bg.PacProxyAgent,Bg.PacProxyAgent],"pac+ftp":[Bg.PacProxyAgent,Bg.PacProxyAgent],"pac+http":[Bg.PacProxyAgent,Bg.PacProxyAgent],"pac+https":[Bg.PacProxyAgent,Bg.PacProxyAgent]};function uR(I){return aR.includes(I)}var zE=class extends sR.Agent{constructor(A){super(A),this.cache=new rR.default({max:20}),OC("Creating new ProxyAgent instance: %o",A),this.connectOpts=A,this.httpAgent=A?.httpAgent||new QR.Agent(A),this.httpsAgent=A?.httpsAgent||new ER.Agent(A),this.getProxyForUrl=A?.getProxyForUrl||oR.getProxyForUrl}async connect(A,e){let{secureEndpoint:g}=e,C=A.getHeader("upgrade")==="websocket",t=g?C?"wss:":"https:":C?"ws:":"http:",Q=A.getHeader("host"),u=new vc.URL(A.path,`${t}//${Q}`).href,c=await this.getProxyForUrl(u);if(!c)return OC("Proxy not enabled for URL: %o",u),g?this.httpsAgent:this.httpAgent;OC("Request URL: %o",u),OC("Proxy URL: %o",c);let h=`${t}+${c}`,r=this.cache.get(h);if(r)OC("Cache hit for proxy URL: %o",c);else{let s=new vc.URL(c).protocol.replace(":","");if(!uR(s))throw new Error(`Unsupported protocol for proxy URL: ${c}`);let i=Se.proxies[s][g||C?1:0];r=new i(c,this.connectOpts),this.cache.set(h,r)}return r}destroy(){for(let A of this.cache.values())A.destroy();super.destroy()}};Se.ProxyAgent=zE});var FR={};Cr(FR,{isComplete:()=>dR,onEvent:()=>yR});module.exports=TA(FR);var zc=require("@aws-sdk/client-eks"),$c=require("@aws-sdk/credential-providers"),AD=require("@aws-sdk/node-http-handler"),eD=ND(Oc());var nC=class{constructor(A,e){this.eks=A;this.requestType=e.RequestType,this.requestId=e.RequestId,this.logicalResourceId=e.LogicalResourceId,this.physicalResourceId=e.PhysicalResourceId,this.event=e;let g=e.ResourceProperties.AssumeRoleArn;if(!g)throw new Error("AssumeRoleArn must be provided");A.configureAssumeRole({RoleArn:g,RoleSessionName:`AWSCDK.EKSCluster.${this.requestType}.${this.requestId}`})}onEvent(){switch(this.requestType){case"Create":return this.onCreate();case"Update":return this.onUpdate();case"Delete":return this.onDelete()}throw new Error(`Invalid request type ${this.requestType}`)}isComplete(){switch(this.requestType){case"Create":return this.isCreateComplete();case"Update":return this.isUpdateComplete();case"Delete":return this.isDeleteComplete()}throw new Error(`Invalid request type ${this.requestType}`)}log(A){console.log(JSON.stringify(A,void 0,2))}};function Vc(I,A){let e={logging:{}},g=[],C=[];return A.logging?.clusterLogging===void 0&&I.logging?.clusterLogging===void 0?A:(A.logging&&A.logging.clusterLogging&&A.logging.clusterLogging.length>0?(g=A.logging.clusterLogging[0].types,I.logging&&I.logging.clusterLogging&&I.logging.clusterLogging.length>0&&(C=I.logging.clusterLogging[0].types.filter(t=>!A.logging.clusterLogging[0].types.includes(t)))):C=I.logging.clusterLogging[0].types,(g.length>0||C.length>0)&&(e.logging={clusterLogging:[]}),g.length>0&&e.logging.clusterLogging.push({types:g,enabled:!0}),C.length>0&&e.logging.clusterLogging.push({types:C,enabled:!1}),e)}var cR=100,Pi=class extends nC{get clusterName(){if(!this.physicalResourceId)throw new Error("Cannot determine cluster name without physical resource ID");return this.physicalResourceId}constructor(A,e){super(A,e),this.newProps=Wc(this.event.ResourceProperties),this.oldProps=e.RequestType==="Update"?Wc(e.OldResourceProperties):{};let g=Vc(this.oldProps,this.newProps);this.newProps.logging=g.logging}async onCreate(){if(console.log("onCreate: creating cluster with options:",JSON.stringify(this.newProps,void 0,2)),!this.newProps.roleArn)throw new Error('"roleArn" is required');let A=this.newProps.name||this.generateClusterName(),e=await this.eks.createCluster({...this.newProps,name:A});if(!e.cluster)throw new Error(`Error when trying to create cluster ${A}: CreateCluster returned without cluster information`);return{PhysicalResourceId:e.cluster.name}}async isCreateComplete(){return this.isActive()}async onDelete(){console.log(`onDelete: deleting cluster ${this.clusterName}`);try{await this.eks.deleteCluster({name:this.clusterName})}catch(A){if(A.name!=="ResourceNotFoundException")throw A;console.log(`cluster ${this.clusterName} not found, idempotently succeeded`)}return{PhysicalResourceId:this.clusterName}}async isDeleteComplete(){console.log(`isDeleteComplete: waiting for cluster ${this.clusterName} to be deleted`);try{let A=await this.eks.describeCluster({name:this.clusterName});console.log("describeCluster returned:",JSON.stringify(A,void 0,2))}catch(A){if(A.name==="ResourceNotFoundException")return console.log("received ResourceNotFoundException, this means the cluster has been deleted (or never existed)"),{IsComplete:!0};throw console.log("describeCluster error:",A),A}return{IsComplete:!1}}async onUpdate(){let A=DR(this.oldProps,this.newProps);if(console.log("onUpdate:",JSON.stringify({updates:A},void 0,2)),A.updateEncryption)throw new Error("Cannot update cluster encryption configuration");if(A.replaceName||A.replaceRole||A.replaceVpc){if(this.oldProps.name===this.newProps.name&&this.oldProps.name)throw new Error(`Cannot replace cluster "${this.oldProps.name}" since it has an explicit physical name. Either rename the cluster or remove the "name" configuration`);return this.onCreate()}if(A.updateVersion){if(!this.newProps.version)throw new Error(`Cannot remove cluster version configuration. Current version is ${this.oldProps.version}`);return this.updateClusterVersion(this.newProps.version)}if(A.updateLogging&&A.updateAccess)throw new Error("Cannot update logging and access at the same time");if(A.updateLogging||A.updateAccess){let e={name:this.clusterName};return A.updateLogging&&(e.logging=this.newProps.logging),A.updateAccess&&(e.resourcesVpcConfig={endpointPrivateAccess:this.newProps.resourcesVpcConfig?.endpointPrivateAccess,endpointPublicAccess:this.newProps.resourcesVpcConfig?.endpointPublicAccess,publicAccessCidrs:this.newProps.resourcesVpcConfig?.publicAccessCidrs}),{EksUpdateId:(await this.eks.updateClusterConfig(e)).update?.id}}}async isUpdateComplete(){return console.log("isUpdateComplete"),this.event.EksUpdateId&&!await this.isEksUpdateComplete(this.event.EksUpdateId)?{IsComplete:!1}:this.isActive()}async updateClusterVersion(A){console.log(`updating cluster version to ${A}`);let e=(await this.eks.describeCluster({name:this.clusterName})).cluster;if(e?.version===A){console.log(`cluster already at version ${e.version}, skipping version update`);return}return{EksUpdateId:(await this.eks.updateClusterVersion({name:this.clusterName,version:A})).update?.id}}async isActive(){console.log("waiting for cluster to become ACTIVE");let A=await this.eks.describeCluster({name:this.clusterName});console.log("describeCluster result:",JSON.stringify(A,void 0,2));let e=A.cluster;if(e?.status==="FAILED")throw new Error("Cluster is in a FAILED status");return e?.status!=="ACTIVE"?{IsComplete:!1}:{IsComplete:!0,Data:{Name:e.name,Endpoint:e.endpoint,Arn:e.arn,CertificateAuthorityData:e.certificateAuthority?.data??"",ClusterSecurityGroupId:e.resourcesVpcConfig?.clusterSecurityGroupId??"",OpenIdConnectIssuerUrl:e.identity?.oidc?.issuer??"",OpenIdConnectIssuer:e.identity?.oidc?.issuer?.substring(8)??"",EncryptionConfigKeyArn:e.encryptionConfig?.shift()?.provider?.keyArn??""}}}async isEksUpdateComplete(A){this.log({isEksUpdateComplete:A});let e=await this.eks.describeUpdate({name:this.clusterName,updateId:A});if(this.log({describeUpdateResponse:e}),!e.update)throw new Error(`unable to describe update with id "${A}"`);switch(e.update.status){case"InProgress":return!1;case"Successful":return!0;case"Failed":case"Cancelled":throw new Error(`cluster update id "${A}" failed with errors: ${JSON.stringify(e.update.errors)}`);default:throw new Error(`unknown status "${e.update.status}" for update id "${A}"`)}}generateClusterName(){let A=this.requestId.replace(/-/g,""),e=cR-A.length-1;return`${this.logicalResourceId.slice(0,e>0?e:0)}-${A}`}};function Wc(I){let A=I?.Config??{};return typeof A.resourcesVpcConfig?.endpointPrivateAccess=="string"&&(A.resourcesVpcConfig.endpointPrivateAccess=A.resourcesVpcConfig.endpointPrivateAccess==="true"),typeof A.resourcesVpcConfig?.endpointPublicAccess=="string"&&(A.resourcesVpcConfig.endpointPublicAccess=A.resourcesVpcConfig.endpointPublicAccess==="true"),typeof A.logging?.clusterLogging[0].enabled=="string"&&(A.logging.clusterLogging[0].enabled=A.logging.clusterLogging[0].enabled==="true"),A}function DR(I,A){console.log("old props: ",JSON.stringify(I)),console.log("new props: ",JSON.stringify(A));let e=A.resourcesVpcConfig||{},g=I.resourcesVpcConfig||{},C=new Set(g.publicAccessCidrs??[]),t=new Set(e.publicAccessCidrs??[]),Q=A.encryptionConfig||{},u=I.encryptionConfig||{};return{replaceName:A.name!==I.name,replaceVpc:JSON.stringify(e.subnetIds?.sort())!==JSON.stringify(g.subnetIds?.sort())||JSON.stringify(e.securityGroupIds?.sort())!==JSON.stringify(g.securityGroupIds?.sort()),updateAccess:e.endpointPrivateAccess!==g.endpointPrivateAccess||e.endpointPublicAccess!==g.endpointPublicAccess||!hR(t,C),replaceRole:A.roleArn!==I.roleArn,updateVersion:A.version!==I.version,updateEncryption:JSON.stringify(Q)!==JSON.stringify(u),updateLogging:JSON.stringify(A.logging)!==JSON.stringify(I.logging)}}function hR(I,A){return I.size===A.size&&[...I].every(e=>A.has(e))}var Zc="Custom::AWSCDK-EKS-Cluster",Xc="Custom::AWSCDK-EKS-FargateProfile";var wR=63,qi=class extends nC{async onCreate(){let e={fargateProfileName:this.event.ResourceProperties.Config.fargateProfileName??this.generateProfileName(),...this.event.ResourceProperties.Config};this.log({createFargateProfile:e});let g=await this.eks.createFargateProfile(e);if(this.log({createFargateProfileResponse:g}),!g.fargateProfile)throw new Error("invalid CreateFargateProfile response");return{PhysicalResourceId:g.fargateProfile.fargateProfileName,Data:{fargateProfileArn:g.fargateProfile.fargateProfileArn}}}async onDelete(){if(!this.physicalResourceId)throw new Error("Cannot delete a profile without a physical id");let A={clusterName:this.event.ResourceProperties.Config.clusterName,fargateProfileName:this.physicalResourceId};this.log({deleteFargateProfile:A});let e=await this.eks.deleteFargateProfile(A);this.log({deleteFargateProfileResponse:e})}async onUpdate(){return this.onCreate()}async isCreateComplete(){return this.isUpdateComplete()}async isUpdateComplete(){return{IsComplete:await this.queryStatus()==="ACTIVE"}}async isDeleteComplete(){return{IsComplete:await this.queryStatus()==="NOT_FOUND"}}generateProfileName(){let A=this.requestId.replace(/-/g,""),e=wR-A.length-1;return`${this.logicalResourceId.slice(0,e>0?e:0)}-${A}`}async queryStatus(){if(!this.physicalResourceId)throw new Error("Unable to determine status for fargate profile without a resource name");let A={clusterName:this.event.ResourceProperties.Config.clusterName,fargateProfileName:this.physicalResourceId};try{this.log({describeFargateProfile:A});let e=await this.eks.describeFargateProfile(A);this.log({describeFargateProfileResponse:e});let g=e.fargateProfile?.status;if(g==="CREATE_FAILED"||g==="DELETE_FAILED")throw new Error(g);return g}catch(e){if(e.name==="ResourceNotFoundException")return this.log("received ResourceNotFoundException, this means the profile has been deleted (or never existed)"),"NOT_FOUND";throw this.log({describeFargateProfileError:e}),e}}};var _c=new eD.ProxyAgent,fR={logger:console,requestHandler:new AD.NodeHttpHandler({httpAgent:_c,httpsAgent:_c})},$E,jc={createCluster:I=>Lg().createCluster(I),deleteCluster:I=>Lg().deleteCluster(I),describeCluster:I=>Lg().describeCluster(I),describeUpdate:I=>Lg().describeUpdate(I),updateClusterConfig:I=>Lg().updateClusterConfig(I),updateClusterVersion:I=>Lg().updateClusterVersion(I),createFargateProfile:I=>Lg().createFargateProfile(I),deleteFargateProfile:I=>Lg().deleteFargateProfile(I),describeFargateProfile:I=>Lg().describeFargateProfile(I),configureAssumeRole:I=>{$E=new zc.EKS({...fR,credentials:(0,$c.fromTemporaryCredentials)({params:I})})}};function Lg(){if(!$E)throw new Error('EKS client not initialized (call "configureAssumeRole")');return $E}async function yR(I){return gD(I).onEvent()}async function dR(I){return gD(I).isComplete()}function gD(I){switch(I.ResourceType){case Zc:return new Pi(jc,I);case Xc:return new qi(jc,I);default:throw new Error(`Unsupported resource type "${I.ResourceType}`)}}0&&(module.exports={isComplete,onEvent}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip new file mode 100644 index 0000000000000..eb62965dbcb62 Binary files /dev/null and b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip differ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js new file mode 100644 index 0000000000000..02033f55cf612 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/__entrypoint__.js @@ -0,0 +1,155 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.withRetries = exports.handler = exports.external = void 0; +const https = require("https"); +const url = require("url"); +// for unit tests +exports.external = { + sendHttpRequest: defaultSendHttpRequest, + log: defaultLog, + includeStackTraces: true, + userHandlerIndex: './index', +}; +const CREATE_FAILED_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::CREATE_FAILED'; +const MISSING_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID'; +async function handler(event, context) { + const sanitizedEvent = { ...event, ResponseURL: '...' }; + exports.external.log(JSON.stringify(sanitizedEvent, undefined, 2)); + // ignore DELETE event when the physical resource ID is the marker that + // indicates that this DELETE is a subsequent DELETE to a failed CREATE + // operation. + if (event.RequestType === 'Delete' && event.PhysicalResourceId === CREATE_FAILED_PHYSICAL_ID_MARKER) { + exports.external.log('ignoring DELETE event caused by a failed CREATE event'); + await submitResponse('SUCCESS', event); + return; + } + try { + // invoke the user handler. this is intentionally inside the try-catch to + // ensure that if there is an error it's reported as a failure to + // cloudformation (otherwise cfn waits). + // eslint-disable-next-line @typescript-eslint/no-require-imports + const userHandler = require(exports.external.userHandlerIndex).handler; + const result = await userHandler(sanitizedEvent, context); + // validate user response and create the combined event + const responseEvent = renderResponse(event, result); + // submit to cfn as success + await submitResponse('SUCCESS', responseEvent); + } + catch (e) { + const resp = { + ...event, + Reason: exports.external.includeStackTraces ? e.stack : e.message, + }; + if (!resp.PhysicalResourceId) { + // special case: if CREATE fails, which usually implies, we usually don't + // have a physical resource id. in this case, the subsequent DELETE + // operation does not have any meaning, and will likely fail as well. to + // address this, we use a marker so the provider framework can simply + // ignore the subsequent DELETE. + if (event.RequestType === 'Create') { + exports.external.log('CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored'); + resp.PhysicalResourceId = CREATE_FAILED_PHYSICAL_ID_MARKER; + } + else { + // otherwise, if PhysicalResourceId is not specified, something is + // terribly wrong because all other events should have an ID. + exports.external.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(event)}`); + } + } + // this is an actual error, fail the activity altogether and exist. + await submitResponse('FAILED', resp); + } +} +exports.handler = handler; +function renderResponse(cfnRequest, handlerResponse = {}) { + // if physical ID is not returned, we have some defaults for you based + // on the request type. + const physicalResourceId = handlerResponse.PhysicalResourceId ?? cfnRequest.PhysicalResourceId ?? cfnRequest.RequestId; + // if we are in DELETE and physical ID was changed, it's an error. + if (cfnRequest.RequestType === 'Delete' && physicalResourceId !== cfnRequest.PhysicalResourceId) { + throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${handlerResponse.PhysicalResourceId}" during deletion`); + } + // merge request event and result event (result prevails). + return { + ...cfnRequest, + ...handlerResponse, + PhysicalResourceId: physicalResourceId, + }; +} +async function submitResponse(status, event) { + const json = { + Status: status, + Reason: event.Reason ?? status, + StackId: event.StackId, + RequestId: event.RequestId, + PhysicalResourceId: event.PhysicalResourceId || MISSING_PHYSICAL_ID_MARKER, + LogicalResourceId: event.LogicalResourceId, + NoEcho: event.NoEcho, + Data: event.Data, + }; + const parsedUrl = url.parse(event.ResponseURL); + const loggingSafeUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`; + exports.external.log('submit response to cloudformation', loggingSafeUrl, json); + const responseBody = JSON.stringify(json); + const req = { + hostname: parsedUrl.hostname, + path: parsedUrl.path, + method: 'PUT', + headers: { + 'content-type': '', + 'content-length': Buffer.byteLength(responseBody, 'utf8'), + }, + }; + const retryOptions = { + attempts: 5, + sleep: 1000, + }; + await withRetries(retryOptions, exports.external.sendHttpRequest)(req, responseBody); +} +async function defaultSendHttpRequest(options, requestBody) { + return new Promise((resolve, reject) => { + try { + const request = https.request(options, (response) => { + response.resume(); // Consume the response but don't care about it + if (!response.statusCode || response.statusCode >= 400) { + reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)); + } + else { + resolve(); + } + }); + request.on('error', reject); + request.write(requestBody); + request.end(); + } + catch (e) { + reject(e); + } + }); +} +function defaultLog(fmt, ...params) { + // eslint-disable-next-line no-console + console.log(fmt, ...params); +} +function withRetries(options, fn) { + return async (...xs) => { + let attempts = options.attempts; + let ms = options.sleep; + while (true) { + try { + return await fn(...xs); + } + catch (e) { + if (attempts-- <= 0) { + throw e; + } + await sleep(Math.floor(Math.random() * ms)); + ms *= 2; + } + } + }; +} +exports.withRetries = withRetries; +async function sleep(ms) { + return new Promise((ok) => setTimeout(ok, ms)); +} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js new file mode 100644 index 0000000000000..013bcaffd8fe5 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1/index.js @@ -0,0 +1 @@ +"use strict";var I=Object.create;var t=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var G=(r,e)=>{for(var o in e)t(r,o,{get:e[o],enumerable:!0})},n=(r,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of P(e))!l.call(r,s)&&s!==o&&t(r,s,{get:()=>e[s],enumerable:!(i=y(e,s))||i.enumerable});return r};var R=(r,e,o)=>(o=r!=null?I(g(r)):{},n(e||!r||!r.__esModule?t(o,"default",{value:r,enumerable:!0}):o,r)),S=r=>n(t({},"__esModule",{value:!0}),r);var k={};G(k,{handler:()=>f});module.exports=S(k);var a=R(require("@aws-sdk/client-ec2")),u=new a.EC2({});function c(r,e){return{GroupId:r,IpPermissions:[{UserIdGroupPairs:[{GroupId:r,UserId:e}],IpProtocol:"-1"}]}}function d(r){return{GroupId:r,IpPermissions:[{IpRanges:[{CidrIp:"0.0.0.0/0"}],IpProtocol:"-1"}]}}async function f(r){let e=r.ResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.Account;switch(r.RequestType){case"Create":return p(e,o);case"Update":return h(r);case"Delete":return m(e,o)}}async function h(r){let e=r.OldResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.DefaultSecurityGroupId;e!==o&&(await m(e,r.ResourceProperties.Account),await p(o,r.ResourceProperties.Account))}async function p(r,e){try{await u.revokeSecurityGroupEgress(d(r))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}try{await u.revokeSecurityGroupIngress(c(r,e))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}}async function m(r,e){await u.authorizeSecurityGroupIngress(c(r,e)),await u.authorizeSecurityGroupEgress(d(r))}0&&(module.exports={handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.assets.json new file mode 100644 index 0000000000000..c2e917877c020 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.assets.json @@ -0,0 +1,136 @@ +{ + "version": "36.0.0", + "files": { + "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1": { + "source": { + "path": "asset.bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7": { + "source": { + "path": "asset.b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84": { + "source": { + "path": "asset.22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299": { + "source": { + "path": "asset.b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5": { + "source": { + "path": "asset.15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098": { + "source": { + "path": "asset.abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961": { + "source": { + "path": "asset.3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "bf3918be90cc10081a6bc675e0171d687bab4f5c3c7656a6b43d0a96c0853e10": { + "source": { + "path": "awscdkeksclusterstackawscdkawseksClusterResourceProviderD3E096A1.nested.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "bf3918be90cc10081a6bc675e0171d687bab4f5c3c7656a6b43d0a96c0853e10.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "1e64ad7dd437a26d9f4ddd114ad977f4186a7c9089da1b03c85372d7c36c0a88": { + "source": { + "path": "awscdkeksclusterstackawscdkawseksKubectlProviderB17EB2CD.nested.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "1e64ad7dd437a26d9f4ddd114ad977f4186a7c9089da1b03c85372d7c36c0a88.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "47f773261b9926c421c619a246f5156be670874b23ebff5beb7181379f80da75": { + "source": { + "path": "aws-cdk-eks-cluster-stack.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "47f773261b9926c421c619a246f5156be670874b23ebff5beb7181379f80da75.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.template.json new file mode 100644 index 0000000000000..a415738133356 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/aws-cdk-eks-cluster-stack.template.json @@ -0,0 +1,956 @@ +{ + "Resources": { + "Vpc8378EB38": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc" + } + ] + } + }, + "VpcPublicSubnet1Subnet5C2D37C4": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPublicSubnet1RouteTable6C95E38E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } + }, + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + } + }, + "DependsOn": [ + "VpcVPCGWBF912B6E" + ] + }, + "VpcPublicSubnet1EIPD7E02669": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ] + } + }, + "VpcPublicSubnet1NATGateway4D7517AA": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet1EIPD7E02669", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1RouteTableAssociation97140677" + ] + }, + "VpcPublicSubnet2Subnet691E08A3": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPublicSubnet2RouteTable94F7E489": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } + }, + "VpcPublicSubnet2DefaultRoute97F91067": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + } + }, + "DependsOn": [ + "VpcVPCGWBF912B6E" + ] + }, + "VpcPrivateSubnet1Subnet536B997A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } + }, + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + } + } + }, + "VpcPrivateSubnet2Subnet3788AAA1": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPrivateSubnet2RouteTableA678073B": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } + }, + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + } + } + }, + "VpcIGWD7BA715C": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-stack/Vpc" + } + ] + } + }, + "VpcVPCGWBF912B6E": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE": { + "Type": "Custom::VpcRestrictDefaultSG", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E", + "Arn" + ] + }, + "DefaultSecurityGroupId": { + "Fn::GetAtt": [ + "Vpc8378EB38", + "DefaultSecurityGroup" + ] + }, + "Account": { + "Ref": "AWS::AccountId" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ] + }, + "ManagedPolicyArns": [ + { + "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + } + ], + "Policies": [ + { + "PolicyName": "Inline", + "PolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "ec2:AuthorizeSecurityGroupIngress", + "ec2:AuthorizeSecurityGroupEgress", + "ec2:RevokeSecurityGroupIngress", + "ec2:RevokeSecurityGroupEgress" + ], + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":ec2:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":security-group/", + { + "Fn::GetAtt": [ + "Vpc8378EB38", + "DefaultSecurityGroup" + ] + } + ] + ] + } + ] + } + ] + } + } + ] + } + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "bde7b5c89cb43285f884c94f0b9e17cdb0f5eb5345005114dd60342e0b8a85a1.zip" + }, + "Timeout": 900, + "MemorySize": 128, + "Handler": "__entrypoint__.handler", + "Role": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Description": "Lambda function for removing all inbound/outbound rules from the VPC default security group" + }, + "DependsOn": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + ] + }, + "KubectlLayer600207B5": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip" + }, + "Description": "/opt/kubectl/kubectl 1.29; /opt/helm/helm 3.14", + "LicenseInfo": "Apache-2.0" + } + }, + "ClusterKubectlHandlerRole94549F93": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + }, + { + "Fn::If": [ + "ClusterHasEcrPublic8EE1114E", + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" + ] + ] + }, + { + "Ref": "AWS::NoValue" + } + ] + } + ] + } + }, + "ClusterKubectlHandlerRoleDefaultPolicyE44083DD": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "eks:DescribeCluster", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Cluster9EE0221C", + "Arn" + ] + } + }, + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "ClusterCreationRole360249B6", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", + "Roles": [ + { + "Ref": "ClusterKubectlHandlerRole94549F93" + } + ] + } + }, + "ClusterRoleFA261979": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "eks.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKSClusterPolicy" + ] + ] + } + ] + } + }, + "ClusterControlPlaneSecurityGroupD274242C": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "EKS Control Plane Security Group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "ClusterCreationRole360249B6": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": [ + { + "Fn::GetAtt": [ + "ClusterKubectlHandlerRole94549F93", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn" + ] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn" + ] + } + ] + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ClusterCreationRoleDefaultPolicyE8BDFC7B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "iam:PassRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "ClusterRoleFA261979", + "Arn" + ] + } + }, + { + "Action": [ + "eks:CreateCluster", + "eks:CreateFargateProfile", + "eks:DeleteCluster", + "eks:DescribeCluster", + "eks:DescribeUpdate", + "eks:TagResource", + "eks:UntagResource", + "eks:UpdateClusterConfig", + "eks:UpdateClusterVersion" + ], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": [ + "eks:DeleteFargateProfile", + "eks:DescribeFargateProfile" + ], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": [ + "ec2:DescribeDhcpOptions", + "ec2:DescribeInstances", + "ec2:DescribeNetworkInterfaces", + "ec2:DescribeRouteTables", + "ec2:DescribeSecurityGroups", + "ec2:DescribeSubnets", + "ec2:DescribeVpcs", + "iam:CreateServiceLinkedRole", + "iam:GetRole", + "iam:listAttachedRolePolicies" + ], + "Effect": "Allow", + "Resource": "*" + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "Roles": [ + { + "Ref": "ClusterCreationRole360249B6" + } + ] + } + }, + "Cluster9EE0221C": { + "Type": "Custom::AWSCDK-EKS-Cluster", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn" + ] + }, + "Config": { + "version": "1.29", + "roleArn": { + "Fn::GetAtt": [ + "ClusterRoleFA261979", + "Arn" + ] + }, + "kubernetesNetworkConfig": { + "ipFamily": "ipv4" + }, + "resourcesVpcConfig": { + "subnetIds": [ + { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + ], + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "ClusterControlPlaneSecurityGroupD274242C", + "GroupId" + ] + } + ], + "endpointPublicAccess": true, + "endpointPrivateAccess": true + } + }, + "AssumeRoleArn": { + "Fn::GetAtt": [ + "ClusterCreationRole360249B6", + "Arn" + ] + }, + "AttributesRevision": 2 + }, + "DependsOn": [ + "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "ClusterCreationRole360249B6" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "ClusterKubectlReadyBarrier200052AF": { + "Type": "AWS::SSM::Parameter", + "Properties": { + "Type": "String", + "Value": "aws:cdk:eks:kubectl-ready" + }, + "DependsOn": [ + "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "ClusterCreationRole360249B6", + "Cluster9EE0221C" + ] + }, + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454": { + "Type": "AWS::CloudFormation::Stack", + "Properties": { + "TemplateURL": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/bf3918be90cc10081a6bc675e0171d687bab4f5c3c7656a6b43d0a96c0853e10.json" + ] + ] + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B": { + "Type": "AWS::CloudFormation::Stack", + "Properties": { + "Parameters": { + "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref": { + "Ref": "KubectlLayer600207B5" + }, + "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn": { + "Fn::GetAtt": [ + "ClusterKubectlHandlerRole94549F93", + "Arn" + ] + } + }, + "TemplateURL": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/1e64ad7dd437a26d9f4ddd114ad977f4186a7c9089da1b03c85372d7c36c0a88.json" + ] + ] + } + }, + "DependsOn": [ + "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", + "ClusterKubectlHandlerRole94549F93" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + } + }, + "Conditions": { + "ClusterHasEcrPublic8EE1114E": { + "Fn::Equals": [ + { + "Ref": "AWS::Partition" + }, + "aws" + ] + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets.json new file mode 100644 index 0000000000000..ee76345f773c3 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "awscdkeksclusterDefaultTestDeployAssertFBF4B356.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterDefaultTestDeployAssertFBF4B356.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksClusterResourceProviderD3E096A1.nested.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksClusterResourceProviderD3E096A1.nested.template.json new file mode 100644 index 0000000000000..146d340c9ea7c --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksClusterResourceProviderD3E096A1.nested.template.json @@ -0,0 +1,752 @@ +{ + "Resources": { + "NodeProxyAgentLayer924C1971": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip" + }, + "Description": "/opt/nodejs/node_modules/proxy-agent" + } + }, + "OnEventHandlerServiceRole15A26729": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "OnEventHandler42BEBAE0": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299.zip" + }, + "Description": "onEvent handler for EKS cluster resource provider", + "Environment": { + "Variables": { + "AWS_STS_REGIONAL_ENDPOINTS": "regional" + } + }, + "Handler": "index.onEvent", + "Layers": [ + { + "Ref": "NodeProxyAgentLayer924C1971" + } + ], + "Role": { + "Fn::GetAtt": [ + "OnEventHandlerServiceRole15A26729", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 60 + }, + "DependsOn": [ + "OnEventHandlerServiceRole15A26729" + ] + }, + "IsCompleteHandlerServiceRole5810CC58": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "IsCompleteHandler7073F4DA": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299.zip" + }, + "Description": "isComplete handler for EKS cluster resource provider", + "Environment": { + "Variables": { + "AWS_STS_REGIONAL_ENDPOINTS": "regional" + } + }, + "Handler": "index.isComplete", + "Layers": [ + { + "Ref": "NodeProxyAgentLayer924C1971" + } + ], + "Role": { + "Fn::GetAtt": [ + "IsCompleteHandlerServiceRole5810CC58", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 60 + }, + "DependsOn": [ + "IsCompleteHandlerServiceRole5810CC58" + ] + }, + "ProviderframeworkonEventServiceRole9FF04296": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + }, + { + "Action": "states:StartExecution", + "Effect": "Allow", + "Resource": { + "Ref": "Providerwaiterstatemachine5D4A9DF0" + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "Roles": [ + { + "Ref": "ProviderframeworkonEventServiceRole9FF04296" + } + ] + } + }, + "ProviderframeworkonEvent83C1D0A7": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "Description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "Environment": { + "Variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + "WAITER_STATE_MACHINE_ARN": { + "Ref": "Providerwaiterstatemachine5D4A9DF0" + } + } + }, + "Handler": "framework.onEvent", + "Role": { + "Fn::GetAtt": [ + "ProviderframeworkonEventServiceRole9FF04296", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 900 + }, + "DependsOn": [ + "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "ProviderframeworkonEventServiceRole9FF04296" + ] + }, + "ProviderframeworkisCompleteServiceRoleB1087139": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC", + "Roles": [ + { + "Ref": "ProviderframeworkisCompleteServiceRoleB1087139" + } + ] + } + }, + "ProviderframeworkisComplete26D7B0CB": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "Description": "AWS CDK resource provider framework - isComplete (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "Environment": { + "Variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + } + } + }, + "Handler": "framework.isComplete", + "Role": { + "Fn::GetAtt": [ + "ProviderframeworkisCompleteServiceRoleB1087139", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 900 + }, + "DependsOn": [ + "ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC", + "ProviderframeworkisCompleteServiceRoleB1087139" + ] + }, + "ProviderframeworkonTimeoutServiceRole28643D26": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F", + "Roles": [ + { + "Ref": "ProviderframeworkonTimeoutServiceRole28643D26" + } + ] + } + }, + "ProviderframeworkonTimeout0B47CA38": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "Description": "AWS CDK resource provider framework - onTimeout (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "Environment": { + "Variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + } + } + }, + "Handler": "framework.onTimeout", + "Role": { + "Fn::GetAtt": [ + "ProviderframeworkonTimeoutServiceRole28643D26", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 900 + }, + "DependsOn": [ + "ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F", + "ProviderframeworkonTimeoutServiceRole28643D26" + ] + }, + "ProviderwaiterstatemachineRole0C7159F9": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "states.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + }, + { + "Action": [ + "logs:CreateLogDelivery", + "logs:CreateLogStream", + "logs:DeleteLogDelivery", + "logs:DescribeLogGroups", + "logs:DescribeResourcePolicies", + "logs:GetLogDelivery", + "logs:ListLogDeliveries", + "logs:PutLogEvents", + "logs:PutResourcePolicy", + "logs:UpdateLogDelivery" + ], + "Effect": "Allow", + "Resource": "*" + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A", + "Roles": [ + { + "Ref": "ProviderwaiterstatemachineRole0C7159F9" + } + ] + } + }, + "ProviderwaiterstatemachineLogGroupDD693A98": { + "Type": "AWS::Logs::LogGroup", + "Properties": { + "LogGroupName": { + "Fn::Join": [ + "", + [ + "/aws/vendedlogs/states/waiter-state-machine-", + { + "Ref": "ProviderframeworkisComplete26D7B0CB" + }, + "-c877ed638625dc9b797da23b7bd8f98aabfa3101bf" + ] + ] + }, + "RetentionInDays": 731 + }, + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" + }, + "Providerwaiterstatemachine5D4A9DF0": { + "Type": "AWS::StepFunctions::StateMachine", + "Properties": { + "DefinitionString": { + "Fn::Join": [ + "", + [ + "{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":60,\"MaxAttempts\":60,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"", + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + "\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"", + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + "\"}}}" + ] + ] + }, + "LoggingConfiguration": { + "Destinations": [ + { + "CloudWatchLogsLogGroup": { + "LogGroupArn": { + "Fn::GetAtt": [ + "ProviderwaiterstatemachineLogGroupDD693A98", + "Arn" + ] + } + } + } + ], + "IncludeExecutionData": false, + "Level": "ERROR" + }, + "RoleArn": { + "Fn::GetAtt": [ + "ProviderwaiterstatemachineRole0C7159F9", + "Arn" + ] + } + }, + "DependsOn": [ + "ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A", + "ProviderwaiterstatemachineRole0C7159F9" + ] + } + }, + "Outputs": { + "awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn": { + "Value": { + "Fn::GetAtt": [ + "OnEventHandlerServiceRole15A26729", + "Arn" + ] + } + }, + "awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn": { + "Value": { + "Fn::GetAtt": [ + "IsCompleteHandlerServiceRole5810CC58", + "Arn" + ] + } + }, + "awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn": { + "Value": { + "Fn::GetAtt": [ + "ProviderframeworkonEvent83C1D0A7", + "Arn" + ] + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksKubectlProviderB17EB2CD.nested.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksKubectlProviderB17EB2CD.nested.template.json new file mode 100644 index 0000000000000..261cf3c4c1502 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/awscdkeksclusterstackawscdkawseksKubectlProviderB17EB2CD.nested.template.json @@ -0,0 +1,159 @@ +{ + "Resources": { + "Handler886CB40B": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098.zip" + }, + "Description": "onEvent handler for EKS kubectl resource provider", + "Handler": "index.handler", + "Layers": [ + { + "Ref": "AwsCliLayerF44AAF94" + }, + { + "Ref": "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref" + } + ], + "MemorySize": 1024, + "Role": { + "Ref": "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn" + }, + "Runtime": "python3.10", + "Timeout": 900 + } + }, + "AwsCliLayerF44AAF94": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip" + }, + "Description": "/opt/awscli/aws" + } + }, + "ProviderframeworkonEventServiceRole9FF04296": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "Roles": [ + { + "Ref": "ProviderframeworkonEventServiceRole9FF04296" + } + ] + } + }, + "ProviderframeworkonEvent83C1D0A7": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "Description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider)", + "Environment": { + "Variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + } + } + }, + "Handler": "framework.onEvent", + "Role": { + "Fn::GetAtt": [ + "ProviderframeworkonEventServiceRole9FF04296", + "Arn" + ] + }, + "Runtime": "nodejs18.x", + "Timeout": 900 + }, + "DependsOn": [ + "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "ProviderframeworkonEventServiceRole9FF04296" + ] + } + }, + "Parameters": { + "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref": { + "Type": "String" + }, + "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn": { + "Type": "String" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/integ.json new file mode 100644 index 0000000000000..ec88ddd842067 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/integ.json @@ -0,0 +1,13 @@ +{ + "version": "36.0.0", + "testCases": { + "aws-cdk-eks-cluster/DefaultTest": { + "stacks": [ + "aws-cdk-eks-cluster-stack" + ], + "diffAssets": false, + "assertionStack": "aws-cdk-eks-cluster/DefaultTest/DeployAssert", + "assertionStackName": "awscdkeksclusterDefaultTestDeployAssertFBF4B356" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/manifest.json new file mode 100644 index 0000000000000..5ec8385204e33 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/manifest.json @@ -0,0 +1,491 @@ +{ + "version": "36.0.0", + "artifacts": { + "aws-cdk-eks-cluster-stack.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "aws-cdk-eks-cluster-stack.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "aws-cdk-eks-cluster-stack": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "aws-cdk-eks-cluster-stack.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/47f773261b9926c421c619a246f5156be670874b23ebff5beb7181379f80da75.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "aws-cdk-eks-cluster-stack.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "aws-cdk-eks-cluster-stack.assets" + ], + "metadata": { + "/aws-cdk-eks-cluster-stack/Vpc/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Vpc8378EB38" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1Subnet5C2D37C4" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1RouteTable6C95E38E" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1RouteTableAssociation97140677" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1DefaultRoute3DA9E72A" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1EIPD7E02669" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1NATGateway4D7517AA" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2Subnet691E08A3" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2RouteTable94F7E489" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2RouteTableAssociationDD5762D8" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2DefaultRoute97F91067" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1Subnet536B997A" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1RouteTableB2C5B500" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1RouteTableAssociation70C59FA6" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1DefaultRouteBE02A9ED" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2Subnet3788AAA1" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2RouteTableA678073B" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2DefaultRoute060D2087" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcIGWD7BA715C" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcVPCGWBF912B6E" + } + ], + "/aws-cdk-eks-cluster-stack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE" + } + ], + "/aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + } + ], + "/aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E" + } + ], + "/aws-cdk-eks-cluster-stack/KubectlLayer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "KubectlLayer600207B5" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterKubectlHandlerRole94549F93" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterKubectlHandlerRoleDefaultPolicyE44083DD" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterRoleFA261979" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/ControlPlaneSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterControlPlaneSecurityGroupD274242C" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterCreationRole360249B6" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterCreationRoleDefaultPolicyE8BDFC7B" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/Resource/Resource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "Cluster9EE0221C" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/KubectlReadyBarrier": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterKubectlReadyBarrier200052AF" + } + ], + "/aws-cdk-eks-cluster-stack/Cluster/HasEcrPublic": [ + { + "type": "aws:cdk:logicalId", + "data": "ClusterHasEcrPublic8EE1114E" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "NodeProxyAgentLayer924C1971" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "OnEventHandlerServiceRole15A26729" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "OnEventHandler42BEBAE0" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "IsCompleteHandlerServiceRole5810CC58" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "IsCompleteHandler7073F4DA" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEventServiceRole9FF04296" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEvent83C1D0A7" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkisCompleteServiceRoleB1087139" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkisComplete26D7B0CB" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonTimeoutServiceRole28643D26" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonTimeout0B47CA38" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderwaiterstatemachineRole0C7159F9" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/LogGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderwaiterstatemachineLogGroupDD693A98" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Providerwaiterstatemachine5D4A9DF0" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn": [ + { + "type": "aws:cdk:logicalId", + "data": "awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn": [ + { + "type": "aws:cdk:logicalId", + "data": "awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn": [ + { + "type": "aws:cdk:logicalId", + "data": "awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource": [ + { + "type": "aws:cdk:logicalId", + "data": "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Handler886CB40B" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AwsCliLayerF44AAF94" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEventServiceRole9FF04296" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProviderframeworkonEvent83C1D0A7" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusterstackKubectlLayer380CD730Ref": [ + { + "type": "aws:cdk:logicalId", + "data": "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn": [ + { + "type": "aws:cdk:logicalId", + "data": "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn" + } + ], + "/aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider.NestedStack/@aws-cdk--aws-eks.KubectlProvider.NestedStackResource": [ + { + "type": "aws:cdk:logicalId", + "data": "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B" + } + ], + "/aws-cdk-eks-cluster-stack/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-eks-cluster-stack/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-eks-cluster-stack" + }, + "awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "awscdkeksclusterDefaultTestDeployAssertFBF4B356": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "awscdkeksclusterDefaultTestDeployAssertFBF4B356.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "awscdkeksclusterDefaultTestDeployAssertFBF4B356.assets" + ], + "metadata": { + "/aws-cdk-eks-cluster/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-eks-cluster/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-eks-cluster/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/tree.json new file mode 100644 index 0000000000000..66445d3ce635c --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.js.snapshot/tree.json @@ -0,0 +1,3024 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "aws-cdk-eks-cluster-stack": { + "id": "aws-cdk-eks-cluster-stack", + "path": "aws-cdk-eks-cluster-stack", + "children": { + "Vpc": { + "id": "Vpc", + "path": "aws-cdk-eks-cluster-stack/Vpc", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Vpc/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.0.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "subnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "routeTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "allocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet1EIPD7E02669", + "AllocationId" + ] + }, + "subnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "tags": [ + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.64.0/18", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "kubernetes.io/role/elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "subnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-eks-cluster-stack/Vpc/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "routeTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.128.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "kubernetes.io/role/internal-elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "kubernetes.io/role/internal-elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "subnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "routeTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "availabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "cidrBlock": "10.0.192.0/18", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "kubernetes.io/role/internal-elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "kubernetes.io/role/internal-elb", + "value": "1" + }, + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "subnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "aws-cdk-eks-cluster-stack/Vpc/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "routeTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "aws-cdk-eks-cluster-stack/Vpc/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "aws-cdk-eks-cluster-stack/Vpc" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "aws-cdk-eks-cluster-stack/Vpc/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "internetGatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + }, + "RestrictDefaultSecurityGroupCustomResource": { + "id": "RestrictDefaultSecurityGroupCustomResource", + "path": "aws-cdk-eks-cluster-stack/Vpc/RestrictDefaultSecurityGroupCustomResource", + "children": { + "Default": { + "id": "Default", + "path": "aws-cdk-eks-cluster-stack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CustomResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "Custom::VpcRestrictDefaultSGCustomResourceProvider": { + "id": "Custom::VpcRestrictDefaultSGCustomResourceProvider", + "path": "aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider", + "children": { + "Staging": { + "id": "Staging", + "path": "aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "Role": { + "id": "Role", + "path": "aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + }, + "Handler": { + "id": "Handler", + "path": "aws-cdk-eks-cluster-stack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CustomResourceProviderBase", + "version": "0.0.0" + } + }, + "KubectlLayer": { + "id": "KubectlLayer", + "path": "aws-cdk-eks-cluster-stack/KubectlLayer", + "children": { + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/KubectlLayer/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/KubectlLayer/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/KubectlLayer/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/KubectlLayer/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::LayerVersion", + "aws:cdk:cloudformation:props": { + "content": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "b5925bba477fd1ac27c3a695a9f6ece293bd0ae6940bc65a5b99008ab54f60f7.zip" + }, + "description": "/opt/kubectl/kubectl 1.29; /opt/helm/helm 3.14", + "licenseInfo": "Apache-2.0" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnLayerVersion", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/lambda-layer-kubectl-v29.KubectlV29Layer", + "version": "2.0.0" + } + }, + "Cluster": { + "id": "Cluster", + "path": "aws-cdk-eks-cluster-stack/Cluster", + "children": { + "KubectlHandlerRole": { + "id": "KubectlHandlerRole", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole", + "children": { + "ImportKubectlHandlerRole": { + "id": "ImportKubectlHandlerRole", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/ImportKubectlHandlerRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + }, + { + "Fn::If": [ + "ClusterHasEcrPublic8EE1114E", + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" + ] + ] + }, + { + "Ref": "AWS::NoValue" + } + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlHandlerRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "eks:DescribeCluster", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "Cluster9EE0221C", + "Arn" + ] + } + }, + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "ClusterCreationRole360249B6", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", + "roles": [ + { + "Ref": "ClusterKubectlHandlerRole94549F93" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Role": { + "id": "Role", + "path": "aws-cdk-eks-cluster-stack/Cluster/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "aws-cdk-eks-cluster-stack/Cluster/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "eks.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKSClusterPolicy" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "ControlPlaneSecurityGroup": { + "id": "ControlPlaneSecurityGroup", + "path": "aws-cdk-eks-cluster-stack/Cluster/ControlPlaneSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/ControlPlaneSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "EKS Control Plane Security Group", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource", + "children": { + "CreationRole": { + "id": "CreationRole", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole", + "children": { + "ImportCreationRole": { + "id": "ImportCreationRole", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/ImportCreationRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": [ + { + "Fn::GetAtt": [ + "ClusterKubectlHandlerRole94549F93", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn" + ] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn" + ] + } + ] + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/CreationRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "iam:PassRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "ClusterRoleFA261979", + "Arn" + ] + } + }, + { + "Action": [ + "eks:CreateCluster", + "eks:CreateFargateProfile", + "eks:DeleteCluster", + "eks:DescribeCluster", + "eks:DescribeUpdate", + "eks:TagResource", + "eks:UntagResource", + "eks:UpdateClusterConfig", + "eks:UpdateClusterVersion" + ], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": [ + "eks:DeleteFargateProfile", + "eks:DescribeFargateProfile" + ], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": [ + "ec2:DescribeDhcpOptions", + "ec2:DescribeInstances", + "ec2:DescribeNetworkInterfaces", + "ec2:DescribeRouteTables", + "ec2:DescribeSecurityGroups", + "ec2:DescribeSubnets", + "ec2:DescribeVpcs", + "iam:CreateServiceLinkedRole", + "iam:GetRole", + "iam:listAttachedRolePolicies" + ], + "Effect": "Allow", + "Resource": "*" + } + ], + "Version": "2012-10-17" + }, + "policyName": "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "roles": [ + { + "Ref": "ClusterCreationRole360249B6" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/Resource", + "children": { + "Default": { + "id": "Default", + "path": "aws-cdk-eks-cluster-stack/Cluster/Resource/Resource/Default", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CustomResource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "KubectlReadyBarrier": { + "id": "KubectlReadyBarrier", + "path": "aws-cdk-eks-cluster-stack/Cluster/KubectlReadyBarrier", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnResource", + "version": "0.0.0" + } + }, + "ClusterSecurityGroup": { + "id": "ClusterSecurityGroup", + "path": "aws-cdk-eks-cluster-stack/Cluster/ClusterSecurityGroup", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "HasEcrPublic": { + "id": "HasEcrPublic", + "path": "aws-cdk-eks-cluster-stack/Cluster/HasEcrPublic", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_eks.Cluster", + "version": "0.0.0" + } + }, + "@aws-cdk--aws-eks.ClusterResourceProvider": { + "id": "@aws-cdk--aws-eks.ClusterResourceProvider", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider", + "children": { + "NodeProxyAgentLayer": { + "id": "NodeProxyAgentLayer", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer", + "children": { + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::LayerVersion", + "aws:cdk:cloudformation:props": { + "content": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "22de69e75b55e15d4d49905d8a4901edd66d1367f617c2a01ac6e86ca2b7eb84.zip" + }, + "description": "/opt/nodejs/node_modules/proxy-agent" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnLayerVersion", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.lambda_layer_node_proxy_agent.NodeProxyAgentLayer", + "version": "0.0.0" + } + }, + "OnEventHandler": { + "id": "OnEventHandler", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299.zip" + }, + "description": "onEvent handler for EKS cluster resource provider", + "environment": { + "variables": { + "AWS_STS_REGIONAL_ENDPOINTS": "regional" + } + }, + "handler": "index.onEvent", + "layers": [ + { + "Ref": "NodeProxyAgentLayer924C1971" + } + ], + "role": { + "Fn::GetAtt": [ + "OnEventHandlerServiceRole15A26729", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 60 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "IsCompleteHandler": { + "id": "IsCompleteHandler", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "b089c653e568b9aa1afed59151f083ffd6d1e9f293f5844238b4dc10a44d6299.zip" + }, + "description": "isComplete handler for EKS cluster resource provider", + "environment": { + "variables": { + "AWS_STS_REGIONAL_ENDPOINTS": "regional" + } + }, + "handler": "index.isComplete", + "layers": [ + { + "Ref": "NodeProxyAgentLayer924C1971" + } + ], + "role": { + "Fn::GetAtt": [ + "IsCompleteHandlerServiceRole5810CC58", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 60 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "Provider": { + "id": "Provider", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider", + "children": { + "framework-onEvent": { + "id": "framework-onEvent", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + }, + { + "Action": "states:StartExecution", + "Effect": "Allow", + "Resource": { + "Ref": "Providerwaiterstatemachine5D4A9DF0" + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "roles": [ + { + "Ref": "ProviderframeworkonEventServiceRole9FF04296" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "environment": { + "variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + "WAITER_STATE_MACHINE_ARN": { + "Ref": "Providerwaiterstatemachine5D4A9DF0" + } + } + }, + "handler": "framework.onEvent", + "role": { + "Fn::GetAtt": [ + "ProviderframeworkonEventServiceRole9FF04296", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 900 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "framework-isComplete": { + "id": "framework-isComplete", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC", + "roles": [ + { + "Ref": "ProviderframeworkisCompleteServiceRoleB1087139" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "description": "AWS CDK resource provider framework - isComplete (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "environment": { + "variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + } + } + }, + "handler": "framework.isComplete", + "role": { + "Fn::GetAtt": [ + "ProviderframeworkisCompleteServiceRoleB1087139", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 900 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "framework-onTimeout": { + "id": "framework-onTimeout", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F", + "roles": [ + { + "Ref": "ProviderframeworkonTimeoutServiceRole28643D26" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "description": "AWS CDK resource provider framework - onTimeout (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)", + "environment": { + "variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "OnEventHandler42BEBAE0", + "Arn" + ] + }, + "USER_IS_COMPLETE_FUNCTION_ARN": { + "Fn::GetAtt": [ + "IsCompleteHandler7073F4DA", + "Arn" + ] + } + } + }, + "handler": "framework.onTimeout", + "role": { + "Fn::GetAtt": [ + "ProviderframeworkonTimeoutServiceRole28643D26", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 900 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "waiter-state-machine": { + "id": "waiter-state-machine", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine", + "children": { + "Role": { + "id": "Role", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "states.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + }, + { + "Action": [ + "logs:CreateLogDelivery", + "logs:CreateLogStream", + "logs:DeleteLogDelivery", + "logs:DescribeLogGroups", + "logs:DescribeResourcePolicies", + "logs:GetLogDelivery", + "logs:ListLogDeliveries", + "logs:PutLogEvents", + "logs:PutResourcePolicy", + "logs:UpdateLogDelivery" + ], + "Effect": "Allow", + "Resource": "*" + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A", + "roles": [ + { + "Ref": "ProviderwaiterstatemachineRole0C7159F9" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "LogGroup": { + "id": "LogGroup", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/LogGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/LogGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Logs::LogGroup", + "aws:cdk:cloudformation:props": { + "logGroupName": { + "Fn::Join": [ + "", + [ + "/aws/vendedlogs/states/waiter-state-machine-", + { + "Ref": "ProviderframeworkisComplete26D7B0CB" + }, + "-c877ed638625dc9b797da23b7bd8f98aabfa3101bf" + ] + ] + }, + "retentionInDays": 731 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_logs.CfnLogGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_logs.LogGroup", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::StepFunctions::StateMachine", + "aws:cdk:cloudformation:props": { + "definitionString": { + "Fn::Join": [ + "", + [ + "{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":60,\"MaxAttempts\":60,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"", + { + "Fn::GetAtt": [ + "ProviderframeworkisComplete26D7B0CB", + "Arn" + ] + }, + "\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"", + { + "Fn::GetAtt": [ + "ProviderframeworkonTimeout0B47CA38", + "Arn" + ] + }, + "\"}}}" + ] + ] + }, + "loggingConfiguration": { + "destinations": [ + { + "cloudWatchLogsLogGroup": { + "logGroupArn": { + "Fn::GetAtt": [ + "ProviderwaiterstatemachineLogGroupDD693A98", + "Arn" + ] + } + } + } + ], + "includeExecutionData": false, + "level": "ERROR" + }, + "roleArn": { + "Fn::GetAtt": [ + "ProviderwaiterstatemachineRole0C7159F9", + "Arn" + ] + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_stepfunctions.CfnStateMachine", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.custom_resources.WaiterStateMachine", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.custom_resources.Provider", + "version": "0.0.0" + } + }, + "awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn": { + "id": "awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderOnEventHandlerServiceRoleB2950FB4Arn", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn": { + "id": "awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRole70B1C85DArn", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn": { + "id": "awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusterstackawscdkawseksClusterResourceProviderframeworkonEvent969BA09CArn", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.NestedStack", + "version": "0.0.0" + } + }, + "@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack": { + "id": "@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack", + "children": { + "@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource": { + "id": "@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CloudFormation::Stack", + "aws:cdk:cloudformation:props": { + "templateUrl": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/bf3918be90cc10081a6bc675e0171d687bab4f5c3c7656a6b43d0a96c0853e10.json" + ] + ] + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CfnStack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "@aws-cdk--aws-eks.KubectlProvider": { + "id": "@aws-cdk--aws-eks.KubectlProvider", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider", + "children": { + "Handler": { + "id": "Handler", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler", + "children": { + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Handler/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "abc70c90ded969d12235ca11768293cb20557cff54518518480c0d9fb344a098.zip" + }, + "description": "onEvent handler for EKS kubectl resource provider", + "handler": "index.handler", + "layers": [ + { + "Ref": "AwsCliLayerF44AAF94" + }, + { + "Ref": "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref" + } + ], + "memorySize": 1024, + "role": { + "Ref": "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn" + }, + "runtime": "python3.10", + "timeout": 900 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "AwsCliLayer": { + "id": "AwsCliLayer", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer", + "children": { + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::LayerVersion", + "aws:cdk:cloudformation:props": { + "content": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "3322b7049fb0ed2b7cbb644a2ada8d1116ff80c32dca89e6ada846b5de26f961.zip" + }, + "description": "/opt/awscli/aws" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnLayerVersion", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.lambda_layer_awscli.AwsCliLayer", + "version": "0.0.0" + } + }, + "ConditionalPolicyArn": { + "id": "ConditionalPolicyArn", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/ConditionalPolicyArn", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "conditionalPolicy": { + "id": "conditionalPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/conditionalPolicy", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Provider": { + "id": "Provider", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider", + "children": { + "framework-onEvent": { + "id": "framework-onEvent", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "managedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133", + "roles": [ + { + "Ref": "ProviderframeworkonEventServiceRole9FF04296" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Code": { + "id": "Code", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code", + "children": { + "Stage": { + "id": "Stage", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/Stage", + "constructInfo": { + "fqn": "aws-cdk-lib.AssetStaging", + "version": "0.0.0" + } + }, + "AssetBucket": { + "id": "AssetBucket", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/AssetBucket", + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketBase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3_assets.Asset", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "s3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "s3Key": "15197a5512179542fe2cff74af89bb047793c9c4e0b4395f114641a81cd52ae5.zip" + }, + "description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/Provider)", + "environment": { + "variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": [ + "Handler886CB40B", + "Arn" + ] + } + } + }, + "handler": "framework.onEvent", + "role": { + "Fn::GetAtt": [ + "ProviderframeworkonEventServiceRole9FF04296", + "Arn" + ] + }, + "runtime": "nodejs18.x", + "timeout": 900 + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.custom_resources.Provider", + "version": "0.0.0" + } + }, + "reference-to-awscdkeksclusterstackKubectlLayer380CD730Ref": { + "id": "reference-to-awscdkeksclusterstackKubectlLayer380CD730Ref", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusterstackKubectlLayer380CD730Ref", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "reference-to-awscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn": { + "id": "reference-to-awscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_eks.KubectlProvider", + "version": "0.0.0" + } + }, + "@aws-cdk--aws-eks.KubectlProvider.NestedStack": { + "id": "@aws-cdk--aws-eks.KubectlProvider.NestedStack", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider.NestedStack", + "children": { + "@aws-cdk--aws-eks.KubectlProvider.NestedStackResource": { + "id": "@aws-cdk--aws-eks.KubectlProvider.NestedStackResource", + "path": "aws-cdk-eks-cluster-stack/@aws-cdk--aws-eks.KubectlProvider.NestedStack/@aws-cdk--aws-eks.KubectlProvider.NestedStackResource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CloudFormation::Stack", + "aws:cdk:cloudformation:props": { + "parameters": { + "referencetoawscdkeksclusterstackKubectlLayer380CD730Ref": { + "Ref": "KubectlLayer600207B5" + }, + "referencetoawscdkeksclusterstackClusterKubectlHandlerRoleB305ACA0Arn": { + "Fn::GetAtt": [ + "ClusterKubectlHandlerRole94549F93", + "Arn" + ] + } + }, + "templateUrl": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/1e64ad7dd437a26d9f4ddd114ad977f4186a7c9089da1b03c85372d7c36c0a88.json" + ] + ] + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.CfnStack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-eks-cluster-stack/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-eks-cluster-stack/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "aws-cdk-eks-cluster": { + "id": "aws-cdk-eks-cluster", + "path": "aws-cdk-eks-cluster", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "aws-cdk-eks-cluster/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "aws-cdk-eks-cluster/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "aws-cdk-eks-cluster/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-eks-cluster/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-eks-cluster/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.ts new file mode 100644 index 0000000000000..cdb00364833ce --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-subnet-updates.ts @@ -0,0 +1,32 @@ +import { App, Stack } from 'aws-cdk-lib'; +import * as eks from 'aws-cdk-lib/aws-eks'; +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as integ from '@aws-cdk/integ-tests-alpha'; +import { getClusterVersionConfig } from './integ-tests-kubernetes-version'; + +class EksClusterStack extends Stack { + + constructor(scope: App, id: string) { + super(scope, id); + + const vpc = new ec2.Vpc(this, 'Vpc', { natGateways: 1 }); + new eks.Cluster(this, 'Cluster', { + vpc, + ...getClusterVersionConfig(this, eks.KubernetesVersion.V1_29), + defaultCapacity: 0, + endpointAccess: eks.EndpointAccess.PUBLIC_AND_PRIVATE, + vpcSubnets: [{ subnetType: ec2.SubnetType.PUBLIC }], + }); + } +} + +const app = new App(); + +const stack = new EksClusterStack(app, 'aws-cdk-eks-cluster-stack'); +new integ.IntegTest(app, 'aws-cdk-eks-cluster', { + testCases: [stack], + // Test includes assets that are updated weekly. If not disabled, the upgrade PR will fail. + diffAssets: false, +}); + +app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/appsync.test.graphql b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/appsync.test.graphql new file mode 100644 index 0000000000000..9a2546e396abf --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/appsync.test.graphql @@ -0,0 +1,13 @@ +type Event { + message: String +} +type Query { + getTests: [Event]! +} +type Mutation { + publish(message: String!): Event +} + +type Subscription { + onPublish: Event @aws_subscribe(mutations: ["publish"]) +} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.assets.json new file mode 100644 index 0000000000000..399b85c136688 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "fa005296bfe6cbad01df3cb800a324adbe7bcdb6273343c59488a74b1a9834a1": { + "source": { + "path": "aws-cdk-aws-appsync-target-integ.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "fa005296bfe6cbad01df3cb800a324adbe7bcdb6273343c59488a74b1a9834a1.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.template.json new file mode 100644 index 0000000000000..fef7e923e6aba --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/aws-cdk-aws-appsync-target-integ.template.json @@ -0,0 +1,238 @@ +{ + "Resources": { + "baseApiCDA4D43A": { + "Type": "AWS::AppSync::GraphQLApi", + "Properties": { + "AuthenticationType": "AWS_IAM", + "Name": "aws-cdk-aws-appsync-target-integ-api" + } + }, + "baseApiSchemaB12C7BB0": { + "Type": "AWS::AppSync::GraphQLSchema", + "Properties": { + "ApiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "Definition": "type Event {\n message: String\n}\ntype Query {\n getTests: [Event]!\n}\ntype Mutation {\n publish(message: String!): Event\n}\n\ntype Subscription {\n onPublish: Event @aws_subscribe(mutations: [\"publish\"])\n}\n" + } + }, + "baseApinone7DDDEE3D": { + "Type": "AWS::AppSync::DataSource", + "Properties": { + "ApiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "Name": "none", + "Type": "NONE" + } + }, + "baseApipublisherC3F47EA2": { + "Type": "AWS::AppSync::Resolver", + "Properties": { + "ApiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "Code": "export const request = (ctx) => ({payload: null})\nexport const response = (ctx) => ctx.args.message", + "DataSourceName": "none", + "FieldName": "publish", + "Kind": "UNIT", + "Runtime": { + "Name": "APPSYNC_JS", + "RuntimeVersion": "1.0.0" + }, + "TypeName": "Mutation" + }, + "DependsOn": [ + "baseApinone7DDDEE3D", + "baseApiSchemaB12C7BB0" + ] + }, + "baseApiEventsRoleAC472BD7": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "events.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "baseApiEventsRoleDefaultPolicy94199357": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "appsync:GraphQL", + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":appsync:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":apis/", + { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "/types/Mutation/*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "baseApiEventsRoleDefaultPolicy94199357", + "Roles": [ + { + "Ref": "baseApiEventsRoleAC472BD7" + } + ] + } + }, + "Queue4A7E3555": { + "Type": "AWS::SQS::Queue", + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "QueuePolicy25439813": { + "Type": "AWS::SQS::QueuePolicy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "sqs:SendMessage", + "Condition": { + "ArnEquals": { + "aws:SourceArn": { + "Fn::GetAtt": [ + "TimerBF6F831F", + "Arn" + ] + } + } + }, + "Effect": "Allow", + "Principal": { + "Service": "events.amazonaws.com" + }, + "Resource": { + "Fn::GetAtt": [ + "Queue4A7E3555", + "Arn" + ] + }, + "Sid": "AllowEventRuleawscdkawsappsynctargetintegTimer2A2187F8" + } + ], + "Version": "2012-10-17" + }, + "Queues": [ + { + "Ref": "Queue4A7E3555" + } + ] + } + }, + "TimerBF6F831F": { + "Type": "AWS::Events::Rule", + "Properties": { + "ScheduleExpression": "rate(1 minute)", + "State": "ENABLED", + "Targets": [ + { + "AppSyncParameters": { + "GraphQLOperation": "mutation Publish($message: String!){ publish(message: $message) { message } }" + }, + "Arn": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "GraphQLEndpointArn" + ] + }, + "DeadLetterConfig": { + "Arn": { + "Fn::GetAtt": [ + "Queue4A7E3555", + "Arn" + ] + } + }, + "Id": "Target0", + "Input": "{\"message\":\"hello world\"}", + "RoleArn": { + "Fn::GetAtt": [ + "baseApiEventsRoleAC472BD7", + "Arn" + ] + } + } + ] + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.assets.json new file mode 100644 index 0000000000000..7c6f6b0aa6d9f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "awsappsyncintegDefaultTestDeployAssert7E101DC4.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/awsappsyncintegDefaultTestDeployAssert7E101DC4.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/integ.json new file mode 100644 index 0000000000000..3b6cc9115d7e0 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "aws-appsync-integ/DefaultTest": { + "stacks": [ + "aws-cdk-aws-appsync-target-integ" + ], + "assertionStack": "aws-appsync-integ/DefaultTest/DeployAssert", + "assertionStackName": "awsappsyncintegDefaultTestDeployAssert7E101DC4" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/manifest.json new file mode 100644 index 0000000000000..5ec8f4c577f0c --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/manifest.json @@ -0,0 +1,161 @@ +{ + "version": "36.0.0", + "artifacts": { + "aws-cdk-aws-appsync-target-integ.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "aws-cdk-aws-appsync-target-integ.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "aws-cdk-aws-appsync-target-integ": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "aws-cdk-aws-appsync-target-integ.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/fa005296bfe6cbad01df3cb800a324adbe7bcdb6273343c59488a74b1a9834a1.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "aws-cdk-aws-appsync-target-integ.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "aws-cdk-aws-appsync-target-integ.assets" + ], + "metadata": { + "/aws-cdk-aws-appsync-target-integ/baseApi/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApiCDA4D43A" + } + ], + "/aws-cdk-aws-appsync-target-integ/baseApi/Schema": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApiSchemaB12C7BB0" + } + ], + "/aws-cdk-aws-appsync-target-integ/baseApi/none/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApinone7DDDEE3D" + } + ], + "/aws-cdk-aws-appsync-target-integ/baseApi/publisher/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApipublisherC3F47EA2" + } + ], + "/aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApiEventsRoleAC472BD7" + } + ], + "/aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "baseApiEventsRoleDefaultPolicy94199357" + } + ], + "/aws-cdk-aws-appsync-target-integ/Queue/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Queue4A7E3555" + } + ], + "/aws-cdk-aws-appsync-target-integ/Queue/Policy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "QueuePolicy25439813" + } + ], + "/aws-cdk-aws-appsync-target-integ/Timer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "TimerBF6F831F" + } + ], + "/aws-cdk-aws-appsync-target-integ/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-cdk-aws-appsync-target-integ/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-cdk-aws-appsync-target-integ" + }, + "awsappsyncintegDefaultTestDeployAssert7E101DC4.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "awsappsyncintegDefaultTestDeployAssert7E101DC4.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "awsappsyncintegDefaultTestDeployAssert7E101DC4": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "awsappsyncintegDefaultTestDeployAssert7E101DC4.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "awsappsyncintegDefaultTestDeployAssert7E101DC4.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "awsappsyncintegDefaultTestDeployAssert7E101DC4.assets" + ], + "metadata": { + "/aws-appsync-integ/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/aws-appsync-integ/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "aws-appsync-integ/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/tree.json new file mode 100644 index 0000000000000..e95bb0b5f8d49 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.js.snapshot/tree.json @@ -0,0 +1,464 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "aws-cdk-aws-appsync-target-integ": { + "id": "aws-cdk-aws-appsync-target-integ", + "path": "aws-cdk-aws-appsync-target-integ", + "children": { + "baseApi": { + "id": "baseApi", + "path": "aws-cdk-aws-appsync-target-integ/baseApi", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AppSync::GraphQLApi", + "aws:cdk:cloudformation:props": { + "authenticationType": "AWS_IAM", + "name": "aws-cdk-aws-appsync-target-integ-api" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.CfnGraphQLApi", + "version": "0.0.0" + } + }, + "Schema": { + "id": "Schema", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/Schema", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AppSync::GraphQLSchema", + "aws:cdk:cloudformation:props": { + "apiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "definition": "type Event {\n message: String\n}\ntype Query {\n getTests: [Event]!\n}\ntype Mutation {\n publish(message: String!): Event\n}\n\ntype Subscription {\n onPublish: Event @aws_subscribe(mutations: [\"publish\"])\n}\n" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.CfnGraphQLSchema", + "version": "0.0.0" + } + }, + "LogGroup": { + "id": "LogGroup", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/LogGroup", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "none": { + "id": "none", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/none", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/none/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AppSync::DataSource", + "aws:cdk:cloudformation:props": { + "apiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "name": "none", + "type": "NONE" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.CfnDataSource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.NoneDataSource", + "version": "0.0.0" + } + }, + "publisher": { + "id": "publisher", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/publisher", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/publisher/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::AppSync::Resolver", + "aws:cdk:cloudformation:props": { + "apiId": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "code": "export const request = (ctx) => ({payload: null})\nexport const response = (ctx) => ctx.args.message", + "dataSourceName": "none", + "fieldName": "publish", + "kind": "UNIT", + "runtime": { + "name": "APPSYNC_JS", + "runtimeVersion": "1.0.0" + }, + "typeName": "Mutation" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.CfnResolver", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.Resolver", + "version": "0.0.0" + } + }, + "EventsRole": { + "id": "EventsRole", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/EventsRole", + "children": { + "ImportEventsRole": { + "id": "ImportEventsRole", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/ImportEventsRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "events.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/baseApi/EventsRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "appsync:GraphQL", + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":appsync:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":apis/", + { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "ApiId" + ] + }, + "/types/Mutation/*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "baseApiEventsRoleDefaultPolicy94199357", + "roles": [ + { + "Ref": "baseApiEventsRoleAC472BD7" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_appsync.GraphqlApi", + "version": "0.0.0" + } + }, + "Queue": { + "id": "Queue", + "path": "aws-cdk-aws-appsync-target-integ/Queue", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/Queue/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SQS::Queue", + "aws:cdk:cloudformation:props": {} + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_sqs.CfnQueue", + "version": "0.0.0" + } + }, + "Policy": { + "id": "Policy", + "path": "aws-cdk-aws-appsync-target-integ/Queue/Policy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/Queue/Policy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::SQS::QueuePolicy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "sqs:SendMessage", + "Condition": { + "ArnEquals": { + "aws:SourceArn": { + "Fn::GetAtt": [ + "TimerBF6F831F", + "Arn" + ] + } + } + }, + "Effect": "Allow", + "Principal": { + "Service": "events.amazonaws.com" + }, + "Resource": { + "Fn::GetAtt": [ + "Queue4A7E3555", + "Arn" + ] + }, + "Sid": "AllowEventRuleawscdkawsappsynctargetintegTimer2A2187F8" + } + ], + "Version": "2012-10-17" + }, + "queues": [ + { + "Ref": "Queue4A7E3555" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_sqs.CfnQueuePolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_sqs.QueuePolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_sqs.Queue", + "version": "0.0.0" + } + }, + "Timer": { + "id": "Timer", + "path": "aws-cdk-aws-appsync-target-integ/Timer", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-aws-appsync-target-integ/Timer/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Events::Rule", + "aws:cdk:cloudformation:props": { + "scheduleExpression": "rate(1 minute)", + "state": "ENABLED", + "targets": [ + { + "id": "Target0", + "arn": { + "Fn::GetAtt": [ + "baseApiCDA4D43A", + "GraphQLEndpointArn" + ] + }, + "roleArn": { + "Fn::GetAtt": [ + "baseApiEventsRoleAC472BD7", + "Arn" + ] + }, + "deadLetterConfig": { + "arn": { + "Fn::GetAtt": [ + "Queue4A7E3555", + "Arn" + ] + } + }, + "appSyncParameters": { + "graphQlOperation": "mutation Publish($message: String!){ publish(message: $message) { message } }" + }, + "input": "{\"message\":\"hello world\"}" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_events.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_events.Rule", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-aws-appsync-target-integ/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-aws-appsync-target-integ/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "aws-appsync-integ": { + "id": "aws-appsync-integ", + "path": "aws-appsync-integ", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "aws-appsync-integ/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "aws-appsync-integ/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "aws-appsync-integ/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-appsync-integ/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-appsync-integ/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.ts new file mode 100644 index 0000000000000..82622e771cc43 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/appsync/integ.appsync-events.ts @@ -0,0 +1,50 @@ +import * as events from 'aws-cdk-lib/aws-events'; +import * as appsync from 'aws-cdk-lib/aws-appsync'; +import * as sqs from 'aws-cdk-lib/aws-sqs'; +import * as cdk from 'aws-cdk-lib'; +import * as targets from 'aws-cdk-lib/aws-events-targets'; +import * as path from 'path'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; + +const app = new cdk.App(); + +class AwsAppSyncEvent extends cdk.Stack { + + constructor(scope: cdk.App, id: string, props?: cdk.StackProps) { + super(scope, id, props); + + const api = new appsync.GraphqlApi(this, 'baseApi', { + name: 'aws-cdk-aws-appsync-target-integ-api', + definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.test.graphql')), + authorizationConfig: { defaultAuthorization: { authorizationType: appsync.AuthorizationType.IAM } }, + }); + const none = api.addNoneDataSource('none'); + none.createResolver('publisher', { + typeName: 'Mutation', + fieldName: 'publish', + code: appsync.AssetCode.fromInline(` +export const request = (ctx) => ({payload: null}) +export const response = (ctx) => ctx.args.message +`.trim()), + runtime: appsync.FunctionRuntime.JS_1_0_0, + }); + + const graphQLOperation = 'mutation Publish($message: String!){ publish(message: $message) { message } }'; + const queue = new sqs.Queue(this, 'Queue'); + + const timer = new events.Rule(this, 'Timer', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + timer.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: 'hello world', + }), + deadLetterQueue: queue, + })); + + } +} + +const stack = new AwsAppSyncEvent(app, 'aws-cdk-aws-appsync-target-integ'); +new IntegTest(app, 'aws-appsync-integ', { testCases: [stack] }); \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/cdk.out new file mode 100644 index 0000000000000..1f0068d32659a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.assets.json new file mode 100644 index 0000000000000..d447c72cf9240 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "e3b7e8636fe810045c29b035b190ac34272928317373d89cfb9d32fba5f6c4ae": { + "source": { + "path": "dummy-stack.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "e3b7e8636fe810045c29b035b190ac34272928317373d89cfb9d32fba5f6c4ae.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.template.json new file mode 100644 index 0000000000000..a8f6bc51fa876 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummy-stack.template.json @@ -0,0 +1,83 @@ +{ + "Parameters": { + "UserParameter": { + "Type": "String", + "Default": "arn:aws:iam::123456789012:user/OthersExternalIamUser" + }, + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Resources": { + "User00B015A1": { + "Type": "AWS::IAM::User" + } + }, + "Outputs": { + "UserOutput": { + "Value": "123456789012" + }, + "User2Output": { + "Value": { + "Fn::Select": [ + 4, + { + "Fn::Split": [ + ":", + { + "Ref": "UserParameter" + } + ] + } + ] + } + }, + "User3Output": { + "Value": { + "Fn::Select": [ + 4, + { + "Fn::Split": [ + ":", + { + "Fn::GetAtt": [ + "User00B015A1", + "Arn" + ] + } + ] + } + ] + } + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.assets.json new file mode 100644 index 0000000000000..3ef6c8a37cafc --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.assets.json @@ -0,0 +1,19 @@ +{ + "version": "36.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "dummystackintegtestDefaultTestDeployAssertF190D0AF.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/dummystackintegtestDefaultTestDeployAssertF190D0AF.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/integ.json new file mode 100644 index 0000000000000..4e5f1ec5ea743 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "36.0.0", + "testCases": { + "dummy-stack/integ-test/DefaultTest": { + "stacks": [ + "dummy-stack" + ], + "assertionStack": "dummy-stack/integ-test/DefaultTest/DeployAssert", + "assertionStackName": "dummystackintegtestDefaultTestDeployAssertF190D0AF" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/manifest.json new file mode 100644 index 0000000000000..5eb37c4e70ed3 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/manifest.json @@ -0,0 +1,137 @@ +{ + "version": "36.0.0", + "artifacts": { + "dummystackintegtestDefaultTestDeployAssertF190D0AF.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "dummystackintegtestDefaultTestDeployAssertF190D0AF.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dummystackintegtestDefaultTestDeployAssertF190D0AF": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "dummystackintegtestDefaultTestDeployAssertF190D0AF.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "dummystackintegtestDefaultTestDeployAssertF190D0AF.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "dummystackintegtestDefaultTestDeployAssertF190D0AF.assets" + ], + "metadata": { + "/dummy-stack/integ-test/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/dummy-stack/integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "dummy-stack/integ-test/DefaultTest/DeployAssert" + }, + "dummy-stack.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "dummy-stack.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dummy-stack": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "dummy-stack.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e3b7e8636fe810045c29b035b190ac34272928317373d89cfb9d32fba5f6c4ae.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "dummy-stack.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "dummy-stack.assets" + ], + "metadata": { + "/dummy-stack/UserParameter": [ + { + "type": "aws:cdk:logicalId", + "data": "UserParameter" + } + ], + "/dummy-stack/User/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "User00B015A1" + } + ], + "/dummy-stack/UserOutput": [ + { + "type": "aws:cdk:logicalId", + "data": "UserOutput" + } + ], + "/dummy-stack/User2Output": [ + { + "type": "aws:cdk:logicalId", + "data": "User2Output" + } + ], + "/dummy-stack/User3Output": [ + { + "type": "aws:cdk:logicalId", + "data": "User3Output" + } + ], + "/dummy-stack/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/dummy-stack/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "dummy-stack" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/tree.json new file mode 100644 index 0000000000000..546fb5e87665e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.js.snapshot/tree.json @@ -0,0 +1,179 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "dummy-stack": { + "id": "dummy-stack", + "path": "dummy-stack", + "children": { + "UserParameter": { + "id": "UserParameter", + "path": "dummy-stack/UserParameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "imported-user": { + "id": "imported-user", + "path": "dummy-stack/imported-user", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "imported-user2": { + "id": "imported-user2", + "path": "dummy-stack/imported-user2", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "User": { + "id": "User", + "path": "dummy-stack/User", + "children": { + "Resource": { + "id": "Resource", + "path": "dummy-stack/User/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::User", + "aws:cdk:cloudformation:props": {} + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnUser", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.User", + "version": "0.0.0" + } + }, + "LocalUser": { + "id": "LocalUser", + "path": "dummy-stack/LocalUser", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "UserOutput": { + "id": "UserOutput", + "path": "dummy-stack/UserOutput", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "User2Output": { + "id": "User2Output", + "path": "dummy-stack/User2Output", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "User3Output": { + "id": "User3Output", + "path": "dummy-stack/User3Output", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "integ-test": { + "id": "integ-test", + "path": "dummy-stack/integ-test", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "dummy-stack/integ-test/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "dummy-stack/integ-test/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "dummy-stack/integ-test/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "dummy-stack/integ-test/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "dummy-stack/integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "dummy-stack/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "dummy-stack/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.ts new file mode 100644 index 0000000000000..1ba591ce68a7b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-iam/test/integ.user-import.ts @@ -0,0 +1,30 @@ +import { + App, Stack, CfnParameter, + aws_iam as iam, + CfnOutput, +} from 'aws-cdk-lib'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; + +const app = new App(); +const stack = new Stack(app, 'dummy-stack'); + +const userArn = 'arn:aws:iam::123456789012:user/OthersExternalIamUser'; + +const userparam = new CfnParameter(stack, 'UserParameter', { + default: userArn, +}); + +const imported = iam.User.fromUserArn(stack, 'imported-user', userArn); +const imported2 = iam.User.fromUserArn(stack, 'imported-user2', userparam.valueAsString ); +const imported3 = iam.User.fromUserArn(stack, 'LocalUser', new iam.User(stack, 'User').userArn); + +// should be 123456789012 +new CfnOutput(stack, 'UserOutput', { value: imported.principalAccount! }); +// should be 123456789012 +new CfnOutput(stack, 'User2Output', { value: imported2.principalAccount! }); +// should be your current account +new CfnOutput(stack, 'User3Output', { value: imported3.principalAccount! }); + +new IntegTest(stack, 'integ-test', { + testCases: [stack], +}); \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.s3.js.snapshot/lambda-event-source-s3.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.s3.js.snapshot/lambda-event-source-s3.template.json index 0288a64914e5c..86b32b9b5104c 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.s3.js.snapshot/lambda-event-source-s3.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.s3.js.snapshot/lambda-event-source-s3.template.json @@ -174,7 +174,8 @@ "Managed": true }, "DependsOn": [ - "BAllowBucketNotificationsTolambdaeventsources3F741608059EF9F709" + "BAllowBucketNotificationsTolambdaeventsources3F741608059EF9F709", + "BPolicy3F02723E" ] }, "BAllowBucketNotificationsTolambdaeventsources3F741608059EF9F709": { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts index b165b0e5f9149..bc211978111cb 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts @@ -1,9 +1,13 @@ /* eslint-disable no-console */ // @ts-ignore -import { S3Client } from '@aws-sdk/client-s3'; // eslint-disable-line import/no-extraneous-dependencies, import/no-unresolved - -const s3 = new S3Client({}); +import { DynamoDBClient, DescribeTableCommand } from '@aws-sdk/client-dynamodb'; // eslint-disable-line import/no-extraneous-dependencies export async function handler() { - console.log(s3); -} + const client = new DynamoDBClient(); + const input = { + TableName: process.env.TABLE_NAME, + }; + const command = new DescribeTableCommand(input); + const response = await client.send(command); + console.log(response); +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies.ts index 0783e45ad57fb..766c8581477f0 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies.ts @@ -1,10 +1,8 @@ /* eslint-disable no-console */ -import { S3 } from '@aws-sdk/client-s3'; // eslint-disable-line import/no-extraneous-dependencies +// @ts-ignore import delay from 'delay'; -const s3 = new S3(); - export async function handler() { - console.log(s3); await delay(5); -} + console.log('log after delay'); +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.assets.json index b5618e145828d..8a017984915f4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.assets.json @@ -1,20 +1,20 @@ { "version": "36.0.0", "files": { - "556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4": { + "cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814": { "source": { - "path": "asset.556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.bundle", + "path": "asset.cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.bundle", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.zip", + "objectKey": "cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "29c0ae3d3f57ba2091777f6d28ef5843b1d6910f04d537c798c344ad1c6a056e": { + "8bca6889a7e6bcc727cad2db88eca35f5718b95af7357941f96def6b3340ef3a": { "source": { "path": "LambdaDependenciesDefaultTestDeployAssert259C940B.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "29c0ae3d3f57ba2091777f6d28ef5843b1d6910f04d537c798c344ad1c6a056e.json", + "objectKey": "8bca6889a7e6bcc727cad2db88eca35f5718b95af7357941f96def6b3340ef3a.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.template.json index 59be737da809c..d32a3309d8280 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/LambdaDependenciesDefaultTestDeployAssert259C940B.template.json @@ -1,6 +1,6 @@ { "Resources": { - "LambdaInvoke5050b1f640cc49956b59f2a71febe95c": { + "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971": { "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { "ServiceToken": { @@ -19,7 +19,7 @@ [ "\"", { - "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies:ExportsOutputRefexternal068F12D12C72A375" + "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3:ExportsOutputRefexternalsdkv3B69F9D996ACDF2E7" }, "\"" ] @@ -27,17 +27,17 @@ } }, "flattenResponse": "false", - "salt": "1709678419684" + "salt": "1715124526551" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, - "LambdaInvoke5050b1f640cc49956b59f2a71febe95cInvokeB4FBC029": { + "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971Invoke970717DE": { "Type": "AWS::Lambda::Permission", "Properties": { "Action": "lambda:InvokeFunction", "FunctionName": { - "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies:ExportsOutputRefexternal068F12D12C72A375" + "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3:ExportsOutputRefexternalsdkv3B69F9D996ACDF2E7" }, "Principal": { "Fn::GetAtt": [ @@ -73,46 +73,6 @@ "PolicyDocument": { "Version": "2012-10-17", "Statement": [ - { - "Action": [ - "lambda:Invoke" - ], - "Effect": "Allow", - "Resource": [ - "*" - ] - }, - { - "Action": [ - "lambda:InvokeFunction" - ], - "Effect": "Allow", - "Resource": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":lambda:", - { - "Ref": "AWS::Region" - }, - ":", - { - "Ref": "AWS::AccountId" - }, - ":function:", - { - "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies:ExportsOutputRefexternal068F12D12C72A375" - } - ] - ] - } - ] - }, { "Action": [ "lambda:Invoke" @@ -207,7 +167,7 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.zip" + "S3Key": "cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.zip" }, "Timeout": 120, "Handler": "index.handler", @@ -219,53 +179,6 @@ } } }, - "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971": { - "Type": "Custom::DeployAssert@SdkCallLambdainvoke", - "Properties": { - "ServiceToken": { - "Fn::GetAtt": [ - "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F", - "Arn" - ] - }, - "service": "Lambda", - "api": "invoke", - "expected": "{\"$ObjectLike\":{\"StatusCode\":200,\"ExecutedVersion\":\"$LATEST\",\"Payload\":\"null\"}}", - "parameters": { - "FunctionName": { - "Fn::Join": [ - "", - [ - "\"", - { - "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3:ExportsOutputRefexternalsdkv3B69F9D996ACDF2E7" - }, - "\"" - ] - ] - } - }, - "flattenResponse": "false", - "salt": "1709678419687" - }, - "UpdateReplacePolicy": "Delete", - "DeletionPolicy": "Delete" - }, - "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971Invoke970717DE": { - "Type": "AWS::Lambda::Permission", - "Properties": { - "Action": "lambda:InvokeFunction", - "FunctionName": { - "Fn::ImportValue": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3:ExportsOutputRefexternalsdkv3B69F9D996ACDF2E7" - }, - "Principal": { - "Fn::GetAtt": [ - "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", - "Arn" - ] - } - } - }, "LambdaInvokee35a5227846e334cb95a90bacfbfb877": { "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { @@ -293,7 +206,7 @@ } }, "flattenResponse": "false", - "salt": "1709678419688" + "salt": "1715124526551" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" @@ -315,14 +228,6 @@ } }, "Outputs": { - "AssertionResultsLambdaInvoke5050b1f640cc49956b59f2a71febe95c": { - "Value": { - "Fn::GetAtt": [ - "LambdaInvoke5050b1f640cc49956b59f2a71febe95c", - "assertion" - ] - } - }, "AssertionResultsLambdaInvoke7d0602e4b9f40ae057f935d874b5f971": { "Value": { "Fn::GetAtt": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66/index.js new file mode 100644 index 0000000000000..b1179340fbcdc --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66/index.js @@ -0,0 +1,26720 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __esm = (fn, res) => function __init() { + return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; +}; +var __commonJS = (cb, mod) => function __require() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; +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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); + +// node_modules/tslib/tslib.es6.mjs +var tslib_es6_exports = {}; +__export(tslib_es6_exports, { + __addDisposableResource: () => __addDisposableResource, + __assign: () => __assign, + __asyncDelegator: () => __asyncDelegator, + __asyncGenerator: () => __asyncGenerator, + __asyncValues: () => __asyncValues, + __await: () => __await, + __awaiter: () => __awaiter, + __classPrivateFieldGet: () => __classPrivateFieldGet, + __classPrivateFieldIn: () => __classPrivateFieldIn, + __classPrivateFieldSet: () => __classPrivateFieldSet, + __createBinding: () => __createBinding, + __decorate: () => __decorate, + __disposeResources: () => __disposeResources, + __esDecorate: () => __esDecorate, + __exportStar: () => __exportStar, + __extends: () => __extends, + __generator: () => __generator, + __importDefault: () => __importDefault, + __importStar: () => __importStar, + __makeTemplateObject: () => __makeTemplateObject, + __metadata: () => __metadata, + __param: () => __param, + __propKey: () => __propKey, + __read: () => __read, + __rest: () => __rest, + __runInitializers: () => __runInitializers, + __setFunctionName: () => __setFunctionName, + __spread: () => __spread, + __spreadArray: () => __spreadArray, + __spreadArrays: () => __spreadArrays, + __values: () => __values, + default: () => tslib_es6_default +}); +function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} +function __rest(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} +function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") + r = Reflect.decorate(decorators, target, key, desc); + else + for (var i = decorators.length - 1; i >= 0; i--) + if (d = decorators[i]) + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} +function __param(paramIndex, decorator) { + return function(target, key) { + decorator(target, key, paramIndex); + }; +} +function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { + function accept(f) { + if (f !== void 0 && typeof f !== "function") + throw new TypeError("Function expected"); + return f; + } + var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; + var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; + var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); + var _, done = false; + for (var i = decorators.length - 1; i >= 0; i--) { + var context = {}; + for (var p in contextIn) + context[p] = p === "access" ? {} : contextIn[p]; + for (var p in contextIn.access) + context.access[p] = contextIn.access[p]; + context.addInitializer = function(f) { + if (done) + throw new TypeError("Cannot add initializers after decoration has completed"); + extraInitializers.push(accept(f || null)); + }; + var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); + if (kind === "accessor") { + if (result === void 0) + continue; + if (result === null || typeof result !== "object") + throw new TypeError("Object expected"); + if (_ = accept(result.get)) + descriptor.get = _; + if (_ = accept(result.set)) + descriptor.set = _; + if (_ = accept(result.init)) + initializers.unshift(_); + } else if (_ = accept(result)) { + if (kind === "field") + initializers.unshift(_); + else + descriptor[key] = _; + } + } + if (target) + Object.defineProperty(target, contextIn.name, descriptor); + done = true; +} +function __runInitializers(thisArg, initializers, value) { + var useValue = arguments.length > 2; + for (var i = 0; i < initializers.length; i++) { + value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); + } + return useValue ? value : void 0; +} +function __propKey(x) { + return typeof x === "symbol" ? x : "".concat(x); +} +function __setFunctionName(f, name, prefix) { + if (typeof name === "symbol") + name = name.description ? "[".concat(name.description, "]") : ""; + return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); +} +function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") + return Reflect.metadata(metadataKey, metadataValue); +} +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } +} +function __exportStar(m, o) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) + __createBinding(o, m, p); +} +function __values(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function __read(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; +} +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} +function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +} +function __spreadArray(to, from, pack) { + if (pack || arguments.length === 2) + for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) + ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +} +function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); +} +function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } +} +function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function(e) { + throw e; + }), verb("return"), i[Symbol.iterator] = function() { + return this; + }, i; + function verb(n, f) { + i[n] = o[n] ? function(v) { + return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; + } : f; + } +} +function __asyncValues(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); + }; + } + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ value: v2, done: d }); + }, reject); + } +} +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { + Object.defineProperty(cooked, "raw", { value: raw }); + } else { + cooked.raw = raw; + } + return cooked; +} +function __importStar(mod) { + if (mod && mod.__esModule) + return mod; + var result = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding(result, mod, k); + } + __setModuleDefault(result, mod); + return result; +} +function __importDefault(mod) { + return mod && mod.__esModule ? mod : { default: mod }; +} +function __classPrivateFieldGet(receiver, state, kind, f) { + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a getter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot read private member from an object whose class did not declare it"); + return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); +} +function __classPrivateFieldSet(receiver, state, value, kind, f) { + if (kind === "m") + throw new TypeError("Private method is not writable"); + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a setter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot write private member to an object whose class did not declare it"); + return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; +} +function __classPrivateFieldIn(state, receiver) { + if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") + throw new TypeError("Cannot use 'in' operator on non-object"); + return typeof state === "function" ? receiver === state : state.has(receiver); +} +function __addDisposableResource(env, value, async) { + if (value !== null && value !== void 0) { + if (typeof value !== "object" && typeof value !== "function") + throw new TypeError("Object expected."); + var dispose; + if (async) { + if (!Symbol.asyncDispose) + throw new TypeError("Symbol.asyncDispose is not defined."); + dispose = value[Symbol.asyncDispose]; + } + if (dispose === void 0) { + if (!Symbol.dispose) + throw new TypeError("Symbol.dispose is not defined."); + dispose = value[Symbol.dispose]; + } + if (typeof dispose !== "function") + throw new TypeError("Object not disposable."); + env.stack.push({ value, dispose, async }); + } else if (async) { + env.stack.push({ async: true }); + } + return value; +} +function __disposeResources(env) { + function fail(e) { + env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; + env.hasError = true; + } + function next() { + while (env.stack.length) { + var rec = env.stack.pop(); + try { + var result = rec.dispose && rec.dispose.call(rec.value); + if (rec.async) + return Promise.resolve(result).then(next, function(e) { + fail(e); + return next(); + }); + } catch (e) { + fail(e); + } + } + if (env.hasError) + throw env.error; + } + return next(); +} +var extendStatics, __assign, __createBinding, __setModuleDefault, _SuppressedError, tslib_es6_default; +var init_tslib_es6 = __esm({ + "node_modules/tslib/tslib.es6.mjs"() { + extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + __assign = function() { + __assign = Object.assign || function __assign2(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); + }; + __createBinding = Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }; + __setModuleDefault = Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }; + _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) { + var e = new Error(message); + return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; + }; + tslib_es6_default = { + __extends, + __assign, + __rest, + __decorate, + __param, + __metadata, + __awaiter, + __generator, + __createBinding, + __exportStar, + __values, + __read, + __spread, + __spreadArrays, + __spreadArray, + __await, + __asyncGenerator, + __asyncDelegator, + __asyncValues, + __makeTemplateObject, + __importStar, + __importDefault, + __classPrivateFieldGet, + __classPrivateFieldSet, + __classPrivateFieldIn, + __addDisposableResource, + __disposeResources + }; + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/configurations.js +var require_configurations = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/configurations.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS = void 0; + var ENV_ENDPOINT_DISCOVERY = ["AWS_ENABLE_ENDPOINT_DISCOVERY", "AWS_ENDPOINT_DISCOVERY_ENABLED"]; + var CONFIG_ENDPOINT_DISCOVERY = "endpoint_discovery_enabled"; + var isFalsy = (value) => ["false", "0"].indexOf(value) >= 0; + exports2.NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => { + for (let i = 0; i < ENV_ENDPOINT_DISCOVERY.length; i++) { + const envKey = ENV_ENDPOINT_DISCOVERY[i]; + if (envKey in env) { + const value = env[envKey]; + if (value === "") { + throw Error(`Environment variable ${envKey} can't be empty of undefined, got "${value}"`); + } + return !isFalsy(value); + } + } + }, + configFileSelector: (profile) => { + if (CONFIG_ENDPOINT_DISCOVERY in profile) { + const value = profile[CONFIG_ENDPOINT_DISCOVERY]; + if (value === void 0) { + throw Error(`Shared config entry ${CONFIG_ENDPOINT_DISCOVERY} can't be undefined, got "${value}"`); + } + return !isFalsy(value); + } + }, + default: void 0 + }; + } +}); + +// node_modules/@smithy/types/dist-cjs/index.js +var require_dist_cjs = __commonJS({ + "node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + AlgorithmId: () => AlgorithmId, + EndpointURLScheme: () => EndpointURLScheme, + FieldPosition: () => FieldPosition, + HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation, + HttpAuthLocation: () => HttpAuthLocation, + IniSectionType: () => IniSectionType, + RequestHandlerProtocol: () => RequestHandlerProtocol, + SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY, + getDefaultClientConfiguration: () => getDefaultClientConfiguration, + resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig + }); + module2.exports = __toCommonJS2(src_exports); + var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => { + HttpAuthLocation2["HEADER"] = "header"; + HttpAuthLocation2["QUERY"] = "query"; + return HttpAuthLocation2; + })(HttpAuthLocation || {}); + var HttpApiKeyAuthLocation = /* @__PURE__ */ ((HttpApiKeyAuthLocation2) => { + HttpApiKeyAuthLocation2["HEADER"] = "header"; + HttpApiKeyAuthLocation2["QUERY"] = "query"; + return HttpApiKeyAuthLocation2; + })(HttpApiKeyAuthLocation || {}); + var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => { + EndpointURLScheme2["HTTP"] = "http"; + EndpointURLScheme2["HTTPS"] = "https"; + return EndpointURLScheme2; + })(EndpointURLScheme || {}); + var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => { + AlgorithmId2["MD5"] = "md5"; + AlgorithmId2["CRC32"] = "crc32"; + AlgorithmId2["CRC32C"] = "crc32c"; + AlgorithmId2["SHA1"] = "sha1"; + AlgorithmId2["SHA256"] = "sha256"; + return AlgorithmId2; + })(AlgorithmId || {}); + var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + const checksumAlgorithms = []; + if (runtimeConfig.sha256 !== void 0) { + checksumAlgorithms.push({ + algorithmId: () => "sha256", + checksumConstructor: () => runtimeConfig.sha256 + }); + } + if (runtimeConfig.md5 != void 0) { + checksumAlgorithms.push({ + algorithmId: () => "md5", + checksumConstructor: () => runtimeConfig.md5 + }); + } + return { + _checksumAlgorithms: checksumAlgorithms, + addChecksumAlgorithm(algo) { + this._checksumAlgorithms.push(algo); + }, + checksumAlgorithms() { + return this._checksumAlgorithms; + } + }; + }, "getChecksumConfiguration"); + var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { + const runtimeConfig = {}; + clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => { + runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor(); + }); + return runtimeConfig; + }, "resolveChecksumRuntimeConfig"); + var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + return { + ...getChecksumConfiguration(runtimeConfig) + }; + }, "getDefaultClientConfiguration"); + var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { + return { + ...resolveChecksumRuntimeConfig(config) + }; + }, "resolveDefaultRuntimeConfig"); + var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => { + FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER"; + FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER"; + return FieldPosition2; + })(FieldPosition || {}); + var SMITHY_CONTEXT_KEY = "__smithy_context"; + var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => { + IniSectionType2["PROFILE"] = "profile"; + IniSectionType2["SSO_SESSION"] = "sso-session"; + IniSectionType2["SERVICES"] = "services"; + return IniSectionType2; + })(IniSectionType || {}); + var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => { + RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9"; + RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0"; + RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0"; + return RequestHandlerProtocol2; + })(RequestHandlerProtocol || {}); + } +}); + +// node_modules/@smithy/protocol-http/dist-cjs/index.js +var require_dist_cjs2 = __commonJS({ + "node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + Field: () => Field, + Fields: () => Fields, + HttpRequest: () => HttpRequest, + HttpResponse: () => HttpResponse, + getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration, + isValidHostname: () => isValidHostname, + resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig + }); + module2.exports = __toCommonJS2(src_exports); + var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let httpHandler = runtimeConfig.httpHandler; + return { + setHttpHandler(handler2) { + httpHandler = handler2; + }, + httpHandler() { + return httpHandler; + }, + updateHttpClientConfig(key, value) { + httpHandler.updateHttpClientConfig(key, value); + }, + httpHandlerConfigs() { + return httpHandler.httpHandlerConfigs(); + } + }; + }, "getHttpHandlerExtensionConfiguration"); + var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name((httpHandlerExtensionConfiguration) => { + return { + httpHandler: httpHandlerExtensionConfiguration.httpHandler() + }; + }, "resolveHttpHandlerRuntimeConfig"); + var import_types = require_dist_cjs(); + var _Field = class _Field { + constructor({ name, kind = import_types.FieldPosition.HEADER, values = [] }) { + this.name = name; + this.kind = kind; + this.values = values; + } + /** + * Appends a value to the field. + * + * @param value The value to append. + */ + add(value) { + this.values.push(value); + } + /** + * Overwrite existing field values. + * + * @param values The new field values. + */ + set(values) { + this.values = values; + } + /** + * Remove all matching entries from list. + * + * @param value Value to remove. + */ + remove(value) { + this.values = this.values.filter((v) => v !== value); + } + /** + * Get comma-delimited string. + * + * @returns String representation of {@link Field}. + */ + toString() { + return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", "); + } + /** + * Get string values as a list + * + * @returns Values in {@link Field} as a list. + */ + get() { + return this.values; + } + }; + __name(_Field, "Field"); + var Field = _Field; + var _Fields = class _Fields { + constructor({ fields = [], encoding = "utf-8" }) { + this.entries = {}; + fields.forEach(this.setField.bind(this)); + this.encoding = encoding; + } + /** + * Set entry for a {@link Field} name. The `name` + * attribute will be used to key the collection. + * + * @param field The {@link Field} to set. + */ + setField(field) { + this.entries[field.name.toLowerCase()] = field; + } + /** + * Retrieve {@link Field} entry by name. + * + * @param name The name of the {@link Field} entry + * to retrieve + * @returns The {@link Field} if it exists. + */ + getField(name) { + return this.entries[name.toLowerCase()]; + } + /** + * Delete entry from collection. + * + * @param name Name of the entry to delete. + */ + removeField(name) { + delete this.entries[name.toLowerCase()]; + } + /** + * Helper function for retrieving specific types of fields. + * Used to grab all headers or all trailers. + * + * @param kind {@link FieldPosition} of entries to retrieve. + * @returns The {@link Field} entries with the specified + * {@link FieldPosition}. + */ + getByType(kind) { + return Object.values(this.entries).filter((field) => field.kind === kind); + } + }; + __name(_Fields, "Fields"); + var Fields = _Fields; + var _HttpRequest = class _HttpRequest2 { + constructor(options) { + this.method = options.method || "GET"; + this.hostname = options.hostname || "localhost"; + this.port = options.port; + this.query = options.query || {}; + this.headers = options.headers || {}; + this.body = options.body; + this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:"; + this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/"; + this.username = options.username; + this.password = options.password; + this.fragment = options.fragment; + } + static isInstance(request) { + if (!request) + return false; + const req = request; + return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object"; + } + clone() { + const cloned = new _HttpRequest2({ + ...this, + headers: { ...this.headers } + }); + if (cloned.query) + cloned.query = cloneQuery(cloned.query); + return cloned; + } + }; + __name(_HttpRequest, "HttpRequest"); + var HttpRequest = _HttpRequest; + function cloneQuery(query) { + return Object.keys(query).reduce((carry, paramName) => { + const param = query[paramName]; + return { + ...carry, + [paramName]: Array.isArray(param) ? [...param] : param + }; + }, {}); + } + __name(cloneQuery, "cloneQuery"); + var _HttpResponse = class _HttpResponse { + constructor(options) { + this.statusCode = options.statusCode; + this.reason = options.reason; + this.headers = options.headers || {}; + this.body = options.body; + } + static isInstance(response) { + if (!response) + return false; + const resp = response; + return typeof resp.statusCode === "number" && typeof resp.headers === "object"; + } + }; + __name(_HttpResponse, "HttpResponse"); + var HttpResponse = _HttpResponse; + function isValidHostname(hostname) { + const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/; + return hostPattern.test(hostname); + } + __name(isValidHostname, "isValidHostname"); + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/getCacheKey.js +var require_getCacheKey = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/getCacheKey.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getCacheKey = void 0; + var getCacheKey = async (commandName, config, options) => { + const { accessKeyId } = await config.credentials(); + const { identifiers } = options; + return JSON.stringify({ + ...accessKeyId && { accessKeyId }, + ...identifiers && { + commandName, + identifiers: Object.entries(identifiers).sort().reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {}) + } + }); + }; + exports2.getCacheKey = getCacheKey; + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/updateDiscoveredEndpointInCache.js +var require_updateDiscoveredEndpointInCache = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/updateDiscoveredEndpointInCache.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.updateDiscoveredEndpointInCache = void 0; + var requestQueue = {}; + var updateDiscoveredEndpointInCache = async (config, options) => new Promise((resolve, reject) => { + const { endpointCache } = config; + const { cacheKey, commandName, identifiers } = options; + const endpoints = endpointCache.get(cacheKey); + if (endpoints && endpoints.length === 1 && endpoints[0].Address === "") { + if (options.isDiscoveredEndpointRequired) { + if (!requestQueue[cacheKey]) + requestQueue[cacheKey] = []; + requestQueue[cacheKey].push({ resolve, reject }); + } else { + resolve(); + } + } else if (endpoints && endpoints.length > 0) { + resolve(); + } else { + const placeholderEndpoints = [{ Address: "", CachePeriodInMinutes: 1 }]; + endpointCache.set(cacheKey, placeholderEndpoints); + const command = new options.endpointDiscoveryCommandCtor({ + Operation: commandName.slice(0, -7), + Identifiers: identifiers + }); + const handler2 = command.resolveMiddleware(options.clientStack, config, options.options); + handler2(command).then((result) => { + endpointCache.set(cacheKey, result.output.Endpoints); + if (requestQueue[cacheKey]) { + requestQueue[cacheKey].forEach(({ resolve: resolve2 }) => { + resolve2(); + }); + delete requestQueue[cacheKey]; + } + resolve(); + }).catch((error) => { + endpointCache.delete(cacheKey); + const errorToThrow = Object.assign(new Error(`The operation to discover endpoint failed. Please retry, or provide a custom endpoint and disable endpoint discovery to proceed.`), { reason: error }); + if (requestQueue[cacheKey]) { + requestQueue[cacheKey].forEach(({ reject: reject2 }) => { + reject2(errorToThrow); + }); + delete requestQueue[cacheKey]; + } + if (options.isDiscoveredEndpointRequired) { + reject(errorToThrow); + } else { + endpointCache.set(cacheKey, placeholderEndpoints); + resolve(); + } + }); + } + }); + exports2.updateDiscoveredEndpointInCache = updateDiscoveredEndpointInCache; + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/endpointDiscoveryMiddleware.js +var require_endpointDiscoveryMiddleware = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/endpointDiscoveryMiddleware.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.endpointDiscoveryMiddleware = void 0; + var protocol_http_1 = require_dist_cjs2(); + var getCacheKey_1 = require_getCacheKey(); + var updateDiscoveredEndpointInCache_1 = require_updateDiscoveredEndpointInCache(); + var endpointDiscoveryMiddleware = (config, middlewareConfig) => (next, context) => async (args) => { + if (config.isCustomEndpoint) { + if (config.isClientEndpointDiscoveryEnabled) { + throw new Error(`Custom endpoint is supplied; endpointDiscoveryEnabled must not be true.`); + } + return next(args); + } + const { endpointDiscoveryCommandCtor } = config; + const { isDiscoveredEndpointRequired, identifiers } = middlewareConfig; + const clientName = context.clientName; + const commandName = context.commandName; + const isEndpointDiscoveryEnabled = await config.endpointDiscoveryEnabled(); + const cacheKey = await (0, getCacheKey_1.getCacheKey)(commandName, config, { identifiers }); + if (isDiscoveredEndpointRequired) { + if (isEndpointDiscoveryEnabled === false) { + throw new Error(`Endpoint Discovery is disabled but ${commandName} on ${clientName} requires it. Please check your configurations.`); + } + await (0, updateDiscoveredEndpointInCache_1.updateDiscoveredEndpointInCache)(config, { + ...middlewareConfig, + commandName, + cacheKey, + endpointDiscoveryCommandCtor + }); + } else if (isEndpointDiscoveryEnabled) { + (0, updateDiscoveredEndpointInCache_1.updateDiscoveredEndpointInCache)(config, { + ...middlewareConfig, + commandName, + cacheKey, + endpointDiscoveryCommandCtor + }); + } + const { request } = args; + if (cacheKey && protocol_http_1.HttpRequest.isInstance(request)) { + const endpoint = config.endpointCache.getEndpoint(cacheKey); + if (endpoint) { + request.hostname = endpoint; + } + } + return next(args); + }; + exports2.endpointDiscoveryMiddleware = endpointDiscoveryMiddleware; + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/getEndpointDiscoveryPlugin.js +var require_getEndpointDiscoveryPlugin = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/getEndpointDiscoveryPlugin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointDiscoveryOptionalPlugin = exports2.getEndpointDiscoveryRequiredPlugin = exports2.getEndpointDiscoveryPlugin = exports2.endpointDiscoveryMiddlewareOptions = void 0; + var endpointDiscoveryMiddleware_1 = require_endpointDiscoveryMiddleware(); + exports2.endpointDiscoveryMiddlewareOptions = { + name: "endpointDiscoveryMiddleware", + step: "build", + tags: ["ENDPOINT_DISCOVERY"], + override: true + }; + var getEndpointDiscoveryPlugin = (pluginConfig, middlewareConfig) => ({ + applyToStack: (commandStack) => { + commandStack.add((0, endpointDiscoveryMiddleware_1.endpointDiscoveryMiddleware)(pluginConfig, middlewareConfig), exports2.endpointDiscoveryMiddlewareOptions); + } + }); + exports2.getEndpointDiscoveryPlugin = getEndpointDiscoveryPlugin; + var getEndpointDiscoveryRequiredPlugin = (pluginConfig, middlewareConfig) => ({ + applyToStack: (commandStack) => { + commandStack.add((0, endpointDiscoveryMiddleware_1.endpointDiscoveryMiddleware)(pluginConfig, { ...middlewareConfig, isDiscoveredEndpointRequired: true }), exports2.endpointDiscoveryMiddlewareOptions); + } + }); + exports2.getEndpointDiscoveryRequiredPlugin = getEndpointDiscoveryRequiredPlugin; + var getEndpointDiscoveryOptionalPlugin = (pluginConfig, middlewareConfig) => ({ + applyToStack: (commandStack) => { + commandStack.add((0, endpointDiscoveryMiddleware_1.endpointDiscoveryMiddleware)(pluginConfig, { ...middlewareConfig, isDiscoveredEndpointRequired: false }), exports2.endpointDiscoveryMiddlewareOptions); + } + }); + exports2.getEndpointDiscoveryOptionalPlugin = getEndpointDiscoveryOptionalPlugin; + } +}); + +// node_modules/@aws-sdk/endpoint-cache/dist-cjs/Endpoint.js +var require_Endpoint = __commonJS({ + "node_modules/@aws-sdk/endpoint-cache/dist-cjs/Endpoint.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/obliterator/iterator.js +var require_iterator = __commonJS({ + "node_modules/obliterator/iterator.js"(exports2, module2) { + function Iterator(next) { + Object.defineProperty(this, "_next", { + writable: false, + enumerable: false, + value: next + }); + this.done = false; + } + Iterator.prototype.next = function() { + if (this.done) + return { done: true }; + var step = this._next(); + if (step.done) + this.done = true; + return step; + }; + if (typeof Symbol !== "undefined") + Iterator.prototype[Symbol.iterator] = function() { + return this; + }; + Iterator.of = function() { + var args = arguments, l = args.length, i = 0; + return new Iterator(function() { + if (i >= l) + return { done: true }; + return { done: false, value: args[i++] }; + }); + }; + Iterator.empty = function() { + var iterator = new Iterator(null); + iterator.done = true; + return iterator; + }; + Iterator.is = function(value) { + if (value instanceof Iterator) + return true; + return typeof value === "object" && value !== null && typeof value.next === "function"; + }; + module2.exports = Iterator; + } +}); + +// node_modules/obliterator/foreach.js +var require_foreach = __commonJS({ + "node_modules/obliterator/foreach.js"(exports2, module2) { + var ARRAY_BUFFER_SUPPORT = typeof ArrayBuffer !== "undefined"; + var SYMBOL_SUPPORT = typeof Symbol !== "undefined"; + function forEach(iterable, callback) { + var iterator, k, i, l, s; + if (!iterable) + throw new Error("obliterator/forEach: invalid iterable."); + if (typeof callback !== "function") + throw new Error("obliterator/forEach: expecting a callback."); + if (Array.isArray(iterable) || ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable) || typeof iterable === "string" || iterable.toString() === "[object Arguments]") { + for (i = 0, l = iterable.length; i < l; i++) + callback(iterable[i], i); + return; + } + if (typeof iterable.forEach === "function") { + iterable.forEach(callback); + return; + } + if (SYMBOL_SUPPORT && Symbol.iterator in iterable && typeof iterable.next !== "function") { + iterable = iterable[Symbol.iterator](); + } + if (typeof iterable.next === "function") { + iterator = iterable; + i = 0; + while (s = iterator.next(), s.done !== true) { + callback(s.value, i); + i++; + } + return; + } + for (k in iterable) { + if (iterable.hasOwnProperty(k)) { + callback(iterable[k], k); + } + } + return; + } + forEach.forEachWithNullKeys = function(iterable, callback) { + var iterator, k, i, l, s; + if (!iterable) + throw new Error("obliterator/forEachWithNullKeys: invalid iterable."); + if (typeof callback !== "function") + throw new Error("obliterator/forEachWithNullKeys: expecting a callback."); + if (Array.isArray(iterable) || ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable) || typeof iterable === "string" || iterable.toString() === "[object Arguments]") { + for (i = 0, l = iterable.length; i < l; i++) + callback(iterable[i], null); + return; + } + if (iterable instanceof Set) { + iterable.forEach(function(value) { + callback(value, null); + }); + return; + } + if (typeof iterable.forEach === "function") { + iterable.forEach(callback); + return; + } + if (SYMBOL_SUPPORT && Symbol.iterator in iterable && typeof iterable.next !== "function") { + iterable = iterable[Symbol.iterator](); + } + if (typeof iterable.next === "function") { + iterator = iterable; + i = 0; + while (s = iterator.next(), s.done !== true) { + callback(s.value, null); + i++; + } + return; + } + for (k in iterable) { + if (iterable.hasOwnProperty(k)) { + callback(iterable[k], k); + } + } + return; + }; + module2.exports = forEach; + } +}); + +// node_modules/mnemonist/utils/typed-arrays.js +var require_typed_arrays = __commonJS({ + "node_modules/mnemonist/utils/typed-arrays.js"(exports2) { + var MAX_8BIT_INTEGER = Math.pow(2, 8) - 1; + var MAX_16BIT_INTEGER = Math.pow(2, 16) - 1; + var MAX_32BIT_INTEGER = Math.pow(2, 32) - 1; + var MAX_SIGNED_8BIT_INTEGER = Math.pow(2, 7) - 1; + var MAX_SIGNED_16BIT_INTEGER = Math.pow(2, 15) - 1; + var MAX_SIGNED_32BIT_INTEGER = Math.pow(2, 31) - 1; + exports2.getPointerArray = function(size) { + var maxIndex = size - 1; + if (maxIndex <= MAX_8BIT_INTEGER) + return Uint8Array; + if (maxIndex <= MAX_16BIT_INTEGER) + return Uint16Array; + if (maxIndex <= MAX_32BIT_INTEGER) + return Uint32Array; + return Float64Array; + }; + exports2.getSignedPointerArray = function(size) { + var maxIndex = size - 1; + if (maxIndex <= MAX_SIGNED_8BIT_INTEGER) + return Int8Array; + if (maxIndex <= MAX_SIGNED_16BIT_INTEGER) + return Int16Array; + if (maxIndex <= MAX_SIGNED_32BIT_INTEGER) + return Int32Array; + return Float64Array; + }; + exports2.getNumberType = function(value) { + if (value === (value | 0)) { + if (Math.sign(value) === -1) { + if (value <= 127 && value >= -128) + return Int8Array; + if (value <= 32767 && value >= -32768) + return Int16Array; + return Int32Array; + } else { + if (value <= 255) + return Uint8Array; + if (value <= 65535) + return Uint16Array; + return Uint32Array; + } + } + return Float64Array; + }; + var TYPE_PRIORITY = { + Uint8Array: 1, + Int8Array: 2, + Uint16Array: 3, + Int16Array: 4, + Uint32Array: 5, + Int32Array: 6, + Float32Array: 7, + Float64Array: 8 + }; + exports2.getMinimalRepresentation = function(array, getter) { + var maxType = null, maxPriority = 0, p, t, v, i, l; + for (i = 0, l = array.length; i < l; i++) { + v = getter ? getter(array[i]) : array[i]; + t = exports2.getNumberType(v); + p = TYPE_PRIORITY[t.name]; + if (p > maxPriority) { + maxPriority = p; + maxType = t; + } + } + return maxType; + }; + exports2.isTypedArray = function(value) { + return typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView(value); + }; + exports2.concat = function() { + var length = 0, i, o, l; + for (i = 0, l = arguments.length; i < l; i++) + length += arguments[i].length; + var array = new arguments[0].constructor(length); + for (i = 0, o = 0; i < l; i++) { + array.set(arguments[i], o); + o += arguments[i].length; + } + return array; + }; + exports2.indices = function(length) { + var PointerArray = exports2.getPointerArray(length); + var array = new PointerArray(length); + for (var i = 0; i < length; i++) + array[i] = i; + return array; + }; + } +}); + +// node_modules/mnemonist/utils/iterables.js +var require_iterables = __commonJS({ + "node_modules/mnemonist/utils/iterables.js"(exports2) { + var forEach = require_foreach(); + var typed = require_typed_arrays(); + function isArrayLike(target) { + return Array.isArray(target) || typed.isTypedArray(target); + } + function guessLength(target) { + if (typeof target.length === "number") + return target.length; + if (typeof target.size === "number") + return target.size; + return; + } + function toArray(target) { + var l = guessLength(target); + var array = typeof l === "number" ? new Array(l) : []; + var i = 0; + forEach(target, function(value) { + array[i++] = value; + }); + return array; + } + function toArrayWithIndices(target) { + var l = guessLength(target); + var IndexArray = typeof l === "number" ? typed.getPointerArray(l) : Array; + var array = typeof l === "number" ? new Array(l) : []; + var indices = typeof l === "number" ? new IndexArray(l) : []; + var i = 0; + forEach(target, function(value) { + array[i] = value; + indices[i] = i++; + }); + return [array, indices]; + } + exports2.isArrayLike = isArrayLike; + exports2.guessLength = guessLength; + exports2.toArray = toArray; + exports2.toArrayWithIndices = toArrayWithIndices; + } +}); + +// node_modules/mnemonist/lru-cache.js +var require_lru_cache = __commonJS({ + "node_modules/mnemonist/lru-cache.js"(exports2, module2) { + var Iterator = require_iterator(); + var forEach = require_foreach(); + var typed = require_typed_arrays(); + var iterables = require_iterables(); + function LRUCache(Keys, Values, capacity) { + if (arguments.length < 2) { + capacity = Keys; + Keys = null; + Values = null; + } + this.capacity = capacity; + if (typeof this.capacity !== "number" || this.capacity <= 0) + throw new Error("mnemonist/lru-cache: capacity should be positive number."); + var PointerArray = typed.getPointerArray(capacity); + this.forward = new PointerArray(capacity); + this.backward = new PointerArray(capacity); + this.K = typeof Keys === "function" ? new Keys(capacity) : new Array(capacity); + this.V = typeof Values === "function" ? new Values(capacity) : new Array(capacity); + this.size = 0; + this.head = 0; + this.tail = 0; + this.items = {}; + } + LRUCache.prototype.clear = function() { + this.size = 0; + this.head = 0; + this.tail = 0; + this.items = {}; + }; + LRUCache.prototype.splayOnTop = function(pointer) { + var oldHead = this.head; + if (this.head === pointer) + return this; + var previous = this.backward[pointer], next = this.forward[pointer]; + if (this.tail === pointer) { + this.tail = previous; + } else { + this.backward[next] = previous; + } + this.forward[previous] = next; + this.backward[oldHead] = pointer; + this.head = pointer; + this.forward[pointer] = oldHead; + return this; + }; + LRUCache.prototype.set = function(key, value) { + var pointer = this.items[key]; + if (typeof pointer !== "undefined") { + this.splayOnTop(pointer); + this.V[pointer] = value; + return; + } + if (this.size < this.capacity) { + pointer = this.size++; + } else { + pointer = this.tail; + this.tail = this.backward[pointer]; + delete this.items[this.K[pointer]]; + } + this.items[key] = pointer; + this.K[pointer] = key; + this.V[pointer] = value; + this.forward[pointer] = this.head; + this.backward[this.head] = pointer; + this.head = pointer; + }; + LRUCache.prototype.setpop = function(key, value) { + var oldValue = null; + var oldKey = null; + var pointer = this.items[key]; + if (typeof pointer !== "undefined") { + this.splayOnTop(pointer); + oldValue = this.V[pointer]; + this.V[pointer] = value; + return { evicted: false, key, value: oldValue }; + } + if (this.size < this.capacity) { + pointer = this.size++; + } else { + pointer = this.tail; + this.tail = this.backward[pointer]; + oldValue = this.V[pointer]; + oldKey = this.K[pointer]; + delete this.items[this.K[pointer]]; + } + this.items[key] = pointer; + this.K[pointer] = key; + this.V[pointer] = value; + this.forward[pointer] = this.head; + this.backward[this.head] = pointer; + this.head = pointer; + if (oldKey) { + return { evicted: true, key: oldKey, value: oldValue }; + } else { + return null; + } + }; + LRUCache.prototype.has = function(key) { + return key in this.items; + }; + LRUCache.prototype.get = function(key) { + var pointer = this.items[key]; + if (typeof pointer === "undefined") + return; + this.splayOnTop(pointer); + return this.V[pointer]; + }; + LRUCache.prototype.peek = function(key) { + var pointer = this.items[key]; + if (typeof pointer === "undefined") + return; + return this.V[pointer]; + }; + LRUCache.prototype.forEach = function(callback, scope) { + scope = arguments.length > 1 ? scope : this; + var i = 0, l = this.size; + var pointer = this.head, keys = this.K, values = this.V, forward = this.forward; + while (i < l) { + callback.call(scope, values[pointer], keys[pointer], this); + pointer = forward[pointer]; + i++; + } + }; + LRUCache.prototype.keys = function() { + var i = 0, l = this.size; + var pointer = this.head, keys = this.K, forward = this.forward; + return new Iterator(function() { + if (i >= l) + return { done: true }; + var key = keys[pointer]; + i++; + if (i < l) + pointer = forward[pointer]; + return { + done: false, + value: key + }; + }); + }; + LRUCache.prototype.values = function() { + var i = 0, l = this.size; + var pointer = this.head, values = this.V, forward = this.forward; + return new Iterator(function() { + if (i >= l) + return { done: true }; + var value = values[pointer]; + i++; + if (i < l) + pointer = forward[pointer]; + return { + done: false, + value + }; + }); + }; + LRUCache.prototype.entries = function() { + var i = 0, l = this.size; + var pointer = this.head, keys = this.K, values = this.V, forward = this.forward; + return new Iterator(function() { + if (i >= l) + return { done: true }; + var key = keys[pointer], value = values[pointer]; + i++; + if (i < l) + pointer = forward[pointer]; + return { + done: false, + value: [key, value] + }; + }); + }; + if (typeof Symbol !== "undefined") + LRUCache.prototype[Symbol.iterator] = LRUCache.prototype.entries; + LRUCache.prototype.inspect = function() { + var proxy = /* @__PURE__ */ new Map(); + var iterator = this.entries(), step; + while (step = iterator.next(), !step.done) + proxy.set(step.value[0], step.value[1]); + Object.defineProperty(proxy, "constructor", { + value: LRUCache, + enumerable: false + }); + return proxy; + }; + if (typeof Symbol !== "undefined") + LRUCache.prototype[Symbol.for("nodejs.util.inspect.custom")] = LRUCache.prototype.inspect; + LRUCache.from = function(iterable, Keys, Values, capacity) { + if (arguments.length < 2) { + capacity = iterables.guessLength(iterable); + if (typeof capacity !== "number") + throw new Error("mnemonist/lru-cache.from: could not guess iterable length. Please provide desired capacity as last argument."); + } else if (arguments.length === 2) { + capacity = Keys; + Keys = null; + Values = null; + } + var cache = new LRUCache(Keys, Values, capacity); + forEach(iterable, function(value, key) { + cache.set(key, value); + }); + return cache; + }; + module2.exports = LRUCache; + } +}); + +// node_modules/@aws-sdk/endpoint-cache/dist-cjs/EndpointCache.js +var require_EndpointCache = __commonJS({ + "node_modules/@aws-sdk/endpoint-cache/dist-cjs/EndpointCache.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EndpointCache = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var lru_cache_1 = tslib_1.__importDefault(require_lru_cache()); + var EndpointCache = class { + constructor(capacity) { + this.cache = new lru_cache_1.default(capacity); + } + getEndpoint(key) { + const endpointsWithExpiry = this.get(key); + if (!endpointsWithExpiry || endpointsWithExpiry.length === 0) { + return void 0; + } + const endpoints = endpointsWithExpiry.map((endpoint) => endpoint.Address); + return endpoints[Math.floor(Math.random() * endpoints.length)]; + } + get(key) { + if (!this.has(key)) { + return; + } + const value = this.cache.get(key); + if (!value) { + return; + } + const now = Date.now(); + const endpointsWithExpiry = value.filter((endpoint) => now < endpoint.Expires); + if (endpointsWithExpiry.length === 0) { + this.delete(key); + return void 0; + } + return endpointsWithExpiry; + } + set(key, endpoints) { + const now = Date.now(); + this.cache.set(key, endpoints.map(({ Address, CachePeriodInMinutes }) => ({ + Address, + Expires: now + CachePeriodInMinutes * 60 * 1e3 + }))); + } + delete(key) { + this.cache.set(key, []); + } + has(key) { + if (!this.cache.has(key)) { + return false; + } + const endpoints = this.cache.peek(key); + if (!endpoints) { + return false; + } + return endpoints.length > 0; + } + clear() { + this.cache.clear(); + } + }; + exports2.EndpointCache = EndpointCache; + } +}); + +// node_modules/@aws-sdk/endpoint-cache/dist-cjs/index.js +var require_dist_cjs3 = __commonJS({ + "node_modules/@aws-sdk/endpoint-cache/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_Endpoint(), exports2); + tslib_1.__exportStar(require_EndpointCache(), exports2); + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/resolveEndpointDiscoveryConfig.js +var require_resolveEndpointDiscoveryConfig = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/resolveEndpointDiscoveryConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveEndpointDiscoveryConfig = void 0; + var endpoint_cache_1 = require_dist_cjs3(); + var resolveEndpointDiscoveryConfig = (input, { endpointDiscoveryCommandCtor }) => { + var _a; + return { + ...input, + endpointDiscoveryCommandCtor, + endpointCache: new endpoint_cache_1.EndpointCache((_a = input.endpointCacheSize) !== null && _a !== void 0 ? _a : 1e3), + endpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== void 0 ? () => Promise.resolve(input.endpointDiscoveryEnabled) : input.endpointDiscoveryEnabledProvider, + isClientEndpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== void 0 + }; + }; + exports2.resolveEndpointDiscoveryConfig = resolveEndpointDiscoveryConfig; + } +}); + +// node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/index.js +var require_dist_cjs4 = __commonJS({ + "node_modules/@aws-sdk/middleware-endpoint-discovery/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_configurations(), exports2); + tslib_1.__exportStar(require_getEndpointDiscoveryPlugin(), exports2); + tslib_1.__exportStar(require_resolveEndpointDiscoveryConfig(), exports2); + } +}); + +// node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js +var require_dist_cjs5 = __commonJS({ + "node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHostHeaderPlugin = exports2.hostHeaderMiddlewareOptions = exports2.hostHeaderMiddleware = exports2.resolveHostHeaderConfig = void 0; + var protocol_http_1 = require_dist_cjs2(); + function resolveHostHeaderConfig(input) { + return input; + } + exports2.resolveHostHeaderConfig = resolveHostHeaderConfig; + var hostHeaderMiddleware = (options) => (next) => async (args) => { + if (!protocol_http_1.HttpRequest.isInstance(args.request)) + return next(args); + const { request } = args; + const { handlerProtocol = "" } = options.requestHandler.metadata || {}; + if (handlerProtocol.indexOf("h2") >= 0 && !request.headers[":authority"]) { + delete request.headers["host"]; + request.headers[":authority"] = ""; + } else if (!request.headers["host"]) { + let host = request.hostname; + if (request.port != null) + host += `:${request.port}`; + request.headers["host"] = host; + } + return next(args); + }; + exports2.hostHeaderMiddleware = hostHeaderMiddleware; + exports2.hostHeaderMiddlewareOptions = { + name: "hostHeaderMiddleware", + step: "build", + priority: "low", + tags: ["HOST"], + override: true + }; + var getHostHeaderPlugin = (options) => ({ + applyToStack: (clientStack) => { + clientStack.add((0, exports2.hostHeaderMiddleware)(options), exports2.hostHeaderMiddlewareOptions); + } + }); + exports2.getHostHeaderPlugin = getHostHeaderPlugin; + } +}); + +// node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js +var require_loggerMiddleware = __commonJS({ + "node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getLoggerPlugin = exports2.loggerMiddlewareOptions = exports2.loggerMiddleware = void 0; + var loggerMiddleware = () => (next, context) => async (args) => { + var _a, _b; + try { + const response = await next(args); + const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; + const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions; + const inputFilterSensitiveLog = overrideInputFilterSensitiveLog !== null && overrideInputFilterSensitiveLog !== void 0 ? overrideInputFilterSensitiveLog : context.inputFilterSensitiveLog; + const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog !== null && overrideOutputFilterSensitiveLog !== void 0 ? overrideOutputFilterSensitiveLog : context.outputFilterSensitiveLog; + const { $metadata, ...outputWithoutMetadata } = response.output; + (_a = logger === null || logger === void 0 ? void 0 : logger.info) === null || _a === void 0 ? void 0 : _a.call(logger, { + 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 !== null && overrideInputFilterSensitiveLog !== void 0 ? overrideInputFilterSensitiveLog : context.inputFilterSensitiveLog; + (_b = logger === null || logger === void 0 ? void 0 : logger.error) === null || _b === void 0 ? void 0 : _b.call(logger, { + clientName, + commandName, + input: inputFilterSensitiveLog(args.input), + error, + metadata: error.$metadata + }); + throw error; + } + }; + exports2.loggerMiddleware = loggerMiddleware; + exports2.loggerMiddlewareOptions = { + name: "loggerMiddleware", + tags: ["LOGGER"], + step: "initialize", + override: true + }; + var getLoggerPlugin = (options) => ({ + applyToStack: (clientStack) => { + clientStack.add((0, exports2.loggerMiddleware)(), exports2.loggerMiddlewareOptions); + } + }); + exports2.getLoggerPlugin = getLoggerPlugin; + } +}); + +// node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js +var require_dist_cjs6 = __commonJS({ + "node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_loggerMiddleware(), exports2); + } +}); + +// node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js +var require_dist_cjs7 = __commonJS({ + "node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRecursionDetectionPlugin = exports2.addRecursionDetectionMiddlewareOptions = exports2.recursionDetectionMiddleware = void 0; + var protocol_http_1 = require_dist_cjs2(); + var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id"; + var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME"; + var ENV_TRACE_ID = "_X_AMZN_TRACE_ID"; + var recursionDetectionMiddleware = (options) => (next) => async (args) => { + const { request } = args; + if (!protocol_http_1.HttpRequest.isInstance(request) || options.runtime !== "node" || request.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) { + return next(args); + } + const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME]; + const traceId = process.env[ENV_TRACE_ID]; + const nonEmptyString = (str) => typeof str === "string" && str.length > 0; + if (nonEmptyString(functionName) && nonEmptyString(traceId)) { + request.headers[TRACE_ID_HEADER_NAME] = traceId; + } + return next({ + ...args, + request + }); + }; + exports2.recursionDetectionMiddleware = recursionDetectionMiddleware; + exports2.addRecursionDetectionMiddlewareOptions = { + step: "build", + tags: ["RECURSION_DETECTION"], + name: "recursionDetectionMiddleware", + override: true, + priority: "low" + }; + var getRecursionDetectionPlugin = (options) => ({ + applyToStack: (clientStack) => { + clientStack.add((0, exports2.recursionDetectionMiddleware)(options), exports2.addRecursionDetectionMiddlewareOptions); + } + }); + exports2.getRecursionDetectionPlugin = getRecursionDetectionPlugin; + } +}); + +// node_modules/@smithy/property-provider/dist-cjs/index.js +var require_dist_cjs8 = __commonJS({ + "node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CredentialsProviderError: () => CredentialsProviderError, + ProviderError: () => ProviderError, + TokenProviderError: () => TokenProviderError, + chain: () => chain, + fromStatic: () => fromStatic, + memoize: () => memoize + }); + module2.exports = __toCommonJS2(src_exports); + var _ProviderError = class _ProviderError2 extends Error { + constructor(message, tryNextLink = true) { + super(message); + this.tryNextLink = tryNextLink; + this.name = "ProviderError"; + Object.setPrototypeOf(this, _ProviderError2.prototype); + } + static from(error, tryNextLink = true) { + return Object.assign(new this(error.message, tryNextLink), error); + } + }; + __name(_ProviderError, "ProviderError"); + var ProviderError = _ProviderError; + var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError { + constructor(message, tryNextLink = true) { + super(message, tryNextLink); + this.tryNextLink = tryNextLink; + this.name = "CredentialsProviderError"; + Object.setPrototypeOf(this, _CredentialsProviderError2.prototype); + } + }; + __name(_CredentialsProviderError, "CredentialsProviderError"); + var CredentialsProviderError = _CredentialsProviderError; + var _TokenProviderError = class _TokenProviderError2 extends ProviderError { + constructor(message, tryNextLink = true) { + super(message, tryNextLink); + this.tryNextLink = tryNextLink; + this.name = "TokenProviderError"; + Object.setPrototypeOf(this, _TokenProviderError2.prototype); + } + }; + __name(_TokenProviderError, "TokenProviderError"); + var TokenProviderError = _TokenProviderError; + var chain = /* @__PURE__ */ __name((...providers) => async () => { + if (providers.length === 0) { + throw new ProviderError("No providers in chain"); + } + let lastProviderError; + for (const provider of providers) { + try { + const credentials = await provider(); + return credentials; + } catch (err) { + lastProviderError = err; + if (err == null ? void 0 : err.tryNextLink) { + continue; + } + throw err; + } + } + throw lastProviderError; + }, "chain"); + var fromStatic = /* @__PURE__ */ __name((staticValue) => () => Promise.resolve(staticValue), "fromStatic"); + var memoize = /* @__PURE__ */ __name((provider, isExpired, requiresRefresh) => { + let resolved; + let pending; + let hasResult; + let isConstant = false; + const coalesceProvider = /* @__PURE__ */ __name(async () => { + if (!pending) { + pending = provider(); + } + try { + resolved = await pending; + hasResult = true; + isConstant = false; + } finally { + pending = void 0; + } + return resolved; + }, "coalesceProvider"); + if (isExpired === void 0) { + return async (options) => { + if (!hasResult || (options == null ? void 0 : options.forceRefresh)) { + resolved = await coalesceProvider(); + } + return resolved; + }; + } + return async (options) => { + if (!hasResult || (options == null ? void 0 : options.forceRefresh)) { + resolved = await coalesceProvider(); + } + if (isConstant) { + return resolved; + } + if (requiresRefresh && !requiresRefresh(resolved)) { + isConstant = true; + return resolved; + } + if (isExpired(resolved)) { + await coalesceProvider(); + return resolved; + } + return resolved; + }; + }, "memoize"); + } +}); + +// node_modules/@smithy/util-middleware/dist-cjs/index.js +var require_dist_cjs9 = __commonJS({ + "node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + getSmithyContext: () => getSmithyContext, + normalizeProvider: () => normalizeProvider + }); + module2.exports = __toCommonJS2(src_exports); + var import_types = require_dist_cjs(); + var getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types.SMITHY_CONTEXT_KEY] || (context[import_types.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext"); + var normalizeProvider = /* @__PURE__ */ __name((input) => { + if (typeof input === "function") + return input; + const promisified = Promise.resolve(input); + return () => promisified; + }, "normalizeProvider"); + } +}); + +// node_modules/@smithy/is-array-buffer/dist-cjs/index.js +var require_dist_cjs10 = __commonJS({ + "node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + isArrayBuffer: () => isArrayBuffer + }); + module2.exports = __toCommonJS2(src_exports); + var isArrayBuffer = /* @__PURE__ */ __name((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer"); + } +}); + +// node_modules/@smithy/util-buffer-from/dist-cjs/index.js +var require_dist_cjs11 = __commonJS({ + "node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + fromArrayBuffer: () => fromArrayBuffer, + fromString: () => fromString + }); + module2.exports = __toCommonJS2(src_exports); + var import_is_array_buffer = require_dist_cjs10(); + var import_buffer = require("buffer"); + var fromArrayBuffer = /* @__PURE__ */ __name((input, offset = 0, length = input.byteLength - offset) => { + if (!(0, import_is_array_buffer.isArrayBuffer)(input)) { + throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`); + } + return import_buffer.Buffer.from(input, offset, length); + }, "fromArrayBuffer"); + var fromString = /* @__PURE__ */ __name((input, encoding) => { + if (typeof input !== "string") { + throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`); + } + return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input); + }, "fromString"); + } +}); + +// node_modules/@smithy/util-utf8/dist-cjs/index.js +var require_dist_cjs12 = __commonJS({ + "node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + fromUtf8: () => fromUtf8, + toUint8Array: () => toUint8Array, + toUtf8: () => toUtf8 + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_buffer_from = require_dist_cjs11(); + var fromUtf8 = /* @__PURE__ */ __name((input) => { + const buf = (0, import_util_buffer_from.fromString)(input, "utf8"); + return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT); + }, "fromUtf8"); + var toUint8Array = /* @__PURE__ */ __name((data) => { + if (typeof data === "string") { + return fromUtf8(data); + } + if (ArrayBuffer.isView(data)) { + return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT); + } + return new Uint8Array(data); + }, "toUint8Array"); + var toUtf8 = /* @__PURE__ */ __name((input) => { + if (typeof input === "string") { + return input; + } + if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") { + throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array."); + } + return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8"); + }, "toUtf8"); + } +}); + +// node_modules/@smithy/util-hex-encoding/dist-cjs/index.js +var require_dist_cjs13 = __commonJS({ + "node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + fromHex: () => fromHex, + toHex: () => toHex + }); + module2.exports = __toCommonJS2(src_exports); + var SHORT_TO_HEX = {}; + var HEX_TO_SHORT = {}; + for (let i = 0; i < 256; i++) { + let encodedByte = i.toString(16).toLowerCase(); + if (encodedByte.length === 1) { + encodedByte = `0${encodedByte}`; + } + SHORT_TO_HEX[i] = encodedByte; + HEX_TO_SHORT[encodedByte] = i; + } + function fromHex(encoded) { + if (encoded.length % 2 !== 0) { + throw new Error("Hex encoded strings must have an even number length"); + } + const out = new Uint8Array(encoded.length / 2); + for (let i = 0; i < encoded.length; i += 2) { + const encodedByte = encoded.slice(i, i + 2).toLowerCase(); + if (encodedByte in HEX_TO_SHORT) { + out[i / 2] = HEX_TO_SHORT[encodedByte]; + } else { + throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`); + } + } + return out; + } + __name(fromHex, "fromHex"); + function toHex(bytes) { + let out = ""; + for (let i = 0; i < bytes.byteLength; i++) { + out += SHORT_TO_HEX[bytes[i]]; + } + return out; + } + __name(toHex, "toHex"); + } +}); + +// node_modules/@smithy/util-uri-escape/dist-cjs/index.js +var require_dist_cjs14 = __commonJS({ + "node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + escapeUri: () => escapeUri, + escapeUriPath: () => escapeUriPath + }); + module2.exports = __toCommonJS2(src_exports); + var escapeUri = /* @__PURE__ */ __name((uri) => ( + // AWS percent-encodes some extra non-standard characters in a URI + encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode) + ), "escapeUri"); + var hexEncode = /* @__PURE__ */ __name((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode"); + var escapeUriPath = /* @__PURE__ */ __name((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath"); + } +}); + +// node_modules/@smithy/signature-v4/dist-cjs/index.js +var require_dist_cjs15 = __commonJS({ + "node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + SignatureV4: () => SignatureV4, + clearCredentialCache: () => clearCredentialCache, + createScope: () => createScope, + getCanonicalHeaders: () => getCanonicalHeaders, + getCanonicalQuery: () => getCanonicalQuery, + getPayloadHash: () => getPayloadHash, + getSigningKey: () => getSigningKey, + moveHeadersToQuery: () => moveHeadersToQuery, + prepareRequest: () => prepareRequest + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_middleware = require_dist_cjs9(); + var import_util_utf84 = require_dist_cjs12(); + var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm"; + var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential"; + var AMZ_DATE_QUERY_PARAM = "X-Amz-Date"; + 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 AUTH_HEADER = "authorization"; + var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase(); + var DATE_HEADER = "date"; + 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 ALWAYS_UNSIGNABLE_HEADERS = { + authorization: true, + "cache-control": true, + connection: true, + expect: true, + from: true, + "keep-alive": true, + "max-forwards": true, + pragma: true, + referer: true, + te: true, + trailer: true, + "transfer-encoding": true, + upgrade: true, + "user-agent": true, + "x-amzn-trace-id": true + }; + var PROXY_HEADER_PATTERN = /^proxy-/; + var SEC_HEADER_PATTERN = /^sec-/; + var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256"; + var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD"; + var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD"; + var MAX_CACHE_SIZE = 50; + var KEY_TYPE_IDENTIFIER = "aws4_request"; + var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7; + var import_util_hex_encoding = require_dist_cjs13(); + var import_util_utf8 = require_dist_cjs12(); + var signingKeyCache = {}; + var cacheQueue = []; + var createScope = /* @__PURE__ */ __name((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope"); + var getSigningKey = /* @__PURE__ */ __name(async (sha256Constructor, credentials, shortDate, region, service) => { + const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId); + const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`; + if (cacheKey in signingKeyCache) { + return signingKeyCache[cacheKey]; + } + cacheQueue.push(cacheKey); + while (cacheQueue.length > MAX_CACHE_SIZE) { + delete signingKeyCache[cacheQueue.shift()]; + } + let key = `AWS4${credentials.secretAccessKey}`; + for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) { + key = await hmac(sha256Constructor, key, signable); + } + return signingKeyCache[cacheKey] = key; + }, "getSigningKey"); + var clearCredentialCache = /* @__PURE__ */ __name(() => { + cacheQueue.length = 0; + Object.keys(signingKeyCache).forEach((cacheKey) => { + delete signingKeyCache[cacheKey]; + }); + }, "clearCredentialCache"); + var hmac = /* @__PURE__ */ __name((ctor, secret, data) => { + const hash = new ctor(secret); + hash.update((0, import_util_utf8.toUint8Array)(data)); + return hash.digest(); + }, "hmac"); + var getCanonicalHeaders = /* @__PURE__ */ __name(({ headers }, unsignableHeaders, signableHeaders) => { + const canonical = {}; + for (const headerName of Object.keys(headers).sort()) { + if (headers[headerName] == void 0) { + continue; + } + const canonicalHeaderName = headerName.toLowerCase(); + if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) { + if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) { + continue; + } + } + canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " "); + } + return canonical; + }, "getCanonicalHeaders"); + var import_util_uri_escape = require_dist_cjs14(); + var getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => { + const keys = []; + const serialized = {}; + for (const key of Object.keys(query).sort()) { + if (key.toLowerCase() === SIGNATURE_HEADER) { + continue; + } + keys.push(key); + const value = query[key]; + if (typeof value === "string") { + serialized[key] = `${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value)}`; + } else if (Array.isArray(value)) { + serialized[key] = value.slice(0).reduce( + (encoded, value2) => encoded.concat([`${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), + [] + ).sort().join("&"); + } + } + return keys.map((key) => serialized[key]).filter((serialized2) => serialized2).join("&"); + }, "getCanonicalQuery"); + var import_is_array_buffer = require_dist_cjs10(); + var import_util_utf82 = require_dist_cjs12(); + var getPayloadHash = /* @__PURE__ */ __name(async ({ headers, body }, hashConstructor) => { + for (const headerName of Object.keys(headers)) { + if (headerName.toLowerCase() === SHA256_HEADER) { + return headers[headerName]; + } + } + if (body == void 0) { + return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"; + } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) { + const hashCtor = new hashConstructor(); + hashCtor.update((0, import_util_utf82.toUint8Array)(body)); + return (0, import_util_hex_encoding.toHex)(await hashCtor.digest()); + } + return UNSIGNED_PAYLOAD; + }, "getPayloadHash"); + var import_util_utf83 = require_dist_cjs12(); + var _HeaderFormatter = class _HeaderFormatter { + format(headers) { + const chunks = []; + for (const headerName of Object.keys(headers)) { + const bytes = (0, import_util_utf83.fromUtf8)(headerName); + chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName])); + } + const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0)); + let position = 0; + for (const chunk of chunks) { + out.set(chunk, position); + position += chunk.byteLength; + } + return out; + } + formatHeaderValue(header) { + switch (header.type) { + case "boolean": + return Uint8Array.from([ + header.value ? 0 : 1 + /* boolFalse */ + ]); + case "byte": + return Uint8Array.from([2, header.value]); + case "short": + const shortView = new DataView(new ArrayBuffer(3)); + shortView.setUint8( + 0, + 3 + /* short */ + ); + shortView.setInt16(1, header.value, false); + return new Uint8Array(shortView.buffer); + case "integer": + const intView = new DataView(new ArrayBuffer(5)); + intView.setUint8( + 0, + 4 + /* integer */ + ); + intView.setInt32(1, header.value, false); + return new Uint8Array(intView.buffer); + case "long": + const longBytes = new Uint8Array(9); + longBytes[0] = 5; + longBytes.set(header.value.bytes, 1); + return longBytes; + case "binary": + const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength)); + binView.setUint8( + 0, + 6 + /* byteArray */ + ); + binView.setUint16(1, header.value.byteLength, false); + const binBytes = new Uint8Array(binView.buffer); + binBytes.set(header.value, 3); + return binBytes; + case "string": + const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value); + const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength)); + strView.setUint8( + 0, + 7 + /* string */ + ); + strView.setUint16(1, utf8Bytes.byteLength, false); + const strBytes = new Uint8Array(strView.buffer); + strBytes.set(utf8Bytes, 3); + return strBytes; + case "timestamp": + const tsBytes = new Uint8Array(9); + tsBytes[0] = 8; + tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1); + return tsBytes; + case "uuid": + if (!UUID_PATTERN.test(header.value)) { + throw new Error(`Invalid UUID received: ${header.value}`); + } + const uuidBytes = new Uint8Array(17); + uuidBytes[0] = 9; + uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1); + return uuidBytes; + } + } + }; + __name(_HeaderFormatter, "HeaderFormatter"); + var HeaderFormatter = _HeaderFormatter; + var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/; + var _Int64 = class _Int642 { + constructor(bytes) { + this.bytes = bytes; + if (bytes.byteLength !== 8) { + throw new Error("Int64 buffers must be exactly 8 bytes"); + } + } + static fromNumber(number) { + if (number > 9223372036854776e3 || number < -9223372036854776e3) { + throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`); + } + const bytes = new Uint8Array(8); + for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) { + bytes[i] = remaining; + } + if (number < 0) { + negate(bytes); + } + return new _Int642(bytes); + } + /** + * Called implicitly by infix arithmetic operators. + */ + valueOf() { + const bytes = this.bytes.slice(0); + const negative = bytes[0] & 128; + if (negative) { + negate(bytes); + } + return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1); + } + toString() { + return String(this.valueOf()); + } + }; + __name(_Int64, "Int64"); + var Int64 = _Int64; + function negate(bytes) { + for (let i = 0; i < 8; i++) { + bytes[i] ^= 255; + } + for (let i = 7; i > -1; i--) { + bytes[i]++; + if (bytes[i] !== 0) + break; + } + } + __name(negate, "negate"); + var hasHeader = /* @__PURE__ */ __name((soughtHeader, headers) => { + soughtHeader = soughtHeader.toLowerCase(); + for (const headerName of Object.keys(headers)) { + if (soughtHeader === headerName.toLowerCase()) { + return true; + } + } + return false; + }, "hasHeader"); + var cloneRequest = /* @__PURE__ */ __name(({ headers, query, ...rest }) => ({ + ...rest, + headers: { ...headers }, + query: query ? cloneQuery(query) : void 0 + }), "cloneRequest"); + var cloneQuery = /* @__PURE__ */ __name((query) => Object.keys(query).reduce((carry, paramName) => { + const param = query[paramName]; + return { + ...carry, + [paramName]: Array.isArray(param) ? [...param] : param + }; + }, {}), "cloneQuery"); + var moveHeadersToQuery = /* @__PURE__ */ __name((request, options = {}) => { + var _a; + const { headers, query = {} } = typeof request.clone === "function" ? request.clone() : cloneRequest(request); + for (const name of Object.keys(headers)) { + const lname = name.toLowerCase(); + if (lname.slice(0, 6) === "x-amz-" && !((_a = options.unhoistableHeaders) == null ? void 0 : _a.has(lname))) { + query[name] = headers[name]; + delete headers[name]; + } + } + return { + ...request, + headers, + query + }; + }, "moveHeadersToQuery"); + var prepareRequest = /* @__PURE__ */ __name((request) => { + request = typeof request.clone === "function" ? request.clone() : cloneRequest(request); + for (const headerName of Object.keys(request.headers)) { + if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) { + delete request.headers[headerName]; + } + } + return request; + }, "prepareRequest"); + var iso8601 = /* @__PURE__ */ __name((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601"); + var toDate = /* @__PURE__ */ __name((time) => { + if (typeof time === "number") { + return new Date(time * 1e3); + } + if (typeof time === "string") { + if (Number(time)) { + return new Date(Number(time) * 1e3); + } + return new Date(time); + } + return time; + }, "toDate"); + var _SignatureV4 = class _SignatureV4 { + constructor({ + applyChecksum, + credentials, + region, + service, + sha256, + uriEscapePath = true + }) { + this.headerFormatter = new HeaderFormatter(); + this.service = service; + this.sha256 = sha256; + this.uriEscapePath = uriEscapePath; + this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true; + this.regionProvider = (0, import_util_middleware.normalizeProvider)(region); + this.credentialProvider = (0, import_util_middleware.normalizeProvider)(credentials); + } + async presign(originalRequest, options = {}) { + const { + signingDate = /* @__PURE__ */ new Date(), + expiresIn = 3600, + unsignableHeaders, + unhoistableHeaders, + signableHeaders, + signingRegion, + signingService + } = options; + const credentials = await this.credentialProvider(); + this.validateResolvedCredentials(credentials); + const region = signingRegion ?? await this.regionProvider(); + 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" + ); + } + const scope = createScope(shortDate, region, signingService ?? this.service); + const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders }); + if (credentials.sessionToken) { + request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken; + } + request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER; + request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`; + 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] = getCanonicalHeaderList(canonicalHeaders); + request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature( + longDate, + scope, + this.getSigningKey(credentials, region, shortDate, signingService), + this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)) + ); + return request; + } + async sign(toSign, options) { + if (typeof toSign === "string") { + return this.signString(toSign, options); + } else if (toSign.headers && toSign.payload) { + return this.signEvent(toSign, options); + } else if (toSign.message) { + return this.signMessage(toSign, options); + } else { + return this.signRequest(toSign, options); + } + } + async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) { + const region = signingRegion ?? await this.regionProvider(); + 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(); + hash.update(headers); + const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest()); + const stringToSign = [ + EVENT_ALGORITHM_IDENTIFIER, + longDate, + scope, + priorSignature, + hashedHeaders, + hashedPayload + ].join("\n"); + return this.signString(stringToSign, { signingDate, signingRegion: region, signingService }); + } + async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) { + const promise = this.signEvent( + { + headers: this.headerFormatter.format(signableMessage.message.headers), + payload: signableMessage.message.body + }, + { + signingDate, + signingRegion, + signingService, + priorSignature: signableMessage.priorSignature + } + ); + return promise.then((signature) => { + return { message: signableMessage.message, signature }; + }); + } + async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) { + const credentials = await this.credentialProvider(); + this.validateResolvedCredentials(credentials); + const region = signingRegion ?? await this.regionProvider(); + const { shortDate } = formatDate(signingDate); + const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService)); + hash.update((0, import_util_utf84.toUint8Array)(stringToSign)); + return (0, import_util_hex_encoding.toHex)(await hash.digest()); + } + async signRequest(requestToSign, { + signingDate = /* @__PURE__ */ new Date(), + signableHeaders, + unsignableHeaders, + signingRegion, + signingService + } = {}) { + const credentials = await this.credentialProvider(); + this.validateResolvedCredentials(credentials); + const region = signingRegion ?? await this.regionProvider(); + const request = prepareRequest(requestToSign); + const { longDate, shortDate } = formatDate(signingDate); + const scope = createScope(shortDate, region, signingService ?? this.service); + request.headers[AMZ_DATE_HEADER] = longDate; + if (credentials.sessionToken) { + request.headers[TOKEN_HEADER] = credentials.sessionToken; + } + const payloadHash = await getPayloadHash(request, this.sha256); + if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) { + request.headers[SHA256_HEADER] = payloadHash; + } + const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders); + const signature = await this.getSignature( + longDate, + scope, + this.getSigningKey(credentials, region, shortDate, signingService), + this.createCanonicalRequest(request, canonicalHeaders, payloadHash) + ); + 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 == null ? void 0 : pathSegment.length) === 0) + continue; + if (pathSegment === ".") + continue; + if (pathSegment === "..") { + normalizedPathSegments.pop(); + } else { + normalizedPathSegments.push(pathSegment); + } + } + const normalizedPath = `${(path == null ? void 0 : path.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path == null ? void 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); + const hash = new this.sha256(await keyPromise); + 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"); + } + } + }; + __name(_SignatureV4, "SignatureV4"); + var SignatureV4 = _SignatureV4; + 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"); + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthConfiguration.js +var require_awsAuthConfiguration = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthConfiguration.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveSigV4AuthConfig = exports2.resolveAwsAuthConfig = void 0; + var property_provider_1 = require_dist_cjs8(); + var signature_v4_1 = require_dist_cjs15(); + var util_middleware_1 = require_dist_cjs9(); + var CREDENTIAL_EXPIRE_WINDOW = 3e5; + var resolveAwsAuthConfig = (input) => { + const normalizedCreds = input.credentials ? normalizeCredentialProvider(input.credentials) : input.credentialDefaultProvider(input); + const { signingEscapePath = true, systemClockOffset = input.systemClockOffset || 0, sha256 } = input; + let signer; + if (input.signer) { + signer = (0, util_middleware_1.normalizeProvider)(input.signer); + } else if (input.regionInfoProvider) { + signer = () => (0, util_middleware_1.normalizeProvider)(input.region)().then(async (region) => [ + await input.regionInfoProvider(region, { + useFipsEndpoint: await input.useFipsEndpoint(), + useDualstackEndpoint: await input.useDualstackEndpoint() + }) || {}, + region + ]).then(([regionInfo, region]) => { + const { signingRegion, signingService } = regionInfo; + input.signingRegion = input.signingRegion || signingRegion || region; + input.signingName = input.signingName || signingService || input.serviceId; + const params = { + ...input, + credentials: normalizedCreds, + region: input.signingRegion, + service: input.signingName, + sha256, + uriEscapePath: signingEscapePath + }; + const SignerCtor = input.signerConstructor || signature_v4_1.SignatureV4; + return new SignerCtor(params); + }); + } else { + signer = async (authScheme) => { + authScheme = Object.assign({}, { + name: "sigv4", + signingName: input.signingName || input.defaultSigningName, + signingRegion: await (0, util_middleware_1.normalizeProvider)(input.region)(), + properties: {} + }, authScheme); + const signingRegion = authScheme.signingRegion; + const signingService = authScheme.signingName; + input.signingRegion = input.signingRegion || signingRegion; + input.signingName = input.signingName || signingService || input.serviceId; + const params = { + ...input, + credentials: normalizedCreds, + region: input.signingRegion, + service: input.signingName, + sha256, + uriEscapePath: signingEscapePath + }; + const SignerCtor = input.signerConstructor || signature_v4_1.SignatureV4; + return new SignerCtor(params); + }; + } + return { + ...input, + systemClockOffset, + signingEscapePath, + credentials: normalizedCreds, + signer + }; + }; + exports2.resolveAwsAuthConfig = resolveAwsAuthConfig; + var resolveSigV4AuthConfig = (input) => { + const normalizedCreds = input.credentials ? normalizeCredentialProvider(input.credentials) : input.credentialDefaultProvider(input); + const { signingEscapePath = true, systemClockOffset = input.systemClockOffset || 0, sha256 } = input; + let signer; + if (input.signer) { + signer = (0, util_middleware_1.normalizeProvider)(input.signer); + } else { + signer = (0, util_middleware_1.normalizeProvider)(new signature_v4_1.SignatureV4({ + credentials: normalizedCreds, + region: input.region, + service: input.signingName, + sha256, + uriEscapePath: signingEscapePath + })); + } + return { + ...input, + systemClockOffset, + signingEscapePath, + credentials: normalizedCreds, + signer + }; + }; + exports2.resolveSigV4AuthConfig = resolveSigV4AuthConfig; + var normalizeCredentialProvider = (credentials) => { + if (typeof credentials === "function") { + return (0, property_provider_1.memoize)(credentials, (credentials2) => credentials2.expiration !== void 0 && credentials2.expiration.getTime() - Date.now() < CREDENTIAL_EXPIRE_WINDOW, (credentials2) => credentials2.expiration !== void 0); + } + return (0, util_middleware_1.normalizeProvider)(credentials); + }; + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getSkewCorrectedDate.js +var require_getSkewCorrectedDate = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getSkewCorrectedDate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSkewCorrectedDate = void 0; + var getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset); + exports2.getSkewCorrectedDate = getSkewCorrectedDate; + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/isClockSkewed.js +var require_isClockSkewed = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/isClockSkewed.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isClockSkewed = void 0; + var getSkewCorrectedDate_1 = require_getSkewCorrectedDate(); + var isClockSkewed = (clockTime, systemClockOffset) => Math.abs((0, getSkewCorrectedDate_1.getSkewCorrectedDate)(systemClockOffset).getTime() - clockTime) >= 3e5; + exports2.isClockSkewed = isClockSkewed; + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getUpdatedSystemClockOffset.js +var require_getUpdatedSystemClockOffset = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getUpdatedSystemClockOffset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getUpdatedSystemClockOffset = void 0; + var isClockSkewed_1 = require_isClockSkewed(); + var getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => { + const clockTimeInMs = Date.parse(clockTime); + if ((0, isClockSkewed_1.isClockSkewed)(clockTimeInMs, currentSystemClockOffset)) { + return clockTimeInMs - Date.now(); + } + return currentSystemClockOffset; + }; + exports2.getUpdatedSystemClockOffset = getUpdatedSystemClockOffset; + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js +var require_awsAuthMiddleware = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSigV4AuthPlugin = exports2.getAwsAuthPlugin = exports2.awsAuthMiddlewareOptions = exports2.awsAuthMiddleware = void 0; + var protocol_http_1 = require_dist_cjs2(); + var getSkewCorrectedDate_1 = require_getSkewCorrectedDate(); + var getUpdatedSystemClockOffset_1 = require_getUpdatedSystemClockOffset(); + var awsAuthMiddleware = (options) => (next, context) => async function(args) { + var _a, _b, _c, _d; + if (!protocol_http_1.HttpRequest.isInstance(args.request)) + return next(args); + const authScheme = (_c = (_b = (_a = context.endpointV2) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.authSchemes) === null || _c === void 0 ? void 0 : _c[0]; + const multiRegionOverride = (authScheme === null || authScheme === void 0 ? void 0 : authScheme.name) === "sigv4a" ? (_d = authScheme === null || authScheme === void 0 ? void 0 : authScheme.signingRegionSet) === null || _d === void 0 ? void 0 : _d.join(",") : void 0; + const signer = await options.signer(authScheme); + const output = await next({ + ...args, + request: await signer.sign(args.request, { + signingDate: (0, getSkewCorrectedDate_1.getSkewCorrectedDate)(options.systemClockOffset), + signingRegion: multiRegionOverride || context["signing_region"], + signingService: context["signing_service"] + }) + }).catch((error) => { + var _a2; + const serverTime = (_a2 = error.ServerTime) !== null && _a2 !== void 0 ? _a2 : getDateHeader(error.$response); + if (serverTime) { + options.systemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(serverTime, options.systemClockOffset); + } + throw error; + }); + const dateHeader = getDateHeader(output.response); + if (dateHeader) { + options.systemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(dateHeader, options.systemClockOffset); + } + return output; + }; + exports2.awsAuthMiddleware = awsAuthMiddleware; + var getDateHeader = (response) => { + var _a, _b, _c; + return protocol_http_1.HttpResponse.isInstance(response) ? (_b = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.date) !== null && _b !== void 0 ? _b : (_c = response.headers) === null || _c === void 0 ? void 0 : _c.Date : void 0; + }; + exports2.awsAuthMiddlewareOptions = { + name: "awsAuthMiddleware", + tags: ["SIGNATURE", "AWSAUTH"], + relation: "after", + toMiddleware: "retryMiddleware", + override: true + }; + var getAwsAuthPlugin = (options) => ({ + applyToStack: (clientStack) => { + clientStack.addRelativeTo((0, exports2.awsAuthMiddleware)(options), exports2.awsAuthMiddlewareOptions); + } + }); + exports2.getAwsAuthPlugin = getAwsAuthPlugin; + exports2.getSigV4AuthPlugin = exports2.getAwsAuthPlugin; + } +}); + +// node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js +var require_dist_cjs16 = __commonJS({ + "node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_awsAuthConfiguration(), exports2); + tslib_1.__exportStar(require_awsAuthMiddleware(), exports2); + } +}); + +// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/configurations.js +var require_configurations2 = __commonJS({ + "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/configurations.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveUserAgentConfig = void 0; + function resolveUserAgentConfig(input) { + return { + ...input, + customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent + }; + } + exports2.resolveUserAgentConfig = resolveUserAgentConfig; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json +var require_partitions = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json"(exports2, module2) { + module2.exports = { + partitions: [{ + id: "aws", + outputs: { + dnsSuffix: "amazonaws.com", + dualStackDnsSuffix: "api.aws", + implicitGlobalRegion: "us-east-1", + name: "aws", + supportsDualStack: true, + supportsFIPS: true + }, + regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$", + regions: { + "af-south-1": { + description: "Africa (Cape Town)" + }, + "ap-east-1": { + description: "Asia Pacific (Hong Kong)" + }, + "ap-northeast-1": { + description: "Asia Pacific (Tokyo)" + }, + "ap-northeast-2": { + description: "Asia Pacific (Seoul)" + }, + "ap-northeast-3": { + description: "Asia Pacific (Osaka)" + }, + "ap-south-1": { + description: "Asia Pacific (Mumbai)" + }, + "ap-south-2": { + description: "Asia Pacific (Hyderabad)" + }, + "ap-southeast-1": { + description: "Asia Pacific (Singapore)" + }, + "ap-southeast-2": { + description: "Asia Pacific (Sydney)" + }, + "ap-southeast-3": { + description: "Asia Pacific (Jakarta)" + }, + "ap-southeast-4": { + description: "Asia Pacific (Melbourne)" + }, + "aws-global": { + description: "AWS Standard global region" + }, + "ca-central-1": { + description: "Canada (Central)" + }, + "eu-central-1": { + description: "Europe (Frankfurt)" + }, + "eu-central-2": { + description: "Europe (Zurich)" + }, + "eu-north-1": { + description: "Europe (Stockholm)" + }, + "eu-south-1": { + description: "Europe (Milan)" + }, + "eu-south-2": { + description: "Europe (Spain)" + }, + "eu-west-1": { + description: "Europe (Ireland)" + }, + "eu-west-2": { + description: "Europe (London)" + }, + "eu-west-3": { + description: "Europe (Paris)" + }, + "il-central-1": { + description: "Israel (Tel Aviv)" + }, + "me-central-1": { + description: "Middle East (UAE)" + }, + "me-south-1": { + description: "Middle East (Bahrain)" + }, + "sa-east-1": { + description: "South America (Sao Paulo)" + }, + "us-east-1": { + description: "US East (N. Virginia)" + }, + "us-east-2": { + description: "US East (Ohio)" + }, + "us-west-1": { + description: "US West (N. California)" + }, + "us-west-2": { + description: "US West (Oregon)" + } + } + }, { + id: "aws-cn", + outputs: { + dnsSuffix: "amazonaws.com.cn", + dualStackDnsSuffix: "api.amazonwebservices.com.cn", + implicitGlobalRegion: "cn-northwest-1", + name: "aws-cn", + supportsDualStack: true, + supportsFIPS: true + }, + regionRegex: "^cn\\-\\w+\\-\\d+$", + regions: { + "aws-cn-global": { + description: "AWS China global region" + }, + "cn-north-1": { + description: "China (Beijing)" + }, + "cn-northwest-1": { + description: "China (Ningxia)" + } + } + }, { + id: "aws-us-gov", + outputs: { + dnsSuffix: "amazonaws.com", + dualStackDnsSuffix: "api.aws", + implicitGlobalRegion: "us-gov-west-1", + name: "aws-us-gov", + supportsDualStack: true, + supportsFIPS: true + }, + regionRegex: "^us\\-gov\\-\\w+\\-\\d+$", + regions: { + "aws-us-gov-global": { + description: "AWS GovCloud (US) global region" + }, + "us-gov-east-1": { + description: "AWS GovCloud (US-East)" + }, + "us-gov-west-1": { + description: "AWS GovCloud (US-West)" + } + } + }, { + id: "aws-iso", + outputs: { + dnsSuffix: "c2s.ic.gov", + dualStackDnsSuffix: "c2s.ic.gov", + implicitGlobalRegion: "us-iso-east-1", + name: "aws-iso", + supportsDualStack: false, + supportsFIPS: true + }, + regionRegex: "^us\\-iso\\-\\w+\\-\\d+$", + regions: { + "aws-iso-global": { + description: "AWS ISO (US) global region" + }, + "us-iso-east-1": { + description: "US ISO East" + }, + "us-iso-west-1": { + description: "US ISO WEST" + } + } + }, { + id: "aws-iso-b", + outputs: { + dnsSuffix: "sc2s.sgov.gov", + dualStackDnsSuffix: "sc2s.sgov.gov", + implicitGlobalRegion: "us-isob-east-1", + name: "aws-iso-b", + supportsDualStack: false, + supportsFIPS: true + }, + regionRegex: "^us\\-isob\\-\\w+\\-\\d+$", + regions: { + "aws-iso-b-global": { + description: "AWS ISOB (US) global region" + }, + "us-isob-east-1": { + description: "US ISOB East (Ohio)" + } + } + }, { + id: "aws-iso-e", + outputs: { + dnsSuffix: "cloud.adc-e.uk", + dualStackDnsSuffix: "cloud.adc-e.uk", + implicitGlobalRegion: "eu-isoe-west-1", + name: "aws-iso-e", + supportsDualStack: false, + supportsFIPS: true + }, + regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$", + regions: {} + }, { + id: "aws-iso-f", + outputs: { + dnsSuffix: "csp.hci.ic.gov", + dualStackDnsSuffix: "csp.hci.ic.gov", + implicitGlobalRegion: "us-isof-south-1", + name: "aws-iso-f", + supportsDualStack: false, + supportsFIPS: true + }, + regionRegex: "^us\\-isof\\-\\w+\\-\\d+$", + regions: {} + }], + version: "1.1" + }; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partition.js +var require_partition = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getUserAgentPrefix = exports2.useDefaultPartitionInfo = exports2.setPartitionInfo = exports2.partition = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var partitions_json_1 = tslib_1.__importDefault(require_partitions()); + var selectedPartitionsInfo = partitions_json_1.default; + var selectedUserAgentPrefix = ""; + var partition = (value) => { + const { partitions } = selectedPartitionsInfo; + for (const partition2 of partitions) { + const { regions, outputs } = partition2; + for (const [region, regionData] of Object.entries(regions)) { + if (region === value) { + return { + ...outputs, + ...regionData + }; + } + } + } + for (const partition2 of partitions) { + const { regionRegex, outputs } = partition2; + if (new RegExp(regionRegex).test(value)) { + return { + ...outputs + }; + } + } + const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws"); + if (!DEFAULT_PARTITION) { + throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."); + } + return { + ...DEFAULT_PARTITION.outputs + }; + }; + exports2.partition = partition; + var setPartitionInfo = (partitionsInfo, userAgentPrefix = "") => { + selectedPartitionsInfo = partitionsInfo; + selectedUserAgentPrefix = userAgentPrefix; + }; + exports2.setPartitionInfo = setPartitionInfo; + var useDefaultPartitionInfo = () => { + (0, exports2.setPartitionInfo)(partitions_json_1.default, ""); + }; + exports2.useDefaultPartitionInfo = useDefaultPartitionInfo; + var getUserAgentPrefix = () => selectedUserAgentPrefix; + exports2.getUserAgentPrefix = getUserAgentPrefix; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isIpAddress.js +var require_isIpAddress = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isIpAddress.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isIpAddress = void 0; + var IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`); + var isIpAddress = (value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"); + exports2.isIpAddress = isIpAddress; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/debugId.js +var require_debugId = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/debugId.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.debugId = void 0; + exports2.debugId = "endpoints"; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/toDebugString.js +var require_toDebugString = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/toDebugString.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toDebugString = void 0; + function toDebugString(input) { + if (typeof input !== "object" || input == null) { + return input; + } + if ("ref" in input) { + return `$${toDebugString(input.ref)}`; + } + if ("fn" in input) { + return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`; + } + return JSON.stringify(input, null, 2); + } + exports2.toDebugString = toDebugString; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/index.js +var require_debug = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_debugId(), exports2); + tslib_1.__exportStar(require_toDebugString(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointError.js +var require_EndpointError = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EndpointError = void 0; + var EndpointError = class extends Error { + constructor(message) { + super(message); + this.name = "EndpointError"; + } + }; + exports2.EndpointError = EndpointError; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointRuleObject.js +var require_EndpointRuleObject = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointRuleObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/ErrorRuleObject.js +var require_ErrorRuleObject = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/ErrorRuleObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/RuleSetObject.js +var require_RuleSetObject = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/RuleSetObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/TreeRuleObject.js +var require_TreeRuleObject = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/TreeRuleObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/shared.js +var require_shared = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/shared.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/index.js +var require_types = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_EndpointError(), exports2); + tslib_1.__exportStar(require_EndpointRuleObject(), exports2); + tslib_1.__exportStar(require_ErrorRuleObject(), exports2); + tslib_1.__exportStar(require_RuleSetObject(), exports2); + tslib_1.__exportStar(require_TreeRuleObject(), exports2); + tslib_1.__exportStar(require_shared(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isValidHostLabel.js +var require_isValidHostLabel = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isValidHostLabel.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isValidHostLabel = void 0; + var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`); + var isValidHostLabel = (value, allowSubDomains = false) => { + if (!allowSubDomains) { + return VALID_HOST_LABEL_REGEX.test(value); + } + const labels = value.split("."); + for (const label of labels) { + if (!(0, exports2.isValidHostLabel)(label)) { + return false; + } + } + return true; + }; + exports2.isValidHostLabel = isValidHostLabel; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/isVirtualHostableS3Bucket.js +var require_isVirtualHostableS3Bucket = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/isVirtualHostableS3Bucket.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isVirtualHostableS3Bucket = void 0; + var isIpAddress_1 = require_isIpAddress(); + var isValidHostLabel_1 = require_isValidHostLabel(); + var isVirtualHostableS3Bucket = (value, allowSubDomains = false) => { + if (allowSubDomains) { + for (const label of value.split(".")) { + if (!(0, exports2.isVirtualHostableS3Bucket)(label)) { + return false; + } + } + return true; + } + if (!(0, isValidHostLabel_1.isValidHostLabel)(value)) { + return false; + } + if (value.length < 3 || value.length > 63) { + return false; + } + if (value !== value.toLowerCase()) { + return false; + } + if ((0, isIpAddress_1.isIpAddress)(value)) { + return false; + } + return true; + }; + exports2.isVirtualHostableS3Bucket = isVirtualHostableS3Bucket; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/parseArn.js +var require_parseArn = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/parseArn.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseArn = void 0; + var parseArn = (value) => { + const segments = value.split(":"); + if (segments.length < 6) + return null; + const [arn, partition, service, region, accountId, ...resourceId] = segments; + if (arn !== "arn" || partition === "" || service === "" || resourceId[0] === "") + return null; + return { + partition, + service, + region, + accountId, + resourceId: resourceId[0].includes("/") ? resourceId[0].split("/") : resourceId + }; + }; + exports2.parseArn = parseArn; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/index.js +var require_aws = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_isVirtualHostableS3Bucket(), exports2); + tslib_1.__exportStar(require_parseArn(), exports2); + tslib_1.__exportStar(require_partition(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/booleanEquals.js +var require_booleanEquals = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/booleanEquals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.booleanEquals = void 0; + var booleanEquals = (value1, value2) => value1 === value2; + exports2.booleanEquals = booleanEquals; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttrPathList.js +var require_getAttrPathList = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttrPathList.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAttrPathList = void 0; + var types_1 = require_types(); + var getAttrPathList = (path) => { + const parts = path.split("."); + const pathList = []; + for (const part of parts) { + const squareBracketIndex = part.indexOf("["); + if (squareBracketIndex !== -1) { + if (part.indexOf("]") !== part.length - 1) { + throw new types_1.EndpointError(`Path: '${path}' does not end with ']'`); + } + const arrayIndex = part.slice(squareBracketIndex + 1, -1); + if (Number.isNaN(parseInt(arrayIndex))) { + throw new types_1.EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`); + } + if (squareBracketIndex !== 0) { + pathList.push(part.slice(0, squareBracketIndex)); + } + pathList.push(arrayIndex); + } else { + pathList.push(part); + } + } + return pathList; + }; + exports2.getAttrPathList = getAttrPathList; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttr.js +var require_getAttr = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttr.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAttr = void 0; + var types_1 = require_types(); + var getAttrPathList_1 = require_getAttrPathList(); + var getAttr = (value, path) => (0, getAttrPathList_1.getAttrPathList)(path).reduce((acc, index) => { + if (typeof acc !== "object") { + throw new types_1.EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`); + } else if (Array.isArray(acc)) { + return acc[parseInt(index)]; + } + return acc[index]; + }, value); + exports2.getAttr = getAttr; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isSet.js +var require_isSet = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isSet.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isSet = void 0; + var isSet = (value) => value != null; + exports2.isSet = isSet; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/not.js +var require_not = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/not.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.not = void 0; + var not = (value) => !value; + exports2.not = not; + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/abort.js +var require_abort = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/abort.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/auth.js +var require_auth = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/auth.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.HttpAuthLocation = void 0; + var types_1 = require_dist_cjs(); + Object.defineProperty(exports2, "HttpAuthLocation", { enumerable: true, get: function() { + return types_1.HttpAuthLocation; + } }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/blob/blob-types.js +var require_blob_types = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/blob/blob-types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/checksum.js +var require_checksum = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/checksum.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/client.js +var require_client = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/client.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/command.js +var require_command = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/command.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/connection.js +var require_connection = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/connection.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/credentials.js +var require_credentials = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/credentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/crypto.js +var require_crypto = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/crypto.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/dns.js +var require_dns = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/dns.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.HostAddressType = void 0; + var HostAddressType; + (function(HostAddressType2) { + HostAddressType2["AAAA"] = "AAAA"; + HostAddressType2["A"] = "A"; + })(HostAddressType = exports2.HostAddressType || (exports2.HostAddressType = {})); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/encode.js +var require_encode = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/encode.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/endpoint.js +var require_endpoint = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/endpoint.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EndpointURLScheme = void 0; + var types_1 = require_dist_cjs(); + Object.defineProperty(exports2, "EndpointURLScheme", { enumerable: true, get: function() { + return types_1.EndpointURLScheme; + } }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/eventStream.js +var require_eventStream = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/eventStream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/extensions/index.js +var require_extensions = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/extensions/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/http.js +var require_http = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/http.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/AnonymousIdentity.js +var require_AnonymousIdentity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/AnonymousIdentity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/AwsCredentialIdentity.js +var require_AwsCredentialIdentity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/AwsCredentialIdentity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/Identity.js +var require_Identity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/Identity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/LoginIdentity.js +var require_LoginIdentity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/LoginIdentity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/TokenIdentity.js +var require_TokenIdentity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/TokenIdentity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/identity/index.js +var require_identity = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/identity/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_AnonymousIdentity(), exports2); + tslib_1.__exportStar(require_AwsCredentialIdentity(), exports2); + tslib_1.__exportStar(require_Identity(), exports2); + tslib_1.__exportStar(require_LoginIdentity(), exports2); + tslib_1.__exportStar(require_TokenIdentity(), exports2); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/logger.js +var require_logger = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/logger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/middleware.js +var require_middleware = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/middleware.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/pagination.js +var require_pagination = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/pagination.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/profile.js +var require_profile = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/profile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/request.js +var require_request = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/request.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/response.js +var require_response = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/response.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/retry.js +var require_retry = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/retry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/serde.js +var require_serde = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/serde.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/shapes.js +var require_shapes = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/shapes.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/signature.js +var require_signature = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/signature.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/stream.js +var require_stream = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/token.js +var require_token = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/token.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/transfer.js +var require_transfer = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/transfer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RequestHandlerProtocol = void 0; + var types_1 = require_dist_cjs(); + Object.defineProperty(exports2, "RequestHandlerProtocol", { enumerable: true, get: function() { + return types_1.RequestHandlerProtocol; + } }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/uri.js +var require_uri = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/uri.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/util.js +var require_util = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/waiter.js +var require_waiter = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/waiter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/types/dist-cjs/index.js +var require_dist_cjs17 = __commonJS({ + "node_modules/@aws-sdk/types/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_abort(), exports2); + tslib_1.__exportStar(require_auth(), exports2); + tslib_1.__exportStar(require_blob_types(), exports2); + tslib_1.__exportStar(require_checksum(), exports2); + tslib_1.__exportStar(require_client(), exports2); + tslib_1.__exportStar(require_command(), exports2); + tslib_1.__exportStar(require_connection(), exports2); + tslib_1.__exportStar(require_credentials(), exports2); + tslib_1.__exportStar(require_crypto(), exports2); + tslib_1.__exportStar(require_dns(), exports2); + tslib_1.__exportStar(require_encode(), exports2); + tslib_1.__exportStar(require_endpoint(), exports2); + tslib_1.__exportStar(require_eventStream(), exports2); + tslib_1.__exportStar(require_extensions(), exports2); + tslib_1.__exportStar(require_http(), exports2); + tslib_1.__exportStar(require_identity(), exports2); + tslib_1.__exportStar(require_logger(), exports2); + tslib_1.__exportStar(require_middleware(), exports2); + tslib_1.__exportStar(require_pagination(), exports2); + tslib_1.__exportStar(require_profile(), exports2); + tslib_1.__exportStar(require_request(), exports2); + tslib_1.__exportStar(require_response(), exports2); + tslib_1.__exportStar(require_retry(), exports2); + tslib_1.__exportStar(require_serde(), exports2); + tslib_1.__exportStar(require_shapes(), exports2); + tslib_1.__exportStar(require_signature(), exports2); + tslib_1.__exportStar(require_stream(), exports2); + tslib_1.__exportStar(require_token(), exports2); + tslib_1.__exportStar(require_transfer(), exports2); + tslib_1.__exportStar(require_uri(), exports2); + tslib_1.__exportStar(require_util(), exports2); + tslib_1.__exportStar(require_waiter(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/parseURL.js +var require_parseURL = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/parseURL.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseURL = void 0; + var types_1 = require_dist_cjs17(); + var isIpAddress_1 = require_isIpAddress(); + var DEFAULT_PORTS = { + [types_1.EndpointURLScheme.HTTP]: 80, + [types_1.EndpointURLScheme.HTTPS]: 443 + }; + var parseURL = (value) => { + const whatwgURL = (() => { + try { + if (value instanceof URL) { + return value; + } + if (typeof value === "object" && "hostname" in value) { + const { hostname: hostname2, port, protocol: protocol2 = "", path = "", query = {} } = value; + const url = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path}`); + url.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&"); + return url; + } + return new URL(value); + } catch (error) { + return null; + } + })(); + if (!whatwgURL) { + console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`); + return null; + } + const urlString = whatwgURL.href; + const { host, hostname, pathname, protocol, search } = whatwgURL; + if (search) { + return null; + } + const scheme = protocol.slice(0, -1); + if (!Object.values(types_1.EndpointURLScheme).includes(scheme)) { + return null; + } + const isIp = (0, isIpAddress_1.isIpAddress)(hostname); + const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`); + const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`; + return { + scheme, + authority, + path: pathname, + normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`, + isIp + }; + }; + exports2.parseURL = parseURL; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/stringEquals.js +var require_stringEquals = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/stringEquals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringEquals = void 0; + var stringEquals = (value1, value2) => value1 === value2; + exports2.stringEquals = stringEquals; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/substring.js +var require_substring = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/substring.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.substring = void 0; + var substring = (input, start, stop, reverse) => { + if (start >= stop || input.length < stop) { + return null; + } + if (!reverse) { + return input.substring(start, stop); + } + return input.substring(input.length - stop, input.length - start); + }; + exports2.substring = substring; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/uriEncode.js +var require_uriEncode = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/uriEncode.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.uriEncode = void 0; + var uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`); + exports2.uriEncode = uriEncode; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/index.js +var require_lib = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.aws = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + exports2.aws = tslib_1.__importStar(require_aws()); + tslib_1.__exportStar(require_booleanEquals(), exports2); + tslib_1.__exportStar(require_getAttr(), exports2); + tslib_1.__exportStar(require_isSet(), exports2); + tslib_1.__exportStar(require_isValidHostLabel(), exports2); + tslib_1.__exportStar(require_not(), exports2); + tslib_1.__exportStar(require_parseURL(), exports2); + tslib_1.__exportStar(require_stringEquals(), exports2); + tslib_1.__exportStar(require_substring(), exports2); + tslib_1.__exportStar(require_uriEncode(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTemplate.js +var require_evaluateTemplate = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTemplate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateTemplate = void 0; + var lib_1 = require_lib(); + var evaluateTemplate = (template, options) => { + const evaluatedTemplateArr = []; + const templateContext = { + ...options.endpointParams, + ...options.referenceRecord + }; + let currentIndex = 0; + while (currentIndex < template.length) { + const openingBraceIndex = template.indexOf("{", currentIndex); + if (openingBraceIndex === -1) { + evaluatedTemplateArr.push(template.slice(currentIndex)); + break; + } + evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex)); + const closingBraceIndex = template.indexOf("}", openingBraceIndex); + if (closingBraceIndex === -1) { + evaluatedTemplateArr.push(template.slice(openingBraceIndex)); + break; + } + if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") { + evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex)); + currentIndex = closingBraceIndex + 2; + } + const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex); + if (parameterName.includes("#")) { + const [refName, attrName] = parameterName.split("#"); + evaluatedTemplateArr.push((0, lib_1.getAttr)(templateContext[refName], attrName)); + } else { + evaluatedTemplateArr.push(templateContext[parameterName]); + } + currentIndex = closingBraceIndex + 1; + } + return evaluatedTemplateArr.join(""); + }; + exports2.evaluateTemplate = evaluateTemplate; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getReferenceValue.js +var require_getReferenceValue = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getReferenceValue.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getReferenceValue = void 0; + var getReferenceValue = ({ ref }, options) => { + const referenceRecord = { + ...options.endpointParams, + ...options.referenceRecord + }; + return referenceRecord[ref]; + }; + exports2.getReferenceValue = getReferenceValue; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateExpression.js +var require_evaluateExpression = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateExpression.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateExpression = void 0; + var types_1 = require_types(); + var callFunction_1 = require_callFunction(); + var evaluateTemplate_1 = require_evaluateTemplate(); + var getReferenceValue_1 = require_getReferenceValue(); + var evaluateExpression = (obj, keyName, options) => { + if (typeof obj === "string") { + return (0, evaluateTemplate_1.evaluateTemplate)(obj, options); + } else if (obj["fn"]) { + return (0, callFunction_1.callFunction)(obj, options); + } else if (obj["ref"]) { + return (0, getReferenceValue_1.getReferenceValue)(obj, options); + } + throw new types_1.EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`); + }; + exports2.evaluateExpression = evaluateExpression; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/callFunction.js +var require_callFunction = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/callFunction.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.callFunction = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var lib = tslib_1.__importStar(require_lib()); + var evaluateExpression_1 = require_evaluateExpression(); + var callFunction = ({ fn, argv }, options) => { + const evaluatedArgs = argv.map((arg) => ["boolean", "number"].includes(typeof arg) ? arg : (0, evaluateExpression_1.evaluateExpression)(arg, "arg", options)); + return fn.split(".").reduce((acc, key) => acc[key], lib)(...evaluatedArgs); + }; + exports2.callFunction = callFunction; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateCondition.js +var require_evaluateCondition = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateCondition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateCondition = void 0; + var debug_1 = require_debug(); + var types_1 = require_types(); + var callFunction_1 = require_callFunction(); + var evaluateCondition = ({ assign, ...fnArgs }, options) => { + var _a, _b; + if (assign && assign in options.referenceRecord) { + throw new types_1.EndpointError(`'${assign}' is already defined in Reference Record.`); + } + const value = (0, callFunction_1.callFunction)(fnArgs, options); + (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `evaluateCondition: ${(0, debug_1.toDebugString)(fnArgs)} = ${(0, debug_1.toDebugString)(value)}`); + return { + result: value === "" ? true : !!value, + ...assign != null && { toAssign: { name: assign, value } } + }; + }; + exports2.evaluateCondition = evaluateCondition; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateConditions.js +var require_evaluateConditions = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateConditions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateConditions = void 0; + var debug_1 = require_debug(); + var evaluateCondition_1 = require_evaluateCondition(); + var evaluateConditions = (conditions = [], options) => { + var _a, _b; + const conditionsReferenceRecord = {}; + for (const condition of conditions) { + const { result, toAssign } = (0, evaluateCondition_1.evaluateCondition)(condition, { + ...options, + referenceRecord: { + ...options.referenceRecord, + ...conditionsReferenceRecord + } + }); + if (!result) { + return { result }; + } + if (toAssign) { + conditionsReferenceRecord[toAssign.name] = toAssign.value; + (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `assign: ${toAssign.name} := ${(0, debug_1.toDebugString)(toAssign.value)}`); + } + } + return { result: true, referenceRecord: conditionsReferenceRecord }; + }; + exports2.evaluateConditions = evaluateConditions; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointHeaders.js +var require_getEndpointHeaders = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointHeaders.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointHeaders = void 0; + var types_1 = require_types(); + var evaluateExpression_1 = require_evaluateExpression(); + var getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({ + ...acc, + [headerKey]: headerVal.map((headerValEntry) => { + const processedExpr = (0, evaluateExpression_1.evaluateExpression)(headerValEntry, "Header value entry", options); + if (typeof processedExpr !== "string") { + throw new types_1.EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`); + } + return processedExpr; + }) + }), {}); + exports2.getEndpointHeaders = getEndpointHeaders; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperty.js +var require_getEndpointProperty = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointProperty = void 0; + var types_1 = require_types(); + var evaluateTemplate_1 = require_evaluateTemplate(); + var getEndpointProperties_1 = require_getEndpointProperties(); + var getEndpointProperty = (property, options) => { + if (Array.isArray(property)) { + return property.map((propertyEntry) => (0, exports2.getEndpointProperty)(propertyEntry, options)); + } + switch (typeof property) { + case "string": + return (0, evaluateTemplate_1.evaluateTemplate)(property, options); + case "object": + if (property === null) { + throw new types_1.EndpointError(`Unexpected endpoint property: ${property}`); + } + return (0, getEndpointProperties_1.getEndpointProperties)(property, options); + case "boolean": + return property; + default: + throw new types_1.EndpointError(`Unexpected endpoint property type: ${typeof property}`); + } + }; + exports2.getEndpointProperty = getEndpointProperty; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperties.js +var require_getEndpointProperties = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperties.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointProperties = void 0; + var getEndpointProperty_1 = require_getEndpointProperty(); + var getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({ + ...acc, + [propertyKey]: (0, getEndpointProperty_1.getEndpointProperty)(propertyVal, options) + }), {}); + exports2.getEndpointProperties = getEndpointProperties; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointUrl.js +var require_getEndpointUrl = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointUrl.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointUrl = void 0; + var types_1 = require_types(); + var evaluateExpression_1 = require_evaluateExpression(); + var getEndpointUrl = (endpointUrl, options) => { + const expression = (0, evaluateExpression_1.evaluateExpression)(endpointUrl, "Endpoint URL", options); + if (typeof expression === "string") { + try { + return new URL(expression); + } catch (error) { + console.error(`Failed to construct URL with ${expression}`, error); + throw error; + } + } + throw new types_1.EndpointError(`Endpoint URL must be a string, got ${typeof expression}`); + }; + exports2.getEndpointUrl = getEndpointUrl; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateEndpointRule.js +var require_evaluateEndpointRule = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateEndpointRule.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateEndpointRule = void 0; + var debug_1 = require_debug(); + var evaluateConditions_1 = require_evaluateConditions(); + var getEndpointHeaders_1 = require_getEndpointHeaders(); + var getEndpointProperties_1 = require_getEndpointProperties(); + var getEndpointUrl_1 = require_getEndpointUrl(); + var evaluateEndpointRule = (endpointRule, options) => { + var _a, _b; + const { conditions, endpoint } = endpointRule; + const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); + if (!result) { + return; + } + const endpointRuleOptions = { + ...options, + referenceRecord: { ...options.referenceRecord, ...referenceRecord } + }; + const { url, properties, headers } = endpoint; + (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `Resolving endpoint from template: ${(0, debug_1.toDebugString)(endpoint)}`); + return { + ...headers != void 0 && { + headers: (0, getEndpointHeaders_1.getEndpointHeaders)(headers, endpointRuleOptions) + }, + ...properties != void 0 && { + properties: (0, getEndpointProperties_1.getEndpointProperties)(properties, endpointRuleOptions) + }, + url: (0, getEndpointUrl_1.getEndpointUrl)(url, endpointRuleOptions) + }; + }; + exports2.evaluateEndpointRule = evaluateEndpointRule; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateErrorRule.js +var require_evaluateErrorRule = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateErrorRule.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateErrorRule = void 0; + var types_1 = require_types(); + var evaluateConditions_1 = require_evaluateConditions(); + var evaluateExpression_1 = require_evaluateExpression(); + var evaluateErrorRule = (errorRule, options) => { + const { conditions, error } = errorRule; + const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); + if (!result) { + return; + } + throw new types_1.EndpointError((0, evaluateExpression_1.evaluateExpression)(error, "Error", { + ...options, + referenceRecord: { ...options.referenceRecord, ...referenceRecord } + })); + }; + exports2.evaluateErrorRule = evaluateErrorRule; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTreeRule.js +var require_evaluateTreeRule = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTreeRule.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateTreeRule = void 0; + var evaluateConditions_1 = require_evaluateConditions(); + var evaluateRules_1 = require_evaluateRules(); + var evaluateTreeRule = (treeRule, options) => { + const { conditions, rules } = treeRule; + const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); + if (!result) { + return; + } + return (0, evaluateRules_1.evaluateRules)(rules, { + ...options, + referenceRecord: { ...options.referenceRecord, ...referenceRecord } + }); + }; + exports2.evaluateTreeRule = evaluateTreeRule; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateRules.js +var require_evaluateRules = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateRules.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.evaluateRules = void 0; + var types_1 = require_types(); + var evaluateEndpointRule_1 = require_evaluateEndpointRule(); + var evaluateErrorRule_1 = require_evaluateErrorRule(); + var evaluateTreeRule_1 = require_evaluateTreeRule(); + var evaluateRules = (rules, options) => { + for (const rule of rules) { + if (rule.type === "endpoint") { + const endpointOrUndefined = (0, evaluateEndpointRule_1.evaluateEndpointRule)(rule, options); + if (endpointOrUndefined) { + return endpointOrUndefined; + } + } else if (rule.type === "error") { + (0, evaluateErrorRule_1.evaluateErrorRule)(rule, options); + } else if (rule.type === "tree") { + const endpointOrUndefined = (0, evaluateTreeRule_1.evaluateTreeRule)(rule, options); + if (endpointOrUndefined) { + return endpointOrUndefined; + } + } else { + throw new types_1.EndpointError(`Unknown endpoint rule: ${rule}`); + } + } + throw new types_1.EndpointError(`Rules evaluation failed`); + }; + exports2.evaluateRules = evaluateRules; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/index.js +var require_utils = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_evaluateRules(), exports2); + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/resolveEndpoint.js +var require_resolveEndpoint = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/resolveEndpoint.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveEndpoint = void 0; + var debug_1 = require_debug(); + var types_1 = require_types(); + var utils_1 = require_utils(); + var resolveEndpoint = (ruleSetObject, options) => { + var _a, _b, _c, _d, _e, _f; + const { endpointParams, logger } = options; + const { parameters, rules } = ruleSetObject; + (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, `${debug_1.debugId} Initial EndpointParams: ${(0, debug_1.toDebugString)(endpointParams)}`); + const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]); + if (paramsWithDefault.length > 0) { + for (const [paramKey, paramDefaultValue] of paramsWithDefault) { + endpointParams[paramKey] = (_c = endpointParams[paramKey]) !== null && _c !== void 0 ? _c : paramDefaultValue; + } + } + const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k); + for (const requiredParam of requiredParams) { + if (endpointParams[requiredParam] == null) { + throw new types_1.EndpointError(`Missing required parameter: '${requiredParam}'`); + } + } + const endpoint = (0, utils_1.evaluateRules)(rules, { endpointParams, logger, referenceRecord: {} }); + if ((_d = options.endpointParams) === null || _d === void 0 ? void 0 : _d.Endpoint) { + try { + const givenEndpoint = new URL(options.endpointParams.Endpoint); + const { protocol, port } = givenEndpoint; + endpoint.url.protocol = protocol; + endpoint.url.port = port; + } catch (e) { + } + } + (_f = (_e = options.logger) === null || _e === void 0 ? void 0 : _e.debug) === null || _f === void 0 ? void 0 : _f.call(_e, `${debug_1.debugId} Resolved endpoint: ${(0, debug_1.toDebugString)(endpoint)}`); + return endpoint; + }; + exports2.resolveEndpoint = resolveEndpoint; + } +}); + +// node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js +var require_dist_cjs18 = __commonJS({ + "node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_partition(), exports2); + tslib_1.__exportStar(require_isIpAddress(), exports2); + tslib_1.__exportStar(require_resolveEndpoint(), exports2); + tslib_1.__exportStar(require_types(), exports2); + } +}); + +// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/constants.js +var require_constants = __commonJS({ + "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UA_ESCAPE_CHAR = exports2.UA_VALUE_ESCAPE_REGEX = exports2.UA_NAME_ESCAPE_REGEX = exports2.UA_NAME_SEPARATOR = exports2.SPACE = exports2.X_AMZ_USER_AGENT = exports2.USER_AGENT = void 0; + exports2.USER_AGENT = "user-agent"; + exports2.X_AMZ_USER_AGENT = "x-amz-user-agent"; + exports2.SPACE = " "; + exports2.UA_NAME_SEPARATOR = "/"; + exports2.UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g; + exports2.UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g; + exports2.UA_ESCAPE_CHAR = "-"; + } +}); + +// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/user-agent-middleware.js +var require_user_agent_middleware = __commonJS({ + "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/user-agent-middleware.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getUserAgentPlugin = exports2.getUserAgentMiddlewareOptions = exports2.userAgentMiddleware = void 0; + var util_endpoints_1 = require_dist_cjs18(); + var protocol_http_1 = require_dist_cjs2(); + var constants_1 = require_constants(); + var userAgentMiddleware = (options) => (next, context) => async (args) => { + var _a, _b; + const { request } = args; + if (!protocol_http_1.HttpRequest.isInstance(request)) + return next(args); + const { headers } = request; + const userAgent = ((_a = context === null || context === void 0 ? void 0 : context.userAgent) === null || _a === void 0 ? void 0 : _a.map(escapeUserAgent)) || []; + const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent); + const customUserAgent = ((_b = options === null || options === void 0 ? void 0 : options.customUserAgent) === null || _b === void 0 ? void 0 : _b.map(escapeUserAgent)) || []; + const prefix = (0, util_endpoints_1.getUserAgentPrefix)(); + const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(constants_1.SPACE); + const normalUAValue = [ + ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")), + ...customUserAgent + ].join(constants_1.SPACE); + if (options.runtime !== "browser") { + if (normalUAValue) { + headers[constants_1.X_AMZ_USER_AGENT] = headers[constants_1.X_AMZ_USER_AGENT] ? `${headers[constants_1.USER_AGENT]} ${normalUAValue}` : normalUAValue; + } + headers[constants_1.USER_AGENT] = sdkUserAgentValue; + } else { + headers[constants_1.X_AMZ_USER_AGENT] = sdkUserAgentValue; + } + return next({ + ...args, + request + }); + }; + exports2.userAgentMiddleware = userAgentMiddleware; + var escapeUserAgent = (userAgentPair) => { + var _a; + const name = userAgentPair[0].split(constants_1.UA_NAME_SEPARATOR).map((part) => part.replace(constants_1.UA_NAME_ESCAPE_REGEX, constants_1.UA_ESCAPE_CHAR)).join(constants_1.UA_NAME_SEPARATOR); + const version3 = (_a = userAgentPair[1]) === null || _a === void 0 ? void 0 : _a.replace(constants_1.UA_VALUE_ESCAPE_REGEX, constants_1.UA_ESCAPE_CHAR); + const prefixSeparatorIndex = name.indexOf(constants_1.UA_NAME_SEPARATOR); + const prefix = name.substring(0, prefixSeparatorIndex); + let uaName = name.substring(prefixSeparatorIndex + 1); + if (prefix === "api") { + uaName = uaName.toLowerCase(); + } + return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => { + switch (index) { + case 0: + return item; + case 1: + return `${acc}/${item}`; + default: + return `${acc}#${item}`; + } + }, ""); + }; + exports2.getUserAgentMiddlewareOptions = { + name: "getUserAgentMiddleware", + step: "build", + priority: "low", + tags: ["SET_USER_AGENT", "USER_AGENT"], + override: true + }; + var getUserAgentPlugin = (config) => ({ + applyToStack: (clientStack) => { + clientStack.add((0, exports2.userAgentMiddleware)(config), exports2.getUserAgentMiddlewareOptions); + } + }); + exports2.getUserAgentPlugin = getUserAgentPlugin; + } +}); + +// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js +var require_dist_cjs19 = __commonJS({ + "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_configurations2(), exports2); + tslib_1.__exportStar(require_user_agent_middleware(), exports2); + } +}); + +// node_modules/@smithy/util-config-provider/dist-cjs/index.js +var require_dist_cjs20 = __commonJS({ + "node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + SelectorType: () => SelectorType, + booleanSelector: () => booleanSelector, + numberSelector: () => numberSelector + }); + module2.exports = __toCommonJS2(src_exports); + var booleanSelector = /* @__PURE__ */ __name((obj, key, type) => { + if (!(key in obj)) + return void 0; + if (obj[key] === "true") + return true; + if (obj[key] === "false") + return false; + throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`); + }, "booleanSelector"); + var numberSelector = /* @__PURE__ */ __name((obj, key, type) => { + if (!(key in obj)) + return void 0; + const numberValue = parseInt(obj[key], 10); + if (Number.isNaN(numberValue)) { + throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`); + } + return numberValue; + }, "numberSelector"); + var SelectorType = /* @__PURE__ */ ((SelectorType2) => { + SelectorType2["ENV"] = "env"; + SelectorType2["CONFIG"] = "shared config entry"; + return SelectorType2; + })(SelectorType || {}); + } +}); + +// node_modules/@smithy/config-resolver/dist-cjs/index.js +var require_dist_cjs21 = __commonJS({ + "node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT, + CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT, + DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT, + DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT, + ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT, + ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT, + NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, + REGION_ENV_NAME: () => REGION_ENV_NAME, + REGION_INI_NAME: () => REGION_INI_NAME, + getRegionInfo: () => getRegionInfo, + resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig, + resolveEndpointsConfig: () => resolveEndpointsConfig, + resolveRegionConfig: () => resolveRegionConfig + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_config_provider = require_dist_cjs20(); + var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT"; + var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint"; + var DEFAULT_USE_DUALSTACK_ENDPOINT = false; + var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => (0, import_util_config_provider.booleanSelector)(env, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV), + configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG), + default: false + }; + var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT"; + var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint"; + var DEFAULT_USE_FIPS_ENDPOINT = false; + var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => (0, import_util_config_provider.booleanSelector)(env, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV), + configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG), + default: false + }; + var import_util_middleware = require_dist_cjs9(); + var resolveCustomEndpointsConfig = /* @__PURE__ */ __name((input) => { + 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)(input.useDualstackEndpoint ?? false) + }; + }, "resolveCustomEndpointsConfig"); + var getEndpointFromRegion = /* @__PURE__ */ __name(async (input) => { + const { tls = true } = input; + const region = await input.region(); + const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/); + if (!dnsHostRegex.test(region)) { + throw new Error("Invalid region in client config"); + } + const useDualstackEndpoint = await input.useDualstackEndpoint(); + const useFipsEndpoint = await input.useFipsEndpoint(); + const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {}; + if (!hostname) { + throw new Error("Cannot resolve hostname from client config"); + } + return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`); + }, "getEndpointFromRegion"); + var resolveEndpointsConfig = /* @__PURE__ */ __name((input) => { + const useDualstackEndpoint = (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false); + 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"); + var REGION_ENV_NAME = "AWS_REGION"; + var REGION_INI_NAME = "region"; + var NODE_REGION_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => env[REGION_ENV_NAME], + configFileSelector: (profile) => profile[REGION_INI_NAME], + default: () => { + throw new Error("Region is missing"); + } + }; + var NODE_REGION_CONFIG_FILE_OPTIONS = { + preferredFile: "credentials" + }; + var isFipsRegion = /* @__PURE__ */ __name((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion"); + 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"); + var resolveRegionConfig = /* @__PURE__ */ __name((input) => { + const { region, useFipsEndpoint } = input; + if (!region) { + throw new Error("Region is missing"); + } + return { + ...input, + region: async () => { + if (typeof region === "string") { + return getRealRegion(region); + } + const providedRegion = await region(); + return getRealRegion(providedRegion); + }, + useFipsEndpoint: async () => { + const providedRegion = typeof region === "string" ? region : await region(); + if (isFipsRegion(providedRegion)) { + return true; + } + return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); + } + }; + }, "resolveRegionConfig"); + var getHostnameFromVariants = /* @__PURE__ */ __name((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => { + var _a; + return (_a = variants.find( + ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack") + )) == null ? void 0 : _a.hostname; + }, "getHostnameFromVariants"); + var getResolvedHostname = /* @__PURE__ */ __name((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname"); + var getResolvedPartition = /* @__PURE__ */ __name((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition"); + var getResolvedSigningRegion = /* @__PURE__ */ __name((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => { + if (signingRegion) { + return signingRegion; + } else if (useFipsEndpoint) { + const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\."); + const regionRegexmatchArray = hostname.match(regionRegexJs); + if (regionRegexmatchArray) { + return regionRegexmatchArray[0].slice(1, -1); + } + } + }, "getResolvedSigningRegion"); + var getRegionInfo = /* @__PURE__ */ __name((region, { + useFipsEndpoint = false, + useDualstackEndpoint = false, + signingService, + regionHash, + partitionHash + }) => { + var _a, _b, _c, _d, _e; + const partition = getResolvedPartition(region, { partitionHash }); + const resolvedRegion = region in regionHash ? region : ((_a = partitionHash[partition]) == null ? void 0 : _a.endpoint) ?? region; + const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint }; + const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions); + const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions); + const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname }); + if (hostname === void 0) { + throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`); + } + const signingRegion = getResolvedSigningRegion(hostname, { + signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion, + regionRegex: partitionHash[partition].regionRegex, + useFipsEndpoint + }); + return { + partition, + signingService, + hostname, + ...signingRegion && { signingRegion }, + ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && { + signingService: regionHash[resolvedRegion].signingService + } + }; + }, "getRegionInfo"); + } +}); + +// node_modules/@smithy/middleware-content-length/dist-cjs/index.js +var require_dist_cjs22 = __commonJS({ + "node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + contentLengthMiddleware: () => contentLengthMiddleware, + contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions, + getContentLengthPlugin: () => getContentLengthPlugin + }); + module2.exports = __toCommonJS2(src_exports); + var import_protocol_http = require_dist_cjs2(); + var CONTENT_LENGTH_HEADER = "content-length"; + function contentLengthMiddleware(bodyLengthChecker) { + return (next) => async (args) => { + const request = args.request; + if (import_protocol_http.HttpRequest.isInstance(request)) { + const { body, headers } = request; + if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) { + try { + const length = bodyLengthChecker(body); + request.headers = { + ...request.headers, + [CONTENT_LENGTH_HEADER]: String(length) + }; + } catch (error) { + } + } + } + return next({ + ...args, + request + }); + }; + } + __name(contentLengthMiddleware, "contentLengthMiddleware"); + var contentLengthMiddlewareOptions = { + step: "build", + tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"], + name: "contentLengthMiddleware", + override: true + }; + var getContentLengthPlugin = /* @__PURE__ */ __name((options) => ({ + applyToStack: (clientStack) => { + clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions); + } + }), "getContentLengthPlugin"); + } +}); + +// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir = __commonJS({ + "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath = __commonJS({ + "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile = __commonJS({ + "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile = __commonJS({ + "node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs23 = __commonJS({ + "node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile(), module2.exports); + var import_types = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(configFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(filepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); + } +}); + +// node_modules/@smithy/node-config-provider/dist-cjs/index.js +var require_dist_cjs24 = __commonJS({ + "node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + loadConfig: () => loadConfig + }); + module2.exports = __toCommonJS2(src_exports); + var import_property_provider = require_dist_cjs8(); + var fromEnv = /* @__PURE__ */ __name((envVarSelector) => async () => { + try { + const config = envVarSelector(process.env); + if (config === void 0) { + throw new Error(); + } + return config; + } catch (e) { + throw new import_property_provider.CredentialsProviderError( + e.message || `Cannot load config from environment variables with getter: ${envVarSelector}` + ); + } + }, "fromEnv"); + var import_shared_ini_file_loader = require_dist_cjs23(); + var fromSharedConfigFiles = /* @__PURE__ */ __name((configSelector, { preferredFile = "config", ...init } = {}) => async () => { + const profile = (0, import_shared_ini_file_loader.getProfileName)(init); + const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init); + const profileFromCredentials = credentialsFile[profile] || {}; + const profileFromConfig = configFile[profile] || {}; + const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials }; + try { + const cfgFile = preferredFile === "config" ? configFile : credentialsFile; + const configValue = configSelector(mergedProfile, cfgFile); + if (configValue === void 0) { + throw new Error(); + } + return configValue; + } catch (e) { + throw new import_property_provider.CredentialsProviderError( + e.message || `Cannot load config for profile ${profile} in SDK configuration files with getter: ${configSelector}` + ); + } + }, "fromSharedConfigFiles"); + var isFunction = /* @__PURE__ */ __name((func) => typeof func === "function", "isFunction"); + var fromStatic = /* @__PURE__ */ __name((defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : (0, import_property_provider.fromStatic)(defaultValue), "fromStatic"); + var loadConfig = /* @__PURE__ */ __name(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider.memoize)( + (0, import_property_provider.chain)( + fromEnv(environmentVariableSelector), + fromSharedConfigFiles(configFileSelector, configuration), + fromStatic(defaultValue) + ) + ), "loadConfig"); + } +}); + +// node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js +var require_getEndpointUrlConfig = __commonJS({ + "node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointUrlConfig = void 0; + var shared_ini_file_loader_1 = require_dist_cjs23(); + var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL"; + var CONFIG_ENDPOINT_URL = "endpoint_url"; + var getEndpointUrlConfig = (serviceId) => ({ + environmentVariableSelector: (env) => { + const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase()); + const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")]; + if (serviceEndpointUrl) + return serviceEndpointUrl; + const endpointUrl = env[ENV_ENDPOINT_URL]; + if (endpointUrl) + return endpointUrl; + return void 0; + }, + configFileSelector: (profile, config) => { + if (config && profile.services) { + const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)]; + if (servicesSection) { + const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase()); + const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)]; + if (endpointUrl2) + return endpointUrl2; + } + } + const endpointUrl = profile[CONFIG_ENDPOINT_URL]; + if (endpointUrl) + return endpointUrl; + return void 0; + }, + default: void 0 + }); + exports2.getEndpointUrlConfig = getEndpointUrlConfig; + } +}); + +// node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js +var require_getEndpointFromConfig = __commonJS({ + "node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEndpointFromConfig = void 0; + var node_config_provider_1 = require_dist_cjs24(); + var getEndpointUrlConfig_1 = require_getEndpointUrlConfig(); + var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId))(); + exports2.getEndpointFromConfig = getEndpointFromConfig; + } +}); + +// node_modules/@smithy/querystring-parser/dist-cjs/index.js +var require_dist_cjs25 = __commonJS({ + "node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + parseQueryString: () => parseQueryString + }); + module2.exports = __toCommonJS2(src_exports); + function parseQueryString(querystring) { + const query = {}; + querystring = querystring.replace(/^\?/, ""); + if (querystring) { + for (const pair of querystring.split("&")) { + let [key, value = null] = pair.split("="); + key = decodeURIComponent(key); + if (value) { + value = decodeURIComponent(value); + } + if (!(key in query)) { + query[key] = value; + } else if (Array.isArray(query[key])) { + query[key].push(value); + } else { + query[key] = [query[key], value]; + } + } + } + return query; + } + __name(parseQueryString, "parseQueryString"); + } +}); + +// node_modules/@smithy/url-parser/dist-cjs/index.js +var require_dist_cjs26 = __commonJS({ + "node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + parseUrl: () => parseUrl + }); + module2.exports = __toCommonJS2(src_exports); + var import_querystring_parser = require_dist_cjs25(); + var parseUrl = /* @__PURE__ */ __name((url) => { + if (typeof url === "string") { + return parseUrl(new URL(url)); + } + const { hostname, pathname, port, protocol, search } = url; + let query; + if (search) { + query = (0, import_querystring_parser.parseQueryString)(search); + } + return { + hostname, + port: port ? parseInt(port) : void 0, + protocol, + path: pathname, + query + }; + }, "parseUrl"); + } +}); + +// node_modules/@smithy/middleware-serde/dist-cjs/index.js +var require_dist_cjs27 = __commonJS({ + "node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + deserializerMiddleware: () => deserializerMiddleware, + deserializerMiddlewareOption: () => deserializerMiddlewareOption, + getSerdePlugin: () => getSerdePlugin, + serializerMiddleware: () => serializerMiddleware, + serializerMiddlewareOption: () => serializerMiddlewareOption + }); + module2.exports = __toCommonJS2(src_exports); + var deserializerMiddleware = /* @__PURE__ */ __name((options, deserializer) => (next, context) => async (args) => { + const { response } = await next(args); + try { + const parsed = await deserializer(response, options); + return { + response, + output: parsed + }; + } catch (error) { + Object.defineProperty(error, "$response", { + value: response + }); + if (!("$metadata" in error)) { + const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`; + error.message += "\n " + hint; + if (typeof error.$responseBodyText !== "undefined") { + if (error.$response) { + error.$response.body = error.$responseBodyText; + } + } + } + throw error; + } + }, "deserializerMiddleware"); + var serializerMiddleware = /* @__PURE__ */ __name((options, serializer) => (next, context) => async (args) => { + var _a; + const endpoint = ((_a = context.endpointV2) == null ? void 0 : _a.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint; + if (!endpoint) { + throw new Error("No valid endpoint provider available."); + } + const request = await serializer(args.input, { ...options, endpoint }); + return next({ + ...args, + request + }); + }, "serializerMiddleware"); + var deserializerMiddlewareOption = { + name: "deserializerMiddleware", + step: "deserialize", + tags: ["DESERIALIZER"], + override: true + }; + var serializerMiddlewareOption = { + name: "serializerMiddleware", + step: "serialize", + tags: ["SERIALIZER"], + override: true + }; + function getSerdePlugin(config, serializer, deserializer) { + return { + applyToStack: (commandStack) => { + commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption); + commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption); + } + }; + } + __name(getSerdePlugin, "getSerdePlugin"); + } +}); + +// node_modules/@smithy/middleware-endpoint/dist-cjs/index.js +var require_dist_cjs28 = __commonJS({ + "node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + endpointMiddleware: () => endpointMiddleware, + endpointMiddlewareOptions: () => endpointMiddlewareOptions, + getEndpointFromInstructions: () => getEndpointFromInstructions, + getEndpointPlugin: () => getEndpointPlugin, + resolveEndpointConfig: () => resolveEndpointConfig, + resolveParams: () => resolveParams, + toEndpointV1: () => toEndpointV1 + }); + module2.exports = __toCommonJS2(src_exports); + var resolveParamsForS3 = /* @__PURE__ */ __name(async (endpointParams) => { + const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || ""; + if (typeof endpointParams.Bucket === "string") { + endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?")); + } + if (isArnBucketName(bucket)) { + if (endpointParams.ForcePathStyle === true) { + throw new Error("Path-style addressing cannot be used with ARN buckets"); + } + } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) { + endpointParams.ForcePathStyle = true; + } + if (endpointParams.DisableMultiRegionAccessPoints) { + endpointParams.disableMultiRegionAccessPoints = true; + endpointParams.DisableMRAP = true; + } + return endpointParams; + }, "resolveParamsForS3"); + var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/; + var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/; + var DOTS_PATTERN = /\.\./; + var isDnsCompatibleBucketName = /* @__PURE__ */ __name((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName"); + var isArnBucketName = /* @__PURE__ */ __name((bucketName) => { + const [arn, partition, service, , , bucket] = bucketName.split(":"); + const isArn = arn === "arn" && bucketName.split(":").length >= 6; + const isValidArn = Boolean(isArn && partition && service && bucket); + if (isArn && !isValidArn) { + throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`); + } + return isValidArn; + }, "isArnBucketName"); + var createConfigValueProvider = /* @__PURE__ */ __name((configKey, canonicalEndpointParamKey, config) => { + const configProvider = /* @__PURE__ */ __name(async () => { + const configValue = config[configKey] ?? config[canonicalEndpointParamKey]; + if (typeof configValue === "function") { + return configValue(); + } + return configValue; + }, "configProvider"); + if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") { + return async () => { + const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials; + const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope); + return configValue; + }; + } + if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") { + return async () => { + const endpoint = await configProvider(); + if (endpoint && typeof endpoint === "object") { + if ("url" in endpoint) { + return endpoint.url.href; + } + if ("hostname" in endpoint) { + const { protocol, hostname, port, path } = endpoint; + return `${protocol}//${hostname}${port ? ":" + port : ""}${path}`; + } + } + return endpoint; + }; + } + return configProvider; + }, "createConfigValueProvider"); + var import_getEndpointFromConfig = require_getEndpointFromConfig(); + var import_url_parser = require_dist_cjs26(); + var toEndpointV1 = /* @__PURE__ */ __name((endpoint) => { + if (typeof endpoint === "object") { + if ("url" in endpoint) { + return (0, import_url_parser.parseUrl)(endpoint.url); + } + return endpoint; + } + return (0, import_url_parser.parseUrl)(endpoint); + }, "toEndpointV1"); + var getEndpointFromInstructions = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig, context) => { + if (!clientConfig.endpoint) { + const endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId || ""); + if (endpointFromConfig) { + clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig)); + } + } + const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig); + if (typeof clientConfig.endpointProvider !== "function") { + throw new Error("config.endpointProvider is not set."); + } + const endpoint = clientConfig.endpointProvider(endpointParams, context); + return endpoint; + }, "getEndpointFromInstructions"); + var resolveParams = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig) => { + var _a; + const endpointParams = {}; + const instructions = ((_a = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a.call(instructionsSupplier)) || {}; + for (const [name, instruction] of Object.entries(instructions)) { + switch (instruction.type) { + case "staticContextParams": + endpointParams[name] = instruction.value; + break; + case "contextParams": + endpointParams[name] = commandInput[instruction.name]; + break; + case "clientContextParams": + case "builtInParams": + endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)(); + break; + default: + throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction)); + } + } + if (Object.keys(instructions).length === 0) { + Object.assign(endpointParams, clientConfig); + } + if (String(clientConfig.serviceId).toLowerCase() === "s3") { + await resolveParamsForS3(endpointParams); + } + return endpointParams; + }, "resolveParams"); + var import_util_middleware = require_dist_cjs9(); + var endpointMiddleware = /* @__PURE__ */ __name(({ + config, + instructions + }) => { + return (next, context) => async (args) => { + var _a, _b, _c; + const endpoint = await getEndpointFromInstructions( + args.input, + { + getEndpointParameterInstructions() { + return instructions; + } + }, + { ...config }, + context + ); + context.endpointV2 = endpoint; + context.authSchemes = (_a = endpoint.properties) == null ? void 0 : _a.authSchemes; + const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0]; + if (authScheme) { + context["signing_region"] = authScheme.signingRegion; + context["signing_service"] = authScheme.signingName; + const smithyContext = (0, import_util_middleware.getSmithyContext)(context); + const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption; + if (httpAuthOption) { + httpAuthOption.signingProperties = Object.assign( + httpAuthOption.signingProperties || {}, + { + signing_region: authScheme.signingRegion, + signingRegion: authScheme.signingRegion, + signing_service: authScheme.signingName, + signingName: authScheme.signingName, + signingRegionSet: authScheme.signingRegionSet + }, + authScheme.properties + ); + } + } + return next({ + ...args + }); + }; + }, "endpointMiddleware"); + var import_middleware_serde = require_dist_cjs27(); + var endpointMiddlewareOptions = { + step: "serialize", + tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"], + name: "endpointV2Middleware", + override: true, + relation: "before", + toMiddleware: import_middleware_serde.serializerMiddlewareOption.name + }; + var getEndpointPlugin = /* @__PURE__ */ __name((config, instructions) => ({ + applyToStack: (clientStack) => { + clientStack.addRelativeTo( + endpointMiddleware({ + config, + instructions + }), + endpointMiddlewareOptions + ); + } + }), "getEndpointPlugin"); + var resolveEndpointConfig = /* @__PURE__ */ __name((input) => { + const tls = input.tls ?? true; + const { endpoint } = input; + const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware.normalizeProvider)(endpoint)()) : void 0; + const isCustomEndpoint = !!endpoint; + return { + ...input, + endpoint: customEndpointProvider, + tls, + isCustomEndpoint, + useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false), + useFipsEndpoint: (0, import_util_middleware.normalizeProvider)(input.useFipsEndpoint ?? false) + }; + }, "resolveEndpointConfig"); + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/rng.js +function rng() { + if (poolPtr > rnds8Pool.length - 16) { + import_crypto.default.randomFillSync(rnds8Pool); + poolPtr = 0; + } + return rnds8Pool.slice(poolPtr, poolPtr += 16); +} +var import_crypto, rnds8Pool, poolPtr; +var init_rng = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/rng.js"() { + import_crypto = __toESM(require("crypto")); + rnds8Pool = new Uint8Array(256); + poolPtr = rnds8Pool.length; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/regex.js +var regex_default; +var init_regex = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/regex.js"() { + regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/validate.js +function validate(uuid) { + return typeof uuid === "string" && regex_default.test(uuid); +} +var validate_default; +var init_validate = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/validate.js"() { + init_regex(); + validate_default = validate; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/stringify.js +function unsafeStringify(arr, offset = 0) { + return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]; +} +function stringify(arr, offset = 0) { + const uuid = unsafeStringify(arr, offset); + if (!validate_default(uuid)) { + throw TypeError("Stringified UUID is invalid"); + } + return uuid; +} +var byteToHex, stringify_default; +var init_stringify = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/stringify.js"() { + init_validate(); + byteToHex = []; + for (let i = 0; i < 256; ++i) { + byteToHex.push((i + 256).toString(16).slice(1)); + } + stringify_default = stringify; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v1.js +function v1(options, buf, offset) { + let i = buf && offset || 0; + const b = buf || new Array(16); + options = options || {}; + let node = options.node || _nodeId; + let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; + if (node == null || clockseq == null) { + const seedBytes = options.random || (options.rng || rng)(); + if (node == null) { + node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; + } + if (clockseq == null) { + clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383; + } + } + let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); + let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; + const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; + if (dt < 0 && options.clockseq === void 0) { + clockseq = clockseq + 1 & 16383; + } + if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) { + nsecs = 0; + } + if (nsecs >= 1e4) { + throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); + } + _lastMSecs = msecs; + _lastNSecs = nsecs; + _clockseq = clockseq; + msecs += 122192928e5; + const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; + b[i++] = tl >>> 24 & 255; + b[i++] = tl >>> 16 & 255; + b[i++] = tl >>> 8 & 255; + b[i++] = tl & 255; + const tmh = msecs / 4294967296 * 1e4 & 268435455; + b[i++] = tmh >>> 8 & 255; + b[i++] = tmh & 255; + b[i++] = tmh >>> 24 & 15 | 16; + b[i++] = tmh >>> 16 & 255; + b[i++] = clockseq >>> 8 | 128; + b[i++] = clockseq & 255; + for (let n = 0; n < 6; ++n) { + b[i + n] = node[n]; + } + return buf || unsafeStringify(b); +} +var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default; +var init_v1 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v1.js"() { + init_rng(); + init_stringify(); + _lastMSecs = 0; + _lastNSecs = 0; + v1_default = v1; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/parse.js +function parse(uuid) { + if (!validate_default(uuid)) { + throw TypeError("Invalid UUID"); + } + let v; + const arr = new Uint8Array(16); + arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; + arr[1] = v >>> 16 & 255; + arr[2] = v >>> 8 & 255; + arr[3] = v & 255; + arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; + arr[5] = v & 255; + arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; + arr[7] = v & 255; + arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; + arr[9] = v & 255; + arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255; + arr[11] = v / 4294967296 & 255; + arr[12] = v >>> 24 & 255; + arr[13] = v >>> 16 & 255; + arr[14] = v >>> 8 & 255; + arr[15] = v & 255; + return arr; +} +var parse_default; +var init_parse = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/parse.js"() { + init_validate(); + parse_default = parse; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v35.js +function stringToBytes(str) { + str = unescape(encodeURIComponent(str)); + const bytes = []; + for (let i = 0; i < str.length; ++i) { + bytes.push(str.charCodeAt(i)); + } + return bytes; +} +function v35(name, version3, hashfunc) { + function generateUUID(value, namespace, buf, offset) { + var _namespace; + if (typeof value === "string") { + value = stringToBytes(value); + } + if (typeof namespace === "string") { + namespace = parse_default(namespace); + } + if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) { + throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); + } + let bytes = new Uint8Array(16 + value.length); + bytes.set(namespace); + bytes.set(value, namespace.length); + bytes = hashfunc(bytes); + bytes[6] = bytes[6] & 15 | version3; + bytes[8] = bytes[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = bytes[i]; + } + return buf; + } + return unsafeStringify(bytes); + } + try { + generateUUID.name = name; + } catch (err) { + } + generateUUID.DNS = DNS; + generateUUID.URL = URL2; + return generateUUID; +} +var DNS, URL2; +var init_v35 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v35.js"() { + init_stringify(); + init_parse(); + DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; + URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/md5.js +function md5(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto2.default.createHash("md5").update(bytes).digest(); +} +var import_crypto2, md5_default; +var init_md5 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/md5.js"() { + import_crypto2 = __toESM(require("crypto")); + md5_default = md5; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v3.js +var v3, v3_default; +var init_v3 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v3.js"() { + init_v35(); + init_md5(); + v3 = v35("v3", 48, md5_default); + v3_default = v3; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/native.js +var import_crypto3, native_default; +var init_native = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/native.js"() { + import_crypto3 = __toESM(require("crypto")); + native_default = { + randomUUID: import_crypto3.default.randomUUID + }; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v4.js +function v4(options, buf, offset) { + if (native_default.randomUUID && !buf && !options) { + return native_default.randomUUID(); + } + options = options || {}; + const rnds = options.random || (options.rng || rng)(); + rnds[6] = rnds[6] & 15 | 64; + rnds[8] = rnds[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = rnds[i]; + } + return buf; + } + return unsafeStringify(rnds); +} +var v4_default; +var init_v4 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v4.js"() { + init_native(); + init_rng(); + init_stringify(); + v4_default = v4; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/sha1.js +function sha1(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto4.default.createHash("sha1").update(bytes).digest(); +} +var import_crypto4, sha1_default; +var init_sha1 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/sha1.js"() { + import_crypto4 = __toESM(require("crypto")); + sha1_default = sha1; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v5.js +var v5, v5_default; +var init_v5 = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v5.js"() { + init_v35(); + init_sha1(); + v5 = v35("v5", 80, sha1_default); + v5_default = v5; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/nil.js +var nil_default; +var init_nil = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/nil.js"() { + nil_default = "00000000-0000-0000-0000-000000000000"; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/version.js +function version(uuid) { + if (!validate_default(uuid)) { + throw TypeError("Invalid UUID"); + } + return parseInt(uuid.slice(14, 15), 16); +} +var version_default; +var init_version = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/version.js"() { + init_validate(); + version_default = version; + } +}); + +// node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/index.js +var esm_node_exports = {}; +__export(esm_node_exports, { + NIL: () => nil_default, + parse: () => parse_default, + stringify: () => stringify_default, + v1: () => v1_default, + v3: () => v3_default, + v4: () => v4_default, + v5: () => v5_default, + validate: () => validate_default, + version: () => version_default +}); +var init_esm_node = __esm({ + "node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/index.js"() { + init_v1(); + init_v3(); + init_v4(); + init_v5(); + init_nil(); + init_version(); + init_validate(); + init_stringify(); + init_parse(); + } +}); + +// node_modules/@smithy/service-error-classification/dist-cjs/index.js +var require_dist_cjs29 = __commonJS({ + "node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + isClockSkewCorrectedError: () => isClockSkewCorrectedError, + isClockSkewError: () => isClockSkewError, + isRetryableByTrait: () => isRetryableByTrait, + isServerError: () => isServerError, + isThrottlingError: () => isThrottlingError, + isTransientError: () => isTransientError + }); + module2.exports = __toCommonJS2(src_exports); + var CLOCK_SKEW_ERROR_CODES = [ + "AuthFailure", + "InvalidSignatureException", + "RequestExpired", + "RequestInTheFuture", + "RequestTimeTooSkewed", + "SignatureDoesNotMatch" + ]; + var THROTTLING_ERROR_CODES = [ + "BandwidthLimitExceeded", + "EC2ThrottledException", + "LimitExceededException", + "PriorRequestNotComplete", + "ProvisionedThroughputExceededException", + "RequestLimitExceeded", + "RequestThrottled", + "RequestThrottledException", + "SlowDown", + "ThrottledException", + "Throttling", + "ThrottlingException", + "TooManyRequestsException", + "TransactionInProgressException" + // DynamoDB + ]; + var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"]; + var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504]; + var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"]; + var isRetryableByTrait = /* @__PURE__ */ __name((error) => error.$retryable !== void 0, "isRetryableByTrait"); + var isClockSkewError = /* @__PURE__ */ __name((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError"); + var isClockSkewCorrectedError = /* @__PURE__ */ __name((error) => { + var _a; + return (_a = error.$metadata) == null ? void 0 : _a.clockSkewCorrected; + }, "isClockSkewCorrectedError"); + var isThrottlingError = /* @__PURE__ */ __name((error) => { + var _a, _b; + return ((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true; + }, "isThrottlingError"); + var isTransientError = /* @__PURE__ */ __name((error) => { + var _a; + return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) || 0); + }, "isTransientError"); + var isServerError = /* @__PURE__ */ __name((error) => { + var _a; + if (((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) !== void 0) { + const statusCode = error.$metadata.httpStatusCode; + if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) { + return true; + } + return false; + } + return false; + }, "isServerError"); + } +}); + +// node_modules/@smithy/util-retry/dist-cjs/index.js +var require_dist_cjs30 = __commonJS({ + "node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + AdaptiveRetryStrategy: () => AdaptiveRetryStrategy, + ConfiguredRetryStrategy: () => ConfiguredRetryStrategy, + DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS, + DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE, + DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE, + DefaultRateLimiter: () => DefaultRateLimiter, + INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS, + INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER, + MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY, + NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT, + REQUEST_HEADER: () => REQUEST_HEADER, + RETRY_COST: () => RETRY_COST, + RETRY_MODES: () => RETRY_MODES, + StandardRetryStrategy: () => StandardRetryStrategy, + THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE, + TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST + }); + module2.exports = __toCommonJS2(src_exports); + var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => { + RETRY_MODES2["STANDARD"] = "standard"; + RETRY_MODES2["ADAPTIVE"] = "adaptive"; + return RETRY_MODES2; + })(RETRY_MODES || {}); + var DEFAULT_MAX_ATTEMPTS = 3; + var DEFAULT_RETRY_MODE = "standard"; + var import_service_error_classification = require_dist_cjs29(); + var _DefaultRateLimiter = class _DefaultRateLimiter { + constructor(options) { + this.currentCapacity = 0; + this.enabled = false; + this.lastMaxRate = 0; + this.measuredTxRate = 0; + this.requestCount = 0; + this.lastTimestamp = 0; + this.timeWindow = 0; + this.beta = (options == null ? void 0 : options.beta) ?? 0.7; + this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1; + this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5; + this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4; + this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8; + const currentTimeInSeconds = this.getCurrentTimeInSeconds(); + this.lastThrottleTime = currentTimeInSeconds; + this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds()); + this.fillRate = this.minFillRate; + this.maxCapacity = this.minCapacity; + } + getCurrentTimeInSeconds() { + return Date.now() / 1e3; + } + async getSendToken() { + return this.acquireTokenBucket(1); + } + async acquireTokenBucket(amount) { + if (!this.enabled) { + return; + } + this.refillTokenBucket(); + if (amount > this.currentCapacity) { + const delay = (amount - this.currentCapacity) / this.fillRate * 1e3; + await new Promise((resolve) => setTimeout(resolve, delay)); + } + this.currentCapacity = this.currentCapacity - amount; + } + refillTokenBucket() { + const timestamp = this.getCurrentTimeInSeconds(); + if (!this.lastTimestamp) { + this.lastTimestamp = timestamp; + return; + } + const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate; + this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount); + this.lastTimestamp = timestamp; + } + updateClientSendingRate(response) { + let calculatedRate; + this.updateMeasuredRate(); + if ((0, import_service_error_classification.isThrottlingError)(response)) { + const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate); + this.lastMaxRate = rateToUse; + this.calculateTimeWindow(); + this.lastThrottleTime = this.getCurrentTimeInSeconds(); + calculatedRate = this.cubicThrottle(rateToUse); + this.enableTokenBucket(); + } else { + this.calculateTimeWindow(); + calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds()); + } + const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate); + this.updateTokenBucketRate(newRate); + } + calculateTimeWindow() { + this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3)); + } + cubicThrottle(rateToUse) { + return this.getPrecise(rateToUse * this.beta); + } + cubicSuccess(timestamp) { + return this.getPrecise( + this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate + ); + } + enableTokenBucket() { + this.enabled = true; + } + updateTokenBucketRate(newRate) { + this.refillTokenBucket(); + this.fillRate = Math.max(newRate, this.minFillRate); + this.maxCapacity = Math.max(newRate, this.minCapacity); + this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity); + } + updateMeasuredRate() { + const t = this.getCurrentTimeInSeconds(); + const timeBucket = Math.floor(t * 2) / 2; + this.requestCount++; + if (timeBucket > this.lastTxRateBucket) { + const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket); + this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth)); + this.requestCount = 0; + this.lastTxRateBucket = timeBucket; + } + } + getPrecise(num) { + return parseFloat(num.toFixed(8)); + } + }; + __name(_DefaultRateLimiter, "DefaultRateLimiter"); + var DefaultRateLimiter = _DefaultRateLimiter; + var DEFAULT_RETRY_DELAY_BASE = 100; + var MAXIMUM_RETRY_DELAY = 20 * 1e3; + var THROTTLING_RETRY_DELAY_BASE = 500; + var INITIAL_RETRY_TOKENS = 500; + var RETRY_COST = 5; + var TIMEOUT_RETRY_COST = 10; + var NO_RETRY_INCREMENT = 1; + var INVOCATION_ID_HEADER = "amz-sdk-invocation-id"; + var REQUEST_HEADER = "amz-sdk-request"; + var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name(() => { + let delayBase = DEFAULT_RETRY_DELAY_BASE; + const computeNextBackoffDelay = /* @__PURE__ */ __name((attempts) => { + return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)); + }, "computeNextBackoffDelay"); + const setDelayBase = /* @__PURE__ */ __name((delay) => { + delayBase = delay; + }, "setDelayBase"); + return { + computeNextBackoffDelay, + setDelayBase + }; + }, "getDefaultRetryBackoffStrategy"); + var createDefaultRetryToken = /* @__PURE__ */ __name(({ + retryDelay, + retryCount, + retryCost + }) => { + const getRetryCount = /* @__PURE__ */ __name(() => retryCount, "getRetryCount"); + const getRetryDelay = /* @__PURE__ */ __name(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay"); + const getRetryCost = /* @__PURE__ */ __name(() => retryCost, "getRetryCost"); + return { + getRetryCount, + getRetryDelay, + getRetryCost + }; + }, "createDefaultRetryToken"); + var _StandardRetryStrategy = class _StandardRetryStrategy { + constructor(maxAttempts) { + this.maxAttempts = maxAttempts; + this.mode = "standard"; + this.capacity = INITIAL_RETRY_TOKENS; + this.retryBackoffStrategy = getDefaultRetryBackoffStrategy(); + this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts; + } + async acquireInitialRetryToken(retryTokenScope) { + return createDefaultRetryToken({ + retryDelay: DEFAULT_RETRY_DELAY_BASE, + retryCount: 0 + }); + } + async refreshRetryTokenForRetry(token, errorInfo) { + const maxAttempts = await this.getMaxAttempts(); + if (this.shouldRetry(token, errorInfo, maxAttempts)) { + const errorType = errorInfo.errorType; + this.retryBackoffStrategy.setDelayBase( + errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE + ); + const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount()); + const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType; + const capacityCost = this.getCapacityCost(errorType); + this.capacity -= capacityCost; + return createDefaultRetryToken({ + retryDelay, + retryCount: token.getRetryCount() + 1, + retryCost: capacityCost + }); + } + throw new Error("No retry token available"); + } + recordSuccess(token) { + this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT)); + } + /** + * @returns the current available retry capacity. + * + * This number decreases when retries are executed and refills when requests or retries succeed. + */ + getCapacity() { + return this.capacity; + } + async getMaxAttempts() { + try { + return await this.maxAttemptsProvider(); + } catch (error) { + console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`); + return DEFAULT_MAX_ATTEMPTS; + } + } + shouldRetry(tokenToRenew, errorInfo, maxAttempts) { + const attempts = tokenToRenew.getRetryCount() + 1; + return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType); + } + getCapacityCost(errorType) { + return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST; + } + isRetryableError(errorType) { + return errorType === "THROTTLING" || errorType === "TRANSIENT"; + } + }; + __name(_StandardRetryStrategy, "StandardRetryStrategy"); + var StandardRetryStrategy = _StandardRetryStrategy; + var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy { + constructor(maxAttemptsProvider, options) { + this.maxAttemptsProvider = maxAttemptsProvider; + this.mode = "adaptive"; + const { rateLimiter } = options ?? {}; + this.rateLimiter = rateLimiter ?? new DefaultRateLimiter(); + this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider); + } + async acquireInitialRetryToken(retryTokenScope) { + await this.rateLimiter.getSendToken(); + return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope); + } + async refreshRetryTokenForRetry(tokenToRenew, errorInfo) { + this.rateLimiter.updateClientSendingRate(errorInfo); + return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo); + } + recordSuccess(token) { + this.rateLimiter.updateClientSendingRate({}); + this.standardRetryStrategy.recordSuccess(token); + } + }; + __name(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy"); + var AdaptiveRetryStrategy = _AdaptiveRetryStrategy; + var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy { + /** + * @param maxAttempts - the maximum number of retry attempts allowed. + * e.g., if set to 3, then 4 total requests are possible. + * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt + * and returns the delay. + * + * @example exponential backoff. + * ```js + * new Client({ + * retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2) + * }); + * ``` + * @example constant delay. + * ```js + * new Client({ + * retryStrategy: new ConfiguredRetryStrategy(3, 2000) + * }); + * ``` + */ + constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) { + super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts); + if (typeof computeNextBackoffDelay === "number") { + this.computeNextBackoffDelay = () => computeNextBackoffDelay; + } else { + this.computeNextBackoffDelay = computeNextBackoffDelay; + } + } + async refreshRetryTokenForRetry(tokenToRenew, errorInfo) { + const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo); + token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount()); + return token; + } + }; + __name(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy"); + var ConfiguredRetryStrategy = _ConfiguredRetryStrategy; + } +}); + +// node_modules/@smithy/middleware-stack/dist-cjs/index.js +var require_dist_cjs31 = __commonJS({ + "node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + constructStack: () => constructStack + }); + module2.exports = __toCommonJS2(src_exports); + var getAllAliases = /* @__PURE__ */ __name((name, aliases) => { + const _aliases = []; + if (name) { + _aliases.push(name); + } + if (aliases) { + for (const alias of aliases) { + _aliases.push(alias); + } + } + return _aliases; + }, "getAllAliases"); + var getMiddlewareNameWithAliases = /* @__PURE__ */ __name((name, aliases) => { + return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`; + }, "getMiddlewareNameWithAliases"); + var constructStack = /* @__PURE__ */ __name(() => { + let absoluteEntries = []; + let relativeEntries = []; + let identifyOnResolve = false; + const entriesNameSet = /* @__PURE__ */ new Set(); + const sort = /* @__PURE__ */ __name((entries) => entries.sort( + (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"] + ), "sort"); + const removeByName = /* @__PURE__ */ __name((toRemove) => { + let isRemoved = false; + const filterCb = /* @__PURE__ */ __name((entry) => { + const aliases = getAllAliases(entry.name, entry.aliases); + if (aliases.includes(toRemove)) { + isRemoved = true; + for (const alias of aliases) { + entriesNameSet.delete(alias); + } + return false; + } + return true; + }, "filterCb"); + absoluteEntries = absoluteEntries.filter(filterCb); + relativeEntries = relativeEntries.filter(filterCb); + return isRemoved; + }, "removeByName"); + const removeByReference = /* @__PURE__ */ __name((toRemove) => { + let isRemoved = false; + const filterCb = /* @__PURE__ */ __name((entry) => { + if (entry.middleware === toRemove) { + isRemoved = true; + for (const alias of getAllAliases(entry.name, entry.aliases)) { + entriesNameSet.delete(alias); + } + return false; + } + return true; + }, "filterCb"); + absoluteEntries = absoluteEntries.filter(filterCb); + relativeEntries = relativeEntries.filter(filterCb); + return isRemoved; + }, "removeByReference"); + const cloneTo = /* @__PURE__ */ __name((toStack) => { + var _a; + absoluteEntries.forEach((entry) => { + toStack.add(entry.middleware, { ...entry }); + }); + relativeEntries.forEach((entry) => { + toStack.addRelativeTo(entry.middleware, { ...entry }); + }); + (_a = toStack.identifyOnResolve) == null ? void 0 : _a.call(toStack, stack.identifyOnResolve()); + return toStack; + }, "cloneTo"); + const expandRelativeMiddlewareList = /* @__PURE__ */ __name((from) => { + const expandedMiddlewareList = []; + from.before.forEach((entry) => { + if (entry.before.length === 0 && entry.after.length === 0) { + expandedMiddlewareList.push(entry); + } else { + expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry)); + } + }); + expandedMiddlewareList.push(from); + from.after.reverse().forEach((entry) => { + if (entry.before.length === 0 && entry.after.length === 0) { + expandedMiddlewareList.push(entry); + } else { + expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry)); + } + }); + return expandedMiddlewareList; + }, "expandRelativeMiddlewareList"); + const getMiddlewareList = /* @__PURE__ */ __name((debug = false) => { + const normalizedAbsoluteEntries = []; + const normalizedRelativeEntries = []; + const normalizedEntriesNameMap = {}; + absoluteEntries.forEach((entry) => { + const normalizedEntry = { + ...entry, + before: [], + after: [] + }; + for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) { + normalizedEntriesNameMap[alias] = normalizedEntry; + } + normalizedAbsoluteEntries.push(normalizedEntry); + }); + relativeEntries.forEach((entry) => { + const normalizedEntry = { + ...entry, + before: [], + after: [] + }; + for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) { + normalizedEntriesNameMap[alias] = normalizedEntry; + } + normalizedRelativeEntries.push(normalizedEntry); + }); + normalizedRelativeEntries.forEach((entry) => { + if (entry.toMiddleware) { + const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware]; + if (toMiddleware === void 0) { + if (debug) { + return; + } + throw new Error( + `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}` + ); + } + if (entry.relation === "after") { + toMiddleware.after.push(entry); + } + if (entry.relation === "before") { + toMiddleware.before.push(entry); + } + } + }); + const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce((wholeList, expandedMiddlewareList) => { + wholeList.push(...expandedMiddlewareList); + return wholeList; + }, []); + return mainChain; + }, "getMiddlewareList"); + const stack = { + add: (middleware, options = {}) => { + const { name, override, aliases: _aliases } = options; + const entry = { + step: "initialize", + priority: "normal", + middleware, + ...options + }; + const aliases = getAllAliases(name, _aliases); + if (aliases.length > 0) { + if (aliases.some((alias) => entriesNameSet.has(alias))) { + if (!override) + throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`); + for (const alias of aliases) { + const toOverrideIndex = absoluteEntries.findIndex( + (entry2) => { + var _a; + return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias)); + } + ); + if (toOverrideIndex === -1) { + continue; + } + const toOverride = absoluteEntries[toOverrideIndex]; + if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) { + throw new Error( + `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.` + ); + } + absoluteEntries.splice(toOverrideIndex, 1); + } + } + for (const alias of aliases) { + entriesNameSet.add(alias); + } + } + absoluteEntries.push(entry); + }, + addRelativeTo: (middleware, options) => { + const { name, override, aliases: _aliases } = options; + const entry = { + middleware, + ...options + }; + const aliases = getAllAliases(name, _aliases); + if (aliases.length > 0) { + if (aliases.some((alias) => entriesNameSet.has(alias))) { + if (!override) + throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`); + for (const alias of aliases) { + const toOverrideIndex = relativeEntries.findIndex( + (entry2) => { + var _a; + return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias)); + } + ); + if (toOverrideIndex === -1) { + continue; + } + const toOverride = relativeEntries[toOverrideIndex]; + if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) { + throw new Error( + `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.` + ); + } + relativeEntries.splice(toOverrideIndex, 1); + } + } + for (const alias of aliases) { + entriesNameSet.add(alias); + } + } + relativeEntries.push(entry); + }, + clone: () => cloneTo(constructStack()), + use: (plugin) => { + plugin.applyToStack(stack); + }, + remove: (toRemove) => { + if (typeof toRemove === "string") + return removeByName(toRemove); + else + return removeByReference(toRemove); + }, + removeByTag: (toRemove) => { + let isRemoved = false; + const filterCb = /* @__PURE__ */ __name((entry) => { + const { tags, name, aliases: _aliases } = entry; + if (tags && tags.includes(toRemove)) { + const aliases = getAllAliases(name, _aliases); + for (const alias of aliases) { + entriesNameSet.delete(alias); + } + isRemoved = true; + return false; + } + return true; + }, "filterCb"); + absoluteEntries = absoluteEntries.filter(filterCb); + relativeEntries = relativeEntries.filter(filterCb); + return isRemoved; + }, + concat: (from) => { + var _a; + const cloned = cloneTo(constructStack()); + cloned.use(from); + cloned.identifyOnResolve( + identifyOnResolve || cloned.identifyOnResolve() || (((_a = from.identifyOnResolve) == null ? void 0 : _a.call(from)) ?? false) + ); + return cloned; + }, + applyToStack: cloneTo, + identify: () => { + return getMiddlewareList(true).map((mw) => { + const step = mw.step ?? mw.relation + " " + mw.toMiddleware; + return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step; + }); + }, + identifyOnResolve(toggle) { + if (typeof toggle === "boolean") + identifyOnResolve = toggle; + return identifyOnResolve; + }, + resolve: (handler2, context) => { + for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) { + handler2 = middleware(handler2, context); + } + if (identifyOnResolve) { + console.log(stack.identify()); + } + return handler2; + } + }; + return stack; + }, "constructStack"); + var stepWeights = { + initialize: 5, + serialize: 4, + build: 3, + finalizeRequest: 2, + deserialize: 1 + }; + var priorityWeights = { + high: 3, + normal: 2, + low: 1 + }; + } +}); + +// node_modules/@smithy/util-base64/dist-cjs/fromBase64.js +var require_fromBase64 = __commonJS({ + "node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromBase64 = void 0; + var util_buffer_from_1 = require_dist_cjs11(); + var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/; + var fromBase642 = (input) => { + if (input.length * 3 % 4 !== 0) { + throw new TypeError(`Incorrect padding on base64 string.`); + } + if (!BASE64_REGEX.exec(input)) { + throw new TypeError(`Invalid base64 string.`); + } + const buffer = (0, util_buffer_from_1.fromString)(input, "base64"); + return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength); + }; + exports2.fromBase64 = fromBase642; + } +}); + +// node_modules/@smithy/util-base64/dist-cjs/toBase64.js +var require_toBase64 = __commonJS({ + "node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toBase64 = void 0; + var util_buffer_from_1 = require_dist_cjs11(); + var util_utf8_1 = require_dist_cjs12(); + var toBase642 = (_input) => { + let input; + if (typeof _input === "string") { + input = (0, util_utf8_1.fromUtf8)(_input); + } else { + input = _input; + } + if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") { + throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array."); + } + return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64"); + }; + exports2.toBase64 = toBase642; + } +}); + +// node_modules/@smithy/util-base64/dist-cjs/index.js +var require_dist_cjs32 = __commonJS({ + "node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_fromBase64(), module2.exports); + __reExport(src_exports, require_toBase64(), module2.exports); + } +}); + +// node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js +var require_getAwsChunkedEncodingStream = __commonJS({ + "node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAwsChunkedEncodingStream = void 0; + var stream_1 = require("stream"); + var getAwsChunkedEncodingStream2 = (readableStream, options) => { + const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options; + const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0; + const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0; + const awsChunkedEncodingStream = new stream_1.Readable({ read: () => { + } }); + readableStream.on("data", (data) => { + const length = bodyLengthChecker(data) || 0; + awsChunkedEncodingStream.push(`${length.toString(16)}\r +`); + awsChunkedEncodingStream.push(data); + awsChunkedEncodingStream.push("\r\n"); + }); + readableStream.on("end", async () => { + awsChunkedEncodingStream.push(`0\r +`); + if (checksumRequired) { + const checksum = base64Encoder(await digest); + awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r +`); + awsChunkedEncodingStream.push(`\r +`); + } + awsChunkedEncodingStream.push(null); + }); + return awsChunkedEncodingStream; + }; + exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2; + } +}); + +// node_modules/@smithy/querystring-builder/dist-cjs/index.js +var require_dist_cjs33 = __commonJS({ + "node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + buildQueryString: () => buildQueryString + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_uri_escape = require_dist_cjs14(); + function buildQueryString(query) { + const parts = []; + for (let key of Object.keys(query).sort()) { + const value = query[key]; + key = (0, import_util_uri_escape.escapeUri)(key); + if (Array.isArray(value)) { + for (let i = 0, iLen = value.length; i < iLen; i++) { + parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`); + } + } else { + let qsEntry = key; + if (value || typeof value === "string") { + qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`; + } + parts.push(qsEntry); + } + } + return parts.join("&"); + } + __name(buildQueryString, "buildQueryString"); + } +}); + +// node_modules/@smithy/node-http-handler/dist-cjs/index.js +var require_dist_cjs34 = __commonJS({ + "node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) { + var __create2 = Object.create; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __getProtoOf2 = Object.getPrototypeOf; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, + mod + )); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT, + NodeHttp2Handler: () => NodeHttp2Handler, + NodeHttpHandler: () => NodeHttpHandler, + streamCollector: () => streamCollector + }); + module2.exports = __toCommonJS2(src_exports); + var import_protocol_http = require_dist_cjs2(); + var import_querystring_builder = require_dist_cjs33(); + var import_http = require("http"); + var import_https = require("https"); + var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"]; + var getTransformedHeaders = /* @__PURE__ */ __name((headers) => { + const transformedHeaders = {}; + for (const name of Object.keys(headers)) { + const headerValues = headers[name]; + transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues; + } + return transformedHeaders; + }, "getTransformedHeaders"); + var setConnectionTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => { + if (!timeoutInMs) { + return; + } + const timeoutId = setTimeout(() => { + request.destroy(); + reject( + Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), { + name: "TimeoutError" + }) + ); + }, timeoutInMs); + request.on("socket", (socket) => { + if (socket.connecting) { + socket.on("connect", () => { + clearTimeout(timeoutId); + }); + } else { + clearTimeout(timeoutId); + } + }); + }, "setConnectionTimeout"); + var setSocketKeepAlive = /* @__PURE__ */ __name((request, { keepAlive, keepAliveMsecs }) => { + if (keepAlive !== true) { + return; + } + request.on("socket", (socket) => { + socket.setKeepAlive(keepAlive, keepAliveMsecs || 0); + }); + }, "setSocketKeepAlive"); + var setSocketTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => { + request.setTimeout(timeoutInMs, () => { + request.destroy(); + reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" })); + }); + }, "setSocketTimeout"); + var import_stream = require("stream"); + var MIN_WAIT_TIME = 1e3; + async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) { + const headers = request.headers ?? {}; + const expect = headers["Expect"] || headers["expect"]; + let timeoutId = -1; + let hasError = false; + if (expect === "100-continue") { + await Promise.race([ + new Promise((resolve) => { + timeoutId = Number(setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs))); + }), + new Promise((resolve) => { + httpRequest.on("continue", () => { + clearTimeout(timeoutId); + resolve(); + }); + httpRequest.on("error", () => { + hasError = true; + clearTimeout(timeoutId); + resolve(); + }); + }) + ]); + } + if (!hasError) { + writeBody(httpRequest, request.body); + } + } + __name(writeRequestBody, "writeRequestBody"); + function writeBody(httpRequest, body) { + if (body instanceof import_stream.Readable) { + body.pipe(httpRequest); + return; + } + if (body) { + if (Buffer.isBuffer(body) || typeof body === "string") { + httpRequest.end(body); + return; + } + const uint8 = body; + if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") { + httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength)); + return; + } + httpRequest.end(Buffer.from(body)); + return; + } + httpRequest.end(); + } + __name(writeBody, "writeBody"); + var DEFAULT_REQUEST_TIMEOUT = 0; + var _NodeHttpHandler = class _NodeHttpHandler2 { + constructor(options) { + this.socketWarningTimestamp = 0; + this.metadata = { handlerProtocol: "http/1.1" }; + this.configProvider = new Promise((resolve, reject) => { + if (typeof options === "function") { + options().then((_options) => { + resolve(this.resolveDefaultConfig(_options)); + }).catch(reject); + } else { + resolve(this.resolveDefaultConfig(options)); + } + }); + } + /** + * @returns the input if it is an HttpHandler of any class, + * or instantiates a new instance of this handler. + */ + static create(instanceOrOptions) { + if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") { + return instanceOrOptions; + } + return new _NodeHttpHandler2(instanceOrOptions); + } + /** + * @internal + * + * @param agent - http(s) agent in use by the NodeHttpHandler instance. + * @returns timestamp of last emitted warning. + */ + static checkSocketUsage(agent, socketWarningTimestamp) { + var _a, _b; + const { sockets, requests, maxSockets } = agent; + if (typeof maxSockets !== "number" || maxSockets === Infinity) { + return socketWarningTimestamp; + } + const interval = 15e3; + if (Date.now() - interval < socketWarningTimestamp) { + return socketWarningTimestamp; + } + if (sockets && requests) { + for (const origin in sockets) { + const socketsInUse = ((_a = sockets[origin]) == null ? void 0 : _a.length) ?? 0; + const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0; + if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) { + console.warn( + "@smithy/node-http-handler:WARN", + `socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.`, + "See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html", + "or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config." + ); + return Date.now(); + } + } + } + return socketWarningTimestamp; + } + resolveDefaultConfig(options) { + const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {}; + const keepAlive = true; + const maxSockets = 50; + return { + connectionTimeout, + requestTimeout: requestTimeout ?? socketTimeout, + httpAgent: (() => { + if (httpAgent instanceof import_http.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") { + return httpAgent; + } + return new import_http.Agent({ keepAlive, maxSockets, ...httpAgent }); + })(), + httpsAgent: (() => { + if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") { + return httpsAgent; + } + return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent }); + })() + }; + } + destroy() { + var _a, _b, _c, _d; + (_b = (_a = this.config) == null ? void 0 : _a.httpAgent) == null ? void 0 : _b.destroy(); + (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy(); + } + async handle(request, { abortSignal } = {}) { + if (!this.config) { + this.config = await this.configProvider; + } + let socketCheckTimeoutId; + return new Promise((_resolve, _reject) => { + let writeRequestBodyPromise = void 0; + const resolve = /* @__PURE__ */ __name(async (arg) => { + await writeRequestBodyPromise; + clearTimeout(socketCheckTimeoutId); + _resolve(arg); + }, "resolve"); + const reject = /* @__PURE__ */ __name(async (arg) => { + await writeRequestBodyPromise; + _reject(arg); + }, "reject"); + if (!this.config) { + throw new Error("Node HTTP request handler config is not resolved"); + } + if (abortSignal == null ? void 0 : abortSignal.aborted) { + const abortError = new Error("Request aborted"); + abortError.name = "AbortError"; + reject(abortError); + return; + } + const isSSL = request.protocol === "https:"; + const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent; + socketCheckTimeoutId = setTimeout(() => { + this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(agent, this.socketWarningTimestamp); + }, this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)); + const queryString = (0, import_querystring_builder.buildQueryString)(request.query || {}); + let auth = void 0; + if (request.username != null || request.password != null) { + const username = request.username ?? ""; + const password = request.password ?? ""; + auth = `${username}:${password}`; + } + let path = request.path; + if (queryString) { + path += `?${queryString}`; + } + if (request.fragment) { + path += `#${request.fragment}`; + } + const nodeHttpsOptions = { + headers: request.headers, + host: request.hostname, + method: request.method, + path, + port: request.port, + agent, + auth + }; + const requestFunc = isSSL ? import_https.request : import_http.request; + const req = requestFunc(nodeHttpsOptions, (res) => { + const httpResponse = new import_protocol_http.HttpResponse({ + statusCode: res.statusCode || -1, + reason: res.statusMessage, + headers: getTransformedHeaders(res.headers), + body: res + }); + resolve({ response: httpResponse }); + }); + req.on("error", (err) => { + if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) { + reject(Object.assign(err, { name: "TimeoutError" })); + } else { + reject(err); + } + }); + setConnectionTimeout(req, reject, this.config.connectionTimeout); + setSocketTimeout(req, reject, this.config.requestTimeout); + if (abortSignal) { + abortSignal.onabort = () => { + req.abort(); + const abortError = new Error("Request aborted"); + abortError.name = "AbortError"; + reject(abortError); + }; + } + const httpAgent = nodeHttpsOptions.agent; + if (typeof httpAgent === "object" && "keepAlive" in httpAgent) { + setSocketKeepAlive(req, { + // @ts-expect-error keepAlive is not public on httpAgent. + keepAlive: httpAgent.keepAlive, + // @ts-expect-error keepAliveMsecs is not public on httpAgent. + keepAliveMsecs: httpAgent.keepAliveMsecs + }); + } + writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch(_reject); + }); + } + updateHttpClientConfig(key, value) { + this.config = void 0; + this.configProvider = this.configProvider.then((config) => { + return { + ...config, + [key]: value + }; + }); + } + httpHandlerConfigs() { + return this.config ?? {}; + } + }; + __name(_NodeHttpHandler, "NodeHttpHandler"); + var NodeHttpHandler = _NodeHttpHandler; + var import_http22 = require("http2"); + var import_http2 = __toESM2(require("http2")); + var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool { + constructor(sessions) { + this.sessions = []; + this.sessions = sessions ?? []; + } + poll() { + if (this.sessions.length > 0) { + return this.sessions.shift(); + } + } + offerLast(session) { + this.sessions.push(session); + } + contains(session) { + return this.sessions.includes(session); + } + remove(session) { + this.sessions = this.sessions.filter((s) => s !== session); + } + [Symbol.iterator]() { + return this.sessions[Symbol.iterator](); + } + destroy(connection) { + for (const session of this.sessions) { + if (session === connection) { + if (!session.destroyed) { + session.destroy(); + } + } + } + } + }; + __name(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool"); + var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool; + var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager { + constructor(config) { + this.sessionCache = /* @__PURE__ */ new Map(); + this.config = config; + if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) { + throw new RangeError("maxConcurrency must be greater than zero."); + } + } + lease(requestContext, connectionConfiguration) { + const url = this.getUrlString(requestContext); + const existingPool = this.sessionCache.get(url); + if (existingPool) { + const existingSession = existingPool.poll(); + if (existingSession && !this.config.disableConcurrency) { + return existingSession; + } + } + const session = import_http2.default.connect(url); + if (this.config.maxConcurrency) { + session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => { + if (err) { + throw new Error( + "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString() + ); + } + }); + } + session.unref(); + const destroySessionCb = /* @__PURE__ */ __name(() => { + session.destroy(); + this.deleteSession(url, session); + }, "destroySessionCb"); + session.on("goaway", destroySessionCb); + session.on("error", destroySessionCb); + session.on("frameError", destroySessionCb); + session.on("close", () => this.deleteSession(url, session)); + if (connectionConfiguration.requestTimeout) { + session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb); + } + const connectionPool = this.sessionCache.get(url) || new NodeHttp2ConnectionPool(); + connectionPool.offerLast(session); + this.sessionCache.set(url, connectionPool); + return session; + } + /** + * Delete a session from the connection pool. + * @param authority The authority of the session to delete. + * @param session The session to delete. + */ + deleteSession(authority, session) { + const existingConnectionPool = this.sessionCache.get(authority); + if (!existingConnectionPool) { + return; + } + if (!existingConnectionPool.contains(session)) { + return; + } + existingConnectionPool.remove(session); + this.sessionCache.set(authority, existingConnectionPool); + } + release(requestContext, session) { + var _a; + const cacheKey = this.getUrlString(requestContext); + (_a = this.sessionCache.get(cacheKey)) == null ? void 0 : _a.offerLast(session); + } + destroy() { + for (const [key, connectionPool] of this.sessionCache) { + for (const session of connectionPool) { + if (!session.destroyed) { + session.destroy(); + } + connectionPool.remove(session); + } + this.sessionCache.delete(key); + } + } + setMaxConcurrentStreams(maxConcurrentStreams) { + if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) { + throw new RangeError("maxConcurrentStreams must be greater than zero."); + } + this.config.maxConcurrency = maxConcurrentStreams; + } + setDisableConcurrentStreams(disableConcurrentStreams) { + this.config.disableConcurrency = disableConcurrentStreams; + } + getUrlString(request) { + return request.destination.toString(); + } + }; + __name(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager"); + var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager; + var _NodeHttp2Handler = class _NodeHttp2Handler2 { + constructor(options) { + this.metadata = { handlerProtocol: "h2" }; + this.connectionManager = new NodeHttp2ConnectionManager({}); + this.configProvider = new Promise((resolve, reject) => { + if (typeof options === "function") { + options().then((opts) => { + resolve(opts || {}); + }).catch(reject); + } else { + resolve(options || {}); + } + }); + } + /** + * @returns the input if it is an HttpHandler of any class, + * or instantiates a new instance of this handler. + */ + static create(instanceOrOptions) { + if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") { + return instanceOrOptions; + } + return new _NodeHttp2Handler2(instanceOrOptions); + } + destroy() { + this.connectionManager.destroy(); + } + async handle(request, { abortSignal } = {}) { + if (!this.config) { + this.config = await this.configProvider; + this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false); + if (this.config.maxConcurrentStreams) { + this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams); + } + } + const { requestTimeout, disableConcurrentStreams } = this.config; + return new Promise((_resolve, _reject) => { + var _a; + let fulfilled = false; + let writeRequestBodyPromise = void 0; + const resolve = /* @__PURE__ */ __name(async (arg) => { + await writeRequestBodyPromise; + _resolve(arg); + }, "resolve"); + const reject = /* @__PURE__ */ __name(async (arg) => { + await writeRequestBodyPromise; + _reject(arg); + }, "reject"); + if (abortSignal == null ? void 0 : abortSignal.aborted) { + fulfilled = true; + const abortError = new Error("Request aborted"); + abortError.name = "AbortError"; + reject(abortError); + return; + } + const { hostname, method, port, protocol, query } = request; + let auth = ""; + if (request.username != null || request.password != null) { + const username = request.username ?? ""; + const password = request.password ?? ""; + auth = `${username}:${password}@`; + } + const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`; + const requestContext = { destination: new URL(authority) }; + const session = this.connectionManager.lease(requestContext, { + requestTimeout: (_a = this.config) == null ? void 0 : _a.sessionTimeout, + disableConcurrentStreams: disableConcurrentStreams || false + }); + const rejectWithDestroy = /* @__PURE__ */ __name((err) => { + if (disableConcurrentStreams) { + this.destroySession(session); + } + fulfilled = true; + reject(err); + }, "rejectWithDestroy"); + const queryString = (0, import_querystring_builder.buildQueryString)(query || {}); + let path = request.path; + if (queryString) { + path += `?${queryString}`; + } + if (request.fragment) { + path += `#${request.fragment}`; + } + const req = session.request({ + ...request.headers, + [import_http22.constants.HTTP2_HEADER_PATH]: path, + [import_http22.constants.HTTP2_HEADER_METHOD]: method + }); + session.ref(); + req.on("response", (headers) => { + const httpResponse = new import_protocol_http.HttpResponse({ + statusCode: headers[":status"] || -1, + headers: getTransformedHeaders(headers), + body: req + }); + fulfilled = true; + resolve({ response: httpResponse }); + if (disableConcurrentStreams) { + session.close(); + this.connectionManager.deleteSession(authority, session); + } + }); + if (requestTimeout) { + req.setTimeout(requestTimeout, () => { + req.close(); + const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`); + timeoutError.name = "TimeoutError"; + rejectWithDestroy(timeoutError); + }); + } + if (abortSignal) { + abortSignal.onabort = () => { + req.close(); + const abortError = new Error("Request aborted"); + abortError.name = "AbortError"; + rejectWithDestroy(abortError); + }; + } + req.on("frameError", (type, code, id) => { + rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`)); + }); + req.on("error", rejectWithDestroy); + req.on("aborted", () => { + rejectWithDestroy( + new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`) + ); + }); + req.on("close", () => { + session.unref(); + if (disableConcurrentStreams) { + session.destroy(); + } + if (!fulfilled) { + rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response")); + } + }); + writeRequestBodyPromise = writeRequestBody(req, request, requestTimeout); + }); + } + updateHttpClientConfig(key, value) { + this.config = void 0; + this.configProvider = this.configProvider.then((config) => { + return { + ...config, + [key]: value + }; + }); + } + httpHandlerConfigs() { + return this.config ?? {}; + } + /** + * Destroys a session. + * @param session The session to destroy. + */ + destroySession(session) { + if (!session.destroyed) { + session.destroy(); + } + } + }; + __name(_NodeHttp2Handler, "NodeHttp2Handler"); + var NodeHttp2Handler = _NodeHttp2Handler; + var _Collector = class _Collector extends import_stream.Writable { + constructor() { + super(...arguments); + this.bufferedBytes = []; + } + _write(chunk, encoding, callback) { + this.bufferedBytes.push(chunk); + callback(); + } + }; + __name(_Collector, "Collector"); + var Collector = _Collector; + var streamCollector = /* @__PURE__ */ __name((stream) => new Promise((resolve, reject) => { + const collector = new Collector(); + stream.pipe(collector); + stream.on("error", (err) => { + collector.end(); + reject(err); + }); + collector.on("error", reject); + collector.on("finish", function() { + const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes)); + resolve(bytes); + }); + }), "streamCollector"); + } +}); + +// node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js +var require_sdk_stream_mixin = __commonJS({ + "node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sdkStreamMixin = void 0; + var node_http_handler_1 = require_dist_cjs34(); + var util_buffer_from_1 = require_dist_cjs11(); + var stream_1 = require("stream"); + var util_1 = require("util"); + var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed."; + var sdkStreamMixin2 = (stream) => { + var _a, _b; + if (!(stream instanceof stream_1.Readable)) { + const name = ((_b = (_a = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream; + throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`); + } + let transformed = false; + const transformToByteArray = async () => { + if (transformed) { + throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED); + } + transformed = true; + return await (0, node_http_handler_1.streamCollector)(stream); + }; + return Object.assign(stream, { + transformToByteArray, + transformToString: async (encoding) => { + const buf = await transformToByteArray(); + if (encoding === void 0 || Buffer.isEncoding(encoding)) { + return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding); + } else { + const decoder = new util_1.TextDecoder(encoding); + return decoder.decode(buf); + } + }, + transformToWebStream: () => { + if (transformed) { + throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED); + } + if (stream.readableFlowing !== null) { + throw new Error("The stream has been consumed by other callbacks."); + } + if (typeof stream_1.Readable.toWeb !== "function") { + throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available."); + } + transformed = true; + return stream_1.Readable.toWeb(stream); + } + }); + }; + exports2.sdkStreamMixin = sdkStreamMixin2; + } +}); + +// node_modules/@smithy/util-stream/dist-cjs/index.js +var require_dist_cjs35 = __commonJS({ + "node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_base64 = require_dist_cjs32(); + var import_util_utf8 = require_dist_cjs12(); + function transformToString(payload, encoding = "utf-8") { + if (encoding === "base64") { + return (0, import_util_base64.toBase64)(payload); + } + return (0, import_util_utf8.toUtf8)(payload); + } + __name(transformToString, "transformToString"); + function transformFromString(str, encoding) { + if (encoding === "base64") { + return Uint8ArrayBlobAdapter.mutate((0, import_util_base64.fromBase64)(str)); + } + return Uint8ArrayBlobAdapter.mutate((0, import_util_utf8.fromUtf8)(str)); + } + __name(transformFromString, "transformFromString"); + var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array { + /** + * @param source - such as a string or Stream. + * @returns a new Uint8ArrayBlobAdapter extending Uint8Array. + */ + static fromString(source, encoding = "utf-8") { + switch (typeof source) { + case "string": + return transformFromString(source, encoding); + default: + throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`); + } + } + /** + * @param source - Uint8Array to be mutated. + * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter. + */ + static mutate(source) { + Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype); + return source; + } + /** + * @param encoding - default 'utf-8'. + * @returns the blob as string. + */ + transformToString(encoding = "utf-8") { + return transformToString(this, encoding); + } + }; + __name(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter"); + var Uint8ArrayBlobAdapter = _Uint8ArrayBlobAdapter; + __reExport(src_exports, require_getAwsChunkedEncodingStream(), module2.exports); + __reExport(src_exports, require_sdk_stream_mixin(), module2.exports); + } +}); + +// node_modules/@smithy/smithy-client/dist-cjs/index.js +var require_dist_cjs36 = __commonJS({ + "node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + Client: () => Client, + Command: () => Command, + LazyJsonString: () => LazyJsonString, + NoOpLogger: () => NoOpLogger, + SENSITIVE_STRING: () => SENSITIVE_STRING, + ServiceException: () => ServiceException, + StringWrapper: () => StringWrapper, + _json: () => _json, + collectBody: () => collectBody, + convertMap: () => convertMap, + createAggregatedClient: () => createAggregatedClient, + dateToUtcString: () => dateToUtcString, + decorateServiceException: () => decorateServiceException, + emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion, + expectBoolean: () => expectBoolean, + expectByte: () => expectByte, + expectFloat32: () => expectFloat32, + expectInt: () => expectInt, + expectInt32: () => expectInt32, + expectLong: () => expectLong, + expectNonNull: () => expectNonNull, + expectNumber: () => expectNumber, + expectObject: () => expectObject, + expectShort: () => expectShort, + expectString: () => expectString, + expectUnion: () => expectUnion, + extendedEncodeURIComponent: () => extendedEncodeURIComponent, + getArrayIfSingleItem: () => getArrayIfSingleItem, + getDefaultClientConfiguration: () => getDefaultClientConfiguration, + getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration, + getValueFromTextNode: () => getValueFromTextNode, + handleFloat: () => handleFloat, + limitedParseDouble: () => limitedParseDouble, + limitedParseFloat: () => limitedParseFloat, + limitedParseFloat32: () => limitedParseFloat32, + loadConfigsForDefaultMode: () => loadConfigsForDefaultMode, + logger: () => logger, + map: () => map, + parseBoolean: () => parseBoolean, + parseEpochTimestamp: () => parseEpochTimestamp, + parseRfc3339DateTime: () => parseRfc3339DateTime, + parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset, + parseRfc7231DateTime: () => parseRfc7231DateTime, + resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig, + resolvedPath: () => resolvedPath, + serializeFloat: () => serializeFloat, + splitEvery: () => splitEvery, + strictParseByte: () => strictParseByte, + strictParseDouble: () => strictParseDouble, + strictParseFloat: () => strictParseFloat, + strictParseFloat32: () => strictParseFloat32, + strictParseInt: () => strictParseInt, + strictParseInt32: () => strictParseInt32, + strictParseLong: () => strictParseLong, + strictParseShort: () => strictParseShort, + take: () => take, + throwDefaultError: () => throwDefaultError, + withBaseException: () => withBaseException + }); + module2.exports = __toCommonJS2(src_exports); + var _NoOpLogger = class _NoOpLogger { + trace() { + } + debug() { + } + info() { + } + warn() { + } + error() { + } + }; + __name(_NoOpLogger, "NoOpLogger"); + var NoOpLogger = _NoOpLogger; + var import_middleware_stack = require_dist_cjs31(); + var _Client = class _Client { + constructor(config) { + this.middlewareStack = (0, import_middleware_stack.constructStack)(); + this.config = config; + } + send(command, optionsOrCb, cb) { + const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0; + const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb; + const handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options); + if (callback) { + handler2(command).then( + (result) => callback(null, result.output), + (err) => callback(err) + ).catch( + // prevent any errors thrown in the callback from triggering an + // unhandled promise rejection + () => { + } + ); + } else { + return handler2(command).then((result) => result.output); + } + } + destroy() { + if (this.config.requestHandler.destroy) + this.config.requestHandler.destroy(); + } + }; + __name(_Client, "Client"); + var Client = _Client; + var import_util_stream = require_dist_cjs35(); + var collectBody = /* @__PURE__ */ __name(async (streamBody = new Uint8Array(), context) => { + if (streamBody instanceof Uint8Array) { + return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody); + } + if (!streamBody) { + return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array()); + } + const fromContext = context.streamCollector(streamBody); + return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext); + }, "collectBody"); + var import_types = require_dist_cjs(); + var _Command = class _Command { + constructor() { + this.middlewareStack = (0, import_middleware_stack.constructStack)(); + } + /** + * Factory for Command ClassBuilder. + * @internal + */ + static classBuilder() { + return new ClassBuilder(); + } + /** + * @internal + */ + resolveMiddlewareWithContext(clientStack, configuration, options, { + middlewareFn, + clientName, + commandName, + inputFilterSensitiveLog, + outputFilterSensitiveLog, + smithyContext, + additionalContext, + CommandCtor + }) { + for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) { + this.middlewareStack.use(mw); + } + const stack = clientStack.concat(this.middlewareStack); + const { logger: logger2 } = configuration; + const handlerExecutionContext = { + logger: logger2, + clientName, + commandName, + inputFilterSensitiveLog, + outputFilterSensitiveLog, + [import_types.SMITHY_CONTEXT_KEY]: { + ...smithyContext + }, + ...additionalContext + }; + const { requestHandler } = configuration; + return stack.resolve( + (request) => requestHandler.handle(request.request, options || {}), + handlerExecutionContext + ); + } + }; + __name(_Command, "Command"); + var Command = _Command; + var _ClassBuilder = class _ClassBuilder { + constructor() { + this._init = () => { + }; + this._ep = {}; + this._middlewareFn = () => []; + this._commandName = ""; + this._clientName = ""; + this._additionalContext = {}; + this._smithyContext = {}; + this._inputFilterSensitiveLog = (_) => _; + this._outputFilterSensitiveLog = (_) => _; + this._serializer = null; + this._deserializer = null; + } + /** + * Optional init callback. + */ + init(cb) { + this._init = cb; + } + /** + * Set the endpoint parameter instructions. + */ + ep(endpointParameterInstructions) { + this._ep = endpointParameterInstructions; + return this; + } + /** + * Add any number of middleware. + */ + m(middlewareSupplier) { + this._middlewareFn = middlewareSupplier; + return this; + } + /** + * Set the initial handler execution context Smithy field. + */ + s(service, operation, smithyContext = {}) { + this._smithyContext = { + service, + operation, + ...smithyContext + }; + return this; + } + /** + * Set the initial handler execution context. + */ + c(additionalContext = {}) { + this._additionalContext = additionalContext; + return this; + } + /** + * Set constant string identifiers for the operation. + */ + n(clientName, commandName) { + this._clientName = clientName; + this._commandName = commandName; + return this; + } + /** + * Set the input and output sensistive log filters. + */ + f(inputFilter = (_) => _, outputFilter = (_) => _) { + this._inputFilterSensitiveLog = inputFilter; + this._outputFilterSensitiveLog = outputFilter; + return this; + } + /** + * Sets the serializer. + */ + ser(serializer) { + this._serializer = serializer; + return this; + } + /** + * Sets the deserializer. + */ + de(deserializer) { + this._deserializer = deserializer; + return this; + } + /** + * @returns a Command class with the classBuilder properties. + */ + build() { + var _a; + const closure = this; + let CommandRef; + return CommandRef = (_a = class extends Command { + /** + * @public + */ + constructor(...[input]) { + super(); + this.serialize = closure._serializer; + this.deserialize = closure._deserializer; + this.input = input ?? {}; + closure._init(this); + } + /** + * @public + */ + static getEndpointParameterInstructions() { + return closure._ep; + } + /** + * @internal + */ + resolveMiddleware(stack, configuration, options) { + return this.resolveMiddlewareWithContext(stack, configuration, options, { + CommandCtor: CommandRef, + middlewareFn: closure._middlewareFn, + clientName: closure._clientName, + commandName: closure._commandName, + inputFilterSensitiveLog: closure._inputFilterSensitiveLog, + outputFilterSensitiveLog: closure._outputFilterSensitiveLog, + smithyContext: closure._smithyContext, + additionalContext: closure._additionalContext + }); + } + }, __name(_a, "CommandRef"), _a); + } + }; + __name(_ClassBuilder, "ClassBuilder"); + var ClassBuilder = _ClassBuilder; + var SENSITIVE_STRING = "***SensitiveInformation***"; + var createAggregatedClient = /* @__PURE__ */ __name((commands, Client2) => { + for (const command of Object.keys(commands)) { + const CommandCtor = commands[command]; + const methodImpl = /* @__PURE__ */ __name(async function(args, optionsOrCb, cb) { + const command2 = new CommandCtor(args); + if (typeof optionsOrCb === "function") { + this.send(command2, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") + throw new Error(`Expected http options but got ${typeof optionsOrCb}`); + this.send(command2, optionsOrCb || {}, cb); + } else { + return this.send(command2, optionsOrCb); + } + }, "methodImpl"); + const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, ""); + Client2.prototype[methodName] = methodImpl; + } + }, "createAggregatedClient"); + var parseBoolean = /* @__PURE__ */ __name((value) => { + switch (value) { + case "true": + return true; + case "false": + return false; + default: + throw new Error(`Unable to parse boolean value "${value}"`); + } + }, "parseBoolean"); + var expectBoolean = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value === "number") { + if (value === 0 || value === 1) { + logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`)); + } + if (value === 0) { + return false; + } + if (value === 1) { + return true; + } + } + if (typeof value === "string") { + const lower = value.toLowerCase(); + if (lower === "false" || lower === "true") { + logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`)); + } + if (lower === "false") { + return false; + } + if (lower === "true") { + return true; + } + } + if (typeof value === "boolean") { + return value; + } + throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`); + }, "expectBoolean"); + var expectNumber = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value === "string") { + const parsed = parseFloat(value); + if (!Number.isNaN(parsed)) { + if (String(parsed) !== String(value)) { + logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`)); + } + return parsed; + } + } + if (typeof value === "number") { + return value; + } + throw new TypeError(`Expected number, got ${typeof value}: ${value}`); + }, "expectNumber"); + var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23)); + var expectFloat32 = /* @__PURE__ */ __name((value) => { + const expected = expectNumber(value); + if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) { + if (Math.abs(expected) > MAX_FLOAT) { + throw new TypeError(`Expected 32-bit float, got ${value}`); + } + } + return expected; + }, "expectFloat32"); + var expectLong = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (Number.isInteger(value) && !Number.isNaN(value)) { + return value; + } + throw new TypeError(`Expected integer, got ${typeof value}: ${value}`); + }, "expectLong"); + var expectInt = expectLong; + var expectInt32 = /* @__PURE__ */ __name((value) => expectSizedInt(value, 32), "expectInt32"); + var expectShort = /* @__PURE__ */ __name((value) => expectSizedInt(value, 16), "expectShort"); + var expectByte = /* @__PURE__ */ __name((value) => expectSizedInt(value, 8), "expectByte"); + var expectSizedInt = /* @__PURE__ */ __name((value, size) => { + const expected = expectLong(value); + if (expected !== void 0 && castInt(expected, size) !== expected) { + throw new TypeError(`Expected ${size}-bit integer, got ${value}`); + } + return expected; + }, "expectSizedInt"); + var castInt = /* @__PURE__ */ __name((value, size) => { + switch (size) { + case 32: + return Int32Array.of(value)[0]; + case 16: + return Int16Array.of(value)[0]; + case 8: + return Int8Array.of(value)[0]; + } + }, "castInt"); + var expectNonNull = /* @__PURE__ */ __name((value, location) => { + if (value === null || value === void 0) { + if (location) { + throw new TypeError(`Expected a non-null value for ${location}`); + } + throw new TypeError("Expected a non-null value"); + } + return value; + }, "expectNonNull"); + var expectObject = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value === "object" && !Array.isArray(value)) { + return value; + } + const receivedType = Array.isArray(value) ? "array" : typeof value; + throw new TypeError(`Expected object, got ${receivedType}: ${value}`); + }, "expectObject"); + var expectString = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value === "string") { + return value; + } + if (["boolean", "number", "bigint"].includes(typeof value)) { + logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`)); + return String(value); + } + throw new TypeError(`Expected string, got ${typeof value}: ${value}`); + }, "expectString"); + var expectUnion = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + const asObject = expectObject(value); + const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k); + if (setKeys.length === 0) { + throw new TypeError(`Unions must have exactly one non-null member. None were found.`); + } + if (setKeys.length > 1) { + throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`); + } + return asObject; + }, "expectUnion"); + var strictParseDouble = /* @__PURE__ */ __name((value) => { + if (typeof value == "string") { + return expectNumber(parseNumber(value)); + } + return expectNumber(value); + }, "strictParseDouble"); + var strictParseFloat = strictParseDouble; + var strictParseFloat32 = /* @__PURE__ */ __name((value) => { + if (typeof value == "string") { + return expectFloat32(parseNumber(value)); + } + return expectFloat32(value); + }, "strictParseFloat32"); + var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g; + var parseNumber = /* @__PURE__ */ __name((value) => { + const matches = value.match(NUMBER_REGEX); + if (matches === null || matches[0].length !== value.length) { + throw new TypeError(`Expected real number, got implicit NaN`); + } + return parseFloat(value); + }, "parseNumber"); + var limitedParseDouble = /* @__PURE__ */ __name((value) => { + if (typeof value == "string") { + return parseFloatString(value); + } + return expectNumber(value); + }, "limitedParseDouble"); + var handleFloat = limitedParseDouble; + var limitedParseFloat = limitedParseDouble; + var limitedParseFloat32 = /* @__PURE__ */ __name((value) => { + if (typeof value == "string") { + return parseFloatString(value); + } + return expectFloat32(value); + }, "limitedParseFloat32"); + var parseFloatString = /* @__PURE__ */ __name((value) => { + switch (value) { + case "NaN": + return NaN; + case "Infinity": + return Infinity; + case "-Infinity": + return -Infinity; + default: + throw new Error(`Unable to parse float value: ${value}`); + } + }, "parseFloatString"); + var strictParseLong = /* @__PURE__ */ __name((value) => { + if (typeof value === "string") { + return expectLong(parseNumber(value)); + } + return expectLong(value); + }, "strictParseLong"); + var strictParseInt = strictParseLong; + var strictParseInt32 = /* @__PURE__ */ __name((value) => { + if (typeof value === "string") { + return expectInt32(parseNumber(value)); + } + return expectInt32(value); + }, "strictParseInt32"); + var strictParseShort = /* @__PURE__ */ __name((value) => { + if (typeof value === "string") { + return expectShort(parseNumber(value)); + } + return expectShort(value); + }, "strictParseShort"); + var strictParseByte = /* @__PURE__ */ __name((value) => { + if (typeof value === "string") { + return expectByte(parseNumber(value)); + } + return expectByte(value); + }, "strictParseByte"); + var stackTraceWarning = /* @__PURE__ */ __name((message) => { + return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n"); + }, "stackTraceWarning"); + var logger = { + warn: console.warn + }; + var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; + var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; + function dateToUtcString(date) { + const year = date.getUTCFullYear(); + const month = date.getUTCMonth(); + const dayOfWeek = date.getUTCDay(); + const dayOfMonthInt = date.getUTCDate(); + const hoursInt = date.getUTCHours(); + const minutesInt = date.getUTCMinutes(); + const secondsInt = date.getUTCSeconds(); + const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`; + const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`; + const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`; + const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`; + return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`; + } + __name(dateToUtcString, "dateToUtcString"); + var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/); + var parseRfc3339DateTime = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value !== "string") { + throw new TypeError("RFC-3339 date-times must be expressed as strings"); + } + const match = RFC3339.exec(value); + if (!match) { + throw new TypeError("Invalid RFC-3339 date-time value"); + } + const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match; + const year = strictParseShort(stripLeadingZeroes(yearStr)); + const month = parseDateValue(monthStr, "month", 1, 12); + const day = parseDateValue(dayStr, "day", 1, 31); + return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds }); + }, "parseRfc3339DateTime"); + var RFC3339_WITH_OFFSET = new RegExp( + /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/ + ); + var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value !== "string") { + throw new TypeError("RFC-3339 date-times must be expressed as strings"); + } + const match = RFC3339_WITH_OFFSET.exec(value); + if (!match) { + throw new TypeError("Invalid RFC-3339 date-time value"); + } + const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match; + const year = strictParseShort(stripLeadingZeroes(yearStr)); + const month = parseDateValue(monthStr, "month", 1, 12); + const day = parseDateValue(dayStr, "day", 1, 31); + const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds }); + if (offsetStr.toUpperCase() != "Z") { + date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr)); + } + return date; + }, "parseRfc3339DateTimeWithOffset"); + var IMF_FIXDATE = new RegExp( + /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/ + ); + var RFC_850_DATE = new RegExp( + /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/ + ); + var ASC_TIME = new RegExp( + /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/ + ); + var parseRfc7231DateTime = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + if (typeof value !== "string") { + throw new TypeError("RFC-7231 date-times must be expressed as strings"); + } + let match = IMF_FIXDATE.exec(value); + if (match) { + const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match; + return buildDate( + strictParseShort(stripLeadingZeroes(yearStr)), + parseMonthByShortName(monthStr), + parseDateValue(dayStr, "day", 1, 31), + { hours, minutes, seconds, fractionalMilliseconds } + ); + } + match = RFC_850_DATE.exec(value); + if (match) { + const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match; + return adjustRfc850Year( + buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), { + hours, + minutes, + seconds, + fractionalMilliseconds + }) + ); + } + match = ASC_TIME.exec(value); + if (match) { + const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match; + return buildDate( + strictParseShort(stripLeadingZeroes(yearStr)), + parseMonthByShortName(monthStr), + parseDateValue(dayStr.trimLeft(), "day", 1, 31), + { hours, minutes, seconds, fractionalMilliseconds } + ); + } + throw new TypeError("Invalid RFC-7231 date-time value"); + }, "parseRfc7231DateTime"); + var parseEpochTimestamp = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return void 0; + } + let valueAsDouble; + if (typeof value === "number") { + valueAsDouble = value; + } else if (typeof value === "string") { + valueAsDouble = strictParseDouble(value); + } else { + throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation"); + } + if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) { + throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics"); + } + return new Date(Math.round(valueAsDouble * 1e3)); + }, "parseEpochTimestamp"); + var buildDate = /* @__PURE__ */ __name((year, month, day, time) => { + const adjustedMonth = month - 1; + validateDayOfMonth(year, adjustedMonth, day); + return new Date( + Date.UTC( + year, + adjustedMonth, + day, + parseDateValue(time.hours, "hour", 0, 23), + parseDateValue(time.minutes, "minute", 0, 59), + // seconds can go up to 60 for leap seconds + parseDateValue(time.seconds, "seconds", 0, 60), + parseMilliseconds(time.fractionalMilliseconds) + ) + ); + }, "buildDate"); + var parseTwoDigitYear = /* @__PURE__ */ __name((value) => { + const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear(); + const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value)); + if (valueInThisCentury < thisYear) { + return valueInThisCentury + 100; + } + return valueInThisCentury; + }, "parseTwoDigitYear"); + var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3; + var adjustRfc850Year = /* @__PURE__ */ __name((input) => { + if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) { + return new Date( + Date.UTC( + input.getUTCFullYear() - 100, + input.getUTCMonth(), + input.getUTCDate(), + input.getUTCHours(), + input.getUTCMinutes(), + input.getUTCSeconds(), + input.getUTCMilliseconds() + ) + ); + } + return input; + }, "adjustRfc850Year"); + var parseMonthByShortName = /* @__PURE__ */ __name((value) => { + const monthIdx = MONTHS.indexOf(value); + if (monthIdx < 0) { + throw new TypeError(`Invalid month: ${value}`); + } + return monthIdx + 1; + }, "parseMonthByShortName"); + var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + var validateDayOfMonth = /* @__PURE__ */ __name((year, month, day) => { + let maxDays = DAYS_IN_MONTH[month]; + if (month === 1 && isLeapYear(year)) { + maxDays = 29; + } + if (day > maxDays) { + throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`); + } + }, "validateDayOfMonth"); + var isLeapYear = /* @__PURE__ */ __name((year) => { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); + }, "isLeapYear"); + var parseDateValue = /* @__PURE__ */ __name((value, type, lower, upper) => { + const dateVal = strictParseByte(stripLeadingZeroes(value)); + if (dateVal < lower || dateVal > upper) { + throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`); + } + return dateVal; + }, "parseDateValue"); + var parseMilliseconds = /* @__PURE__ */ __name((value) => { + if (value === null || value === void 0) { + return 0; + } + return strictParseFloat32("0." + value) * 1e3; + }, "parseMilliseconds"); + var parseOffsetToMilliseconds = /* @__PURE__ */ __name((value) => { + const directionStr = value[0]; + let direction = 1; + if (directionStr == "+") { + direction = 1; + } else if (directionStr == "-") { + direction = -1; + } else { + throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`); + } + const hour = Number(value.substring(1, 3)); + const minute = Number(value.substring(4, 6)); + return direction * (hour * 60 + minute) * 60 * 1e3; + }, "parseOffsetToMilliseconds"); + var stripLeadingZeroes = /* @__PURE__ */ __name((value) => { + let idx = 0; + while (idx < value.length - 1 && value.charAt(idx) === "0") { + idx++; + } + if (idx === 0) { + return value; + } + return value.slice(idx); + }, "stripLeadingZeroes"); + var _ServiceException = class _ServiceException2 extends Error { + constructor(options) { + super(options.message); + Object.setPrototypeOf(this, _ServiceException2.prototype); + this.name = options.name; + this.$fault = options.$fault; + this.$metadata = options.$metadata; + } + }; + __name(_ServiceException, "ServiceException"); + var ServiceException = _ServiceException; + var decorateServiceException = /* @__PURE__ */ __name((exception, additions = {}) => { + Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => { + if (exception[k] == void 0 || exception[k] === "") { + exception[k] = v; + } + }); + const message = exception.message || exception.Message || "UnknownError"; + exception.message = message; + delete exception.Message; + return exception; + }, "decorateServiceException"); + var throwDefaultError = /* @__PURE__ */ __name(({ output, parsedBody, exceptionCtor, errorCode }) => { + const $metadata = deserializeMetadata(output); + const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0; + const response = new exceptionCtor({ + name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError", + $fault: "client", + $metadata + }); + throw decorateServiceException(response, parsedBody); + }, "throwDefaultError"); + var withBaseException = /* @__PURE__ */ __name((ExceptionCtor) => { + return ({ output, parsedBody, errorCode }) => { + throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode }); + }; + }, "withBaseException"); + var deserializeMetadata = /* @__PURE__ */ __name((output) => ({ + httpStatusCode: output.statusCode, + requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"] + }), "deserializeMetadata"); + var loadConfigsForDefaultMode = /* @__PURE__ */ __name((mode) => { + switch (mode) { + case "standard": + return { + retryMode: "standard", + connectionTimeout: 3100 + }; + case "in-region": + return { + retryMode: "standard", + connectionTimeout: 1100 + }; + case "cross-region": + return { + retryMode: "standard", + connectionTimeout: 3100 + }; + case "mobile": + return { + retryMode: "standard", + connectionTimeout: 3e4 + }; + default: + return {}; + } + }, "loadConfigsForDefaultMode"); + var warningEmitted = false; + var emitWarningIfUnsupportedVersion = /* @__PURE__ */ __name((version3) => { + if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 14) { + warningEmitted = true; + } + }, "emitWarningIfUnsupportedVersion"); + var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + const checksumAlgorithms = []; + for (const id in import_types.AlgorithmId) { + const algorithmId = import_types.AlgorithmId[id]; + if (runtimeConfig[algorithmId] === void 0) { + continue; + } + checksumAlgorithms.push({ + algorithmId: () => algorithmId, + checksumConstructor: () => runtimeConfig[algorithmId] + }); + } + return { + _checksumAlgorithms: checksumAlgorithms, + addChecksumAlgorithm(algo) { + this._checksumAlgorithms.push(algo); + }, + checksumAlgorithms() { + return this._checksumAlgorithms; + } + }; + }, "getChecksumConfiguration"); + var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { + const runtimeConfig = {}; + clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => { + runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor(); + }); + return runtimeConfig; + }, "resolveChecksumRuntimeConfig"); + var getRetryConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let _retryStrategy = runtimeConfig.retryStrategy; + return { + setRetryStrategy(retryStrategy) { + _retryStrategy = retryStrategy; + }, + retryStrategy() { + return _retryStrategy; + } + }; + }, "getRetryConfiguration"); + var resolveRetryRuntimeConfig = /* @__PURE__ */ __name((retryStrategyConfiguration) => { + const runtimeConfig = {}; + runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy(); + return runtimeConfig; + }, "resolveRetryRuntimeConfig"); + var getDefaultExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + return { + ...getChecksumConfiguration(runtimeConfig), + ...getRetryConfiguration(runtimeConfig) + }; + }, "getDefaultExtensionConfiguration"); + var getDefaultClientConfiguration = getDefaultExtensionConfiguration; + var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { + return { + ...resolveChecksumRuntimeConfig(config), + ...resolveRetryRuntimeConfig(config) + }; + }, "resolveDefaultRuntimeConfig"); + function extendedEncodeURIComponent(str) { + return encodeURIComponent(str).replace(/[!'()*]/g, function(c) { + return "%" + c.charCodeAt(0).toString(16).toUpperCase(); + }); + } + __name(extendedEncodeURIComponent, "extendedEncodeURIComponent"); + var getArrayIfSingleItem = /* @__PURE__ */ __name((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem"); + var getValueFromTextNode = /* @__PURE__ */ __name((obj) => { + const textNodeName = "#text"; + for (const key in obj) { + if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) { + obj[key] = obj[key][textNodeName]; + } else if (typeof obj[key] === "object" && obj[key] !== null) { + obj[key] = getValueFromTextNode(obj[key]); + } + } + return obj; + }, "getValueFromTextNode"); + var StringWrapper = /* @__PURE__ */ __name(function() { + const Class = Object.getPrototypeOf(this).constructor; + const Constructor = Function.bind.apply(String, [null, ...arguments]); + const instance = new Constructor(); + Object.setPrototypeOf(instance, Class.prototype); + return instance; + }, "StringWrapper"); + StringWrapper.prototype = Object.create(String.prototype, { + constructor: { + value: StringWrapper, + enumerable: false, + writable: true, + configurable: true + } + }); + Object.setPrototypeOf(StringWrapper, String); + var _LazyJsonString = class _LazyJsonString2 extends StringWrapper { + deserializeJSON() { + return JSON.parse(super.toString()); + } + toJSON() { + return super.toString(); + } + static fromObject(object) { + if (object instanceof _LazyJsonString2) { + return object; + } else if (object instanceof String || typeof object === "string") { + return new _LazyJsonString2(object); + } + return new _LazyJsonString2(JSON.stringify(object)); + } + }; + __name(_LazyJsonString, "LazyJsonString"); + var LazyJsonString = _LazyJsonString; + function map(arg0, arg1, arg2) { + let target; + let filter; + let instructions; + if (typeof arg1 === "undefined" && typeof arg2 === "undefined") { + target = {}; + instructions = arg0; + } else { + target = arg0; + if (typeof arg1 === "function") { + filter = arg1; + instructions = arg2; + return mapWithFilter(target, filter, instructions); + } else { + instructions = arg1; + } + } + for (const key of Object.keys(instructions)) { + if (!Array.isArray(instructions[key])) { + target[key] = instructions[key]; + continue; + } + applyInstruction(target, null, instructions, key); + } + return target; + } + __name(map, "map"); + var convertMap = /* @__PURE__ */ __name((target) => { + const output = {}; + for (const [k, v] of Object.entries(target || {})) { + output[k] = [, v]; + } + return output; + }, "convertMap"); + var take = /* @__PURE__ */ __name((source, instructions) => { + const out = {}; + for (const key in instructions) { + applyInstruction(out, source, instructions, key); + } + return out; + }, "take"); + var mapWithFilter = /* @__PURE__ */ __name((target, filter, instructions) => { + return map( + target, + Object.entries(instructions).reduce( + (_instructions, [key, value]) => { + if (Array.isArray(value)) { + _instructions[key] = value; + } else { + if (typeof value === "function") { + _instructions[key] = [filter, value()]; + } else { + _instructions[key] = [filter, value]; + } + } + return _instructions; + }, + {} + ) + ); + }, "mapWithFilter"); + var applyInstruction = /* @__PURE__ */ __name((target, source, instructions, targetKey) => { + if (source !== null) { + let instruction = instructions[targetKey]; + if (typeof instruction === "function") { + instruction = [, instruction]; + } + const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction; + if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) { + target[targetKey] = valueFn(source[sourceKey]); + } + return; + } + let [filter, value] = instructions[targetKey]; + if (typeof value === "function") { + let _value; + const defaultFilterPassed = filter === void 0 && (_value = value()) != null; + const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter; + if (defaultFilterPassed) { + target[targetKey] = _value; + } else if (customFilterPassed) { + target[targetKey] = value(); + } + } else { + const defaultFilterPassed = filter === void 0 && value != null; + const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter; + if (defaultFilterPassed || customFilterPassed) { + target[targetKey] = value; + } + } + }, "applyInstruction"); + var nonNullish = /* @__PURE__ */ __name((_) => _ != null, "nonNullish"); + var pass = /* @__PURE__ */ __name((_) => _, "pass"); + var resolvedPath = /* @__PURE__ */ __name((resolvedPath2, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => { + if (input != null && input[memberName] !== void 0) { + const labelValue = labelValueProvider(); + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: " + memberName + "."); + } + resolvedPath2 = resolvedPath2.replace( + uriLabel, + isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent(segment)).join("/") : extendedEncodeURIComponent(labelValue) + ); + } else { + throw new Error("No value provided for input HTTP label: " + memberName + "."); + } + return resolvedPath2; + }, "resolvedPath"); + var serializeFloat = /* @__PURE__ */ __name((value) => { + if (value !== value) { + return "NaN"; + } + switch (value) { + case Infinity: + return "Infinity"; + case -Infinity: + return "-Infinity"; + default: + return value; + } + }, "serializeFloat"); + var _json = /* @__PURE__ */ __name((obj) => { + if (obj == null) { + return {}; + } + if (Array.isArray(obj)) { + return obj.filter((_) => _ != null).map(_json); + } + if (typeof obj === "object") { + const target = {}; + for (const key of Object.keys(obj)) { + if (obj[key] == null) { + continue; + } + target[key] = _json(obj[key]); + } + return target; + } + return obj; + }, "_json"); + function splitEvery(value, delimiter, numDelimiters) { + if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) { + throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery."); + } + const segments = value.split(delimiter); + if (numDelimiters === 1) { + return segments; + } + const compoundSegments = []; + let currentSegment = ""; + for (let i = 0; i < segments.length; i++) { + if (currentSegment === "") { + currentSegment = segments[i]; + } else { + currentSegment += delimiter + segments[i]; + } + if ((i + 1) % numDelimiters === 0) { + compoundSegments.push(currentSegment); + currentSegment = ""; + } + } + if (currentSegment !== "") { + compoundSegments.push(currentSegment); + } + return compoundSegments; + } + __name(splitEvery, "splitEvery"); + } +}); + +// node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js +var require_isStreamingPayload = __commonJS({ + "node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isStreamingPayload = void 0; + var stream_1 = require("stream"); + var isStreamingPayload = (request) => (request === null || request === void 0 ? void 0 : request.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request === null || request === void 0 ? void 0 : request.body) instanceof ReadableStream; + exports2.isStreamingPayload = isStreamingPayload; + } +}); + +// node_modules/@smithy/middleware-retry/dist-cjs/index.js +var require_dist_cjs37 = __commonJS({ + "node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + AdaptiveRetryStrategy: () => AdaptiveRetryStrategy, + CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS, + CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE, + ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS, + ENV_RETRY_MODE: () => ENV_RETRY_MODE, + NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS, + NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS, + StandardRetryStrategy: () => StandardRetryStrategy, + defaultDelayDecider: () => defaultDelayDecider, + defaultRetryDecider: () => defaultRetryDecider, + getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin, + getRetryAfterHint: () => getRetryAfterHint, + getRetryPlugin: () => getRetryPlugin, + omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware, + omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions, + resolveRetryConfig: () => resolveRetryConfig, + retryMiddleware: () => retryMiddleware, + retryMiddlewareOptions: () => retryMiddlewareOptions + }); + module2.exports = __toCommonJS2(src_exports); + var import_protocol_http = require_dist_cjs2(); + var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports)); + var import_util_retry = require_dist_cjs30(); + var getDefaultRetryQuota = /* @__PURE__ */ __name((initialRetryTokens, options) => { + const MAX_CAPACITY = initialRetryTokens; + const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT; + const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST; + const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST; + let availableCapacity = initialRetryTokens; + const getCapacityAmount = /* @__PURE__ */ __name((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount"); + const hasRetryTokens = /* @__PURE__ */ __name((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens"); + const retrieveRetryTokens = /* @__PURE__ */ __name((error) => { + if (!hasRetryTokens(error)) { + throw new Error("No retry token available"); + } + const capacityAmount = getCapacityAmount(error); + availableCapacity -= capacityAmount; + return capacityAmount; + }, "retrieveRetryTokens"); + const releaseRetryTokens = /* @__PURE__ */ __name((capacityReleaseAmount) => { + availableCapacity += capacityReleaseAmount ?? noRetryIncrement; + availableCapacity = Math.min(availableCapacity, MAX_CAPACITY); + }, "releaseRetryTokens"); + return Object.freeze({ + hasRetryTokens, + retrieveRetryTokens, + releaseRetryTokens + }); + }, "getDefaultRetryQuota"); + var defaultDelayDecider = /* @__PURE__ */ __name((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider"); + var import_service_error_classification = require_dist_cjs29(); + var defaultRetryDecider = /* @__PURE__ */ __name((error) => { + if (!error) { + return false; + } + return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error); + }, "defaultRetryDecider"); + var asSdkError = /* @__PURE__ */ __name((error) => { + if (error instanceof Error) + return error; + if (error instanceof Object) + return Object.assign(new Error(), error); + if (typeof error === "string") + return new Error(error); + return new Error(`AWS SDK error wrapper for ${error}`); + }, "asSdkError"); + var _StandardRetryStrategy = class _StandardRetryStrategy { + constructor(maxAttemptsProvider, options) { + this.maxAttemptsProvider = maxAttemptsProvider; + this.mode = import_util_retry.RETRY_MODES.STANDARD; + this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider; + this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider; + this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS); + } + shouldRetry(error, attempts, maxAttempts) { + return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error); + } + async getMaxAttempts() { + let maxAttempts; + try { + maxAttempts = await this.maxAttemptsProvider(); + } catch (error) { + maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS; + } + return maxAttempts; + } + async retry(next, args, options) { + let retryTokenAmount; + let attempts = 0; + let totalDelay = 0; + const maxAttempts = await this.getMaxAttempts(); + const { request } = args; + if (import_protocol_http.HttpRequest.isInstance(request)) { + request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)(); + } + while (true) { + try { + if (import_protocol_http.HttpRequest.isInstance(request)) { + request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`; + } + if (options == null ? void 0 : options.beforeRequest) { + await options.beforeRequest(); + } + const { response, output } = await next(args); + if (options == null ? void 0 : options.afterRequest) { + options.afterRequest(response); + } + this.retryQuota.releaseRetryTokens(retryTokenAmount); + output.$metadata.attempts = attempts + 1; + output.$metadata.totalRetryDelay = totalDelay; + return { response, output }; + } catch (e) { + const err = asSdkError(e); + attempts++; + if (this.shouldRetry(err, attempts, maxAttempts)) { + retryTokenAmount = this.retryQuota.retrieveRetryTokens(err); + const delayFromDecider = this.delayDecider( + (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE, + attempts + ); + const delayFromResponse = getDelayFromRetryAfterHeader(err.$response); + const delay = Math.max(delayFromResponse || 0, delayFromDecider); + totalDelay += delay; + await new Promise((resolve) => setTimeout(resolve, delay)); + continue; + } + if (!err.$metadata) { + err.$metadata = {}; + } + err.$metadata.attempts = attempts; + err.$metadata.totalRetryDelay = totalDelay; + throw err; + } + } + } + }; + __name(_StandardRetryStrategy, "StandardRetryStrategy"); + var StandardRetryStrategy = _StandardRetryStrategy; + var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name((response) => { + if (!import_protocol_http.HttpResponse.isInstance(response)) + return; + const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after"); + if (!retryAfterHeaderName) + return; + const retryAfter = response.headers[retryAfterHeaderName]; + const retryAfterSeconds = Number(retryAfter); + if (!Number.isNaN(retryAfterSeconds)) + return retryAfterSeconds * 1e3; + const retryAfterDate = new Date(retryAfter); + return retryAfterDate.getTime() - Date.now(); + }, "getDelayFromRetryAfterHeader"); + var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy { + constructor(maxAttemptsProvider, options) { + const { rateLimiter, ...superOptions } = options ?? {}; + super(maxAttemptsProvider, superOptions); + this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter(); + this.mode = import_util_retry.RETRY_MODES.ADAPTIVE; + } + async retry(next, args) { + return super.retry(next, args, { + beforeRequest: async () => { + return this.rateLimiter.getSendToken(); + }, + afterRequest: (response) => { + this.rateLimiter.updateClientSendingRate(response); + } + }); + } + }; + __name(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy"); + var AdaptiveRetryStrategy = _AdaptiveRetryStrategy; + var import_util_middleware = require_dist_cjs9(); + var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS"; + var CONFIG_MAX_ATTEMPTS = "max_attempts"; + var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => { + const value = env[ENV_MAX_ATTEMPTS]; + if (!value) + return void 0; + const maxAttempt = parseInt(value); + if (Number.isNaN(maxAttempt)) { + throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`); + } + return maxAttempt; + }, + configFileSelector: (profile) => { + const value = profile[CONFIG_MAX_ATTEMPTS]; + if (!value) + return void 0; + const maxAttempt = parseInt(value); + if (Number.isNaN(maxAttempt)) { + throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`); + } + return maxAttempt; + }, + default: import_util_retry.DEFAULT_MAX_ATTEMPTS + }; + var resolveRetryConfig = /* @__PURE__ */ __name((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)(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"; + var NODE_RETRY_MODE_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => env[ENV_RETRY_MODE], + configFileSelector: (profile) => profile[CONFIG_RETRY_MODE], + default: import_util_retry.DEFAULT_RETRY_MODE + }; + var omitRetryHeadersMiddleware = /* @__PURE__ */ __name(() => (next) => async (args) => { + const { request } = args; + if (import_protocol_http.HttpRequest.isInstance(request)) { + delete request.headers[import_util_retry.INVOCATION_ID_HEADER]; + delete request.headers[import_util_retry.REQUEST_HEADER]; + } + return next(args); + }, "omitRetryHeadersMiddleware"); + var omitRetryHeadersMiddlewareOptions = { + name: "omitRetryHeadersMiddleware", + tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"], + relation: "before", + toMiddleware: "awsAuthMiddleware", + override: true + }; + var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name((options) => ({ + applyToStack: (clientStack) => { + clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions); + } + }), "getOmitRetryHeadersPlugin"); + var import_smithy_client = require_dist_cjs36(); + var import_isStreamingPayload = require_isStreamingPayload(); + var retryMiddleware = /* @__PURE__ */ __name((options) => (next, context) => async (args) => { + var _a; + let retryStrategy = await options.retryStrategy(); + const maxAttempts = await options.maxAttempts(); + if (isRetryStrategyV2(retryStrategy)) { + retryStrategy = retryStrategy; + let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]); + let lastError = new Error(); + let attempts = 0; + let totalRetryDelay = 0; + const { request } = args; + const isRequest = import_protocol_http.HttpRequest.isInstance(request); + if (isRequest) { + request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)(); + } + while (true) { + try { + if (isRequest) { + request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`; + } + const { response, output } = await next(args); + retryStrategy.recordSuccess(retryToken); + output.$metadata.attempts = attempts + 1; + output.$metadata.totalRetryDelay = totalRetryDelay; + return { response, output }; + } catch (e) { + const retryErrorInfo = getRetryErrorInfo(e); + lastError = asSdkError(e); + if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request)) { + (_a = context.logger instanceof import_smithy_client.NoOpLogger ? console : context.logger) == null ? void 0 : _a.warn( + "An error was encountered in a non-retryable streaming request." + ); + throw lastError; + } + try { + retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo); + } catch (refreshError) { + if (!lastError.$metadata) { + lastError.$metadata = {}; + } + lastError.$metadata.attempts = attempts + 1; + lastError.$metadata.totalRetryDelay = totalRetryDelay; + throw lastError; + } + attempts = retryToken.getRetryCount(); + const delay = retryToken.getRetryDelay(); + totalRetryDelay += delay; + await new Promise((resolve) => setTimeout(resolve, delay)); + } + } + } else { + retryStrategy = retryStrategy; + if (retryStrategy == null ? void 0 : retryStrategy.mode) + context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]]; + return retryStrategy.retry(next, args); + } + }, "retryMiddleware"); + var isRetryStrategyV2 = /* @__PURE__ */ __name((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2"); + var getRetryErrorInfo = /* @__PURE__ */ __name((error) => { + const errorInfo = { + error, + errorType: getRetryErrorType(error) + }; + const retryAfterHint = getRetryAfterHint(error.$response); + if (retryAfterHint) { + errorInfo.retryAfterHint = retryAfterHint; + } + return errorInfo; + }, "getRetryErrorInfo"); + var getRetryErrorType = /* @__PURE__ */ __name((error) => { + if ((0, import_service_error_classification.isThrottlingError)(error)) + return "THROTTLING"; + if ((0, import_service_error_classification.isTransientError)(error)) + return "TRANSIENT"; + if ((0, import_service_error_classification.isServerError)(error)) + return "SERVER_ERROR"; + return "CLIENT_ERROR"; + }, "getRetryErrorType"); + var retryMiddlewareOptions = { + name: "retryMiddleware", + tags: ["RETRY"], + step: "finalizeRequest", + priority: "high", + override: true + }; + var getRetryPlugin = /* @__PURE__ */ __name((options) => ({ + applyToStack: (clientStack) => { + clientStack.add(retryMiddleware(options), retryMiddlewareOptions); + } + }), "getRetryPlugin"); + var getRetryAfterHint = /* @__PURE__ */ __name((response) => { + if (!import_protocol_http.HttpResponse.isInstance(response)) + return; + const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after"); + if (!retryAfterHeaderName) + return; + const retryAfter = response.headers[retryAfterHeaderName]; + const retryAfterSeconds = Number(retryAfter); + if (!Number.isNaN(retryAfterSeconds)) + return new Date(retryAfterSeconds * 1e3); + const retryAfterDate = new Date(retryAfter); + return retryAfterDate; + }, "getRetryAfterHint"); + } +}); + +// node_modules/uuid/dist/esm-node/rng.js +function rng2() { + if (poolPtr2 > rnds8Pool2.length - 16) { + import_crypto5.default.randomFillSync(rnds8Pool2); + poolPtr2 = 0; + } + return rnds8Pool2.slice(poolPtr2, poolPtr2 += 16); +} +var import_crypto5, rnds8Pool2, poolPtr2; +var init_rng2 = __esm({ + "node_modules/uuid/dist/esm-node/rng.js"() { + import_crypto5 = __toESM(require("crypto")); + rnds8Pool2 = new Uint8Array(256); + poolPtr2 = rnds8Pool2.length; + } +}); + +// node_modules/uuid/dist/esm-node/regex.js +var regex_default2; +var init_regex2 = __esm({ + "node_modules/uuid/dist/esm-node/regex.js"() { + regex_default2 = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; + } +}); + +// node_modules/uuid/dist/esm-node/validate.js +function validate2(uuid) { + return typeof uuid === "string" && regex_default2.test(uuid); +} +var validate_default2; +var init_validate2 = __esm({ + "node_modules/uuid/dist/esm-node/validate.js"() { + init_regex2(); + validate_default2 = validate2; + } +}); + +// node_modules/uuid/dist/esm-node/stringify.js +function stringify2(arr, offset = 0) { + const uuid = (byteToHex2[arr[offset + 0]] + byteToHex2[arr[offset + 1]] + byteToHex2[arr[offset + 2]] + byteToHex2[arr[offset + 3]] + "-" + byteToHex2[arr[offset + 4]] + byteToHex2[arr[offset + 5]] + "-" + byteToHex2[arr[offset + 6]] + byteToHex2[arr[offset + 7]] + "-" + byteToHex2[arr[offset + 8]] + byteToHex2[arr[offset + 9]] + "-" + byteToHex2[arr[offset + 10]] + byteToHex2[arr[offset + 11]] + byteToHex2[arr[offset + 12]] + byteToHex2[arr[offset + 13]] + byteToHex2[arr[offset + 14]] + byteToHex2[arr[offset + 15]]).toLowerCase(); + if (!validate_default2(uuid)) { + throw TypeError("Stringified UUID is invalid"); + } + return uuid; +} +var byteToHex2, stringify_default2; +var init_stringify2 = __esm({ + "node_modules/uuid/dist/esm-node/stringify.js"() { + init_validate2(); + byteToHex2 = []; + for (let i = 0; i < 256; ++i) { + byteToHex2.push((i + 256).toString(16).substr(1)); + } + stringify_default2 = stringify2; + } +}); + +// node_modules/uuid/dist/esm-node/v1.js +function v12(options, buf, offset) { + let i = buf && offset || 0; + const b = buf || new Array(16); + options = options || {}; + let node = options.node || _nodeId2; + let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq2; + if (node == null || clockseq == null) { + const seedBytes = options.random || (options.rng || rng2)(); + if (node == null) { + node = _nodeId2 = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; + } + if (clockseq == null) { + clockseq = _clockseq2 = (seedBytes[6] << 8 | seedBytes[7]) & 16383; + } + } + let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); + let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs2 + 1; + const dt = msecs - _lastMSecs2 + (nsecs - _lastNSecs2) / 1e4; + if (dt < 0 && options.clockseq === void 0) { + clockseq = clockseq + 1 & 16383; + } + if ((dt < 0 || msecs > _lastMSecs2) && options.nsecs === void 0) { + nsecs = 0; + } + if (nsecs >= 1e4) { + throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); + } + _lastMSecs2 = msecs; + _lastNSecs2 = nsecs; + _clockseq2 = clockseq; + msecs += 122192928e5; + const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; + b[i++] = tl >>> 24 & 255; + b[i++] = tl >>> 16 & 255; + b[i++] = tl >>> 8 & 255; + b[i++] = tl & 255; + const tmh = msecs / 4294967296 * 1e4 & 268435455; + b[i++] = tmh >>> 8 & 255; + b[i++] = tmh & 255; + b[i++] = tmh >>> 24 & 15 | 16; + b[i++] = tmh >>> 16 & 255; + b[i++] = clockseq >>> 8 | 128; + b[i++] = clockseq & 255; + for (let n = 0; n < 6; ++n) { + b[i + n] = node[n]; + } + return buf || stringify_default2(b); +} +var _nodeId2, _clockseq2, _lastMSecs2, _lastNSecs2, v1_default2; +var init_v12 = __esm({ + "node_modules/uuid/dist/esm-node/v1.js"() { + init_rng2(); + init_stringify2(); + _lastMSecs2 = 0; + _lastNSecs2 = 0; + v1_default2 = v12; + } +}); + +// node_modules/uuid/dist/esm-node/parse.js +function parse2(uuid) { + if (!validate_default2(uuid)) { + throw TypeError("Invalid UUID"); + } + let v; + const arr = new Uint8Array(16); + arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; + arr[1] = v >>> 16 & 255; + arr[2] = v >>> 8 & 255; + arr[3] = v & 255; + arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; + arr[5] = v & 255; + arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; + arr[7] = v & 255; + arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; + arr[9] = v & 255; + arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255; + arr[11] = v / 4294967296 & 255; + arr[12] = v >>> 24 & 255; + arr[13] = v >>> 16 & 255; + arr[14] = v >>> 8 & 255; + arr[15] = v & 255; + return arr; +} +var parse_default2; +var init_parse2 = __esm({ + "node_modules/uuid/dist/esm-node/parse.js"() { + init_validate2(); + parse_default2 = parse2; + } +}); + +// node_modules/uuid/dist/esm-node/v35.js +function stringToBytes2(str) { + str = unescape(encodeURIComponent(str)); + const bytes = []; + for (let i = 0; i < str.length; ++i) { + bytes.push(str.charCodeAt(i)); + } + return bytes; +} +function v35_default(name, version3, hashfunc) { + function generateUUID(value, namespace, buf, offset) { + if (typeof value === "string") { + value = stringToBytes2(value); + } + if (typeof namespace === "string") { + namespace = parse_default2(namespace); + } + if (namespace.length !== 16) { + throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); + } + let bytes = new Uint8Array(16 + value.length); + bytes.set(namespace); + bytes.set(value, namespace.length); + bytes = hashfunc(bytes); + bytes[6] = bytes[6] & 15 | version3; + bytes[8] = bytes[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = bytes[i]; + } + return buf; + } + return stringify_default2(bytes); + } + try { + generateUUID.name = name; + } catch (err) { + } + generateUUID.DNS = DNS2; + generateUUID.URL = URL3; + return generateUUID; +} +var DNS2, URL3; +var init_v352 = __esm({ + "node_modules/uuid/dist/esm-node/v35.js"() { + init_stringify2(); + init_parse2(); + DNS2 = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; + URL3 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; + } +}); + +// node_modules/uuid/dist/esm-node/md5.js +function md52(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto6.default.createHash("md5").update(bytes).digest(); +} +var import_crypto6, md5_default2; +var init_md52 = __esm({ + "node_modules/uuid/dist/esm-node/md5.js"() { + import_crypto6 = __toESM(require("crypto")); + md5_default2 = md52; + } +}); + +// node_modules/uuid/dist/esm-node/v3.js +var v32, v3_default2; +var init_v32 = __esm({ + "node_modules/uuid/dist/esm-node/v3.js"() { + init_v352(); + init_md52(); + v32 = v35_default("v3", 48, md5_default2); + v3_default2 = v32; + } +}); + +// node_modules/uuid/dist/esm-node/v4.js +function v42(options, buf, offset) { + options = options || {}; + const rnds = options.random || (options.rng || rng2)(); + rnds[6] = rnds[6] & 15 | 64; + rnds[8] = rnds[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = rnds[i]; + } + return buf; + } + return stringify_default2(rnds); +} +var v4_default2; +var init_v42 = __esm({ + "node_modules/uuid/dist/esm-node/v4.js"() { + init_rng2(); + init_stringify2(); + v4_default2 = v42; + } +}); + +// node_modules/uuid/dist/esm-node/sha1.js +function sha12(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto7.default.createHash("sha1").update(bytes).digest(); +} +var import_crypto7, sha1_default2; +var init_sha12 = __esm({ + "node_modules/uuid/dist/esm-node/sha1.js"() { + import_crypto7 = __toESM(require("crypto")); + sha1_default2 = sha12; + } +}); + +// node_modules/uuid/dist/esm-node/v5.js +var v52, v5_default2; +var init_v52 = __esm({ + "node_modules/uuid/dist/esm-node/v5.js"() { + init_v352(); + init_sha12(); + v52 = v35_default("v5", 80, sha1_default2); + v5_default2 = v52; + } +}); + +// node_modules/uuid/dist/esm-node/nil.js +var nil_default2; +var init_nil2 = __esm({ + "node_modules/uuid/dist/esm-node/nil.js"() { + nil_default2 = "00000000-0000-0000-0000-000000000000"; + } +}); + +// node_modules/uuid/dist/esm-node/version.js +function version2(uuid) { + if (!validate_default2(uuid)) { + throw TypeError("Invalid UUID"); + } + return parseInt(uuid.substr(14, 1), 16); +} +var version_default2; +var init_version2 = __esm({ + "node_modules/uuid/dist/esm-node/version.js"() { + init_validate2(); + version_default2 = version2; + } +}); + +// node_modules/uuid/dist/esm-node/index.js +var esm_node_exports2 = {}; +__export(esm_node_exports2, { + NIL: () => nil_default2, + parse: () => parse_default2, + stringify: () => stringify_default2, + v1: () => v1_default2, + v3: () => v3_default2, + v4: () => v4_default2, + v5: () => v5_default2, + validate: () => validate_default2, + version: () => version_default2 +}); +var init_esm_node2 = __esm({ + "node_modules/uuid/dist/esm-node/index.js"() { + init_v12(); + init_v32(); + init_v42(); + init_v52(); + init_nil2(); + init_version2(); + init_validate2(); + init_stringify2(); + init_parse2(); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/DynamoDBServiceException.js +var require_DynamoDBServiceException = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/DynamoDBServiceException.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DynamoDBServiceException = exports2.__ServiceException = void 0; + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { + return smithy_client_1.ServiceException; + } }); + var DynamoDBServiceException = class _DynamoDBServiceException extends smithy_client_1.ServiceException { + constructor(options) { + super(options); + Object.setPrototypeOf(this, _DynamoDBServiceException.prototype); + } + }; + exports2.DynamoDBServiceException = DynamoDBServiceException; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/models_0.js +var require_models_0 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/models_0.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GlobalTableNotFoundException = exports2.ExportNotFoundException = exports2.S3SseAlgorithm = exports2.ExportViewType = exports2.ExportType = exports2.ExportStatus = exports2.ExportFormat = exports2.TransactionConflictException = exports2.ReturnValue = exports2.ResourceInUseException = exports2.TableStatus = exports2.IndexStatus = exports2.GlobalTableAlreadyExistsException = exports2.TableClass = exports2.ReplicaStatus = exports2.GlobalTableStatus = exports2.TableNotFoundException = exports2.TableInUseException = exports2.LimitExceededException = exports2.ContributorInsightsStatus = exports2.ContributorInsightsAction = exports2.ContinuousBackupsUnavailableException = exports2.PointInTimeRecoveryStatus = exports2.ContinuousBackupsStatus = exports2.ConditionalOperator = exports2.ComparisonOperator = exports2.ItemCollectionSizeLimitExceededException = exports2.ReturnItemCollectionMetrics = exports2.ResourceNotFoundException = exports2.ProvisionedThroughputExceededException = exports2.InvalidEndpointException = exports2.RequestLimitExceeded = exports2.InternalServerError = exports2.BatchStatementErrorCodeEnum = exports2.ReturnValuesOnConditionCheckFailure = exports2.ReturnConsumedCapacity = exports2.BackupTypeFilter = exports2.BackupNotFoundException = exports2.BackupInUseException = exports2.TimeToLiveStatus = exports2.StreamViewType = exports2.SSEStatus = exports2.SSEType = exports2.ProjectionType = exports2.KeyType = exports2.BillingMode = exports2.BackupType = exports2.BackupStatus = exports2.ScalarAttributeType = exports2.AttributeAction = void 0; + exports2.TransactionCanceledException = exports2.ConditionalCheckFailedException = exports2.AttributeValue = exports2.IndexNotFoundException = exports2.ReplicaNotFoundException = exports2.ReplicaAlreadyExistsException = exports2.InvalidRestoreTimeException = exports2.TableAlreadyExistsException = exports2.Select = exports2.ImportConflictException = exports2.PointInTimeRecoveryUnavailableException = exports2.InvalidExportTimeException = exports2.ExportConflictException = exports2.TransactionInProgressException = exports2.IdempotentParameterMismatchException = exports2.DuplicateItemException = exports2.DestinationStatus = exports2.ImportNotFoundException = exports2.InputFormat = exports2.InputCompressionType = exports2.ImportStatus = void 0; + var DynamoDBServiceException_1 = require_DynamoDBServiceException(); + exports2.AttributeAction = { + ADD: "ADD", + DELETE: "DELETE", + PUT: "PUT" + }; + exports2.ScalarAttributeType = { + B: "B", + N: "N", + S: "S" + }; + exports2.BackupStatus = { + AVAILABLE: "AVAILABLE", + CREATING: "CREATING", + DELETED: "DELETED" + }; + exports2.BackupType = { + AWS_BACKUP: "AWS_BACKUP", + SYSTEM: "SYSTEM", + USER: "USER" + }; + exports2.BillingMode = { + PAY_PER_REQUEST: "PAY_PER_REQUEST", + PROVISIONED: "PROVISIONED" + }; + exports2.KeyType = { + HASH: "HASH", + RANGE: "RANGE" + }; + exports2.ProjectionType = { + ALL: "ALL", + INCLUDE: "INCLUDE", + KEYS_ONLY: "KEYS_ONLY" + }; + exports2.SSEType = { + AES256: "AES256", + KMS: "KMS" + }; + exports2.SSEStatus = { + DISABLED: "DISABLED", + DISABLING: "DISABLING", + ENABLED: "ENABLED", + ENABLING: "ENABLING", + UPDATING: "UPDATING" + }; + exports2.StreamViewType = { + KEYS_ONLY: "KEYS_ONLY", + NEW_AND_OLD_IMAGES: "NEW_AND_OLD_IMAGES", + NEW_IMAGE: "NEW_IMAGE", + OLD_IMAGE: "OLD_IMAGE" + }; + exports2.TimeToLiveStatus = { + DISABLED: "DISABLED", + DISABLING: "DISABLING", + ENABLED: "ENABLED", + ENABLING: "ENABLING" + }; + var BackupInUseException = class _BackupInUseException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "BackupInUseException", + $fault: "client", + ...opts + }); + this.name = "BackupInUseException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _BackupInUseException.prototype); + } + }; + exports2.BackupInUseException = BackupInUseException; + var BackupNotFoundException = class _BackupNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "BackupNotFoundException", + $fault: "client", + ...opts + }); + this.name = "BackupNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _BackupNotFoundException.prototype); + } + }; + exports2.BackupNotFoundException = BackupNotFoundException; + exports2.BackupTypeFilter = { + ALL: "ALL", + AWS_BACKUP: "AWS_BACKUP", + SYSTEM: "SYSTEM", + USER: "USER" + }; + exports2.ReturnConsumedCapacity = { + INDEXES: "INDEXES", + NONE: "NONE", + TOTAL: "TOTAL" + }; + exports2.ReturnValuesOnConditionCheckFailure = { + ALL_OLD: "ALL_OLD", + NONE: "NONE" + }; + exports2.BatchStatementErrorCodeEnum = { + AccessDenied: "AccessDenied", + ConditionalCheckFailed: "ConditionalCheckFailed", + DuplicateItem: "DuplicateItem", + InternalServerError: "InternalServerError", + ItemCollectionSizeLimitExceeded: "ItemCollectionSizeLimitExceeded", + ProvisionedThroughputExceeded: "ProvisionedThroughputExceeded", + RequestLimitExceeded: "RequestLimitExceeded", + ResourceNotFound: "ResourceNotFound", + ThrottlingError: "ThrottlingError", + TransactionConflict: "TransactionConflict", + ValidationError: "ValidationError" + }; + var InternalServerError = class _InternalServerError extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts + }); + this.name = "InternalServerError"; + this.$fault = "server"; + Object.setPrototypeOf(this, _InternalServerError.prototype); + } + }; + exports2.InternalServerError = InternalServerError; + var RequestLimitExceeded = class _RequestLimitExceeded extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "RequestLimitExceeded", + $fault: "client", + ...opts + }); + this.name = "RequestLimitExceeded"; + this.$fault = "client"; + Object.setPrototypeOf(this, _RequestLimitExceeded.prototype); + } + }; + exports2.RequestLimitExceeded = RequestLimitExceeded; + var InvalidEndpointException = class _InvalidEndpointException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "InvalidEndpointException", + $fault: "client", + ...opts + }); + this.name = "InvalidEndpointException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidEndpointException.prototype); + this.Message = opts.Message; + } + }; + exports2.InvalidEndpointException = InvalidEndpointException; + var ProvisionedThroughputExceededException = class _ProvisionedThroughputExceededException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ProvisionedThroughputExceededException", + $fault: "client", + ...opts + }); + this.name = "ProvisionedThroughputExceededException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ProvisionedThroughputExceededException.prototype); + } + }; + exports2.ProvisionedThroughputExceededException = ProvisionedThroughputExceededException; + var ResourceNotFoundException = class _ResourceNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts + }); + this.name = "ResourceNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ResourceNotFoundException.prototype); + } + }; + exports2.ResourceNotFoundException = ResourceNotFoundException; + exports2.ReturnItemCollectionMetrics = { + NONE: "NONE", + SIZE: "SIZE" + }; + var ItemCollectionSizeLimitExceededException = class _ItemCollectionSizeLimitExceededException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ItemCollectionSizeLimitExceededException", + $fault: "client", + ...opts + }); + this.name = "ItemCollectionSizeLimitExceededException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ItemCollectionSizeLimitExceededException.prototype); + } + }; + exports2.ItemCollectionSizeLimitExceededException = ItemCollectionSizeLimitExceededException; + exports2.ComparisonOperator = { + BEGINS_WITH: "BEGINS_WITH", + BETWEEN: "BETWEEN", + CONTAINS: "CONTAINS", + EQ: "EQ", + GE: "GE", + GT: "GT", + IN: "IN", + LE: "LE", + LT: "LT", + NE: "NE", + NOT_CONTAINS: "NOT_CONTAINS", + NOT_NULL: "NOT_NULL", + NULL: "NULL" + }; + exports2.ConditionalOperator = { + AND: "AND", + OR: "OR" + }; + exports2.ContinuousBackupsStatus = { + DISABLED: "DISABLED", + ENABLED: "ENABLED" + }; + exports2.PointInTimeRecoveryStatus = { + DISABLED: "DISABLED", + ENABLED: "ENABLED" + }; + var ContinuousBackupsUnavailableException = class _ContinuousBackupsUnavailableException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ContinuousBackupsUnavailableException", + $fault: "client", + ...opts + }); + this.name = "ContinuousBackupsUnavailableException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ContinuousBackupsUnavailableException.prototype); + } + }; + exports2.ContinuousBackupsUnavailableException = ContinuousBackupsUnavailableException; + exports2.ContributorInsightsAction = { + DISABLE: "DISABLE", + ENABLE: "ENABLE" + }; + exports2.ContributorInsightsStatus = { + DISABLED: "DISABLED", + DISABLING: "DISABLING", + ENABLED: "ENABLED", + ENABLING: "ENABLING", + FAILED: "FAILED" + }; + var LimitExceededException = class _LimitExceededException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts + }); + this.name = "LimitExceededException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _LimitExceededException.prototype); + } + }; + exports2.LimitExceededException = LimitExceededException; + var TableInUseException = class _TableInUseException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TableInUseException", + $fault: "client", + ...opts + }); + this.name = "TableInUseException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TableInUseException.prototype); + } + }; + exports2.TableInUseException = TableInUseException; + var TableNotFoundException = class _TableNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TableNotFoundException", + $fault: "client", + ...opts + }); + this.name = "TableNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TableNotFoundException.prototype); + } + }; + exports2.TableNotFoundException = TableNotFoundException; + exports2.GlobalTableStatus = { + ACTIVE: "ACTIVE", + CREATING: "CREATING", + DELETING: "DELETING", + UPDATING: "UPDATING" + }; + exports2.ReplicaStatus = { + ACTIVE: "ACTIVE", + CREATING: "CREATING", + CREATION_FAILED: "CREATION_FAILED", + DELETING: "DELETING", + INACCESSIBLE_ENCRYPTION_CREDENTIALS: "INACCESSIBLE_ENCRYPTION_CREDENTIALS", + REGION_DISABLED: "REGION_DISABLED", + UPDATING: "UPDATING" + }; + exports2.TableClass = { + STANDARD: "STANDARD", + STANDARD_INFREQUENT_ACCESS: "STANDARD_INFREQUENT_ACCESS" + }; + var GlobalTableAlreadyExistsException = class _GlobalTableAlreadyExistsException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "GlobalTableAlreadyExistsException", + $fault: "client", + ...opts + }); + this.name = "GlobalTableAlreadyExistsException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _GlobalTableAlreadyExistsException.prototype); + } + }; + exports2.GlobalTableAlreadyExistsException = GlobalTableAlreadyExistsException; + exports2.IndexStatus = { + ACTIVE: "ACTIVE", + CREATING: "CREATING", + DELETING: "DELETING", + UPDATING: "UPDATING" + }; + exports2.TableStatus = { + ACTIVE: "ACTIVE", + ARCHIVED: "ARCHIVED", + ARCHIVING: "ARCHIVING", + CREATING: "CREATING", + DELETING: "DELETING", + INACCESSIBLE_ENCRYPTION_CREDENTIALS: "INACCESSIBLE_ENCRYPTION_CREDENTIALS", + UPDATING: "UPDATING" + }; + var ResourceInUseException = class _ResourceInUseException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts + }); + this.name = "ResourceInUseException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ResourceInUseException.prototype); + } + }; + exports2.ResourceInUseException = ResourceInUseException; + exports2.ReturnValue = { + ALL_NEW: "ALL_NEW", + ALL_OLD: "ALL_OLD", + NONE: "NONE", + UPDATED_NEW: "UPDATED_NEW", + UPDATED_OLD: "UPDATED_OLD" + }; + var TransactionConflictException = class _TransactionConflictException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TransactionConflictException", + $fault: "client", + ...opts + }); + this.name = "TransactionConflictException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TransactionConflictException.prototype); + } + }; + exports2.TransactionConflictException = TransactionConflictException; + exports2.ExportFormat = { + DYNAMODB_JSON: "DYNAMODB_JSON", + ION: "ION" + }; + exports2.ExportStatus = { + COMPLETED: "COMPLETED", + FAILED: "FAILED", + IN_PROGRESS: "IN_PROGRESS" + }; + exports2.ExportType = { + FULL_EXPORT: "FULL_EXPORT", + INCREMENTAL_EXPORT: "INCREMENTAL_EXPORT" + }; + exports2.ExportViewType = { + NEW_AND_OLD_IMAGES: "NEW_AND_OLD_IMAGES", + NEW_IMAGE: "NEW_IMAGE" + }; + exports2.S3SseAlgorithm = { + AES256: "AES256", + KMS: "KMS" + }; + var ExportNotFoundException = class _ExportNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ExportNotFoundException", + $fault: "client", + ...opts + }); + this.name = "ExportNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ExportNotFoundException.prototype); + } + }; + exports2.ExportNotFoundException = ExportNotFoundException; + var GlobalTableNotFoundException = class _GlobalTableNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "GlobalTableNotFoundException", + $fault: "client", + ...opts + }); + this.name = "GlobalTableNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _GlobalTableNotFoundException.prototype); + } + }; + exports2.GlobalTableNotFoundException = GlobalTableNotFoundException; + exports2.ImportStatus = { + CANCELLED: "CANCELLED", + CANCELLING: "CANCELLING", + COMPLETED: "COMPLETED", + FAILED: "FAILED", + IN_PROGRESS: "IN_PROGRESS" + }; + exports2.InputCompressionType = { + GZIP: "GZIP", + NONE: "NONE", + ZSTD: "ZSTD" + }; + exports2.InputFormat = { + CSV: "CSV", + DYNAMODB_JSON: "DYNAMODB_JSON", + ION: "ION" + }; + var ImportNotFoundException = class _ImportNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ImportNotFoundException", + $fault: "client", + ...opts + }); + this.name = "ImportNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ImportNotFoundException.prototype); + } + }; + exports2.ImportNotFoundException = ImportNotFoundException; + exports2.DestinationStatus = { + ACTIVE: "ACTIVE", + DISABLED: "DISABLED", + DISABLING: "DISABLING", + ENABLE_FAILED: "ENABLE_FAILED", + ENABLING: "ENABLING" + }; + var DuplicateItemException = class _DuplicateItemException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "DuplicateItemException", + $fault: "client", + ...opts + }); + this.name = "DuplicateItemException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _DuplicateItemException.prototype); + } + }; + exports2.DuplicateItemException = DuplicateItemException; + var IdempotentParameterMismatchException = class _IdempotentParameterMismatchException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts + }); + this.name = "IdempotentParameterMismatchException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + } + }; + exports2.IdempotentParameterMismatchException = IdempotentParameterMismatchException; + var TransactionInProgressException = class _TransactionInProgressException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TransactionInProgressException", + $fault: "client", + ...opts + }); + this.name = "TransactionInProgressException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TransactionInProgressException.prototype); + this.Message = opts.Message; + } + }; + exports2.TransactionInProgressException = TransactionInProgressException; + var ExportConflictException = class _ExportConflictException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ExportConflictException", + $fault: "client", + ...opts + }); + this.name = "ExportConflictException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ExportConflictException.prototype); + } + }; + exports2.ExportConflictException = ExportConflictException; + var InvalidExportTimeException = class _InvalidExportTimeException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "InvalidExportTimeException", + $fault: "client", + ...opts + }); + this.name = "InvalidExportTimeException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidExportTimeException.prototype); + } + }; + exports2.InvalidExportTimeException = InvalidExportTimeException; + var PointInTimeRecoveryUnavailableException = class _PointInTimeRecoveryUnavailableException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "PointInTimeRecoveryUnavailableException", + $fault: "client", + ...opts + }); + this.name = "PointInTimeRecoveryUnavailableException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _PointInTimeRecoveryUnavailableException.prototype); + } + }; + exports2.PointInTimeRecoveryUnavailableException = PointInTimeRecoveryUnavailableException; + var ImportConflictException = class _ImportConflictException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ImportConflictException", + $fault: "client", + ...opts + }); + this.name = "ImportConflictException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ImportConflictException.prototype); + } + }; + exports2.ImportConflictException = ImportConflictException; + exports2.Select = { + ALL_ATTRIBUTES: "ALL_ATTRIBUTES", + ALL_PROJECTED_ATTRIBUTES: "ALL_PROJECTED_ATTRIBUTES", + COUNT: "COUNT", + SPECIFIC_ATTRIBUTES: "SPECIFIC_ATTRIBUTES" + }; + var TableAlreadyExistsException = class _TableAlreadyExistsException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TableAlreadyExistsException", + $fault: "client", + ...opts + }); + this.name = "TableAlreadyExistsException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TableAlreadyExistsException.prototype); + } + }; + exports2.TableAlreadyExistsException = TableAlreadyExistsException; + var InvalidRestoreTimeException = class _InvalidRestoreTimeException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "InvalidRestoreTimeException", + $fault: "client", + ...opts + }); + this.name = "InvalidRestoreTimeException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidRestoreTimeException.prototype); + } + }; + exports2.InvalidRestoreTimeException = InvalidRestoreTimeException; + var ReplicaAlreadyExistsException = class _ReplicaAlreadyExistsException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ReplicaAlreadyExistsException", + $fault: "client", + ...opts + }); + this.name = "ReplicaAlreadyExistsException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ReplicaAlreadyExistsException.prototype); + } + }; + exports2.ReplicaAlreadyExistsException = ReplicaAlreadyExistsException; + var ReplicaNotFoundException = class _ReplicaNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ReplicaNotFoundException", + $fault: "client", + ...opts + }); + this.name = "ReplicaNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ReplicaNotFoundException.prototype); + } + }; + exports2.ReplicaNotFoundException = ReplicaNotFoundException; + var IndexNotFoundException = class _IndexNotFoundException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "IndexNotFoundException", + $fault: "client", + ...opts + }); + this.name = "IndexNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _IndexNotFoundException.prototype); + } + }; + exports2.IndexNotFoundException = IndexNotFoundException; + var AttributeValue; + (function(AttributeValue2) { + AttributeValue2.visit = (value, visitor) => { + if (value.S !== void 0) + return visitor.S(value.S); + if (value.N !== void 0) + return visitor.N(value.N); + if (value.B !== void 0) + return visitor.B(value.B); + if (value.SS !== void 0) + return visitor.SS(value.SS); + if (value.NS !== void 0) + return visitor.NS(value.NS); + if (value.BS !== void 0) + return visitor.BS(value.BS); + if (value.M !== void 0) + return visitor.M(value.M); + if (value.L !== void 0) + return visitor.L(value.L); + if (value.NULL !== void 0) + return visitor.NULL(value.NULL); + if (value.BOOL !== void 0) + return visitor.BOOL(value.BOOL); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; + })(AttributeValue = exports2.AttributeValue || (exports2.AttributeValue = {})); + var ConditionalCheckFailedException = class _ConditionalCheckFailedException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "ConditionalCheckFailedException", + $fault: "client", + ...opts + }); + this.name = "ConditionalCheckFailedException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ConditionalCheckFailedException.prototype); + this.Item = opts.Item; + } + }; + exports2.ConditionalCheckFailedException = ConditionalCheckFailedException; + var TransactionCanceledException = class _TransactionCanceledException extends DynamoDBServiceException_1.DynamoDBServiceException { + constructor(opts) { + super({ + name: "TransactionCanceledException", + $fault: "client", + ...opts + }); + this.name = "TransactionCanceledException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TransactionCanceledException.prototype); + this.Message = opts.Message; + this.CancellationReasons = opts.CancellationReasons; + } + }; + exports2.TransactionCanceledException = TransactionCanceledException; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/protocols/Aws_json1_0.js +var require_Aws_json1_0 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/protocols/Aws_json1_0.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.se_UpdateItemCommand = exports2.se_UpdateGlobalTableSettingsCommand = exports2.se_UpdateGlobalTableCommand = exports2.se_UpdateContributorInsightsCommand = exports2.se_UpdateContinuousBackupsCommand = exports2.se_UntagResourceCommand = exports2.se_TransactWriteItemsCommand = exports2.se_TransactGetItemsCommand = exports2.se_TagResourceCommand = exports2.se_ScanCommand = exports2.se_RestoreTableToPointInTimeCommand = exports2.se_RestoreTableFromBackupCommand = exports2.se_QueryCommand = exports2.se_PutItemCommand = exports2.se_ListTagsOfResourceCommand = exports2.se_ListTablesCommand = exports2.se_ListImportsCommand = exports2.se_ListGlobalTablesCommand = exports2.se_ListExportsCommand = exports2.se_ListContributorInsightsCommand = exports2.se_ListBackupsCommand = exports2.se_ImportTableCommand = exports2.se_GetItemCommand = exports2.se_ExportTableToPointInTimeCommand = exports2.se_ExecuteTransactionCommand = exports2.se_ExecuteStatementCommand = exports2.se_EnableKinesisStreamingDestinationCommand = exports2.se_DisableKinesisStreamingDestinationCommand = exports2.se_DescribeTimeToLiveCommand = exports2.se_DescribeTableReplicaAutoScalingCommand = exports2.se_DescribeTableCommand = exports2.se_DescribeLimitsCommand = exports2.se_DescribeKinesisStreamingDestinationCommand = exports2.se_DescribeImportCommand = exports2.se_DescribeGlobalTableSettingsCommand = exports2.se_DescribeGlobalTableCommand = exports2.se_DescribeExportCommand = exports2.se_DescribeEndpointsCommand = exports2.se_DescribeContributorInsightsCommand = exports2.se_DescribeContinuousBackupsCommand = exports2.se_DescribeBackupCommand = exports2.se_DeleteTableCommand = exports2.se_DeleteItemCommand = exports2.se_DeleteBackupCommand = exports2.se_CreateTableCommand = exports2.se_CreateGlobalTableCommand = exports2.se_CreateBackupCommand = exports2.se_BatchWriteItemCommand = exports2.se_BatchGetItemCommand = exports2.se_BatchExecuteStatementCommand = void 0; + exports2.de_UpdateContributorInsightsCommand = exports2.de_UpdateContinuousBackupsCommand = exports2.de_UntagResourceCommand = exports2.de_TransactWriteItemsCommand = exports2.de_TransactGetItemsCommand = exports2.de_TagResourceCommand = exports2.de_ScanCommand = exports2.de_RestoreTableToPointInTimeCommand = exports2.de_RestoreTableFromBackupCommand = exports2.de_QueryCommand = exports2.de_PutItemCommand = exports2.de_ListTagsOfResourceCommand = exports2.de_ListTablesCommand = exports2.de_ListImportsCommand = exports2.de_ListGlobalTablesCommand = exports2.de_ListExportsCommand = exports2.de_ListContributorInsightsCommand = exports2.de_ListBackupsCommand = exports2.de_ImportTableCommand = exports2.de_GetItemCommand = exports2.de_ExportTableToPointInTimeCommand = exports2.de_ExecuteTransactionCommand = exports2.de_ExecuteStatementCommand = exports2.de_EnableKinesisStreamingDestinationCommand = exports2.de_DisableKinesisStreamingDestinationCommand = exports2.de_DescribeTimeToLiveCommand = exports2.de_DescribeTableReplicaAutoScalingCommand = exports2.de_DescribeTableCommand = exports2.de_DescribeLimitsCommand = exports2.de_DescribeKinesisStreamingDestinationCommand = exports2.de_DescribeImportCommand = exports2.de_DescribeGlobalTableSettingsCommand = exports2.de_DescribeGlobalTableCommand = exports2.de_DescribeExportCommand = exports2.de_DescribeEndpointsCommand = exports2.de_DescribeContributorInsightsCommand = exports2.de_DescribeContinuousBackupsCommand = exports2.de_DescribeBackupCommand = exports2.de_DeleteTableCommand = exports2.de_DeleteItemCommand = exports2.de_DeleteBackupCommand = exports2.de_CreateTableCommand = exports2.de_CreateGlobalTableCommand = exports2.de_CreateBackupCommand = exports2.de_BatchWriteItemCommand = exports2.de_BatchGetItemCommand = exports2.de_BatchExecuteStatementCommand = exports2.se_UpdateTimeToLiveCommand = exports2.se_UpdateTableReplicaAutoScalingCommand = exports2.se_UpdateTableCommand = void 0; + exports2.de_UpdateTimeToLiveCommand = exports2.de_UpdateTableReplicaAutoScalingCommand = exports2.de_UpdateTableCommand = exports2.de_UpdateItemCommand = exports2.de_UpdateGlobalTableSettingsCommand = exports2.de_UpdateGlobalTableCommand = void 0; + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var uuid_1 = (init_esm_node2(), __toCommonJS(esm_node_exports2)); + var DynamoDBServiceException_1 = require_DynamoDBServiceException(); + var models_0_1 = require_models_0(); + var se_BatchExecuteStatementCommand = async (input, context) => { + const headers = sharedHeaders("BatchExecuteStatement"); + let body; + body = JSON.stringify(se_BatchExecuteStatementInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_BatchExecuteStatementCommand = se_BatchExecuteStatementCommand; + var se_BatchGetItemCommand = async (input, context) => { + const headers = sharedHeaders("BatchGetItem"); + let body; + body = JSON.stringify(se_BatchGetItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_BatchGetItemCommand = se_BatchGetItemCommand; + var se_BatchWriteItemCommand = async (input, context) => { + const headers = sharedHeaders("BatchWriteItem"); + let body; + body = JSON.stringify(se_BatchWriteItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_BatchWriteItemCommand = se_BatchWriteItemCommand; + var se_CreateBackupCommand = async (input, context) => { + const headers = sharedHeaders("CreateBackup"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_CreateBackupCommand = se_CreateBackupCommand; + var se_CreateGlobalTableCommand = async (input, context) => { + const headers = sharedHeaders("CreateGlobalTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_CreateGlobalTableCommand = se_CreateGlobalTableCommand; + var se_CreateTableCommand = async (input, context) => { + const headers = sharedHeaders("CreateTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_CreateTableCommand = se_CreateTableCommand; + var se_DeleteBackupCommand = async (input, context) => { + const headers = sharedHeaders("DeleteBackup"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DeleteBackupCommand = se_DeleteBackupCommand; + var se_DeleteItemCommand = async (input, context) => { + const headers = sharedHeaders("DeleteItem"); + let body; + body = JSON.stringify(se_DeleteItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DeleteItemCommand = se_DeleteItemCommand; + var se_DeleteTableCommand = async (input, context) => { + const headers = sharedHeaders("DeleteTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DeleteTableCommand = se_DeleteTableCommand; + var se_DescribeBackupCommand = async (input, context) => { + const headers = sharedHeaders("DescribeBackup"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeBackupCommand = se_DescribeBackupCommand; + var se_DescribeContinuousBackupsCommand = async (input, context) => { + const headers = sharedHeaders("DescribeContinuousBackups"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeContinuousBackupsCommand = se_DescribeContinuousBackupsCommand; + var se_DescribeContributorInsightsCommand = async (input, context) => { + const headers = sharedHeaders("DescribeContributorInsights"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeContributorInsightsCommand = se_DescribeContributorInsightsCommand; + var se_DescribeEndpointsCommand = async (input, context) => { + const headers = sharedHeaders("DescribeEndpoints"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeEndpointsCommand = se_DescribeEndpointsCommand; + var se_DescribeExportCommand = async (input, context) => { + const headers = sharedHeaders("DescribeExport"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeExportCommand = se_DescribeExportCommand; + var se_DescribeGlobalTableCommand = async (input, context) => { + const headers = sharedHeaders("DescribeGlobalTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeGlobalTableCommand = se_DescribeGlobalTableCommand; + var se_DescribeGlobalTableSettingsCommand = async (input, context) => { + const headers = sharedHeaders("DescribeGlobalTableSettings"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeGlobalTableSettingsCommand = se_DescribeGlobalTableSettingsCommand; + var se_DescribeImportCommand = async (input, context) => { + const headers = sharedHeaders("DescribeImport"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeImportCommand = se_DescribeImportCommand; + var se_DescribeKinesisStreamingDestinationCommand = async (input, context) => { + const headers = sharedHeaders("DescribeKinesisStreamingDestination"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeKinesisStreamingDestinationCommand = se_DescribeKinesisStreamingDestinationCommand; + var se_DescribeLimitsCommand = async (input, context) => { + const headers = sharedHeaders("DescribeLimits"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeLimitsCommand = se_DescribeLimitsCommand; + var se_DescribeTableCommand = async (input, context) => { + const headers = sharedHeaders("DescribeTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeTableCommand = se_DescribeTableCommand; + var se_DescribeTableReplicaAutoScalingCommand = async (input, context) => { + const headers = sharedHeaders("DescribeTableReplicaAutoScaling"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeTableReplicaAutoScalingCommand = se_DescribeTableReplicaAutoScalingCommand; + var se_DescribeTimeToLiveCommand = async (input, context) => { + const headers = sharedHeaders("DescribeTimeToLive"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DescribeTimeToLiveCommand = se_DescribeTimeToLiveCommand; + var se_DisableKinesisStreamingDestinationCommand = async (input, context) => { + const headers = sharedHeaders("DisableKinesisStreamingDestination"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DisableKinesisStreamingDestinationCommand = se_DisableKinesisStreamingDestinationCommand; + var se_EnableKinesisStreamingDestinationCommand = async (input, context) => { + const headers = sharedHeaders("EnableKinesisStreamingDestination"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_EnableKinesisStreamingDestinationCommand = se_EnableKinesisStreamingDestinationCommand; + var se_ExecuteStatementCommand = async (input, context) => { + const headers = sharedHeaders("ExecuteStatement"); + let body; + body = JSON.stringify(se_ExecuteStatementInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ExecuteStatementCommand = se_ExecuteStatementCommand; + var se_ExecuteTransactionCommand = async (input, context) => { + const headers = sharedHeaders("ExecuteTransaction"); + let body; + body = JSON.stringify(se_ExecuteTransactionInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ExecuteTransactionCommand = se_ExecuteTransactionCommand; + var se_ExportTableToPointInTimeCommand = async (input, context) => { + const headers = sharedHeaders("ExportTableToPointInTime"); + let body; + body = JSON.stringify(se_ExportTableToPointInTimeInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ExportTableToPointInTimeCommand = se_ExportTableToPointInTimeCommand; + var se_GetItemCommand = async (input, context) => { + const headers = sharedHeaders("GetItem"); + let body; + body = JSON.stringify(se_GetItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_GetItemCommand = se_GetItemCommand; + var se_ImportTableCommand = async (input, context) => { + const headers = sharedHeaders("ImportTable"); + let body; + body = JSON.stringify(se_ImportTableInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ImportTableCommand = se_ImportTableCommand; + var se_ListBackupsCommand = async (input, context) => { + const headers = sharedHeaders("ListBackups"); + let body; + body = JSON.stringify(se_ListBackupsInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListBackupsCommand = se_ListBackupsCommand; + var se_ListContributorInsightsCommand = async (input, context) => { + const headers = sharedHeaders("ListContributorInsights"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListContributorInsightsCommand = se_ListContributorInsightsCommand; + var se_ListExportsCommand = async (input, context) => { + const headers = sharedHeaders("ListExports"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListExportsCommand = se_ListExportsCommand; + var se_ListGlobalTablesCommand = async (input, context) => { + const headers = sharedHeaders("ListGlobalTables"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListGlobalTablesCommand = se_ListGlobalTablesCommand; + var se_ListImportsCommand = async (input, context) => { + const headers = sharedHeaders("ListImports"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListImportsCommand = se_ListImportsCommand; + var se_ListTablesCommand = async (input, context) => { + const headers = sharedHeaders("ListTables"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListTablesCommand = se_ListTablesCommand; + var se_ListTagsOfResourceCommand = async (input, context) => { + const headers = sharedHeaders("ListTagsOfResource"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ListTagsOfResourceCommand = se_ListTagsOfResourceCommand; + var se_PutItemCommand = async (input, context) => { + const headers = sharedHeaders("PutItem"); + let body; + body = JSON.stringify(se_PutItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_PutItemCommand = se_PutItemCommand; + var se_QueryCommand = async (input, context) => { + const headers = sharedHeaders("Query"); + let body; + body = JSON.stringify(se_QueryInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_QueryCommand = se_QueryCommand; + var se_RestoreTableFromBackupCommand = async (input, context) => { + const headers = sharedHeaders("RestoreTableFromBackup"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_RestoreTableFromBackupCommand = se_RestoreTableFromBackupCommand; + var se_RestoreTableToPointInTimeCommand = async (input, context) => { + const headers = sharedHeaders("RestoreTableToPointInTime"); + let body; + body = JSON.stringify(se_RestoreTableToPointInTimeInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_RestoreTableToPointInTimeCommand = se_RestoreTableToPointInTimeCommand; + var se_ScanCommand = async (input, context) => { + const headers = sharedHeaders("Scan"); + let body; + body = JSON.stringify(se_ScanInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_ScanCommand = se_ScanCommand; + var se_TagResourceCommand = async (input, context) => { + const headers = sharedHeaders("TagResource"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_TagResourceCommand = se_TagResourceCommand; + var se_TransactGetItemsCommand = async (input, context) => { + const headers = sharedHeaders("TransactGetItems"); + let body; + body = JSON.stringify(se_TransactGetItemsInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_TransactGetItemsCommand = se_TransactGetItemsCommand; + var se_TransactWriteItemsCommand = async (input, context) => { + const headers = sharedHeaders("TransactWriteItems"); + let body; + body = JSON.stringify(se_TransactWriteItemsInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_TransactWriteItemsCommand = se_TransactWriteItemsCommand; + var se_UntagResourceCommand = async (input, context) => { + const headers = sharedHeaders("UntagResource"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UntagResourceCommand = se_UntagResourceCommand; + var se_UpdateContinuousBackupsCommand = async (input, context) => { + const headers = sharedHeaders("UpdateContinuousBackups"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateContinuousBackupsCommand = se_UpdateContinuousBackupsCommand; + var se_UpdateContributorInsightsCommand = async (input, context) => { + const headers = sharedHeaders("UpdateContributorInsights"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateContributorInsightsCommand = se_UpdateContributorInsightsCommand; + var se_UpdateGlobalTableCommand = async (input, context) => { + const headers = sharedHeaders("UpdateGlobalTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateGlobalTableCommand = se_UpdateGlobalTableCommand; + var se_UpdateGlobalTableSettingsCommand = async (input, context) => { + const headers = sharedHeaders("UpdateGlobalTableSettings"); + let body; + body = JSON.stringify(se_UpdateGlobalTableSettingsInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateGlobalTableSettingsCommand = se_UpdateGlobalTableSettingsCommand; + var se_UpdateItemCommand = async (input, context) => { + const headers = sharedHeaders("UpdateItem"); + let body; + body = JSON.stringify(se_UpdateItemInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateItemCommand = se_UpdateItemCommand; + var se_UpdateTableCommand = async (input, context) => { + const headers = sharedHeaders("UpdateTable"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateTableCommand = se_UpdateTableCommand; + var se_UpdateTableReplicaAutoScalingCommand = async (input, context) => { + const headers = sharedHeaders("UpdateTableReplicaAutoScaling"); + let body; + body = JSON.stringify(se_UpdateTableReplicaAutoScalingInput(input, context)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateTableReplicaAutoScalingCommand = se_UpdateTableReplicaAutoScalingCommand; + var se_UpdateTimeToLiveCommand = async (input, context) => { + const headers = sharedHeaders("UpdateTimeToLive"); + let body; + body = JSON.stringify((0, smithy_client_1._json)(input)); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_UpdateTimeToLiveCommand = se_UpdateTimeToLiveCommand; + var de_BatchExecuteStatementCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_BatchExecuteStatementCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_BatchExecuteStatementOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_BatchExecuteStatementCommand = de_BatchExecuteStatementCommand; + var de_BatchExecuteStatementCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_BatchGetItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_BatchGetItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_BatchGetItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_BatchGetItemCommand = de_BatchGetItemCommand; + var de_BatchGetItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_BatchWriteItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_BatchWriteItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_BatchWriteItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_BatchWriteItemCommand = de_BatchWriteItemCommand; + var de_BatchWriteItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ItemCollectionSizeLimitExceededException": + case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": + throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_CreateBackupCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_CreateBackupCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_CreateBackupOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_CreateBackupCommand = de_CreateBackupCommand; + var de_CreateBackupCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BackupInUseException": + case "com.amazonaws.dynamodb#BackupInUseException": + throw await de_BackupInUseExceptionRes(parsedOutput, context); + case "ContinuousBackupsUnavailableException": + case "com.amazonaws.dynamodb#ContinuousBackupsUnavailableException": + throw await de_ContinuousBackupsUnavailableExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "TableInUseException": + case "com.amazonaws.dynamodb#TableInUseException": + throw await de_TableInUseExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_CreateGlobalTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_CreateGlobalTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_CreateGlobalTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_CreateGlobalTableCommand = de_CreateGlobalTableCommand; + var de_CreateGlobalTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "GlobalTableAlreadyExistsException": + case "com.amazonaws.dynamodb#GlobalTableAlreadyExistsException": + throw await de_GlobalTableAlreadyExistsExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_CreateTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_CreateTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_CreateTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_CreateTableCommand = de_CreateTableCommand; + var de_CreateTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DeleteBackupCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DeleteBackupCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DeleteBackupOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DeleteBackupCommand = de_DeleteBackupCommand; + var de_DeleteBackupCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BackupInUseException": + case "com.amazonaws.dynamodb#BackupInUseException": + throw await de_BackupInUseExceptionRes(parsedOutput, context); + case "BackupNotFoundException": + case "com.amazonaws.dynamodb#BackupNotFoundException": + throw await de_BackupNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DeleteItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DeleteItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DeleteItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DeleteItemCommand = de_DeleteItemCommand; + var de_DeleteItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConditionalCheckFailedException": + case "com.amazonaws.dynamodb#ConditionalCheckFailedException": + throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ItemCollectionSizeLimitExceededException": + case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": + throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionConflictException": + case "com.amazonaws.dynamodb#TransactionConflictException": + throw await de_TransactionConflictExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DeleteTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DeleteTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DeleteTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DeleteTableCommand = de_DeleteTableCommand; + var de_DeleteTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeBackupCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeBackupCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeBackupOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeBackupCommand = de_DescribeBackupCommand; + var de_DescribeBackupCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BackupNotFoundException": + case "com.amazonaws.dynamodb#BackupNotFoundException": + throw await de_BackupNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeContinuousBackupsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeContinuousBackupsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeContinuousBackupsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeContinuousBackupsCommand = de_DescribeContinuousBackupsCommand; + var de_DescribeContinuousBackupsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeContributorInsightsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeContributorInsightsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeContributorInsightsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeContributorInsightsCommand = de_DescribeContributorInsightsCommand; + var de_DescribeContributorInsightsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeEndpointsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeEndpointsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeEndpointsCommand = de_DescribeEndpointsCommand; + var de_DescribeEndpointsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + }; + var de_DescribeExportCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeExportCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeExportOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeExportCommand = de_DescribeExportCommand; + var de_DescribeExportCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ExportNotFoundException": + case "com.amazonaws.dynamodb#ExportNotFoundException": + throw await de_ExportNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeGlobalTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeGlobalTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeGlobalTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeGlobalTableCommand = de_DescribeGlobalTableCommand; + var de_DescribeGlobalTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "GlobalTableNotFoundException": + case "com.amazonaws.dynamodb#GlobalTableNotFoundException": + throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeGlobalTableSettingsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeGlobalTableSettingsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeGlobalTableSettingsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeGlobalTableSettingsCommand = de_DescribeGlobalTableSettingsCommand; + var de_DescribeGlobalTableSettingsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "GlobalTableNotFoundException": + case "com.amazonaws.dynamodb#GlobalTableNotFoundException": + throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeImportCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeImportCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeImportOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeImportCommand = de_DescribeImportCommand; + var de_DescribeImportCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ImportNotFoundException": + case "com.amazonaws.dynamodb#ImportNotFoundException": + throw await de_ImportNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeKinesisStreamingDestinationCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeKinesisStreamingDestinationCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeKinesisStreamingDestinationCommand = de_DescribeKinesisStreamingDestinationCommand; + var de_DescribeKinesisStreamingDestinationCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeLimitsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeLimitsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeLimitsCommand = de_DescribeLimitsCommand; + var de_DescribeLimitsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeTableCommand = de_DescribeTableCommand; + var de_DescribeTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeTableReplicaAutoScalingCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeTableReplicaAutoScalingCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DescribeTableReplicaAutoScalingOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeTableReplicaAutoScalingCommand = de_DescribeTableReplicaAutoScalingCommand; + var de_DescribeTableReplicaAutoScalingCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DescribeTimeToLiveCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DescribeTimeToLiveCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DescribeTimeToLiveCommand = de_DescribeTimeToLiveCommand; + var de_DescribeTimeToLiveCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_DisableKinesisStreamingDestinationCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DisableKinesisStreamingDestinationCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DisableKinesisStreamingDestinationCommand = de_DisableKinesisStreamingDestinationCommand; + var de_DisableKinesisStreamingDestinationCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_EnableKinesisStreamingDestinationCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_EnableKinesisStreamingDestinationCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_EnableKinesisStreamingDestinationCommand = de_EnableKinesisStreamingDestinationCommand; + var de_EnableKinesisStreamingDestinationCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ExecuteStatementCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ExecuteStatementCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ExecuteStatementOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ExecuteStatementCommand = de_ExecuteStatementCommand; + var de_ExecuteStatementCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConditionalCheckFailedException": + case "com.amazonaws.dynamodb#ConditionalCheckFailedException": + throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context); + case "DuplicateItemException": + case "com.amazonaws.dynamodb#DuplicateItemException": + throw await de_DuplicateItemExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ItemCollectionSizeLimitExceededException": + case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": + throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionConflictException": + case "com.amazonaws.dynamodb#TransactionConflictException": + throw await de_TransactionConflictExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ExecuteTransactionCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ExecuteTransactionCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ExecuteTransactionOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ExecuteTransactionCommand = de_ExecuteTransactionCommand; + var de_ExecuteTransactionCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "IdempotentParameterMismatchException": + case "com.amazonaws.dynamodb#IdempotentParameterMismatchException": + throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionCanceledException": + case "com.amazonaws.dynamodb#TransactionCanceledException": + throw await de_TransactionCanceledExceptionRes(parsedOutput, context); + case "TransactionInProgressException": + case "com.amazonaws.dynamodb#TransactionInProgressException": + throw await de_TransactionInProgressExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ExportTableToPointInTimeCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ExportTableToPointInTimeCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ExportTableToPointInTimeOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ExportTableToPointInTimeCommand = de_ExportTableToPointInTimeCommand; + var de_ExportTableToPointInTimeCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ExportConflictException": + case "com.amazonaws.dynamodb#ExportConflictException": + throw await de_ExportConflictExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidExportTimeException": + case "com.amazonaws.dynamodb#InvalidExportTimeException": + throw await de_InvalidExportTimeExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "PointInTimeRecoveryUnavailableException": + case "com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException": + throw await de_PointInTimeRecoveryUnavailableExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_GetItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_GetItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_GetItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_GetItemCommand = de_GetItemCommand; + var de_GetItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ImportTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ImportTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ImportTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ImportTableCommand = de_ImportTableCommand; + var de_ImportTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ImportConflictException": + case "com.amazonaws.dynamodb#ImportConflictException": + throw await de_ImportConflictExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListBackupsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListBackupsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ListBackupsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListBackupsCommand = de_ListBackupsCommand; + var de_ListBackupsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListContributorInsightsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListContributorInsightsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListContributorInsightsCommand = de_ListContributorInsightsCommand; + var de_ListContributorInsightsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListExportsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListExportsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListExportsCommand = de_ListExportsCommand; + var de_ListExportsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListGlobalTablesCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListGlobalTablesCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListGlobalTablesCommand = de_ListGlobalTablesCommand; + var de_ListGlobalTablesCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListImportsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListImportsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ListImportsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListImportsCommand = de_ListImportsCommand; + var de_ListImportsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListTablesCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListTablesCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListTablesCommand = de_ListTablesCommand; + var de_ListTablesCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListTagsOfResourceCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ListTagsOfResourceCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ListTagsOfResourceCommand = de_ListTagsOfResourceCommand; + var de_ListTagsOfResourceCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_PutItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_PutItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_PutItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_PutItemCommand = de_PutItemCommand; + var de_PutItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConditionalCheckFailedException": + case "com.amazonaws.dynamodb#ConditionalCheckFailedException": + throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ItemCollectionSizeLimitExceededException": + case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": + throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionConflictException": + case "com.amazonaws.dynamodb#TransactionConflictException": + throw await de_TransactionConflictExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_QueryCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_QueryCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_QueryOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_QueryCommand = de_QueryCommand; + var de_QueryCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_RestoreTableFromBackupCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_RestoreTableFromBackupCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_RestoreTableFromBackupOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_RestoreTableFromBackupCommand = de_RestoreTableFromBackupCommand; + var de_RestoreTableFromBackupCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BackupInUseException": + case "com.amazonaws.dynamodb#BackupInUseException": + throw await de_BackupInUseExceptionRes(parsedOutput, context); + case "BackupNotFoundException": + case "com.amazonaws.dynamodb#BackupNotFoundException": + throw await de_BackupNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "TableAlreadyExistsException": + case "com.amazonaws.dynamodb#TableAlreadyExistsException": + throw await de_TableAlreadyExistsExceptionRes(parsedOutput, context); + case "TableInUseException": + case "com.amazonaws.dynamodb#TableInUseException": + throw await de_TableInUseExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_RestoreTableToPointInTimeCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_RestoreTableToPointInTimeCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_RestoreTableToPointInTimeOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_RestoreTableToPointInTimeCommand = de_RestoreTableToPointInTimeCommand; + var de_RestoreTableToPointInTimeCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "InvalidRestoreTimeException": + case "com.amazonaws.dynamodb#InvalidRestoreTimeException": + throw await de_InvalidRestoreTimeExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "PointInTimeRecoveryUnavailableException": + case "com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException": + throw await de_PointInTimeRecoveryUnavailableExceptionRes(parsedOutput, context); + case "TableAlreadyExistsException": + case "com.amazonaws.dynamodb#TableAlreadyExistsException": + throw await de_TableAlreadyExistsExceptionRes(parsedOutput, context); + case "TableInUseException": + case "com.amazonaws.dynamodb#TableInUseException": + throw await de_TableInUseExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ScanCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_ScanCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_ScanOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_ScanCommand = de_ScanCommand; + var de_ScanCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_TagResourceCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_TagResourceCommandError(output, context); + } + await (0, smithy_client_1.collectBody)(output.body, context); + const response = { + $metadata: deserializeMetadata(output) + }; + return response; + }; + exports2.de_TagResourceCommand = de_TagResourceCommand; + var de_TagResourceCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_TransactGetItemsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_TransactGetItemsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_TransactGetItemsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_TransactGetItemsCommand = de_TransactGetItemsCommand; + var de_TransactGetItemsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionCanceledException": + case "com.amazonaws.dynamodb#TransactionCanceledException": + throw await de_TransactionCanceledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_TransactWriteItemsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_TransactWriteItemsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_TransactWriteItemsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_TransactWriteItemsCommand = de_TransactWriteItemsCommand; + var de_TransactWriteItemsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "IdempotentParameterMismatchException": + case "com.amazonaws.dynamodb#IdempotentParameterMismatchException": + throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionCanceledException": + case "com.amazonaws.dynamodb#TransactionCanceledException": + throw await de_TransactionCanceledExceptionRes(parsedOutput, context); + case "TransactionInProgressException": + case "com.amazonaws.dynamodb#TransactionInProgressException": + throw await de_TransactionInProgressExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UntagResourceCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UntagResourceCommandError(output, context); + } + await (0, smithy_client_1.collectBody)(output.body, context); + const response = { + $metadata: deserializeMetadata(output) + }; + return response; + }; + exports2.de_UntagResourceCommand = de_UntagResourceCommand; + var de_UntagResourceCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateContinuousBackupsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateContinuousBackupsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateContinuousBackupsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateContinuousBackupsCommand = de_UpdateContinuousBackupsCommand; + var de_UpdateContinuousBackupsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ContinuousBackupsUnavailableException": + case "com.amazonaws.dynamodb#ContinuousBackupsUnavailableException": + throw await de_ContinuousBackupsUnavailableExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateContributorInsightsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateContributorInsightsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateContributorInsightsCommand = de_UpdateContributorInsightsCommand; + var de_UpdateContributorInsightsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateGlobalTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateGlobalTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateGlobalTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateGlobalTableCommand = de_UpdateGlobalTableCommand; + var de_UpdateGlobalTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "GlobalTableNotFoundException": + case "com.amazonaws.dynamodb#GlobalTableNotFoundException": + throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ReplicaAlreadyExistsException": + case "com.amazonaws.dynamodb#ReplicaAlreadyExistsException": + throw await de_ReplicaAlreadyExistsExceptionRes(parsedOutput, context); + case "ReplicaNotFoundException": + case "com.amazonaws.dynamodb#ReplicaNotFoundException": + throw await de_ReplicaNotFoundExceptionRes(parsedOutput, context); + case "TableNotFoundException": + case "com.amazonaws.dynamodb#TableNotFoundException": + throw await de_TableNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateGlobalTableSettingsCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateGlobalTableSettingsCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateGlobalTableSettingsOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateGlobalTableSettingsCommand = de_UpdateGlobalTableSettingsCommand; + var de_UpdateGlobalTableSettingsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "GlobalTableNotFoundException": + case "com.amazonaws.dynamodb#GlobalTableNotFoundException": + throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context); + case "IndexNotFoundException": + case "com.amazonaws.dynamodb#IndexNotFoundException": + throw await de_IndexNotFoundExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ReplicaNotFoundException": + case "com.amazonaws.dynamodb#ReplicaNotFoundException": + throw await de_ReplicaNotFoundExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateItemCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateItemCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateItemOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateItemCommand = de_UpdateItemCommand; + var de_UpdateItemCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConditionalCheckFailedException": + case "com.amazonaws.dynamodb#ConditionalCheckFailedException": + throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context); + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "ItemCollectionSizeLimitExceededException": + case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": + throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context); + case "ProvisionedThroughputExceededException": + case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": + throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context); + case "RequestLimitExceeded": + case "com.amazonaws.dynamodb#RequestLimitExceeded": + throw await de_RequestLimitExceededRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TransactionConflictException": + case "com.amazonaws.dynamodb#TransactionConflictException": + throw await de_TransactionConflictExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateTableCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateTableCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateTableOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateTableCommand = de_UpdateTableCommand; + var de_UpdateTableCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateTableReplicaAutoScalingCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateTableReplicaAutoScalingCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_UpdateTableReplicaAutoScalingOutput(data, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateTableReplicaAutoScalingCommand = de_UpdateTableReplicaAutoScalingCommand; + var de_UpdateTableReplicaAutoScalingCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_UpdateTimeToLiveCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_UpdateTimeToLiveCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = (0, smithy_client_1._json)(data); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_UpdateTimeToLiveCommand = de_UpdateTimeToLiveCommand; + var de_UpdateTimeToLiveCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerError": + case "com.amazonaws.dynamodb#InternalServerError": + throw await de_InternalServerErrorRes(parsedOutput, context); + case "InvalidEndpointException": + case "com.amazonaws.dynamodb#InvalidEndpointException": + throw await de_InvalidEndpointExceptionRes(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.dynamodb#LimitExceededException": + throw await de_LimitExceededExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.dynamodb#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.dynamodb#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_BackupInUseExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.BackupInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_BackupNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.BackupNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ConditionalCheckFailedExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_ConditionalCheckFailedException(body, context); + const exception = new models_0_1.ConditionalCheckFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ContinuousBackupsUnavailableExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ContinuousBackupsUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_DuplicateItemExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.DuplicateItemException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ExportConflictExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ExportConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ExportNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ExportNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_GlobalTableAlreadyExistsExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.GlobalTableAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_GlobalTableNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.GlobalTableNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_IdempotentParameterMismatchExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.IdempotentParameterMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ImportConflictExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ImportConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ImportNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ImportNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_IndexNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.IndexNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InternalServerErrorRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.InternalServerError({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InvalidEndpointExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.InvalidEndpointException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InvalidExportTimeExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.InvalidExportTimeException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InvalidRestoreTimeExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.InvalidRestoreTimeException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ItemCollectionSizeLimitExceededExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ItemCollectionSizeLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_LimitExceededExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_PointInTimeRecoveryUnavailableExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.PointInTimeRecoveryUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ProvisionedThroughputExceededExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ProvisionedThroughputExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ReplicaAlreadyExistsExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ReplicaAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ReplicaNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ReplicaNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_RequestLimitExceededRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.RequestLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ResourceInUseExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TableAlreadyExistsExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.TableAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TableInUseExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.TableInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TableNotFoundExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.TableNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TransactionCanceledExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_TransactionCanceledException(body, context); + const exception = new models_0_1.TransactionCanceledException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TransactionConflictExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.TransactionConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_TransactionInProgressExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = (0, smithy_client_1._json)(body); + const exception = new models_0_1.TransactionInProgressException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var se_AttributeUpdates = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_AttributeValueUpdate(value, context); + return acc; + }, {}); + }; + var se_AttributeValue = (input, context) => { + return models_0_1.AttributeValue.visit(input, { + B: (value) => ({ B: context.base64Encoder(value) }), + BOOL: (value) => ({ BOOL: value }), + BS: (value) => ({ BS: se_BinarySetAttributeValue(value, context) }), + L: (value) => ({ L: se_ListAttributeValue(value, context) }), + M: (value) => ({ M: se_MapAttributeValue(value, context) }), + N: (value) => ({ N: value }), + NS: (value) => ({ NS: (0, smithy_client_1._json)(value) }), + NULL: (value) => ({ NULL: value }), + S: (value) => ({ S: value }), + SS: (value) => ({ SS: (0, smithy_client_1._json)(value) }), + _: (name, value) => ({ name: value }) + }); + }; + var se_AttributeValueList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_AttributeValue(entry, context); + }); + }; + var se_AttributeValueUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + Action: [], + Value: (_) => se_AttributeValue(_, context) + }); + }; + var se_AutoScalingPolicyUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + PolicyName: [], + TargetTrackingScalingPolicyConfiguration: (_) => se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate(_, context) + }); + }; + var se_AutoScalingSettingsUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + AutoScalingDisabled: [], + AutoScalingRoleArn: [], + MaximumUnits: [], + MinimumUnits: [], + ScalingPolicyUpdate: (_) => se_AutoScalingPolicyUpdate(_, context) + }); + }; + var se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + DisableScaleIn: [], + ScaleInCooldown: [], + ScaleOutCooldown: [], + TargetValue: smithy_client_1.serializeFloat + }); + }; + var se_BatchExecuteStatementInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ReturnConsumedCapacity: [], + Statements: (_) => se_PartiQLBatchRequest(_, context) + }); + }; + var se_BatchGetItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + RequestItems: (_) => se_BatchGetRequestMap(_, context), + ReturnConsumedCapacity: [] + }); + }; + var se_BatchGetRequestMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_KeysAndAttributes(value, context); + return acc; + }, {}); + }; + var se_BatchStatementRequest = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConsistentRead: [], + Parameters: (_) => se_PreparedStatementParameters(_, context), + ReturnValuesOnConditionCheckFailure: [], + Statement: [] + }); + }; + var se_BatchWriteItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + RequestItems: (_) => se_BatchWriteItemRequestMap(_, context), + ReturnConsumedCapacity: [], + ReturnItemCollectionMetrics: [] + }); + }; + var se_BatchWriteItemRequestMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_WriteRequests(value, context); + return acc; + }, {}); + }; + var se_BinarySetAttributeValue = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return context.base64Encoder(entry); + }); + }; + var se_Condition = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributeValueList: (_) => se_AttributeValueList(_, context), + ComparisonOperator: [] + }); + }; + var se_ConditionCheck = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Key: (_) => se_Key(_, context), + ReturnValuesOnConditionCheckFailure: [], + TableName: [] + }); + }; + var se_Delete = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Key: (_) => se_Key(_, context), + ReturnValuesOnConditionCheckFailure: [], + TableName: [] + }); + }; + var se_DeleteItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ConditionalOperator: [], + Expected: (_) => se_ExpectedAttributeMap(_, context), + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Key: (_) => se_Key(_, context), + ReturnConsumedCapacity: [], + ReturnItemCollectionMetrics: [], + ReturnValues: [], + ReturnValuesOnConditionCheckFailure: [], + TableName: [] + }); + }; + var se_DeleteRequest = (input, context) => { + return (0, smithy_client_1.take)(input, { + Key: (_) => se_Key(_, context) + }); + }; + var se_ExecuteStatementInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConsistentRead: [], + Limit: [], + NextToken: [], + Parameters: (_) => se_PreparedStatementParameters(_, context), + ReturnConsumedCapacity: [], + ReturnValuesOnConditionCheckFailure: [], + Statement: [] + }); + }; + var se_ExecuteTransactionInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ClientRequestToken: [true, (_) => _ ?? (0, uuid_1.v4)()], + ReturnConsumedCapacity: [], + TransactStatements: (_) => se_ParameterizedStatements(_, context) + }); + }; + var se_ExpectedAttributeMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_ExpectedAttributeValue(value, context); + return acc; + }, {}); + }; + var se_ExpectedAttributeValue = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributeValueList: (_) => se_AttributeValueList(_, context), + ComparisonOperator: [], + Exists: [], + Value: (_) => se_AttributeValue(_, context) + }); + }; + var se_ExportTableToPointInTimeInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ClientToken: [true, (_) => _ ?? (0, uuid_1.v4)()], + ExportFormat: [], + ExportTime: (_) => Math.round(_.getTime() / 1e3), + ExportType: [], + IncrementalExportSpecification: (_) => se_IncrementalExportSpecification(_, context), + S3Bucket: [], + S3BucketOwner: [], + S3Prefix: [], + S3SseAlgorithm: [], + S3SseKmsKeyId: [], + TableArn: [] + }); + }; + var se_ExpressionAttributeValueMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_AttributeValue(value, context); + return acc; + }, {}); + }; + var se_FilterConditionMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_Condition(value, context); + return acc; + }, {}); + }; + var se_Get = (input, context) => { + return (0, smithy_client_1.take)(input, { + ExpressionAttributeNames: smithy_client_1._json, + Key: (_) => se_Key(_, context), + ProjectionExpression: [], + TableName: [] + }); + }; + var se_GetItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributesToGet: smithy_client_1._json, + ConsistentRead: [], + ExpressionAttributeNames: smithy_client_1._json, + Key: (_) => se_Key(_, context), + ProjectionExpression: [], + ReturnConsumedCapacity: [], + TableName: [] + }); + }; + var se_GlobalSecondaryIndexAutoScalingUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + IndexName: [], + ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context) + }); + }; + var se_GlobalSecondaryIndexAutoScalingUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_GlobalSecondaryIndexAutoScalingUpdate(entry, context); + }); + }; + var se_GlobalTableGlobalSecondaryIndexSettingsUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + IndexName: [], + ProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context), + ProvisionedWriteCapacityUnits: [] + }); + }; + var se_GlobalTableGlobalSecondaryIndexSettingsUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_GlobalTableGlobalSecondaryIndexSettingsUpdate(entry, context); + }); + }; + var se_ImportTableInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ClientToken: [true, (_) => _ ?? (0, uuid_1.v4)()], + InputCompressionType: [], + InputFormat: [], + InputFormatOptions: smithy_client_1._json, + S3BucketSource: smithy_client_1._json, + TableCreationParameters: smithy_client_1._json + }); + }; + var se_IncrementalExportSpecification = (input, context) => { + return (0, smithy_client_1.take)(input, { + ExportFromTime: (_) => Math.round(_.getTime() / 1e3), + ExportToTime: (_) => Math.round(_.getTime() / 1e3), + ExportViewType: [] + }); + }; + var se_Key = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_AttributeValue(value, context); + return acc; + }, {}); + }; + var se_KeyConditions = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_Condition(value, context); + return acc; + }, {}); + }; + var se_KeyList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_Key(entry, context); + }); + }; + var se_KeysAndAttributes = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributesToGet: smithy_client_1._json, + ConsistentRead: [], + ExpressionAttributeNames: smithy_client_1._json, + Keys: (_) => se_KeyList(_, context), + ProjectionExpression: [] + }); + }; + var se_ListAttributeValue = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_AttributeValue(entry, context); + }); + }; + var se_ListBackupsInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + BackupType: [], + ExclusiveStartBackupArn: [], + Limit: [], + TableName: [], + TimeRangeLowerBound: (_) => Math.round(_.getTime() / 1e3), + TimeRangeUpperBound: (_) => Math.round(_.getTime() / 1e3) + }); + }; + var se_MapAttributeValue = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_AttributeValue(value, context); + return acc; + }, {}); + }; + var se_ParameterizedStatement = (input, context) => { + return (0, smithy_client_1.take)(input, { + Parameters: (_) => se_PreparedStatementParameters(_, context), + ReturnValuesOnConditionCheckFailure: [], + Statement: [] + }); + }; + var se_ParameterizedStatements = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_ParameterizedStatement(entry, context); + }); + }; + var se_PartiQLBatchRequest = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_BatchStatementRequest(entry, context); + }); + }; + var se_PreparedStatementParameters = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_AttributeValue(entry, context); + }); + }; + var se_Put = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Item: (_) => se_PutItemInputAttributeMap(_, context), + ReturnValuesOnConditionCheckFailure: [], + TableName: [] + }); + }; + var se_PutItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ConditionalOperator: [], + Expected: (_) => se_ExpectedAttributeMap(_, context), + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Item: (_) => se_PutItemInputAttributeMap(_, context), + ReturnConsumedCapacity: [], + ReturnItemCollectionMetrics: [], + ReturnValues: [], + ReturnValuesOnConditionCheckFailure: [], + TableName: [] + }); + }; + var se_PutItemInputAttributeMap = (input, context) => { + return Object.entries(input).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = se_AttributeValue(value, context); + return acc; + }, {}); + }; + var se_PutRequest = (input, context) => { + return (0, smithy_client_1.take)(input, { + Item: (_) => se_PutItemInputAttributeMap(_, context) + }); + }; + var se_QueryInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributesToGet: smithy_client_1._json, + ConditionalOperator: [], + ConsistentRead: [], + ExclusiveStartKey: (_) => se_Key(_, context), + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + FilterExpression: [], + IndexName: [], + KeyConditionExpression: [], + KeyConditions: (_) => se_KeyConditions(_, context), + Limit: [], + ProjectionExpression: [], + QueryFilter: (_) => se_FilterConditionMap(_, context), + ReturnConsumedCapacity: [], + ScanIndexForward: [], + Select: [], + TableName: [] + }); + }; + var se_ReplicaAutoScalingUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + RegionName: [], + ReplicaGlobalSecondaryIndexUpdates: (_) => se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList(_, context), + ReplicaProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context) + }); + }; + var se_ReplicaAutoScalingUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_ReplicaAutoScalingUpdate(entry, context); + }); + }; + var se_ReplicaGlobalSecondaryIndexAutoScalingUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + IndexName: [], + ProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context) + }); + }; + var se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_ReplicaGlobalSecondaryIndexAutoScalingUpdate(entry, context); + }); + }; + var se_ReplicaGlobalSecondaryIndexSettingsUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + IndexName: [], + ProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context), + ProvisionedReadCapacityUnits: [] + }); + }; + var se_ReplicaGlobalSecondaryIndexSettingsUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_ReplicaGlobalSecondaryIndexSettingsUpdate(entry, context); + }); + }; + var se_ReplicaSettingsUpdate = (input, context) => { + return (0, smithy_client_1.take)(input, { + RegionName: [], + ReplicaGlobalSecondaryIndexSettingsUpdate: (_) => se_ReplicaGlobalSecondaryIndexSettingsUpdateList(_, context), + ReplicaProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context), + ReplicaProvisionedReadCapacityUnits: [], + ReplicaTableClass: [] + }); + }; + var se_ReplicaSettingsUpdateList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_ReplicaSettingsUpdate(entry, context); + }); + }; + var se_RestoreTableToPointInTimeInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + BillingModeOverride: [], + GlobalSecondaryIndexOverride: smithy_client_1._json, + LocalSecondaryIndexOverride: smithy_client_1._json, + ProvisionedThroughputOverride: smithy_client_1._json, + RestoreDateTime: (_) => Math.round(_.getTime() / 1e3), + SSESpecificationOverride: smithy_client_1._json, + SourceTableArn: [], + SourceTableName: [], + TargetTableName: [], + UseLatestRestorableTime: [] + }); + }; + var se_ScanInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributesToGet: smithy_client_1._json, + ConditionalOperator: [], + ConsistentRead: [], + ExclusiveStartKey: (_) => se_Key(_, context), + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + FilterExpression: [], + IndexName: [], + Limit: [], + ProjectionExpression: [], + ReturnConsumedCapacity: [], + ScanFilter: (_) => se_FilterConditionMap(_, context), + Segment: [], + Select: [], + TableName: [], + TotalSegments: [] + }); + }; + var se_TransactGetItem = (input, context) => { + return (0, smithy_client_1.take)(input, { + Get: (_) => se_Get(_, context) + }); + }; + var se_TransactGetItemList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_TransactGetItem(entry, context); + }); + }; + var se_TransactGetItemsInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ReturnConsumedCapacity: [], + TransactItems: (_) => se_TransactGetItemList(_, context) + }); + }; + var se_TransactWriteItem = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionCheck: (_) => se_ConditionCheck(_, context), + Delete: (_) => se_Delete(_, context), + Put: (_) => se_Put(_, context), + Update: (_) => se_Update(_, context) + }); + }; + var se_TransactWriteItemList = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_TransactWriteItem(entry, context); + }); + }; + var se_TransactWriteItemsInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + ClientRequestToken: [true, (_) => _ ?? (0, uuid_1.v4)()], + ReturnConsumedCapacity: [], + ReturnItemCollectionMetrics: [], + TransactItems: (_) => se_TransactWriteItemList(_, context) + }); + }; + var se_Update = (input, context) => { + return (0, smithy_client_1.take)(input, { + ConditionExpression: [], + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Key: (_) => se_Key(_, context), + ReturnValuesOnConditionCheckFailure: [], + TableName: [], + UpdateExpression: [] + }); + }; + var se_UpdateGlobalTableSettingsInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + GlobalTableBillingMode: [], + GlobalTableGlobalSecondaryIndexSettingsUpdate: (_) => se_GlobalTableGlobalSecondaryIndexSettingsUpdateList(_, context), + GlobalTableName: [], + GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context), + GlobalTableProvisionedWriteCapacityUnits: [], + ReplicaSettingsUpdate: (_) => se_ReplicaSettingsUpdateList(_, context) + }); + }; + var se_UpdateItemInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + AttributeUpdates: (_) => se_AttributeUpdates(_, context), + ConditionExpression: [], + ConditionalOperator: [], + Expected: (_) => se_ExpectedAttributeMap(_, context), + ExpressionAttributeNames: smithy_client_1._json, + ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context), + Key: (_) => se_Key(_, context), + ReturnConsumedCapacity: [], + ReturnItemCollectionMetrics: [], + ReturnValues: [], + ReturnValuesOnConditionCheckFailure: [], + TableName: [], + UpdateExpression: [] + }); + }; + var se_UpdateTableReplicaAutoScalingInput = (input, context) => { + return (0, smithy_client_1.take)(input, { + GlobalSecondaryIndexUpdates: (_) => se_GlobalSecondaryIndexAutoScalingUpdateList(_, context), + ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context), + ReplicaUpdates: (_) => se_ReplicaAutoScalingUpdateList(_, context), + TableName: [] + }); + }; + var se_WriteRequest = (input, context) => { + return (0, smithy_client_1.take)(input, { + DeleteRequest: (_) => se_DeleteRequest(_, context), + PutRequest: (_) => se_PutRequest(_, context) + }); + }; + var se_WriteRequests = (input, context) => { + return input.filter((e) => e != null).map((entry) => { + return se_WriteRequest(entry, context); + }); + }; + var de_ArchivalSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + ArchivalBackupArn: smithy_client_1.expectString, + ArchivalDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ArchivalReason: smithy_client_1.expectString + }); + }; + var de_AttributeMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_AttributeValue((0, smithy_client_1.expectUnion)(value), context); + return acc; + }, {}); + }; + var de_AttributeValue = (output, context) => { + if (output.B != null) { + return { + B: context.base64Decoder(output.B) + }; + } + if ((0, smithy_client_1.expectBoolean)(output.BOOL) !== void 0) { + return { BOOL: (0, smithy_client_1.expectBoolean)(output.BOOL) }; + } + if (output.BS != null) { + return { + BS: de_BinarySetAttributeValue(output.BS, context) + }; + } + if (output.L != null) { + return { + L: de_ListAttributeValue(output.L, context) + }; + } + if (output.M != null) { + return { + M: de_MapAttributeValue(output.M, context) + }; + } + if ((0, smithy_client_1.expectString)(output.N) !== void 0) { + return { N: (0, smithy_client_1.expectString)(output.N) }; + } + if (output.NS != null) { + return { + NS: (0, smithy_client_1._json)(output.NS) + }; + } + if ((0, smithy_client_1.expectBoolean)(output.NULL) !== void 0) { + return { NULL: (0, smithy_client_1.expectBoolean)(output.NULL) }; + } + if ((0, smithy_client_1.expectString)(output.S) !== void 0) { + return { S: (0, smithy_client_1.expectString)(output.S) }; + } + if (output.SS != null) { + return { + SS: (0, smithy_client_1._json)(output.SS) + }; + } + return { $unknown: Object.entries(output)[0] }; + }; + var de_AutoScalingPolicyDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + PolicyName: smithy_client_1.expectString, + TargetTrackingScalingPolicyConfiguration: (_) => de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription(_, context) + }); + }; + var de_AutoScalingPolicyDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_AutoScalingPolicyDescription(entry, context); + }); + return retVal; + }; + var de_AutoScalingSettingsDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + AutoScalingDisabled: smithy_client_1.expectBoolean, + AutoScalingRoleArn: smithy_client_1.expectString, + MaximumUnits: smithy_client_1.expectLong, + MinimumUnits: smithy_client_1.expectLong, + ScalingPolicies: (_) => de_AutoScalingPolicyDescriptionList(_, context) + }); + }; + var de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + DisableScaleIn: smithy_client_1.expectBoolean, + ScaleInCooldown: smithy_client_1.expectInt32, + ScaleOutCooldown: smithy_client_1.expectInt32, + TargetValue: smithy_client_1.limitedParseDouble + }); + }; + var de_BackupDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupDetails: (_) => de_BackupDetails(_, context), + SourceTableDetails: (_) => de_SourceTableDetails(_, context), + SourceTableFeatureDetails: (_) => de_SourceTableFeatureDetails(_, context) + }); + }; + var de_BackupDetails = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupArn: smithy_client_1.expectString, + BackupCreationDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + BackupExpiryDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + BackupName: smithy_client_1.expectString, + BackupSizeBytes: smithy_client_1.expectLong, + BackupStatus: smithy_client_1.expectString, + BackupType: smithy_client_1.expectString + }); + }; + var de_BackupSummaries = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_BackupSummary(entry, context); + }); + return retVal; + }; + var de_BackupSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupArn: smithy_client_1.expectString, + BackupCreationDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + BackupExpiryDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + BackupName: smithy_client_1.expectString, + BackupSizeBytes: smithy_client_1.expectLong, + BackupStatus: smithy_client_1.expectString, + BackupType: smithy_client_1.expectString, + TableArn: smithy_client_1.expectString, + TableId: smithy_client_1.expectString, + TableName: smithy_client_1.expectString + }); + }; + var de_BatchExecuteStatementOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + Responses: (_) => de_PartiQLBatchResponse(_, context) + }); + }; + var de_BatchGetItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + Responses: (_) => de_BatchGetResponseMap(_, context), + UnprocessedKeys: (_) => de_BatchGetRequestMap(_, context) + }); + }; + var de_BatchGetRequestMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_KeysAndAttributes(value, context); + return acc; + }, {}); + }; + var de_BatchGetResponseMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_ItemList(value, context); + return acc; + }, {}); + }; + var de_BatchStatementError = (output, context) => { + return (0, smithy_client_1.take)(output, { + Code: smithy_client_1.expectString, + Item: (_) => de_AttributeMap(_, context), + Message: smithy_client_1.expectString + }); + }; + var de_BatchStatementResponse = (output, context) => { + return (0, smithy_client_1.take)(output, { + Error: (_) => de_BatchStatementError(_, context), + Item: (_) => de_AttributeMap(_, context), + TableName: smithy_client_1.expectString + }); + }; + var de_BatchWriteItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context), + UnprocessedItems: (_) => de_BatchWriteItemRequestMap(_, context) + }); + }; + var de_BatchWriteItemRequestMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_WriteRequests(value, context); + return acc; + }, {}); + }; + var de_BillingModeSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + BillingMode: smithy_client_1.expectString, + LastUpdateToPayPerRequestDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))) + }); + }; + var de_BinarySetAttributeValue = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return context.base64Decoder(entry); + }); + return retVal; + }; + var de_CancellationReason = (output, context) => { + return (0, smithy_client_1.take)(output, { + Code: smithy_client_1.expectString, + Item: (_) => de_AttributeMap(_, context), + Message: smithy_client_1.expectString + }); + }; + var de_CancellationReasonList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_CancellationReason(entry, context); + }); + return retVal; + }; + var de_Capacity = (output, context) => { + return (0, smithy_client_1.take)(output, { + CapacityUnits: smithy_client_1.limitedParseDouble, + ReadCapacityUnits: smithy_client_1.limitedParseDouble, + WriteCapacityUnits: smithy_client_1.limitedParseDouble + }); + }; + var de_ConditionalCheckFailedException = (output, context) => { + return (0, smithy_client_1.take)(output, { + Item: (_) => de_AttributeMap(_, context), + message: smithy_client_1.expectString + }); + }; + var de_ConsumedCapacity = (output, context) => { + return (0, smithy_client_1.take)(output, { + CapacityUnits: smithy_client_1.limitedParseDouble, + GlobalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context), + LocalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context), + ReadCapacityUnits: smithy_client_1.limitedParseDouble, + Table: (_) => de_Capacity(_, context), + TableName: smithy_client_1.expectString, + WriteCapacityUnits: smithy_client_1.limitedParseDouble + }); + }; + var de_ConsumedCapacityMultiple = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ConsumedCapacity(entry, context); + }); + return retVal; + }; + var de_ContinuousBackupsDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + ContinuousBackupsStatus: smithy_client_1.expectString, + PointInTimeRecoveryDescription: (_) => de_PointInTimeRecoveryDescription(_, context) + }); + }; + var de_CreateBackupOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupDetails: (_) => de_BackupDetails(_, context) + }); + }; + var de_CreateGlobalTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalTableDescription: (_) => de_GlobalTableDescription(_, context) + }); + }; + var de_CreateTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableDescription: (_) => de_TableDescription(_, context) + }); + }; + var de_DeleteBackupOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupDescription: (_) => de_BackupDescription(_, context) + }); + }; + var de_DeleteItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + Attributes: (_) => de_AttributeMap(_, context), + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context) + }); + }; + var de_DeleteRequest = (output, context) => { + return (0, smithy_client_1.take)(output, { + Key: (_) => de_Key(_, context) + }); + }; + var de_DeleteTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableDescription: (_) => de_TableDescription(_, context) + }); + }; + var de_DescribeBackupOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupDescription: (_) => de_BackupDescription(_, context) + }); + }; + var de_DescribeContinuousBackupsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context) + }); + }; + var de_DescribeContributorInsightsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ContributorInsightsRuleList: smithy_client_1._json, + ContributorInsightsStatus: smithy_client_1.expectString, + FailureException: smithy_client_1._json, + IndexName: smithy_client_1.expectString, + LastUpdateDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableName: smithy_client_1.expectString + }); + }; + var de_DescribeExportOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ExportDescription: (_) => de_ExportDescription(_, context) + }); + }; + var de_DescribeGlobalTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalTableDescription: (_) => de_GlobalTableDescription(_, context) + }); + }; + var de_DescribeGlobalTableSettingsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalTableName: smithy_client_1.expectString, + ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context) + }); + }; + var de_DescribeImportOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ImportTableDescription: (_) => de_ImportTableDescription(_, context) + }); + }; + var de_DescribeTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + Table: (_) => de_TableDescription(_, context) + }); + }; + var de_DescribeTableReplicaAutoScalingOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context) + }); + }; + var de_ExecuteStatementOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + Items: (_) => de_ItemList(_, context), + LastEvaluatedKey: (_) => de_Key(_, context), + NextToken: smithy_client_1.expectString + }); + }; + var de_ExecuteTransactionOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + Responses: (_) => de_ItemResponseList(_, context) + }); + }; + var de_ExportDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + BilledSizeBytes: smithy_client_1.expectLong, + ClientToken: smithy_client_1.expectString, + EndTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ExportArn: smithy_client_1.expectString, + ExportFormat: smithy_client_1.expectString, + ExportManifest: smithy_client_1.expectString, + ExportStatus: smithy_client_1.expectString, + ExportTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ExportType: smithy_client_1.expectString, + FailureCode: smithy_client_1.expectString, + FailureMessage: smithy_client_1.expectString, + IncrementalExportSpecification: (_) => de_IncrementalExportSpecification(_, context), + ItemCount: smithy_client_1.expectLong, + S3Bucket: smithy_client_1.expectString, + S3BucketOwner: smithy_client_1.expectString, + S3Prefix: smithy_client_1.expectString, + S3SseAlgorithm: smithy_client_1.expectString, + S3SseKmsKeyId: smithy_client_1.expectString, + StartTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableArn: smithy_client_1.expectString, + TableId: smithy_client_1.expectString + }); + }; + var de_ExportTableToPointInTimeOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ExportDescription: (_) => de_ExportDescription(_, context) + }); + }; + var de_GetItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + Item: (_) => de_AttributeMap(_, context) + }); + }; + var de_GlobalSecondaryIndexDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + Backfilling: smithy_client_1.expectBoolean, + IndexArn: smithy_client_1.expectString, + IndexName: smithy_client_1.expectString, + IndexSizeBytes: smithy_client_1.expectLong, + IndexStatus: smithy_client_1.expectString, + ItemCount: smithy_client_1.expectLong, + KeySchema: smithy_client_1._json, + Projection: smithy_client_1._json, + ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context) + }); + }; + var de_GlobalSecondaryIndexDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_GlobalSecondaryIndexDescription(entry, context); + }); + return retVal; + }; + var de_GlobalTableDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + CreationDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + GlobalTableArn: smithy_client_1.expectString, + GlobalTableName: smithy_client_1.expectString, + GlobalTableStatus: smithy_client_1.expectString, + ReplicationGroup: (_) => de_ReplicaDescriptionList(_, context) + }); + }; + var de_ImportSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + CloudWatchLogGroupArn: smithy_client_1.expectString, + EndTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ImportArn: smithy_client_1.expectString, + ImportStatus: smithy_client_1.expectString, + InputFormat: smithy_client_1.expectString, + S3BucketSource: smithy_client_1._json, + StartTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableArn: smithy_client_1.expectString + }); + }; + var de_ImportSummaryList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ImportSummary(entry, context); + }); + return retVal; + }; + var de_ImportTableDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + ClientToken: smithy_client_1.expectString, + CloudWatchLogGroupArn: smithy_client_1.expectString, + EndTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ErrorCount: smithy_client_1.expectLong, + FailureCode: smithy_client_1.expectString, + FailureMessage: smithy_client_1.expectString, + ImportArn: smithy_client_1.expectString, + ImportStatus: smithy_client_1.expectString, + ImportedItemCount: smithy_client_1.expectLong, + InputCompressionType: smithy_client_1.expectString, + InputFormat: smithy_client_1.expectString, + InputFormatOptions: smithy_client_1._json, + ProcessedItemCount: smithy_client_1.expectLong, + ProcessedSizeBytes: smithy_client_1.expectLong, + S3BucketSource: smithy_client_1._json, + StartTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableArn: smithy_client_1.expectString, + TableCreationParameters: smithy_client_1._json, + TableId: smithy_client_1.expectString + }); + }; + var de_ImportTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ImportTableDescription: (_) => de_ImportTableDescription(_, context) + }); + }; + var de_IncrementalExportSpecification = (output, context) => { + return (0, smithy_client_1.take)(output, { + ExportFromTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ExportToTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ExportViewType: smithy_client_1.expectString + }); + }; + var de_ItemCollectionKeyAttributeMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_AttributeValue((0, smithy_client_1.expectUnion)(value), context); + return acc; + }, {}); + }; + var de_ItemCollectionMetrics = (output, context) => { + return (0, smithy_client_1.take)(output, { + ItemCollectionKey: (_) => de_ItemCollectionKeyAttributeMap(_, context), + SizeEstimateRangeGB: (_) => de_ItemCollectionSizeEstimateRange(_, context) + }); + }; + var de_ItemCollectionMetricsMultiple = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ItemCollectionMetrics(entry, context); + }); + return retVal; + }; + var de_ItemCollectionMetricsPerTable = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_ItemCollectionMetricsMultiple(value, context); + return acc; + }, {}); + }; + var de_ItemCollectionSizeEstimateRange = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return (0, smithy_client_1.limitedParseDouble)(entry); + }); + return retVal; + }; + var de_ItemList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_AttributeMap(entry, context); + }); + return retVal; + }; + var de_ItemResponse = (output, context) => { + return (0, smithy_client_1.take)(output, { + Item: (_) => de_AttributeMap(_, context) + }); + }; + var de_ItemResponseList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ItemResponse(entry, context); + }); + return retVal; + }; + var de_Key = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_AttributeValue((0, smithy_client_1.expectUnion)(value), context); + return acc; + }, {}); + }; + var de_KeyList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_Key(entry, context); + }); + return retVal; + }; + var de_KeysAndAttributes = (output, context) => { + return (0, smithy_client_1.take)(output, { + AttributesToGet: smithy_client_1._json, + ConsistentRead: smithy_client_1.expectBoolean, + ExpressionAttributeNames: smithy_client_1._json, + Keys: (_) => de_KeyList(_, context), + ProjectionExpression: smithy_client_1.expectString + }); + }; + var de_ListAttributeValue = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_AttributeValue((0, smithy_client_1.expectUnion)(entry), context); + }); + return retVal; + }; + var de_ListBackupsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + BackupSummaries: (_) => de_BackupSummaries(_, context), + LastEvaluatedBackupArn: smithy_client_1.expectString + }); + }; + var de_ListImportsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ImportSummaryList: (_) => de_ImportSummaryList(_, context), + NextToken: smithy_client_1.expectString + }); + }; + var de_MapAttributeValue = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_AttributeValue((0, smithy_client_1.expectUnion)(value), context); + return acc; + }, {}); + }; + var de_PartiQLBatchResponse = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_BatchStatementResponse(entry, context); + }); + return retVal; + }; + var de_PointInTimeRecoveryDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + EarliestRestorableDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + LatestRestorableDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + PointInTimeRecoveryStatus: smithy_client_1.expectString + }); + }; + var de_ProvisionedThroughputDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + LastDecreaseDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + LastIncreaseDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + NumberOfDecreasesToday: smithy_client_1.expectLong, + ReadCapacityUnits: smithy_client_1.expectLong, + WriteCapacityUnits: smithy_client_1.expectLong + }); + }; + var de_PutItemInputAttributeMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_AttributeValue((0, smithy_client_1.expectUnion)(value), context); + return acc; + }, {}); + }; + var de_PutItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + Attributes: (_) => de_AttributeMap(_, context), + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context) + }); + }; + var de_PutRequest = (output, context) => { + return (0, smithy_client_1.take)(output, { + Item: (_) => de_PutItemInputAttributeMap(_, context) + }); + }; + var de_QueryOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + Count: smithy_client_1.expectInt32, + Items: (_) => de_ItemList(_, context), + LastEvaluatedKey: (_) => de_Key(_, context), + ScannedCount: smithy_client_1.expectInt32 + }); + }; + var de_ReplicaAutoScalingDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalSecondaryIndexes: (_) => de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList(_, context), + RegionName: smithy_client_1.expectString, + ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ReplicaStatus: smithy_client_1.expectString + }); + }; + var de_ReplicaAutoScalingDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ReplicaAutoScalingDescription(entry, context); + }); + return retVal; + }; + var de_ReplicaDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalSecondaryIndexes: smithy_client_1._json, + KMSMasterKeyId: smithy_client_1.expectString, + ProvisionedThroughputOverride: smithy_client_1._json, + RegionName: smithy_client_1.expectString, + ReplicaInaccessibleDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + ReplicaStatus: smithy_client_1.expectString, + ReplicaStatusDescription: smithy_client_1.expectString, + ReplicaStatusPercentProgress: smithy_client_1.expectString, + ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context) + }); + }; + var de_ReplicaDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ReplicaDescription(entry, context); + }); + return retVal; + }; + var de_ReplicaGlobalSecondaryIndexAutoScalingDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + IndexName: smithy_client_1.expectString, + IndexStatus: smithy_client_1.expectString, + ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context) + }); + }; + var de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ReplicaGlobalSecondaryIndexAutoScalingDescription(entry, context); + }); + return retVal; + }; + var de_ReplicaGlobalSecondaryIndexSettingsDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + IndexName: smithy_client_1.expectString, + IndexStatus: smithy_client_1.expectString, + ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ProvisionedReadCapacityUnits: smithy_client_1.expectLong, + ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ProvisionedWriteCapacityUnits: smithy_client_1.expectLong + }); + }; + var de_ReplicaGlobalSecondaryIndexSettingsDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ReplicaGlobalSecondaryIndexSettingsDescription(entry, context); + }); + return retVal; + }; + var de_ReplicaSettingsDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + RegionName: smithy_client_1.expectString, + ReplicaBillingModeSummary: (_) => de_BillingModeSummary(_, context), + ReplicaGlobalSecondaryIndexSettings: (_) => de_ReplicaGlobalSecondaryIndexSettingsDescriptionList(_, context), + ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ReplicaProvisionedReadCapacityUnits: smithy_client_1.expectLong, + ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context), + ReplicaProvisionedWriteCapacityUnits: smithy_client_1.expectLong, + ReplicaStatus: smithy_client_1.expectString, + ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context) + }); + }; + var de_ReplicaSettingsDescriptionList = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_ReplicaSettingsDescription(entry, context); + }); + return retVal; + }; + var de_RestoreSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + RestoreDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + RestoreInProgress: smithy_client_1.expectBoolean, + SourceBackupArn: smithy_client_1.expectString, + SourceTableArn: smithy_client_1.expectString + }); + }; + var de_RestoreTableFromBackupOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableDescription: (_) => de_TableDescription(_, context) + }); + }; + var de_RestoreTableToPointInTimeOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableDescription: (_) => de_TableDescription(_, context) + }); + }; + var de_ScanOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + Count: smithy_client_1.expectInt32, + Items: (_) => de_ItemList(_, context), + LastEvaluatedKey: (_) => de_Key(_, context), + ScannedCount: smithy_client_1.expectInt32 + }); + }; + var de_SecondaryIndexesCapacityMap = (output, context) => { + return Object.entries(output).reduce((acc, [key, value]) => { + if (value === null) { + return acc; + } + acc[key] = de_Capacity(value, context); + return acc; + }, {}); + }; + var de_SourceTableDetails = (output, context) => { + return (0, smithy_client_1.take)(output, { + BillingMode: smithy_client_1.expectString, + ItemCount: smithy_client_1.expectLong, + KeySchema: smithy_client_1._json, + ProvisionedThroughput: smithy_client_1._json, + TableArn: smithy_client_1.expectString, + TableCreationDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableId: smithy_client_1.expectString, + TableName: smithy_client_1.expectString, + TableSizeBytes: smithy_client_1.expectLong + }); + }; + var de_SourceTableFeatureDetails = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalSecondaryIndexes: smithy_client_1._json, + LocalSecondaryIndexes: smithy_client_1._json, + SSEDescription: (_) => de_SSEDescription(_, context), + StreamDescription: smithy_client_1._json, + TimeToLiveDescription: smithy_client_1._json + }); + }; + var de_SSEDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + InaccessibleEncryptionDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + KMSMasterKeyArn: smithy_client_1.expectString, + SSEType: smithy_client_1.expectString, + Status: smithy_client_1.expectString + }); + }; + var de_TableAutoScalingDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + Replicas: (_) => de_ReplicaAutoScalingDescriptionList(_, context), + TableName: smithy_client_1.expectString, + TableStatus: smithy_client_1.expectString + }); + }; + var de_TableClassSummary = (output, context) => { + return (0, smithy_client_1.take)(output, { + LastUpdateDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + TableClass: smithy_client_1.expectString + }); + }; + var de_TableDescription = (output, context) => { + return (0, smithy_client_1.take)(output, { + ArchivalSummary: (_) => de_ArchivalSummary(_, context), + AttributeDefinitions: smithy_client_1._json, + BillingModeSummary: (_) => de_BillingModeSummary(_, context), + CreationDateTime: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))), + DeletionProtectionEnabled: smithy_client_1.expectBoolean, + GlobalSecondaryIndexes: (_) => de_GlobalSecondaryIndexDescriptionList(_, context), + GlobalTableVersion: smithy_client_1.expectString, + ItemCount: smithy_client_1.expectLong, + KeySchema: smithy_client_1._json, + LatestStreamArn: smithy_client_1.expectString, + LatestStreamLabel: smithy_client_1.expectString, + LocalSecondaryIndexes: smithy_client_1._json, + ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context), + Replicas: (_) => de_ReplicaDescriptionList(_, context), + RestoreSummary: (_) => de_RestoreSummary(_, context), + SSEDescription: (_) => de_SSEDescription(_, context), + StreamSpecification: smithy_client_1._json, + TableArn: smithy_client_1.expectString, + TableClassSummary: (_) => de_TableClassSummary(_, context), + TableId: smithy_client_1.expectString, + TableName: smithy_client_1.expectString, + TableSizeBytes: smithy_client_1.expectLong, + TableStatus: smithy_client_1.expectString + }); + }; + var de_TransactGetItemsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + Responses: (_) => de_ItemResponseList(_, context) + }); + }; + var de_TransactionCanceledException = (output, context) => { + return (0, smithy_client_1.take)(output, { + CancellationReasons: (_) => de_CancellationReasonList(_, context), + Message: smithy_client_1.expectString + }); + }; + var de_TransactWriteItemsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context), + ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context) + }); + }; + var de_UpdateContinuousBackupsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context) + }); + }; + var de_UpdateGlobalTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalTableDescription: (_) => de_GlobalTableDescription(_, context) + }); + }; + var de_UpdateGlobalTableSettingsOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + GlobalTableName: smithy_client_1.expectString, + ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context) + }); + }; + var de_UpdateItemOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + Attributes: (_) => de_AttributeMap(_, context), + ConsumedCapacity: (_) => de_ConsumedCapacity(_, context), + ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context) + }); + }; + var de_UpdateTableOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableDescription: (_) => de_TableDescription(_, context) + }); + }; + var de_UpdateTableReplicaAutoScalingOutput = (output, context) => { + return (0, smithy_client_1.take)(output, { + TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context) + }); + }; + var de_WriteRequest = (output, context) => { + return (0, smithy_client_1.take)(output, { + DeleteRequest: (_) => de_DeleteRequest(_, context), + PutRequest: (_) => de_PutRequest(_, context) + }); + }; + var de_WriteRequests = (output, context) => { + const retVal = (output || []).filter((e) => e != null).map((entry) => { + return de_WriteRequest(entry, context); + }); + return retVal; + }; + var deserializeMetadata = (output) => ({ + httpStatusCode: output.statusCode, + requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"] + }); + var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); + var throwDefaultError = (0, smithy_client_1.withBaseException)(DynamoDBServiceException_1.DynamoDBServiceException); + var buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const contents = { + protocol, + hostname, + port, + method: "POST", + path: basePath.endsWith("/") ? basePath.slice(0, -1) + path : basePath + path, + headers + }; + if (resolvedHostname !== void 0) { + contents.hostname = resolvedHostname; + } + if (body !== void 0) { + contents.body = body; + } + return new protocol_http_1.HttpRequest(contents); + }; + function sharedHeaders(operation) { + return { + "content-type": "application/x-amz-json-1.0", + "x-amz-target": `DynamoDB_20120810.${operation}` + }; + } + var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { + if (encoded.length) { + return JSON.parse(encoded); + } + return {}; + }); + var parseErrorBody = async (errorBody, context) => { + const value = await parseBody(errorBody, context); + value.message = value.message ?? value.Message; + return value; + }; + var loadRestJsonErrorCode = (output, data) => { + const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase()); + const sanitizeErrorCode = (rawValue) => { + let cleanValue = rawValue; + if (typeof cleanValue === "number") { + cleanValue = cleanValue.toString(); + } + if (cleanValue.indexOf(",") >= 0) { + cleanValue = cleanValue.split(",")[0]; + } + if (cleanValue.indexOf(":") >= 0) { + cleanValue = cleanValue.split(":")[0]; + } + if (cleanValue.indexOf("#") >= 0) { + cleanValue = cleanValue.split("#")[1]; + } + return cleanValue; + }; + const headerKey = findKey(output.headers, "x-amzn-errortype"); + if (headerKey !== void 0) { + return sanitizeErrorCode(output.headers[headerKey]); + } + if (data.code !== void 0) { + return sanitizeErrorCode(data.code); + } + if (data["__type"] !== void 0) { + return sanitizeErrorCode(data["__type"]); + } + }; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeEndpointsCommand.js +var require_DescribeEndpointsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeEndpointsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeEndpointsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeEndpointsCommand = class _DescribeEndpointsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeEndpointsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeEndpointsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeEndpoints" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeEndpointsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeEndpointsCommand)(output, context); + } + }; + exports2.DescribeEndpointsCommand = DescribeEndpointsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/EndpointParameters.js +var require_EndpointParameters = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/EndpointParameters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveClientEndpointParameters = void 0; + var resolveClientEndpointParameters = (options) => { + return { + ...options, + useDualstackEndpoint: options.useDualstackEndpoint ?? false, + useFipsEndpoint: options.useFipsEndpoint ?? false, + defaultSigningName: "dynamodb" + }; + }; + exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/package.json +var require_package = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/package.json"(exports2, module2) { + module2.exports = { + name: "@aws-sdk/client-dynamodb", + description: "AWS SDK for JavaScript Dynamodb Client for Node.js, Browser and React Native", + version: "3.421.0", + scripts: { + build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", + "build:cjs": "tsc -p tsconfig.cjs.json", + "build:docs": "typedoc", + "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 dynamodb" + }, + main: "./dist-cjs/index.js", + types: "./dist-types/index.d.ts", + module: "./dist-es/index.js", + sideEffects: false, + dependencies: { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.421.0", + "@aws-sdk/credential-provider-node": "3.421.0", + "@aws-sdk/middleware-endpoint-discovery": "3.418.0", + "@aws-sdk/middleware-host-header": "3.418.0", + "@aws-sdk/middleware-logger": "3.418.0", + "@aws-sdk/middleware-recursion-detection": "3.418.0", + "@aws-sdk/middleware-signing": "3.418.0", + "@aws-sdk/middleware-user-agent": "3.418.0", + "@aws-sdk/region-config-resolver": "3.418.0", + "@aws-sdk/types": "3.418.0", + "@aws-sdk/util-endpoints": "3.418.0", + "@aws-sdk/util-user-agent-browser": "3.418.0", + "@aws-sdk/util-user-agent-node": "3.418.0", + "@smithy/config-resolver": "^2.0.10", + "@smithy/fetch-http-handler": "^2.1.5", + "@smithy/hash-node": "^2.0.9", + "@smithy/invalid-dependency": "^2.0.9", + "@smithy/middleware-content-length": "^2.0.11", + "@smithy/middleware-endpoint": "^2.0.9", + "@smithy/middleware-retry": "^2.0.12", + "@smithy/middleware-serde": "^2.0.9", + "@smithy/middleware-stack": "^2.0.2", + "@smithy/node-config-provider": "^2.0.12", + "@smithy/node-http-handler": "^2.1.5", + "@smithy/protocol-http": "^3.0.5", + "@smithy/smithy-client": "^2.1.6", + "@smithy/types": "^2.3.3", + "@smithy/url-parser": "^2.0.9", + "@smithy/util-base64": "^2.0.0", + "@smithy/util-body-length-browser": "^2.0.0", + "@smithy/util-body-length-node": "^2.1.0", + "@smithy/util-defaults-mode-browser": "^2.0.10", + "@smithy/util-defaults-mode-node": "^2.0.12", + "@smithy/util-retry": "^2.0.2", + "@smithy/util-utf8": "^2.0.0", + "@smithy/util-waiter": "^2.0.9", + tslib: "^2.5.0", + uuid: "^8.3.2" + }, + devDependencies: { + "@smithy/service-client-documentation-generator": "^2.0.0", + "@tsconfig/node14": "1.0.3", + "@types/node": "^14.14.31", + "@types/uuid": "^8.3.0", + concurrently: "7.0.0", + "downlevel-dts": "0.10.1", + rimraf: "3.0.2", + typedoc: "0.23.23", + typescript: "~4.9.5" + }, + engines: { + node: ">=14.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-dynamodb", + repository: { + type: "git", + url: "https://github.com/aws/aws-sdk-js-v3.git", + directory: "clients/client-dynamodb" + } + }; + } +}); + +// node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js +var require_dist_cjs38 = __commonJS({ + "node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveStsAuthConfig = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var resolveStsAuthConfig = (input, { stsClientCtor }) => (0, middleware_signing_1.resolveAwsAuthConfig)({ + ...input, + stsClientCtor + }); + exports2.resolveStsAuthConfig = resolveStsAuthConfig; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js +var require_EndpointParameters2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveClientEndpointParameters = void 0; + var resolveClientEndpointParameters = (options) => { + return { + ...options, + useDualstackEndpoint: options.useDualstackEndpoint ?? false, + useFipsEndpoint: options.useFipsEndpoint ?? false, + useGlobalEndpoint: options.useGlobalEndpoint ?? false, + defaultSigningName: "sts" + }; + }; + exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; + } +}); + +// node_modules/@aws-sdk/client-sts/package.json +var require_package2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) { + module2.exports = { + name: "@aws-sdk/client-sts", + description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native", + version: "3.421.0", + scripts: { + build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", + "build:cjs": "tsc -p tsconfig.cjs.json", + "build:docs": "typedoc", + "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 sts", + test: "yarn test:unit", + "test:unit": "jest" + }, + main: "./dist-cjs/index.js", + types: "./dist-types/index.d.ts", + module: "./dist-es/index.js", + sideEffects: false, + dependencies: { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/credential-provider-node": "3.421.0", + "@aws-sdk/middleware-host-header": "3.418.0", + "@aws-sdk/middleware-logger": "3.418.0", + "@aws-sdk/middleware-recursion-detection": "3.418.0", + "@aws-sdk/middleware-sdk-sts": "3.418.0", + "@aws-sdk/middleware-signing": "3.418.0", + "@aws-sdk/middleware-user-agent": "3.418.0", + "@aws-sdk/region-config-resolver": "3.418.0", + "@aws-sdk/types": "3.418.0", + "@aws-sdk/util-endpoints": "3.418.0", + "@aws-sdk/util-user-agent-browser": "3.418.0", + "@aws-sdk/util-user-agent-node": "3.418.0", + "@smithy/config-resolver": "^2.0.10", + "@smithy/fetch-http-handler": "^2.1.5", + "@smithy/hash-node": "^2.0.9", + "@smithy/invalid-dependency": "^2.0.9", + "@smithy/middleware-content-length": "^2.0.11", + "@smithy/middleware-endpoint": "^2.0.9", + "@smithy/middleware-retry": "^2.0.12", + "@smithy/middleware-serde": "^2.0.9", + "@smithy/middleware-stack": "^2.0.2", + "@smithy/node-config-provider": "^2.0.12", + "@smithy/node-http-handler": "^2.1.5", + "@smithy/protocol-http": "^3.0.5", + "@smithy/smithy-client": "^2.1.6", + "@smithy/types": "^2.3.3", + "@smithy/url-parser": "^2.0.9", + "@smithy/util-base64": "^2.0.0", + "@smithy/util-body-length-browser": "^2.0.0", + "@smithy/util-body-length-node": "^2.1.0", + "@smithy/util-defaults-mode-browser": "^2.0.10", + "@smithy/util-defaults-mode-node": "^2.0.12", + "@smithy/util-retry": "^2.0.2", + "@smithy/util-utf8": "^2.0.0", + "fast-xml-parser": "4.2.5", + tslib: "^2.5.0" + }, + devDependencies: { + "@smithy/service-client-documentation-generator": "^2.0.0", + "@tsconfig/node14": "1.0.3", + "@types/node": "^14.14.31", + concurrently: "7.0.0", + "downlevel-dts": "0.10.1", + rimraf: "3.0.2", + typedoc: "0.23.23", + typescript: "~4.9.5" + }, + engines: { + node: ">=14.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-sts", + repository: { + type: "git", + url: "https://github.com/aws/aws-sdk-js-v3.git", + directory: "clients/client-sts" + } + }; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/models/STSServiceException.js +var require_STSServiceException = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/models/STSServiceException.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.STSServiceException = exports2.__ServiceException = void 0; + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { + return smithy_client_1.ServiceException; + } }); + var STSServiceException = class _STSServiceException extends smithy_client_1.ServiceException { + constructor(options) { + super(options); + Object.setPrototypeOf(this, _STSServiceException.prototype); + } + }; + exports2.STSServiceException = STSServiceException; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/models/models_0.js +var require_models_02 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/models/models_0.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetSessionTokenResponseFilterSensitiveLog = exports2.GetFederationTokenResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityRequestFilterSensitiveLog = exports2.AssumeRoleWithSAMLResponseFilterSensitiveLog = exports2.AssumeRoleWithSAMLRequestFilterSensitiveLog = exports2.AssumeRoleResponseFilterSensitiveLog = exports2.CredentialsFilterSensitiveLog = exports2.InvalidAuthorizationMessageException = exports2.IDPCommunicationErrorException = exports2.InvalidIdentityTokenException = exports2.IDPRejectedClaimException = exports2.RegionDisabledException = exports2.PackedPolicyTooLargeException = exports2.MalformedPolicyDocumentException = exports2.ExpiredTokenException = void 0; + var smithy_client_1 = require_dist_cjs36(); + var STSServiceException_1 = require_STSServiceException(); + var ExpiredTokenException = class _ExpiredTokenException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "ExpiredTokenException", + $fault: "client", + ...opts + }); + this.name = "ExpiredTokenException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ExpiredTokenException.prototype); + } + }; + exports2.ExpiredTokenException = ExpiredTokenException; + var MalformedPolicyDocumentException = class _MalformedPolicyDocumentException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts + }); + this.name = "MalformedPolicyDocumentException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _MalformedPolicyDocumentException.prototype); + } + }; + exports2.MalformedPolicyDocumentException = MalformedPolicyDocumentException; + var PackedPolicyTooLargeException = class _PackedPolicyTooLargeException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "PackedPolicyTooLargeException", + $fault: "client", + ...opts + }); + this.name = "PackedPolicyTooLargeException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _PackedPolicyTooLargeException.prototype); + } + }; + exports2.PackedPolicyTooLargeException = PackedPolicyTooLargeException; + var RegionDisabledException = class _RegionDisabledException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "RegionDisabledException", + $fault: "client", + ...opts + }); + this.name = "RegionDisabledException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _RegionDisabledException.prototype); + } + }; + exports2.RegionDisabledException = RegionDisabledException; + var IDPRejectedClaimException = class _IDPRejectedClaimException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "IDPRejectedClaimException", + $fault: "client", + ...opts + }); + this.name = "IDPRejectedClaimException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _IDPRejectedClaimException.prototype); + } + }; + exports2.IDPRejectedClaimException = IDPRejectedClaimException; + var InvalidIdentityTokenException = class _InvalidIdentityTokenException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "InvalidIdentityTokenException", + $fault: "client", + ...opts + }); + this.name = "InvalidIdentityTokenException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidIdentityTokenException.prototype); + } + }; + exports2.InvalidIdentityTokenException = InvalidIdentityTokenException; + var IDPCommunicationErrorException = class _IDPCommunicationErrorException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "IDPCommunicationErrorException", + $fault: "client", + ...opts + }); + this.name = "IDPCommunicationErrorException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _IDPCommunicationErrorException.prototype); + } + }; + exports2.IDPCommunicationErrorException = IDPCommunicationErrorException; + var InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException extends STSServiceException_1.STSServiceException { + constructor(opts) { + super({ + name: "InvalidAuthorizationMessageException", + $fault: "client", + ...opts + }); + this.name = "InvalidAuthorizationMessageException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidAuthorizationMessageException.prototype); + } + }; + exports2.InvalidAuthorizationMessageException = InvalidAuthorizationMessageException; + var CredentialsFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.SecretAccessKey && { SecretAccessKey: smithy_client_1.SENSITIVE_STRING } + }); + exports2.CredentialsFilterSensitiveLog = CredentialsFilterSensitiveLog; + var AssumeRoleResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } + }); + exports2.AssumeRoleResponseFilterSensitiveLog = AssumeRoleResponseFilterSensitiveLog; + var AssumeRoleWithSAMLRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.SAMLAssertion && { SAMLAssertion: smithy_client_1.SENSITIVE_STRING } + }); + exports2.AssumeRoleWithSAMLRequestFilterSensitiveLog = AssumeRoleWithSAMLRequestFilterSensitiveLog; + var AssumeRoleWithSAMLResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } + }); + exports2.AssumeRoleWithSAMLResponseFilterSensitiveLog = AssumeRoleWithSAMLResponseFilterSensitiveLog; + var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.WebIdentityToken && { WebIdentityToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.AssumeRoleWithWebIdentityRequestFilterSensitiveLog = AssumeRoleWithWebIdentityRequestFilterSensitiveLog; + var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } + }); + exports2.AssumeRoleWithWebIdentityResponseFilterSensitiveLog = AssumeRoleWithWebIdentityResponseFilterSensitiveLog; + var GetFederationTokenResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } + }); + exports2.GetFederationTokenResponseFilterSensitiveLog = GetFederationTokenResponseFilterSensitiveLog; + var GetSessionTokenResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } + }); + exports2.GetSessionTokenResponseFilterSensitiveLog = GetSessionTokenResponseFilterSensitiveLog; + } +}); + +// node_modules/fast-xml-parser/src/util.js +var require_util2 = __commonJS({ + "node_modules/fast-xml-parser/src/util.js"(exports2) { + "use strict"; + var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD"; + var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040"; + var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*"; + var regexName = new RegExp("^" + nameRegexp + "$"); + var getAllMatches = function(string, regex) { + const matches = []; + let match = regex.exec(string); + while (match) { + const allmatches = []; + allmatches.startIndex = regex.lastIndex - match[0].length; + const len = match.length; + for (let index = 0; index < len; index++) { + allmatches.push(match[index]); + } + matches.push(allmatches); + match = regex.exec(string); + } + return matches; + }; + var isName = function(string) { + const match = regexName.exec(string); + return !(match === null || typeof match === "undefined"); + }; + exports2.isExist = function(v) { + return typeof v !== "undefined"; + }; + exports2.isEmptyObject = function(obj) { + return Object.keys(obj).length === 0; + }; + exports2.merge = function(target, a, arrayMode) { + if (a) { + const keys = Object.keys(a); + const len = keys.length; + for (let i = 0; i < len; i++) { + if (arrayMode === "strict") { + target[keys[i]] = [a[keys[i]]]; + } else { + target[keys[i]] = a[keys[i]]; + } + } + } + }; + exports2.getValue = function(v) { + if (exports2.isExist(v)) { + return v; + } else { + return ""; + } + }; + exports2.isName = isName; + exports2.getAllMatches = getAllMatches; + exports2.nameRegexp = nameRegexp; + } +}); + +// node_modules/fast-xml-parser/src/validator.js +var require_validator = __commonJS({ + "node_modules/fast-xml-parser/src/validator.js"(exports2) { + "use strict"; + var util = require_util2(); + var defaultOptions = { + allowBooleanAttributes: false, + //A tag can have attributes without any value + unpairedTags: [] + }; + exports2.validate = function(xmlData, options) { + options = Object.assign({}, defaultOptions, options); + const tags = []; + let tagFound = false; + let reachedRoot = false; + if (xmlData[0] === "\uFEFF") { + xmlData = xmlData.substr(1); + } + for (let i = 0; i < xmlData.length; i++) { + if (xmlData[i] === "<" && xmlData[i + 1] === "?") { + i += 2; + i = readPI(xmlData, i); + if (i.err) + return i; + } else if (xmlData[i] === "<") { + let tagStartPos = i; + i++; + if (xmlData[i] === "!") { + i = readCommentAndCDATA(xmlData, i); + continue; + } else { + let closingTag = false; + if (xmlData[i] === "/") { + closingTag = true; + i++; + } + let tagName = ""; + for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== " " && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) { + tagName += xmlData[i]; + } + tagName = tagName.trim(); + if (tagName[tagName.length - 1] === "/") { + tagName = tagName.substring(0, tagName.length - 1); + i--; + } + if (!validateTagName(tagName)) { + let msg; + if (tagName.trim().length === 0) { + msg = "Invalid space after '<'."; + } else { + msg = "Tag '" + tagName + "' is an invalid name."; + } + return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i)); + } + const result = readAttributeStr(xmlData, i); + if (result === false) { + return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i)); + } + let attrStr = result.value; + i = result.index; + if (attrStr[attrStr.length - 1] === "/") { + const attrStrStart = i - attrStr.length; + attrStr = attrStr.substring(0, attrStr.length - 1); + const isValid = validateAttributeString(attrStr, options); + if (isValid === true) { + tagFound = true; + } else { + return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line)); + } + } else if (closingTag) { + if (!result.tagClosed) { + return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i)); + } else if (attrStr.trim().length > 0) { + return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos)); + } else { + const otg = tags.pop(); + if (tagName !== otg.tagName) { + let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos); + return getErrorObject( + "InvalidTag", + "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.", + getLineNumberForPosition(xmlData, tagStartPos) + ); + } + if (tags.length == 0) { + reachedRoot = true; + } + } + } else { + const isValid = validateAttributeString(attrStr, options); + if (isValid !== true) { + return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line)); + } + if (reachedRoot === true) { + return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i)); + } else if (options.unpairedTags.indexOf(tagName) !== -1) { + } else { + tags.push({ tagName, tagStartPos }); + } + tagFound = true; + } + for (i++; i < xmlData.length; i++) { + if (xmlData[i] === "<") { + if (xmlData[i + 1] === "!") { + i++; + i = readCommentAndCDATA(xmlData, i); + continue; + } else if (xmlData[i + 1] === "?") { + i = readPI(xmlData, ++i); + if (i.err) + return i; + } else { + break; + } + } else if (xmlData[i] === "&") { + const afterAmp = validateAmpersand(xmlData, i); + if (afterAmp == -1) + return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i)); + i = afterAmp; + } else { + if (reachedRoot === true && !isWhiteSpace(xmlData[i])) { + return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i)); + } + } + } + if (xmlData[i] === "<") { + i--; + } + } + } else { + if (isWhiteSpace(xmlData[i])) { + continue; + } + return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i)); + } + } + if (!tagFound) { + return getErrorObject("InvalidXml", "Start tag expected.", 1); + } else if (tags.length == 1) { + return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos)); + } else if (tags.length > 0) { + return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 }); + } + return true; + }; + function isWhiteSpace(char) { + return char === " " || char === " " || char === "\n" || char === "\r"; + } + function readPI(xmlData, i) { + const start = i; + for (; i < xmlData.length; i++) { + if (xmlData[i] == "?" || xmlData[i] == " ") { + const tagname = xmlData.substr(start, i - start); + if (i > 5 && tagname === "xml") { + return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i)); + } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") { + i++; + break; + } else { + continue; + } + } + } + return i; + } + function readCommentAndCDATA(xmlData, i) { + if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") { + for (i += 3; i < xmlData.length; i++) { + if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") { + i += 2; + break; + } + } + } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") { + let angleBracketsCount = 1; + for (i += 8; i < xmlData.length; i++) { + if (xmlData[i] === "<") { + angleBracketsCount++; + } else if (xmlData[i] === ">") { + angleBracketsCount--; + if (angleBracketsCount === 0) { + break; + } + } + } + } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") { + for (i += 8; i < xmlData.length; i++) { + if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") { + i += 2; + break; + } + } + } + return i; + } + var doubleQuote = '"'; + var singleQuote = "'"; + function readAttributeStr(xmlData, i) { + let attrStr = ""; + let startChar = ""; + let tagClosed = false; + for (; i < xmlData.length; i++) { + if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) { + if (startChar === "") { + startChar = xmlData[i]; + } else if (startChar !== xmlData[i]) { + } else { + startChar = ""; + } + } else if (xmlData[i] === ">") { + if (startChar === "") { + tagClosed = true; + break; + } + } + attrStr += xmlData[i]; + } + if (startChar !== "") { + return false; + } + return { + value: attrStr, + index: i, + tagClosed + }; + } + var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g"); + function validateAttributeString(attrStr, options) { + const matches = util.getAllMatches(attrStr, validAttrStrRegxp); + const attrNames = {}; + for (let i = 0; i < matches.length; i++) { + if (matches[i][1].length === 0) { + return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i])); + } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) { + return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i])); + } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) { + return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i])); + } + const attrName = matches[i][2]; + if (!validateAttrName(attrName)) { + return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i])); + } + if (!attrNames.hasOwnProperty(attrName)) { + attrNames[attrName] = 1; + } else { + return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i])); + } + } + return true; + } + function validateNumberAmpersand(xmlData, i) { + let re = /\d/; + if (xmlData[i] === "x") { + i++; + re = /[\da-fA-F]/; + } + for (; i < xmlData.length; i++) { + if (xmlData[i] === ";") + return i; + if (!xmlData[i].match(re)) + break; + } + return -1; + } + function validateAmpersand(xmlData, i) { + i++; + if (xmlData[i] === ";") + return -1; + if (xmlData[i] === "#") { + i++; + return validateNumberAmpersand(xmlData, i); + } + let count = 0; + for (; i < xmlData.length; i++, count++) { + if (xmlData[i].match(/\w/) && count < 20) + continue; + if (xmlData[i] === ";") + break; + return -1; + } + return i; + } + function getErrorObject(code, message, lineNumber) { + return { + err: { + code, + msg: message, + line: lineNumber.line || lineNumber, + col: lineNumber.col + } + }; + } + function validateAttrName(attrName) { + return util.isName(attrName); + } + function validateTagName(tagname) { + return util.isName(tagname); + } + function getLineNumberForPosition(xmlData, index) { + const lines = xmlData.substring(0, index).split(/\r?\n/); + return { + line: lines.length, + // column number is last line's length + 1, because column numbering starts at 1: + col: lines[lines.length - 1].length + 1 + }; + } + function getPositionFromMatch(match) { + return match.startIndex + match[1].length; + } + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +var require_OptionsBuilder = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) { + var defaultOptions = { + preserveOrder: false, + attributeNamePrefix: "@_", + attributesGroupName: false, + textNodeName: "#text", + ignoreAttributes: true, + removeNSPrefix: false, + // remove NS from tag name or attribute name if true + allowBooleanAttributes: false, + //a tag can have attributes without any value + //ignoreRootElement : false, + parseTagValue: true, + parseAttributeValue: false, + trimValues: true, + //Trim string values of tag and attributes + cdataPropName: false, + numberParseOptions: { + hex: true, + leadingZeros: true, + eNotation: true + }, + tagValueProcessor: function(tagName, val2) { + return val2; + }, + attributeValueProcessor: function(attrName, val2) { + return val2; + }, + stopNodes: [], + //nested tags will not be parsed even for errors + alwaysCreateTextNode: false, + isArray: () => false, + commentPropName: false, + unpairedTags: [], + processEntities: true, + htmlEntities: false, + ignoreDeclaration: false, + ignorePiTags: false, + transformTagName: false, + transformAttributeName: false, + updateTag: function(tagName, jPath, attrs) { + return tagName; + } + // skipEmptyListItem: false + }; + var buildOptions = function(options) { + return Object.assign({}, defaultOptions, options); + }; + exports2.buildOptions = buildOptions; + exports2.defaultOptions = defaultOptions; + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/xmlNode.js +var require_xmlNode = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) { + "use strict"; + var XmlNode = class { + constructor(tagname) { + this.tagname = tagname; + this.child = []; + this[":@"] = {}; + } + add(key, val2) { + if (key === "__proto__") + key = "#__proto__"; + this.child.push({ [key]: val2 }); + } + addChild(node) { + if (node.tagname === "__proto__") + node.tagname = "#__proto__"; + if (node[":@"] && Object.keys(node[":@"]).length > 0) { + this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] }); + } else { + this.child.push({ [node.tagname]: node.child }); + } + } + }; + module2.exports = XmlNode; + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +var require_DocTypeReader = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) { + var util = require_util2(); + function readDocType(xmlData, i) { + const entities = {}; + if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") { + i = i + 9; + let angleBracketsCount = 1; + let hasBody = false, comment = false; + let exp = ""; + for (; i < xmlData.length; i++) { + if (xmlData[i] === "<" && !comment) { + if (hasBody && isEntity(xmlData, i)) { + i += 7; + [entityName, val, i] = readEntityExp(xmlData, i + 1); + if (val.indexOf("&") === -1) + entities[validateEntityName(entityName)] = { + regx: RegExp(`&${entityName};`, "g"), + val + }; + } else if (hasBody && isElement(xmlData, i)) + i += 8; + else if (hasBody && isAttlist(xmlData, i)) + i += 8; + else if (hasBody && isNotation(xmlData, i)) + i += 9; + else if (isComment) + comment = true; + else + throw new Error("Invalid DOCTYPE"); + angleBracketsCount++; + exp = ""; + } else if (xmlData[i] === ">") { + if (comment) { + if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") { + comment = false; + angleBracketsCount--; + } + } else { + angleBracketsCount--; + } + if (angleBracketsCount === 0) { + break; + } + } else if (xmlData[i] === "[") { + hasBody = true; + } else { + exp += xmlData[i]; + } + } + if (angleBracketsCount !== 0) { + throw new Error(`Unclosed DOCTYPE`); + } + } else { + throw new Error(`Invalid Tag instead of DOCTYPE`); + } + return { entities, i }; + } + function readEntityExp(xmlData, i) { + let entityName2 = ""; + for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) { + entityName2 += xmlData[i]; + } + entityName2 = entityName2.trim(); + if (entityName2.indexOf(" ") !== -1) + throw new Error("External entites are not supported"); + const startChar = xmlData[i++]; + let val2 = ""; + for (; i < xmlData.length && xmlData[i] !== startChar; i++) { + val2 += xmlData[i]; + } + return [entityName2, val2, i]; + } + function isComment(xmlData, i) { + if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") + return true; + return false; + } + function isEntity(xmlData, i) { + if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") + return true; + return false; + } + function isElement(xmlData, i) { + if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") + return true; + return false; + } + function isAttlist(xmlData, i) { + if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") + return true; + return false; + } + function isNotation(xmlData, i) { + if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") + return true; + return false; + } + function validateEntityName(name) { + if (util.isName(name)) + return name; + else + throw new Error(`Invalid entity name ${name}`); + } + module2.exports = readDocType; + } +}); + +// node_modules/strnum/strnum.js +var require_strnum = __commonJS({ + "node_modules/strnum/strnum.js"(exports2, module2) { + var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/; + var numRegex = /^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/; + if (!Number.parseInt && window.parseInt) { + Number.parseInt = window.parseInt; + } + if (!Number.parseFloat && window.parseFloat) { + Number.parseFloat = window.parseFloat; + } + var consider = { + hex: true, + leadingZeros: true, + decimalPoint: ".", + eNotation: true + //skipLike: /regex/ + }; + function toNumber(str, options = {}) { + options = Object.assign({}, consider, options); + if (!str || typeof str !== "string") + return str; + let trimmedStr = str.trim(); + if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) + return str; + else if (options.hex && hexRegex.test(trimmedStr)) { + return Number.parseInt(trimmedStr, 16); + } else { + const match = numRegex.exec(trimmedStr); + if (match) { + const sign = match[1]; + const leadingZeros = match[2]; + let numTrimmedByZeros = trimZeros(match[3]); + const eNotation = match[4] || match[6]; + if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") + return str; + else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") + return str; + else { + const num = Number(trimmedStr); + const numStr = "" + num; + if (numStr.search(/[eE]/) !== -1) { + if (options.eNotation) + return num; + else + return str; + } else if (eNotation) { + if (options.eNotation) + return num; + else + return str; + } else if (trimmedStr.indexOf(".") !== -1) { + if (numStr === "0" && numTrimmedByZeros === "") + return num; + else if (numStr === numTrimmedByZeros) + return num; + else if (sign && numStr === "-" + numTrimmedByZeros) + return num; + else + return str; + } + if (leadingZeros) { + if (numTrimmedByZeros === numStr) + return num; + else if (sign + numTrimmedByZeros === numStr) + return num; + else + return str; + } + if (trimmedStr === numStr) + return num; + else if (trimmedStr === sign + numStr) + return num; + return str; + } + } else { + return str; + } + } + } + function trimZeros(numStr) { + if (numStr && numStr.indexOf(".") !== -1) { + numStr = numStr.replace(/0+$/, ""); + if (numStr === ".") + numStr = "0"; + else if (numStr[0] === ".") + numStr = "0" + numStr; + else if (numStr[numStr.length - 1] === ".") + numStr = numStr.substr(0, numStr.length - 1); + return numStr; + } + return numStr; + } + module2.exports = toNumber; + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +var require_OrderedObjParser = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) { + "use strict"; + var util = require_util2(); + var xmlNode = require_xmlNode(); + var readDocType = require_DocTypeReader(); + var toNumber = require_strnum(); + var regx = "<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g, util.nameRegexp); + var OrderedObjParser = class { + constructor(options) { + this.options = options; + this.currentNode = null; + this.tagsNodeStack = []; + this.docTypeEntities = {}; + this.lastEntities = { + "apos": { regex: /&(apos|#39|#x27);/g, val: "'" }, + "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" }, + "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" }, + "quot": { regex: /&(quot|#34|#x22);/g, val: '"' } + }; + this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" }; + this.htmlEntities = { + "space": { regex: /&(nbsp|#160);/g, val: " " }, + // "lt" : { regex: /&(lt|#60);/g, val: "<" }, + // "gt" : { regex: /&(gt|#62);/g, val: ">" }, + // "amp" : { regex: /&(amp|#38);/g, val: "&" }, + // "quot" : { regex: /&(quot|#34);/g, val: "\"" }, + // "apos" : { regex: /&(apos|#39);/g, val: "'" }, + "cent": { regex: /&(cent|#162);/g, val: "\xA2" }, + "pound": { regex: /&(pound|#163);/g, val: "\xA3" }, + "yen": { regex: /&(yen|#165);/g, val: "\xA5" }, + "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" }, + "copyright": { regex: /&(copy|#169);/g, val: "\xA9" }, + "reg": { regex: /&(reg|#174);/g, val: "\xAE" }, + "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" } + }; + this.addExternalEntities = addExternalEntities; + this.parseXml = parseXml; + this.parseTextData = parseTextData; + this.resolveNameSpace = resolveNameSpace; + this.buildAttributesMap = buildAttributesMap; + this.isItStopNode = isItStopNode; + this.replaceEntitiesValue = replaceEntitiesValue; + this.readStopNodeData = readStopNodeData; + this.saveTextToParentTag = saveTextToParentTag; + this.addChild = addChild; + } + }; + function addExternalEntities(externalEntities) { + const entKeys = Object.keys(externalEntities); + for (let i = 0; i < entKeys.length; i++) { + const ent = entKeys[i]; + this.lastEntities[ent] = { + regex: new RegExp("&" + ent + ";", "g"), + val: externalEntities[ent] + }; + } + } + function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) { + if (val2 !== void 0) { + if (this.options.trimValues && !dontTrim) { + val2 = val2.trim(); + } + if (val2.length > 0) { + if (!escapeEntities) + val2 = this.replaceEntitiesValue(val2); + const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode); + if (newval === null || newval === void 0) { + return val2; + } else if (typeof newval !== typeof val2 || newval !== val2) { + return newval; + } else if (this.options.trimValues) { + return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions); + } else { + const trimmedVal = val2.trim(); + if (trimmedVal === val2) { + return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions); + } else { + return val2; + } + } + } + } + } + function resolveNameSpace(tagname) { + if (this.options.removeNSPrefix) { + const tags = tagname.split(":"); + const prefix = tagname.charAt(0) === "/" ? "/" : ""; + if (tags[0] === "xmlns") { + return ""; + } + if (tags.length === 2) { + tagname = prefix + tags[1]; + } + } + return tagname; + } + var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm"); + function buildAttributesMap(attrStr, jPath, tagName) { + if (!this.options.ignoreAttributes && typeof attrStr === "string") { + const matches = util.getAllMatches(attrStr, attrsRegx); + const len = matches.length; + const attrs = {}; + for (let i = 0; i < len; i++) { + const attrName = this.resolveNameSpace(matches[i][1]); + let oldVal = matches[i][4]; + let aName = this.options.attributeNamePrefix + attrName; + if (attrName.length) { + if (this.options.transformAttributeName) { + aName = this.options.transformAttributeName(aName); + } + if (aName === "__proto__") + aName = "#__proto__"; + if (oldVal !== void 0) { + if (this.options.trimValues) { + oldVal = oldVal.trim(); + } + oldVal = this.replaceEntitiesValue(oldVal); + const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath); + if (newVal === null || newVal === void 0) { + attrs[aName] = oldVal; + } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) { + attrs[aName] = newVal; + } else { + attrs[aName] = parseValue( + oldVal, + this.options.parseAttributeValue, + this.options.numberParseOptions + ); + } + } else if (this.options.allowBooleanAttributes) { + attrs[aName] = true; + } + } + } + if (!Object.keys(attrs).length) { + return; + } + if (this.options.attributesGroupName) { + const attrCollection = {}; + attrCollection[this.options.attributesGroupName] = attrs; + return attrCollection; + } + return attrs; + } + } + var parseXml = function(xmlData) { + xmlData = xmlData.replace(/\r\n?/g, "\n"); + const xmlObj = new xmlNode("!xml"); + let currentNode = xmlObj; + let textData = ""; + let jPath = ""; + for (let i = 0; i < xmlData.length; i++) { + const ch = xmlData[i]; + if (ch === "<") { + if (xmlData[i + 1] === "/") { + const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed."); + let tagName = xmlData.substring(i + 2, closeIndex).trim(); + if (this.options.removeNSPrefix) { + const colonIndex = tagName.indexOf(":"); + if (colonIndex !== -1) { + tagName = tagName.substr(colonIndex + 1); + } + } + if (this.options.transformTagName) { + tagName = this.options.transformTagName(tagName); + } + if (currentNode) { + textData = this.saveTextToParentTag(textData, currentNode, jPath); + } + const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1); + if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) { + throw new Error(`Unpaired tag can not be used as closing tag: `); + } + let propIndex = 0; + if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) { + propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1); + this.tagsNodeStack.pop(); + } else { + propIndex = jPath.lastIndexOf("."); + } + jPath = jPath.substring(0, propIndex); + currentNode = this.tagsNodeStack.pop(); + textData = ""; + i = closeIndex; + } else if (xmlData[i + 1] === "?") { + let tagData = readTagExp(xmlData, i, false, "?>"); + if (!tagData) + throw new Error("Pi Tag is not closed."); + textData = this.saveTextToParentTag(textData, currentNode, jPath); + if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) { + } else { + const childNode = new xmlNode(tagData.tagName); + childNode.add(this.options.textNodeName, ""); + if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) { + childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName); + } + this.addChild(currentNode, childNode, jPath); + } + i = tagData.closeIndex + 1; + } else if (xmlData.substr(i + 1, 3) === "!--") { + const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed."); + if (this.options.commentPropName) { + const comment = xmlData.substring(i + 4, endIndex - 2); + textData = this.saveTextToParentTag(textData, currentNode, jPath); + currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]); + } + i = endIndex; + } else if (xmlData.substr(i + 1, 2) === "!D") { + const result = readDocType(xmlData, i); + this.docTypeEntities = result.entities; + i = result.i; + } else if (xmlData.substr(i + 1, 2) === "![") { + const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2; + const tagExp = xmlData.substring(i + 9, closeIndex); + textData = this.saveTextToParentTag(textData, currentNode, jPath); + if (this.options.cdataPropName) { + currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]); + } else { + let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true); + if (val2 == void 0) + val2 = ""; + currentNode.add(this.options.textNodeName, val2); + } + i = closeIndex + 2; + } else { + let result = readTagExp(xmlData, i, this.options.removeNSPrefix); + let tagName = result.tagName; + let tagExp = result.tagExp; + let attrExpPresent = result.attrExpPresent; + let closeIndex = result.closeIndex; + if (this.options.transformTagName) { + tagName = this.options.transformTagName(tagName); + } + if (currentNode && textData) { + if (currentNode.tagname !== "!xml") { + textData = this.saveTextToParentTag(textData, currentNode, jPath, false); + } + } + const lastTag = currentNode; + if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) { + currentNode = this.tagsNodeStack.pop(); + jPath = jPath.substring(0, jPath.lastIndexOf(".")); + } + if (tagName !== xmlObj.tagname) { + jPath += jPath ? "." + tagName : tagName; + } + if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) { + let tagContent = ""; + if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) { + i = result.closeIndex; + } else if (this.options.unpairedTags.indexOf(tagName) !== -1) { + i = result.closeIndex; + } else { + const result2 = this.readStopNodeData(xmlData, tagName, closeIndex + 1); + if (!result2) + throw new Error(`Unexpected end of ${tagName}`); + i = result2.i; + tagContent = result2.tagContent; + } + const childNode = new xmlNode(tagName); + if (tagName !== tagExp && attrExpPresent) { + childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); + } + if (tagContent) { + tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true); + } + jPath = jPath.substr(0, jPath.lastIndexOf(".")); + childNode.add(this.options.textNodeName, tagContent); + this.addChild(currentNode, childNode, jPath); + } else { + if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) { + if (tagName[tagName.length - 1] === "/") { + tagName = tagName.substr(0, tagName.length - 1); + tagExp = tagName; + } else { + tagExp = tagExp.substr(0, tagExp.length - 1); + } + if (this.options.transformTagName) { + tagName = this.options.transformTagName(tagName); + } + const childNode = new xmlNode(tagName); + if (tagName !== tagExp && attrExpPresent) { + childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); + } + this.addChild(currentNode, childNode, jPath); + jPath = jPath.substr(0, jPath.lastIndexOf(".")); + } else { + const childNode = new xmlNode(tagName); + this.tagsNodeStack.push(currentNode); + if (tagName !== tagExp && attrExpPresent) { + childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); + } + this.addChild(currentNode, childNode, jPath); + currentNode = childNode; + } + textData = ""; + i = closeIndex; + } + } + } else { + textData += xmlData[i]; + } + } + return xmlObj.child; + }; + function addChild(currentNode, childNode, jPath) { + const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]); + if (result === false) { + } else if (typeof result === "string") { + childNode.tagname = result; + currentNode.addChild(childNode); + } else { + currentNode.addChild(childNode); + } + } + var replaceEntitiesValue = function(val2) { + if (this.options.processEntities) { + for (let entityName2 in this.docTypeEntities) { + const entity = this.docTypeEntities[entityName2]; + val2 = val2.replace(entity.regx, entity.val); + } + for (let entityName2 in this.lastEntities) { + const entity = this.lastEntities[entityName2]; + val2 = val2.replace(entity.regex, entity.val); + } + if (this.options.htmlEntities) { + for (let entityName2 in this.htmlEntities) { + const entity = this.htmlEntities[entityName2]; + val2 = val2.replace(entity.regex, entity.val); + } + } + val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val); + } + return val2; + }; + function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) { + if (textData) { + if (isLeafNode === void 0) + isLeafNode = Object.keys(currentNode.child).length === 0; + textData = this.parseTextData( + textData, + currentNode.tagname, + jPath, + false, + currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false, + isLeafNode + ); + if (textData !== void 0 && textData !== "") + currentNode.add(this.options.textNodeName, textData); + textData = ""; + } + return textData; + } + function isItStopNode(stopNodes, jPath, currentTagName) { + const allNodesExp = "*." + currentTagName; + for (const stopNodePath in stopNodes) { + const stopNodeExp = stopNodes[stopNodePath]; + if (allNodesExp === stopNodeExp || jPath === stopNodeExp) + return true; + } + return false; + } + function tagExpWithClosingIndex(xmlData, i, closingChar = ">") { + let attrBoundary; + let tagExp = ""; + for (let index = i; index < xmlData.length; index++) { + let ch = xmlData[index]; + if (attrBoundary) { + if (ch === attrBoundary) + attrBoundary = ""; + } else if (ch === '"' || ch === "'") { + attrBoundary = ch; + } else if (ch === closingChar[0]) { + if (closingChar[1]) { + if (xmlData[index + 1] === closingChar[1]) { + return { + data: tagExp, + index + }; + } + } else { + return { + data: tagExp, + index + }; + } + } else if (ch === " ") { + ch = " "; + } + tagExp += ch; + } + } + function findClosingIndex(xmlData, str, i, errMsg) { + const closingIndex = xmlData.indexOf(str, i); + if (closingIndex === -1) { + throw new Error(errMsg); + } else { + return closingIndex + str.length - 1; + } + } + function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") { + const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar); + if (!result) + return; + let tagExp = result.data; + const closeIndex = result.index; + const separatorIndex = tagExp.search(/\s/); + let tagName = tagExp; + let attrExpPresent = true; + if (separatorIndex !== -1) { + tagName = tagExp.substr(0, separatorIndex).replace(/\s\s*$/, ""); + tagExp = tagExp.substr(separatorIndex + 1); + } + if (removeNSPrefix) { + const colonIndex = tagName.indexOf(":"); + if (colonIndex !== -1) { + tagName = tagName.substr(colonIndex + 1); + attrExpPresent = tagName !== result.data.substr(colonIndex + 1); + } + } + return { + tagName, + tagExp, + closeIndex, + attrExpPresent + }; + } + function readStopNodeData(xmlData, tagName, i) { + const startIndex = i; + let openTagCount = 1; + for (; i < xmlData.length; i++) { + if (xmlData[i] === "<") { + if (xmlData[i + 1] === "/") { + const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`); + let closeTagName = xmlData.substring(i + 2, closeIndex).trim(); + if (closeTagName === tagName) { + openTagCount--; + if (openTagCount === 0) { + return { + tagContent: xmlData.substring(startIndex, i), + i: closeIndex + }; + } + } + i = closeIndex; + } else if (xmlData[i + 1] === "?") { + const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed."); + i = closeIndex; + } else if (xmlData.substr(i + 1, 3) === "!--") { + const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed."); + i = closeIndex; + } else if (xmlData.substr(i + 1, 2) === "![") { + const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2; + i = closeIndex; + } else { + const tagData = readTagExp(xmlData, i, ">"); + if (tagData) { + const openTagName = tagData && tagData.tagName; + if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") { + openTagCount++; + } + i = tagData.closeIndex; + } + } + } + } + } + function parseValue(val2, shouldParse, options) { + if (shouldParse && typeof val2 === "string") { + const newval = val2.trim(); + if (newval === "true") + return true; + else if (newval === "false") + return false; + else + return toNumber(val2, options); + } else { + if (util.isExist(val2)) { + return val2; + } else { + return ""; + } + } + } + module2.exports = OrderedObjParser; + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/node2json.js +var require_node2json = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) { + "use strict"; + function prettify(node, options) { + return compress(node, options); + } + function compress(arr, options, jPath) { + let text; + const compressedObj = {}; + for (let i = 0; i < arr.length; i++) { + const tagObj = arr[i]; + const property = propName(tagObj); + let newJpath = ""; + if (jPath === void 0) + newJpath = property; + else + newJpath = jPath + "." + property; + if (property === options.textNodeName) { + if (text === void 0) + text = tagObj[property]; + else + text += "" + tagObj[property]; + } else if (property === void 0) { + continue; + } else if (tagObj[property]) { + let val2 = compress(tagObj[property], options, newJpath); + const isLeaf = isLeafTag(val2, options); + if (tagObj[":@"]) { + assignAttributes(val2, tagObj[":@"], newJpath, options); + } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) { + val2 = val2[options.textNodeName]; + } else if (Object.keys(val2).length === 0) { + if (options.alwaysCreateTextNode) + val2[options.textNodeName] = ""; + else + val2 = ""; + } + if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) { + if (!Array.isArray(compressedObj[property])) { + compressedObj[property] = [compressedObj[property]]; + } + compressedObj[property].push(val2); + } else { + if (options.isArray(property, newJpath, isLeaf)) { + compressedObj[property] = [val2]; + } else { + compressedObj[property] = val2; + } + } + } + } + if (typeof text === "string") { + if (text.length > 0) + compressedObj[options.textNodeName] = text; + } else if (text !== void 0) + compressedObj[options.textNodeName] = text; + return compressedObj; + } + function propName(obj) { + const keys = Object.keys(obj); + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + if (key !== ":@") + return key; + } + } + function assignAttributes(obj, attrMap, jpath, options) { + if (attrMap) { + const keys = Object.keys(attrMap); + const len = keys.length; + for (let i = 0; i < len; i++) { + const atrrName = keys[i]; + if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) { + obj[atrrName] = [attrMap[atrrName]]; + } else { + obj[atrrName] = attrMap[atrrName]; + } + } + } + } + function isLeafTag(obj, options) { + const { textNodeName } = options; + const propCount = Object.keys(obj).length; + if (propCount === 0) { + return true; + } + if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) { + return true; + } + return false; + } + exports2.prettify = prettify; + } +}); + +// node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +var require_XMLParser = __commonJS({ + "node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) { + var { buildOptions } = require_OptionsBuilder(); + var OrderedObjParser = require_OrderedObjParser(); + var { prettify } = require_node2json(); + var validator = require_validator(); + var XMLParser = class { + constructor(options) { + this.externalEntities = {}; + this.options = buildOptions(options); + } + /** + * Parse XML dats to JS object + * @param {string|Buffer} xmlData + * @param {boolean|Object} validationOption + */ + parse(xmlData, validationOption) { + if (typeof xmlData === "string") { + } else if (xmlData.toString) { + xmlData = xmlData.toString(); + } else { + throw new Error("XML data is accepted in String or Bytes[] form."); + } + if (validationOption) { + if (validationOption === true) + validationOption = {}; + const result = validator.validate(xmlData, validationOption); + if (result !== true) { + throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`); + } + } + const orderedObjParser = new OrderedObjParser(this.options); + orderedObjParser.addExternalEntities(this.externalEntities); + const orderedResult = orderedObjParser.parseXml(xmlData); + if (this.options.preserveOrder || orderedResult === void 0) + return orderedResult; + else + return prettify(orderedResult, this.options); + } + /** + * Add Entity which is not by default supported by this library + * @param {string} key + * @param {string} value + */ + addEntity(key, value) { + if (value.indexOf("&") !== -1) { + throw new Error("Entity value can't have '&'"); + } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) { + throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for ' '"); + } else if (value === "&") { + throw new Error("An entity with value '&' is not permitted"); + } else { + this.externalEntities[key] = value; + } + } + }; + module2.exports = XMLParser; + } +}); + +// node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js +var require_orderedJs2Xml = __commonJS({ + "node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) { + var EOL = "\n"; + function toXml(jArray, options) { + let indentation = ""; + if (options.format && options.indentBy.length > 0) { + indentation = EOL; + } + return arrToStr(jArray, options, "", indentation); + } + function arrToStr(arr, options, jPath, indentation) { + let xmlStr = ""; + let isPreviousElementTag = false; + for (let i = 0; i < arr.length; i++) { + const tagObj = arr[i]; + const tagName = propName(tagObj); + let newJPath = ""; + if (jPath.length === 0) + newJPath = tagName; + else + newJPath = `${jPath}.${tagName}`; + if (tagName === options.textNodeName) { + let tagText = tagObj[tagName]; + if (!isStopNode(newJPath, options)) { + tagText = options.tagValueProcessor(tagName, tagText); + tagText = replaceEntitiesValue(tagText, options); + } + if (isPreviousElementTag) { + xmlStr += indentation; + } + xmlStr += tagText; + isPreviousElementTag = false; + continue; + } else if (tagName === options.cdataPropName) { + if (isPreviousElementTag) { + xmlStr += indentation; + } + xmlStr += ``; + isPreviousElementTag = false; + continue; + } else if (tagName === options.commentPropName) { + xmlStr += indentation + ``; + isPreviousElementTag = true; + continue; + } else if (tagName[0] === "?") { + const attStr2 = attr_to_str(tagObj[":@"], options); + const tempInd = tagName === "?xml" ? "" : indentation; + let piTextNodeName = tagObj[tagName][0][options.textNodeName]; + piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : ""; + xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`; + isPreviousElementTag = true; + continue; + } + let newIdentation = indentation; + if (newIdentation !== "") { + newIdentation += options.indentBy; + } + const attStr = attr_to_str(tagObj[":@"], options); + const tagStart = indentation + `<${tagName}${attStr}`; + const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation); + if (options.unpairedTags.indexOf(tagName) !== -1) { + if (options.suppressUnpairedNode) + xmlStr += tagStart + ">"; + else + xmlStr += tagStart + "/>"; + } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) { + xmlStr += tagStart + "/>"; + } else if (tagValue && tagValue.endsWith(">")) { + xmlStr += tagStart + `>${tagValue}${indentation}`; + } else { + xmlStr += tagStart + ">"; + if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`; + } + isPreviousElementTag = true; + } + return xmlStr; + } + function propName(obj) { + const keys = Object.keys(obj); + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + if (key !== ":@") + return key; + } + } + function attr_to_str(attrMap, options) { + let attrStr = ""; + if (attrMap && !options.ignoreAttributes) { + for (let attr in attrMap) { + let attrVal = options.attributeValueProcessor(attr, attrMap[attr]); + attrVal = replaceEntitiesValue(attrVal, options); + if (attrVal === true && options.suppressBooleanAttributes) { + attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`; + } else { + attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`; + } + } + } + return attrStr; + } + function isStopNode(jPath, options) { + jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1); + let tagName = jPath.substr(jPath.lastIndexOf(".") + 1); + for (let index in options.stopNodes) { + if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) + return true; + } + return false; + } + function replaceEntitiesValue(textValue, options) { + if (textValue && textValue.length > 0 && options.processEntities) { + for (let i = 0; i < options.entities.length; i++) { + const entity = options.entities[i]; + textValue = textValue.replace(entity.regex, entity.val); + } + } + return textValue; + } + module2.exports = toXml; + } +}); + +// node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js +var require_json2xml = __commonJS({ + "node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) { + "use strict"; + var buildFromOrderedJs = require_orderedJs2Xml(); + var defaultOptions = { + attributeNamePrefix: "@_", + attributesGroupName: false, + textNodeName: "#text", + ignoreAttributes: true, + cdataPropName: false, + format: false, + indentBy: " ", + suppressEmptyNode: false, + suppressUnpairedNode: true, + suppressBooleanAttributes: true, + tagValueProcessor: function(key, a) { + return a; + }, + attributeValueProcessor: function(attrName, a) { + return a; + }, + preserveOrder: false, + commentPropName: false, + unpairedTags: [], + entities: [ + { regex: new RegExp("&", "g"), val: "&" }, + //it must be on top + { regex: new RegExp(">", "g"), val: ">" }, + { regex: new RegExp("<", "g"), val: "<" }, + { regex: new RegExp("'", "g"), val: "'" }, + { regex: new RegExp('"', "g"), val: """ } + ], + processEntities: true, + stopNodes: [], + // transformTagName: false, + // transformAttributeName: false, + oneListGroup: false + }; + function Builder(options) { + this.options = Object.assign({}, defaultOptions, options); + if (this.options.ignoreAttributes || this.options.attributesGroupName) { + this.isAttribute = function() { + return false; + }; + } else { + this.attrPrefixLen = this.options.attributeNamePrefix.length; + this.isAttribute = isAttribute; + } + this.processTextOrObjNode = processTextOrObjNode; + if (this.options.format) { + this.indentate = indentate; + this.tagEndChar = ">\n"; + this.newLine = "\n"; + } else { + this.indentate = function() { + return ""; + }; + this.tagEndChar = ">"; + this.newLine = ""; + } + } + Builder.prototype.build = function(jObj) { + if (this.options.preserveOrder) { + return buildFromOrderedJs(jObj, this.options); + } else { + if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) { + jObj = { + [this.options.arrayNodeName]: jObj + }; + } + return this.j2x(jObj, 0).val; + } + }; + Builder.prototype.j2x = function(jObj, level) { + let attrStr = ""; + let val2 = ""; + for (let key in jObj) { + if (typeof jObj[key] === "undefined") { + } else if (jObj[key] === null) { + if (key[0] === "?") + val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar; + else + val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar; + } else if (jObj[key] instanceof Date) { + val2 += this.buildTextValNode(jObj[key], key, "", level); + } else if (typeof jObj[key] !== "object") { + const attr = this.isAttribute(key); + if (attr) { + attrStr += this.buildAttrPairStr(attr, "" + jObj[key]); + } else { + if (key === this.options.textNodeName) { + let newval = this.options.tagValueProcessor(key, "" + jObj[key]); + val2 += this.replaceEntitiesValue(newval); + } else { + val2 += this.buildTextValNode(jObj[key], key, "", level); + } + } + } else if (Array.isArray(jObj[key])) { + const arrLen = jObj[key].length; + let listTagVal = ""; + for (let j = 0; j < arrLen; j++) { + const item = jObj[key][j]; + if (typeof item === "undefined") { + } else if (item === null) { + if (key[0] === "?") + val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar; + else + val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar; + } else if (typeof item === "object") { + if (this.options.oneListGroup) { + listTagVal += this.j2x(item, level + 1).val; + } else { + listTagVal += this.processTextOrObjNode(item, key, level); + } + } else { + listTagVal += this.buildTextValNode(item, key, "", level); + } + } + if (this.options.oneListGroup) { + listTagVal = this.buildObjectNode(listTagVal, key, "", level); + } + val2 += listTagVal; + } else { + if (this.options.attributesGroupName && key === this.options.attributesGroupName) { + const Ks = Object.keys(jObj[key]); + const L = Ks.length; + for (let j = 0; j < L; j++) { + attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]); + } + } else { + val2 += this.processTextOrObjNode(jObj[key], key, level); + } + } + } + return { attrStr, val: val2 }; + }; + Builder.prototype.buildAttrPairStr = function(attrName, val2) { + val2 = this.options.attributeValueProcessor(attrName, "" + val2); + val2 = this.replaceEntitiesValue(val2); + if (this.options.suppressBooleanAttributes && val2 === "true") { + return " " + attrName; + } else + return " " + attrName + '="' + val2 + '"'; + }; + function processTextOrObjNode(object, key, level) { + const result = this.j2x(object, level + 1); + if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) { + return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level); + } else { + return this.buildObjectNode(result.val, key, result.attrStr, level); + } + } + Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) { + if (val2 === "") { + if (key[0] === "?") + return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar; + else { + return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar; + } + } else { + let tagEndExp = "" + val2 + tagEndExp; + } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) { + return this.indentate(level) + `` + this.newLine; + } else { + return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp; + } + } + }; + Builder.prototype.closeTag = function(key) { + let closeTag = ""; + if (this.options.unpairedTags.indexOf(key) !== -1) { + if (!this.options.suppressUnpairedNode) + closeTag = "/"; + } else if (this.options.suppressEmptyNode) { + closeTag = "/"; + } else { + closeTag = `>` + this.newLine; + } else if (this.options.commentPropName !== false && key === this.options.commentPropName) { + return this.indentate(level) + `` + this.newLine; + } else if (key[0] === "?") { + return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar; + } else { + let textValue = this.options.tagValueProcessor(key, val2); + textValue = this.replaceEntitiesValue(textValue); + if (textValue === "") { + return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar; + } else { + return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) { + for (let i = 0; i < this.options.entities.length; i++) { + const entity = this.options.entities[i]; + textValue = textValue.replace(entity.regex, entity.val); + } + } + return textValue; + }; + function indentate(level) { + return this.options.indentBy.repeat(level); + } + function isAttribute(name) { + if (name.startsWith(this.options.attributeNamePrefix)) { + return name.substr(this.attrPrefixLen); + } else { + return false; + } + } + module2.exports = Builder; + } +}); + +// node_modules/fast-xml-parser/src/fxp.js +var require_fxp = __commonJS({ + "node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) { + "use strict"; + var validator = require_validator(); + var XMLParser = require_XMLParser(); + var XMLBuilder = require_json2xml(); + module2.exports = { + XMLParser, + XMLValidator: validator, + XMLBuilder + }; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/protocols/Aws_query.js +var require_Aws_query = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/protocols/Aws_query.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.de_GetSessionTokenCommand = exports2.de_GetFederationTokenCommand = exports2.de_GetCallerIdentityCommand = exports2.de_GetAccessKeyInfoCommand = exports2.de_DecodeAuthorizationMessageCommand = exports2.de_AssumeRoleWithWebIdentityCommand = exports2.de_AssumeRoleWithSAMLCommand = exports2.de_AssumeRoleCommand = exports2.se_GetSessionTokenCommand = exports2.se_GetFederationTokenCommand = exports2.se_GetCallerIdentityCommand = exports2.se_GetAccessKeyInfoCommand = exports2.se_DecodeAuthorizationMessageCommand = exports2.se_AssumeRoleWithWebIdentityCommand = exports2.se_AssumeRoleWithSAMLCommand = exports2.se_AssumeRoleCommand = void 0; + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var fast_xml_parser_1 = require_fxp(); + var models_0_1 = require_models_02(); + var STSServiceException_1 = require_STSServiceException(); + var se_AssumeRoleCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_AssumeRoleRequest(input, context), + Action: "AssumeRole", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_AssumeRoleCommand = se_AssumeRoleCommand; + var se_AssumeRoleWithSAMLCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_AssumeRoleWithSAMLRequest(input, context), + Action: "AssumeRoleWithSAML", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_AssumeRoleWithSAMLCommand = se_AssumeRoleWithSAMLCommand; + var se_AssumeRoleWithWebIdentityCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_AssumeRoleWithWebIdentityRequest(input, context), + Action: "AssumeRoleWithWebIdentity", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_AssumeRoleWithWebIdentityCommand = se_AssumeRoleWithWebIdentityCommand; + var se_DecodeAuthorizationMessageCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_DecodeAuthorizationMessageRequest(input, context), + Action: "DecodeAuthorizationMessage", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_DecodeAuthorizationMessageCommand = se_DecodeAuthorizationMessageCommand; + var se_GetAccessKeyInfoCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_GetAccessKeyInfoRequest(input, context), + Action: "GetAccessKeyInfo", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_GetAccessKeyInfoCommand = se_GetAccessKeyInfoCommand; + var se_GetCallerIdentityCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_GetCallerIdentityRequest(input, context), + Action: "GetCallerIdentity", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_GetCallerIdentityCommand = se_GetCallerIdentityCommand; + var se_GetFederationTokenCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_GetFederationTokenRequest(input, context), + Action: "GetFederationToken", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_GetFederationTokenCommand = se_GetFederationTokenCommand; + var se_GetSessionTokenCommand = async (input, context) => { + const headers = SHARED_HEADERS; + let body; + body = buildFormUrlencodedString({ + ...se_GetSessionTokenRequest(input, context), + Action: "GetSessionToken", + Version: "2011-06-15" + }); + return buildHttpRpcRequest(context, headers, "/", void 0, body); + }; + exports2.se_GetSessionTokenCommand = se_GetSessionTokenCommand; + var de_AssumeRoleCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_AssumeRoleCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_AssumeRoleResponse(data.AssumeRoleResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_AssumeRoleCommand = de_AssumeRoleCommand; + var de_AssumeRoleCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ExpiredTokenException": + case "com.amazonaws.sts#ExpiredTokenException": + throw await de_ExpiredTokenExceptionRes(parsedOutput, context); + case "MalformedPolicyDocument": + case "com.amazonaws.sts#MalformedPolicyDocumentException": + throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); + case "PackedPolicyTooLarge": + case "com.amazonaws.sts#PackedPolicyTooLargeException": + throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); + case "RegionDisabledException": + case "com.amazonaws.sts#RegionDisabledException": + throw await de_RegionDisabledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_AssumeRoleWithSAMLCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_AssumeRoleWithSAMLCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_AssumeRoleWithSAMLCommand = de_AssumeRoleWithSAMLCommand; + var de_AssumeRoleWithSAMLCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ExpiredTokenException": + case "com.amazonaws.sts#ExpiredTokenException": + throw await de_ExpiredTokenExceptionRes(parsedOutput, context); + case "IDPRejectedClaim": + case "com.amazonaws.sts#IDPRejectedClaimException": + throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context); + case "InvalidIdentityToken": + case "com.amazonaws.sts#InvalidIdentityTokenException": + throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context); + case "MalformedPolicyDocument": + case "com.amazonaws.sts#MalformedPolicyDocumentException": + throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); + case "PackedPolicyTooLarge": + case "com.amazonaws.sts#PackedPolicyTooLargeException": + throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); + case "RegionDisabledException": + case "com.amazonaws.sts#RegionDisabledException": + throw await de_RegionDisabledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_AssumeRoleWithWebIdentityCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_AssumeRoleWithWebIdentityCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_AssumeRoleWithWebIdentityCommand = de_AssumeRoleWithWebIdentityCommand; + var de_AssumeRoleWithWebIdentityCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ExpiredTokenException": + case "com.amazonaws.sts#ExpiredTokenException": + throw await de_ExpiredTokenExceptionRes(parsedOutput, context); + case "IDPCommunicationError": + case "com.amazonaws.sts#IDPCommunicationErrorException": + throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context); + case "IDPRejectedClaim": + case "com.amazonaws.sts#IDPRejectedClaimException": + throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context); + case "InvalidIdentityToken": + case "com.amazonaws.sts#InvalidIdentityTokenException": + throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context); + case "MalformedPolicyDocument": + case "com.amazonaws.sts#MalformedPolicyDocumentException": + throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); + case "PackedPolicyTooLarge": + case "com.amazonaws.sts#PackedPolicyTooLargeException": + throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); + case "RegionDisabledException": + case "com.amazonaws.sts#RegionDisabledException": + throw await de_RegionDisabledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_DecodeAuthorizationMessageCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_DecodeAuthorizationMessageCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_DecodeAuthorizationMessageCommand = de_DecodeAuthorizationMessageCommand; + var de_DecodeAuthorizationMessageCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InvalidAuthorizationMessageException": + case "com.amazonaws.sts#InvalidAuthorizationMessageException": + throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_GetAccessKeyInfoCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_GetAccessKeyInfoCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_GetAccessKeyInfoCommand = de_GetAccessKeyInfoCommand; + var de_GetAccessKeyInfoCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + }; + var de_GetCallerIdentityCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_GetCallerIdentityCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_GetCallerIdentityCommand = de_GetCallerIdentityCommand; + var de_GetCallerIdentityCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + }; + var de_GetFederationTokenCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_GetFederationTokenCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_GetFederationTokenCommand = de_GetFederationTokenCommand; + var de_GetFederationTokenCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "MalformedPolicyDocument": + case "com.amazonaws.sts#MalformedPolicyDocumentException": + throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); + case "PackedPolicyTooLarge": + case "com.amazonaws.sts#PackedPolicyTooLargeException": + throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); + case "RegionDisabledException": + case "com.amazonaws.sts#RegionDisabledException": + throw await de_RegionDisabledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_GetSessionTokenCommand = async (output, context) => { + if (output.statusCode >= 300) { + return de_GetSessionTokenCommandError(output, context); + } + const data = await parseBody(output.body, context); + let contents = {}; + contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context); + const response = { + $metadata: deserializeMetadata(output), + ...contents + }; + return response; + }; + exports2.de_GetSessionTokenCommand = de_GetSessionTokenCommand; + var de_GetSessionTokenCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadQueryErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "RegionDisabledException": + case "com.amazonaws.sts#RegionDisabledException": + throw await de_RegionDisabledExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody: parsedBody.Error, + errorCode + }); + } + }; + var de_ExpiredTokenExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_ExpiredTokenException(body.Error, context); + const exception = new models_0_1.ExpiredTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_IDPCommunicationErrorExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_IDPCommunicationErrorException(body.Error, context); + const exception = new models_0_1.IDPCommunicationErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_IDPRejectedClaimExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_IDPRejectedClaimException(body.Error, context); + const exception = new models_0_1.IDPRejectedClaimException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InvalidAuthorizationMessageExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_InvalidAuthorizationMessageException(body.Error, context); + const exception = new models_0_1.InvalidAuthorizationMessageException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_InvalidIdentityTokenExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_InvalidIdentityTokenException(body.Error, context); + const exception = new models_0_1.InvalidIdentityTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_MalformedPolicyDocumentExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_MalformedPolicyDocumentException(body.Error, context); + const exception = new models_0_1.MalformedPolicyDocumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_PackedPolicyTooLargeExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_PackedPolicyTooLargeException(body.Error, context); + const exception = new models_0_1.PackedPolicyTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var de_RegionDisabledExceptionRes = async (parsedOutput, context) => { + const body = parsedOutput.body; + const deserialized = de_RegionDisabledException(body.Error, context); + const exception = new models_0_1.RegionDisabledException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized + }); + return (0, smithy_client_1.decorateServiceException)(exception, body); + }; + var se_AssumeRoleRequest = (input, context) => { + const entries = {}; + if (input.RoleArn != null) { + entries["RoleArn"] = input.RoleArn; + } + if (input.RoleSessionName != null) { + entries["RoleSessionName"] = input.RoleSessionName; + } + if (input.PolicyArns != null) { + const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); + if (input.PolicyArns?.length === 0) { + entries.PolicyArns = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `PolicyArns.${key}`; + entries[loc] = value; + }); + } + if (input.Policy != null) { + entries["Policy"] = input.Policy; + } + if (input.DurationSeconds != null) { + entries["DurationSeconds"] = input.DurationSeconds; + } + if (input.Tags != null) { + const memberEntries = se_tagListType(input.Tags, context); + if (input.Tags?.length === 0) { + entries.Tags = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `Tags.${key}`; + entries[loc] = value; + }); + } + if (input.TransitiveTagKeys != null) { + const memberEntries = se_tagKeyListType(input.TransitiveTagKeys, context); + if (input.TransitiveTagKeys?.length === 0) { + entries.TransitiveTagKeys = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `TransitiveTagKeys.${key}`; + entries[loc] = value; + }); + } + if (input.ExternalId != null) { + entries["ExternalId"] = input.ExternalId; + } + if (input.SerialNumber != null) { + entries["SerialNumber"] = input.SerialNumber; + } + if (input.TokenCode != null) { + entries["TokenCode"] = input.TokenCode; + } + if (input.SourceIdentity != null) { + entries["SourceIdentity"] = input.SourceIdentity; + } + if (input.ProvidedContexts != null) { + const memberEntries = se_ProvidedContextsListType(input.ProvidedContexts, context); + if (input.ProvidedContexts?.length === 0) { + entries.ProvidedContexts = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `ProvidedContexts.${key}`; + entries[loc] = value; + }); + } + return entries; + }; + var se_AssumeRoleWithSAMLRequest = (input, context) => { + const entries = {}; + if (input.RoleArn != null) { + entries["RoleArn"] = input.RoleArn; + } + if (input.PrincipalArn != null) { + entries["PrincipalArn"] = input.PrincipalArn; + } + if (input.SAMLAssertion != null) { + entries["SAMLAssertion"] = input.SAMLAssertion; + } + if (input.PolicyArns != null) { + const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); + if (input.PolicyArns?.length === 0) { + entries.PolicyArns = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `PolicyArns.${key}`; + entries[loc] = value; + }); + } + if (input.Policy != null) { + entries["Policy"] = input.Policy; + } + if (input.DurationSeconds != null) { + entries["DurationSeconds"] = input.DurationSeconds; + } + return entries; + }; + var se_AssumeRoleWithWebIdentityRequest = (input, context) => { + const entries = {}; + if (input.RoleArn != null) { + entries["RoleArn"] = input.RoleArn; + } + if (input.RoleSessionName != null) { + entries["RoleSessionName"] = input.RoleSessionName; + } + if (input.WebIdentityToken != null) { + entries["WebIdentityToken"] = input.WebIdentityToken; + } + if (input.ProviderId != null) { + entries["ProviderId"] = input.ProviderId; + } + if (input.PolicyArns != null) { + const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); + if (input.PolicyArns?.length === 0) { + entries.PolicyArns = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `PolicyArns.${key}`; + entries[loc] = value; + }); + } + if (input.Policy != null) { + entries["Policy"] = input.Policy; + } + if (input.DurationSeconds != null) { + entries["DurationSeconds"] = input.DurationSeconds; + } + return entries; + }; + var se_DecodeAuthorizationMessageRequest = (input, context) => { + const entries = {}; + if (input.EncodedMessage != null) { + entries["EncodedMessage"] = input.EncodedMessage; + } + return entries; + }; + var se_GetAccessKeyInfoRequest = (input, context) => { + const entries = {}; + if (input.AccessKeyId != null) { + entries["AccessKeyId"] = input.AccessKeyId; + } + return entries; + }; + var se_GetCallerIdentityRequest = (input, context) => { + const entries = {}; + return entries; + }; + var se_GetFederationTokenRequest = (input, context) => { + const entries = {}; + if (input.Name != null) { + entries["Name"] = input.Name; + } + if (input.Policy != null) { + entries["Policy"] = input.Policy; + } + if (input.PolicyArns != null) { + const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); + if (input.PolicyArns?.length === 0) { + entries.PolicyArns = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `PolicyArns.${key}`; + entries[loc] = value; + }); + } + if (input.DurationSeconds != null) { + entries["DurationSeconds"] = input.DurationSeconds; + } + if (input.Tags != null) { + const memberEntries = se_tagListType(input.Tags, context); + if (input.Tags?.length === 0) { + entries.Tags = []; + } + Object.entries(memberEntries).forEach(([key, value]) => { + const loc = `Tags.${key}`; + entries[loc] = value; + }); + } + return entries; + }; + var se_GetSessionTokenRequest = (input, context) => { + const entries = {}; + if (input.DurationSeconds != null) { + entries["DurationSeconds"] = input.DurationSeconds; + } + if (input.SerialNumber != null) { + entries["SerialNumber"] = input.SerialNumber; + } + if (input.TokenCode != null) { + entries["TokenCode"] = input.TokenCode; + } + return entries; + }; + var se_policyDescriptorListType = (input, context) => { + const entries = {}; + let counter = 1; + for (const entry of input) { + if (entry === null) { + continue; + } + const memberEntries = se_PolicyDescriptorType(entry, context); + Object.entries(memberEntries).forEach(([key, value]) => { + entries[`member.${counter}.${key}`] = value; + }); + counter++; + } + return entries; + }; + var se_PolicyDescriptorType = (input, context) => { + const entries = {}; + if (input.arn != null) { + entries["arn"] = input.arn; + } + return entries; + }; + var se_ProvidedContext = (input, context) => { + const entries = {}; + if (input.ProviderArn != null) { + entries["ProviderArn"] = input.ProviderArn; + } + if (input.ContextAssertion != null) { + entries["ContextAssertion"] = input.ContextAssertion; + } + return entries; + }; + var se_ProvidedContextsListType = (input, context) => { + const entries = {}; + let counter = 1; + for (const entry of input) { + if (entry === null) { + continue; + } + const memberEntries = se_ProvidedContext(entry, context); + Object.entries(memberEntries).forEach(([key, value]) => { + entries[`member.${counter}.${key}`] = value; + }); + counter++; + } + return entries; + }; + var se_Tag = (input, context) => { + const entries = {}; + if (input.Key != null) { + entries["Key"] = input.Key; + } + if (input.Value != null) { + entries["Value"] = input.Value; + } + return entries; + }; + var se_tagKeyListType = (input, context) => { + const entries = {}; + let counter = 1; + for (const entry of input) { + if (entry === null) { + continue; + } + entries[`member.${counter}`] = entry; + counter++; + } + return entries; + }; + var se_tagListType = (input, context) => { + const entries = {}; + let counter = 1; + for (const entry of input) { + if (entry === null) { + continue; + } + const memberEntries = se_Tag(entry, context); + Object.entries(memberEntries).forEach(([key, value]) => { + entries[`member.${counter}.${key}`] = value; + }); + counter++; + } + return entries; + }; + var de_AssumedRoleUser = (output, context) => { + const contents = {}; + if (output["AssumedRoleId"] !== void 0) { + contents.AssumedRoleId = (0, smithy_client_1.expectString)(output["AssumedRoleId"]); + } + if (output["Arn"] !== void 0) { + contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); + } + return contents; + }; + var de_AssumeRoleResponse = (output, context) => { + const contents = {}; + if (output["Credentials"] !== void 0) { + contents.Credentials = de_Credentials(output["Credentials"], context); + } + if (output["AssumedRoleUser"] !== void 0) { + contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); + } + if (output["PackedPolicySize"] !== void 0) { + contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); + } + if (output["SourceIdentity"] !== void 0) { + contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); + } + return contents; + }; + var de_AssumeRoleWithSAMLResponse = (output, context) => { + const contents = {}; + if (output["Credentials"] !== void 0) { + contents.Credentials = de_Credentials(output["Credentials"], context); + } + if (output["AssumedRoleUser"] !== void 0) { + contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); + } + if (output["PackedPolicySize"] !== void 0) { + contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); + } + if (output["Subject"] !== void 0) { + contents.Subject = (0, smithy_client_1.expectString)(output["Subject"]); + } + if (output["SubjectType"] !== void 0) { + contents.SubjectType = (0, smithy_client_1.expectString)(output["SubjectType"]); + } + if (output["Issuer"] !== void 0) { + contents.Issuer = (0, smithy_client_1.expectString)(output["Issuer"]); + } + if (output["Audience"] !== void 0) { + contents.Audience = (0, smithy_client_1.expectString)(output["Audience"]); + } + if (output["NameQualifier"] !== void 0) { + contents.NameQualifier = (0, smithy_client_1.expectString)(output["NameQualifier"]); + } + if (output["SourceIdentity"] !== void 0) { + contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); + } + return contents; + }; + var de_AssumeRoleWithWebIdentityResponse = (output, context) => { + const contents = {}; + if (output["Credentials"] !== void 0) { + contents.Credentials = de_Credentials(output["Credentials"], context); + } + if (output["SubjectFromWebIdentityToken"] !== void 0) { + contents.SubjectFromWebIdentityToken = (0, smithy_client_1.expectString)(output["SubjectFromWebIdentityToken"]); + } + if (output["AssumedRoleUser"] !== void 0) { + contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); + } + if (output["PackedPolicySize"] !== void 0) { + contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); + } + if (output["Provider"] !== void 0) { + contents.Provider = (0, smithy_client_1.expectString)(output["Provider"]); + } + if (output["Audience"] !== void 0) { + contents.Audience = (0, smithy_client_1.expectString)(output["Audience"]); + } + if (output["SourceIdentity"] !== void 0) { + contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); + } + return contents; + }; + var de_Credentials = (output, context) => { + const contents = {}; + if (output["AccessKeyId"] !== void 0) { + contents.AccessKeyId = (0, smithy_client_1.expectString)(output["AccessKeyId"]); + } + if (output["SecretAccessKey"] !== void 0) { + contents.SecretAccessKey = (0, smithy_client_1.expectString)(output["SecretAccessKey"]); + } + if (output["SessionToken"] !== void 0) { + contents.SessionToken = (0, smithy_client_1.expectString)(output["SessionToken"]); + } + if (output["Expiration"] !== void 0) { + contents.Expiration = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["Expiration"])); + } + return contents; + }; + var de_DecodeAuthorizationMessageResponse = (output, context) => { + const contents = {}; + if (output["DecodedMessage"] !== void 0) { + contents.DecodedMessage = (0, smithy_client_1.expectString)(output["DecodedMessage"]); + } + return contents; + }; + var de_ExpiredTokenException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_FederatedUser = (output, context) => { + const contents = {}; + if (output["FederatedUserId"] !== void 0) { + contents.FederatedUserId = (0, smithy_client_1.expectString)(output["FederatedUserId"]); + } + if (output["Arn"] !== void 0) { + contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); + } + return contents; + }; + var de_GetAccessKeyInfoResponse = (output, context) => { + const contents = {}; + if (output["Account"] !== void 0) { + contents.Account = (0, smithy_client_1.expectString)(output["Account"]); + } + return contents; + }; + var de_GetCallerIdentityResponse = (output, context) => { + const contents = {}; + if (output["UserId"] !== void 0) { + contents.UserId = (0, smithy_client_1.expectString)(output["UserId"]); + } + if (output["Account"] !== void 0) { + contents.Account = (0, smithy_client_1.expectString)(output["Account"]); + } + if (output["Arn"] !== void 0) { + contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); + } + return contents; + }; + var de_GetFederationTokenResponse = (output, context) => { + const contents = {}; + if (output["Credentials"] !== void 0) { + contents.Credentials = de_Credentials(output["Credentials"], context); + } + if (output["FederatedUser"] !== void 0) { + contents.FederatedUser = de_FederatedUser(output["FederatedUser"], context); + } + if (output["PackedPolicySize"] !== void 0) { + contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); + } + return contents; + }; + var de_GetSessionTokenResponse = (output, context) => { + const contents = {}; + if (output["Credentials"] !== void 0) { + contents.Credentials = de_Credentials(output["Credentials"], context); + } + return contents; + }; + var de_IDPCommunicationErrorException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_IDPRejectedClaimException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_InvalidAuthorizationMessageException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_InvalidIdentityTokenException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_MalformedPolicyDocumentException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_PackedPolicyTooLargeException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var de_RegionDisabledException = (output, context) => { + const contents = {}; + if (output["message"] !== void 0) { + contents.message = (0, smithy_client_1.expectString)(output["message"]); + } + return contents; + }; + var deserializeMetadata = (output) => ({ + httpStatusCode: output.statusCode, + requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"] + }); + var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); + var throwDefaultError = (0, smithy_client_1.withBaseException)(STSServiceException_1.STSServiceException); + var buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const contents = { + protocol, + hostname, + port, + method: "POST", + path: basePath.endsWith("/") ? basePath.slice(0, -1) + path : basePath + path, + headers + }; + if (resolvedHostname !== void 0) { + contents.hostname = resolvedHostname; + } + if (body !== void 0) { + contents.body = body; + } + return new protocol_http_1.HttpRequest(contents); + }; + var SHARED_HEADERS = { + "content-type": "application/x-www-form-urlencoded" + }; + var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { + if (encoded.length) { + const parser = new fast_xml_parser_1.XMLParser({ + attributeNamePrefix: "", + htmlEntities: true, + ignoreAttributes: false, + ignoreDeclaration: true, + parseTagValue: false, + trimValues: false, + tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0 + }); + parser.addEntity("#xD", "\r"); + parser.addEntity("#10", "\n"); + const parsedObj = parser.parse(encoded); + const textNodeName = "#text"; + const key = Object.keys(parsedObj)[0]; + const parsedObjToReturn = parsedObj[key]; + if (parsedObjToReturn[textNodeName]) { + parsedObjToReturn[key] = parsedObjToReturn[textNodeName]; + delete parsedObjToReturn[textNodeName]; + } + return (0, smithy_client_1.getValueFromTextNode)(parsedObjToReturn); + } + return {}; + }); + var parseErrorBody = async (errorBody, context) => { + const value = await parseBody(errorBody, context); + if (value.Error) { + value.Error.message = value.Error.message ?? value.Error.Message; + } + return value; + }; + var buildFormUrlencodedString = (formEntries) => Object.entries(formEntries).map(([key, value]) => (0, smithy_client_1.extendedEncodeURIComponent)(key) + "=" + (0, smithy_client_1.extendedEncodeURIComponent)(value)).join("&"); + var loadQueryErrorCode = (output, data) => { + if (data.Error?.Code !== void 0) { + return data.Error.Code; + } + if (output.statusCode == 404) { + return "NotFound"; + } + }; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleCommand.js +var require_AssumeRoleCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AssumeRoleCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_02(); + var Aws_query_1 = require_Aws_query(); + var AssumeRoleCommand = class _AssumeRoleCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "AssumeRoleCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: models_0_1.AssumeRoleResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "AssumeRole" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_AssumeRoleCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_AssumeRoleCommand)(output, context); + } + }; + exports2.AssumeRoleCommand = AssumeRoleCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js +var require_AssumeRoleWithWebIdentityCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AssumeRoleWithWebIdentityCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_02(); + var Aws_query_1 = require_Aws_query(); + var AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleWithWebIdentityCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "AssumeRoleWithWebIdentityCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.AssumeRoleWithWebIdentityRequestFilterSensitiveLog, + outputFilterSensitiveLog: models_0_1.AssumeRoleWithWebIdentityResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "AssumeRoleWithWebIdentity" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_AssumeRoleWithWebIdentityCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_AssumeRoleWithWebIdentityCommand)(output, context); + } + }; + exports2.AssumeRoleWithWebIdentityCommand = AssumeRoleWithWebIdentityCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/defaultStsRoleAssumers.js +var require_defaultStsRoleAssumers = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/defaultStsRoleAssumers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.decorateDefaultCredentialProvider = exports2.getDefaultRoleAssumerWithWebIdentity = exports2.getDefaultRoleAssumer = void 0; + var AssumeRoleCommand_1 = require_AssumeRoleCommand(); + var AssumeRoleWithWebIdentityCommand_1 = require_AssumeRoleWithWebIdentityCommand(); + var ASSUME_ROLE_DEFAULT_REGION = "us-east-1"; + var decorateDefaultRegion = (region) => { + if (typeof region !== "function") { + return region === void 0 ? ASSUME_ROLE_DEFAULT_REGION : region; + } + return async () => { + try { + return await region(); + } catch (e) { + return ASSUME_ROLE_DEFAULT_REGION; + } + }; + }; + var getDefaultRoleAssumer = (stsOptions, stsClientCtor) => { + let stsClient; + let closureSourceCreds; + return async (sourceCreds, params) => { + closureSourceCreds = sourceCreds; + if (!stsClient) { + const { logger, region, requestHandler } = stsOptions; + stsClient = new stsClientCtor({ + logger, + credentialDefaultProvider: () => async () => closureSourceCreds, + region: decorateDefaultRegion(region || stsOptions.region), + ...requestHandler ? { requestHandler } : {} + }); + } + const { Credentials } = await stsClient.send(new AssumeRoleCommand_1.AssumeRoleCommand(params)); + if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) { + throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`); + } + return { + accessKeyId: Credentials.AccessKeyId, + secretAccessKey: Credentials.SecretAccessKey, + sessionToken: Credentials.SessionToken, + expiration: Credentials.Expiration + }; + }; + }; + exports2.getDefaultRoleAssumer = getDefaultRoleAssumer; + var getDefaultRoleAssumerWithWebIdentity = (stsOptions, stsClientCtor) => { + let stsClient; + return async (params) => { + if (!stsClient) { + const { logger, region, requestHandler } = stsOptions; + stsClient = new stsClientCtor({ + logger, + region: decorateDefaultRegion(region || stsOptions.region), + ...requestHandler ? { requestHandler } : {} + }); + } + const { Credentials } = await stsClient.send(new AssumeRoleWithWebIdentityCommand_1.AssumeRoleWithWebIdentityCommand(params)); + if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) { + throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`); + } + return { + accessKeyId: Credentials.AccessKeyId, + secretAccessKey: Credentials.SecretAccessKey, + sessionToken: Credentials.SessionToken, + expiration: Credentials.Expiration + }; + }; + }; + exports2.getDefaultRoleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity; + var decorateDefaultCredentialProvider = (provider) => (input) => provider({ + roleAssumer: (0, exports2.getDefaultRoleAssumer)(input, input.stsClientCtor), + roleAssumerWithWebIdentity: (0, exports2.getDefaultRoleAssumerWithWebIdentity)(input, input.stsClientCtor), + ...input + }); + exports2.decorateDefaultCredentialProvider = decorateDefaultCredentialProvider; + } +}); + +// node_modules/@aws-sdk/credential-provider-env/dist-cjs/fromEnv.js +var require_fromEnv = __commonJS({ + "node_modules/@aws-sdk/credential-provider-env/dist-cjs/fromEnv.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromEnv = exports2.ENV_EXPIRATION = exports2.ENV_SESSION = exports2.ENV_SECRET = exports2.ENV_KEY = void 0; + var property_provider_1 = require_dist_cjs8(); + exports2.ENV_KEY = "AWS_ACCESS_KEY_ID"; + exports2.ENV_SECRET = "AWS_SECRET_ACCESS_KEY"; + exports2.ENV_SESSION = "AWS_SESSION_TOKEN"; + exports2.ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION"; + var fromEnv = () => async () => { + const accessKeyId = process.env[exports2.ENV_KEY]; + const secretAccessKey = process.env[exports2.ENV_SECRET]; + const sessionToken = process.env[exports2.ENV_SESSION]; + const expiry = process.env[exports2.ENV_EXPIRATION]; + if (accessKeyId && secretAccessKey) { + return { + accessKeyId, + secretAccessKey, + ...sessionToken && { sessionToken }, + ...expiry && { expiration: new Date(expiry) } + }; + } + throw new property_provider_1.CredentialsProviderError("Unable to find environment variable credentials."); + }; + exports2.fromEnv = fromEnv; + } +}); + +// node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js +var require_dist_cjs39 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_fromEnv(), exports2); + } +}); + +// node_modules/@smithy/credential-provider-imds/dist-cjs/index.js +var require_dist_cjs40 = __commonJS({ + "node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES, + DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT, + ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN, + ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI, + ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI, + Endpoint: () => Endpoint, + fromContainerMetadata: () => fromContainerMetadata, + fromInstanceMetadata: () => fromInstanceMetadata, + getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint, + httpRequest: () => httpRequest, + providerConfigFromInit: () => providerConfigFromInit + }); + module2.exports = __toCommonJS2(src_exports); + var import_url = require("url"); + var import_property_provider = require_dist_cjs8(); + var import_buffer = require("buffer"); + var import_http = require("http"); + function httpRequest(options) { + return new Promise((resolve, reject) => { + var _a; + const req = (0, import_http.request)({ + method: "GET", + ...options, + // Node.js http module doesn't accept hostname with square brackets + // Refs: https://github.com/nodejs/node/issues/39738 + hostname: (_a = options.hostname) == null ? void 0 : _a.replace(/^\[(.+)\]$/, "$1") + }); + req.on("error", (err) => { + reject(Object.assign(new import_property_provider.ProviderError("Unable to connect to instance metadata service"), err)); + req.destroy(); + }); + req.on("timeout", () => { + reject(new import_property_provider.ProviderError("TimeoutError from instance metadata service")); + req.destroy(); + }); + req.on("response", (res) => { + const { statusCode = 400 } = res; + if (statusCode < 200 || 300 <= statusCode) { + reject( + Object.assign(new import_property_provider.ProviderError("Error response received from instance metadata service"), { statusCode }) + ); + req.destroy(); + } + const chunks = []; + res.on("data", (chunk) => { + chunks.push(chunk); + }); + res.on("end", () => { + resolve(import_buffer.Buffer.concat(chunks)); + req.destroy(); + }); + }); + req.end(); + }); + } + __name(httpRequest, "httpRequest"); + var isImdsCredentials = /* @__PURE__ */ __name((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials"); + var fromImdsCredentials = /* @__PURE__ */ __name((creds) => ({ + accessKeyId: creds.AccessKeyId, + secretAccessKey: creds.SecretAccessKey, + sessionToken: creds.Token, + expiration: new Date(creds.Expiration) + }), "fromImdsCredentials"); + var DEFAULT_TIMEOUT = 1e3; + var DEFAULT_MAX_RETRIES = 0; + var providerConfigFromInit = /* @__PURE__ */ __name(({ + maxRetries = DEFAULT_MAX_RETRIES, + timeout = DEFAULT_TIMEOUT + }) => ({ maxRetries, timeout }), "providerConfigFromInit"); + var retry = /* @__PURE__ */ __name((toRetry, maxRetries) => { + let promise = toRetry(); + for (let i = 0; i < maxRetries; i++) { + promise = promise.catch(toRetry); + } + return promise; + }, "retry"); + var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI"; + var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"; + var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN"; + var fromContainerMetadata = /* @__PURE__ */ __name((init = {}) => { + const { timeout, maxRetries } = providerConfigFromInit(init); + return () => retry(async () => { + const requestOptions = await getCmdsUri(); + const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions)); + if (!isImdsCredentials(credsResponse)) { + throw new import_property_provider.CredentialsProviderError("Invalid response received from instance metadata service."); + } + return fromImdsCredentials(credsResponse); + }, maxRetries); + }, "fromContainerMetadata"); + var requestFromEcsImds = /* @__PURE__ */ __name(async (timeout, options) => { + if (process.env[ENV_CMDS_AUTH_TOKEN]) { + options.headers = { + ...options.headers, + Authorization: process.env[ENV_CMDS_AUTH_TOKEN] + }; + } + const buffer = await httpRequest({ + ...options, + timeout + }); + return buffer.toString(); + }, "requestFromEcsImds"); + var CMDS_IP = "169.254.170.2"; + var GREENGRASS_HOSTS = { + localhost: true, + "127.0.0.1": true + }; + var GREENGRASS_PROTOCOLS = { + "http:": true, + "https:": true + }; + var getCmdsUri = /* @__PURE__ */ __name(async () => { + if (process.env[ENV_CMDS_RELATIVE_URI]) { + return { + hostname: CMDS_IP, + path: process.env[ENV_CMDS_RELATIVE_URI] + }; + } + if (process.env[ENV_CMDS_FULL_URI]) { + const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]); + if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) { + throw new import_property_provider.CredentialsProviderError( + `${parsed.hostname} is not a valid container metadata service hostname`, + false + ); + } + if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) { + throw new import_property_provider.CredentialsProviderError( + `${parsed.protocol} is not a valid container metadata service protocol`, + false + ); + } + return { + ...parsed, + port: parsed.port ? parseInt(parsed.port, 10) : void 0 + }; + } + throw new import_property_provider.CredentialsProviderError( + `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`, + false + ); + }, "getCmdsUri"); + var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider.CredentialsProviderError { + constructor(message, tryNextLink = true) { + super(message, tryNextLink); + this.tryNextLink = tryNextLink; + this.name = "InstanceMetadataV1FallbackError"; + Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype); + } + }; + __name(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError"); + var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError; + var import_node_config_provider = require_dist_cjs24(); + var import_url_parser = require_dist_cjs26(); + var Endpoint = /* @__PURE__ */ ((Endpoint2) => { + Endpoint2["IPv4"] = "http://169.254.169.254"; + Endpoint2["IPv6"] = "http://[fd00:ec2::254]"; + return Endpoint2; + })(Endpoint || {}); + var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT"; + var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint"; + var ENDPOINT_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => env[ENV_ENDPOINT_NAME], + configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME], + default: void 0 + }; + var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => { + EndpointMode2["IPv4"] = "IPv4"; + EndpointMode2["IPv6"] = "IPv6"; + return EndpointMode2; + })(EndpointMode || {}); + var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE"; + var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode"; + var ENDPOINT_MODE_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => env[ENV_ENDPOINT_MODE_NAME], + configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME], + default: "IPv4" + /* IPv4 */ + }; + var getInstanceMetadataEndpoint = /* @__PURE__ */ __name(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint"); + var getFromEndpointConfig = /* @__PURE__ */ __name(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig"); + var getFromEndpointModeConfig = /* @__PURE__ */ __name(async () => { + const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)(); + switch (endpointMode) { + case "IPv4": + return "http://169.254.169.254"; + case "IPv6": + return "http://[fd00:ec2::254]"; + default: + throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`); + } + }, "getFromEndpointModeConfig"); + var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60; + var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60; + var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html"; + var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name((credentials, logger) => { + const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS); + const newExpiration = new Date(Date.now() + refreshInterval * 1e3); + logger.warn( + `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}. +For more information, please visit: ` + STATIC_STABILITY_DOC_URL + ); + const originalExpiration = credentials.originalExpiration ?? credentials.expiration; + return { + ...credentials, + ...originalExpiration ? { originalExpiration } : {}, + expiration: newExpiration + }; + }, "getExtendedInstanceMetadataCredentials"); + var staticStabilityProvider = /* @__PURE__ */ __name((provider, options = {}) => { + const logger = (options == null ? void 0 : options.logger) || console; + let pastCredentials; + return async () => { + let credentials; + try { + credentials = await provider(); + if (credentials.expiration && credentials.expiration.getTime() < Date.now()) { + credentials = getExtendedInstanceMetadataCredentials(credentials, logger); + } + } catch (e) { + if (pastCredentials) { + logger.warn("Credential renew failed: ", e); + credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger); + } else { + throw e; + } + } + pastCredentials = credentials; + return credentials; + }; + }, "staticStabilityProvider"); + var IMDS_PATH = "/latest/meta-data/iam/security-credentials/"; + var IMDS_TOKEN_PATH = "/latest/api/token"; + var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED"; + var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled"; + var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token"; + var fromInstanceMetadata = /* @__PURE__ */ __name((init = {}) => staticStabilityProvider(getInstanceImdsProvider(init), { logger: init.logger }), "fromInstanceMetadata"); + var getInstanceImdsProvider = /* @__PURE__ */ __name((init) => { + let disableFetchToken = false; + const { logger, profile } = init; + const { timeout, maxRetries } = providerConfigFromInit(init); + const getCredentials = /* @__PURE__ */ __name(async (maxRetries2, options) => { + var _a; + const isImdsV1Fallback = disableFetchToken || ((_a = options.headers) == null ? void 0 : _a[X_AWS_EC2_METADATA_TOKEN]) == null; + if (isImdsV1Fallback) { + let fallbackBlockedFromProfile = false; + let fallbackBlockedFromProcessEnv = false; + const configValue = await (0, import_node_config_provider.loadConfig)( + { + environmentVariableSelector: (env) => { + const envValue = env[AWS_EC2_METADATA_V1_DISABLED]; + fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false"; + if (envValue === void 0) { + throw new import_property_provider.CredentialsProviderError( + `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.` + ); + } + return fallbackBlockedFromProcessEnv; + }, + configFileSelector: (profile2) => { + const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED]; + fallbackBlockedFromProfile = !!profileValue && profileValue !== "false"; + return fallbackBlockedFromProfile; + }, + default: false + }, + { + profile + } + )(); + if (init.ec2MetadataV1Disabled || configValue) { + const causes = []; + if (init.ec2MetadataV1Disabled) + causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"); + if (fallbackBlockedFromProfile) + causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`); + if (fallbackBlockedFromProcessEnv) + causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`); + throw new InstanceMetadataV1FallbackError( + `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join( + ", " + )}].` + ); + } + } + const imdsProfile = (await retry(async () => { + let profile2; + try { + profile2 = await getProfile(options); + } catch (err) { + if (err.statusCode === 401) { + disableFetchToken = false; + } + throw err; + } + return profile2; + }, maxRetries2)).trim(); + return retry(async () => { + let creds; + try { + creds = await getCredentialsFromProfile(imdsProfile, options); + } catch (err) { + if (err.statusCode === 401) { + disableFetchToken = false; + } + throw err; + } + return creds; + }, maxRetries2); + }, "getCredentials"); + return async () => { + const endpoint = await getInstanceMetadataEndpoint(); + if (disableFetchToken) { + logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)"); + return getCredentials(maxRetries, { ...endpoint, timeout }); + } else { + let token; + try { + token = (await getMetadataToken({ ...endpoint, timeout })).toString(); + } catch (error) { + if ((error == null ? void 0 : error.statusCode) === 400) { + throw Object.assign(error, { + message: "EC2 Metadata token request returned error" + }); + } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) { + disableFetchToken = true; + } + logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)"); + return getCredentials(maxRetries, { ...endpoint, timeout }); + } + return getCredentials(maxRetries, { + ...endpoint, + headers: { + [X_AWS_EC2_METADATA_TOKEN]: token + }, + timeout + }); + } + }; + }, "getInstanceImdsProvider"); + var getMetadataToken = /* @__PURE__ */ __name(async (options) => httpRequest({ + ...options, + path: IMDS_TOKEN_PATH, + method: "PUT", + headers: { + "x-aws-ec2-metadata-token-ttl-seconds": "21600" + } + }), "getMetadataToken"); + var getProfile = /* @__PURE__ */ __name(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile"); + var getCredentialsFromProfile = /* @__PURE__ */ __name(async (profile, options) => { + const credsResponse = JSON.parse( + (await httpRequest({ + ...options, + path: IMDS_PATH + profile + })).toString() + ); + if (!isImdsCredentials(credsResponse)) { + throw new import_property_provider.CredentialsProviderError("Invalid response received from instance metadata service."); + } + return fromImdsCredentials(credsResponse); + }, "getCredentialsFromProfile"); + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveCredentialSource.js +var require_resolveCredentialSource = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveCredentialSource.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveCredentialSource = void 0; + var credential_provider_env_1 = require_dist_cjs39(); + var credential_provider_imds_1 = require_dist_cjs40(); + var property_provider_1 = require_dist_cjs8(); + var resolveCredentialSource = (credentialSource, profileName) => { + const sourceProvidersMap = { + EcsContainer: credential_provider_imds_1.fromContainerMetadata, + Ec2InstanceMetadata: credential_provider_imds_1.fromInstanceMetadata, + Environment: credential_provider_env_1.fromEnv + }; + if (credentialSource in sourceProvidersMap) { + return sourceProvidersMap[credentialSource](); + } else { + throw new property_provider_1.CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`); + } + }; + exports2.resolveCredentialSource = resolveCredentialSource; + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveAssumeRoleCredentials.js +var require_resolveAssumeRoleCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveAssumeRoleCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveAssumeRoleCredentials = exports2.isAssumeRoleProfile = void 0; + var property_provider_1 = require_dist_cjs8(); + var shared_ini_file_loader_1 = require_dist_cjs23(); + var resolveCredentialSource_1 = require_resolveCredentialSource(); + var resolveProfileData_1 = require_resolveProfileData(); + var isAssumeRoleProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg) || isAssumeRoleWithProviderProfile(arg)); + exports2.isAssumeRoleProfile = isAssumeRoleProfile; + var isAssumeRoleWithSourceProfile = (arg) => typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined"; + var isAssumeRoleWithProviderProfile = (arg) => typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined"; + var resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => { + const data = profiles[profileName]; + if (!options.roleAssumer) { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires a role to be assumed, but no role assumption callback was provided.`, false); + } + const { source_profile } = data; + if (source_profile && source_profile in visitedProfiles) { + throw new property_provider_1.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${(0, shared_ini_file_loader_1.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "), false); + } + const sourceCredsProvider = source_profile ? (0, resolveProfileData_1.resolveProfileData)(source_profile, profiles, options, { + ...visitedProfiles, + [source_profile]: true + }) : (0, resolveCredentialSource_1.resolveCredentialSource)(data.credential_source, profileName)(); + const params = { + RoleArn: data.role_arn, + RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`, + ExternalId: data.external_id, + DurationSeconds: parseInt(data.duration_seconds || "3600", 10) + }; + const { mfa_serial } = data; + if (mfa_serial) { + if (!options.mfaCodeProvider) { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, false); + } + params.SerialNumber = mfa_serial; + params.TokenCode = await options.mfaCodeProvider(mfa_serial); + } + const sourceCreds = await sourceCredsProvider; + return options.roleAssumer(sourceCreds, params); + }; + exports2.resolveAssumeRoleCredentials = resolveAssumeRoleCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-process/dist-cjs/getValidatedProcessCredentials.js +var require_getValidatedProcessCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-process/dist-cjs/getValidatedProcessCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getValidatedProcessCredentials = void 0; + var getValidatedProcessCredentials = (profileName, data) => { + if (data.Version !== 1) { + throw Error(`Profile ${profileName} credential_process did not return Version 1.`); + } + if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) { + throw Error(`Profile ${profileName} credential_process returned invalid credentials.`); + } + if (data.Expiration) { + const currentTime = /* @__PURE__ */ new Date(); + const expireTime = new Date(data.Expiration); + if (expireTime < currentTime) { + throw Error(`Profile ${profileName} credential_process returned expired credentials.`); + } + } + return { + accessKeyId: data.AccessKeyId, + secretAccessKey: data.SecretAccessKey, + ...data.SessionToken && { sessionToken: data.SessionToken }, + ...data.Expiration && { expiration: new Date(data.Expiration) } + }; + }; + exports2.getValidatedProcessCredentials = getValidatedProcessCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-process/dist-cjs/resolveProcessCredentials.js +var require_resolveProcessCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-process/dist-cjs/resolveProcessCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveProcessCredentials = void 0; + var property_provider_1 = require_dist_cjs8(); + var child_process_1 = require("child_process"); + var util_1 = require("util"); + var getValidatedProcessCredentials_1 = require_getValidatedProcessCredentials(); + var resolveProcessCredentials = async (profileName, profiles) => { + const profile = profiles[profileName]; + if (profiles[profileName]) { + const credentialProcess = profile["credential_process"]; + if (credentialProcess !== void 0) { + const execPromise = (0, util_1.promisify)(child_process_1.exec); + try { + const { stdout } = await execPromise(credentialProcess); + let data; + try { + data = JSON.parse(stdout.trim()); + } catch (_a) { + throw Error(`Profile ${profileName} credential_process returned invalid JSON.`); + } + return (0, getValidatedProcessCredentials_1.getValidatedProcessCredentials)(profileName, data); + } catch (error) { + throw new property_provider_1.CredentialsProviderError(error.message); + } + } else { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`); + } + } else { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`); + } + }; + exports2.resolveProcessCredentials = resolveProcessCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-process/dist-cjs/fromProcess.js +var require_fromProcess = __commonJS({ + "node_modules/@aws-sdk/credential-provider-process/dist-cjs/fromProcess.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromProcess = void 0; + var shared_ini_file_loader_1 = require_dist_cjs23(); + var resolveProcessCredentials_1 = require_resolveProcessCredentials(); + var fromProcess = (init = {}) => async () => { + const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); + return (0, resolveProcessCredentials_1.resolveProcessCredentials)((0, shared_ini_file_loader_1.getProfileName)(init), profiles); + }; + exports2.fromProcess = fromProcess; + } +}); + +// node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js +var require_dist_cjs41 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_fromProcess(), exports2); + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProcessCredentials.js +var require_resolveProcessCredentials2 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProcessCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveProcessCredentials = exports2.isProcessProfile = void 0; + var credential_provider_process_1 = require_dist_cjs41(); + var isProcessProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string"; + exports2.isProcessProfile = isProcessProfile; + var resolveProcessCredentials = async (options, profile) => (0, credential_provider_process_1.fromProcess)({ + ...options, + profile + })(); + exports2.resolveProcessCredentials = resolveProcessCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/isSsoProfile.js +var require_isSsoProfile = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/isSsoProfile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isSsoProfile = void 0; + var isSsoProfile = (arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"); + exports2.isSsoProfile = isSsoProfile; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/EndpointParameters.js +var require_EndpointParameters3 = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/EndpointParameters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveClientEndpointParameters = void 0; + var resolveClientEndpointParameters = (options) => { + return { + ...options, + useDualstackEndpoint: options.useDualstackEndpoint ?? false, + useFipsEndpoint: options.useFipsEndpoint ?? false, + defaultSigningName: "awsssoportal" + }; + }; + exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; + } +}); + +// node_modules/@aws-sdk/client-sso/package.json +var require_package3 = __commonJS({ + "node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) { + module2.exports = { + name: "@aws-sdk/client-sso", + description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native", + version: "3.421.0", + scripts: { + build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", + "build:cjs": "tsc -p tsconfig.cjs.json", + "build:docs": "typedoc", + "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": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/middleware-host-header": "3.418.0", + "@aws-sdk/middleware-logger": "3.418.0", + "@aws-sdk/middleware-recursion-detection": "3.418.0", + "@aws-sdk/middleware-user-agent": "3.418.0", + "@aws-sdk/region-config-resolver": "3.418.0", + "@aws-sdk/types": "3.418.0", + "@aws-sdk/util-endpoints": "3.418.0", + "@aws-sdk/util-user-agent-browser": "3.418.0", + "@aws-sdk/util-user-agent-node": "3.418.0", + "@smithy/config-resolver": "^2.0.10", + "@smithy/fetch-http-handler": "^2.1.5", + "@smithy/hash-node": "^2.0.9", + "@smithy/invalid-dependency": "^2.0.9", + "@smithy/middleware-content-length": "^2.0.11", + "@smithy/middleware-endpoint": "^2.0.9", + "@smithy/middleware-retry": "^2.0.12", + "@smithy/middleware-serde": "^2.0.9", + "@smithy/middleware-stack": "^2.0.2", + "@smithy/node-config-provider": "^2.0.12", + "@smithy/node-http-handler": "^2.1.5", + "@smithy/protocol-http": "^3.0.5", + "@smithy/smithy-client": "^2.1.6", + "@smithy/types": "^2.3.3", + "@smithy/url-parser": "^2.0.9", + "@smithy/util-base64": "^2.0.0", + "@smithy/util-body-length-browser": "^2.0.0", + "@smithy/util-body-length-node": "^2.1.0", + "@smithy/util-defaults-mode-browser": "^2.0.10", + "@smithy/util-defaults-mode-node": "^2.0.12", + "@smithy/util-retry": "^2.0.2", + "@smithy/util-utf8": "^2.0.0", + tslib: "^2.5.0" + }, + devDependencies: { + "@smithy/service-client-documentation-generator": "^2.0.0", + "@tsconfig/node14": "1.0.3", + "@types/node": "^14.14.31", + concurrently: "7.0.0", + "downlevel-dts": "0.10.1", + rimraf: "3.0.2", + typedoc: "0.23.23", + typescript: "~4.9.5" + }, + engines: { + node: ">=14.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" + } + }; + } +}); + +// node_modules/@aws-sdk/util-user-agent-node/dist-cjs/is-crt-available.js +var require_is_crt_available = __commonJS({ + "node_modules/@aws-sdk/util-user-agent-node/dist-cjs/is-crt-available.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isCrtAvailable = void 0; + var isCrtAvailable = () => { + try { + if (typeof require === "function" && typeof module2 !== "undefined" && require("aws-crt")) { + return ["md/crt-avail"]; + } + return null; + } catch (e) { + return null; + } + }; + exports2.isCrtAvailable = isCrtAvailable; + } +}); + +// node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js +var require_dist_cjs42 = __commonJS({ + "node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultUserAgent = exports2.UA_APP_ID_INI_NAME = exports2.UA_APP_ID_ENV_NAME = void 0; + var node_config_provider_1 = require_dist_cjs24(); + var os_1 = require("os"); + var process_1 = require("process"); + var is_crt_available_1 = require_is_crt_available(); + exports2.UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; + exports2.UA_APP_ID_INI_NAME = "sdk-ua-app-id"; + var defaultUserAgent = ({ serviceId, clientVersion }) => { + const sections = [ + ["aws-sdk-js", clientVersion], + ["ua", "2.0"], + [`os/${(0, os_1.platform)()}`, (0, os_1.release)()], + ["lang/js"], + ["md/nodejs", `${process_1.versions.node}`] + ]; + const crtAvailable = (0, is_crt_available_1.isCrtAvailable)(); + if (crtAvailable) { + sections.push(crtAvailable); + } + if (serviceId) { + sections.push([`api/${serviceId}`, clientVersion]); + } + if (process_1.env.AWS_EXECUTION_ENV) { + sections.push([`exec-env/${process_1.env.AWS_EXECUTION_ENV}`]); + } + const appIdPromise = (0, node_config_provider_1.loadConfig)({ + environmentVariableSelector: (env) => env[exports2.UA_APP_ID_ENV_NAME], + configFileSelector: (profile) => profile[exports2.UA_APP_ID_INI_NAME], + default: void 0 + })(); + let resolvedUserAgent = void 0; + return async () => { + if (!resolvedUserAgent) { + const appId = await appIdPromise; + resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections]; + } + return resolvedUserAgent; + }; + }; + exports2.defaultUserAgent = defaultUserAgent; + } +}); + +// node_modules/@smithy/hash-node/dist-cjs/index.js +var require_dist_cjs43 = __commonJS({ + "node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + Hash: () => Hash + }); + module2.exports = __toCommonJS2(src_exports); + var import_util_buffer_from = require_dist_cjs11(); + var import_util_utf8 = require_dist_cjs12(); + var import_buffer = require("buffer"); + var import_crypto8 = require("crypto"); + var _Hash = class _Hash { + constructor(algorithmIdentifier, secret) { + this.algorithmIdentifier = algorithmIdentifier; + this.secret = secret; + this.reset(); + } + update(toHash, encoding) { + this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding))); + } + digest() { + return Promise.resolve(this.hash.digest()); + } + reset() { + this.hash = this.secret ? (0, import_crypto8.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto8.createHash)(this.algorithmIdentifier); + } + }; + __name(_Hash, "Hash"); + var Hash = _Hash; + function castSourceData(toCast, encoding) { + if (import_buffer.Buffer.isBuffer(toCast)) { + return toCast; + } + if (typeof toCast === "string") { + return (0, import_util_buffer_from.fromString)(toCast, encoding); + } + if (ArrayBuffer.isView(toCast)) { + return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength); + } + return (0, import_util_buffer_from.fromArrayBuffer)(toCast); + } + __name(castSourceData, "castSourceData"); + } +}); + +// node_modules/@smithy/util-body-length-node/dist-cjs/index.js +var require_dist_cjs44 = __commonJS({ + "node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + calculateBodyLength: () => calculateBodyLength + }); + module2.exports = __toCommonJS2(src_exports); + var import_fs = require("fs"); + var calculateBodyLength = /* @__PURE__ */ __name((body) => { + if (!body) { + return 0; + } + if (typeof body === "string") { + return Buffer.byteLength(body); + } else if (typeof body.byteLength === "number") { + return body.byteLength; + } else if (typeof body.size === "number") { + return body.size; + } else if (typeof body.start === "number" && typeof body.end === "number") { + return body.end + 1 - body.start; + } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) { + return (0, import_fs.lstatSync)(body.path).size; + } else if (typeof body.fd === "number") { + return (0, import_fs.fstatSync)(body.fd).size; + } + throw new Error(`Body Length computation failed for ${body}`); + }, "calculateBodyLength"); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js +var require_ruleset = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ruleSet = void 0; + var q = "required"; + var r = "fn"; + var s = "argv"; + var t = "ref"; + var a = "isSet"; + var b = "tree"; + var c = "error"; + var d = "endpoint"; + var e = "PartitionResult"; + var f = { [q]: false, "type": "String" }; + var g = { [q]: true, "default": false, "type": "Boolean" }; + var h = { [t]: "Endpoint" }; + var i = { [r]: "booleanEquals", [s]: [{ [t]: "UseFIPS" }, true] }; + var j = { [r]: "booleanEquals", [s]: [{ [t]: "UseDualStack" }, true] }; + var k = {}; + var l = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsFIPS"] }] }; + var m = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsDualStack"] }] }; + var n = [i]; + var o = [j]; + var p = [{ [t]: "Region" }]; + var _data = { version: "1.0", parameters: { Region: f, UseDualStack: g, UseFIPS: g, Endpoint: f }, rules: [{ conditions: [{ [r]: a, [s]: [h] }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: h, properties: k, headers: k }, type: d }] }, { conditions: [{ [r]: a, [s]: p }], type: b, rules: [{ conditions: [{ [r]: "aws.partition", [s]: p, assign: e }], type: b, rules: [{ conditions: [i, j], type: b, rules: [{ conditions: [l, m], type: b, rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [l], type: b, rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [m], type: b, rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "Invalid Configuration: Missing Region", type: c }] }; + exports2.ruleSet = _data; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js +var require_endpointResolver = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultEndpointResolver = void 0; + var util_endpoints_1 = require_dist_cjs18(); + var ruleset_1 = require_ruleset(); + var defaultEndpointResolver = (endpointParams, context = {}) => { + return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { + endpointParams, + logger: context.logger + }); + }; + exports2.defaultEndpointResolver = defaultEndpointResolver; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js +var require_runtimeConfig_shared = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var smithy_client_1 = require_dist_cjs36(); + var url_parser_1 = require_dist_cjs26(); + var util_base64_1 = require_dist_cjs32(); + var util_utf8_1 = require_dist_cjs12(); + var endpointResolver_1 = require_endpointResolver(); + var getRuntimeConfig = (config) => ({ + apiVersion: "2019-06-10", + base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, + base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, + disableHostPrefix: config?.disableHostPrefix ?? false, + endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, + extensions: config?.extensions ?? [], + logger: config?.logger ?? new smithy_client_1.NoOpLogger(), + serviceId: config?.serviceId ?? "SSO", + urlParser: config?.urlParser ?? url_parser_1.parseUrl, + utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, + utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 + }); + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js +var require_dist_cjs45 = __commonJS({ + "node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) { + var __create2 = Object.create; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __getProtoOf2 = Object.getPrototypeOf; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, + mod + )); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + resolveDefaultsModeConfig: () => resolveDefaultsModeConfig + }); + module2.exports = __toCommonJS2(src_exports); + var import_config_resolver = require_dist_cjs21(); + var import_node_config_provider = require_dist_cjs24(); + var import_property_provider = require_dist_cjs8(); + var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV"; + var AWS_REGION_ENV = "AWS_REGION"; + var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION"; + var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; + var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"]; + var IMDS_REGION_PATH = "/latest/meta-data/placement/region"; + var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE"; + var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode"; + var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => { + return env[AWS_DEFAULTS_MODE_ENV]; + }, + configFileSelector: (profile) => { + return profile[AWS_DEFAULTS_MODE_CONFIG]; + }, + default: "legacy" + }; + var resolveDefaultsModeConfig = /* @__PURE__ */ __name(({ + region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS), + defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS) + } = {}) => (0, import_property_provider.memoize)(async () => { + const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode; + switch (mode == null ? void 0 : mode.toLowerCase()) { + case "auto": + return resolveNodeDefaultsModeAuto(region); + case "in-region": + case "cross-region": + case "mobile": + case "standard": + case "legacy": + return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase()); + case void 0: + return Promise.resolve("legacy"); + default: + throw new Error( + `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}` + ); + } + }), "resolveDefaultsModeConfig"); + var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name(async (clientRegion) => { + if (clientRegion) { + const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion; + const inferredRegion = await inferPhysicalRegion(); + if (!inferredRegion) { + return "standard"; + } + if (resolvedRegion === inferredRegion) { + return "in-region"; + } else { + return "cross-region"; + } + } + return "standard"; + }, "resolveNodeDefaultsModeAuto"); + var inferPhysicalRegion = /* @__PURE__ */ __name(async () => { + if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) { + return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV]; + } + if (!process.env[ENV_IMDS_DISABLED]) { + try { + const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs40())); + const endpoint = await getInstanceMetadataEndpoint(); + return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString(); + } catch (e) { + } + } + }, "inferPhysicalRegion"); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js +var require_runtimeConfig = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var package_json_1 = tslib_1.__importDefault(require_package3()); + var util_user_agent_node_1 = require_dist_cjs42(); + var config_resolver_1 = require_dist_cjs21(); + var hash_node_1 = require_dist_cjs43(); + var middleware_retry_1 = require_dist_cjs37(); + var node_config_provider_1 = require_dist_cjs24(); + var node_http_handler_1 = require_dist_cjs34(); + var util_body_length_node_1 = require_dist_cjs44(); + var util_retry_1 = require_dist_cjs30(); + var runtimeConfig_shared_1 = require_runtimeConfig_shared(); + var smithy_client_1 = require_dist_cjs36(); + var util_defaults_mode_node_1 = require_dist_cjs45(); + var smithy_client_2 = require_dist_cjs36(); + var getRuntimeConfig = (config) => { + (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); + const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); + const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); + const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); + return { + ...clientSharedValues, + ...config, + runtime: "node", + defaultsMode, + bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, + defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), + maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), + region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), + requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), + retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ + ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, + default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE + }), + sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), + streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) + }; + }; + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/extensions/index.js +var require_extensions2 = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/extensions/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveAwsRegionExtensionConfiguration = exports2.getAwsRegionExtensionConfiguration = void 0; + var getAwsRegionExtensionConfiguration = (runtimeConfig) => { + let runtimeConfigRegion = async () => { + if (runtimeConfig.region === void 0) { + throw new Error("Region is missing from runtimeConfig"); + } + const region = runtimeConfig.region; + if (typeof region === "string") { + return region; + } + return region(); + }; + return { + setRegion(region) { + runtimeConfigRegion = region; + }, + region() { + return runtimeConfigRegion; + } + }; + }; + exports2.getAwsRegionExtensionConfiguration = getAwsRegionExtensionConfiguration; + var resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => { + return { + region: awsRegionExtensionConfiguration.region() + }; + }; + exports2.resolveAwsRegionExtensionConfiguration = resolveAwsRegionExtensionConfiguration; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/config.js +var require_config = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NODE_REGION_CONFIG_FILE_OPTIONS = exports2.NODE_REGION_CONFIG_OPTIONS = exports2.REGION_INI_NAME = exports2.REGION_ENV_NAME = void 0; + exports2.REGION_ENV_NAME = "AWS_REGION"; + exports2.REGION_INI_NAME = "region"; + exports2.NODE_REGION_CONFIG_OPTIONS = { + environmentVariableSelector: (env) => env[exports2.REGION_ENV_NAME], + configFileSelector: (profile) => profile[exports2.REGION_INI_NAME], + default: () => { + throw new Error("Region is missing"); + } + }; + exports2.NODE_REGION_CONFIG_FILE_OPTIONS = { + preferredFile: "credentials" + }; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/isFipsRegion.js +var require_isFipsRegion = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/isFipsRegion.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isFipsRegion = void 0; + var isFipsRegion = (region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")); + exports2.isFipsRegion = isFipsRegion; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/getRealRegion.js +var require_getRealRegion = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/getRealRegion.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRealRegion = void 0; + var isFipsRegion_1 = require_isFipsRegion(); + var getRealRegion = (region) => (0, isFipsRegion_1.isFipsRegion)(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region; + exports2.getRealRegion = getRealRegion; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/resolveRegionConfig.js +var require_resolveRegionConfig = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/resolveRegionConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveRegionConfig = void 0; + var getRealRegion_1 = require_getRealRegion(); + var isFipsRegion_1 = require_isFipsRegion(); + var resolveRegionConfig = (input) => { + const { region, useFipsEndpoint } = input; + if (!region) { + throw new Error("Region is missing"); + } + return { + ...input, + region: async () => { + if (typeof region === "string") { + return (0, getRealRegion_1.getRealRegion)(region); + } + const providedRegion = await region(); + return (0, getRealRegion_1.getRealRegion)(providedRegion); + }, + useFipsEndpoint: async () => { + const providedRegion = typeof region === "string" ? region : await region(); + if ((0, isFipsRegion_1.isFipsRegion)(providedRegion)) { + return true; + } + return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); + } + }; + }; + exports2.resolveRegionConfig = resolveRegionConfig; + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/index.js +var require_regionConfig = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_config(), exports2); + tslib_1.__exportStar(require_resolveRegionConfig(), exports2); + } +}); + +// node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js +var require_dist_cjs46 = __commonJS({ + "node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_extensions2(), exports2); + tslib_1.__exportStar(require_regionConfig(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeExtensions.js +var require_runtimeExtensions = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeExtensions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveRuntimeExtensions = void 0; + var region_config_resolver_1 = require_dist_cjs46(); + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var asPartial = (t) => t; + var resolveRuntimeExtensions = (runtimeConfig, extensions) => { + const extensionConfiguration = { + ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) + }; + extensions.forEach((extension) => extension.configure(extensionConfiguration)); + return { + ...runtimeConfig, + ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) + }; + }; + exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/SSOClient.js +var require_SSOClient = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/SSOClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SSOClient = exports2.__Client = void 0; + var middleware_host_header_1 = require_dist_cjs5(); + var middleware_logger_1 = require_dist_cjs6(); + var middleware_recursion_detection_1 = require_dist_cjs7(); + var middleware_user_agent_1 = require_dist_cjs19(); + var config_resolver_1 = require_dist_cjs21(); + var middleware_content_length_1 = require_dist_cjs22(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_retry_1 = require_dist_cjs37(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { + return smithy_client_1.Client; + } }); + var EndpointParameters_1 = require_EndpointParameters3(); + var runtimeConfig_1 = require_runtimeConfig(); + var runtimeExtensions_1 = require_runtimeExtensions(); + var SSOClient = class extends smithy_client_1.Client { + constructor(...[configuration]) { + const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); + const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); + const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); + const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); + const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); + const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); + const _config_6 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_5); + const _config_7 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_6, configuration?.extensions || []); + super(_config_7); + this.config = _config_7; + this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); + this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); + this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); + this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); + this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); + this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); + } + destroy() { + super.destroy(); + } + }; + exports2.SSOClient = SSOClient; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/models/SSOServiceException.js +var require_SSOServiceException = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/models/SSOServiceException.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SSOServiceException = exports2.__ServiceException = void 0; + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { + return smithy_client_1.ServiceException; + } }); + var SSOServiceException = class _SSOServiceException extends smithy_client_1.ServiceException { + constructor(options) { + super(options); + Object.setPrototypeOf(this, _SSOServiceException.prototype); + } + }; + exports2.SSOServiceException = SSOServiceException; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/models/models_0.js +var require_models_03 = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/models/models_0.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogoutRequestFilterSensitiveLog = exports2.ListAccountsRequestFilterSensitiveLog = exports2.ListAccountRolesRequestFilterSensitiveLog = exports2.GetRoleCredentialsResponseFilterSensitiveLog = exports2.RoleCredentialsFilterSensitiveLog = exports2.GetRoleCredentialsRequestFilterSensitiveLog = exports2.UnauthorizedException = exports2.TooManyRequestsException = exports2.ResourceNotFoundException = exports2.InvalidRequestException = void 0; + var smithy_client_1 = require_dist_cjs36(); + var SSOServiceException_1 = require_SSOServiceException(); + var InvalidRequestException = class _InvalidRequestException extends SSOServiceException_1.SSOServiceException { + constructor(opts) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts + }); + this.name = "InvalidRequestException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidRequestException.prototype); + } + }; + exports2.InvalidRequestException = InvalidRequestException; + var ResourceNotFoundException = class _ResourceNotFoundException extends SSOServiceException_1.SSOServiceException { + constructor(opts) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts + }); + this.name = "ResourceNotFoundException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ResourceNotFoundException.prototype); + } + }; + exports2.ResourceNotFoundException = ResourceNotFoundException; + var TooManyRequestsException = class _TooManyRequestsException extends SSOServiceException_1.SSOServiceException { + constructor(opts) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts + }); + this.name = "TooManyRequestsException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _TooManyRequestsException.prototype); + } + }; + exports2.TooManyRequestsException = TooManyRequestsException; + var UnauthorizedException = class _UnauthorizedException extends SSOServiceException_1.SSOServiceException { + constructor(opts) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts + }); + this.name = "UnauthorizedException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _UnauthorizedException.prototype); + } + }; + exports2.UnauthorizedException = UnauthorizedException; + var GetRoleCredentialsRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.GetRoleCredentialsRequestFilterSensitiveLog = GetRoleCredentialsRequestFilterSensitiveLog; + var RoleCredentialsFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.secretAccessKey && { secretAccessKey: smithy_client_1.SENSITIVE_STRING }, + ...obj.sessionToken && { sessionToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.RoleCredentialsFilterSensitiveLog = RoleCredentialsFilterSensitiveLog; + var GetRoleCredentialsResponseFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.roleCredentials && { roleCredentials: (0, exports2.RoleCredentialsFilterSensitiveLog)(obj.roleCredentials) } + }); + exports2.GetRoleCredentialsResponseFilterSensitiveLog = GetRoleCredentialsResponseFilterSensitiveLog; + var ListAccountRolesRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.ListAccountRolesRequestFilterSensitiveLog = ListAccountRolesRequestFilterSensitiveLog; + var ListAccountsRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.ListAccountsRequestFilterSensitiveLog = ListAccountsRequestFilterSensitiveLog; + var LogoutRequestFilterSensitiveLog = (obj) => ({ + ...obj, + ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } + }); + exports2.LogoutRequestFilterSensitiveLog = LogoutRequestFilterSensitiveLog; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/protocols/Aws_restJson1.js +var require_Aws_restJson1 = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/protocols/Aws_restJson1.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.de_LogoutCommand = exports2.de_ListAccountsCommand = exports2.de_ListAccountRolesCommand = exports2.de_GetRoleCredentialsCommand = exports2.se_LogoutCommand = exports2.se_ListAccountsCommand = exports2.se_ListAccountRolesCommand = exports2.se_GetRoleCredentialsCommand = void 0; + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var models_0_1 = require_models_03(); + var SSOServiceException_1 = require_SSOServiceException(); + var se_GetRoleCredentialsCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { + "x-amz-sso_bearer_token": input.accessToken + }); + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/federation/credentials`; + const query = (0, smithy_client_1.map)({ + role_name: [, (0, smithy_client_1.expectNonNull)(input.roleName, `roleName`)], + account_id: [, (0, smithy_client_1.expectNonNull)(input.accountId, `accountId`)] + }); + let body; + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body + }); + }; + exports2.se_GetRoleCredentialsCommand = se_GetRoleCredentialsCommand; + var se_ListAccountRolesCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { + "x-amz-sso_bearer_token": input.accessToken + }); + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/assignment/roles`; + const query = (0, smithy_client_1.map)({ + next_token: [, input.nextToken], + max_result: [() => input.maxResults !== void 0, () => input.maxResults.toString()], + account_id: [, (0, smithy_client_1.expectNonNull)(input.accountId, `accountId`)] + }); + let body; + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body + }); + }; + exports2.se_ListAccountRolesCommand = se_ListAccountRolesCommand; + var se_ListAccountsCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { + "x-amz-sso_bearer_token": input.accessToken + }); + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/assignment/accounts`; + const query = (0, smithy_client_1.map)({ + next_token: [, input.nextToken], + max_result: [() => input.maxResults !== void 0, () => input.maxResults.toString()] + }); + let body; + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body + }); + }; + exports2.se_ListAccountsCommand = se_ListAccountsCommand; + var se_LogoutCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { + "x-amz-sso_bearer_token": input.accessToken + }); + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/logout`; + let body; + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body + }); + }; + exports2.se_LogoutCommand = se_LogoutCommand; + var de_GetRoleCredentialsCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_GetRoleCredentialsCommandError(output, context); + } + const contents = (0, smithy_client_1.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_1.take)(data, { + roleCredentials: smithy_client_1._json + }); + Object.assign(contents, doc); + return contents; + }; + exports2.de_GetRoleCredentialsCommand = de_GetRoleCredentialsCommand; + var de_GetRoleCredentialsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InvalidRequestException": + case "com.amazonaws.sso#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.sso#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.sso#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + case "UnauthorizedException": + case "com.amazonaws.sso#UnauthorizedException": + throw await de_UnauthorizedExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListAccountRolesCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListAccountRolesCommandError(output, context); + } + const contents = (0, smithy_client_1.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_1.take)(data, { + nextToken: smithy_client_1.expectString, + roleList: smithy_client_1._json + }); + Object.assign(contents, doc); + return contents; + }; + exports2.de_ListAccountRolesCommand = de_ListAccountRolesCommand; + var de_ListAccountRolesCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InvalidRequestException": + case "com.amazonaws.sso#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.sso#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.sso#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + case "UnauthorizedException": + case "com.amazonaws.sso#UnauthorizedException": + throw await de_UnauthorizedExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_ListAccountsCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListAccountsCommandError(output, context); + } + const contents = (0, smithy_client_1.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_1.take)(data, { + accountList: smithy_client_1._json, + nextToken: smithy_client_1.expectString + }); + Object.assign(contents, doc); + return contents; + }; + exports2.de_ListAccountsCommand = de_ListAccountsCommand; + var de_ListAccountsCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InvalidRequestException": + case "com.amazonaws.sso#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.sso#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.sso#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + case "UnauthorizedException": + case "com.amazonaws.sso#UnauthorizedException": + throw await de_UnauthorizedExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_LogoutCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_LogoutCommandError(output, context); + } + const contents = (0, smithy_client_1.map)({ + $metadata: deserializeMetadata(output) + }); + await (0, smithy_client_1.collectBody)(output.body, context); + return contents; + }; + exports2.de_LogoutCommand = de_LogoutCommand; + var de_LogoutCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InvalidRequestException": + case "com.amazonaws.sso#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.sso#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + case "UnauthorizedException": + case "com.amazonaws.sso#UnauthorizedException": + throw await de_UnauthorizedExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var throwDefaultError = (0, smithy_client_1.withBaseException)(SSOServiceException_1.SSOServiceException); + var de_InvalidRequestExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_1.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_1.take)(data, { + message: smithy_client_1.expectString + }); + Object.assign(contents, doc); + const exception = new models_0_1.InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); + }; + var de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_1.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_1.take)(data, { + message: smithy_client_1.expectString + }); + Object.assign(contents, doc); + const exception = new models_0_1.ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); + }; + var de_TooManyRequestsExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_1.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_1.take)(data, { + message: smithy_client_1.expectString + }); + Object.assign(contents, doc); + const exception = new models_0_1.TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); + }; + var de_UnauthorizedExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_1.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_1.take)(data, { + message: smithy_client_1.expectString + }); + Object.assign(contents, doc); + const exception = new models_0_1.UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); + }; + var deserializeMetadata = (output) => ({ + httpStatusCode: output.statusCode, + requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"] + }); + var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); + var isSerializableHeaderValue = (value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0); + var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { + if (encoded.length) { + return JSON.parse(encoded); + } + return {}; + }); + var parseErrorBody = async (errorBody, context) => { + const value = await parseBody(errorBody, context); + value.message = value.message ?? value.Message; + return value; + }; + var loadRestJsonErrorCode = (output, data) => { + const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase()); + const sanitizeErrorCode = (rawValue) => { + let cleanValue = rawValue; + if (typeof cleanValue === "number") { + cleanValue = cleanValue.toString(); + } + if (cleanValue.indexOf(",") >= 0) { + cleanValue = cleanValue.split(",")[0]; + } + if (cleanValue.indexOf(":") >= 0) { + cleanValue = cleanValue.split(":")[0]; + } + if (cleanValue.indexOf("#") >= 0) { + cleanValue = cleanValue.split("#")[1]; + } + return cleanValue; + }; + const headerKey = findKey(output.headers, "x-amzn-errortype"); + if (headerKey !== void 0) { + return sanitizeErrorCode(output.headers[headerKey]); + } + if (data.code !== void 0) { + return sanitizeErrorCode(data.code); + } + if (data["__type"] !== void 0) { + return sanitizeErrorCode(data["__type"]); + } + }; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/commands/GetRoleCredentialsCommand.js +var require_GetRoleCredentialsCommand = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/commands/GetRoleCredentialsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetRoleCredentialsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_03(); + var Aws_restJson1_1 = require_Aws_restJson1(); + var GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetRoleCredentialsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOClient"; + const commandName = "GetRoleCredentialsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.GetRoleCredentialsRequestFilterSensitiveLog, + outputFilterSensitiveLog: models_0_1.GetRoleCredentialsResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "SWBPortalService", + operation: "GetRoleCredentials" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_restJson1_1.se_GetRoleCredentialsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_restJson1_1.de_GetRoleCredentialsCommand)(output, context); + } + }; + exports2.GetRoleCredentialsCommand = GetRoleCredentialsCommand; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountRolesCommand.js +var require_ListAccountRolesCommand = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountRolesCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListAccountRolesCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_03(); + var Aws_restJson1_1 = require_Aws_restJson1(); + var ListAccountRolesCommand = class _ListAccountRolesCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListAccountRolesCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOClient"; + const commandName = "ListAccountRolesCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.ListAccountRolesRequestFilterSensitiveLog, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "SWBPortalService", + operation: "ListAccountRoles" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_restJson1_1.se_ListAccountRolesCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_restJson1_1.de_ListAccountRolesCommand)(output, context); + } + }; + exports2.ListAccountRolesCommand = ListAccountRolesCommand; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountsCommand.js +var require_ListAccountsCommand = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListAccountsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_03(); + var Aws_restJson1_1 = require_Aws_restJson1(); + var ListAccountsCommand = class _ListAccountsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListAccountsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOClient"; + const commandName = "ListAccountsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.ListAccountsRequestFilterSensitiveLog, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "SWBPortalService", + operation: "ListAccounts" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_restJson1_1.se_ListAccountsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_restJson1_1.de_ListAccountsCommand)(output, context); + } + }; + exports2.ListAccountsCommand = ListAccountsCommand; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/commands/LogoutCommand.js +var require_LogoutCommand = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/commands/LogoutCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogoutCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_03(); + var Aws_restJson1_1 = require_Aws_restJson1(); + var LogoutCommand = class _LogoutCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _LogoutCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOClient"; + const commandName = "LogoutCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.LogoutRequestFilterSensitiveLog, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "SWBPortalService", + operation: "Logout" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_restJson1_1.se_LogoutCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_restJson1_1.de_LogoutCommand)(output, context); + } + }; + exports2.LogoutCommand = LogoutCommand; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/SSO.js +var require_SSO = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/SSO.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SSO = void 0; + var smithy_client_1 = require_dist_cjs36(); + var GetRoleCredentialsCommand_1 = require_GetRoleCredentialsCommand(); + var ListAccountRolesCommand_1 = require_ListAccountRolesCommand(); + var ListAccountsCommand_1 = require_ListAccountsCommand(); + var LogoutCommand_1 = require_LogoutCommand(); + var SSOClient_1 = require_SSOClient(); + var commands = { + GetRoleCredentialsCommand: GetRoleCredentialsCommand_1.GetRoleCredentialsCommand, + ListAccountRolesCommand: ListAccountRolesCommand_1.ListAccountRolesCommand, + ListAccountsCommand: ListAccountsCommand_1.ListAccountsCommand, + LogoutCommand: LogoutCommand_1.LogoutCommand + }; + var SSO = class extends SSOClient_1.SSOClient { + }; + exports2.SSO = SSO; + (0, smithy_client_1.createAggregatedClient)(commands, SSO); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/commands/index.js +var require_commands = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/commands/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_GetRoleCredentialsCommand(), exports2); + tslib_1.__exportStar(require_ListAccountRolesCommand(), exports2); + tslib_1.__exportStar(require_ListAccountsCommand(), exports2); + tslib_1.__exportStar(require_LogoutCommand(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/Interfaces.js +var require_Interfaces = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/Interfaces.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountRolesPaginator.js +var require_ListAccountRolesPaginator = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountRolesPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListAccountRoles = void 0; + var ListAccountRolesCommand_1 = require_ListAccountRolesCommand(); + var SSOClient_1 = require_SSOClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListAccountRolesCommand_1.ListAccountRolesCommand(input), ...args); + }; + async function* paginateListAccountRoles(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof SSOClient_1.SSOClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected SSO | SSOClient"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListAccountRoles = paginateListAccountRoles; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountsPaginator.js +var require_ListAccountsPaginator = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountsPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListAccounts = void 0; + var ListAccountsCommand_1 = require_ListAccountsCommand(); + var SSOClient_1 = require_SSOClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListAccountsCommand_1.ListAccountsCommand(input), ...args); + }; + async function* paginateListAccounts(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof SSOClient_1.SSOClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected SSO | SSOClient"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListAccounts = paginateListAccounts; + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/index.js +var require_pagination2 = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_Interfaces(), exports2); + tslib_1.__exportStar(require_ListAccountRolesPaginator(), exports2); + tslib_1.__exportStar(require_ListAccountsPaginator(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/models/index.js +var require_models = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/models/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_models_03(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sso/dist-cjs/index.js +var require_dist_cjs47 = __commonJS({ + "node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SSOServiceException = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_SSOClient(), exports2); + tslib_1.__exportStar(require_SSO(), exports2); + tslib_1.__exportStar(require_commands(), exports2); + tslib_1.__exportStar(require_pagination2(), exports2); + tslib_1.__exportStar(require_models(), exports2); + var SSOServiceException_1 = require_SSOServiceException(); + Object.defineProperty(exports2, "SSOServiceException", { enumerable: true, get: function() { + return SSOServiceException_1.SSOServiceException; + } }); + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/bundle/client-sso-oidc-node.js +var require_client_sso_oidc_node = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/bundle/client-sso-oidc-node.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UnsupportedGrantTypeException = exports2.UnauthorizedClientException = exports2.SlowDownException = exports2.SSOOIDCClient = exports2.InvalidScopeException = exports2.InvalidRequestException = exports2.InvalidClientException = exports2.InternalServerException = exports2.ExpiredTokenException = exports2.CreateTokenCommand = exports2.AuthorizationPendingException = exports2.AccessDeniedException = void 0; + var middleware_host_header_1 = require_dist_cjs5(); + var middleware_logger_1 = require_dist_cjs6(); + var middleware_recursion_detection_1 = require_dist_cjs7(); + var middleware_user_agent_1 = require_dist_cjs19(); + var config_resolver_1 = require_dist_cjs21(); + var middleware_content_length_1 = require_dist_cjs22(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_retry_1 = require_dist_cjs37(); + var smithy_client_1 = require_dist_cjs36(); + var resolveClientEndpointParameters = (options) => { + var _a, _b; + return { + ...options, + useDualstackEndpoint: (_a = options.useDualstackEndpoint) !== null && _a !== void 0 ? _a : false, + useFipsEndpoint: (_b = options.useFipsEndpoint) !== null && _b !== void 0 ? _b : false, + defaultSigningName: "awsssooidc" + }; + }; + var package_default = { version: "3.387.0" }; + var util_user_agent_node_1 = require_dist_cjs42(); + var config_resolver_2 = require_dist_cjs21(); + var hash_node_1 = require_dist_cjs43(); + var middleware_retry_2 = require_dist_cjs37(); + var node_config_provider_1 = require_dist_cjs24(); + var node_http_handler_1 = require_dist_cjs34(); + var util_body_length_node_1 = require_dist_cjs44(); + var util_retry_1 = require_dist_cjs30(); + var smithy_client_2 = require_dist_cjs36(); + var url_parser_1 = require_dist_cjs26(); + var util_base64_1 = require_dist_cjs32(); + var util_utf8_1 = require_dist_cjs12(); + var util_endpoints_1 = require_dist_cjs18(); + var p = "required"; + var q = "fn"; + var r = "argv"; + var s = "ref"; + var a = "PartitionResult"; + var b = "tree"; + var c = "error"; + var d = "endpoint"; + var e = { [p]: false, "type": "String" }; + var f = { [p]: true, "default": false, "type": "Boolean" }; + var g = { [s]: "Endpoint" }; + var h = { [q]: "booleanEquals", [r]: [{ [s]: "UseFIPS" }, true] }; + var i = { [q]: "booleanEquals", [r]: [{ [s]: "UseDualStack" }, true] }; + var j = {}; + var k = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: a }, "supportsFIPS"] }] }; + var l = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: a }, "supportsDualStack"] }] }; + var m = [g]; + var n = [h]; + var o = [i]; + var _data = { version: "1.0", parameters: { Region: e, UseDualStack: f, UseFIPS: f, Endpoint: e }, rules: [{ conditions: [{ [q]: "aws.partition", [r]: [{ [s]: "Region" }], assign: a }], type: b, rules: [{ conditions: [{ [q]: "isSet", [r]: m }, { [q]: "parseURL", [r]: m, assign: "url" }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { type: b, rules: [{ conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: g, properties: j, headers: j }, type: d }] }] }, { conditions: [h, i], type: b, rules: [{ conditions: [k, l], type: b, rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: j, headers: j }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [k], type: b, rules: [{ type: b, rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: j, headers: j }, type: d }] }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [l], type: b, rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: j, headers: j }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: j, headers: j }, type: d }] }] }; + var ruleSet = _data; + var defaultEndpointResolver = (endpointParams, context = {}) => { + return (0, util_endpoints_1.resolveEndpoint)(ruleSet, { + endpointParams, + logger: context.logger + }); + }; + var getRuntimeConfig = (config) => { + var _a, _b, _c, _d, _e, _f, _g, _h, _j; + return { + apiVersion: "2019-06-10", + base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : util_base64_1.fromBase64, + base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : util_base64_1.toBase64, + disableHostPrefix: (_c = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _c !== void 0 ? _c : false, + endpointProvider: (_d = config === null || config === void 0 ? void 0 : config.endpointProvider) !== null && _d !== void 0 ? _d : defaultEndpointResolver, + logger: (_e = config === null || config === void 0 ? void 0 : config.logger) !== null && _e !== void 0 ? _e : new smithy_client_2.NoOpLogger(), + serviceId: (_f = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _f !== void 0 ? _f : "SSO OIDC", + urlParser: (_g = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _g !== void 0 ? _g : url_parser_1.parseUrl, + utf8Decoder: (_h = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _h !== void 0 ? _h : util_utf8_1.fromUtf8, + utf8Encoder: (_j = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _j !== void 0 ? _j : util_utf8_1.toUtf8 + }; + }; + var smithy_client_3 = require_dist_cjs36(); + var util_defaults_mode_node_1 = require_dist_cjs45(); + var smithy_client_4 = require_dist_cjs36(); + var getRuntimeConfig2 = (config) => { + var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; + (0, smithy_client_4.emitWarningIfUnsupportedVersion)(process.version); + const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); + const defaultConfigProvider = () => defaultsMode().then(smithy_client_3.loadConfigsForDefaultMode); + const clientSharedValues = getRuntimeConfig(config); + return { + ...clientSharedValues, + ...config, + runtime: "node", + defaultsMode, + bodyLengthChecker: (_a = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _a !== void 0 ? _a : util_body_length_node_1.calculateBodyLength, + defaultUserAgentProvider: (_b = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _b !== void 0 ? _b : (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_default.version }), + maxAttempts: (_c = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _c !== void 0 ? _c : (0, node_config_provider_1.loadConfig)(middleware_retry_2.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), + region: (_d = config === null || config === void 0 ? void 0 : config.region) !== null && _d !== void 0 ? _d : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_REGION_CONFIG_OPTIONS, config_resolver_2.NODE_REGION_CONFIG_FILE_OPTIONS), + requestHandler: (_e = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _e !== void 0 ? _e : new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), + retryMode: (_f = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _f !== void 0 ? _f : (0, node_config_provider_1.loadConfig)({ + ...middleware_retry_2.NODE_RETRY_MODE_CONFIG_OPTIONS, + default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE + }), + sha256: (_g = config === null || config === void 0 ? void 0 : config.sha256) !== null && _g !== void 0 ? _g : hash_node_1.Hash.bind(null, "sha256"), + streamCollector: (_h = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _h !== void 0 ? _h : node_http_handler_1.streamCollector, + useDualstackEndpoint: (_j = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _j !== void 0 ? _j : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: (_k = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _k !== void 0 ? _k : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) + }; + }; + var SSOOIDCClient = class extends smithy_client_1.Client { + constructor(...[configuration]) { + const _config_0 = getRuntimeConfig2(configuration || {}); + const _config_1 = resolveClientEndpointParameters(_config_0); + const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); + const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); + const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); + const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); + const _config_6 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_5); + super(_config_6); + this.config = _config_6; + this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); + this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); + this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); + this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); + this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); + this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); + } + destroy() { + super.destroy(); + } + }; + exports2.SSOOIDCClient = SSOOIDCClient; + var smithy_client_5 = require_dist_cjs36(); + var middleware_endpoint_2 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_6 = require_dist_cjs36(); + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_7 = require_dist_cjs36(); + var smithy_client_8 = require_dist_cjs36(); + var SSOOIDCServiceException = class _SSOOIDCServiceException extends smithy_client_8.ServiceException { + constructor(options) { + super(options); + Object.setPrototypeOf(this, _SSOOIDCServiceException.prototype); + } + }; + var AccessDeniedException = class _AccessDeniedException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts + }); + this.name = "AccessDeniedException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _AccessDeniedException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.AccessDeniedException = AccessDeniedException; + var AuthorizationPendingException = class _AuthorizationPendingException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "AuthorizationPendingException", + $fault: "client", + ...opts + }); + this.name = "AuthorizationPendingException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _AuthorizationPendingException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.AuthorizationPendingException = AuthorizationPendingException; + var ExpiredTokenException = class _ExpiredTokenException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "ExpiredTokenException", + $fault: "client", + ...opts + }); + this.name = "ExpiredTokenException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _ExpiredTokenException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.ExpiredTokenException = ExpiredTokenException; + var InternalServerException = class _InternalServerException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts + }); + this.name = "InternalServerException"; + this.$fault = "server"; + Object.setPrototypeOf(this, _InternalServerException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.InternalServerException = InternalServerException; + var InvalidClientException = class _InvalidClientException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InvalidClientException", + $fault: "client", + ...opts + }); + this.name = "InvalidClientException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidClientException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.InvalidClientException = InvalidClientException; + var InvalidGrantException = class _InvalidGrantException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InvalidGrantException", + $fault: "client", + ...opts + }); + this.name = "InvalidGrantException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidGrantException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + var InvalidRequestException = class _InvalidRequestException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts + }); + this.name = "InvalidRequestException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidRequestException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.InvalidRequestException = InvalidRequestException; + var InvalidScopeException = class _InvalidScopeException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InvalidScopeException", + $fault: "client", + ...opts + }); + this.name = "InvalidScopeException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidScopeException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.InvalidScopeException = InvalidScopeException; + var SlowDownException = class _SlowDownException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "SlowDownException", + $fault: "client", + ...opts + }); + this.name = "SlowDownException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _SlowDownException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.SlowDownException = SlowDownException; + var UnauthorizedClientException = class _UnauthorizedClientException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "UnauthorizedClientException", + $fault: "client", + ...opts + }); + this.name = "UnauthorizedClientException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _UnauthorizedClientException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.UnauthorizedClientException = UnauthorizedClientException; + var UnsupportedGrantTypeException = class _UnsupportedGrantTypeException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "UnsupportedGrantTypeException", + $fault: "client", + ...opts + }); + this.name = "UnsupportedGrantTypeException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _UnsupportedGrantTypeException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + exports2.UnsupportedGrantTypeException = UnsupportedGrantTypeException; + var InvalidClientMetadataException = class _InvalidClientMetadataException extends SSOOIDCServiceException { + constructor(opts) { + super({ + name: "InvalidClientMetadataException", + $fault: "client", + ...opts + }); + this.name = "InvalidClientMetadataException"; + this.$fault = "client"; + Object.setPrototypeOf(this, _InvalidClientMetadataException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } + }; + var se_CreateTokenCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = { + "content-type": "application/json" + }; + const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/token`; + let body; + body = JSON.stringify((0, smithy_client_7.take)(input, { + clientId: [], + clientSecret: [], + code: [], + deviceCode: [], + grantType: [], + redirectUri: [], + refreshToken: [], + scope: (_) => (0, smithy_client_7._json)(_) + })); + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body + }); + }; + var se_RegisterClientCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = { + "content-type": "application/json" + }; + const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/client/register`; + let body; + body = JSON.stringify((0, smithy_client_7.take)(input, { + clientName: [], + clientType: [], + scopes: (_) => (0, smithy_client_7._json)(_) + })); + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body + }); + }; + var se_StartDeviceAuthorizationCommand = async (input, context) => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers = { + "content-type": "application/json" + }; + const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/device_authorization`; + let body; + body = JSON.stringify((0, smithy_client_7.take)(input, { + clientId: [], + clientSecret: [], + startUrl: [] + })); + return new protocol_http_1.HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body + }); + }; + var de_CreateTokenCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CreateTokenCommandError(output, context); + } + const contents = (0, smithy_client_7.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_7.take)(data, { + accessToken: smithy_client_7.expectString, + expiresIn: smithy_client_7.expectInt32, + idToken: smithy_client_7.expectString, + refreshToken: smithy_client_7.expectString, + tokenType: smithy_client_7.expectString + }); + Object.assign(contents, doc); + return contents; + }; + var de_CreateTokenCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.ssooidc#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "AuthorizationPendingException": + case "com.amazonaws.ssooidc#AuthorizationPendingException": + throw await de_AuthorizationPendingExceptionRes(parsedOutput, context); + case "ExpiredTokenException": + case "com.amazonaws.ssooidc#ExpiredTokenException": + throw await de_ExpiredTokenExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.ssooidc#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "InvalidClientException": + case "com.amazonaws.ssooidc#InvalidClientException": + throw await de_InvalidClientExceptionRes(parsedOutput, context); + case "InvalidGrantException": + case "com.amazonaws.ssooidc#InvalidGrantException": + throw await de_InvalidGrantExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.ssooidc#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "InvalidScopeException": + case "com.amazonaws.ssooidc#InvalidScopeException": + throw await de_InvalidScopeExceptionRes(parsedOutput, context); + case "SlowDownException": + case "com.amazonaws.ssooidc#SlowDownException": + throw await de_SlowDownExceptionRes(parsedOutput, context); + case "UnauthorizedClientException": + case "com.amazonaws.ssooidc#UnauthorizedClientException": + throw await de_UnauthorizedClientExceptionRes(parsedOutput, context); + case "UnsupportedGrantTypeException": + case "com.amazonaws.ssooidc#UnsupportedGrantTypeException": + throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_RegisterClientCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_RegisterClientCommandError(output, context); + } + const contents = (0, smithy_client_7.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_7.take)(data, { + authorizationEndpoint: smithy_client_7.expectString, + clientId: smithy_client_7.expectString, + clientIdIssuedAt: smithy_client_7.expectLong, + clientSecret: smithy_client_7.expectString, + clientSecretExpiresAt: smithy_client_7.expectLong, + tokenEndpoint: smithy_client_7.expectString + }); + Object.assign(contents, doc); + return contents; + }; + var de_RegisterClientCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.ssooidc#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "InvalidClientMetadataException": + case "com.amazonaws.ssooidc#InvalidClientMetadataException": + throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.ssooidc#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "InvalidScopeException": + case "com.amazonaws.ssooidc#InvalidScopeException": + throw await de_InvalidScopeExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var de_StartDeviceAuthorizationCommand = async (output, context) => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_StartDeviceAuthorizationCommandError(output, context); + } + const contents = (0, smithy_client_7.map)({ + $metadata: deserializeMetadata(output) + }); + const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); + const doc = (0, smithy_client_7.take)(data, { + deviceCode: smithy_client_7.expectString, + expiresIn: smithy_client_7.expectInt32, + interval: smithy_client_7.expectInt32, + userCode: smithy_client_7.expectString, + verificationUri: smithy_client_7.expectString, + verificationUriComplete: smithy_client_7.expectString + }); + Object.assign(contents, doc); + return contents; + }; + var de_StartDeviceAuthorizationCommandError = async (output, context) => { + const parsedOutput = { + ...output, + body: await parseErrorBody(output.body, context) + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.ssooidc#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "InvalidClientException": + case "com.amazonaws.ssooidc#InvalidClientException": + throw await de_InvalidClientExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.ssooidc#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "SlowDownException": + case "com.amazonaws.ssooidc#SlowDownException": + throw await de_SlowDownExceptionRes(parsedOutput, context); + case "UnauthorizedClientException": + case "com.amazonaws.ssooidc#UnauthorizedClientException": + throw await de_UnauthorizedClientExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode + }); + } + }; + var throwDefaultError = (0, smithy_client_7.withBaseException)(SSOOIDCServiceException); + var de_AccessDeniedExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_AuthorizationPendingExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new AuthorizationPendingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_ExpiredTokenExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new ExpiredTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InternalServerExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InvalidClientExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InvalidClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InvalidClientMetadataExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InvalidClientMetadataException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InvalidGrantExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InvalidGrantException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InvalidRequestExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_InvalidScopeExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new InvalidScopeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_SlowDownExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new SlowDownException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_UnauthorizedClientExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new UnauthorizedClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var de_UnsupportedGrantTypeExceptionRes = async (parsedOutput, context) => { + const contents = (0, smithy_client_7.map)({}); + const data = parsedOutput.body; + const doc = (0, smithy_client_7.take)(data, { + error: smithy_client_7.expectString, + error_description: smithy_client_7.expectString + }); + Object.assign(contents, doc); + const exception = new UnsupportedGrantTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents + }); + return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); + }; + var deserializeMetadata = (output) => { + var _a, _b; + return { + httpStatusCode: output.statusCode, + requestId: (_b = (_a = output.headers["x-amzn-requestid"]) !== null && _a !== void 0 ? _a : output.headers["x-amzn-request-id"]) !== null && _b !== void 0 ? _b : output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"] + }; + }; + var collectBodyString = (streamBody, context) => (0, smithy_client_7.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); + var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { + if (encoded.length) { + return JSON.parse(encoded); + } + return {}; + }); + var parseErrorBody = async (errorBody, context) => { + var _a; + const value = await parseBody(errorBody, context); + value.message = (_a = value.message) !== null && _a !== void 0 ? _a : value.Message; + return value; + }; + var loadRestJsonErrorCode = (output, data) => { + const findKey = (object, key) => Object.keys(object).find((k2) => k2.toLowerCase() === key.toLowerCase()); + const sanitizeErrorCode = (rawValue) => { + let cleanValue = rawValue; + if (typeof cleanValue === "number") { + cleanValue = cleanValue.toString(); + } + if (cleanValue.indexOf(",") >= 0) { + cleanValue = cleanValue.split(",")[0]; + } + if (cleanValue.indexOf(":") >= 0) { + cleanValue = cleanValue.split(":")[0]; + } + if (cleanValue.indexOf("#") >= 0) { + cleanValue = cleanValue.split("#")[1]; + } + return cleanValue; + }; + const headerKey = findKey(output.headers, "x-amzn-errortype"); + if (headerKey !== void 0) { + return sanitizeErrorCode(output.headers[headerKey]); + } + if (data.code !== void 0) { + return sanitizeErrorCode(data.code); + } + if (data["__type"] !== void 0) { + return sanitizeErrorCode(data["__type"]); + } + }; + var CreateTokenCommand = class _CreateTokenCommand extends smithy_client_6.Command { + constructor(input) { + super(); + this.input = input; + } + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_2.getEndpointPlugin)(configuration, _CreateTokenCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOOIDCClient"; + const commandName = "CreateTokenCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _ + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return se_CreateTokenCommand(input, context); + } + deserialize(output, context) { + return de_CreateTokenCommand(output, context); + } + }; + exports2.CreateTokenCommand = CreateTokenCommand; + var middleware_endpoint_3 = require_dist_cjs28(); + var middleware_serde_2 = require_dist_cjs27(); + var smithy_client_9 = require_dist_cjs36(); + var RegisterClientCommand = class _RegisterClientCommand extends smithy_client_9.Command { + constructor(input) { + super(); + this.input = input; + } + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_2.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_3.getEndpointPlugin)(configuration, _RegisterClientCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOOIDCClient"; + const commandName = "RegisterClientCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _ + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return se_RegisterClientCommand(input, context); + } + deserialize(output, context) { + return de_RegisterClientCommand(output, context); + } + }; + var middleware_endpoint_4 = require_dist_cjs28(); + var middleware_serde_3 = require_dist_cjs27(); + var smithy_client_10 = require_dist_cjs36(); + var StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends smithy_client_10.Command { + constructor(input) { + super(); + this.input = input; + } + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_3.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_4.getEndpointPlugin)(configuration, _StartDeviceAuthorizationCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "SSOOIDCClient"; + const commandName = "StartDeviceAuthorizationCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _ + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return se_StartDeviceAuthorizationCommand(input, context); + } + deserialize(output, context) { + return de_StartDeviceAuthorizationCommand(output, context); + } + }; + var commands = { + CreateTokenCommand, + RegisterClientCommand, + StartDeviceAuthorizationCommand + }; + var SSOOIDC = class extends SSOOIDCClient { + }; + (0, smithy_client_5.createAggregatedClient)(commands, SSOOIDC); + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/constants.js +var require_constants2 = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.REFRESH_MESSAGE = exports2.EXPIRE_WINDOW_MS = void 0; + exports2.EXPIRE_WINDOW_MS = 5 * 60 * 1e3; + exports2.REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/getSsoOidcClient.js +var require_getSsoOidcClient = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/getSsoOidcClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSsoOidcClient = void 0; + var client_sso_oidc_node_1 = require_client_sso_oidc_node(); + var ssoOidcClientsHash = {}; + var getSsoOidcClient = (ssoRegion) => { + if (ssoOidcClientsHash[ssoRegion]) { + return ssoOidcClientsHash[ssoRegion]; + } + const ssoOidcClient = new client_sso_oidc_node_1.SSOOIDCClient({ region: ssoRegion }); + ssoOidcClientsHash[ssoRegion] = ssoOidcClient; + return ssoOidcClient; + }; + exports2.getSsoOidcClient = getSsoOidcClient; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/getNewSsoOidcToken.js +var require_getNewSsoOidcToken = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/getNewSsoOidcToken.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNewSsoOidcToken = void 0; + var client_sso_oidc_node_1 = require_client_sso_oidc_node(); + var getSsoOidcClient_1 = require_getSsoOidcClient(); + var getNewSsoOidcToken = (ssoToken, ssoRegion) => { + const ssoOidcClient = (0, getSsoOidcClient_1.getSsoOidcClient)(ssoRegion); + return ssoOidcClient.send(new client_sso_oidc_node_1.CreateTokenCommand({ + clientId: ssoToken.clientId, + clientSecret: ssoToken.clientSecret, + refreshToken: ssoToken.refreshToken, + grantType: "refresh_token" + })); + }; + exports2.getNewSsoOidcToken = getNewSsoOidcToken; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenExpiry.js +var require_validateTokenExpiry = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenExpiry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateTokenExpiry = void 0; + var property_provider_1 = require_dist_cjs8(); + var constants_1 = require_constants2(); + var validateTokenExpiry = (token) => { + if (token.expiration && token.expiration.getTime() < Date.now()) { + throw new property_provider_1.TokenProviderError(`Token is expired. ${constants_1.REFRESH_MESSAGE}`, false); + } + }; + exports2.validateTokenExpiry = validateTokenExpiry; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenKey.js +var require_validateTokenKey = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenKey.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateTokenKey = void 0; + var property_provider_1 = require_dist_cjs8(); + var constants_1 = require_constants2(); + var validateTokenKey = (key, value, forRefresh = false) => { + if (typeof value === "undefined") { + throw new property_provider_1.TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${constants_1.REFRESH_MESSAGE}`, false); + } + }; + exports2.validateTokenKey = validateTokenKey; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/writeSSOTokenToFile.js +var require_writeSSOTokenToFile = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/writeSSOTokenToFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.writeSSOTokenToFile = void 0; + var shared_ini_file_loader_1 = require_dist_cjs23(); + var fs_1 = require("fs"); + var { writeFile } = fs_1.promises; + var writeSSOTokenToFile = (id, ssoToken) => { + const tokenFilepath = (0, shared_ini_file_loader_1.getSSOTokenFilepath)(id); + const tokenString = JSON.stringify(ssoToken, null, 2); + return writeFile(tokenFilepath, tokenString); + }; + exports2.writeSSOTokenToFile = writeSSOTokenToFile; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/fromSso.js +var require_fromSso = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/fromSso.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromSso = void 0; + var property_provider_1 = require_dist_cjs8(); + var shared_ini_file_loader_1 = require_dist_cjs23(); + var constants_1 = require_constants2(); + var getNewSsoOidcToken_1 = require_getNewSsoOidcToken(); + var validateTokenExpiry_1 = require_validateTokenExpiry(); + var validateTokenKey_1 = require_validateTokenKey(); + var writeSSOTokenToFile_1 = require_writeSSOTokenToFile(); + var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0); + var fromSso = (init = {}) => async () => { + const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); + const profileName = (0, shared_ini_file_loader_1.getProfileName)(init); + const profile = profiles[profileName]; + if (!profile) { + throw new property_provider_1.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false); + } else if (!profile["sso_session"]) { + throw new property_provider_1.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`); + } + const ssoSessionName = profile["sso_session"]; + const ssoSessions = await (0, shared_ini_file_loader_1.loadSsoSessionData)(init); + const ssoSession = ssoSessions[ssoSessionName]; + if (!ssoSession) { + throw new property_provider_1.TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false); + } + for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) { + if (!ssoSession[ssoSessionRequiredKey]) { + throw new property_provider_1.TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false); + } + } + const ssoStartUrl = ssoSession["sso_start_url"]; + const ssoRegion = ssoSession["sso_region"]; + let ssoToken; + try { + ssoToken = await (0, shared_ini_file_loader_1.getSSOTokenFromFile)(ssoSessionName); + } catch (e) { + throw new property_provider_1.TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${constants_1.REFRESH_MESSAGE}`, false); + } + (0, validateTokenKey_1.validateTokenKey)("accessToken", ssoToken.accessToken); + (0, validateTokenKey_1.validateTokenKey)("expiresAt", ssoToken.expiresAt); + const { accessToken, expiresAt } = ssoToken; + const existingToken = { token: accessToken, expiration: new Date(expiresAt) }; + if (existingToken.expiration.getTime() - Date.now() > constants_1.EXPIRE_WINDOW_MS) { + return existingToken; + } + if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) { + (0, validateTokenExpiry_1.validateTokenExpiry)(existingToken); + return existingToken; + } + (0, validateTokenKey_1.validateTokenKey)("clientId", ssoToken.clientId, true); + (0, validateTokenKey_1.validateTokenKey)("clientSecret", ssoToken.clientSecret, true); + (0, validateTokenKey_1.validateTokenKey)("refreshToken", ssoToken.refreshToken, true); + try { + lastRefreshAttemptTime.setTime(Date.now()); + const newSsoOidcToken = await (0, getNewSsoOidcToken_1.getNewSsoOidcToken)(ssoToken, ssoRegion); + (0, validateTokenKey_1.validateTokenKey)("accessToken", newSsoOidcToken.accessToken); + (0, validateTokenKey_1.validateTokenKey)("expiresIn", newSsoOidcToken.expiresIn); + const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3); + try { + await (0, writeSSOTokenToFile_1.writeSSOTokenToFile)(ssoSessionName, { + ...ssoToken, + accessToken: newSsoOidcToken.accessToken, + expiresAt: newTokenExpiration.toISOString(), + refreshToken: newSsoOidcToken.refreshToken + }); + } catch (error) { + } + return { + token: newSsoOidcToken.accessToken, + expiration: newTokenExpiration + }; + } catch (error) { + (0, validateTokenExpiry_1.validateTokenExpiry)(existingToken); + return existingToken; + } + }; + exports2.fromSso = fromSso; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/fromStatic.js +var require_fromStatic = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/fromStatic.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromStatic = void 0; + var property_provider_1 = require_dist_cjs8(); + var fromStatic = ({ token }) => async () => { + if (!token || !token.token) { + throw new property_provider_1.TokenProviderError(`Please pass a valid token to fromStatic`, false); + } + return token; + }; + exports2.fromStatic = fromStatic; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/nodeProvider.js +var require_nodeProvider = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/nodeProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.nodeProvider = void 0; + var property_provider_1 = require_dist_cjs8(); + var fromSso_1 = require_fromSso(); + var nodeProvider = (init = {}) => (0, property_provider_1.memoize)((0, property_provider_1.chain)((0, fromSso_1.fromSso)(init), async () => { + throw new property_provider_1.TokenProviderError("Could not load token from any providers", false); + }), (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5, (token) => token.expiration !== void 0); + exports2.nodeProvider = nodeProvider; + } +}); + +// node_modules/@aws-sdk/token-providers/dist-cjs/index.js +var require_dist_cjs48 = __commonJS({ + "node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_client_sso_oidc_node(), exports2); + tslib_1.__exportStar(require_fromSso(), exports2); + tslib_1.__exportStar(require_fromStatic(), exports2); + tslib_1.__exportStar(require_nodeProvider(), exports2); + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/resolveSSOCredentials.js +var require_resolveSSOCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/resolveSSOCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveSSOCredentials = void 0; + var client_sso_1 = require_dist_cjs47(); + var token_providers_1 = require_dist_cjs48(); + var property_provider_1 = require_dist_cjs8(); + var shared_ini_file_loader_1 = require_dist_cjs23(); + var SHOULD_FAIL_CREDENTIAL_CHAIN = false; + var resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, profile }) => { + let token; + const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`; + if (ssoSession) { + try { + const _token = await (0, token_providers_1.fromSso)({ profile })(); + token = { + accessToken: _token.token, + expiresAt: new Date(_token.expiration).toISOString() + }; + } catch (e) { + throw new property_provider_1.CredentialsProviderError(e.message, SHOULD_FAIL_CREDENTIAL_CHAIN); + } + } else { + try { + token = await (0, shared_ini_file_loader_1.getSSOTokenFromFile)(ssoStartUrl); + } catch (e) { + throw new property_provider_1.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, SHOULD_FAIL_CREDENTIAL_CHAIN); + } + } + if (new Date(token.expiresAt).getTime() - Date.now() <= 0) { + throw new property_provider_1.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, SHOULD_FAIL_CREDENTIAL_CHAIN); + } + const { accessToken } = token; + const sso = ssoClient || new client_sso_1.SSOClient({ region: ssoRegion }); + let ssoResp; + try { + ssoResp = await sso.send(new client_sso_1.GetRoleCredentialsCommand({ + accountId: ssoAccountId, + roleName: ssoRoleName, + accessToken + })); + } catch (e) { + throw property_provider_1.CredentialsProviderError.from(e, SHOULD_FAIL_CREDENTIAL_CHAIN); + } + const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration } = {} } = ssoResp; + if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) { + throw new property_provider_1.CredentialsProviderError("SSO returns an invalid temporary credential.", SHOULD_FAIL_CREDENTIAL_CHAIN); + } + return { accessKeyId, secretAccessKey, sessionToken, expiration: new Date(expiration) }; + }; + exports2.resolveSSOCredentials = resolveSSOCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/validateSsoProfile.js +var require_validateSsoProfile = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/validateSsoProfile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateSsoProfile = void 0; + var property_provider_1 = require_dist_cjs8(); + var validateSsoProfile = (profile) => { + const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile; + if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) { + throw new property_provider_1.CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(", ")} +Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, false); + } + return profile; + }; + exports2.validateSsoProfile = validateSsoProfile; + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/fromSSO.js +var require_fromSSO = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/fromSSO.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromSSO = void 0; + var property_provider_1 = require_dist_cjs8(); + var shared_ini_file_loader_1 = require_dist_cjs23(); + var isSsoProfile_1 = require_isSsoProfile(); + var resolveSSOCredentials_1 = require_resolveSSOCredentials(); + var validateSsoProfile_1 = require_validateSsoProfile(); + var fromSSO = (init = {}) => async () => { + const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, ssoSession } = init; + const profileName = (0, shared_ini_file_loader_1.getProfileName)(init); + if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) { + const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); + const profile = profiles[profileName]; + if (!profile) { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} was not found.`); + } + if (!(0, isSsoProfile_1.isSsoProfile)(profile)) { + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`); + } + if (profile === null || profile === void 0 ? void 0 : profile.sso_session) { + const ssoSessions = await (0, shared_ini_file_loader_1.loadSsoSessionData)(init); + const session = ssoSessions[profile.sso_session]; + const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`; + if (ssoRegion && ssoRegion !== session.sso_region) { + throw new property_provider_1.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, false); + } + if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) { + throw new property_provider_1.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, false); + } + profile.sso_region = session.sso_region; + profile.sso_start_url = session.sso_start_url; + } + const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = (0, validateSsoProfile_1.validateSsoProfile)(profile); + return (0, resolveSSOCredentials_1.resolveSSOCredentials)({ + ssoStartUrl: sso_start_url, + ssoSession: sso_session, + ssoAccountId: sso_account_id, + ssoRegion: sso_region, + ssoRoleName: sso_role_name, + ssoClient, + profile: profileName + }); + } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) { + throw new property_provider_1.CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"'); + } else { + return (0, resolveSSOCredentials_1.resolveSSOCredentials)({ + ssoStartUrl, + ssoSession, + ssoAccountId, + ssoRegion, + ssoRoleName, + ssoClient, + profile: profileName + }); + } + }; + exports2.fromSSO = fromSSO; + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/types.js +var require_types2 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js +var require_dist_cjs49 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_fromSSO(), exports2); + tslib_1.__exportStar(require_isSsoProfile(), exports2); + tslib_1.__exportStar(require_types2(), exports2); + tslib_1.__exportStar(require_validateSsoProfile(), exports2); + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveSsoCredentials.js +var require_resolveSsoCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveSsoCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveSsoCredentials = exports2.isSsoProfile = void 0; + var credential_provider_sso_1 = require_dist_cjs49(); + var credential_provider_sso_2 = require_dist_cjs49(); + Object.defineProperty(exports2, "isSsoProfile", { enumerable: true, get: function() { + return credential_provider_sso_2.isSsoProfile; + } }); + var resolveSsoCredentials = (data) => { + const { sso_start_url, sso_account_id, sso_session, sso_region, sso_role_name } = (0, credential_provider_sso_1.validateSsoProfile)(data); + return (0, credential_provider_sso_1.fromSSO)({ + ssoStartUrl: sso_start_url, + ssoAccountId: sso_account_id, + ssoSession: sso_session, + ssoRegion: sso_region, + ssoRoleName: sso_role_name + })(); + }; + exports2.resolveSsoCredentials = resolveSsoCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveStaticCredentials.js +var require_resolveStaticCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveStaticCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveStaticCredentials = exports2.isStaticCredsProfile = void 0; + var isStaticCredsProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1; + exports2.isStaticCredsProfile = isStaticCredsProfile; + var resolveStaticCredentials = (profile) => Promise.resolve({ + accessKeyId: profile.aws_access_key_id, + secretAccessKey: profile.aws_secret_access_key, + sessionToken: profile.aws_session_token + }); + exports2.resolveStaticCredentials = resolveStaticCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js +var require_fromWebToken = __commonJS({ + "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromWebToken = void 0; + var property_provider_1 = require_dist_cjs8(); + var fromWebToken = (init) => () => { + const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds, roleAssumerWithWebIdentity } = init; + if (!roleAssumerWithWebIdentity) { + throw new property_provider_1.CredentialsProviderError(`Role Arn '${roleArn}' needs to be assumed with web identity, but no role assumption callback was provided.`, false); + } + return roleAssumerWithWebIdentity({ + RoleArn: roleArn, + RoleSessionName: roleSessionName !== null && roleSessionName !== void 0 ? roleSessionName : `aws-sdk-js-session-${Date.now()}`, + WebIdentityToken: webIdentityToken, + ProviderId: providerId, + PolicyArns: policyArns, + Policy: policy, + DurationSeconds: durationSeconds + }); + }; + exports2.fromWebToken = fromWebToken; + } +}); + +// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js +var require_fromTokenFile = __commonJS({ + "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromTokenFile = void 0; + var property_provider_1 = require_dist_cjs8(); + var fs_1 = require("fs"); + var fromWebToken_1 = require_fromWebToken(); + var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE"; + var ENV_ROLE_ARN = "AWS_ROLE_ARN"; + var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME"; + var fromTokenFile = (init = {}) => async () => { + var _a, _b, _c; + const webIdentityTokenFile = (_a = init === null || init === void 0 ? void 0 : init.webIdentityTokenFile) !== null && _a !== void 0 ? _a : process.env[ENV_TOKEN_FILE]; + const roleArn = (_b = init === null || init === void 0 ? void 0 : init.roleArn) !== null && _b !== void 0 ? _b : process.env[ENV_ROLE_ARN]; + const roleSessionName = (_c = init === null || init === void 0 ? void 0 : init.roleSessionName) !== null && _c !== void 0 ? _c : process.env[ENV_ROLE_SESSION_NAME]; + if (!webIdentityTokenFile || !roleArn) { + throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified"); + } + return (0, fromWebToken_1.fromWebToken)({ + ...init, + webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }), + roleArn, + roleSessionName + })(); + }; + exports2.fromTokenFile = fromTokenFile; + } +}); + +// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js +var require_dist_cjs50 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_fromTokenFile(), exports2); + tslib_1.__exportStar(require_fromWebToken(), exports2); + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveWebIdentityCredentials.js +var require_resolveWebIdentityCredentials = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveWebIdentityCredentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveWebIdentityCredentials = exports2.isWebIdentityProfile = void 0; + var credential_provider_web_identity_1 = require_dist_cjs50(); + var isWebIdentityProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1; + exports2.isWebIdentityProfile = isWebIdentityProfile; + var resolveWebIdentityCredentials = async (profile, options) => (0, credential_provider_web_identity_1.fromTokenFile)({ + webIdentityTokenFile: profile.web_identity_token_file, + roleArn: profile.role_arn, + roleSessionName: profile.role_session_name, + roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity + })(); + exports2.resolveWebIdentityCredentials = resolveWebIdentityCredentials; + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProfileData.js +var require_resolveProfileData = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProfileData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveProfileData = void 0; + var property_provider_1 = require_dist_cjs8(); + var resolveAssumeRoleCredentials_1 = require_resolveAssumeRoleCredentials(); + var resolveProcessCredentials_1 = require_resolveProcessCredentials2(); + var resolveSsoCredentials_1 = require_resolveSsoCredentials(); + var resolveStaticCredentials_1 = require_resolveStaticCredentials(); + var resolveWebIdentityCredentials_1 = require_resolveWebIdentityCredentials(); + var resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => { + const data = profiles[profileName]; + if (Object.keys(visitedProfiles).length > 0 && (0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { + return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); + } + if ((0, resolveAssumeRoleCredentials_1.isAssumeRoleProfile)(data)) { + return (0, resolveAssumeRoleCredentials_1.resolveAssumeRoleCredentials)(profileName, profiles, options, visitedProfiles); + } + if ((0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { + return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); + } + if ((0, resolveWebIdentityCredentials_1.isWebIdentityProfile)(data)) { + return (0, resolveWebIdentityCredentials_1.resolveWebIdentityCredentials)(data, options); + } + if ((0, resolveProcessCredentials_1.isProcessProfile)(data)) { + return (0, resolveProcessCredentials_1.resolveProcessCredentials)(options, profileName); + } + if ((0, resolveSsoCredentials_1.isSsoProfile)(data)) { + return (0, resolveSsoCredentials_1.resolveSsoCredentials)(data); + } + throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found or parsed in shared credentials file.`); + }; + exports2.resolveProfileData = resolveProfileData; + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/fromIni.js +var require_fromIni = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/fromIni.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromIni = void 0; + var shared_ini_file_loader_1 = require_dist_cjs23(); + var resolveProfileData_1 = require_resolveProfileData(); + var fromIni = (init = {}) => async () => { + const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); + return (0, resolveProfileData_1.resolveProfileData)((0, shared_ini_file_loader_1.getProfileName)(init), profiles, init); + }; + exports2.fromIni = fromIni; + } +}); + +// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js +var require_dist_cjs51 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_fromIni(), exports2); + } +}); + +// node_modules/@aws-sdk/credential-provider-node/dist-cjs/remoteProvider.js +var require_remoteProvider = __commonJS({ + "node_modules/@aws-sdk/credential-provider-node/dist-cjs/remoteProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.remoteProvider = exports2.ENV_IMDS_DISABLED = void 0; + var credential_provider_imds_1 = require_dist_cjs40(); + var property_provider_1 = require_dist_cjs8(); + exports2.ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; + var remoteProvider = (init) => { + if (process.env[credential_provider_imds_1.ENV_CMDS_RELATIVE_URI] || process.env[credential_provider_imds_1.ENV_CMDS_FULL_URI]) { + return (0, credential_provider_imds_1.fromContainerMetadata)(init); + } + if (process.env[exports2.ENV_IMDS_DISABLED]) { + return async () => { + throw new property_provider_1.CredentialsProviderError("EC2 Instance Metadata Service access disabled"); + }; + } + return (0, credential_provider_imds_1.fromInstanceMetadata)(init); + }; + exports2.remoteProvider = remoteProvider; + } +}); + +// node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js +var require_defaultProvider = __commonJS({ + "node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultProvider = void 0; + var credential_provider_env_1 = require_dist_cjs39(); + var credential_provider_ini_1 = require_dist_cjs51(); + var credential_provider_process_1 = require_dist_cjs41(); + var credential_provider_sso_1 = require_dist_cjs49(); + var credential_provider_web_identity_1 = require_dist_cjs50(); + var property_provider_1 = require_dist_cjs8(); + var shared_ini_file_loader_1 = require_dist_cjs23(); + var remoteProvider_1 = require_remoteProvider(); + var defaultProvider = (init = {}) => (0, property_provider_1.memoize)((0, property_provider_1.chain)(...init.profile || process.env[shared_ini_file_loader_1.ENV_PROFILE] ? [] : [(0, credential_provider_env_1.fromEnv)()], (0, credential_provider_sso_1.fromSSO)(init), (0, credential_provider_ini_1.fromIni)(init), (0, credential_provider_process_1.fromProcess)(init), (0, credential_provider_web_identity_1.fromTokenFile)(init), (0, remoteProvider_1.remoteProvider)(init), async () => { + throw new property_provider_1.CredentialsProviderError("Could not load credentials from any providers", false); + }), (credentials) => credentials.expiration !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, (credentials) => credentials.expiration !== void 0); + exports2.defaultProvider = defaultProvider; + } +}); + +// node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js +var require_dist_cjs52 = __commonJS({ + "node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_defaultProvider(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js +var require_ruleset2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ruleSet = void 0; + var F = "required"; + var G = "type"; + var H = "fn"; + var I = "argv"; + var J = "ref"; + var a = false; + var b = true; + var c = "booleanEquals"; + var d = "tree"; + var e = "stringEquals"; + var f = "sigv4"; + var g = "sts"; + var h = "us-east-1"; + var i = "endpoint"; + var j = "https://sts.{Region}.{PartitionResult#dnsSuffix}"; + var k = "error"; + var l = "getAttr"; + var m = { [F]: false, [G]: "String" }; + var n = { [F]: true, "default": false, [G]: "Boolean" }; + var o = { [J]: "Endpoint" }; + var p = { [H]: "isSet", [I]: [{ [J]: "Region" }] }; + var q = { [J]: "Region" }; + var r = { [H]: "aws.partition", [I]: [q], "assign": "PartitionResult" }; + var s = { [J]: "UseFIPS" }; + var t = { [J]: "UseDualStack" }; + var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": f, "signingName": g, "signingRegion": h }] }, "headers": {} }; + var v = {}; + var w = { "conditions": [{ [H]: e, [I]: [q, "aws-global"] }], [i]: u, [G]: i }; + var x = { [H]: c, [I]: [s, true] }; + var y = { [H]: c, [I]: [t, true] }; + var z = { [H]: c, [I]: [true, { [H]: l, [I]: [{ [J]: "PartitionResult" }, "supportsFIPS"] }] }; + var A = { [J]: "PartitionResult" }; + var B = { [H]: c, [I]: [true, { [H]: l, [I]: [A, "supportsDualStack"] }] }; + var C = [{ [H]: "isSet", [I]: [o] }]; + var D = [x]; + var E = [y]; + var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H]: c, [I]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H]: "not", [I]: C }, p, r, { [H]: c, [I]: [s, a] }, { [H]: c, [I]: [t, a] }], [G]: d, rules: [{ conditions: [{ [H]: e, [I]: [q, "ap-northeast-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-south-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-southeast-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-southeast-2"] }], endpoint: u, [G]: i }, w, { conditions: [{ [H]: e, [I]: [q, "ca-central-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-central-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-north-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-2"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-3"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "sa-east-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, h] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-east-2"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-west-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-west-2"] }], endpoint: u, [G]: i }, { endpoint: { url: j, properties: { authSchemes: [{ name: f, signingName: g, signingRegion: "{Region}" }] }, headers: v }, [G]: i }] }, { conditions: C, [G]: d, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G]: k }, { endpoint: { url: o, properties: v, headers: v }, [G]: i }] }, { conditions: [p], [G]: d, rules: [{ conditions: [r], [G]: d, rules: [{ conditions: [x, y], [G]: d, rules: [{ conditions: [z, B], [G]: d, rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G]: k }] }, { conditions: D, [G]: d, rules: [{ conditions: [z], [G]: d, rules: [{ conditions: [{ [H]: e, [I]: ["aws-us-gov", { [H]: l, [I]: [A, "name"] }] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G]: i }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "FIPS is enabled but this partition does not support FIPS", [G]: k }] }, { conditions: E, [G]: d, rules: [{ conditions: [B], [G]: d, rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "DualStack is enabled but this partition does not support DualStack", [G]: k }] }, w, { endpoint: { url: j, properties: v, headers: v }, [G]: i }] }] }, { error: "Invalid Configuration: Missing Region", [G]: k }] }; + exports2.ruleSet = _data; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js +var require_endpointResolver2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultEndpointResolver = void 0; + var util_endpoints_1 = require_dist_cjs18(); + var ruleset_1 = require_ruleset2(); + var defaultEndpointResolver = (endpointParams, context = {}) => { + return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { + endpointParams, + logger: context.logger + }); + }; + exports2.defaultEndpointResolver = defaultEndpointResolver; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js +var require_runtimeConfig_shared2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var smithy_client_1 = require_dist_cjs36(); + var url_parser_1 = require_dist_cjs26(); + var util_base64_1 = require_dist_cjs32(); + var util_utf8_1 = require_dist_cjs12(); + var endpointResolver_1 = require_endpointResolver2(); + var getRuntimeConfig = (config) => ({ + apiVersion: "2011-06-15", + base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, + base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, + disableHostPrefix: config?.disableHostPrefix ?? false, + endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, + extensions: config?.extensions ?? [], + logger: config?.logger ?? new smithy_client_1.NoOpLogger(), + serviceId: config?.serviceId ?? "STS", + urlParser: config?.urlParser ?? url_parser_1.parseUrl, + utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, + utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 + }); + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js +var require_runtimeConfig2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var package_json_1 = tslib_1.__importDefault(require_package2()); + var defaultStsRoleAssumers_1 = require_defaultStsRoleAssumers(); + var credential_provider_node_1 = require_dist_cjs52(); + var util_user_agent_node_1 = require_dist_cjs42(); + var config_resolver_1 = require_dist_cjs21(); + var hash_node_1 = require_dist_cjs43(); + var middleware_retry_1 = require_dist_cjs37(); + var node_config_provider_1 = require_dist_cjs24(); + var node_http_handler_1 = require_dist_cjs34(); + var util_body_length_node_1 = require_dist_cjs44(); + var util_retry_1 = require_dist_cjs30(); + var runtimeConfig_shared_1 = require_runtimeConfig_shared2(); + var smithy_client_1 = require_dist_cjs36(); + var util_defaults_mode_node_1 = require_dist_cjs45(); + var smithy_client_2 = require_dist_cjs36(); + var getRuntimeConfig = (config) => { + (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); + const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); + const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); + const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); + return { + ...clientSharedValues, + ...config, + runtime: "node", + defaultsMode, + bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, + credentialDefaultProvider: config?.credentialDefaultProvider ?? (0, defaultStsRoleAssumers_1.decorateDefaultCredentialProvider)(credential_provider_node_1.defaultProvider), + defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), + maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), + region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), + requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), + retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ + ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, + default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE + }), + sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), + streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) + }; + }; + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js +var require_runtimeExtensions2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveRuntimeExtensions = void 0; + var region_config_resolver_1 = require_dist_cjs46(); + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var asPartial = (t) => t; + var resolveRuntimeExtensions = (runtimeConfig, extensions) => { + const extensionConfiguration = { + ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) + }; + extensions.forEach((extension) => extension.configure(extensionConfiguration)); + return { + ...runtimeConfig, + ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) + }; + }; + exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js +var require_STSClient = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.STSClient = exports2.__Client = void 0; + var middleware_host_header_1 = require_dist_cjs5(); + var middleware_logger_1 = require_dist_cjs6(); + var middleware_recursion_detection_1 = require_dist_cjs7(); + var middleware_sdk_sts_1 = require_dist_cjs38(); + var middleware_user_agent_1 = require_dist_cjs19(); + var config_resolver_1 = require_dist_cjs21(); + var middleware_content_length_1 = require_dist_cjs22(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_retry_1 = require_dist_cjs37(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { + return smithy_client_1.Client; + } }); + var EndpointParameters_1 = require_EndpointParameters2(); + var runtimeConfig_1 = require_runtimeConfig2(); + var runtimeExtensions_1 = require_runtimeExtensions2(); + var STSClient = class _STSClient extends smithy_client_1.Client { + constructor(...[configuration]) { + const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); + const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); + const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); + const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); + const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); + const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); + const _config_6 = (0, middleware_sdk_sts_1.resolveStsAuthConfig)(_config_5, { stsClientCtor: _STSClient }); + const _config_7 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_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_retry_1.getRetryPlugin)(this.config)); + this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); + this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); + this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); + this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); + this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); + } + destroy() { + super.destroy(); + } + }; + exports2.STSClient = STSClient; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithSAMLCommand.js +var require_AssumeRoleWithSAMLCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithSAMLCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AssumeRoleWithSAMLCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_02(); + var Aws_query_1 = require_Aws_query(); + var AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleWithSAMLCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "AssumeRoleWithSAMLCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: models_0_1.AssumeRoleWithSAMLRequestFilterSensitiveLog, + outputFilterSensitiveLog: models_0_1.AssumeRoleWithSAMLResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "AssumeRoleWithSAML" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_AssumeRoleWithSAMLCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_AssumeRoleWithSAMLCommand)(output, context); + } + }; + exports2.AssumeRoleWithSAMLCommand = AssumeRoleWithSAMLCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/DecodeAuthorizationMessageCommand.js +var require_DecodeAuthorizationMessageCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/DecodeAuthorizationMessageCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DecodeAuthorizationMessageCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_query_1 = require_Aws_query(); + var DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DecodeAuthorizationMessageCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "DecodeAuthorizationMessageCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "DecodeAuthorizationMessage" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_DecodeAuthorizationMessageCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_DecodeAuthorizationMessageCommand)(output, context); + } + }; + exports2.DecodeAuthorizationMessageCommand = DecodeAuthorizationMessageCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetAccessKeyInfoCommand.js +var require_GetAccessKeyInfoCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetAccessKeyInfoCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetAccessKeyInfoCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_query_1 = require_Aws_query(); + var GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetAccessKeyInfoCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "GetAccessKeyInfoCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "GetAccessKeyInfo" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_GetAccessKeyInfoCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_GetAccessKeyInfoCommand)(output, context); + } + }; + exports2.GetAccessKeyInfoCommand = GetAccessKeyInfoCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetCallerIdentityCommand.js +var require_GetCallerIdentityCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetCallerIdentityCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetCallerIdentityCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_query_1 = require_Aws_query(); + var GetCallerIdentityCommand = class _GetCallerIdentityCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetCallerIdentityCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "GetCallerIdentityCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "GetCallerIdentity" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_GetCallerIdentityCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_GetCallerIdentityCommand)(output, context); + } + }; + exports2.GetCallerIdentityCommand = GetCallerIdentityCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetFederationTokenCommand.js +var require_GetFederationTokenCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetFederationTokenCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetFederationTokenCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_02(); + var Aws_query_1 = require_Aws_query(); + var GetFederationTokenCommand = class _GetFederationTokenCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetFederationTokenCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "GetFederationTokenCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: models_0_1.GetFederationTokenResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "GetFederationToken" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_GetFederationTokenCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_GetFederationTokenCommand)(output, context); + } + }; + exports2.GetFederationTokenCommand = GetFederationTokenCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetSessionTokenCommand.js +var require_GetSessionTokenCommand = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetSessionTokenCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetSessionTokenCommand = exports2.$Command = void 0; + var middleware_signing_1 = require_dist_cjs16(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var models_0_1 = require_models_02(); + var Aws_query_1 = require_Aws_query(); + var GetSessionTokenCommand = class _GetSessionTokenCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetSessionTokenCommand.getEndpointParameterInstructions())); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "STSClient"; + const commandName = "GetSessionTokenCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: models_0_1.GetSessionTokenResponseFilterSensitiveLog, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "AWSSecurityTokenServiceV20110615", + operation: "GetSessionToken" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_query_1.se_GetSessionTokenCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_query_1.de_GetSessionTokenCommand)(output, context); + } + }; + exports2.GetSessionTokenCommand = GetSessionTokenCommand; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/STS.js +var require_STS = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/STS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.STS = void 0; + var smithy_client_1 = require_dist_cjs36(); + var AssumeRoleCommand_1 = require_AssumeRoleCommand(); + var AssumeRoleWithSAMLCommand_1 = require_AssumeRoleWithSAMLCommand(); + var AssumeRoleWithWebIdentityCommand_1 = require_AssumeRoleWithWebIdentityCommand(); + var DecodeAuthorizationMessageCommand_1 = require_DecodeAuthorizationMessageCommand(); + var GetAccessKeyInfoCommand_1 = require_GetAccessKeyInfoCommand(); + var GetCallerIdentityCommand_1 = require_GetCallerIdentityCommand(); + var GetFederationTokenCommand_1 = require_GetFederationTokenCommand(); + var GetSessionTokenCommand_1 = require_GetSessionTokenCommand(); + var STSClient_1 = require_STSClient(); + var commands = { + AssumeRoleCommand: AssumeRoleCommand_1.AssumeRoleCommand, + AssumeRoleWithSAMLCommand: AssumeRoleWithSAMLCommand_1.AssumeRoleWithSAMLCommand, + AssumeRoleWithWebIdentityCommand: AssumeRoleWithWebIdentityCommand_1.AssumeRoleWithWebIdentityCommand, + DecodeAuthorizationMessageCommand: DecodeAuthorizationMessageCommand_1.DecodeAuthorizationMessageCommand, + GetAccessKeyInfoCommand: GetAccessKeyInfoCommand_1.GetAccessKeyInfoCommand, + GetCallerIdentityCommand: GetCallerIdentityCommand_1.GetCallerIdentityCommand, + GetFederationTokenCommand: GetFederationTokenCommand_1.GetFederationTokenCommand, + GetSessionTokenCommand: GetSessionTokenCommand_1.GetSessionTokenCommand + }; + var STS = class extends STSClient_1.STSClient { + }; + exports2.STS = STS; + (0, smithy_client_1.createAggregatedClient)(commands, STS); + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/commands/index.js +var require_commands2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/commands/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_AssumeRoleCommand(), exports2); + tslib_1.__exportStar(require_AssumeRoleWithSAMLCommand(), exports2); + tslib_1.__exportStar(require_AssumeRoleWithWebIdentityCommand(), exports2); + tslib_1.__exportStar(require_DecodeAuthorizationMessageCommand(), exports2); + tslib_1.__exportStar(require_GetAccessKeyInfoCommand(), exports2); + tslib_1.__exportStar(require_GetCallerIdentityCommand(), exports2); + tslib_1.__exportStar(require_GetFederationTokenCommand(), exports2); + tslib_1.__exportStar(require_GetSessionTokenCommand(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/models/index.js +var require_models2 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/models/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_models_02(), exports2); + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/defaultRoleAssumers.js +var require_defaultRoleAssumers = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/defaultRoleAssumers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.decorateDefaultCredentialProvider = exports2.getDefaultRoleAssumerWithWebIdentity = exports2.getDefaultRoleAssumer = void 0; + var defaultStsRoleAssumers_1 = require_defaultStsRoleAssumers(); + var STSClient_1 = require_STSClient(); + var getCustomizableStsClientCtor = (baseCtor, customizations) => { + if (!customizations) + return baseCtor; + else + return class CustomizableSTSClient extends baseCtor { + constructor(config) { + super(config); + for (const customization of customizations) { + this.middlewareStack.use(customization); + } + } + }; + }; + var getDefaultRoleAssumer = (stsOptions = {}, stsPlugins) => (0, defaultStsRoleAssumers_1.getDefaultRoleAssumer)(stsOptions, getCustomizableStsClientCtor(STSClient_1.STSClient, stsPlugins)); + exports2.getDefaultRoleAssumer = getDefaultRoleAssumer; + var getDefaultRoleAssumerWithWebIdentity = (stsOptions = {}, stsPlugins) => (0, defaultStsRoleAssumers_1.getDefaultRoleAssumerWithWebIdentity)(stsOptions, getCustomizableStsClientCtor(STSClient_1.STSClient, stsPlugins)); + exports2.getDefaultRoleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity; + var decorateDefaultCredentialProvider = (provider) => (input) => provider({ + roleAssumer: (0, exports2.getDefaultRoleAssumer)(input), + roleAssumerWithWebIdentity: (0, exports2.getDefaultRoleAssumerWithWebIdentity)(input), + ...input + }); + exports2.decorateDefaultCredentialProvider = decorateDefaultCredentialProvider; + } +}); + +// node_modules/@aws-sdk/client-sts/dist-cjs/index.js +var require_dist_cjs53 = __commonJS({ + "node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.STSServiceException = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_STSClient(), exports2); + tslib_1.__exportStar(require_STS(), exports2); + tslib_1.__exportStar(require_commands2(), exports2); + tslib_1.__exportStar(require_models2(), exports2); + tslib_1.__exportStar(require_defaultRoleAssumers(), exports2); + var STSServiceException_1 = require_STSServiceException(); + Object.defineProperty(exports2, "STSServiceException", { enumerable: true, get: function() { + return STSServiceException_1.STSServiceException; + } }); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/ruleset.js +var require_ruleset3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/ruleset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ruleSet = void 0; + var u = "required"; + var v = "fn"; + var w = "argv"; + var x = "ref"; + var a = "isSet"; + var b = "tree"; + var c = "error"; + var d = "endpoint"; + var e = "PartitionResult"; + var f = "getAttr"; + var g = "stringEquals"; + var h = { [u]: false, "type": "String" }; + var i = { [u]: true, "default": false, "type": "Boolean" }; + var j = { [x]: "Endpoint" }; + var k = { [v]: "booleanEquals", [w]: [{ [x]: "UseFIPS" }, true] }; + var l = { [v]: "booleanEquals", [w]: [{ [x]: "UseDualStack" }, true] }; + var m = {}; + var n = { [x]: "Region" }; + var o = { [v]: "booleanEquals", [w]: [true, { [v]: f, [w]: [{ [x]: e }, "supportsFIPS"] }] }; + var p = { [x]: e }; + var q = { [v]: "booleanEquals", [w]: [true, { [v]: f, [w]: [p, "supportsDualStack"] }] }; + var r = [k]; + var s = [l]; + var t = [n]; + var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [v]: a, [w]: [j] }], type: b, rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: j, properties: m, headers: m }, type: d }] }, { conditions: [{ [v]: a, [w]: t }], type: b, rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: e }], type: b, rules: [{ conditions: [k, l], type: b, rules: [{ conditions: [o, q], type: b, rules: [{ endpoint: { url: "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: r, type: b, rules: [{ conditions: [o], type: b, rules: [{ conditions: [{ [v]: g, [w]: ["aws-us-gov", { [v]: f, [w]: [p, "name"] }] }], endpoint: { url: "https://dynamodb.{Region}.amazonaws.com", properties: m, headers: m }, type: d }, { endpoint: { url: "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: d }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: s, type: b, rules: [{ conditions: [q], type: b, rules: [{ endpoint: { url: "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { conditions: [{ [v]: g, [w]: [n, "local"] }], endpoint: { url: "http://localhost:8000", properties: { authSchemes: [{ name: "sigv4", signingName: "dynamodb", signingRegion: "us-east-1" }] }, headers: m }, type: d }, { endpoint: { url: "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: d }] }] }, { error: "Invalid Configuration: Missing Region", type: c }] }; + exports2.ruleSet = _data; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/endpointResolver.js +var require_endpointResolver3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/endpoint/endpointResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultEndpointResolver = void 0; + var util_endpoints_1 = require_dist_cjs18(); + var ruleset_1 = require_ruleset3(); + var defaultEndpointResolver = (endpointParams, context = {}) => { + return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { + endpointParams, + logger: context.logger + }); + }; + exports2.defaultEndpointResolver = defaultEndpointResolver; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeConfig.shared.js +var require_runtimeConfig_shared3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeConfig.shared.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var smithy_client_1 = require_dist_cjs36(); + var url_parser_1 = require_dist_cjs26(); + var util_base64_1 = require_dist_cjs32(); + var util_utf8_1 = require_dist_cjs12(); + var endpointResolver_1 = require_endpointResolver3(); + var getRuntimeConfig = (config) => ({ + apiVersion: "2012-08-10", + base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, + base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, + disableHostPrefix: config?.disableHostPrefix ?? false, + endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, + extensions: config?.extensions ?? [], + logger: config?.logger ?? new smithy_client_1.NoOpLogger(), + serviceId: config?.serviceId ?? "DynamoDB", + urlParser: config?.urlParser ?? url_parser_1.parseUrl, + utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, + utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 + }); + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeConfig.js +var require_runtimeConfig3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRuntimeConfig = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var package_json_1 = tslib_1.__importDefault(require_package()); + var client_sts_1 = require_dist_cjs53(); + var credential_provider_node_1 = require_dist_cjs52(); + var middleware_endpoint_discovery_1 = require_dist_cjs4(); + var util_user_agent_node_1 = require_dist_cjs42(); + var config_resolver_1 = require_dist_cjs21(); + var hash_node_1 = require_dist_cjs43(); + var middleware_retry_1 = require_dist_cjs37(); + var node_config_provider_1 = require_dist_cjs24(); + var node_http_handler_1 = require_dist_cjs34(); + var util_body_length_node_1 = require_dist_cjs44(); + var util_retry_1 = require_dist_cjs30(); + var runtimeConfig_shared_1 = require_runtimeConfig_shared3(); + var smithy_client_1 = require_dist_cjs36(); + var util_defaults_mode_node_1 = require_dist_cjs45(); + var smithy_client_2 = require_dist_cjs36(); + var getRuntimeConfig = (config) => { + (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); + const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); + const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); + const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); + return { + ...clientSharedValues, + ...config, + runtime: "node", + defaultsMode, + bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, + credentialDefaultProvider: config?.credentialDefaultProvider ?? (0, client_sts_1.decorateDefaultCredentialProvider)(credential_provider_node_1.defaultProvider), + defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), + endpointDiscoveryEnabledProvider: config?.endpointDiscoveryEnabledProvider ?? (0, node_config_provider_1.loadConfig)(middleware_endpoint_discovery_1.NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS), + maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), + region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), + requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), + retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ + ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, + default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE + }), + sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), + streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) + }; + }; + exports2.getRuntimeConfig = getRuntimeConfig; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeExtensions.js +var require_runtimeExtensions3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/runtimeExtensions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveRuntimeExtensions = void 0; + var region_config_resolver_1 = require_dist_cjs46(); + var protocol_http_1 = require_dist_cjs2(); + var smithy_client_1 = require_dist_cjs36(); + var asPartial = (t) => t; + var resolveRuntimeExtensions = (runtimeConfig, extensions) => { + const extensionConfiguration = { + ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) + }; + extensions.forEach((extension) => extension.configure(extensionConfiguration)); + return { + ...runtimeConfig, + ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) + }; + }; + exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/DynamoDBClient.js +var require_DynamoDBClient = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/DynamoDBClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DynamoDBClient = exports2.__Client = void 0; + var middleware_endpoint_discovery_1 = require_dist_cjs4(); + var middleware_host_header_1 = require_dist_cjs5(); + var middleware_logger_1 = require_dist_cjs6(); + var middleware_recursion_detection_1 = require_dist_cjs7(); + var middleware_signing_1 = require_dist_cjs16(); + var middleware_user_agent_1 = require_dist_cjs19(); + var config_resolver_1 = require_dist_cjs21(); + var middleware_content_length_1 = require_dist_cjs22(); + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_retry_1 = require_dist_cjs37(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { + return smithy_client_1.Client; + } }); + var DescribeEndpointsCommand_1 = require_DescribeEndpointsCommand(); + var EndpointParameters_1 = require_EndpointParameters(); + var runtimeConfig_1 = require_runtimeConfig3(); + var runtimeExtensions_1 = require_runtimeExtensions3(); + var DynamoDBClient2 = class extends smithy_client_1.Client { + constructor(...[configuration]) { + const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); + const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); + const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); + const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); + const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); + const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); + const _config_6 = (0, middleware_signing_1.resolveAwsAuthConfig)(_config_5); + const _config_7 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_6); + const _config_8 = (0, middleware_endpoint_discovery_1.resolveEndpointDiscoveryConfig)(_config_7, { + endpointDiscoveryCommandCtor: DescribeEndpointsCommand_1.DescribeEndpointsCommand + }); + const _config_9 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_8, configuration?.extensions || []); + super(_config_9); + this.config = _config_9; + this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); + this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); + this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); + this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); + this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); + this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(this.config)); + this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); + } + destroy() { + super.destroy(); + } + }; + exports2.DynamoDBClient = DynamoDBClient2; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchExecuteStatementCommand.js +var require_BatchExecuteStatementCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchExecuteStatementCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchExecuteStatementCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var BatchExecuteStatementCommand = class _BatchExecuteStatementCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _BatchExecuteStatementCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "BatchExecuteStatementCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "BatchExecuteStatement" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_BatchExecuteStatementCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_BatchExecuteStatementCommand)(output, context); + } + }; + exports2.BatchExecuteStatementCommand = BatchExecuteStatementCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchGetItemCommand.js +var require_BatchGetItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchGetItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchGetItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var BatchGetItemCommand = class _BatchGetItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _BatchGetItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "BatchGetItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "BatchGetItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_BatchGetItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_BatchGetItemCommand)(output, context); + } + }; + exports2.BatchGetItemCommand = BatchGetItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchWriteItemCommand.js +var require_BatchWriteItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/BatchWriteItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchWriteItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var BatchWriteItemCommand = class _BatchWriteItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _BatchWriteItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "BatchWriteItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "BatchWriteItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_BatchWriteItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_BatchWriteItemCommand)(output, context); + } + }; + exports2.BatchWriteItemCommand = BatchWriteItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateBackupCommand.js +var require_CreateBackupCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateBackupCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CreateBackupCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var CreateBackupCommand = class _CreateBackupCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CreateBackupCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "CreateBackupCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "CreateBackup" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_CreateBackupCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_CreateBackupCommand)(output, context); + } + }; + exports2.CreateBackupCommand = CreateBackupCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateGlobalTableCommand.js +var require_CreateGlobalTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateGlobalTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CreateGlobalTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var CreateGlobalTableCommand = class _CreateGlobalTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CreateGlobalTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "CreateGlobalTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "CreateGlobalTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_CreateGlobalTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_CreateGlobalTableCommand)(output, context); + } + }; + exports2.CreateGlobalTableCommand = CreateGlobalTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateTableCommand.js +var require_CreateTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/CreateTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CreateTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var CreateTableCommand = class _CreateTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CreateTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "CreateTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "CreateTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_CreateTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_CreateTableCommand)(output, context); + } + }; + exports2.CreateTableCommand = CreateTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteBackupCommand.js +var require_DeleteBackupCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteBackupCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DeleteBackupCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DeleteBackupCommand = class _DeleteBackupCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBackupCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DeleteBackupCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DeleteBackup" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DeleteBackupCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DeleteBackupCommand)(output, context); + } + }; + exports2.DeleteBackupCommand = DeleteBackupCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteItemCommand.js +var require_DeleteItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DeleteItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DeleteItemCommand = class _DeleteItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DeleteItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DeleteItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DeleteItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DeleteItemCommand)(output, context); + } + }; + exports2.DeleteItemCommand = DeleteItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteTableCommand.js +var require_DeleteTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DeleteTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DeleteTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DeleteTableCommand = class _DeleteTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DeleteTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DeleteTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DeleteTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DeleteTableCommand)(output, context); + } + }; + exports2.DeleteTableCommand = DeleteTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeBackupCommand.js +var require_DescribeBackupCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeBackupCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeBackupCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeBackupCommand = class _DescribeBackupCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeBackupCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeBackupCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeBackup" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeBackupCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeBackupCommand)(output, context); + } + }; + exports2.DescribeBackupCommand = DescribeBackupCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeContinuousBackupsCommand.js +var require_DescribeContinuousBackupsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeContinuousBackupsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeContinuousBackupsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeContinuousBackupsCommand = class _DescribeContinuousBackupsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeContinuousBackupsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeContinuousBackupsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeContinuousBackups" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeContinuousBackupsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeContinuousBackupsCommand)(output, context); + } + }; + exports2.DescribeContinuousBackupsCommand = DescribeContinuousBackupsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeContributorInsightsCommand.js +var require_DescribeContributorInsightsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeContributorInsightsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeContributorInsightsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeContributorInsightsCommand = class _DescribeContributorInsightsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeContributorInsightsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeContributorInsightsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeContributorInsights" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeContributorInsightsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeContributorInsightsCommand)(output, context); + } + }; + exports2.DescribeContributorInsightsCommand = DescribeContributorInsightsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeExportCommand.js +var require_DescribeExportCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeExportCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeExportCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeExportCommand = class _DescribeExportCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeExportCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeExportCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeExport" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeExportCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeExportCommand)(output, context); + } + }; + exports2.DescribeExportCommand = DescribeExportCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeGlobalTableCommand.js +var require_DescribeGlobalTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeGlobalTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeGlobalTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeGlobalTableCommand = class _DescribeGlobalTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeGlobalTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeGlobalTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeGlobalTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeGlobalTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeGlobalTableCommand)(output, context); + } + }; + exports2.DescribeGlobalTableCommand = DescribeGlobalTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeGlobalTableSettingsCommand.js +var require_DescribeGlobalTableSettingsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeGlobalTableSettingsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeGlobalTableSettingsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeGlobalTableSettingsCommand = class _DescribeGlobalTableSettingsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeGlobalTableSettingsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeGlobalTableSettingsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeGlobalTableSettings" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeGlobalTableSettingsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeGlobalTableSettingsCommand)(output, context); + } + }; + exports2.DescribeGlobalTableSettingsCommand = DescribeGlobalTableSettingsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeImportCommand.js +var require_DescribeImportCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeImportCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeImportCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeImportCommand = class _DescribeImportCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeImportCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeImportCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeImport" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeImportCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeImportCommand)(output, context); + } + }; + exports2.DescribeImportCommand = DescribeImportCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeKinesisStreamingDestinationCommand.js +var require_DescribeKinesisStreamingDestinationCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeKinesisStreamingDestinationCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeKinesisStreamingDestinationCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeKinesisStreamingDestinationCommand = class _DescribeKinesisStreamingDestinationCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeKinesisStreamingDestinationCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeKinesisStreamingDestinationCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeKinesisStreamingDestination" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeKinesisStreamingDestinationCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeKinesisStreamingDestinationCommand)(output, context); + } + }; + exports2.DescribeKinesisStreamingDestinationCommand = DescribeKinesisStreamingDestinationCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeLimitsCommand.js +var require_DescribeLimitsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeLimitsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeLimitsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeLimitsCommand = class _DescribeLimitsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeLimitsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeLimitsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeLimits" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeLimitsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeLimitsCommand)(output, context); + } + }; + exports2.DescribeLimitsCommand = DescribeLimitsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTableCommand.js +var require_DescribeTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeTableCommand2 = class _DescribeTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeTableCommand)(output, context); + } + }; + exports2.DescribeTableCommand = DescribeTableCommand2; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTableReplicaAutoScalingCommand.js +var require_DescribeTableReplicaAutoScalingCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTableReplicaAutoScalingCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeTableReplicaAutoScalingCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeTableReplicaAutoScalingCommand = class _DescribeTableReplicaAutoScalingCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeTableReplicaAutoScalingCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeTableReplicaAutoScalingCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeTableReplicaAutoScaling" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeTableReplicaAutoScalingCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeTableReplicaAutoScalingCommand)(output, context); + } + }; + exports2.DescribeTableReplicaAutoScalingCommand = DescribeTableReplicaAutoScalingCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTimeToLiveCommand.js +var require_DescribeTimeToLiveCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DescribeTimeToLiveCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DescribeTimeToLiveCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DescribeTimeToLiveCommand = class _DescribeTimeToLiveCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DescribeTimeToLiveCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DescribeTimeToLiveCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DescribeTimeToLive" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DescribeTimeToLiveCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DescribeTimeToLiveCommand)(output, context); + } + }; + exports2.DescribeTimeToLiveCommand = DescribeTimeToLiveCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DisableKinesisStreamingDestinationCommand.js +var require_DisableKinesisStreamingDestinationCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/DisableKinesisStreamingDestinationCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DisableKinesisStreamingDestinationCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var DisableKinesisStreamingDestinationCommand = class _DisableKinesisStreamingDestinationCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DisableKinesisStreamingDestinationCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "DisableKinesisStreamingDestinationCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "DisableKinesisStreamingDestination" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_DisableKinesisStreamingDestinationCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_DisableKinesisStreamingDestinationCommand)(output, context); + } + }; + exports2.DisableKinesisStreamingDestinationCommand = DisableKinesisStreamingDestinationCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/EnableKinesisStreamingDestinationCommand.js +var require_EnableKinesisStreamingDestinationCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/EnableKinesisStreamingDestinationCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EnableKinesisStreamingDestinationCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var EnableKinesisStreamingDestinationCommand = class _EnableKinesisStreamingDestinationCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _EnableKinesisStreamingDestinationCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "EnableKinesisStreamingDestinationCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "EnableKinesisStreamingDestination" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_EnableKinesisStreamingDestinationCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_EnableKinesisStreamingDestinationCommand)(output, context); + } + }; + exports2.EnableKinesisStreamingDestinationCommand = EnableKinesisStreamingDestinationCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExecuteStatementCommand.js +var require_ExecuteStatementCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExecuteStatementCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExecuteStatementCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ExecuteStatementCommand = class _ExecuteStatementCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ExecuteStatementCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ExecuteStatementCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ExecuteStatement" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ExecuteStatementCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ExecuteStatementCommand)(output, context); + } + }; + exports2.ExecuteStatementCommand = ExecuteStatementCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExecuteTransactionCommand.js +var require_ExecuteTransactionCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExecuteTransactionCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExecuteTransactionCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ExecuteTransactionCommand = class _ExecuteTransactionCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ExecuteTransactionCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ExecuteTransactionCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ExecuteTransaction" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ExecuteTransactionCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ExecuteTransactionCommand)(output, context); + } + }; + exports2.ExecuteTransactionCommand = ExecuteTransactionCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExportTableToPointInTimeCommand.js +var require_ExportTableToPointInTimeCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ExportTableToPointInTimeCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExportTableToPointInTimeCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ExportTableToPointInTimeCommand = class _ExportTableToPointInTimeCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ExportTableToPointInTimeCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ExportTableToPointInTimeCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ExportTableToPointInTime" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ExportTableToPointInTimeCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ExportTableToPointInTimeCommand)(output, context); + } + }; + exports2.ExportTableToPointInTimeCommand = ExportTableToPointInTimeCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/GetItemCommand.js +var require_GetItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/GetItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GetItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var GetItemCommand = class _GetItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "GetItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "GetItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_GetItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_GetItemCommand)(output, context); + } + }; + exports2.GetItemCommand = GetItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ImportTableCommand.js +var require_ImportTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ImportTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ImportTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ImportTableCommand = class _ImportTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ImportTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ImportTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ImportTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ImportTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ImportTableCommand)(output, context); + } + }; + exports2.ImportTableCommand = ImportTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListBackupsCommand.js +var require_ListBackupsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListBackupsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListBackupsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListBackupsCommand = class _ListBackupsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBackupsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListBackupsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListBackups" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListBackupsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListBackupsCommand)(output, context); + } + }; + exports2.ListBackupsCommand = ListBackupsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListContributorInsightsCommand.js +var require_ListContributorInsightsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListContributorInsightsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListContributorInsightsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListContributorInsightsCommand = class _ListContributorInsightsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListContributorInsightsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListContributorInsightsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListContributorInsights" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListContributorInsightsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListContributorInsightsCommand)(output, context); + } + }; + exports2.ListContributorInsightsCommand = ListContributorInsightsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListExportsCommand.js +var require_ListExportsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListExportsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListExportsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListExportsCommand = class _ListExportsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListExportsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListExportsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListExports" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListExportsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListExportsCommand)(output, context); + } + }; + exports2.ListExportsCommand = ListExportsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListGlobalTablesCommand.js +var require_ListGlobalTablesCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListGlobalTablesCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListGlobalTablesCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListGlobalTablesCommand = class _ListGlobalTablesCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListGlobalTablesCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListGlobalTablesCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListGlobalTables" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListGlobalTablesCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListGlobalTablesCommand)(output, context); + } + }; + exports2.ListGlobalTablesCommand = ListGlobalTablesCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListImportsCommand.js +var require_ListImportsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListImportsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListImportsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListImportsCommand = class _ListImportsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListImportsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListImportsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListImports" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListImportsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListImportsCommand)(output, context); + } + }; + exports2.ListImportsCommand = ListImportsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListTablesCommand.js +var require_ListTablesCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListTablesCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListTablesCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListTablesCommand = class _ListTablesCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListTablesCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListTablesCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListTables" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListTablesCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListTablesCommand)(output, context); + } + }; + exports2.ListTablesCommand = ListTablesCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListTagsOfResourceCommand.js +var require_ListTagsOfResourceCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ListTagsOfResourceCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ListTagsOfResourceCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ListTagsOfResourceCommand = class _ListTagsOfResourceCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListTagsOfResourceCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ListTagsOfResourceCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "ListTagsOfResource" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ListTagsOfResourceCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ListTagsOfResourceCommand)(output, context); + } + }; + exports2.ListTagsOfResourceCommand = ListTagsOfResourceCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/PutItemCommand.js +var require_PutItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/PutItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PutItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var PutItemCommand = class _PutItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "PutItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "PutItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_PutItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_PutItemCommand)(output, context); + } + }; + exports2.PutItemCommand = PutItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/QueryCommand.js +var require_QueryCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/QueryCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueryCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var QueryCommand = class _QueryCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _QueryCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "QueryCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "Query" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_QueryCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_QueryCommand)(output, context); + } + }; + exports2.QueryCommand = QueryCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/RestoreTableFromBackupCommand.js +var require_RestoreTableFromBackupCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/RestoreTableFromBackupCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RestoreTableFromBackupCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var RestoreTableFromBackupCommand = class _RestoreTableFromBackupCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _RestoreTableFromBackupCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "RestoreTableFromBackupCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "RestoreTableFromBackup" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_RestoreTableFromBackupCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_RestoreTableFromBackupCommand)(output, context); + } + }; + exports2.RestoreTableFromBackupCommand = RestoreTableFromBackupCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/RestoreTableToPointInTimeCommand.js +var require_RestoreTableToPointInTimeCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/RestoreTableToPointInTimeCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RestoreTableToPointInTimeCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var RestoreTableToPointInTimeCommand = class _RestoreTableToPointInTimeCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _RestoreTableToPointInTimeCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "RestoreTableToPointInTimeCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "RestoreTableToPointInTime" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_RestoreTableToPointInTimeCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_RestoreTableToPointInTimeCommand)(output, context); + } + }; + exports2.RestoreTableToPointInTimeCommand = RestoreTableToPointInTimeCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ScanCommand.js +var require_ScanCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/ScanCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ScanCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var ScanCommand = class _ScanCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ScanCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "ScanCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "Scan" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_ScanCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_ScanCommand)(output, context); + } + }; + exports2.ScanCommand = ScanCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TagResourceCommand.js +var require_TagResourceCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TagResourceCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TagResourceCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var TagResourceCommand = class _TagResourceCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _TagResourceCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "TagResourceCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "TagResource" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_TagResourceCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_TagResourceCommand)(output, context); + } + }; + exports2.TagResourceCommand = TagResourceCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TransactGetItemsCommand.js +var require_TransactGetItemsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TransactGetItemsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TransactGetItemsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var TransactGetItemsCommand = class _TransactGetItemsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _TransactGetItemsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "TransactGetItemsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "TransactGetItems" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_TransactGetItemsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_TransactGetItemsCommand)(output, context); + } + }; + exports2.TransactGetItemsCommand = TransactGetItemsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TransactWriteItemsCommand.js +var require_TransactWriteItemsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/TransactWriteItemsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TransactWriteItemsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var TransactWriteItemsCommand = class _TransactWriteItemsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _TransactWriteItemsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "TransactWriteItemsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "TransactWriteItems" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_TransactWriteItemsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_TransactWriteItemsCommand)(output, context); + } + }; + exports2.TransactWriteItemsCommand = TransactWriteItemsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UntagResourceCommand.js +var require_UntagResourceCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UntagResourceCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UntagResourceCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UntagResourceCommand = class _UntagResourceCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UntagResourceCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UntagResourceCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UntagResource" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UntagResourceCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UntagResourceCommand)(output, context); + } + }; + exports2.UntagResourceCommand = UntagResourceCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateContinuousBackupsCommand.js +var require_UpdateContinuousBackupsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateContinuousBackupsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateContinuousBackupsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateContinuousBackupsCommand = class _UpdateContinuousBackupsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateContinuousBackupsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateContinuousBackupsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateContinuousBackups" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateContinuousBackupsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateContinuousBackupsCommand)(output, context); + } + }; + exports2.UpdateContinuousBackupsCommand = UpdateContinuousBackupsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateContributorInsightsCommand.js +var require_UpdateContributorInsightsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateContributorInsightsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateContributorInsightsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateContributorInsightsCommand = class _UpdateContributorInsightsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateContributorInsightsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateContributorInsightsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateContributorInsights" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateContributorInsightsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateContributorInsightsCommand)(output, context); + } + }; + exports2.UpdateContributorInsightsCommand = UpdateContributorInsightsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateGlobalTableCommand.js +var require_UpdateGlobalTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateGlobalTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateGlobalTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateGlobalTableCommand = class _UpdateGlobalTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateGlobalTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateGlobalTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateGlobalTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateGlobalTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateGlobalTableCommand)(output, context); + } + }; + exports2.UpdateGlobalTableCommand = UpdateGlobalTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateGlobalTableSettingsCommand.js +var require_UpdateGlobalTableSettingsCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateGlobalTableSettingsCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateGlobalTableSettingsCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateGlobalTableSettingsCommand = class _UpdateGlobalTableSettingsCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateGlobalTableSettingsCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateGlobalTableSettingsCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateGlobalTableSettings" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateGlobalTableSettingsCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateGlobalTableSettingsCommand)(output, context); + } + }; + exports2.UpdateGlobalTableSettingsCommand = UpdateGlobalTableSettingsCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateItemCommand.js +var require_UpdateItemCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateItemCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateItemCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateItemCommand = class _UpdateItemCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateItemCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateItemCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateItem" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateItemCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateItemCommand)(output, context); + } + }; + exports2.UpdateItemCommand = UpdateItemCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTableCommand.js +var require_UpdateTableCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTableCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateTableCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateTableCommand = class _UpdateTableCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateTableCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateTableCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateTable" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateTableCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateTableCommand)(output, context); + } + }; + exports2.UpdateTableCommand = UpdateTableCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTableReplicaAutoScalingCommand.js +var require_UpdateTableReplicaAutoScalingCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTableReplicaAutoScalingCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateTableReplicaAutoScalingCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateTableReplicaAutoScalingCommand = class _UpdateTableReplicaAutoScalingCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateTableReplicaAutoScalingCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateTableReplicaAutoScalingCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateTableReplicaAutoScaling" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateTableReplicaAutoScalingCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateTableReplicaAutoScalingCommand)(output, context); + } + }; + exports2.UpdateTableReplicaAutoScalingCommand = UpdateTableReplicaAutoScalingCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTimeToLiveCommand.js +var require_UpdateTimeToLiveCommand = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/UpdateTimeToLiveCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UpdateTimeToLiveCommand = exports2.$Command = void 0; + var middleware_endpoint_1 = require_dist_cjs28(); + var middleware_serde_1 = require_dist_cjs27(); + var smithy_client_1 = require_dist_cjs36(); + Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { + return smithy_client_1.Command; + } }); + var types_1 = require_dist_cjs(); + var Aws_json1_0_1 = require_Aws_json1_0(); + var UpdateTimeToLiveCommand = class _UpdateTimeToLiveCommand extends smithy_client_1.Command { + static getEndpointParameterInstructions() { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } + }; + } + constructor(input) { + super(); + this.input = input; + } + resolveMiddleware(clientStack, configuration, options) { + this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UpdateTimeToLiveCommand.getEndpointParameterInstructions())); + const stack = clientStack.concat(this.middlewareStack); + const { logger } = configuration; + const clientName = "DynamoDBClient"; + const commandName = "UpdateTimeToLiveCommand"; + const handlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_) => _, + outputFilterSensitiveLog: (_) => _, + [types_1.SMITHY_CONTEXT_KEY]: { + service: "DynamoDB_20120810", + operation: "UpdateTimeToLive" + } + }; + const { requestHandler } = configuration; + return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); + } + serialize(input, context) { + return (0, Aws_json1_0_1.se_UpdateTimeToLiveCommand)(input, context); + } + deserialize(output, context) { + return (0, Aws_json1_0_1.de_UpdateTimeToLiveCommand)(output, context); + } + }; + exports2.UpdateTimeToLiveCommand = UpdateTimeToLiveCommand; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/DynamoDB.js +var require_DynamoDB = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/DynamoDB.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DynamoDB = void 0; + var smithy_client_1 = require_dist_cjs36(); + var BatchExecuteStatementCommand_1 = require_BatchExecuteStatementCommand(); + var BatchGetItemCommand_1 = require_BatchGetItemCommand(); + var BatchWriteItemCommand_1 = require_BatchWriteItemCommand(); + var CreateBackupCommand_1 = require_CreateBackupCommand(); + var CreateGlobalTableCommand_1 = require_CreateGlobalTableCommand(); + var CreateTableCommand_1 = require_CreateTableCommand(); + var DeleteBackupCommand_1 = require_DeleteBackupCommand(); + var DeleteItemCommand_1 = require_DeleteItemCommand(); + var DeleteTableCommand_1 = require_DeleteTableCommand(); + var DescribeBackupCommand_1 = require_DescribeBackupCommand(); + var DescribeContinuousBackupsCommand_1 = require_DescribeContinuousBackupsCommand(); + var DescribeContributorInsightsCommand_1 = require_DescribeContributorInsightsCommand(); + var DescribeEndpointsCommand_1 = require_DescribeEndpointsCommand(); + var DescribeExportCommand_1 = require_DescribeExportCommand(); + var DescribeGlobalTableCommand_1 = require_DescribeGlobalTableCommand(); + var DescribeGlobalTableSettingsCommand_1 = require_DescribeGlobalTableSettingsCommand(); + var DescribeImportCommand_1 = require_DescribeImportCommand(); + var DescribeKinesisStreamingDestinationCommand_1 = require_DescribeKinesisStreamingDestinationCommand(); + var DescribeLimitsCommand_1 = require_DescribeLimitsCommand(); + var DescribeTableCommand_1 = require_DescribeTableCommand(); + var DescribeTableReplicaAutoScalingCommand_1 = require_DescribeTableReplicaAutoScalingCommand(); + var DescribeTimeToLiveCommand_1 = require_DescribeTimeToLiveCommand(); + var DisableKinesisStreamingDestinationCommand_1 = require_DisableKinesisStreamingDestinationCommand(); + var EnableKinesisStreamingDestinationCommand_1 = require_EnableKinesisStreamingDestinationCommand(); + var ExecuteStatementCommand_1 = require_ExecuteStatementCommand(); + var ExecuteTransactionCommand_1 = require_ExecuteTransactionCommand(); + var ExportTableToPointInTimeCommand_1 = require_ExportTableToPointInTimeCommand(); + var GetItemCommand_1 = require_GetItemCommand(); + var ImportTableCommand_1 = require_ImportTableCommand(); + var ListBackupsCommand_1 = require_ListBackupsCommand(); + var ListContributorInsightsCommand_1 = require_ListContributorInsightsCommand(); + var ListExportsCommand_1 = require_ListExportsCommand(); + var ListGlobalTablesCommand_1 = require_ListGlobalTablesCommand(); + var ListImportsCommand_1 = require_ListImportsCommand(); + var ListTablesCommand_1 = require_ListTablesCommand(); + var ListTagsOfResourceCommand_1 = require_ListTagsOfResourceCommand(); + var PutItemCommand_1 = require_PutItemCommand(); + var QueryCommand_1 = require_QueryCommand(); + var RestoreTableFromBackupCommand_1 = require_RestoreTableFromBackupCommand(); + var RestoreTableToPointInTimeCommand_1 = require_RestoreTableToPointInTimeCommand(); + var ScanCommand_1 = require_ScanCommand(); + var TagResourceCommand_1 = require_TagResourceCommand(); + var TransactGetItemsCommand_1 = require_TransactGetItemsCommand(); + var TransactWriteItemsCommand_1 = require_TransactWriteItemsCommand(); + var UntagResourceCommand_1 = require_UntagResourceCommand(); + var UpdateContinuousBackupsCommand_1 = require_UpdateContinuousBackupsCommand(); + var UpdateContributorInsightsCommand_1 = require_UpdateContributorInsightsCommand(); + var UpdateGlobalTableCommand_1 = require_UpdateGlobalTableCommand(); + var UpdateGlobalTableSettingsCommand_1 = require_UpdateGlobalTableSettingsCommand(); + var UpdateItemCommand_1 = require_UpdateItemCommand(); + var UpdateTableCommand_1 = require_UpdateTableCommand(); + var UpdateTableReplicaAutoScalingCommand_1 = require_UpdateTableReplicaAutoScalingCommand(); + var UpdateTimeToLiveCommand_1 = require_UpdateTimeToLiveCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var commands = { + BatchExecuteStatementCommand: BatchExecuteStatementCommand_1.BatchExecuteStatementCommand, + BatchGetItemCommand: BatchGetItemCommand_1.BatchGetItemCommand, + BatchWriteItemCommand: BatchWriteItemCommand_1.BatchWriteItemCommand, + CreateBackupCommand: CreateBackupCommand_1.CreateBackupCommand, + CreateGlobalTableCommand: CreateGlobalTableCommand_1.CreateGlobalTableCommand, + CreateTableCommand: CreateTableCommand_1.CreateTableCommand, + DeleteBackupCommand: DeleteBackupCommand_1.DeleteBackupCommand, + DeleteItemCommand: DeleteItemCommand_1.DeleteItemCommand, + DeleteTableCommand: DeleteTableCommand_1.DeleteTableCommand, + DescribeBackupCommand: DescribeBackupCommand_1.DescribeBackupCommand, + DescribeContinuousBackupsCommand: DescribeContinuousBackupsCommand_1.DescribeContinuousBackupsCommand, + DescribeContributorInsightsCommand: DescribeContributorInsightsCommand_1.DescribeContributorInsightsCommand, + DescribeEndpointsCommand: DescribeEndpointsCommand_1.DescribeEndpointsCommand, + DescribeExportCommand: DescribeExportCommand_1.DescribeExportCommand, + DescribeGlobalTableCommand: DescribeGlobalTableCommand_1.DescribeGlobalTableCommand, + DescribeGlobalTableSettingsCommand: DescribeGlobalTableSettingsCommand_1.DescribeGlobalTableSettingsCommand, + DescribeImportCommand: DescribeImportCommand_1.DescribeImportCommand, + DescribeKinesisStreamingDestinationCommand: DescribeKinesisStreamingDestinationCommand_1.DescribeKinesisStreamingDestinationCommand, + DescribeLimitsCommand: DescribeLimitsCommand_1.DescribeLimitsCommand, + DescribeTableCommand: DescribeTableCommand_1.DescribeTableCommand, + DescribeTableReplicaAutoScalingCommand: DescribeTableReplicaAutoScalingCommand_1.DescribeTableReplicaAutoScalingCommand, + DescribeTimeToLiveCommand: DescribeTimeToLiveCommand_1.DescribeTimeToLiveCommand, + DisableKinesisStreamingDestinationCommand: DisableKinesisStreamingDestinationCommand_1.DisableKinesisStreamingDestinationCommand, + EnableKinesisStreamingDestinationCommand: EnableKinesisStreamingDestinationCommand_1.EnableKinesisStreamingDestinationCommand, + ExecuteStatementCommand: ExecuteStatementCommand_1.ExecuteStatementCommand, + ExecuteTransactionCommand: ExecuteTransactionCommand_1.ExecuteTransactionCommand, + ExportTableToPointInTimeCommand: ExportTableToPointInTimeCommand_1.ExportTableToPointInTimeCommand, + GetItemCommand: GetItemCommand_1.GetItemCommand, + ImportTableCommand: ImportTableCommand_1.ImportTableCommand, + ListBackupsCommand: ListBackupsCommand_1.ListBackupsCommand, + ListContributorInsightsCommand: ListContributorInsightsCommand_1.ListContributorInsightsCommand, + ListExportsCommand: ListExportsCommand_1.ListExportsCommand, + ListGlobalTablesCommand: ListGlobalTablesCommand_1.ListGlobalTablesCommand, + ListImportsCommand: ListImportsCommand_1.ListImportsCommand, + ListTablesCommand: ListTablesCommand_1.ListTablesCommand, + ListTagsOfResourceCommand: ListTagsOfResourceCommand_1.ListTagsOfResourceCommand, + PutItemCommand: PutItemCommand_1.PutItemCommand, + QueryCommand: QueryCommand_1.QueryCommand, + RestoreTableFromBackupCommand: RestoreTableFromBackupCommand_1.RestoreTableFromBackupCommand, + RestoreTableToPointInTimeCommand: RestoreTableToPointInTimeCommand_1.RestoreTableToPointInTimeCommand, + ScanCommand: ScanCommand_1.ScanCommand, + TagResourceCommand: TagResourceCommand_1.TagResourceCommand, + TransactGetItemsCommand: TransactGetItemsCommand_1.TransactGetItemsCommand, + TransactWriteItemsCommand: TransactWriteItemsCommand_1.TransactWriteItemsCommand, + UntagResourceCommand: UntagResourceCommand_1.UntagResourceCommand, + UpdateContinuousBackupsCommand: UpdateContinuousBackupsCommand_1.UpdateContinuousBackupsCommand, + UpdateContributorInsightsCommand: UpdateContributorInsightsCommand_1.UpdateContributorInsightsCommand, + UpdateGlobalTableCommand: UpdateGlobalTableCommand_1.UpdateGlobalTableCommand, + UpdateGlobalTableSettingsCommand: UpdateGlobalTableSettingsCommand_1.UpdateGlobalTableSettingsCommand, + UpdateItemCommand: UpdateItemCommand_1.UpdateItemCommand, + UpdateTableCommand: UpdateTableCommand_1.UpdateTableCommand, + UpdateTableReplicaAutoScalingCommand: UpdateTableReplicaAutoScalingCommand_1.UpdateTableReplicaAutoScalingCommand, + UpdateTimeToLiveCommand: UpdateTimeToLiveCommand_1.UpdateTimeToLiveCommand + }; + var DynamoDB = class extends DynamoDBClient_1.DynamoDBClient { + }; + exports2.DynamoDB = DynamoDB; + (0, smithy_client_1.createAggregatedClient)(commands, DynamoDB); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/index.js +var require_commands3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/commands/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_BatchExecuteStatementCommand(), exports2); + tslib_1.__exportStar(require_BatchGetItemCommand(), exports2); + tslib_1.__exportStar(require_BatchWriteItemCommand(), exports2); + tslib_1.__exportStar(require_CreateBackupCommand(), exports2); + tslib_1.__exportStar(require_CreateGlobalTableCommand(), exports2); + tslib_1.__exportStar(require_CreateTableCommand(), exports2); + tslib_1.__exportStar(require_DeleteBackupCommand(), exports2); + tslib_1.__exportStar(require_DeleteItemCommand(), exports2); + tslib_1.__exportStar(require_DeleteTableCommand(), exports2); + tslib_1.__exportStar(require_DescribeBackupCommand(), exports2); + tslib_1.__exportStar(require_DescribeContinuousBackupsCommand(), exports2); + tslib_1.__exportStar(require_DescribeContributorInsightsCommand(), exports2); + tslib_1.__exportStar(require_DescribeEndpointsCommand(), exports2); + tslib_1.__exportStar(require_DescribeExportCommand(), exports2); + tslib_1.__exportStar(require_DescribeGlobalTableCommand(), exports2); + tslib_1.__exportStar(require_DescribeGlobalTableSettingsCommand(), exports2); + tslib_1.__exportStar(require_DescribeImportCommand(), exports2); + tslib_1.__exportStar(require_DescribeKinesisStreamingDestinationCommand(), exports2); + tslib_1.__exportStar(require_DescribeLimitsCommand(), exports2); + tslib_1.__exportStar(require_DescribeTableCommand(), exports2); + tslib_1.__exportStar(require_DescribeTableReplicaAutoScalingCommand(), exports2); + tslib_1.__exportStar(require_DescribeTimeToLiveCommand(), exports2); + tslib_1.__exportStar(require_DisableKinesisStreamingDestinationCommand(), exports2); + tslib_1.__exportStar(require_EnableKinesisStreamingDestinationCommand(), exports2); + tslib_1.__exportStar(require_ExecuteStatementCommand(), exports2); + tslib_1.__exportStar(require_ExecuteTransactionCommand(), exports2); + tslib_1.__exportStar(require_ExportTableToPointInTimeCommand(), exports2); + tslib_1.__exportStar(require_GetItemCommand(), exports2); + tslib_1.__exportStar(require_ImportTableCommand(), exports2); + tslib_1.__exportStar(require_ListBackupsCommand(), exports2); + tslib_1.__exportStar(require_ListContributorInsightsCommand(), exports2); + tslib_1.__exportStar(require_ListExportsCommand(), exports2); + tslib_1.__exportStar(require_ListGlobalTablesCommand(), exports2); + tslib_1.__exportStar(require_ListImportsCommand(), exports2); + tslib_1.__exportStar(require_ListTablesCommand(), exports2); + tslib_1.__exportStar(require_ListTagsOfResourceCommand(), exports2); + tslib_1.__exportStar(require_PutItemCommand(), exports2); + tslib_1.__exportStar(require_QueryCommand(), exports2); + tslib_1.__exportStar(require_RestoreTableFromBackupCommand(), exports2); + tslib_1.__exportStar(require_RestoreTableToPointInTimeCommand(), exports2); + tslib_1.__exportStar(require_ScanCommand(), exports2); + tslib_1.__exportStar(require_TagResourceCommand(), exports2); + tslib_1.__exportStar(require_TransactGetItemsCommand(), exports2); + tslib_1.__exportStar(require_TransactWriteItemsCommand(), exports2); + tslib_1.__exportStar(require_UntagResourceCommand(), exports2); + tslib_1.__exportStar(require_UpdateContinuousBackupsCommand(), exports2); + tslib_1.__exportStar(require_UpdateContributorInsightsCommand(), exports2); + tslib_1.__exportStar(require_UpdateGlobalTableCommand(), exports2); + tslib_1.__exportStar(require_UpdateGlobalTableSettingsCommand(), exports2); + tslib_1.__exportStar(require_UpdateItemCommand(), exports2); + tslib_1.__exportStar(require_UpdateTableCommand(), exports2); + tslib_1.__exportStar(require_UpdateTableReplicaAutoScalingCommand(), exports2); + tslib_1.__exportStar(require_UpdateTimeToLiveCommand(), exports2); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/Interfaces.js +var require_Interfaces2 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/Interfaces.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListContributorInsightsPaginator.js +var require_ListContributorInsightsPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListContributorInsightsPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListContributorInsights = void 0; + var ListContributorInsightsCommand_1 = require_ListContributorInsightsCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListContributorInsightsCommand_1.ListContributorInsightsCommand(input), ...args); + }; + async function* paginateListContributorInsights(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListContributorInsights = paginateListContributorInsights; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListExportsPaginator.js +var require_ListExportsPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListExportsPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListExports = void 0; + var ListExportsCommand_1 = require_ListExportsCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListExportsCommand_1.ListExportsCommand(input), ...args); + }; + async function* paginateListExports(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListExports = paginateListExports; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListImportsPaginator.js +var require_ListImportsPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListImportsPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListImports = void 0; + var ListImportsCommand_1 = require_ListImportsCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListImportsCommand_1.ListImportsCommand(input), ...args); + }; + async function* paginateListImports(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.NextToken = token; + input["PageSize"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListImports = paginateListImports; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListTablesPaginator.js +var require_ListTablesPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ListTablesPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateListTables = void 0; + var ListTablesCommand_1 = require_ListTablesCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ListTablesCommand_1.ListTablesCommand(input), ...args); + }; + async function* paginateListTables(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.ExclusiveStartTableName = token; + input["Limit"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.LastEvaluatedTableName; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateListTables = paginateListTables; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/QueryPaginator.js +var require_QueryPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/QueryPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateQuery = void 0; + var QueryCommand_1 = require_QueryCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new QueryCommand_1.QueryCommand(input), ...args); + }; + async function* paginateQuery(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.ExclusiveStartKey = token; + input["Limit"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.LastEvaluatedKey; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateQuery = paginateQuery; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ScanPaginator.js +var require_ScanPaginator = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/ScanPaginator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.paginateScan = void 0; + var ScanCommand_1 = require_ScanCommand(); + var DynamoDBClient_1 = require_DynamoDBClient(); + var makePagedClientRequest = async (client, input, ...args) => { + return await client.send(new ScanCommand_1.ScanCommand(input), ...args); + }; + async function* paginateScan(config, input, ...additionalArguments) { + let token = config.startingToken || void 0; + let hasNext = true; + let page; + while (hasNext) { + input.ExclusiveStartKey = token; + input["Limit"] = config.pageSize; + if (config.client instanceof DynamoDBClient_1.DynamoDBClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected DynamoDB | DynamoDBClient"); + } + yield page; + const prevToken = token; + token = page.LastEvaluatedKey; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + return void 0; + } + exports2.paginateScan = paginateScan; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/index.js +var require_pagination3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/pagination/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_Interfaces2(), exports2); + tslib_1.__exportStar(require_ListContributorInsightsPaginator(), exports2); + tslib_1.__exportStar(require_ListExportsPaginator(), exports2); + tslib_1.__exportStar(require_ListImportsPaginator(), exports2); + tslib_1.__exportStar(require_ListTablesPaginator(), exports2); + tslib_1.__exportStar(require_QueryPaginator(), exports2); + tslib_1.__exportStar(require_ScanPaginator(), exports2); + } +}); + +// node_modules/@smithy/util-waiter/dist-cjs/index.js +var require_dist_cjs54 = __commonJS({ + "node_modules/@smithy/util-waiter/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + WaiterState: () => WaiterState, + checkExceptions: () => checkExceptions, + createWaiter: () => createWaiter, + waiterServiceDefaults: () => waiterServiceDefaults + }); + module2.exports = __toCommonJS2(src_exports); + var sleep = /* @__PURE__ */ __name((seconds) => { + return new Promise((resolve) => setTimeout(resolve, seconds * 1e3)); + }, "sleep"); + var waiterServiceDefaults = { + minDelay: 2, + maxDelay: 120 + }; + var WaiterState = /* @__PURE__ */ ((WaiterState2) => { + WaiterState2["ABORTED"] = "ABORTED"; + WaiterState2["FAILURE"] = "FAILURE"; + WaiterState2["SUCCESS"] = "SUCCESS"; + WaiterState2["RETRY"] = "RETRY"; + WaiterState2["TIMEOUT"] = "TIMEOUT"; + return WaiterState2; + })(WaiterState || {}); + var checkExceptions = /* @__PURE__ */ __name((result) => { + if (result.state === "ABORTED") { + const abortError = new Error( + `${JSON.stringify({ + ...result, + reason: "Request was aborted" + })}` + ); + abortError.name = "AbortError"; + throw abortError; + } else if (result.state === "TIMEOUT") { + const timeoutError = new Error( + `${JSON.stringify({ + ...result, + reason: "Waiter has timed out" + })}` + ); + timeoutError.name = "TimeoutError"; + throw timeoutError; + } else if (result.state !== "SUCCESS") { + throw new Error(`${JSON.stringify({ result })}`); + } + return result; + }, "checkExceptions"); + var exponentialBackoffWithJitter = /* @__PURE__ */ __name((minDelay, maxDelay, attemptCeiling, attempt) => { + if (attempt > attemptCeiling) + return maxDelay; + const delay = minDelay * 2 ** (attempt - 1); + return randomInRange(minDelay, delay); + }, "exponentialBackoffWithJitter"); + var randomInRange = /* @__PURE__ */ __name((min, max) => min + Math.random() * (max - min), "randomInRange"); + var runPolling = /* @__PURE__ */ __name(async ({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }, input, acceptorChecks) => { + var _a; + const { state, reason } = await acceptorChecks(client, input); + if (state !== "RETRY") { + return { state, reason }; + } + let currentAttempt = 1; + const waitUntil = Date.now() + maxWaitTime * 1e3; + const attemptCeiling = Math.log(maxDelay / minDelay) / Math.log(2) + 1; + while (true) { + if (((_a = abortController == null ? void 0 : abortController.signal) == null ? void 0 : _a.aborted) || (abortSignal == null ? void 0 : abortSignal.aborted)) { + return { + state: "ABORTED" + /* ABORTED */ + }; + } + const delay = exponentialBackoffWithJitter(minDelay, maxDelay, attemptCeiling, currentAttempt); + if (Date.now() + delay * 1e3 > waitUntil) { + return { + state: "TIMEOUT" + /* TIMEOUT */ + }; + } + await sleep(delay); + const { state: state2, reason: reason2 } = await acceptorChecks(client, input); + if (state2 !== "RETRY") { + return { state: state2, reason: reason2 }; + } + currentAttempt += 1; + } + }, "runPolling"); + var validateWaiterOptions = /* @__PURE__ */ __name((options) => { + if (options.maxWaitTime < 1) { + throw new Error(`WaiterConfiguration.maxWaitTime must be greater than 0`); + } else if (options.minDelay < 1) { + throw new Error(`WaiterConfiguration.minDelay must be greater than 0`); + } else if (options.maxDelay < 1) { + throw new Error(`WaiterConfiguration.maxDelay must be greater than 0`); + } else if (options.maxWaitTime <= options.minDelay) { + throw new Error( + `WaiterConfiguration.maxWaitTime [${options.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter` + ); + } else if (options.maxDelay < options.minDelay) { + throw new Error( + `WaiterConfiguration.maxDelay [${options.maxDelay}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter` + ); + } + }, "validateWaiterOptions"); + var abortTimeout = /* @__PURE__ */ __name(async (abortSignal) => { + return new Promise((resolve) => { + abortSignal.onabort = () => resolve({ + state: "ABORTED" + /* ABORTED */ + }); + }); + }, "abortTimeout"); + var createWaiter = /* @__PURE__ */ __name(async (options, input, acceptorChecks) => { + const params = { + ...waiterServiceDefaults, + ...options + }; + validateWaiterOptions(params); + const exitConditions = [runPolling(params, input, acceptorChecks)]; + if (options.abortController) { + exitConditions.push(abortTimeout(options.abortController.signal)); + } + if (options.abortSignal) { + exitConditions.push(abortTimeout(options.abortSignal)); + } + return Promise.race(exitConditions); + }, "createWaiter"); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/waitForTableExists.js +var require_waitForTableExists = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/waitForTableExists.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.waitUntilTableExists = exports2.waitForTableExists = void 0; + var util_waiter_1 = require_dist_cjs54(); + var DescribeTableCommand_1 = require_DescribeTableCommand(); + var checkState = async (client, input) => { + let reason; + try { + const result = await client.send(new DescribeTableCommand_1.DescribeTableCommand(input)); + reason = result; + try { + const returnComparator = () => { + return result.Table.TableStatus; + }; + if (returnComparator() === "ACTIVE") { + return { state: util_waiter_1.WaiterState.SUCCESS, reason }; + } + } catch (e) { + } + } catch (exception) { + reason = exception; + if (exception.name && exception.name == "ResourceNotFoundException") { + return { state: util_waiter_1.WaiterState.RETRY, reason }; + } + } + return { state: util_waiter_1.WaiterState.RETRY, reason }; + }; + var waitForTableExists = async (params, input) => { + const serviceDefaults = { minDelay: 20, maxDelay: 120 }; + return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); + }; + exports2.waitForTableExists = waitForTableExists; + var waitUntilTableExists = async (params, input) => { + const serviceDefaults = { minDelay: 20, maxDelay: 120 }; + const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); + return (0, util_waiter_1.checkExceptions)(result); + }; + exports2.waitUntilTableExists = waitUntilTableExists; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/waitForTableNotExists.js +var require_waitForTableNotExists = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/waitForTableNotExists.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.waitUntilTableNotExists = exports2.waitForTableNotExists = void 0; + var util_waiter_1 = require_dist_cjs54(); + var DescribeTableCommand_1 = require_DescribeTableCommand(); + var checkState = async (client, input) => { + let reason; + try { + const result = await client.send(new DescribeTableCommand_1.DescribeTableCommand(input)); + reason = result; + } catch (exception) { + reason = exception; + if (exception.name && exception.name == "ResourceNotFoundException") { + return { state: util_waiter_1.WaiterState.SUCCESS, reason }; + } + } + return { state: util_waiter_1.WaiterState.RETRY, reason }; + }; + var waitForTableNotExists = async (params, input) => { + const serviceDefaults = { minDelay: 20, maxDelay: 120 }; + return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); + }; + exports2.waitForTableNotExists = waitForTableNotExists; + var waitUntilTableNotExists = async (params, input) => { + const serviceDefaults = { minDelay: 20, maxDelay: 120 }; + const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); + return (0, util_waiter_1.checkExceptions)(result); + }; + exports2.waitUntilTableNotExists = waitUntilTableNotExists; + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/index.js +var require_waiters = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/waiters/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_waitForTableExists(), exports2); + tslib_1.__exportStar(require_waitForTableNotExists(), exports2); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/index.js +var require_models3 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/models/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_models_0(), exports2); + } +}); + +// node_modules/@aws-sdk/client-dynamodb/dist-cjs/index.js +var require_dist_cjs55 = __commonJS({ + "node_modules/@aws-sdk/client-dynamodb/dist-cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DynamoDBServiceException = void 0; + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_DynamoDBClient(), exports2); + tslib_1.__exportStar(require_DynamoDB(), exports2); + tslib_1.__exportStar(require_commands3(), exports2); + tslib_1.__exportStar(require_pagination3(), exports2); + tslib_1.__exportStar(require_waiters(), exports2); + tslib_1.__exportStar(require_models3(), exports2); + var DynamoDBServiceException_1 = require_DynamoDBServiceException(); + Object.defineProperty(exports2, "DynamoDBServiceException", { enumerable: true, get: function() { + return DynamoDBServiceException_1.DynamoDBServiceException; + } }); + } +}); + +// packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts +var dependencies_sdk_v3_exports = {}; +__export(dependencies_sdk_v3_exports, { + handler: () => handler +}); +module.exports = __toCommonJS(dependencies_sdk_v3_exports); +var import_client_dynamodb = __toESM(require_dist_cjs55()); +async function handler() { + const client = new import_client_dynamodb.DynamoDBClient(); + const input = { + TableName: process.env.TABLE_NAME + }; + const command = new import_client_dynamodb.DescribeTableCommand(input); + const response = await client.send(command); + console.log(response); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + handler +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e/index.js similarity index 78% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c/index.js rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e/index.js index 9e8169854b416..4032b0a83a808 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c/index.js +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e/index.js @@ -23,10 +23,15 @@ __export(dependencies_sdk_v3_exports, { handler: () => handler }); module.exports = __toCommonJS(dependencies_sdk_v3_exports); -var import_client_s3 = require("@aws-sdk/client-s3"); -var s3 = new import_client_s3.S3Client({}); +var import_client_dynamodb = require("@aws-sdk/client-dynamodb"); async function handler() { - console.log(s3); + const client = new import_client_dynamodb.DynamoDBClient(); + const input = { + TableName: process.env.TABLE_NAME + }; + const command = new import_client_dynamodb.DescribeTableCommand(input); + const response = await client.send(command); + console.log(response); } // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/index.js deleted file mode 100644 index e21c6a651f443..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";var m=Object.create;var a=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var w=(o,n)=>{for(var r in n)a(o,r,{get:n[r],enumerable:!0})},c=(o,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let t of f(n))!d.call(o,t)&&t!==r&&a(o,t,{get:()=>n[t],enumerable:!(e=s(n,t))||e.enumerable});return o};var y=(o,n,r)=>(r=o!=null?m(p(o)):{},c(n||!o||!o.__esModule?a(r,"default",{value:o,enumerable:!0}):r,o)),g=o=>c(a({},"__esModule",{value:!0}),o);var x={};w(x,{handler:()=>u});module.exports=g(x);var i=require("@aws-sdk/client-s3"),l=y(require("delay")),h=new i.S3;async function u(){console.log(h),await(0,l.default)(5)}0&&(module.exports={handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/.yarn-integrity b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/.yarn-integrity deleted file mode 100644 index 1010c4eaedebc..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/.yarn-integrity +++ /dev/null @@ -1,16 +0,0 @@ -{ - "systemParams": "linux-x64-108", - "modulesFolders": [ - "node_modules" - ], - "flags": [], - "linkedModules": [], - "topLevelPatterns": [ - "delay@5.0.0" - ], - "lockfileEntries": { - "delay@5.0.0": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" - }, - "files": [], - "artifacts": {} -} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.bundle/index.js similarity index 97% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.bundle/index.js rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.bundle/index.js index 0a3fad4606826..d99ddf1f7e394 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.556f7b960c212183e2f73e1410a097107af3ccf13c8880a717edbcadd89611a4.bundle/index.js +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.cfdb46b4f2c6702b4a1cc8e23ca426e8de43d13567e73a8453d01c1176393814.bundle/index.js @@ -785,7 +785,7 @@ var init_match = __esm({ var require_helpers_internal = __commonJS({ "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) { "use strict"; - var __createBinding3 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); @@ -800,10 +800,10 @@ var require_helpers_internal = __commonJS({ k2 = k; o[k2] = m[k]; }); - var __exportStar3 = exports2 && exports2.__exportStar || function(m, exports3) { + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding3(exports3, m, p); + __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); var _noFold; @@ -1295,7 +1295,7 @@ var init_tslib_es6 = __esm({ return extendStatics(d, b); }; __assign = function() { - __assign = Object.assign || function __assign3(t) { + __assign = Object.assign || function __assign2(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) @@ -1980,1425 +1980,8 @@ var require_dist_cjs6 = __commonJS({ } }); -// ../../../node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.js -var tslib_es6_exports2 = {}; -__export(tslib_es6_exports2, { - __assign: () => __assign2, - __asyncDelegator: () => __asyncDelegator2, - __asyncGenerator: () => __asyncGenerator2, - __asyncValues: () => __asyncValues2, - __await: () => __await2, - __awaiter: () => __awaiter2, - __classPrivateFieldGet: () => __classPrivateFieldGet2, - __classPrivateFieldSet: () => __classPrivateFieldSet2, - __createBinding: () => __createBinding2, - __decorate: () => __decorate2, - __exportStar: () => __exportStar2, - __extends: () => __extends2, - __generator: () => __generator2, - __importDefault: () => __importDefault2, - __importStar: () => __importStar2, - __makeTemplateObject: () => __makeTemplateObject2, - __metadata: () => __metadata2, - __param: () => __param2, - __read: () => __read2, - __rest: () => __rest2, - __spread: () => __spread2, - __spreadArrays: () => __spreadArrays2, - __values: () => __values2 -}); -function __extends2(d, b) { - extendStatics2(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} -function __rest2(s, e) { - var t = {}; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} -function __decorate2(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") - r = Reflect.decorate(decorators, target, key, desc); - else - for (var i = decorators.length - 1; i >= 0; i--) - if (d = decorators[i]) - r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} -function __param2(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; -} -function __metadata2(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") - return Reflect.metadata(metadataKey, metadataValue); -} -function __awaiter2(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} -function __generator2(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; - } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; - } -} -function __createBinding2(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; -} -function __exportStar2(m, exports2) { - for (var p in m) - if (p !== "default" && !exports2.hasOwnProperty(p)) - exports2[p] = m[p]; -} -function __values2(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); -} -function __read2(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; -} -function __spread2() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read2(arguments[i])); - return ar; -} -function __spreadArrays2() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) - s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; -} -function __await2(v) { - return this instanceof __await2 ? (this.v = v, this) : new __await2(v); -} -function __asyncGenerator2(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; - } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); - } - } - function step(r) { - r.value instanceof __await2 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); - } - function fulfill(value) { - resume("next", value); - } - function reject(value) { - resume("throw", value); - } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); - } -} -function __asyncDelegator2(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function(e) { - throw e; - }), verb("return"), i[Symbol.iterator] = function() { - return this; - }, i; - function verb(n, f) { - i[n] = o[n] ? function(v) { - return (p = !p) ? { value: __await2(o[n](v)), done: n === "return" } : f ? f(v) : v; - } : f; - } -} -function __asyncValues2(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values2 === "function" ? __values2(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); - }); - }; - } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); - } -} -function __makeTemplateObject2(cooked, raw) { - if (Object.defineProperty) { - Object.defineProperty(cooked, "raw", { value: raw }); - } else { - cooked.raw = raw; - } - return cooked; -} -function __importStar2(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (Object.hasOwnProperty.call(mod, k)) - result[k] = mod[k]; - } - result.default = mod; - return result; -} -function __importDefault2(mod) { - return mod && mod.__esModule ? mod : { default: mod }; -} -function __classPrivateFieldGet2(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - return privateMap.get(receiver); -} -function __classPrivateFieldSet2(receiver, privateMap, value) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - privateMap.set(receiver, value); - return value; -} -var extendStatics2, __assign2; -var init_tslib_es62 = __esm({ - "../../../node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.js"() { - extendStatics2 = function(d, b) { - extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (b2.hasOwnProperty(p)) - d2[p] = b2[p]; - }; - return extendStatics2(d, b); - }; - __assign2 = function() { - __assign2 = Object.assign || function __assign3(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign2.apply(this, arguments); - }; - } -}); - -// ../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/pureJs.js -var require_pureJs = __commonJS({ - "../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/pureJs.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - var fromUtf8 = (input) => { - const bytes = []; - for (let i = 0, len = input.length; i < len; i++) { - const value = input.charCodeAt(i); - if (value < 128) { - bytes.push(value); - } else if (value < 2048) { - bytes.push(value >> 6 | 192, value & 63 | 128); - } else if (i + 1 < input.length && (value & 64512) === 55296 && (input.charCodeAt(i + 1) & 64512) === 56320) { - const surrogatePair = 65536 + ((value & 1023) << 10) + (input.charCodeAt(++i) & 1023); - bytes.push(surrogatePair >> 18 | 240, surrogatePair >> 12 & 63 | 128, surrogatePair >> 6 & 63 | 128, surrogatePair & 63 | 128); - } else { - bytes.push(value >> 12 | 224, value >> 6 & 63 | 128, value & 63 | 128); - } - } - return Uint8Array.from(bytes); - }; - exports2.fromUtf8 = fromUtf8; - var toUtf8 = (input) => { - let decoded = ""; - for (let i = 0, len = input.length; i < len; i++) { - const byte = input[i]; - if (byte < 128) { - decoded += String.fromCharCode(byte); - } else if (192 <= byte && byte < 224) { - const nextByte = input[++i]; - decoded += String.fromCharCode((byte & 31) << 6 | nextByte & 63); - } else if (240 <= byte && byte < 365) { - const surrogatePair = [byte, input[++i], input[++i], input[++i]]; - const encoded = "%" + surrogatePair.map((byteValue) => byteValue.toString(16)).join("%"); - decoded += decodeURIComponent(encoded); - } else { - decoded += String.fromCharCode((byte & 15) << 12 | (input[++i] & 63) << 6 | input[++i] & 63); - } - } - return decoded; - }; - exports2.toUtf8 = toUtf8; - } -}); - -// ../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/whatwgEncodingApi.js -var require_whatwgEncodingApi = __commonJS({ - "../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/whatwgEncodingApi.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - function fromUtf8(input) { - return new TextEncoder().encode(input); - } - exports2.fromUtf8 = fromUtf8; - function toUtf8(input) { - return new TextDecoder("utf-8").decode(input); - } - exports2.toUtf8 = toUtf8; - } -}); - -// ../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/index.js -var require_dist_cjs7 = __commonJS({ - "../../../node_modules/@aws-sdk/util-utf8-browser/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - var pureJs_1 = require_pureJs(); - var whatwgEncodingApi_1 = require_whatwgEncodingApi(); - var fromUtf8 = (input) => typeof TextEncoder === "function" ? (0, whatwgEncodingApi_1.fromUtf8)(input) : (0, pureJs_1.fromUtf8)(input); - exports2.fromUtf8 = fromUtf8; - var toUtf8 = (input) => typeof TextDecoder === "function" ? (0, whatwgEncodingApi_1.toUtf8)(input) : (0, pureJs_1.toUtf8)(input); - exports2.toUtf8 = toUtf8; - } -}); - -// ../../../node_modules/@aws-crypto/util/build/convertToBuffer.js -var require_convertToBuffer = __commonJS({ - "../../../node_modules/@aws-crypto/util/build/convertToBuffer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.convertToBuffer = void 0; - var util_utf8_browser_1 = require_dist_cjs7(); - var fromUtf8 = typeof Buffer !== "undefined" && Buffer.from ? function(input) { - return Buffer.from(input, "utf8"); - } : util_utf8_browser_1.fromUtf8; - function convertToBuffer(data) { - if (data instanceof Uint8Array) - return data; - if (typeof data === "string") { - return fromUtf8(data); - } - if (ArrayBuffer.isView(data)) { - return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT); - } - return new Uint8Array(data); - } - exports2.convertToBuffer = convertToBuffer; - } -}); - -// ../../../node_modules/@aws-crypto/util/build/isEmptyData.js -var require_isEmptyData = __commonJS({ - "../../../node_modules/@aws-crypto/util/build/isEmptyData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isEmptyData = void 0; - function isEmptyData(data) { - if (typeof data === "string") { - return data.length === 0; - } - return data.byteLength === 0; - } - exports2.isEmptyData = isEmptyData; - } -}); - -// ../../../node_modules/@aws-crypto/util/build/numToUint8.js -var require_numToUint8 = __commonJS({ - "../../../node_modules/@aws-crypto/util/build/numToUint8.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.numToUint8 = void 0; - function numToUint8(num) { - return new Uint8Array([ - (num & 4278190080) >> 24, - (num & 16711680) >> 16, - (num & 65280) >> 8, - num & 255 - ]); - } - exports2.numToUint8 = numToUint8; - } -}); - -// ../../../node_modules/@aws-crypto/util/build/uint32ArrayFrom.js -var require_uint32ArrayFrom = __commonJS({ - "../../../node_modules/@aws-crypto/util/build/uint32ArrayFrom.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.uint32ArrayFrom = void 0; - function uint32ArrayFrom(a_lookUpTable) { - if (!Uint32Array.from) { - var return_array = new Uint32Array(a_lookUpTable.length); - var a_index = 0; - while (a_index < a_lookUpTable.length) { - return_array[a_index] = a_lookUpTable[a_index]; - a_index += 1; - } - return return_array; - } - return Uint32Array.from(a_lookUpTable); - } - exports2.uint32ArrayFrom = uint32ArrayFrom; - } -}); - -// ../../../node_modules/@aws-crypto/util/build/index.js -var require_build = __commonJS({ - "../../../node_modules/@aws-crypto/util/build/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.uint32ArrayFrom = exports2.numToUint8 = exports2.isEmptyData = exports2.convertToBuffer = void 0; - var convertToBuffer_1 = require_convertToBuffer(); - Object.defineProperty(exports2, "convertToBuffer", { enumerable: true, get: function() { - return convertToBuffer_1.convertToBuffer; - } }); - var isEmptyData_1 = require_isEmptyData(); - Object.defineProperty(exports2, "isEmptyData", { enumerable: true, get: function() { - return isEmptyData_1.isEmptyData; - } }); - var numToUint8_1 = require_numToUint8(); - Object.defineProperty(exports2, "numToUint8", { enumerable: true, get: function() { - return numToUint8_1.numToUint8; - } }); - var uint32ArrayFrom_1 = require_uint32ArrayFrom(); - Object.defineProperty(exports2, "uint32ArrayFrom", { enumerable: true, get: function() { - return uint32ArrayFrom_1.uint32ArrayFrom; - } }); - } -}); - -// ../../../node_modules/@aws-crypto/crc32/build/aws_crc32.js -var require_aws_crc32 = __commonJS({ - "../../../node_modules/@aws-crypto/crc32/build/aws_crc32.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32 = void 0; - var tslib_1 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); - var util_1 = require_build(); - var index_1 = require_build2(); - var AwsCrc32 = ( - /** @class */ - function() { - function AwsCrc322() { - this.crc32 = new index_1.Crc32(); - } - AwsCrc322.prototype.update = function(toHash) { - if ((0, util_1.isEmptyData)(toHash)) - return; - this.crc32.update((0, util_1.convertToBuffer)(toHash)); - }; - AwsCrc322.prototype.digest = function() { - return tslib_1.__awaiter(this, void 0, void 0, function() { - return tslib_1.__generator(this, function(_a) { - return [2, (0, util_1.numToUint8)(this.crc32.digest())]; - }); - }); - }; - AwsCrc322.prototype.reset = function() { - this.crc32 = new index_1.Crc32(); - }; - return AwsCrc322; - }() - ); - exports2.AwsCrc32 = AwsCrc32; - } -}); - -// ../../../node_modules/@aws-crypto/crc32/build/index.js -var require_build2 = __commonJS({ - "../../../node_modules/@aws-crypto/crc32/build/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32 = exports2.Crc32 = exports2.crc32 = void 0; - var tslib_1 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); - var util_1 = require_build(); - function crc32(data) { - return new Crc32().update(data).digest(); - } - exports2.crc32 = crc32; - var Crc32 = ( - /** @class */ - function() { - function Crc322() { - this.checksum = 4294967295; - } - Crc322.prototype.update = function(data) { - var e_1, _a; - try { - for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) { - var byte = data_1_1.value; - this.checksum = this.checksum >>> 8 ^ lookupTable[(this.checksum ^ byte) & 255]; - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (data_1_1 && !data_1_1.done && (_a = data_1.return)) - _a.call(data_1); - } finally { - if (e_1) - throw e_1.error; - } - } - return this; - }; - Crc322.prototype.digest = function() { - return (this.checksum ^ 4294967295) >>> 0; - }; - return Crc322; - }() - ); - exports2.Crc32 = Crc32; - var a_lookUpTable = [ - 0, - 1996959894, - 3993919788, - 2567524794, - 124634137, - 1886057615, - 3915621685, - 2657392035, - 249268274, - 2044508324, - 3772115230, - 2547177864, - 162941995, - 2125561021, - 3887607047, - 2428444049, - 498536548, - 1789927666, - 4089016648, - 2227061214, - 450548861, - 1843258603, - 4107580753, - 2211677639, - 325883990, - 1684777152, - 4251122042, - 2321926636, - 335633487, - 1661365465, - 4195302755, - 2366115317, - 997073096, - 1281953886, - 3579855332, - 2724688242, - 1006888145, - 1258607687, - 3524101629, - 2768942443, - 901097722, - 1119000684, - 3686517206, - 2898065728, - 853044451, - 1172266101, - 3705015759, - 2882616665, - 651767980, - 1373503546, - 3369554304, - 3218104598, - 565507253, - 1454621731, - 3485111705, - 3099436303, - 671266974, - 1594198024, - 3322730930, - 2970347812, - 795835527, - 1483230225, - 3244367275, - 3060149565, - 1994146192, - 31158534, - 2563907772, - 4023717930, - 1907459465, - 112637215, - 2680153253, - 3904427059, - 2013776290, - 251722036, - 2517215374, - 3775830040, - 2137656763, - 141376813, - 2439277719, - 3865271297, - 1802195444, - 476864866, - 2238001368, - 4066508878, - 1812370925, - 453092731, - 2181625025, - 4111451223, - 1706088902, - 314042704, - 2344532202, - 4240017532, - 1658658271, - 366619977, - 2362670323, - 4224994405, - 1303535960, - 984961486, - 2747007092, - 3569037538, - 1256170817, - 1037604311, - 2765210733, - 3554079995, - 1131014506, - 879679996, - 2909243462, - 3663771856, - 1141124467, - 855842277, - 2852801631, - 3708648649, - 1342533948, - 654459306, - 3188396048, - 3373015174, - 1466479909, - 544179635, - 3110523913, - 3462522015, - 1591671054, - 702138776, - 2966460450, - 3352799412, - 1504918807, - 783551873, - 3082640443, - 3233442989, - 3988292384, - 2596254646, - 62317068, - 1957810842, - 3939845945, - 2647816111, - 81470997, - 1943803523, - 3814918930, - 2489596804, - 225274430, - 2053790376, - 3826175755, - 2466906013, - 167816743, - 2097651377, - 4027552580, - 2265490386, - 503444072, - 1762050814, - 4150417245, - 2154129355, - 426522225, - 1852507879, - 4275313526, - 2312317920, - 282753626, - 1742555852, - 4189708143, - 2394877945, - 397917763, - 1622183637, - 3604390888, - 2714866558, - 953729732, - 1340076626, - 3518719985, - 2797360999, - 1068828381, - 1219638859, - 3624741850, - 2936675148, - 906185462, - 1090812512, - 3747672003, - 2825379669, - 829329135, - 1181335161, - 3412177804, - 3160834842, - 628085408, - 1382605366, - 3423369109, - 3138078467, - 570562233, - 1426400815, - 3317316542, - 2998733608, - 733239954, - 1555261956, - 3268935591, - 3050360625, - 752459403, - 1541320221, - 2607071920, - 3965973030, - 1969922972, - 40735498, - 2617837225, - 3943577151, - 1913087877, - 83908371, - 2512341634, - 3803740692, - 2075208622, - 213261112, - 2463272603, - 3855990285, - 2094854071, - 198958881, - 2262029012, - 4057260610, - 1759359992, - 534414190, - 2176718541, - 4139329115, - 1873836001, - 414664567, - 2282248934, - 4279200368, - 1711684554, - 285281116, - 2405801727, - 4167216745, - 1634467795, - 376229701, - 2685067896, - 3608007406, - 1308918612, - 956543938, - 2808555105, - 3495958263, - 1231636301, - 1047427035, - 2932959818, - 3654703836, - 1088359270, - 936918e3, - 2847714899, - 3736837829, - 1202900863, - 817233897, - 3183342108, - 3401237130, - 1404277552, - 615818150, - 3134207493, - 3453421203, - 1423857449, - 601450431, - 3009837614, - 3294710456, - 1567103746, - 711928724, - 3020668471, - 3272380065, - 1510334235, - 755167117 - ]; - var lookupTable = (0, util_1.uint32ArrayFrom)(a_lookUpTable); - var aws_crc32_1 = require_aws_crc32(); - Object.defineProperty(exports2, "AwsCrc32", { enumerable: true, get: function() { - return aws_crc32_1.AwsCrc32; - } }); - } -}); - -// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js -var require_dist_cjs8 = __commonJS({ - "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - fromHex: () => fromHex, - toHex: () => toHex - }); - module2.exports = __toCommonJS2(src_exports); - var SHORT_TO_HEX = {}; - var HEX_TO_SHORT = {}; - for (let i = 0; i < 256; i++) { - let encodedByte = i.toString(16).toLowerCase(); - if (encodedByte.length === 1) { - encodedByte = `0${encodedByte}`; - } - SHORT_TO_HEX[i] = encodedByte; - HEX_TO_SHORT[encodedByte] = i; - } - function fromHex(encoded) { - if (encoded.length % 2 !== 0) { - throw new Error("Hex encoded strings must have an even number length"); - } - const out = new Uint8Array(encoded.length / 2); - for (let i = 0; i < encoded.length; i += 2) { - const encodedByte = encoded.slice(i, i + 2).toLowerCase(); - if (encodedByte in HEX_TO_SHORT) { - out[i / 2] = HEX_TO_SHORT[encodedByte]; - } else { - throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`); - } - } - return out; - } - __name(fromHex, "fromHex"); - function toHex(bytes) { - let out = ""; - for (let i = 0; i < bytes.byteLength; i++) { - out += SHORT_TO_HEX[bytes[i]]; - } - return out; - } - __name(toHex, "toHex"); - } -}); - -// ../../../node_modules/@smithy/eventstream-codec/dist-cjs/index.js -var require_dist_cjs9 = __commonJS({ - "../../../node_modules/@smithy/eventstream-codec/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - EventStreamCodec: () => EventStreamCodec, - HeaderMarshaller: () => HeaderMarshaller, - Int64: () => Int64, - MessageDecoderStream: () => MessageDecoderStream, - MessageEncoderStream: () => MessageEncoderStream, - SmithyMessageDecoderStream: () => SmithyMessageDecoderStream, - SmithyMessageEncoderStream: () => SmithyMessageEncoderStream - }); - module2.exports = __toCommonJS2(src_exports); - var import_crc322 = require_build2(); - var import_util_hex_encoding = require_dist_cjs8(); - var _Int64 = class _Int642 { - constructor(bytes) { - this.bytes = bytes; - if (bytes.byteLength !== 8) { - throw new Error("Int64 buffers must be exactly 8 bytes"); - } - } - static fromNumber(number) { - if (number > 9223372036854776e3 || number < -9223372036854776e3) { - throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`); - } - const bytes = new Uint8Array(8); - for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) { - bytes[i] = remaining; - } - if (number < 0) { - negate(bytes); - } - return new _Int642(bytes); - } - /** - * Called implicitly by infix arithmetic operators. - */ - valueOf() { - const bytes = this.bytes.slice(0); - const negative = bytes[0] & 128; - if (negative) { - negate(bytes); - } - return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1); - } - toString() { - return String(this.valueOf()); - } - }; - __name(_Int64, "Int64"); - var Int64 = _Int64; - function negate(bytes) { - for (let i = 0; i < 8; i++) { - bytes[i] ^= 255; - } - for (let i = 7; i > -1; i--) { - bytes[i]++; - if (bytes[i] !== 0) - break; - } - } - __name(negate, "negate"); - var _HeaderMarshaller = class _HeaderMarshaller { - constructor(toUtf8, fromUtf8) { - this.toUtf8 = toUtf8; - this.fromUtf8 = fromUtf8; - } - format(headers) { - const chunks = []; - for (const headerName of Object.keys(headers)) { - const bytes = this.fromUtf8(headerName); - chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName])); - } - const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0)); - let position = 0; - for (const chunk of chunks) { - out.set(chunk, position); - position += chunk.byteLength; - } - return out; - } - formatHeaderValue(header) { - switch (header.type) { - case "boolean": - return Uint8Array.from([ - header.value ? 0 : 1 - /* boolFalse */ - ]); - case "byte": - return Uint8Array.from([2, header.value]); - case "short": - const shortView = new DataView(new ArrayBuffer(3)); - shortView.setUint8( - 0, - 3 - /* short */ - ); - shortView.setInt16(1, header.value, false); - return new Uint8Array(shortView.buffer); - case "integer": - const intView = new DataView(new ArrayBuffer(5)); - intView.setUint8( - 0, - 4 - /* integer */ - ); - intView.setInt32(1, header.value, false); - return new Uint8Array(intView.buffer); - case "long": - const longBytes = new Uint8Array(9); - longBytes[0] = 5; - longBytes.set(header.value.bytes, 1); - return longBytes; - case "binary": - const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength)); - binView.setUint8( - 0, - 6 - /* byteArray */ - ); - binView.setUint16(1, header.value.byteLength, false); - const binBytes = new Uint8Array(binView.buffer); - binBytes.set(header.value, 3); - return binBytes; - case "string": - const utf8Bytes = this.fromUtf8(header.value); - const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength)); - strView.setUint8( - 0, - 7 - /* string */ - ); - strView.setUint16(1, utf8Bytes.byteLength, false); - const strBytes = new Uint8Array(strView.buffer); - strBytes.set(utf8Bytes, 3); - return strBytes; - case "timestamp": - const tsBytes = new Uint8Array(9); - tsBytes[0] = 8; - tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1); - return tsBytes; - case "uuid": - if (!UUID_PATTERN.test(header.value)) { - throw new Error(`Invalid UUID received: ${header.value}`); - } - const uuidBytes = new Uint8Array(17); - uuidBytes[0] = 9; - uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1); - return uuidBytes; - } - } - parse(headers) { - const out = {}; - let position = 0; - while (position < headers.byteLength) { - const nameLength = headers.getUint8(position++); - const name = this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, nameLength)); - position += nameLength; - switch (headers.getUint8(position++)) { - case 0: - out[name] = { - type: BOOLEAN_TAG, - value: true - }; - break; - case 1: - out[name] = { - type: BOOLEAN_TAG, - value: false - }; - break; - case 2: - out[name] = { - type: BYTE_TAG, - value: headers.getInt8(position++) - }; - break; - case 3: - out[name] = { - type: SHORT_TAG, - value: headers.getInt16(position, false) - }; - position += 2; - break; - case 4: - out[name] = { - type: INT_TAG, - value: headers.getInt32(position, false) - }; - position += 4; - break; - case 5: - out[name] = { - type: LONG_TAG, - value: new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)) - }; - position += 8; - break; - case 6: - const binaryLength = headers.getUint16(position, false); - position += 2; - out[name] = { - type: BINARY_TAG, - value: new Uint8Array(headers.buffer, headers.byteOffset + position, binaryLength) - }; - position += binaryLength; - break; - case 7: - const stringLength = headers.getUint16(position, false); - position += 2; - out[name] = { - type: STRING_TAG, - value: this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, stringLength)) - }; - position += stringLength; - break; - case 8: - out[name] = { - type: TIMESTAMP_TAG, - value: new Date(new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)).valueOf()) - }; - position += 8; - break; - case 9: - const uuidBytes = new Uint8Array(headers.buffer, headers.byteOffset + position, 16); - position += 16; - out[name] = { - type: UUID_TAG, - value: `${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(0, 4))}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(4, 6))}-${(0, import_util_hex_encoding.toHex)( - uuidBytes.subarray(6, 8) - )}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(8, 10))}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(10))}` - }; - break; - default: - throw new Error(`Unrecognized header type tag`); - } - } - return out; - } - }; - __name(_HeaderMarshaller, "HeaderMarshaller"); - var HeaderMarshaller = _HeaderMarshaller; - var BOOLEAN_TAG = "boolean"; - var BYTE_TAG = "byte"; - var SHORT_TAG = "short"; - var INT_TAG = "integer"; - var LONG_TAG = "long"; - var BINARY_TAG = "binary"; - var STRING_TAG = "string"; - var TIMESTAMP_TAG = "timestamp"; - var UUID_TAG = "uuid"; - var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/; - var import_crc32 = require_build2(); - var PRELUDE_MEMBER_LENGTH = 4; - var PRELUDE_LENGTH = PRELUDE_MEMBER_LENGTH * 2; - var CHECKSUM_LENGTH = 4; - var MINIMUM_MESSAGE_LENGTH = PRELUDE_LENGTH + CHECKSUM_LENGTH * 2; - function splitMessage({ byteLength, byteOffset, buffer }) { - if (byteLength < MINIMUM_MESSAGE_LENGTH) { - throw new Error("Provided message too short to accommodate event stream message overhead"); - } - const view = new DataView(buffer, byteOffset, byteLength); - const messageLength = view.getUint32(0, false); - if (byteLength !== messageLength) { - throw new Error("Reported message length does not match received message length"); - } - const headerLength = view.getUint32(PRELUDE_MEMBER_LENGTH, false); - const expectedPreludeChecksum = view.getUint32(PRELUDE_LENGTH, false); - const expectedMessageChecksum = view.getUint32(byteLength - CHECKSUM_LENGTH, false); - const checksummer = new import_crc32.Crc32().update(new Uint8Array(buffer, byteOffset, PRELUDE_LENGTH)); - if (expectedPreludeChecksum !== checksummer.digest()) { - throw new Error( - `The prelude checksum specified in the message (${expectedPreludeChecksum}) does not match the calculated CRC32 checksum (${checksummer.digest()})` - ); - } - checksummer.update( - new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH, byteLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH)) - ); - if (expectedMessageChecksum !== checksummer.digest()) { - throw new Error( - `The message checksum (${checksummer.digest()}) did not match the expected value of ${expectedMessageChecksum}` - ); - } - return { - headers: new DataView(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH, headerLength), - body: new Uint8Array( - buffer, - byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH + headerLength, - messageLength - headerLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH + CHECKSUM_LENGTH) - ) - }; - } - __name(splitMessage, "splitMessage"); - var _EventStreamCodec = class _EventStreamCodec { - constructor(toUtf8, fromUtf8) { - this.headerMarshaller = new HeaderMarshaller(toUtf8, fromUtf8); - this.messageBuffer = []; - this.isEndOfStream = false; - } - feed(message) { - this.messageBuffer.push(this.decode(message)); - } - endOfStream() { - this.isEndOfStream = true; - } - getMessage() { - const message = this.messageBuffer.pop(); - const isEndOfStream = this.isEndOfStream; - return { - getMessage() { - return message; - }, - isEndOfStream() { - return isEndOfStream; - } - }; - } - getAvailableMessages() { - const messages = this.messageBuffer; - this.messageBuffer = []; - const isEndOfStream = this.isEndOfStream; - return { - getMessages() { - return messages; - }, - isEndOfStream() { - return isEndOfStream; - } - }; - } - /** - * Convert a structured JavaScript object with tagged headers into a binary - * event stream message. - */ - encode({ headers: rawHeaders, body }) { - const headers = this.headerMarshaller.format(rawHeaders); - const length = headers.byteLength + body.byteLength + 16; - const out = new Uint8Array(length); - const view = new DataView(out.buffer, out.byteOffset, out.byteLength); - const checksum = new import_crc322.Crc32(); - view.setUint32(0, length, false); - view.setUint32(4, headers.byteLength, false); - view.setUint32(8, checksum.update(out.subarray(0, 8)).digest(), false); - out.set(headers, 12); - out.set(body, headers.byteLength + 12); - view.setUint32(length - 4, checksum.update(out.subarray(8, length - 4)).digest(), false); - return out; - } - /** - * Convert a binary event stream message into a JavaScript object with an - * opaque, binary body and tagged, parsed headers. - */ - decode(message) { - const { headers, body } = splitMessage(message); - return { headers: this.headerMarshaller.parse(headers), body }; - } - /** - * Convert a structured JavaScript object with tagged headers into a binary - * event stream message header. - */ - formatHeaders(rawHeaders) { - return this.headerMarshaller.format(rawHeaders); - } - }; - __name(_EventStreamCodec, "EventStreamCodec"); - var EventStreamCodec = _EventStreamCodec; - var _MessageDecoderStream = class _MessageDecoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const bytes of this.options.inputStream) { - const decoded = this.options.decoder.decode(bytes); - yield decoded; - } - } - }; - __name(_MessageDecoderStream, "MessageDecoderStream"); - var MessageDecoderStream = _MessageDecoderStream; - var _MessageEncoderStream = class _MessageEncoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const msg of this.options.messageStream) { - const encoded = this.options.encoder.encode(msg); - yield encoded; - } - if (this.options.includeEndFrame) { - yield new Uint8Array(0); - } - } - }; - __name(_MessageEncoderStream, "MessageEncoderStream"); - var MessageEncoderStream = _MessageEncoderStream; - var _SmithyMessageDecoderStream = class _SmithyMessageDecoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const message of this.options.messageStream) { - const deserialized = await this.options.deserializer(message); - if (deserialized === void 0) - continue; - yield deserialized; - } - } - }; - __name(_SmithyMessageDecoderStream, "SmithyMessageDecoderStream"); - var SmithyMessageDecoderStream = _SmithyMessageDecoderStream; - var _SmithyMessageEncoderStream = class _SmithyMessageEncoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const chunk of this.options.inputStream) { - const payloadBuf = this.options.serializer(chunk); - yield payloadBuf; - } - } - }; - __name(_SmithyMessageEncoderStream, "SmithyMessageEncoderStream"); - var SmithyMessageEncoderStream = _SmithyMessageEncoderStream; - } -}); - // ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js -var require_dist_cjs10 = __commonJS({ +var require_dist_cjs7 = __commonJS({ "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3436,7 +2019,7 @@ var require_dist_cjs10 = __commonJS({ }); // ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js -var require_dist_cjs11 = __commonJS({ +var require_dist_cjs8 = __commonJS({ "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3466,7 +2049,7 @@ var require_dist_cjs11 = __commonJS({ }); // ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js -var require_dist_cjs12 = __commonJS({ +var require_dist_cjs9 = __commonJS({ "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3492,7 +2075,7 @@ var require_dist_cjs12 = __commonJS({ fromString: () => fromString }); module2.exports = __toCommonJS2(src_exports); - var import_is_array_buffer = require_dist_cjs11(); + var import_is_array_buffer = require_dist_cjs8(); var import_buffer = require("buffer"); var fromArrayBuffer = /* @__PURE__ */ __name((input, offset = 0, length = input.byteLength - offset) => { if (!(0, import_is_array_buffer.isArrayBuffer)(input)) { @@ -3510,7 +2093,7 @@ var require_dist_cjs12 = __commonJS({ }); // ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js -var require_dist_cjs13 = __commonJS({ +var require_dist_cjs10 = __commonJS({ "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3537,7 +2120,7 @@ var require_dist_cjs13 = __commonJS({ toUtf8: () => toUtf8 }); module2.exports = __toCommonJS2(src_exports); - var import_util_buffer_from = require_dist_cjs12(); + var import_util_buffer_from = require_dist_cjs9(); var fromUtf8 = /* @__PURE__ */ __name((input) => { const buf = (0, import_util_buffer_from.fromString)(input, "utf8"); return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT); @@ -3549,14 +2132,86 @@ var require_dist_cjs13 = __commonJS({ if (ArrayBuffer.isView(data)) { return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT); } - return new Uint8Array(data); - }, "toUint8Array"); - var toUtf8 = /* @__PURE__ */ __name((input) => (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8"), "toUtf8"); + return new Uint8Array(data); + }, "toUint8Array"); + var toUtf8 = /* @__PURE__ */ __name((input) => { + if (typeof input === "string") { + return input; + } + if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") { + throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array."); + } + return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8"); + }, "toUtf8"); + } +}); + +// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js +var require_dist_cjs11 = __commonJS({ + "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + fromHex: () => fromHex, + toHex: () => toHex + }); + module2.exports = __toCommonJS2(src_exports); + var SHORT_TO_HEX = {}; + var HEX_TO_SHORT = {}; + for (let i = 0; i < 256; i++) { + let encodedByte = i.toString(16).toLowerCase(); + if (encodedByte.length === 1) { + encodedByte = `0${encodedByte}`; + } + SHORT_TO_HEX[i] = encodedByte; + HEX_TO_SHORT[encodedByte] = i; + } + function fromHex(encoded) { + if (encoded.length % 2 !== 0) { + throw new Error("Hex encoded strings must have an even number length"); + } + const out = new Uint8Array(encoded.length / 2); + for (let i = 0; i < encoded.length; i += 2) { + const encodedByte = encoded.slice(i, i + 2).toLowerCase(); + if (encodedByte in HEX_TO_SHORT) { + out[i / 2] = HEX_TO_SHORT[encodedByte]; + } else { + throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`); + } + } + return out; + } + __name(fromHex, "fromHex"); + function toHex(bytes) { + let out = ""; + for (let i = 0; i < bytes.byteLength; i++) { + out += SHORT_TO_HEX[bytes[i]]; + } + return out; + } + __name(toHex, "toHex"); } }); // ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js -var require_dist_cjs14 = __commonJS({ +var require_dist_cjs12 = __commonJS({ "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3592,7 +2247,7 @@ var require_dist_cjs14 = __commonJS({ }); // ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js -var require_dist_cjs15 = __commonJS({ +var require_dist_cjs13 = __commonJS({ "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -3625,9 +2280,8 @@ var require_dist_cjs15 = __commonJS({ prepareRequest: () => prepareRequest }); module2.exports = __toCommonJS2(src_exports); - var import_eventstream_codec = require_dist_cjs9(); - var import_util_middleware = require_dist_cjs10(); - var import_util_utf83 = require_dist_cjs13(); + var import_util_middleware = require_dist_cjs7(); + var import_util_utf84 = require_dist_cjs10(); var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm"; var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential"; var AMZ_DATE_QUERY_PARAM = "X-Amz-Date"; @@ -3667,8 +2321,8 @@ var require_dist_cjs15 = __commonJS({ var MAX_CACHE_SIZE = 50; var KEY_TYPE_IDENTIFIER = "aws4_request"; var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7; - var import_util_hex_encoding = require_dist_cjs8(); - var import_util_utf8 = require_dist_cjs13(); + var import_util_hex_encoding = require_dist_cjs11(); + var import_util_utf8 = require_dist_cjs10(); var signingKeyCache = {}; var cacheQueue = []; var createScope = /* @__PURE__ */ __name((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope"); @@ -3715,7 +2369,7 @@ var require_dist_cjs15 = __commonJS({ } return canonical; }, "getCanonicalHeaders"); - var import_util_uri_escape = require_dist_cjs14(); + var import_util_uri_escape = require_dist_cjs12(); var getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => { const keys = []; const serialized = {}; @@ -3736,8 +2390,8 @@ var require_dist_cjs15 = __commonJS({ } return keys.map((key) => serialized[key]).filter((serialized2) => serialized2).join("&"); }, "getCanonicalQuery"); - var import_is_array_buffer = require_dist_cjs11(); - var import_util_utf82 = require_dist_cjs13(); + var import_is_array_buffer = require_dist_cjs8(); + var import_util_utf82 = require_dist_cjs10(); var getPayloadHash = /* @__PURE__ */ __name(async ({ headers, body }, hashConstructor) => { for (const headerName of Object.keys(headers)) { if (headerName.toLowerCase() === SHA256_HEADER) { @@ -3753,6 +2407,144 @@ var require_dist_cjs15 = __commonJS({ } return UNSIGNED_PAYLOAD; }, "getPayloadHash"); + var import_util_utf83 = require_dist_cjs10(); + var _HeaderFormatter = class _HeaderFormatter { + format(headers) { + const chunks = []; + for (const headerName of Object.keys(headers)) { + const bytes = (0, import_util_utf83.fromUtf8)(headerName); + chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName])); + } + const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0)); + let position = 0; + for (const chunk of chunks) { + out.set(chunk, position); + position += chunk.byteLength; + } + return out; + } + formatHeaderValue(header) { + switch (header.type) { + case "boolean": + return Uint8Array.from([ + header.value ? 0 : 1 + /* boolFalse */ + ]); + case "byte": + return Uint8Array.from([2, header.value]); + case "short": + const shortView = new DataView(new ArrayBuffer(3)); + shortView.setUint8( + 0, + 3 + /* short */ + ); + shortView.setInt16(1, header.value, false); + return new Uint8Array(shortView.buffer); + case "integer": + const intView = new DataView(new ArrayBuffer(5)); + intView.setUint8( + 0, + 4 + /* integer */ + ); + intView.setInt32(1, header.value, false); + return new Uint8Array(intView.buffer); + case "long": + const longBytes = new Uint8Array(9); + longBytes[0] = 5; + longBytes.set(header.value.bytes, 1); + return longBytes; + case "binary": + const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength)); + binView.setUint8( + 0, + 6 + /* byteArray */ + ); + binView.setUint16(1, header.value.byteLength, false); + const binBytes = new Uint8Array(binView.buffer); + binBytes.set(header.value, 3); + return binBytes; + case "string": + const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value); + const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength)); + strView.setUint8( + 0, + 7 + /* string */ + ); + strView.setUint16(1, utf8Bytes.byteLength, false); + const strBytes = new Uint8Array(strView.buffer); + strBytes.set(utf8Bytes, 3); + return strBytes; + case "timestamp": + const tsBytes = new Uint8Array(9); + tsBytes[0] = 8; + tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1); + return tsBytes; + case "uuid": + if (!UUID_PATTERN.test(header.value)) { + throw new Error(`Invalid UUID received: ${header.value}`); + } + const uuidBytes = new Uint8Array(17); + uuidBytes[0] = 9; + uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1); + return uuidBytes; + } + } + }; + __name(_HeaderFormatter, "HeaderFormatter"); + var HeaderFormatter = _HeaderFormatter; + var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/; + var _Int64 = class _Int642 { + constructor(bytes) { + this.bytes = bytes; + if (bytes.byteLength !== 8) { + throw new Error("Int64 buffers must be exactly 8 bytes"); + } + } + static fromNumber(number) { + if (number > 9223372036854776e3 || number < -9223372036854776e3) { + throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`); + } + const bytes = new Uint8Array(8); + for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) { + bytes[i] = remaining; + } + if (number < 0) { + negate(bytes); + } + return new _Int642(bytes); + } + /** + * Called implicitly by infix arithmetic operators. + */ + valueOf() { + const bytes = this.bytes.slice(0); + const negative = bytes[0] & 128; + if (negative) { + negate(bytes); + } + return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1); + } + toString() { + return String(this.valueOf()); + } + }; + __name(_Int64, "Int64"); + var Int64 = _Int64; + function negate(bytes) { + for (let i = 0; i < 8; i++) { + bytes[i] ^= 255; + } + for (let i = 7; i > -1; i--) { + bytes[i]++; + if (bytes[i] !== 0) + break; + } + } + __name(negate, "negate"); var hasHeader = /* @__PURE__ */ __name((soughtHeader, headers) => { soughtHeader = soughtHeader.toLowerCase(); for (const headerName of Object.keys(headers)) { @@ -3821,7 +2613,7 @@ var require_dist_cjs15 = __commonJS({ sha256, uriEscapePath = true }) { - this.headerMarshaller = new import_eventstream_codec.HeaderMarshaller(import_util_utf83.toUtf8, import_util_utf83.fromUtf8); + this.headerFormatter = new HeaderFormatter(); this.service = service; this.sha256 = sha256; this.uriEscapePath = uriEscapePath; @@ -3899,7 +2691,7 @@ var require_dist_cjs15 = __commonJS({ async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) { const promise = this.signEvent( { - headers: this.headerMarshaller.format(signableMessage.message.headers), + headers: this.headerFormatter.format(signableMessage.message.headers), payload: signableMessage.message.body }, { @@ -3919,7 +2711,7 @@ var require_dist_cjs15 = __commonJS({ const region = signingRegion ?? await this.regionProvider(); const { shortDate } = formatDate(signingDate); const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService)); - hash.update((0, import_util_utf83.toUint8Array)(stringToSign)); + hash.update((0, import_util_utf84.toUint8Array)(stringToSign)); return (0, import_util_hex_encoding.toHex)(await hash.digest()); } async signRequest(requestToSign, { @@ -3965,7 +2757,7 @@ ${payloadHash}`; } async createStringToSign(longDate, credentialScope, canonicalRequest) { const hash = new this.sha256(); - hash.update((0, import_util_utf83.toUint8Array)(canonicalRequest)); + hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest)); const hashedRequest = await hash.digest(); return `${ALGORITHM_IDENTIFIER} ${longDate} @@ -3987,7 +2779,7 @@ ${(0, import_util_hex_encoding.toHex)(hashedRequest)}`; } } const normalizedPath = `${(path == null ? void 0 : path.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path == null ? void 0 : path.endsWith("/")) ? "/" : ""}`; - const doubleEncoded = encodeURIComponent(normalizedPath); + const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath); return doubleEncoded.replace(/%2F/g, "/"); } return path; @@ -3995,7 +2787,7 @@ ${(0, import_util_hex_encoding.toHex)(hashedRequest)}`; async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) { const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest); const hash = new this.sha256(await keyPromise); - hash.update((0, import_util_utf83.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) { @@ -4029,8 +2821,8 @@ var require_awsAuthConfiguration = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveSigV4AuthConfig = exports2.resolveAwsAuthConfig = void 0; var property_provider_1 = require_dist_cjs6(); - var signature_v4_1 = require_dist_cjs15(); - var util_middleware_1 = require_dist_cjs10(); + var signature_v4_1 = require_dist_cjs13(); + var util_middleware_1 = require_dist_cjs7(); var CREDENTIAL_EXPIRE_WINDOW = 3e5; var resolveAwsAuthConfig = (input) => { const normalizedCreds = input.credentials ? normalizeCredentialProvider(input.credentials) : input.credentialDefaultProvider(input); @@ -4227,7 +3019,7 @@ var require_awsAuthMiddleware = __commonJS({ }); // ../../../node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js -var require_dist_cjs16 = __commonJS({ +var require_dist_cjs14 = __commonJS({ "../../../node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -5158,7 +3950,7 @@ var require_waiter = __commonJS({ }); // ../../../node_modules/@aws-sdk/types/dist-cjs/index.js -var require_dist_cjs17 = __commonJS({ +var require_dist_cjs15 = __commonJS({ "../../../node_modules/@aws-sdk/types/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -5204,7 +3996,7 @@ var require_parseURL = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.parseURL = void 0; - var types_1 = require_dist_cjs17(); + var types_1 = require_dist_cjs15(); var isIpAddress_1 = require_isIpAddress(); var DEFAULT_PORTS = { [types_1.EndpointURLScheme.HTTP]: 80, @@ -5742,7 +4534,7 @@ var require_resolveEndpoint = __commonJS({ }); // ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js -var require_dist_cjs18 = __commonJS({ +var require_dist_cjs16 = __commonJS({ "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -5776,7 +4568,7 @@ var require_user_agent_middleware = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getUserAgentPlugin = exports2.getUserAgentMiddlewareOptions = exports2.userAgentMiddleware = void 0; - var util_endpoints_1 = require_dist_cjs18(); + var util_endpoints_1 = require_dist_cjs16(); var protocol_http_1 = require_dist_cjs2(); var constants_1 = require_constants(); var userAgentMiddleware = (options) => (next, context) => async (args) => { @@ -5846,7 +4638,7 @@ var require_user_agent_middleware = __commonJS({ }); // ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js -var require_dist_cjs19 = __commonJS({ +var require_dist_cjs17 = __commonJS({ "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -5857,7 +4649,7 @@ var require_dist_cjs19 = __commonJS({ }); // ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js -var require_dist_cjs20 = __commonJS({ +var require_dist_cjs18 = __commonJS({ "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -5911,7 +4703,7 @@ var require_dist_cjs20 = __commonJS({ }); // ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js -var require_dist_cjs21 = __commonJS({ +var require_dist_cjs19 = __commonJS({ "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -5951,7 +4743,7 @@ var require_dist_cjs21 = __commonJS({ resolveRegionConfig: () => resolveRegionConfig }); module2.exports = __toCommonJS2(src_exports); - var import_util_config_provider = require_dist_cjs20(); + var import_util_config_provider = require_dist_cjs18(); var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT"; var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint"; var DEFAULT_USE_DUALSTACK_ENDPOINT = false; @@ -5968,7 +4760,7 @@ var require_dist_cjs21 = __commonJS({ configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG), default: false }; - var import_util_middleware = require_dist_cjs10(); + var import_util_middleware = require_dist_cjs7(); var resolveCustomEndpointsConfig = /* @__PURE__ */ __name((input) => { const { endpoint, urlParser } = input; return { @@ -6097,7 +4889,7 @@ var require_dist_cjs21 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js -var require_dist_cjs22 = __commonJS({ +var require_dist_cjs20 = __commonJS({ "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6251,7 +5043,7 @@ var require_slurpFile = __commonJS({ }); // ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js -var require_dist_cjs23 = __commonJS({ +var require_dist_cjs21 = __commonJS({ "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6380,7 +5172,7 @@ var require_dist_cjs23 = __commonJS({ credentialsFile: parsedFiles[1] }; }, "loadSharedConfigFiles"); - var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.split(CONFIG_PREFIX_SEPARATOR)[1]]: value }), {}), "getSsoSessionData"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); var import_slurpFile2 = require_slurpFile(); var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); @@ -6405,7 +5197,7 @@ var require_dist_cjs23 = __commonJS({ }); // ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js -var require_dist_cjs24 = __commonJS({ +var require_dist_cjs22 = __commonJS({ "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6444,7 +5236,7 @@ var require_dist_cjs24 = __commonJS({ ); } }, "fromEnv"); - var import_shared_ini_file_loader = require_dist_cjs23(); + var import_shared_ini_file_loader = require_dist_cjs21(); var fromSharedConfigFiles = /* @__PURE__ */ __name((configSelector, { preferredFile = "config", ...init } = {}) => async () => { const profile = (0, import_shared_ini_file_loader.getProfileName)(init); const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init); @@ -6482,7 +5274,7 @@ var require_getEndpointUrlConfig = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getEndpointUrlConfig = void 0; - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL"; var CONFIG_ENDPOINT_URL = "endpoint_url"; var getEndpointUrlConfig = (serviceId) => ({ @@ -6523,7 +5315,7 @@ var require_getEndpointFromConfig = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getEndpointFromConfig = void 0; - var node_config_provider_1 = require_dist_cjs24(); + var node_config_provider_1 = require_dist_cjs22(); var getEndpointUrlConfig_1 = require_getEndpointUrlConfig(); var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId))(); exports2.getEndpointFromConfig = getEndpointFromConfig; @@ -6531,7 +5323,7 @@ var require_getEndpointFromConfig = __commonJS({ }); // ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js -var require_dist_cjs25 = __commonJS({ +var require_dist_cjs23 = __commonJS({ "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6582,7 +5374,7 @@ var require_dist_cjs25 = __commonJS({ }); // ../../../node_modules/@smithy/url-parser/dist-cjs/index.js -var require_dist_cjs26 = __commonJS({ +var require_dist_cjs24 = __commonJS({ "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6607,7 +5399,7 @@ var require_dist_cjs26 = __commonJS({ parseUrl: () => parseUrl }); module2.exports = __toCommonJS2(src_exports); - var import_querystring_parser = require_dist_cjs25(); + var import_querystring_parser = require_dist_cjs23(); var parseUrl = /* @__PURE__ */ __name((url2) => { if (typeof url2 === "string") { return parseUrl(new URL(url2)); @@ -6629,7 +5421,7 @@ var require_dist_cjs26 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js -var require_dist_cjs27 = __commonJS({ +var require_dist_cjs25 = __commonJS({ "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6673,6 +5465,11 @@ var require_dist_cjs27 = __commonJS({ if (!("$metadata" in error)) { const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`; error.message += "\n " + hint; + if (typeof error.$responseBodyText !== "undefined") { + if (error.$response) { + error.$response.body = error.$responseBodyText; + } + } } throw error; } @@ -6714,7 +5511,7 @@ var require_dist_cjs27 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js -var require_dist_cjs28 = __commonJS({ +var require_dist_cjs26 = __commonJS({ "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6768,13 +5565,13 @@ var require_dist_cjs28 = __commonJS({ var DOTS_PATTERN = /\.\./; var isDnsCompatibleBucketName = /* @__PURE__ */ __name((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName"); var isArnBucketName = /* @__PURE__ */ __name((bucketName) => { - const [arn, partition, service, region, account, typeOrId] = bucketName.split(":"); + const [arn, partition, service, , , bucket] = bucketName.split(":"); const isArn = arn === "arn" && bucketName.split(":").length >= 6; - const isValidArn = [arn, partition, service, account, typeOrId].filter(Boolean).length === 5; + const isValidArn = Boolean(isArn && partition && service && bucket); if (isArn && !isValidArn) { throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`); } - return arn === "arn" && !!partition && !!service && !!account && !!typeOrId; + return isValidArn; }, "isArnBucketName"); var createConfigValueProvider = /* @__PURE__ */ __name((configKey, canonicalEndpointParamKey, config) => { const configProvider = /* @__PURE__ */ __name(async () => { @@ -6809,7 +5606,7 @@ var require_dist_cjs28 = __commonJS({ return configProvider; }, "createConfigValueProvider"); var import_getEndpointFromConfig = require_getEndpointFromConfig(); - var import_url_parser = require_dist_cjs26(); + var import_url_parser = require_dist_cjs24(); var toEndpointV1 = /* @__PURE__ */ __name((endpoint) => { if (typeof endpoint === "object") { if ("url" in endpoint) { @@ -6861,7 +5658,7 @@ var require_dist_cjs28 = __commonJS({ } return endpointParams; }, "resolveParams"); - var import_util_middleware = require_dist_cjs10(); + var import_util_middleware = require_dist_cjs7(); var endpointMiddleware = /* @__PURE__ */ __name(({ config, instructions @@ -6905,7 +5702,7 @@ var require_dist_cjs28 = __commonJS({ }); }; }, "endpointMiddleware"); - var import_middleware_serde = require_dist_cjs27(); + var import_middleware_serde = require_dist_cjs25(); var endpointMiddlewareOptions = { step: "serialize", tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"], @@ -6942,7 +5739,7 @@ var require_dist_cjs28 = __commonJS({ } }); -// ../../../node_modules/uuid/dist/esm-node/rng.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/rng.js function rng() { if (poolPtr > rnds8Pool.length - 16) { import_crypto.default.randomFillSync(rnds8Pool); @@ -6952,36 +5749,39 @@ function rng() { } var import_crypto, rnds8Pool, poolPtr; var init_rng = __esm({ - "../../../node_modules/uuid/dist/esm-node/rng.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/rng.js"() { import_crypto = __toESM(require("crypto")); rnds8Pool = new Uint8Array(256); poolPtr = rnds8Pool.length; } }); -// ../../../node_modules/uuid/dist/esm-node/regex.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/regex.js var regex_default; var init_regex = __esm({ - "../../../node_modules/uuid/dist/esm-node/regex.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/regex.js"() { regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; } }); -// ../../../node_modules/uuid/dist/esm-node/validate.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/validate.js function validate(uuid) { return typeof uuid === "string" && regex_default.test(uuid); } var validate_default; var init_validate = __esm({ - "../../../node_modules/uuid/dist/esm-node/validate.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/validate.js"() { init_regex(); validate_default = validate; } }); -// ../../../node_modules/uuid/dist/esm-node/stringify.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/stringify.js +function unsafeStringify(arr, offset = 0) { + return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]; +} function stringify(arr, offset = 0) { - const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); + const uuid = unsafeStringify(arr, offset); if (!validate_default(uuid)) { throw TypeError("Stringified UUID is invalid"); } @@ -6989,17 +5789,17 @@ function stringify(arr, offset = 0) { } var byteToHex, stringify_default; var init_stringify = __esm({ - "../../../node_modules/uuid/dist/esm-node/stringify.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/stringify.js"() { init_validate(); byteToHex = []; for (let i = 0; i < 256; ++i) { - byteToHex.push((i + 256).toString(16).substr(1)); + byteToHex.push((i + 256).toString(16).slice(1)); } stringify_default = stringify; } }); -// ../../../node_modules/uuid/dist/esm-node/v1.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v1.js function v1(options, buf, offset) { let i = buf && offset || 0; const b = buf || new Array(16); @@ -7046,11 +5846,11 @@ function v1(options, buf, offset) { for (let n = 0; n < 6; ++n) { b[i + n] = node[n]; } - return buf || stringify_default(b); + return buf || unsafeStringify(b); } var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default; var init_v1 = __esm({ - "../../../node_modules/uuid/dist/esm-node/v1.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v1.js"() { init_rng(); init_stringify(); _lastMSecs = 0; @@ -7059,7 +5859,7 @@ var init_v1 = __esm({ } }); -// ../../../node_modules/uuid/dist/esm-node/parse.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/parse.js function parse(uuid) { if (!validate_default(uuid)) { throw TypeError("Invalid UUID"); @@ -7086,13 +5886,13 @@ function parse(uuid) { } var parse_default; var init_parse = __esm({ - "../../../node_modules/uuid/dist/esm-node/parse.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/parse.js"() { init_validate(); parse_default = parse; } }); -// ../../../node_modules/uuid/dist/esm-node/v35.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v35.js function stringToBytes(str) { str = unescape(encodeURIComponent(str)); const bytes = []; @@ -7101,15 +5901,16 @@ function stringToBytes(str) { } return bytes; } -function v35_default(name, version2, hashfunc) { +function v35(name, version2, hashfunc) { function generateUUID(value, namespace, buf, offset) { + var _namespace; if (typeof value === "string") { value = stringToBytes(value); } if (typeof namespace === "string") { namespace = parse_default(namespace); } - if (namespace.length !== 16) { + if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) { throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); } let bytes = new Uint8Array(16 + value.length); @@ -7125,7 +5926,7 @@ function v35_default(name, version2, hashfunc) { } return buf; } - return stringify_default(bytes); + return unsafeStringify(bytes); } try { generateUUID.name = name; @@ -7137,7 +5938,7 @@ function v35_default(name, version2, hashfunc) { } var DNS, URL2; var init_v35 = __esm({ - "../../../node_modules/uuid/dist/esm-node/v35.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v35.js"() { init_stringify(); init_parse(); DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; @@ -7145,7 +5946,7 @@ var init_v35 = __esm({ } }); -// ../../../node_modules/uuid/dist/esm-node/md5.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/md5.js function md5(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); @@ -7156,25 +5957,39 @@ function md5(bytes) { } var import_crypto2, md5_default; var init_md5 = __esm({ - "../../../node_modules/uuid/dist/esm-node/md5.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/md5.js"() { import_crypto2 = __toESM(require("crypto")); md5_default = md5; } }); -// ../../../node_modules/uuid/dist/esm-node/v3.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v3.js var v3, v3_default; var init_v3 = __esm({ - "../../../node_modules/uuid/dist/esm-node/v3.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v3.js"() { init_v35(); init_md5(); - v3 = v35_default("v3", 48, md5_default); + v3 = v35("v3", 48, md5_default); v3_default = v3; } }); -// ../../../node_modules/uuid/dist/esm-node/v4.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/native.js +var import_crypto3, native_default; +var init_native = __esm({ + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/native.js"() { + import_crypto3 = __toESM(require("crypto")); + native_default = { + randomUUID: import_crypto3.default.randomUUID + }; + } +}); + +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v4.js function v4(options, buf, offset) { + if (native_default.randomUUID && !buf && !options) { + return native_default.randomUUID(); + } options = options || {}; const rnds = options.random || (options.rng || rng)(); rnds[6] = rnds[6] & 15 | 64; @@ -7186,69 +6001,70 @@ function v4(options, buf, offset) { } return buf; } - return stringify_default(rnds); + return unsafeStringify(rnds); } var v4_default; var init_v4 = __esm({ - "../../../node_modules/uuid/dist/esm-node/v4.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v4.js"() { + init_native(); init_rng(); init_stringify(); v4_default = v4; } }); -// ../../../node_modules/uuid/dist/esm-node/sha1.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/sha1.js function sha1(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } - return import_crypto3.default.createHash("sha1").update(bytes).digest(); + return import_crypto4.default.createHash("sha1").update(bytes).digest(); } -var import_crypto3, sha1_default; +var import_crypto4, sha1_default; var init_sha1 = __esm({ - "../../../node_modules/uuid/dist/esm-node/sha1.js"() { - import_crypto3 = __toESM(require("crypto")); + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/sha1.js"() { + import_crypto4 = __toESM(require("crypto")); sha1_default = sha1; } }); -// ../../../node_modules/uuid/dist/esm-node/v5.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v5.js var v5, v5_default; var init_v5 = __esm({ - "../../../node_modules/uuid/dist/esm-node/v5.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/v5.js"() { init_v35(); init_sha1(); - v5 = v35_default("v5", 80, sha1_default); + v5 = v35("v5", 80, sha1_default); v5_default = v5; } }); -// ../../../node_modules/uuid/dist/esm-node/nil.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/nil.js var nil_default; var init_nil = __esm({ - "../../../node_modules/uuid/dist/esm-node/nil.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/nil.js"() { nil_default = "00000000-0000-0000-0000-000000000000"; } }); -// ../../../node_modules/uuid/dist/esm-node/version.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/version.js function version(uuid) { if (!validate_default(uuid)) { throw TypeError("Invalid UUID"); } - return parseInt(uuid.substr(14, 1), 16); + return parseInt(uuid.slice(14, 15), 16); } var version_default; var init_version = __esm({ - "../../../node_modules/uuid/dist/esm-node/version.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/version.js"() { init_validate(); version_default = version; } }); -// ../../../node_modules/uuid/dist/esm-node/index.js +// ../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/index.js var esm_node_exports = {}; __export(esm_node_exports, { NIL: () => nil_default, @@ -7262,7 +6078,7 @@ __export(esm_node_exports, { version: () => version_default }); var init_esm_node = __esm({ - "../../../node_modules/uuid/dist/esm-node/index.js"() { + "../../../node_modules/@smithy/middleware-retry/node_modules/uuid/dist/esm-node/index.js"() { init_v1(); init_v3(); init_v4(); @@ -7276,7 +6092,7 @@ var init_esm_node = __esm({ }); // ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js -var require_dist_cjs29 = __commonJS({ +var require_dist_cjs27 = __commonJS({ "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -7298,6 +6114,7 @@ var require_dist_cjs29 = __commonJS({ var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); var src_exports = {}; __export2(src_exports, { + isClockSkewCorrectedError: () => isClockSkewCorrectedError, isClockSkewError: () => isClockSkewError, isRetryableByTrait: () => isRetryableByTrait, isServerError: () => isServerError, @@ -7335,13 +6152,17 @@ var require_dist_cjs29 = __commonJS({ var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"]; var isRetryableByTrait = /* @__PURE__ */ __name((error) => error.$retryable !== void 0, "isRetryableByTrait"); var isClockSkewError = /* @__PURE__ */ __name((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError"); + var isClockSkewCorrectedError = /* @__PURE__ */ __name((error) => { + var _a; + return (_a = error.$metadata) == null ? void 0 : _a.clockSkewCorrected; + }, "isClockSkewCorrectedError"); var isThrottlingError = /* @__PURE__ */ __name((error) => { var _a, _b; return ((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true; }, "isThrottlingError"); var isTransientError = /* @__PURE__ */ __name((error) => { var _a; - return TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) || 0); + return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) || 0); }, "isTransientError"); var isServerError = /* @__PURE__ */ __name((error) => { var _a; @@ -7358,7 +6179,7 @@ var require_dist_cjs29 = __commonJS({ }); // ../../../node_modules/@smithy/util-retry/dist-cjs/index.js -var require_dist_cjs30 = __commonJS({ +var require_dist_cjs28 = __commonJS({ "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -7405,7 +6226,7 @@ var require_dist_cjs30 = __commonJS({ })(RETRY_MODES || {}); var DEFAULT_MAX_ATTEMPTS = 3; var DEFAULT_RETRY_MODE = "standard"; - var import_service_error_classification = require_dist_cjs29(); + var import_service_error_classification = require_dist_cjs27(); var _DefaultRateLimiter = class _DefaultRateLimiter { constructor(options) { this.currentCapacity = 0; @@ -7671,7 +6492,7 @@ var require_dist_cjs30 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js -var require_dist_cjs31 = __commonJS({ +var require_dist_cjs29 = __commonJS({ "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -7990,7 +6811,7 @@ var require_fromBase64 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromBase64 = void 0; - var util_buffer_from_1 = require_dist_cjs12(); + var util_buffer_from_1 = require_dist_cjs9(); var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/; var fromBase642 = (input) => { if (input.length * 3 % 4 !== 0) { @@ -8012,14 +6833,26 @@ var require_toBase64 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.toBase64 = void 0; - var util_buffer_from_1 = require_dist_cjs12(); - var toBase642 = (input) => (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64"); + var util_buffer_from_1 = require_dist_cjs9(); + var util_utf8_1 = require_dist_cjs10(); + var toBase642 = (_input) => { + let input; + if (typeof _input === "string") { + input = (0, util_utf8_1.fromUtf8)(_input); + } else { + input = _input; + } + if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") { + throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array."); + } + return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64"); + }; exports2.toBase64 = toBase642; } }); // ../../../node_modules/@smithy/util-base64/dist-cjs/index.js -var require_dist_cjs32 = __commonJS({ +var require_dist_cjs30 = __commonJS({ "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -8081,7 +6914,7 @@ var require_getAwsChunkedEncodingStream = __commonJS({ }); // ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js -var require_dist_cjs33 = __commonJS({ +var require_dist_cjs31 = __commonJS({ "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -8106,7 +6939,7 @@ var require_dist_cjs33 = __commonJS({ buildQueryString: () => buildQueryString }); module2.exports = __toCommonJS2(src_exports); - var import_util_uri_escape = require_dist_cjs14(); + var import_util_uri_escape = require_dist_cjs12(); function buildQueryString(query) { const parts = []; for (let key of Object.keys(query).sort()) { @@ -8131,7 +6964,7 @@ var require_dist_cjs33 = __commonJS({ }); // ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js -var require_dist_cjs34 = __commonJS({ +var require_dist_cjs32 = __commonJS({ "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) { var __create2 = Object.create; var __defProp2 = Object.defineProperty; @@ -8170,7 +7003,7 @@ var require_dist_cjs34 = __commonJS({ }); module2.exports = __toCommonJS2(src_exports); var import_protocol_http = require_dist_cjs2(); - var import_querystring_builder = require_dist_cjs33(); + var import_querystring_builder = require_dist_cjs31(); var import_http2 = require("http"); var import_https = require("https"); var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"]; @@ -8251,16 +7084,28 @@ var require_dist_cjs34 = __commonJS({ function writeBody(httpRequest, body) { if (body instanceof import_stream.Readable) { body.pipe(httpRequest); - } else if (body) { + return; + } + if (body) { + if (Buffer.isBuffer(body) || typeof body === "string") { + httpRequest.end(body); + return; + } + const uint8 = body; + if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") { + httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength)); + return; + } httpRequest.end(Buffer.from(body)); - } else { - httpRequest.end(); + return; } + httpRequest.end(); } __name(writeBody, "writeBody"); var DEFAULT_REQUEST_TIMEOUT = 0; var _NodeHttpHandler = class _NodeHttpHandler2 { constructor(options) { + this.socketWarningTimestamp = 0; this.metadata = { handlerProtocol: "http/1.1" }; this.configProvider = new Promise((resolve, reject) => { if (typeof options === "function") { @@ -8282,6 +7127,39 @@ var require_dist_cjs34 = __commonJS({ } return new _NodeHttpHandler2(instanceOrOptions); } + /** + * @internal + * + * @param agent - http(s) agent in use by the NodeHttpHandler instance. + * @returns timestamp of last emitted warning. + */ + static checkSocketUsage(agent, socketWarningTimestamp) { + var _a, _b; + const { sockets, requests, maxSockets } = agent; + if (typeof maxSockets !== "number" || maxSockets === Infinity) { + return socketWarningTimestamp; + } + const interval = 15e3; + if (Date.now() - interval < socketWarningTimestamp) { + return socketWarningTimestamp; + } + if (sockets && requests) { + for (const origin in sockets) { + const socketsInUse = ((_a = sockets[origin]) == null ? void 0 : _a.length) ?? 0; + const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0; + if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) { + console.warn( + "@smithy/node-http-handler:WARN", + `socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.`, + "See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html", + "or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config." + ); + return Date.now(); + } + } + } + return socketWarningTimestamp; + } resolveDefaultConfig(options) { const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {}; const keepAlive = true; @@ -8289,8 +7167,18 @@ var require_dist_cjs34 = __commonJS({ return { connectionTimeout, requestTimeout: requestTimeout ?? socketTimeout, - httpAgent: httpAgent || new import_http2.Agent({ keepAlive, maxSockets }), - httpsAgent: httpsAgent || new import_https.Agent({ keepAlive, maxSockets }) + httpAgent: (() => { + if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") { + return httpAgent; + } + return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent }); + })(), + httpsAgent: (() => { + if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") { + return httpsAgent; + } + return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent }); + })() }; } destroy() { @@ -8302,10 +7190,12 @@ var require_dist_cjs34 = __commonJS({ if (!this.config) { this.config = await this.configProvider; } + let socketCheckTimeoutId; return new Promise((_resolve, _reject) => { let writeRequestBodyPromise = void 0; const resolve = /* @__PURE__ */ __name(async (arg) => { await writeRequestBodyPromise; + clearTimeout(socketCheckTimeoutId); _resolve(arg); }, "resolve"); const reject = /* @__PURE__ */ __name(async (arg) => { @@ -8322,6 +7212,10 @@ var require_dist_cjs34 = __commonJS({ return; } const isSSL = request2.protocol === "https:"; + const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent; + socketCheckTimeoutId = setTimeout(() => { + this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(agent, this.socketWarningTimestamp); + }, this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)); const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {}); let auth = void 0; if (request2.username != null || request2.password != null) { @@ -8342,7 +7236,7 @@ var require_dist_cjs34 = __commonJS({ method: request2.method, path, port: request2.port, - agent: isSSL ? this.config.httpsAgent : this.config.httpAgent, + agent, auth }; const requestFunc = isSSL ? import_https.request : import_http2.request; @@ -8723,8 +7617,8 @@ var require_sdk_stream_mixin = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.sdkStreamMixin = void 0; - var node_http_handler_1 = require_dist_cjs34(); - var util_buffer_from_1 = require_dist_cjs12(); + var node_http_handler_1 = require_dist_cjs32(); + var util_buffer_from_1 = require_dist_cjs9(); var stream_1 = require("stream"); var util_1 = require("util"); var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed."; @@ -8773,7 +7667,7 @@ var require_sdk_stream_mixin = __commonJS({ }); // ../../../node_modules/@smithy/util-stream/dist-cjs/index.js -var require_dist_cjs35 = __commonJS({ +var require_dist_cjs33 = __commonJS({ "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -8799,8 +7693,8 @@ var require_dist_cjs35 = __commonJS({ Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter }); module2.exports = __toCommonJS2(src_exports); - var import_util_base64 = require_dist_cjs32(); - var import_util_utf8 = require_dist_cjs13(); + var import_util_base64 = require_dist_cjs30(); + var import_util_utf8 = require_dist_cjs10(); function transformToString(payload, encoding = "utf-8") { if (encoding === "base64") { return (0, import_util_base64.toBase64)(payload); @@ -8852,7 +7746,7 @@ var require_dist_cjs35 = __commonJS({ }); // ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js -var require_dist_cjs36 = __commonJS({ +var require_dist_cjs34 = __commonJS({ "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -8948,7 +7842,7 @@ var require_dist_cjs36 = __commonJS({ }; __name(_NoOpLogger, "NoOpLogger"); var NoOpLogger = _NoOpLogger; - var import_middleware_stack = require_dist_cjs31(); + var import_middleware_stack = require_dist_cjs29(); var _Client = class _Client { constructor(config) { this.middlewareStack = (0, import_middleware_stack.constructStack)(); @@ -8979,7 +7873,7 @@ var require_dist_cjs36 = __commonJS({ }; __name(_Client, "Client"); var Client = _Client; - var import_util_stream = require_dist_cjs35(); + var import_util_stream = require_dist_cjs33(); var collectBody = /* @__PURE__ */ __name(async (streamBody = new Uint8Array(), context) => { if (streamBody instanceof Uint8Array) { return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody); @@ -9134,11 +8028,11 @@ var require_dist_cjs36 = __commonJS({ /** * @public */ - constructor(input) { + constructor(...[input]) { super(); - this.input = input; this.serialize = closure._serializer; this.deserialize = closure._deserializer; + this.input = input ?? {}; closure._init(this); } /** @@ -10003,7 +8897,7 @@ var require_isStreamingPayload = __commonJS({ }); // ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js -var require_dist_cjs37 = __commonJS({ +var require_dist_cjs35 = __commonJS({ "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -10047,7 +8941,7 @@ var require_dist_cjs37 = __commonJS({ module2.exports = __toCommonJS2(src_exports); var import_protocol_http = require_dist_cjs2(); var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports)); - var import_util_retry = require_dist_cjs30(); + var import_util_retry = require_dist_cjs28(); var getDefaultRetryQuota = /* @__PURE__ */ __name((initialRetryTokens, options) => { const MAX_CAPACITY = initialRetryTokens; const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT; @@ -10075,7 +8969,7 @@ var require_dist_cjs37 = __commonJS({ }); }, "getDefaultRetryQuota"); var defaultDelayDecider = /* @__PURE__ */ __name((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider"); - var import_service_error_classification = require_dist_cjs29(); + var import_service_error_classification = require_dist_cjs27(); var defaultRetryDecider = /* @__PURE__ */ __name((error) => { if (!error) { return false; @@ -10196,7 +9090,7 @@ var require_dist_cjs37 = __commonJS({ }; __name(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy"); var AdaptiveRetryStrategy = _AdaptiveRetryStrategy; - var import_util_middleware = require_dist_cjs10(); + var import_util_middleware = require_dist_cjs7(); var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS"; var CONFIG_MAX_ATTEMPTS = "max_attempts"; var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = { @@ -10267,7 +9161,7 @@ var require_dist_cjs37 = __commonJS({ clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions); } }), "getOmitRetryHeadersPlugin"); - var import_smithy_client = require_dist_cjs36(); + var import_smithy_client = require_dist_cjs34(); var import_isStreamingPayload = require_isStreamingPayload(); var retryMiddleware = /* @__PURE__ */ __name((options) => (next, context) => async (args) => { var _a; @@ -10329,6 +9223,7 @@ var require_dist_cjs37 = __commonJS({ var isRetryStrategyV2 = /* @__PURE__ */ __name((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2"); var getRetryErrorInfo = /* @__PURE__ */ __name((error) => { const errorInfo = { + error, errorType: getRetryErrorType(error) }; const retryAfterHint = getRetryAfterHint(error.$response); @@ -10499,12 +9394,12 @@ var require_package = __commonJS({ }); // ../../../node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js -var require_dist_cjs38 = __commonJS({ +var require_dist_cjs36 = __commonJS({ "../../../node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveStsAuthConfig = void 0; - var middleware_signing_1 = require_dist_cjs16(); + var middleware_signing_1 = require_dist_cjs14(); var resolveStsAuthConfig = (input, { stsClientCtor }) => (0, middleware_signing_1.resolveAwsAuthConfig)({ ...input, stsClientCtor @@ -10647,7 +9542,7 @@ var require_STSServiceException = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.STSServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { return smithy_client_1.ServiceException; } }); @@ -10667,7 +9562,7 @@ var require_models_0 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetSessionTokenResponseFilterSensitiveLog = exports2.GetFederationTokenResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityRequestFilterSensitiveLog = exports2.AssumeRoleWithSAMLResponseFilterSensitiveLog = exports2.AssumeRoleWithSAMLRequestFilterSensitiveLog = exports2.AssumeRoleResponseFilterSensitiveLog = exports2.CredentialsFilterSensitiveLog = exports2.InvalidAuthorizationMessageException = exports2.IDPCommunicationErrorException = exports2.InvalidIdentityTokenException = exports2.IDPRejectedClaimException = exports2.RegionDisabledException = exports2.PackedPolicyTooLargeException = exports2.MalformedPolicyDocumentException = exports2.ExpiredTokenException = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var STSServiceException_1 = require_STSServiceException(); var ExpiredTokenException = class _ExpiredTokenException extends STSServiceException_1.STSServiceException { constructor(opts) { @@ -12502,7 +11397,7 @@ var require_Aws_query = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.de_GetSessionTokenCommand = exports2.de_GetFederationTokenCommand = exports2.de_GetCallerIdentityCommand = exports2.de_GetAccessKeyInfoCommand = exports2.de_DecodeAuthorizationMessageCommand = exports2.de_AssumeRoleWithWebIdentityCommand = exports2.de_AssumeRoleWithSAMLCommand = exports2.de_AssumeRoleCommand = exports2.se_GetSessionTokenCommand = exports2.se_GetFederationTokenCommand = exports2.se_GetCallerIdentityCommand = exports2.se_GetAccessKeyInfoCommand = exports2.se_DecodeAuthorizationMessageCommand = exports2.se_AssumeRoleWithWebIdentityCommand = exports2.se_AssumeRoleWithSAMLCommand = exports2.se_AssumeRoleCommand = void 0; var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var fast_xml_parser_1 = require_fxp(); var models_0_1 = require_models_0(); var STSServiceException_1 = require_STSServiceException(); @@ -13533,10 +12428,10 @@ var require_AssumeRoleCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AssumeRoleCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -13596,9 +12491,9 @@ var require_AssumeRoleWithWebIdentityCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AssumeRoleWithWebIdentityCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -13763,7 +12658,7 @@ var require_fromEnv = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js -var require_dist_cjs39 = __commonJS({ +var require_dist_cjs37 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -13773,7 +12668,7 @@ var require_dist_cjs39 = __commonJS({ }); // ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js -var require_dist_cjs40 = __commonJS({ +var require_dist_cjs38 = __commonJS({ "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -13800,6 +12695,7 @@ var require_dist_cjs40 = __commonJS({ ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN, ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI, + Endpoint: () => Endpoint, fromContainerMetadata: () => fromContainerMetadata, fromInstanceMetadata: () => fromInstanceMetadata, getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint, @@ -13947,8 +12843,13 @@ var require_dist_cjs40 = __commonJS({ }; __name(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError"); var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError; - var import_node_config_provider = require_dist_cjs24(); - var import_url_parser = require_dist_cjs26(); + var import_node_config_provider = require_dist_cjs22(); + var import_url_parser = require_dist_cjs24(); + var Endpoint = /* @__PURE__ */ ((Endpoint2) => { + Endpoint2["IPv4"] = "http://169.254.169.254"; + Endpoint2["IPv6"] = "http://[fd00:ec2::254]"; + return Endpoint2; + })(Endpoint || {}); var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT"; var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint"; var ENDPOINT_CONFIG_OPTIONS = { @@ -13989,7 +12890,8 @@ var require_dist_cjs40 = __commonJS({ const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS); const newExpiration = new Date(Date.now() + refreshInterval * 1e3); logger.warn( - "Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.\nFor more information, please visit: " + STATIC_STABILITY_DOC_URL + `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}. +For more information, please visit: ` + STATIC_STABILITY_DOC_URL ); const originalExpiration = credentials.originalExpiration ?? credentials.expiration; return { @@ -14159,8 +13061,8 @@ var require_resolveCredentialSource = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveCredentialSource = void 0; - var credential_provider_env_1 = require_dist_cjs39(); - var credential_provider_imds_1 = require_dist_cjs40(); + var credential_provider_env_1 = require_dist_cjs37(); + var credential_provider_imds_1 = require_dist_cjs38(); var property_provider_1 = require_dist_cjs6(); var resolveCredentialSource = (credentialSource, profileName) => { const sourceProvidersMap = { @@ -14185,7 +13087,7 @@ var require_resolveAssumeRoleCredentials = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveAssumeRoleCredentials = exports2.isAssumeRoleProfile = void 0; var property_provider_1 = require_dist_cjs6(); - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var resolveCredentialSource_1 = require_resolveCredentialSource(); var resolveProfileData_1 = require_resolveProfileData(); var isAssumeRoleProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg) || isAssumeRoleWithProviderProfile(arg)); @@ -14302,7 +13204,7 @@ var require_fromProcess = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromProcess = void 0; - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var resolveProcessCredentials_1 = require_resolveProcessCredentials(); var fromProcess = (init = {}) => async () => { const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); @@ -14313,7 +13215,7 @@ var require_fromProcess = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js -var require_dist_cjs41 = __commonJS({ +var require_dist_cjs39 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -14328,7 +13230,7 @@ var require_resolveProcessCredentials2 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveProcessCredentials = exports2.isProcessProfile = void 0; - var credential_provider_process_1 = require_dist_cjs41(); + var credential_provider_process_1 = require_dist_cjs39(); var isProcessProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string"; exports2.isProcessProfile = isProcessProfile; var resolveProcessCredentials = async (options, profile) => (0, credential_provider_process_1.fromProcess)({ @@ -14492,12 +13394,12 @@ var require_is_crt_available = __commonJS({ }); // ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js -var require_dist_cjs42 = __commonJS({ +var require_dist_cjs40 = __commonJS({ "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultUserAgent = exports2.UA_APP_ID_INI_NAME = exports2.UA_APP_ID_ENV_NAME = void 0; - var node_config_provider_1 = require_dist_cjs24(); + var node_config_provider_1 = require_dist_cjs22(); var os_1 = require("os"); var process_1 = require("process"); var is_crt_available_1 = require_is_crt_available(); @@ -14540,7 +13442,7 @@ var require_dist_cjs42 = __commonJS({ }); // ../../../node_modules/@smithy/hash-node/dist-cjs/index.js -var require_dist_cjs43 = __commonJS({ +var require_dist_cjs41 = __commonJS({ "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -14565,10 +13467,10 @@ var require_dist_cjs43 = __commonJS({ Hash: () => Hash }); module2.exports = __toCommonJS2(src_exports); - var import_util_buffer_from = require_dist_cjs12(); - var import_util_utf8 = require_dist_cjs13(); + var import_util_buffer_from = require_dist_cjs9(); + var import_util_utf8 = require_dist_cjs10(); var import_buffer = require("buffer"); - var import_crypto4 = require("crypto"); + var import_crypto5 = require("crypto"); var _Hash = class _Hash { constructor(algorithmIdentifier, secret) { this.algorithmIdentifier = algorithmIdentifier; @@ -14582,7 +13484,7 @@ var require_dist_cjs43 = __commonJS({ return Promise.resolve(this.hash.digest()); } reset() { - this.hash = this.secret ? (0, import_crypto4.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto4.createHash)(this.algorithmIdentifier); + this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier); } }; __name(_Hash, "Hash"); @@ -14604,7 +13506,7 @@ var require_dist_cjs43 = __commonJS({ }); // ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js -var require_dist_cjs44 = __commonJS({ +var require_dist_cjs42 = __commonJS({ "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -14635,7 +13537,7 @@ var require_dist_cjs44 = __commonJS({ return 0; } if (typeof body === "string") { - return Buffer.from(body).length; + return Buffer.byteLength(body); } else if (typeof body.byteLength === "number") { return body.byteLength; } else if (typeof body.size === "number") { @@ -14689,7 +13591,7 @@ var require_endpointResolver = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs18(); + var util_endpoints_1 = require_dist_cjs16(); var ruleset_1 = require_ruleset(); var defaultEndpointResolver = (endpointParams, context = {}) => { return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { @@ -14707,10 +13609,10 @@ var require_runtimeConfig_shared = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRuntimeConfig = void 0; - var smithy_client_1 = require_dist_cjs36(); - var url_parser_1 = require_dist_cjs26(); - var util_base64_1 = require_dist_cjs32(); - var util_utf8_1 = require_dist_cjs13(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs24(); + var util_base64_1 = require_dist_cjs30(); + var util_utf8_1 = require_dist_cjs10(); var endpointResolver_1 = require_endpointResolver(); var getRuntimeConfig = (config) => ({ apiVersion: "2019-06-10", @@ -14730,7 +13632,7 @@ var require_runtimeConfig_shared = __commonJS({ }); // ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js -var require_dist_cjs45 = __commonJS({ +var require_dist_cjs43 = __commonJS({ "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) { var __create2 = Object.create; var __defProp2 = Object.defineProperty; @@ -14765,8 +13667,8 @@ var require_dist_cjs45 = __commonJS({ resolveDefaultsModeConfig: () => resolveDefaultsModeConfig }); module2.exports = __toCommonJS2(src_exports); - var import_config_resolver = require_dist_cjs21(); - var import_node_config_provider = require_dist_cjs24(); + var import_config_resolver = require_dist_cjs19(); + var import_node_config_provider = require_dist_cjs22(); var import_property_provider = require_dist_cjs6(); var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV"; var AWS_REGION_ENV = "AWS_REGION"; @@ -14828,7 +13730,7 @@ var require_dist_cjs45 = __commonJS({ } if (!process.env[ENV_IMDS_DISABLED]) { try { - const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs40())); + const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38())); const endpoint = await getInstanceMetadataEndpoint(); return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString(); } catch (e) { @@ -14846,18 +13748,18 @@ var require_runtimeConfig = __commonJS({ exports2.getRuntimeConfig = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package3()); - var util_user_agent_node_1 = require_dist_cjs42(); - var config_resolver_1 = require_dist_cjs21(); - var hash_node_1 = require_dist_cjs43(); - var middleware_retry_1 = require_dist_cjs37(); - var node_config_provider_1 = require_dist_cjs24(); - var node_http_handler_1 = require_dist_cjs34(); - var util_body_length_node_1 = require_dist_cjs44(); - var util_retry_1 = require_dist_cjs30(); + var util_user_agent_node_1 = require_dist_cjs40(); + var config_resolver_1 = require_dist_cjs19(); + var hash_node_1 = require_dist_cjs41(); + var middleware_retry_1 = require_dist_cjs35(); + var node_config_provider_1 = require_dist_cjs22(); + var node_http_handler_1 = require_dist_cjs32(); + var util_body_length_node_1 = require_dist_cjs42(); + var util_retry_1 = require_dist_cjs28(); var runtimeConfig_shared_1 = require_runtimeConfig_shared(); - var smithy_client_1 = require_dist_cjs36(); - var util_defaults_mode_node_1 = require_dist_cjs45(); - var smithy_client_2 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs43(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -15014,7 +13916,7 @@ var require_regionConfig = __commonJS({ }); // ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js -var require_dist_cjs46 = __commonJS({ +var require_dist_cjs44 = __commonJS({ "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -15030,9 +13932,9 @@ var require_runtimeExtensions = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs46(); + var region_config_resolver_1 = require_dist_cjs44(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var asPartial = (t) => t; var resolveRuntimeExtensions = (runtimeConfig, extensions) => { const extensionConfiguration = { @@ -15061,12 +13963,12 @@ var require_SSOClient = __commonJS({ var middleware_host_header_1 = require_dist_cjs3(); var middleware_logger_1 = require_dist_cjs4(); var middleware_recursion_detection_1 = require_dist_cjs5(); - var middleware_user_agent_1 = require_dist_cjs19(); - var config_resolver_1 = require_dist_cjs21(); - var middleware_content_length_1 = require_dist_cjs22(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_retry_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_user_agent_1 = require_dist_cjs17(); + var config_resolver_1 = require_dist_cjs19(); + var middleware_content_length_1 = require_dist_cjs20(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_retry_1 = require_dist_cjs35(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { return smithy_client_1.Client; } }); @@ -15106,7 +14008,7 @@ var require_SSOServiceException = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SSOServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { return smithy_client_1.ServiceException; } }); @@ -15126,7 +14028,7 @@ var require_models_02 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LogoutRequestFilterSensitiveLog = exports2.ListAccountsRequestFilterSensitiveLog = exports2.ListAccountRolesRequestFilterSensitiveLog = exports2.GetRoleCredentialsResponseFilterSensitiveLog = exports2.RoleCredentialsFilterSensitiveLog = exports2.GetRoleCredentialsRequestFilterSensitiveLog = exports2.UnauthorizedException = exports2.TooManyRequestsException = exports2.ResourceNotFoundException = exports2.InvalidRequestException = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var SSOServiceException_1 = require_SSOServiceException(); var InvalidRequestException = class _InvalidRequestException extends SSOServiceException_1.SSOServiceException { constructor(opts) { @@ -15221,7 +14123,7 @@ var require_Aws_restJson1 = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.de_LogoutCommand = exports2.de_ListAccountsCommand = exports2.de_ListAccountRolesCommand = exports2.de_GetRoleCredentialsCommand = exports2.se_LogoutCommand = exports2.se_ListAccountsCommand = exports2.se_ListAccountRolesCommand = exports2.se_GetRoleCredentialsCommand = void 0; var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var models_0_1 = require_models_02(); var SSOServiceException_1 = require_SSOServiceException(); var se_GetRoleCredentialsCommand = async (input, context) => { @@ -15589,9 +14491,9 @@ var require_GetRoleCredentialsCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetRoleCredentialsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -15649,9 +14551,9 @@ var require_ListAccountRolesCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListAccountRolesCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -15709,9 +14611,9 @@ var require_ListAccountsCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListAccountsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -15769,9 +14671,9 @@ var require_LogoutCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LogoutCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -15829,7 +14731,7 @@ var require_SSO = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SSO = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var GetRoleCredentialsCommand_1 = require_GetRoleCredentialsCommand(); var ListAccountRolesCommand_1 = require_ListAccountRolesCommand(); var ListAccountsCommand_1 = require_ListAccountsCommand(); @@ -15960,7 +14862,7 @@ var require_models = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js -var require_dist_cjs47 = __commonJS({ +var require_dist_cjs45 = __commonJS({ "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -15987,12 +14889,12 @@ var require_client_sso_oidc_node = __commonJS({ var middleware_host_header_1 = require_dist_cjs3(); var middleware_logger_1 = require_dist_cjs4(); var middleware_recursion_detection_1 = require_dist_cjs5(); - var middleware_user_agent_1 = require_dist_cjs19(); - var config_resolver_1 = require_dist_cjs21(); - var middleware_content_length_1 = require_dist_cjs22(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_retry_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_user_agent_1 = require_dist_cjs17(); + var config_resolver_1 = require_dist_cjs19(); + var middleware_content_length_1 = require_dist_cjs20(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_retry_1 = require_dist_cjs35(); + var smithy_client_1 = require_dist_cjs34(); var resolveClientEndpointParameters = (options) => { var _a, _b; return { @@ -16003,19 +14905,19 @@ var require_client_sso_oidc_node = __commonJS({ }; }; var package_default = { version: "3.387.0" }; - var util_user_agent_node_1 = require_dist_cjs42(); - var config_resolver_2 = require_dist_cjs21(); - var hash_node_1 = require_dist_cjs43(); - var middleware_retry_2 = require_dist_cjs37(); - var node_config_provider_1 = require_dist_cjs24(); - var node_http_handler_1 = require_dist_cjs34(); - var util_body_length_node_1 = require_dist_cjs44(); - var util_retry_1 = require_dist_cjs30(); - var smithy_client_2 = require_dist_cjs36(); - var url_parser_1 = require_dist_cjs26(); - var util_base64_1 = require_dist_cjs32(); - var util_utf8_1 = require_dist_cjs13(); - var util_endpoints_1 = require_dist_cjs18(); + var util_user_agent_node_1 = require_dist_cjs40(); + var config_resolver_2 = require_dist_cjs19(); + var hash_node_1 = require_dist_cjs41(); + var middleware_retry_2 = require_dist_cjs35(); + var node_config_provider_1 = require_dist_cjs22(); + var node_http_handler_1 = require_dist_cjs32(); + var util_body_length_node_1 = require_dist_cjs42(); + var util_retry_1 = require_dist_cjs28(); + var smithy_client_2 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs24(); + var util_base64_1 = require_dist_cjs30(); + var util_utf8_1 = require_dist_cjs10(); + var util_endpoints_1 = require_dist_cjs16(); var p = "required"; var q = "fn"; var r = "argv"; @@ -16058,9 +14960,9 @@ var require_client_sso_oidc_node = __commonJS({ utf8Encoder: (_j = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _j !== void 0 ? _j : util_utf8_1.toUtf8 }; }; - var smithy_client_3 = require_dist_cjs36(); - var util_defaults_mode_node_1 = require_dist_cjs45(); - var smithy_client_4 = require_dist_cjs36(); + var smithy_client_3 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs43(); + var smithy_client_4 = require_dist_cjs34(); var getRuntimeConfig2 = (config) => { var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; (0, smithy_client_4.emitWarningIfUnsupportedVersion)(process.version); @@ -16110,13 +15012,13 @@ var require_client_sso_oidc_node = __commonJS({ } }; exports2.SSOOIDCClient = SSOOIDCClient; - var smithy_client_5 = require_dist_cjs36(); - var middleware_endpoint_2 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_6 = require_dist_cjs36(); + var smithy_client_5 = require_dist_cjs34(); + var middleware_endpoint_2 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_6 = require_dist_cjs34(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_7 = require_dist_cjs36(); - var smithy_client_8 = require_dist_cjs36(); + var smithy_client_7 = require_dist_cjs34(); + var smithy_client_8 = require_dist_cjs34(); var SSOOIDCServiceException = class _SSOOIDCServiceException extends smithy_client_8.ServiceException { constructor(options) { super(options); @@ -16794,9 +15696,9 @@ var require_client_sso_oidc_node = __commonJS({ } }; exports2.CreateTokenCommand = CreateTokenCommand; - var middleware_endpoint_3 = require_dist_cjs28(); - var middleware_serde_2 = require_dist_cjs27(); - var smithy_client_9 = require_dist_cjs36(); + var middleware_endpoint_3 = require_dist_cjs26(); + var middleware_serde_2 = require_dist_cjs25(); + var smithy_client_9 = require_dist_cjs34(); var RegisterClientCommand = class _RegisterClientCommand extends smithy_client_9.Command { constructor(input) { super(); @@ -16834,9 +15736,9 @@ var require_client_sso_oidc_node = __commonJS({ return de_RegisterClientCommand(output, context); } }; - var middleware_endpoint_4 = require_dist_cjs28(); - var middleware_serde_3 = require_dist_cjs27(); - var smithy_client_10 = require_dist_cjs36(); + var middleware_endpoint_4 = require_dist_cjs26(); + var middleware_serde_3 = require_dist_cjs25(); + var smithy_client_10 = require_dist_cjs34(); var StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends smithy_client_10.Command { constructor(input) { super(); @@ -16977,7 +15879,7 @@ var require_writeSSOTokenToFile = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.writeSSOTokenToFile = void 0; - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var fs_1 = require("fs"); var { writeFile } = fs_1.promises; var writeSSOTokenToFile = (id, ssoToken) => { @@ -16996,7 +15898,7 @@ var require_fromSso = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromSso = void 0; var property_provider_1 = require_dist_cjs6(); - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var constants_1 = require_constants2(); var getNewSsoOidcToken_1 = require_getNewSsoOidcToken(); var validateTokenExpiry_1 = require_validateTokenExpiry(); @@ -17106,7 +16008,7 @@ var require_nodeProvider = __commonJS({ }); // ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js -var require_dist_cjs48 = __commonJS({ +var require_dist_cjs46 = __commonJS({ "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -17124,10 +16026,10 @@ var require_resolveSSOCredentials = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveSSOCredentials = void 0; - var client_sso_1 = require_dist_cjs47(); - var token_providers_1 = require_dist_cjs48(); + var client_sso_1 = require_dist_cjs45(); + var token_providers_1 = require_dist_cjs46(); var property_provider_1 = require_dist_cjs6(); - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var SHOULD_FAIL_CREDENTIAL_CHAIN = false; var resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, profile }) => { let token; @@ -17200,7 +16102,7 @@ var require_fromSSO = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromSSO = void 0; var property_provider_1 = require_dist_cjs6(); - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var isSsoProfile_1 = require_isSsoProfile(); var resolveSSOCredentials_1 = require_resolveSSOCredentials(); var validateSsoProfile_1 = require_validateSsoProfile(); @@ -17266,7 +16168,7 @@ var require_types2 = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js -var require_dist_cjs49 = __commonJS({ +var require_dist_cjs47 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -17284,8 +16186,8 @@ var require_resolveSsoCredentials = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveSsoCredentials = exports2.isSsoProfile = void 0; - var credential_provider_sso_1 = require_dist_cjs49(); - var credential_provider_sso_2 = require_dist_cjs49(); + var credential_provider_sso_1 = require_dist_cjs47(); + var credential_provider_sso_2 = require_dist_cjs47(); Object.defineProperty(exports2, "isSsoProfile", { enumerable: true, get: function() { return credential_provider_sso_2.isSsoProfile; } }); @@ -17378,7 +16280,7 @@ var require_fromTokenFile = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js -var require_dist_cjs50 = __commonJS({ +var require_dist_cjs48 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -17394,7 +16296,7 @@ var require_resolveWebIdentityCredentials = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveWebIdentityCredentials = exports2.isWebIdentityProfile = void 0; - var credential_provider_web_identity_1 = require_dist_cjs50(); + var credential_provider_web_identity_1 = require_dist_cjs48(); var isWebIdentityProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1; exports2.isWebIdentityProfile = isWebIdentityProfile; var resolveWebIdentityCredentials = async (profile, options) => (0, credential_provider_web_identity_1.fromTokenFile)({ @@ -17451,7 +16353,7 @@ var require_fromIni = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromIni = void 0; - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var resolveProfileData_1 = require_resolveProfileData(); var fromIni = (init = {}) => async () => { const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); @@ -17462,7 +16364,7 @@ var require_fromIni = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js -var require_dist_cjs51 = __commonJS({ +var require_dist_cjs49 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -17477,7 +16379,7 @@ var require_remoteProvider = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.remoteProvider = exports2.ENV_IMDS_DISABLED = void 0; - var credential_provider_imds_1 = require_dist_cjs40(); + var credential_provider_imds_1 = require_dist_cjs38(); var property_provider_1 = require_dist_cjs6(); exports2.ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; var remoteProvider = (init) => { @@ -17501,13 +16403,13 @@ var require_defaultProvider = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultProvider = void 0; - var credential_provider_env_1 = require_dist_cjs39(); - var credential_provider_ini_1 = require_dist_cjs51(); - var credential_provider_process_1 = require_dist_cjs41(); - var credential_provider_sso_1 = require_dist_cjs49(); - var credential_provider_web_identity_1 = require_dist_cjs50(); + var credential_provider_env_1 = require_dist_cjs37(); + var credential_provider_ini_1 = require_dist_cjs49(); + var credential_provider_process_1 = require_dist_cjs39(); + var credential_provider_sso_1 = require_dist_cjs47(); + var credential_provider_web_identity_1 = require_dist_cjs48(); var property_provider_1 = require_dist_cjs6(); - var shared_ini_file_loader_1 = require_dist_cjs23(); + var shared_ini_file_loader_1 = require_dist_cjs21(); var remoteProvider_1 = require_remoteProvider(); var defaultProvider = (init = {}) => (0, property_provider_1.memoize)((0, property_provider_1.chain)(...init.profile || process.env[shared_ini_file_loader_1.ENV_PROFILE] ? [] : [(0, credential_provider_env_1.fromEnv)()], (0, credential_provider_sso_1.fromSSO)(init), (0, credential_provider_ini_1.fromIni)(init), (0, credential_provider_process_1.fromProcess)(init), (0, credential_provider_web_identity_1.fromTokenFile)(init), (0, remoteProvider_1.remoteProvider)(init), async () => { throw new property_provider_1.CredentialsProviderError("Could not load credentials from any providers", false); @@ -17517,7 +16419,7 @@ var require_defaultProvider = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js -var require_dist_cjs52 = __commonJS({ +var require_dist_cjs50 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -17579,7 +16481,7 @@ var require_endpointResolver2 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs18(); + var util_endpoints_1 = require_dist_cjs16(); var ruleset_1 = require_ruleset2(); var defaultEndpointResolver = (endpointParams, context = {}) => { return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { @@ -17597,10 +16499,10 @@ var require_runtimeConfig_shared2 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRuntimeConfig = void 0; - var smithy_client_1 = require_dist_cjs36(); - var url_parser_1 = require_dist_cjs26(); - var util_base64_1 = require_dist_cjs32(); - var util_utf8_1 = require_dist_cjs13(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs24(); + var util_base64_1 = require_dist_cjs30(); + var util_utf8_1 = require_dist_cjs10(); var endpointResolver_1 = require_endpointResolver2(); var getRuntimeConfig = (config) => ({ apiVersion: "2011-06-15", @@ -17628,19 +16530,19 @@ var require_runtimeConfig2 = __commonJS({ var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package2()); var defaultStsRoleAssumers_1 = require_defaultStsRoleAssumers(); - var credential_provider_node_1 = require_dist_cjs52(); - var util_user_agent_node_1 = require_dist_cjs42(); - var config_resolver_1 = require_dist_cjs21(); - var hash_node_1 = require_dist_cjs43(); - var middleware_retry_1 = require_dist_cjs37(); - var node_config_provider_1 = require_dist_cjs24(); - var node_http_handler_1 = require_dist_cjs34(); - var util_body_length_node_1 = require_dist_cjs44(); - var util_retry_1 = require_dist_cjs30(); + var credential_provider_node_1 = require_dist_cjs50(); + var util_user_agent_node_1 = require_dist_cjs40(); + var config_resolver_1 = require_dist_cjs19(); + var hash_node_1 = require_dist_cjs41(); + var middleware_retry_1 = require_dist_cjs35(); + var node_config_provider_1 = require_dist_cjs22(); + var node_http_handler_1 = require_dist_cjs32(); + var util_body_length_node_1 = require_dist_cjs42(); + var util_retry_1 = require_dist_cjs28(); var runtimeConfig_shared_1 = require_runtimeConfig_shared2(); - var smithy_client_1 = require_dist_cjs36(); - var util_defaults_mode_node_1 = require_dist_cjs45(); - var smithy_client_2 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs43(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -17677,9 +16579,9 @@ var require_runtimeExtensions2 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs46(); + var region_config_resolver_1 = require_dist_cjs44(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var asPartial = (t) => t; var resolveRuntimeExtensions = (runtimeConfig, extensions) => { const extensionConfiguration = { @@ -17708,13 +16610,13 @@ var require_STSClient = __commonJS({ var middleware_host_header_1 = require_dist_cjs3(); var middleware_logger_1 = require_dist_cjs4(); var middleware_recursion_detection_1 = require_dist_cjs5(); - var middleware_sdk_sts_1 = require_dist_cjs38(); - var middleware_user_agent_1 = require_dist_cjs19(); - var config_resolver_1 = require_dist_cjs21(); - var middleware_content_length_1 = require_dist_cjs22(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_retry_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_sdk_sts_1 = require_dist_cjs36(); + var middleware_user_agent_1 = require_dist_cjs17(); + var config_resolver_1 = require_dist_cjs19(); + var middleware_content_length_1 = require_dist_cjs20(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_retry_1 = require_dist_cjs35(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { return smithy_client_1.Client; } }); @@ -17755,9 +16657,9 @@ var require_AssumeRoleWithSAMLCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AssumeRoleWithSAMLCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -17816,10 +16718,10 @@ var require_DecodeAuthorizationMessageCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DecodeAuthorizationMessageCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -17878,10 +16780,10 @@ var require_GetAccessKeyInfoCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetAccessKeyInfoCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -17940,10 +16842,10 @@ var require_GetCallerIdentityCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetCallerIdentityCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -18002,10 +16904,10 @@ var require_GetFederationTokenCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetFederationTokenCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -18065,10 +16967,10 @@ var require_GetSessionTokenCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetSessionTokenCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs16(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -18128,7 +17030,7 @@ var require_STS = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.STS = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var AssumeRoleCommand_1 = require_AssumeRoleCommand(); var AssumeRoleWithSAMLCommand_1 = require_AssumeRoleWithSAMLCommand(); var AssumeRoleWithWebIdentityCommand_1 = require_AssumeRoleWithWebIdentityCommand(); @@ -18217,7 +17119,7 @@ var require_defaultRoleAssumers = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js -var require_dist_cjs53 = __commonJS({ +var require_dist_cjs51 = __commonJS({ "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -18273,7 +17175,7 @@ var require_endpointResolver3 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs18(); + var util_endpoints_1 = require_dist_cjs16(); var ruleset_1 = require_ruleset3(); var defaultEndpointResolver = (endpointParams, context = {}) => { return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { @@ -18291,10 +17193,10 @@ var require_runtimeConfig_shared3 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRuntimeConfig = void 0; - var smithy_client_1 = require_dist_cjs36(); - var url_parser_1 = require_dist_cjs26(); - var util_base64_1 = require_dist_cjs32(); - var util_utf8_1 = require_dist_cjs13(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs24(); + var util_base64_1 = require_dist_cjs30(); + var util_utf8_1 = require_dist_cjs10(); var endpointResolver_1 = require_endpointResolver3(); var getRuntimeConfig = (config) => ({ apiVersion: "2016-11-23", @@ -18321,20 +17223,20 @@ var require_runtimeConfig3 = __commonJS({ exports2.getRuntimeConfig = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package()); - var client_sts_1 = require_dist_cjs53(); - var credential_provider_node_1 = require_dist_cjs52(); - var util_user_agent_node_1 = require_dist_cjs42(); - var config_resolver_1 = require_dist_cjs21(); - var hash_node_1 = require_dist_cjs43(); - var middleware_retry_1 = require_dist_cjs37(); - var node_config_provider_1 = require_dist_cjs24(); - var node_http_handler_1 = require_dist_cjs34(); - var util_body_length_node_1 = require_dist_cjs44(); - var util_retry_1 = require_dist_cjs30(); + var client_sts_1 = require_dist_cjs51(); + var credential_provider_node_1 = require_dist_cjs50(); + var util_user_agent_node_1 = require_dist_cjs40(); + var config_resolver_1 = require_dist_cjs19(); + var hash_node_1 = require_dist_cjs41(); + var middleware_retry_1 = require_dist_cjs35(); + var node_config_provider_1 = require_dist_cjs22(); + var node_http_handler_1 = require_dist_cjs32(); + var util_body_length_node_1 = require_dist_cjs42(); + var util_retry_1 = require_dist_cjs28(); var runtimeConfig_shared_1 = require_runtimeConfig_shared3(); - var smithy_client_1 = require_dist_cjs36(); - var util_defaults_mode_node_1 = require_dist_cjs45(); - var smithy_client_2 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs43(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -18371,9 +17273,9 @@ var require_runtimeExtensions3 = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs46(); + var region_config_resolver_1 = require_dist_cjs44(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var asPartial = (t) => t; var resolveRuntimeExtensions = (runtimeConfig, extensions) => { const extensionConfiguration = { @@ -18402,13 +17304,13 @@ var require_SFNClient = __commonJS({ var middleware_host_header_1 = require_dist_cjs3(); var middleware_logger_1 = require_dist_cjs4(); var middleware_recursion_detection_1 = require_dist_cjs5(); - var middleware_signing_1 = require_dist_cjs16(); - var middleware_user_agent_1 = require_dist_cjs19(); - var config_resolver_1 = require_dist_cjs21(); - var middleware_content_length_1 = require_dist_cjs22(); - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_retry_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_signing_1 = require_dist_cjs14(); + var middleware_user_agent_1 = require_dist_cjs17(); + var config_resolver_1 = require_dist_cjs19(); + var middleware_content_length_1 = require_dist_cjs20(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_retry_1 = require_dist_cjs35(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { return smithy_client_1.Client; } }); @@ -18450,7 +17352,7 @@ var require_SFNServiceException = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SFNServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { return smithy_client_1.ServiceException; } }); @@ -18471,7 +17373,7 @@ var require_models_03 = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExecutionStartedEventDetailsFilterSensitiveLog = exports2.ExecutionFailedEventDetailsFilterSensitiveLog = exports2.ExecutionAbortedEventDetailsFilterSensitiveLog = exports2.GetActivityTaskOutputFilterSensitiveLog = exports2.DescribeStateMachineForExecutionOutputFilterSensitiveLog = exports2.DescribeStateMachineAliasOutputFilterSensitiveLog = exports2.DescribeStateMachineOutputFilterSensitiveLog = exports2.DescribeExecutionOutputFilterSensitiveLog = exports2.CreateStateMachineAliasInputFilterSensitiveLog = exports2.CreateStateMachineInputFilterSensitiveLog = exports2.ActivityTimedOutEventDetailsFilterSensitiveLog = exports2.ActivitySucceededEventDetailsFilterSensitiveLog = exports2.ActivityScheduleFailedEventDetailsFilterSensitiveLog = exports2.ActivityScheduledEventDetailsFilterSensitiveLog = exports2.ActivityFailedEventDetailsFilterSensitiveLog = exports2.MissingRequiredParameter = exports2.SyncExecutionStatus = exports2.InvalidExecutionInput = exports2.ExecutionLimitExceeded = exports2.ExecutionAlreadyExists = exports2.InvalidOutput = exports2.TaskTimedOut = exports2.TaskDoesNotExist = exports2.InvalidToken = exports2.HistoryEventType = exports2.StateMachineDoesNotExist = exports2.StateMachineStatus = exports2.MapRunStatus = exports2.ExecutionDoesNotExist = exports2.ExecutionStatus = exports2.ServiceQuotaExceededException = exports2.ResourceNotFound = exports2.ValidationException = exports2.ValidationExceptionReason = exports2.StateMachineTypeNotSupported = exports2.StateMachineLimitExceeded = exports2.StateMachineDeleting = exports2.StateMachineAlreadyExists = exports2.InvalidTracingConfiguration = exports2.InvalidLoggingConfiguration = exports2.InvalidDefinition = exports2.InvalidArn = exports2.StateMachineType = exports2.LogLevel = exports2.ConflictException = exports2.TooManyTags = exports2.InvalidName = exports2.ActivityWorkerLimitExceeded = exports2.ActivityLimitExceeded = exports2.ActivityDoesNotExist = void 0; exports2.UpdateStateMachineAliasInputFilterSensitiveLog = exports2.UpdateStateMachineInputFilterSensitiveLog = exports2.StopExecutionInputFilterSensitiveLog = exports2.StartSyncExecutionOutputFilterSensitiveLog = exports2.StartSyncExecutionInputFilterSensitiveLog = exports2.StartExecutionInputFilterSensitiveLog = exports2.SendTaskSuccessInputFilterSensitiveLog = exports2.SendTaskFailureInputFilterSensitiveLog = exports2.PublishStateMachineVersionInputFilterSensitiveLog = exports2.GetExecutionHistoryOutputFilterSensitiveLog = exports2.HistoryEventFilterSensitiveLog = exports2.TaskTimedOutEventDetailsFilterSensitiveLog = exports2.TaskSucceededEventDetailsFilterSensitiveLog = exports2.TaskSubmittedEventDetailsFilterSensitiveLog = exports2.TaskSubmitFailedEventDetailsFilterSensitiveLog = exports2.TaskStartFailedEventDetailsFilterSensitiveLog = exports2.TaskScheduledEventDetailsFilterSensitiveLog = exports2.TaskFailedEventDetailsFilterSensitiveLog = exports2.StateExitedEventDetailsFilterSensitiveLog = exports2.StateEnteredEventDetailsFilterSensitiveLog = exports2.MapRunFailedEventDetailsFilterSensitiveLog = exports2.LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = exports2.LambdaFunctionSucceededEventDetailsFilterSensitiveLog = exports2.LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = exports2.LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = exports2.LambdaFunctionScheduledEventDetailsFilterSensitiveLog = exports2.LambdaFunctionFailedEventDetailsFilterSensitiveLog = exports2.ExecutionTimedOutEventDetailsFilterSensitiveLog = exports2.ExecutionSucceededEventDetailsFilterSensitiveLog = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var SFNServiceException_1 = require_SFNServiceException(); var ActivityDoesNotExist = class _ActivityDoesNotExist extends SFNServiceException_1.SFNServiceException { constructor(opts) { @@ -19260,7 +18162,7 @@ var require_Aws_json1_0 = __commonJS({ exports2.de_ListActivitiesCommand = exports2.de_GetExecutionHistoryCommand = exports2.de_GetActivityTaskCommand = exports2.de_DescribeStateMachineForExecutionCommand = exports2.de_DescribeStateMachineAliasCommand = exports2.de_DescribeStateMachineCommand = exports2.de_DescribeMapRunCommand = exports2.de_DescribeExecutionCommand = exports2.de_DescribeActivityCommand = exports2.de_DeleteStateMachineVersionCommand = exports2.de_DeleteStateMachineAliasCommand = exports2.de_DeleteStateMachineCommand = exports2.de_DeleteActivityCommand = exports2.de_CreateStateMachineAliasCommand = exports2.de_CreateStateMachineCommand = exports2.de_CreateActivityCommand = exports2.se_UpdateStateMachineAliasCommand = exports2.se_UpdateStateMachineCommand = exports2.se_UpdateMapRunCommand = exports2.se_UntagResourceCommand = exports2.se_TagResourceCommand = exports2.se_StopExecutionCommand = exports2.se_StartSyncExecutionCommand = exports2.se_StartExecutionCommand = exports2.se_SendTaskSuccessCommand = exports2.se_SendTaskHeartbeatCommand = exports2.se_SendTaskFailureCommand = exports2.se_PublishStateMachineVersionCommand = exports2.se_ListTagsForResourceCommand = exports2.se_ListStateMachineVersionsCommand = exports2.se_ListStateMachinesCommand = exports2.se_ListStateMachineAliasesCommand = exports2.se_ListMapRunsCommand = exports2.se_ListExecutionsCommand = exports2.se_ListActivitiesCommand = exports2.se_GetExecutionHistoryCommand = exports2.se_GetActivityTaskCommand = exports2.se_DescribeStateMachineForExecutionCommand = exports2.se_DescribeStateMachineAliasCommand = exports2.se_DescribeStateMachineCommand = exports2.se_DescribeMapRunCommand = exports2.se_DescribeExecutionCommand = exports2.se_DescribeActivityCommand = exports2.se_DeleteStateMachineVersionCommand = exports2.se_DeleteStateMachineAliasCommand = exports2.se_DeleteStateMachineCommand = exports2.se_DeleteActivityCommand = exports2.se_CreateStateMachineAliasCommand = exports2.se_CreateStateMachineCommand = exports2.se_CreateActivityCommand = void 0; exports2.de_UpdateStateMachineAliasCommand = exports2.de_UpdateStateMachineCommand = exports2.de_UpdateMapRunCommand = exports2.de_UntagResourceCommand = exports2.de_TagResourceCommand = exports2.de_StopExecutionCommand = exports2.de_StartSyncExecutionCommand = exports2.de_StartExecutionCommand = exports2.de_SendTaskSuccessCommand = exports2.de_SendTaskHeartbeatCommand = exports2.de_SendTaskFailureCommand = exports2.de_PublishStateMachineVersionCommand = exports2.de_ListTagsForResourceCommand = exports2.de_ListStateMachineVersionsCommand = exports2.de_ListStateMachinesCommand = exports2.de_ListStateMachineAliasesCommand = exports2.de_ListMapRunsCommand = exports2.de_ListExecutionsCommand = void 0; var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var models_0_1 = require_models_03(); var SFNServiceException_1 = require_SFNServiceException(); var se_CreateActivityCommand = async (input, context) => { @@ -21564,9 +20466,9 @@ var require_CreateActivityCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CreateActivityCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21623,9 +20525,9 @@ var require_CreateStateMachineAliasCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CreateStateMachineAliasCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21683,9 +20585,9 @@ var require_CreateStateMachineCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CreateStateMachineCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21743,9 +20645,9 @@ var require_DeleteActivityCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DeleteActivityCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21802,9 +20704,9 @@ var require_DeleteStateMachineAliasCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DeleteStateMachineAliasCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21861,9 +20763,9 @@ var require_DeleteStateMachineCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DeleteStateMachineCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21920,9 +20822,9 @@ var require_DeleteStateMachineVersionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DeleteStateMachineVersionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -21979,9 +20881,9 @@ var require_DescribeActivityCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeActivityCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22038,9 +20940,9 @@ var require_DescribeExecutionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeExecutionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22098,9 +21000,9 @@ var require_DescribeMapRunCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeMapRunCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22157,9 +21059,9 @@ var require_DescribeStateMachineAliasCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeStateMachineAliasCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22217,9 +21119,9 @@ var require_DescribeStateMachineCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeStateMachineCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22277,9 +21179,9 @@ var require_DescribeStateMachineForExecutionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DescribeStateMachineForExecutionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22337,9 +21239,9 @@ var require_GetActivityTaskCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetActivityTaskCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22397,9 +21299,9 @@ var require_GetExecutionHistoryCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetExecutionHistoryCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22457,9 +21359,9 @@ var require_ListActivitiesCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListActivitiesCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22516,9 +21418,9 @@ var require_ListExecutionsCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListExecutionsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22575,9 +21477,9 @@ var require_ListMapRunsCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListMapRunsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22634,9 +21536,9 @@ var require_ListStateMachineAliasesCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListStateMachineAliasesCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22693,9 +21595,9 @@ var require_ListStateMachinesCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListStateMachinesCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22752,9 +21654,9 @@ var require_ListStateMachineVersionsCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListStateMachineVersionsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22811,9 +21713,9 @@ var require_ListTagsForResourceCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ListTagsForResourceCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22870,9 +21772,9 @@ var require_PublishStateMachineVersionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PublishStateMachineVersionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22930,9 +21832,9 @@ var require_SendTaskFailureCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SendTaskFailureCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -22990,9 +21892,9 @@ var require_SendTaskHeartbeatCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SendTaskHeartbeatCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23049,9 +21951,9 @@ var require_SendTaskSuccessCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SendTaskSuccessCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23109,9 +22011,9 @@ var require_StartExecutionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StartExecutionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23169,9 +22071,9 @@ var require_StartSyncExecutionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StartSyncExecutionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23229,9 +22131,9 @@ var require_StopExecutionCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StopExecutionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23289,9 +22191,9 @@ var require_TagResourceCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TagResourceCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23348,9 +22250,9 @@ var require_UntagResourceCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UntagResourceCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23407,9 +22309,9 @@ var require_UpdateMapRunCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateMapRunCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23466,9 +22368,9 @@ var require_UpdateStateMachineAliasCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateStateMachineAliasCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23526,9 +22428,9 @@ var require_UpdateStateMachineCommand = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateStateMachineCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs28(); - var middleware_serde_1 = require_dist_cjs27(); - var smithy_client_1 = require_dist_cjs36(); + var middleware_endpoint_1 = require_dist_cjs26(); + var middleware_serde_1 = require_dist_cjs25(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { return smithy_client_1.Command; } }); @@ -23586,7 +22488,7 @@ var require_SFN = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SFN = void 0; - var smithy_client_1 = require_dist_cjs36(); + var smithy_client_1 = require_dist_cjs34(); var CreateActivityCommand_1 = require_CreateActivityCommand(); var CreateStateMachineAliasCommand_1 = require_CreateStateMachineAliasCommand(); var CreateStateMachineCommand_1 = require_CreateStateMachineCommand(); @@ -23912,7 +22814,7 @@ var require_models3 = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js -var require_dist_cjs54 = __commonJS({ +var require_dist_cjs52 = __commonJS({ "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -30660,10 +29562,10 @@ var require_lib4 = __commonJS({ } }); -// ../sdk-v2-to-v3-adapter/lib/parameter-types.ts +// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts var zlib, typeCoercionStateMachine; var init_parameter_types = __esm({ - "../sdk-v2-to-v3-adapter/lib/parameter-types.ts"() { + "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() { "use strict"; zlib = __toESM(require("zlib")); typeCoercionStateMachine = () => { @@ -30675,7 +29577,7 @@ var init_parameter_types = __esm({ } }); -// ../sdk-v2-to-v3-adapter/lib/coerce-api-parameters.ts +// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts var coerce_api_parameters_exports = {}; __export(coerce_api_parameters_exports, { Coercer: () => Coercer, @@ -30716,7 +29618,7 @@ function coerceValueToDate(x) { } var Coercer; var init_coerce_api_parameters = __esm({ - "../sdk-v2-to-v3-adapter/lib/coerce-api-parameters.ts"() { + "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() { "use strict"; init_parameter_types(); Coercer = class { @@ -30770,7 +29672,7 @@ var init_coerce_api_parameters = __esm({ } }); -// ../sdk-v2-to-v3-adapter/lib/find-client-constructor.ts +// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts var find_client_constructor_exports = {}; __export(find_client_constructor_exports, { findV3ClientConstructor: () => findV3ClientConstructor @@ -30784,14 +29686,14 @@ function findV3ClientConstructor(pkg) { return ServiceClient; } var init_find_client_constructor = __esm({ - "../sdk-v2-to-v3-adapter/lib/find-client-constructor.ts"() { + "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() { "use strict"; } }); -// ../sdk-v2-to-v3-adapter/lib/sdk-v2-to-v3.json +// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json var require_sdk_v2_to_v3 = __commonJS({ - "../sdk-v2-to-v3-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) { + "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) { module2.exports = { acmpca: "acm-pca", apigateway: "api-gateway", @@ -30940,9 +29842,9 @@ var require_sdk_v2_to_v3 = __commonJS({ } }); -// ../sdk-v2-to-v3-adapter/lib/sdk-v3-metadata.json +// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json var require_sdk_v3_metadata = __commonJS({ - "../sdk-v2-to-v3-adapter/lib/sdk-v3-metadata.json"(exports2, module2) { + "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) { module2.exports = { accessanalyzer: { iamPrefix: "access-analyzer" @@ -32087,7 +30989,7 @@ var require_sdk_v3_metadata = __commonJS({ } }); -// ../sdk-v2-to-v3-adapter/lib/sdk-info.ts +// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts var sdk_info_exports = {}; __export(sdk_info_exports, { normalizeActionName: () => normalizeActionName, @@ -32115,12 +31017,12 @@ function v3Metadata() { return require_sdk_v3_metadata(); } var init_sdk_info = __esm({ - "../sdk-v2-to-v3-adapter/lib/sdk-info.ts"() { + "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() { "use strict"; } }); -// ../sdk-v2-to-v3-adapter/lib/api-call.ts +// ../aws-custom-resource-sdk-adapter/lib/api-call.ts var api_call_exports = {}; __export(api_call_exports, { ApiCall: () => ApiCall, @@ -32168,7 +31070,7 @@ async function coerceSdkv3Response(value) { } var ApiCall, decoder; var init_api_call = __esm({ - "../sdk-v2-to-v3-adapter/lib/api-call.ts"() { + "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() { "use strict"; init_coerce_api_parameters(); init_find_client_constructor(); @@ -32247,11 +31149,11 @@ var init_api_call = __esm({ } }); -// ../sdk-v2-to-v3-adapter/lib/index.js +// ../aws-custom-resource-sdk-adapter/lib/index.js var require_lib5 = __commonJS({ - "../sdk-v2-to-v3-adapter/lib/index.js"(exports2) { + "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) { "use strict"; - var __createBinding3 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); @@ -32266,10 +31168,10 @@ var require_lib5 = __commonJS({ k2 = k; o[k2] = m[k]; }); - var __exportStar3 = exports2 && exports2.__exportStar || function(m, exports3) { + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding3(exports3, m, p); + __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0; @@ -32288,7 +31190,7 @@ var require_lib5 = __commonJS({ Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() { return sdk_info_1.normalizeActionName; } }); - __exportStar3((init_api_call(), __toCommonJS(api_call_exports)), exports2); + __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2); } }); @@ -32307,7 +31209,7 @@ var import_helpers_internal = __toESM(require_helpers_internal()); // lib/assertions/providers/lambda-handler/base.ts var https = __toESM(require("https")); var url = __toESM(require("url")); -var import_client_sfn = __toESM(require_dist_cjs54()); +var import_client_sfn = __toESM(require_dist_cjs52()); var CustomResourceHandler = class { constructor(event, context) { this.event = event; @@ -32583,7 +31485,7 @@ var HttpHandler = class extends CustomResourceHandler { }; // lib/assertions/providers/lambda-handler/sdk.ts -var import_sdk_v2_to_v3_adapter = __toESM(require_lib5()); +var import_aws_custom_resource_sdk_adapter = __toESM(require_lib5()); // lib/assertions/providers/lambda-handler/utils.ts function deepParseJson(x) { @@ -32632,7 +31534,7 @@ function decodeValue(value) { // lib/assertions/providers/lambda-handler/sdk.ts var AwsApiCallHandler = class extends CustomResourceHandler { async processEvent(request2) { - const apiCall = new import_sdk_v2_to_v3_adapter.ApiCall(request2.service, request2.api); + const apiCall = new import_aws_custom_resource_sdk_adapter.ApiCall(request2.service, request2.api); const parameters = request2.parameters ? decodeParameters(request2.parameters) : {}; console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`); const response = await apiCall.invoke({ parameters }); @@ -32640,7 +31542,7 @@ var AwsApiCallHandler = class extends CustomResourceHandler { delete response.$metadata; let resp; if (request2.outputPaths || request2.flattenResponse === "true") { - const flattened = (0, import_sdk_v2_to_v3_adapter.flatten)(deepParseJson({ apiCallResponse: response })); + const flattened = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: response })); resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened; } else { resp = { apiCallResponse: response }; @@ -32803,21 +31705,3 @@ var standardContext = { isComplete, onTimeout }); -/*! Bundled license information: - -tslib/tslib.es6.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** *) -*/ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928/index.js deleted file mode 100644 index 72542082a9ce1..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928/index.js +++ /dev/null @@ -1,37622 +0,0 @@ -"use strict"; -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __esm = (fn, res) => function __init() { - return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; -}; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; -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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// node_modules/tslib/tslib.es6.mjs -var tslib_es6_exports = {}; -__export(tslib_es6_exports, { - __addDisposableResource: () => __addDisposableResource, - __assign: () => __assign, - __asyncDelegator: () => __asyncDelegator, - __asyncGenerator: () => __asyncGenerator, - __asyncValues: () => __asyncValues, - __await: () => __await, - __awaiter: () => __awaiter, - __classPrivateFieldGet: () => __classPrivateFieldGet, - __classPrivateFieldIn: () => __classPrivateFieldIn, - __classPrivateFieldSet: () => __classPrivateFieldSet, - __createBinding: () => __createBinding, - __decorate: () => __decorate, - __disposeResources: () => __disposeResources, - __esDecorate: () => __esDecorate, - __exportStar: () => __exportStar, - __extends: () => __extends, - __generator: () => __generator, - __importDefault: () => __importDefault, - __importStar: () => __importStar, - __makeTemplateObject: () => __makeTemplateObject, - __metadata: () => __metadata, - __param: () => __param, - __propKey: () => __propKey, - __read: () => __read, - __rest: () => __rest, - __runInitializers: () => __runInitializers, - __setFunctionName: () => __setFunctionName, - __spread: () => __spread, - __spreadArray: () => __spreadArray, - __spreadArrays: () => __spreadArrays, - __values: () => __values, - default: () => tslib_es6_default -}); -function __extends(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} -function __rest(s, e) { - var t = {}; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} -function __decorate(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") - r = Reflect.decorate(decorators, target, key, desc); - else - for (var i = decorators.length - 1; i >= 0; i--) - if (d = decorators[i]) - r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} -function __param(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; -} -function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { - function accept(f) { - if (f !== void 0 && typeof f !== "function") - throw new TypeError("Function expected"); - return f; - } - var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; - var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; - var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); - var _, done = false; - for (var i = decorators.length - 1; i >= 0; i--) { - var context = {}; - for (var p in contextIn) - context[p] = p === "access" ? {} : contextIn[p]; - for (var p in contextIn.access) - context.access[p] = contextIn.access[p]; - context.addInitializer = function(f) { - if (done) - throw new TypeError("Cannot add initializers after decoration has completed"); - extraInitializers.push(accept(f || null)); - }; - var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); - if (kind === "accessor") { - if (result === void 0) - continue; - if (result === null || typeof result !== "object") - throw new TypeError("Object expected"); - if (_ = accept(result.get)) - descriptor.get = _; - if (_ = accept(result.set)) - descriptor.set = _; - if (_ = accept(result.init)) - initializers.unshift(_); - } else if (_ = accept(result)) { - if (kind === "field") - initializers.unshift(_); - else - descriptor[key] = _; - } - } - if (target) - Object.defineProperty(target, contextIn.name, descriptor); - done = true; -} -function __runInitializers(thisArg, initializers, value) { - var useValue = arguments.length > 2; - for (var i = 0; i < initializers.length; i++) { - value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); - } - return useValue ? value : void 0; -} -function __propKey(x) { - return typeof x === "symbol" ? x : "".concat(x); -} -function __setFunctionName(f, name, prefix) { - if (typeof name === "symbol") - name = name.description ? "[".concat(name.description, "]") : ""; - return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); -} -function __metadata(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") - return Reflect.metadata(metadataKey, metadataValue); -} -function __awaiter(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} -function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; - } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; - } -} -function __exportStar(m, o) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) - __createBinding(o, m, p); -} -function __values(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); -} -function __read(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; -} -function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; -} -function __spreadArrays() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) - s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; -} -function __spreadArray(to, from, pack) { - if (pack || arguments.length === 2) - for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) - ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); -} -function __await(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); -} -function __asyncGenerator(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; - } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); - } - } - function step(r) { - r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); - } - function fulfill(value) { - resume("next", value); - } - function reject(value) { - resume("throw", value); - } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); - } -} -function __asyncDelegator(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function(e) { - throw e; - }), verb("return"), i[Symbol.iterator] = function() { - return this; - }, i; - function verb(n, f) { - i[n] = o[n] ? function(v) { - return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; - } : f; - } -} -function __asyncValues(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); - }); - }; - } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); - } -} -function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { - Object.defineProperty(cooked, "raw", { value: raw }); - } else { - cooked.raw = raw; - } - return cooked; -} -function __importStar(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; -} -function __importDefault(mod) { - return mod && mod.__esModule ? mod : { default: mod }; -} -function __classPrivateFieldGet(receiver, state, kind, f) { - if (kind === "a" && !f) - throw new TypeError("Private accessor was defined without a getter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) - throw new TypeError("Cannot read private member from an object whose class did not declare it"); - return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); -} -function __classPrivateFieldSet(receiver, state, value, kind, f) { - if (kind === "m") - throw new TypeError("Private method is not writable"); - if (kind === "a" && !f) - throw new TypeError("Private accessor was defined without a setter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) - throw new TypeError("Cannot write private member to an object whose class did not declare it"); - return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; -} -function __classPrivateFieldIn(state, receiver) { - if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") - throw new TypeError("Cannot use 'in' operator on non-object"); - return typeof state === "function" ? receiver === state : state.has(receiver); -} -function __addDisposableResource(env, value, async) { - if (value !== null && value !== void 0) { - if (typeof value !== "object" && typeof value !== "function") - throw new TypeError("Object expected."); - var dispose; - if (async) { - if (!Symbol.asyncDispose) - throw new TypeError("Symbol.asyncDispose is not defined."); - dispose = value[Symbol.asyncDispose]; - } - if (dispose === void 0) { - if (!Symbol.dispose) - throw new TypeError("Symbol.dispose is not defined."); - dispose = value[Symbol.dispose]; - } - if (typeof dispose !== "function") - throw new TypeError("Object not disposable."); - env.stack.push({ value, dispose, async }); - } else if (async) { - env.stack.push({ async: true }); - } - return value; -} -function __disposeResources(env) { - function fail(e) { - env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; - env.hasError = true; - } - function next() { - while (env.stack.length) { - var rec = env.stack.pop(); - try { - var result = rec.dispose && rec.dispose.call(rec.value); - if (rec.async) - return Promise.resolve(result).then(next, function(e) { - fail(e); - return next(); - }); - } catch (e) { - fail(e); - } - } - if (env.hasError) - throw env.error; - } - return next(); -} -var extendStatics, __assign, __createBinding, __setModuleDefault, _SuppressedError, tslib_es6_default; -var init_tslib_es6 = __esm({ - "node_modules/tslib/tslib.es6.mjs"() { - extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - __assign = function() { - __assign = Object.assign || function __assign4(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - }; - __createBinding = Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }; - __setModuleDefault = Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }; - _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) { - var e = new Error(message); - return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - }; - tslib_es6_default = { - __extends, - __assign, - __rest, - __decorate, - __param, - __metadata, - __awaiter, - __generator, - __createBinding, - __exportStar, - __values, - __read, - __spread, - __spreadArrays, - __spreadArray, - __await, - __asyncGenerator, - __asyncDelegator, - __asyncValues, - __makeTemplateObject, - __importStar, - __importDefault, - __classPrivateFieldGet, - __classPrivateFieldSet, - __classPrivateFieldIn, - __addDisposableResource, - __disposeResources - }; - } -}); - -// node_modules/@smithy/types/dist-cjs/index.js -var require_dist_cjs = __commonJS({ - "node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - AlgorithmId: () => AlgorithmId, - EndpointURLScheme: () => EndpointURLScheme, - FieldPosition: () => FieldPosition, - HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation, - HttpAuthLocation: () => HttpAuthLocation, - IniSectionType: () => IniSectionType, - RequestHandlerProtocol: () => RequestHandlerProtocol, - SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY, - getDefaultClientConfiguration: () => getDefaultClientConfiguration, - resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig - }); - module2.exports = __toCommonJS2(src_exports); - var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => { - HttpAuthLocation2["HEADER"] = "header"; - HttpAuthLocation2["QUERY"] = "query"; - return HttpAuthLocation2; - })(HttpAuthLocation || {}); - var HttpApiKeyAuthLocation = /* @__PURE__ */ ((HttpApiKeyAuthLocation2) => { - HttpApiKeyAuthLocation2["HEADER"] = "header"; - HttpApiKeyAuthLocation2["QUERY"] = "query"; - return HttpApiKeyAuthLocation2; - })(HttpApiKeyAuthLocation || {}); - var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => { - EndpointURLScheme2["HTTP"] = "http"; - EndpointURLScheme2["HTTPS"] = "https"; - return EndpointURLScheme2; - })(EndpointURLScheme || {}); - var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => { - AlgorithmId2["MD5"] = "md5"; - AlgorithmId2["CRC32"] = "crc32"; - AlgorithmId2["CRC32C"] = "crc32c"; - AlgorithmId2["SHA1"] = "sha1"; - AlgorithmId2["SHA256"] = "sha256"; - return AlgorithmId2; - })(AlgorithmId || {}); - var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - const checksumAlgorithms = []; - if (runtimeConfig.sha256 !== void 0) { - checksumAlgorithms.push({ - algorithmId: () => "sha256", - checksumConstructor: () => runtimeConfig.sha256 - }); - } - if (runtimeConfig.md5 != void 0) { - checksumAlgorithms.push({ - algorithmId: () => "md5", - checksumConstructor: () => runtimeConfig.md5 - }); - } - return { - _checksumAlgorithms: checksumAlgorithms, - addChecksumAlgorithm(algo) { - this._checksumAlgorithms.push(algo); - }, - checksumAlgorithms() { - return this._checksumAlgorithms; - } - }; - }, "getChecksumConfiguration"); - var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { - const runtimeConfig = {}; - clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => { - runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor(); - }); - return runtimeConfig; - }, "resolveChecksumRuntimeConfig"); - var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return { - ...getChecksumConfiguration(runtimeConfig) - }; - }, "getDefaultClientConfiguration"); - var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return { - ...resolveChecksumRuntimeConfig(config) - }; - }, "resolveDefaultRuntimeConfig"); - var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => { - FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER"; - FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER"; - return FieldPosition2; - })(FieldPosition || {}); - var SMITHY_CONTEXT_KEY = "__smithy_context"; - var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => { - IniSectionType2["PROFILE"] = "profile"; - IniSectionType2["SSO_SESSION"] = "sso-session"; - IniSectionType2["SERVICES"] = "services"; - return IniSectionType2; - })(IniSectionType || {}); - var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => { - RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9"; - RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0"; - RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0"; - return RequestHandlerProtocol2; - })(RequestHandlerProtocol || {}); - } -}); - -// node_modules/@smithy/protocol-http/dist-cjs/index.js -var require_dist_cjs2 = __commonJS({ - "node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - Field: () => Field, - Fields: () => Fields, - HttpRequest: () => HttpRequest, - HttpResponse: () => HttpResponse, - getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration, - isValidHostname: () => isValidHostname, - resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig - }); - module2.exports = __toCommonJS2(src_exports); - var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - let httpHandler = runtimeConfig.httpHandler; - return { - setHttpHandler(handler2) { - httpHandler = handler2; - }, - httpHandler() { - return httpHandler; - }, - updateHttpClientConfig(key, value) { - httpHandler.updateHttpClientConfig(key, value); - }, - httpHandlerConfigs() { - return httpHandler.httpHandlerConfigs(); - } - }; - }, "getHttpHandlerExtensionConfiguration"); - var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name((httpHandlerExtensionConfiguration) => { - return { - httpHandler: httpHandlerExtensionConfiguration.httpHandler() - }; - }, "resolveHttpHandlerRuntimeConfig"); - var import_types = require_dist_cjs(); - var _Field = class _Field { - constructor({ name, kind = import_types.FieldPosition.HEADER, values = [] }) { - this.name = name; - this.kind = kind; - this.values = values; - } - /** - * Appends a value to the field. - * - * @param value The value to append. - */ - add(value) { - this.values.push(value); - } - /** - * Overwrite existing field values. - * - * @param values The new field values. - */ - set(values) { - this.values = values; - } - /** - * Remove all matching entries from list. - * - * @param value Value to remove. - */ - remove(value) { - this.values = this.values.filter((v) => v !== value); - } - /** - * Get comma-delimited string. - * - * @returns String representation of {@link Field}. - */ - toString() { - return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", "); - } - /** - * Get string values as a list - * - * @returns Values in {@link Field} as a list. - */ - get() { - return this.values; - } - }; - __name(_Field, "Field"); - var Field = _Field; - var _Fields = class _Fields { - constructor({ fields = [], encoding = "utf-8" }) { - this.entries = {}; - fields.forEach(this.setField.bind(this)); - this.encoding = encoding; - } - /** - * Set entry for a {@link Field} name. The `name` - * attribute will be used to key the collection. - * - * @param field The {@link Field} to set. - */ - setField(field) { - this.entries[field.name.toLowerCase()] = field; - } - /** - * Retrieve {@link Field} entry by name. - * - * @param name The name of the {@link Field} entry - * to retrieve - * @returns The {@link Field} if it exists. - */ - getField(name) { - return this.entries[name.toLowerCase()]; - } - /** - * Delete entry from collection. - * - * @param name Name of the entry to delete. - */ - removeField(name) { - delete this.entries[name.toLowerCase()]; - } - /** - * Helper function for retrieving specific types of fields. - * Used to grab all headers or all trailers. - * - * @param kind {@link FieldPosition} of entries to retrieve. - * @returns The {@link Field} entries with the specified - * {@link FieldPosition}. - */ - getByType(kind) { - return Object.values(this.entries).filter((field) => field.kind === kind); - } - }; - __name(_Fields, "Fields"); - var Fields = _Fields; - var _HttpRequest = class _HttpRequest2 { - constructor(options) { - this.method = options.method || "GET"; - this.hostname = options.hostname || "localhost"; - this.port = options.port; - this.query = options.query || {}; - this.headers = options.headers || {}; - this.body = options.body; - this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:"; - this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/"; - this.username = options.username; - this.password = options.password; - this.fragment = options.fragment; - } - static isInstance(request) { - if (!request) - return false; - const req = request; - return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object"; - } - clone() { - const cloned = new _HttpRequest2({ - ...this, - headers: { ...this.headers } - }); - if (cloned.query) - cloned.query = cloneQuery(cloned.query); - return cloned; - } - }; - __name(_HttpRequest, "HttpRequest"); - var HttpRequest = _HttpRequest; - function cloneQuery(query) { - return Object.keys(query).reduce((carry, paramName) => { - const param = query[paramName]; - return { - ...carry, - [paramName]: Array.isArray(param) ? [...param] : param - }; - }, {}); - } - __name(cloneQuery, "cloneQuery"); - var _HttpResponse = class _HttpResponse { - constructor(options) { - this.statusCode = options.statusCode; - this.reason = options.reason; - this.headers = options.headers || {}; - this.body = options.body; - } - static isInstance(response) { - if (!response) - return false; - const resp = response; - return typeof resp.statusCode === "number" && typeof resp.headers === "object"; - } - }; - __name(_HttpResponse, "HttpResponse"); - var HttpResponse = _HttpResponse; - function isValidHostname(hostname) { - const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/; - return hostPattern.test(hostname); - } - __name(isValidHostname, "isValidHostname"); - } -}); - -// node_modules/@aws-sdk/middleware-expect-continue/dist-cjs/index.js -var require_dist_cjs3 = __commonJS({ - "node_modules/@aws-sdk/middleware-expect-continue/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getAddExpectContinuePlugin = exports2.addExpectContinueMiddlewareOptions = exports2.addExpectContinueMiddleware = void 0; - var protocol_http_1 = require_dist_cjs2(); - function addExpectContinueMiddleware(options) { - return (next) => async (args) => { - const { request } = args; - if (protocol_http_1.HttpRequest.isInstance(request) && request.body && options.runtime === "node") { - request.headers = { - ...request.headers, - Expect: "100-continue" - }; - } - return next({ - ...args, - request - }); - }; - } - exports2.addExpectContinueMiddleware = addExpectContinueMiddleware; - exports2.addExpectContinueMiddlewareOptions = { - step: "build", - tags: ["SET_EXPECT_HEADER", "EXPECT_HEADER"], - name: "addExpectContinueMiddleware", - override: true - }; - var getAddExpectContinuePlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.add(addExpectContinueMiddleware(options), exports2.addExpectContinueMiddlewareOptions); - } - }); - exports2.getAddExpectContinuePlugin = getAddExpectContinuePlugin; - } -}); - -// node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js -var require_dist_cjs4 = __commonJS({ - "node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getHostHeaderPlugin = exports2.hostHeaderMiddlewareOptions = exports2.hostHeaderMiddleware = exports2.resolveHostHeaderConfig = void 0; - var protocol_http_1 = require_dist_cjs2(); - function resolveHostHeaderConfig(input) { - return input; - } - exports2.resolveHostHeaderConfig = resolveHostHeaderConfig; - var hostHeaderMiddleware = (options) => (next) => async (args) => { - if (!protocol_http_1.HttpRequest.isInstance(args.request)) - return next(args); - const { request } = args; - const { handlerProtocol = "" } = options.requestHandler.metadata || {}; - if (handlerProtocol.indexOf("h2") >= 0 && !request.headers[":authority"]) { - delete request.headers["host"]; - request.headers[":authority"] = ""; - } else if (!request.headers["host"]) { - let host = request.hostname; - if (request.port != null) - host += `:${request.port}`; - request.headers["host"] = host; - } - return next(args); - }; - exports2.hostHeaderMiddleware = hostHeaderMiddleware; - exports2.hostHeaderMiddlewareOptions = { - name: "hostHeaderMiddleware", - step: "build", - priority: "low", - tags: ["HOST"], - override: true - }; - var getHostHeaderPlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.add((0, exports2.hostHeaderMiddleware)(options), exports2.hostHeaderMiddlewareOptions); - } - }); - exports2.getHostHeaderPlugin = getHostHeaderPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js -var require_loggerMiddleware = __commonJS({ - "node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getLoggerPlugin = exports2.loggerMiddlewareOptions = exports2.loggerMiddleware = void 0; - var loggerMiddleware = () => (next, context) => async (args) => { - var _a, _b; - try { - const response = await next(args); - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog !== null && overrideInputFilterSensitiveLog !== void 0 ? overrideInputFilterSensitiveLog : context.inputFilterSensitiveLog; - const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog !== null && overrideOutputFilterSensitiveLog !== void 0 ? overrideOutputFilterSensitiveLog : context.outputFilterSensitiveLog; - const { $metadata, ...outputWithoutMetadata } = response.output; - (_a = logger === null || logger === void 0 ? void 0 : logger.info) === null || _a === void 0 ? void 0 : _a.call(logger, { - 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 !== null && overrideInputFilterSensitiveLog !== void 0 ? overrideInputFilterSensitiveLog : context.inputFilterSensitiveLog; - (_b = logger === null || logger === void 0 ? void 0 : logger.error) === null || _b === void 0 ? void 0 : _b.call(logger, { - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - error, - metadata: error.$metadata - }); - throw error; - } - }; - exports2.loggerMiddleware = loggerMiddleware; - exports2.loggerMiddlewareOptions = { - name: "loggerMiddleware", - tags: ["LOGGER"], - step: "initialize", - override: true - }; - var getLoggerPlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.add((0, exports2.loggerMiddleware)(), exports2.loggerMiddlewareOptions); - } - }); - exports2.getLoggerPlugin = getLoggerPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js -var require_dist_cjs5 = __commonJS({ - "node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_loggerMiddleware(), exports2); - } -}); - -// node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js -var require_dist_cjs6 = __commonJS({ - "node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRecursionDetectionPlugin = exports2.addRecursionDetectionMiddlewareOptions = exports2.recursionDetectionMiddleware = void 0; - var protocol_http_1 = require_dist_cjs2(); - var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id"; - var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME"; - var ENV_TRACE_ID = "_X_AMZN_TRACE_ID"; - var recursionDetectionMiddleware = (options) => (next) => async (args) => { - const { request } = args; - if (!protocol_http_1.HttpRequest.isInstance(request) || options.runtime !== "node" || request.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) { - return next(args); - } - const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME]; - const traceId = process.env[ENV_TRACE_ID]; - const nonEmptyString = (str) => typeof str === "string" && str.length > 0; - if (nonEmptyString(functionName) && nonEmptyString(traceId)) { - request.headers[TRACE_ID_HEADER_NAME] = traceId; - } - return next({ - ...args, - request - }); - }; - exports2.recursionDetectionMiddleware = recursionDetectionMiddleware; - exports2.addRecursionDetectionMiddlewareOptions = { - step: "build", - tags: ["RECURSION_DETECTION"], - name: "recursionDetectionMiddleware", - override: true, - priority: "low" - }; - var getRecursionDetectionPlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.add((0, exports2.recursionDetectionMiddleware)(options), exports2.addRecursionDetectionMiddlewareOptions); - } - }); - exports2.getRecursionDetectionPlugin = getRecursionDetectionPlugin; - } -}); - -// node_modules/@smithy/middleware-stack/dist-cjs/index.js -var require_dist_cjs7 = __commonJS({ - "node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - constructStack: () => constructStack - }); - module2.exports = __toCommonJS2(src_exports); - var getAllAliases = /* @__PURE__ */ __name((name, aliases) => { - const _aliases = []; - if (name) { - _aliases.push(name); - } - if (aliases) { - for (const alias of aliases) { - _aliases.push(alias); - } - } - return _aliases; - }, "getAllAliases"); - var getMiddlewareNameWithAliases = /* @__PURE__ */ __name((name, aliases) => { - return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`; - }, "getMiddlewareNameWithAliases"); - var constructStack = /* @__PURE__ */ __name(() => { - let absoluteEntries = []; - let relativeEntries = []; - let identifyOnResolve = false; - const entriesNameSet = /* @__PURE__ */ new Set(); - const sort = /* @__PURE__ */ __name((entries) => entries.sort( - (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"] - ), "sort"); - const removeByName = /* @__PURE__ */ __name((toRemove) => { - let isRemoved = false; - const filterCb = /* @__PURE__ */ __name((entry) => { - const aliases = getAllAliases(entry.name, entry.aliases); - if (aliases.includes(toRemove)) { - isRemoved = true; - for (const alias of aliases) { - entriesNameSet.delete(alias); - } - return false; - } - return true; - }, "filterCb"); - absoluteEntries = absoluteEntries.filter(filterCb); - relativeEntries = relativeEntries.filter(filterCb); - return isRemoved; - }, "removeByName"); - const removeByReference = /* @__PURE__ */ __name((toRemove) => { - let isRemoved = false; - const filterCb = /* @__PURE__ */ __name((entry) => { - if (entry.middleware === toRemove) { - isRemoved = true; - for (const alias of getAllAliases(entry.name, entry.aliases)) { - entriesNameSet.delete(alias); - } - return false; - } - return true; - }, "filterCb"); - absoluteEntries = absoluteEntries.filter(filterCb); - relativeEntries = relativeEntries.filter(filterCb); - return isRemoved; - }, "removeByReference"); - const cloneTo = /* @__PURE__ */ __name((toStack) => { - var _a; - absoluteEntries.forEach((entry) => { - toStack.add(entry.middleware, { ...entry }); - }); - relativeEntries.forEach((entry) => { - toStack.addRelativeTo(entry.middleware, { ...entry }); - }); - (_a = toStack.identifyOnResolve) == null ? void 0 : _a.call(toStack, stack.identifyOnResolve()); - return toStack; - }, "cloneTo"); - const expandRelativeMiddlewareList = /* @__PURE__ */ __name((from) => { - const expandedMiddlewareList = []; - from.before.forEach((entry) => { - if (entry.before.length === 0 && entry.after.length === 0) { - expandedMiddlewareList.push(entry); - } else { - expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry)); - } - }); - expandedMiddlewareList.push(from); - from.after.reverse().forEach((entry) => { - if (entry.before.length === 0 && entry.after.length === 0) { - expandedMiddlewareList.push(entry); - } else { - expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry)); - } - }); - return expandedMiddlewareList; - }, "expandRelativeMiddlewareList"); - const getMiddlewareList = /* @__PURE__ */ __name((debug = false) => { - const normalizedAbsoluteEntries = []; - const normalizedRelativeEntries = []; - const normalizedEntriesNameMap = {}; - absoluteEntries.forEach((entry) => { - const normalizedEntry = { - ...entry, - before: [], - after: [] - }; - for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) { - normalizedEntriesNameMap[alias] = normalizedEntry; - } - normalizedAbsoluteEntries.push(normalizedEntry); - }); - relativeEntries.forEach((entry) => { - const normalizedEntry = { - ...entry, - before: [], - after: [] - }; - for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) { - normalizedEntriesNameMap[alias] = normalizedEntry; - } - normalizedRelativeEntries.push(normalizedEntry); - }); - normalizedRelativeEntries.forEach((entry) => { - if (entry.toMiddleware) { - const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware]; - if (toMiddleware === void 0) { - if (debug) { - return; - } - throw new Error( - `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}` - ); - } - if (entry.relation === "after") { - toMiddleware.after.push(entry); - } - if (entry.relation === "before") { - toMiddleware.before.push(entry); - } - } - }); - const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce((wholeList, expandedMiddlewareList) => { - wholeList.push(...expandedMiddlewareList); - return wholeList; - }, []); - return mainChain; - }, "getMiddlewareList"); - const stack = { - add: (middleware, options = {}) => { - const { name, override, aliases: _aliases } = options; - const entry = { - step: "initialize", - priority: "normal", - middleware, - ...options - }; - const aliases = getAllAliases(name, _aliases); - if (aliases.length > 0) { - if (aliases.some((alias) => entriesNameSet.has(alias))) { - if (!override) - throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`); - for (const alias of aliases) { - const toOverrideIndex = absoluteEntries.findIndex( - (entry2) => { - var _a; - return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias)); - } - ); - if (toOverrideIndex === -1) { - continue; - } - const toOverride = absoluteEntries[toOverrideIndex]; - if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) { - throw new Error( - `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.` - ); - } - absoluteEntries.splice(toOverrideIndex, 1); - } - } - for (const alias of aliases) { - entriesNameSet.add(alias); - } - } - absoluteEntries.push(entry); - }, - addRelativeTo: (middleware, options) => { - const { name, override, aliases: _aliases } = options; - const entry = { - middleware, - ...options - }; - const aliases = getAllAliases(name, _aliases); - if (aliases.length > 0) { - if (aliases.some((alias) => entriesNameSet.has(alias))) { - if (!override) - throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`); - for (const alias of aliases) { - const toOverrideIndex = relativeEntries.findIndex( - (entry2) => { - var _a; - return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias)); - } - ); - if (toOverrideIndex === -1) { - continue; - } - const toOverride = relativeEntries[toOverrideIndex]; - if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) { - throw new Error( - `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.` - ); - } - relativeEntries.splice(toOverrideIndex, 1); - } - } - for (const alias of aliases) { - entriesNameSet.add(alias); - } - } - relativeEntries.push(entry); - }, - clone: () => cloneTo(constructStack()), - use: (plugin) => { - plugin.applyToStack(stack); - }, - remove: (toRemove) => { - if (typeof toRemove === "string") - return removeByName(toRemove); - else - return removeByReference(toRemove); - }, - removeByTag: (toRemove) => { - let isRemoved = false; - const filterCb = /* @__PURE__ */ __name((entry) => { - const { tags, name, aliases: _aliases } = entry; - if (tags && tags.includes(toRemove)) { - const aliases = getAllAliases(name, _aliases); - for (const alias of aliases) { - entriesNameSet.delete(alias); - } - isRemoved = true; - return false; - } - return true; - }, "filterCb"); - absoluteEntries = absoluteEntries.filter(filterCb); - relativeEntries = relativeEntries.filter(filterCb); - return isRemoved; - }, - concat: (from) => { - var _a; - const cloned = cloneTo(constructStack()); - cloned.use(from); - cloned.identifyOnResolve( - identifyOnResolve || cloned.identifyOnResolve() || (((_a = from.identifyOnResolve) == null ? void 0 : _a.call(from)) ?? false) - ); - return cloned; - }, - applyToStack: cloneTo, - identify: () => { - return getMiddlewareList(true).map((mw) => { - const step = mw.step ?? mw.relation + " " + mw.toMiddleware; - return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step; - }); - }, - identifyOnResolve(toggle) { - if (typeof toggle === "boolean") - identifyOnResolve = toggle; - return identifyOnResolve; - }, - resolve: (handler2, context) => { - for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) { - handler2 = middleware(handler2, context); - } - if (identifyOnResolve) { - console.log(stack.identify()); - } - return handler2; - } - }; - return stack; - }, "constructStack"); - var stepWeights = { - initialize: 5, - serialize: 4, - build: 3, - finalizeRequest: 2, - deserialize: 1 - }; - var priorityWeights = { - high: 3, - normal: 2, - low: 1 - }; - } -}); - -// node_modules/@smithy/is-array-buffer/dist-cjs/index.js -var require_dist_cjs8 = __commonJS({ - "node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - isArrayBuffer: () => isArrayBuffer - }); - module2.exports = __toCommonJS2(src_exports); - var isArrayBuffer = /* @__PURE__ */ __name((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer"); - } -}); - -// node_modules/@smithy/util-buffer-from/dist-cjs/index.js -var require_dist_cjs9 = __commonJS({ - "node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - fromArrayBuffer: () => fromArrayBuffer, - fromString: () => fromString - }); - module2.exports = __toCommonJS2(src_exports); - var import_is_array_buffer = require_dist_cjs8(); - var import_buffer = require("buffer"); - var fromArrayBuffer = /* @__PURE__ */ __name((input, offset = 0, length = input.byteLength - offset) => { - if (!(0, import_is_array_buffer.isArrayBuffer)(input)) { - throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`); - } - return import_buffer.Buffer.from(input, offset, length); - }, "fromArrayBuffer"); - var fromString = /* @__PURE__ */ __name((input, encoding) => { - if (typeof input !== "string") { - throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`); - } - return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input); - }, "fromString"); - } -}); - -// node_modules/@smithy/util-base64/dist-cjs/fromBase64.js -var require_fromBase64 = __commonJS({ - "node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromBase64 = void 0; - var util_buffer_from_1 = require_dist_cjs9(); - var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/; - var fromBase642 = (input) => { - if (input.length * 3 % 4 !== 0) { - throw new TypeError(`Incorrect padding on base64 string.`); - } - if (!BASE64_REGEX.exec(input)) { - throw new TypeError(`Invalid base64 string.`); - } - const buffer = (0, util_buffer_from_1.fromString)(input, "base64"); - return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength); - }; - exports2.fromBase64 = fromBase642; - } -}); - -// node_modules/@smithy/util-base64/dist-cjs/toBase64.js -var require_toBase64 = __commonJS({ - "node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toBase64 = void 0; - var util_buffer_from_1 = require_dist_cjs9(); - var toBase642 = (input) => (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64"); - exports2.toBase64 = toBase642; - } -}); - -// node_modules/@smithy/util-base64/dist-cjs/index.js -var require_dist_cjs10 = __commonJS({ - "node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - module2.exports = __toCommonJS2(src_exports); - __reExport(src_exports, require_fromBase64(), module2.exports); - __reExport(src_exports, require_toBase64(), module2.exports); - } -}); - -// node_modules/@smithy/util-utf8/dist-cjs/index.js -var require_dist_cjs11 = __commonJS({ - "node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - fromUtf8: () => fromUtf8, - toUint8Array: () => toUint8Array, - toUtf8: () => toUtf8 - }); - module2.exports = __toCommonJS2(src_exports); - var import_util_buffer_from = require_dist_cjs9(); - var fromUtf8 = /* @__PURE__ */ __name((input) => { - const buf = (0, import_util_buffer_from.fromString)(input, "utf8"); - return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT); - }, "fromUtf8"); - var toUint8Array = /* @__PURE__ */ __name((data) => { - if (typeof data === "string") { - return fromUtf8(data); - } - if (ArrayBuffer.isView(data)) { - return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT); - } - return new Uint8Array(data); - }, "toUint8Array"); - var toUtf8 = /* @__PURE__ */ __name((input) => (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8"), "toUtf8"); - } -}); - -// node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js -var require_getAwsChunkedEncodingStream = __commonJS({ - "node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getAwsChunkedEncodingStream = void 0; - var stream_1 = require("stream"); - var getAwsChunkedEncodingStream2 = (readableStream, options) => { - const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options; - const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0; - const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0; - const awsChunkedEncodingStream = new stream_1.Readable({ read: () => { - } }); - readableStream.on("data", (data) => { - const length = bodyLengthChecker(data) || 0; - awsChunkedEncodingStream.push(`${length.toString(16)}\r -`); - awsChunkedEncodingStream.push(data); - awsChunkedEncodingStream.push("\r\n"); - }); - readableStream.on("end", async () => { - awsChunkedEncodingStream.push(`0\r -`); - if (checksumRequired) { - const checksum = base64Encoder(await digest); - awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r -`); - awsChunkedEncodingStream.push(`\r -`); - } - awsChunkedEncodingStream.push(null); - }); - return awsChunkedEncodingStream; - }; - exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2; - } -}); - -// node_modules/@smithy/util-uri-escape/dist-cjs/index.js -var require_dist_cjs12 = __commonJS({ - "node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - escapeUri: () => escapeUri, - escapeUriPath: () => escapeUriPath - }); - module2.exports = __toCommonJS2(src_exports); - var escapeUri = /* @__PURE__ */ __name((uri) => ( - // AWS percent-encodes some extra non-standard characters in a URI - encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode) - ), "escapeUri"); - var hexEncode = /* @__PURE__ */ __name((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode"); - var escapeUriPath = /* @__PURE__ */ __name((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath"); - } -}); - -// node_modules/@smithy/querystring-builder/dist-cjs/index.js -var require_dist_cjs13 = __commonJS({ - "node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - buildQueryString: () => buildQueryString - }); - module2.exports = __toCommonJS2(src_exports); - var import_util_uri_escape = require_dist_cjs12(); - function buildQueryString(query) { - const parts = []; - for (let key of Object.keys(query).sort()) { - const value = query[key]; - key = (0, import_util_uri_escape.escapeUri)(key); - if (Array.isArray(value)) { - for (let i = 0, iLen = value.length; i < iLen; i++) { - parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`); - } - } else { - let qsEntry = key; - if (value || typeof value === "string") { - qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`; - } - parts.push(qsEntry); - } - } - return parts.join("&"); - } - __name(buildQueryString, "buildQueryString"); - } -}); - -// node_modules/@smithy/node-http-handler/dist-cjs/index.js -var require_dist_cjs14 = __commonJS({ - "node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) { - var __create2 = Object.create; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __getProtoOf2 = Object.getPrototypeOf; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, - mod - )); - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT, - NodeHttp2Handler: () => NodeHttp2Handler, - NodeHttpHandler: () => NodeHttpHandler, - streamCollector: () => streamCollector - }); - module2.exports = __toCommonJS2(src_exports); - var import_protocol_http = require_dist_cjs2(); - var import_querystring_builder = require_dist_cjs13(); - var import_http = require("http"); - var import_https = require("https"); - var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"]; - var getTransformedHeaders = /* @__PURE__ */ __name((headers) => { - const transformedHeaders = {}; - for (const name of Object.keys(headers)) { - const headerValues = headers[name]; - transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues; - } - return transformedHeaders; - }, "getTransformedHeaders"); - var setConnectionTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => { - if (!timeoutInMs) { - return; - } - const timeoutId = setTimeout(() => { - request.destroy(); - reject( - Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), { - name: "TimeoutError" - }) - ); - }, timeoutInMs); - request.on("socket", (socket) => { - if (socket.connecting) { - socket.on("connect", () => { - clearTimeout(timeoutId); - }); - } else { - clearTimeout(timeoutId); - } - }); - }, "setConnectionTimeout"); - var setSocketKeepAlive = /* @__PURE__ */ __name((request, { keepAlive, keepAliveMsecs }) => { - if (keepAlive !== true) { - return; - } - request.on("socket", (socket) => { - socket.setKeepAlive(keepAlive, keepAliveMsecs || 0); - }); - }, "setSocketKeepAlive"); - var setSocketTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => { - request.setTimeout(timeoutInMs, () => { - request.destroy(); - reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" })); - }); - }, "setSocketTimeout"); - var import_stream = require("stream"); - var MIN_WAIT_TIME = 1e3; - async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) { - const headers = request.headers ?? {}; - const expect = headers["Expect"] || headers["expect"]; - let timeoutId = -1; - let hasError = false; - if (expect === "100-continue") { - await Promise.race([ - new Promise((resolve) => { - timeoutId = Number(setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs))); - }), - new Promise((resolve) => { - httpRequest.on("continue", () => { - clearTimeout(timeoutId); - resolve(); - }); - httpRequest.on("error", () => { - hasError = true; - clearTimeout(timeoutId); - resolve(); - }); - }) - ]); - } - if (!hasError) { - writeBody(httpRequest, request.body); - } - } - __name(writeRequestBody, "writeRequestBody"); - function writeBody(httpRequest, body) { - if (body instanceof import_stream.Readable) { - body.pipe(httpRequest); - } else if (body) { - httpRequest.end(Buffer.from(body)); - } else { - httpRequest.end(); - } - } - __name(writeBody, "writeBody"); - var DEFAULT_REQUEST_TIMEOUT = 0; - var _NodeHttpHandler = class _NodeHttpHandler2 { - constructor(options) { - this.metadata = { handlerProtocol: "http/1.1" }; - this.configProvider = new Promise((resolve, reject) => { - if (typeof options === "function") { - options().then((_options) => { - resolve(this.resolveDefaultConfig(_options)); - }).catch(reject); - } else { - resolve(this.resolveDefaultConfig(options)); - } - }); - } - /** - * @returns the input if it is an HttpHandler of any class, - * or instantiates a new instance of this handler. - */ - static create(instanceOrOptions) { - if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") { - return instanceOrOptions; - } - return new _NodeHttpHandler2(instanceOrOptions); - } - resolveDefaultConfig(options) { - const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {}; - const keepAlive = true; - const maxSockets = 50; - return { - connectionTimeout, - requestTimeout: requestTimeout ?? socketTimeout, - httpAgent: httpAgent || new import_http.Agent({ keepAlive, maxSockets }), - httpsAgent: httpsAgent || new import_https.Agent({ keepAlive, maxSockets }) - }; - } - destroy() { - var _a, _b, _c, _d; - (_b = (_a = this.config) == null ? void 0 : _a.httpAgent) == null ? void 0 : _b.destroy(); - (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy(); - } - async handle(request, { abortSignal } = {}) { - if (!this.config) { - this.config = await this.configProvider; - } - return new Promise((_resolve, _reject) => { - let writeRequestBodyPromise = void 0; - const resolve = /* @__PURE__ */ __name(async (arg) => { - await writeRequestBodyPromise; - _resolve(arg); - }, "resolve"); - const reject = /* @__PURE__ */ __name(async (arg) => { - await writeRequestBodyPromise; - _reject(arg); - }, "reject"); - if (!this.config) { - throw new Error("Node HTTP request handler config is not resolved"); - } - if (abortSignal == null ? void 0 : abortSignal.aborted) { - const abortError = new Error("Request aborted"); - abortError.name = "AbortError"; - reject(abortError); - return; - } - const isSSL = request.protocol === "https:"; - const queryString = (0, import_querystring_builder.buildQueryString)(request.query || {}); - let auth = void 0; - if (request.username != null || request.password != null) { - const username = request.username ?? ""; - const password = request.password ?? ""; - auth = `${username}:${password}`; - } - let path = request.path; - if (queryString) { - path += `?${queryString}`; - } - if (request.fragment) { - path += `#${request.fragment}`; - } - const nodeHttpsOptions = { - headers: request.headers, - host: request.hostname, - method: request.method, - path, - port: request.port, - agent: isSSL ? this.config.httpsAgent : this.config.httpAgent, - auth - }; - const requestFunc = isSSL ? import_https.request : import_http.request; - const req = requestFunc(nodeHttpsOptions, (res) => { - const httpResponse = new import_protocol_http.HttpResponse({ - statusCode: res.statusCode || -1, - reason: res.statusMessage, - headers: getTransformedHeaders(res.headers), - body: res - }); - resolve({ response: httpResponse }); - }); - req.on("error", (err) => { - if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) { - reject(Object.assign(err, { name: "TimeoutError" })); - } else { - reject(err); - } - }); - setConnectionTimeout(req, reject, this.config.connectionTimeout); - setSocketTimeout(req, reject, this.config.requestTimeout); - if (abortSignal) { - abortSignal.onabort = () => { - req.abort(); - const abortError = new Error("Request aborted"); - abortError.name = "AbortError"; - reject(abortError); - }; - } - const httpAgent = nodeHttpsOptions.agent; - if (typeof httpAgent === "object" && "keepAlive" in httpAgent) { - setSocketKeepAlive(req, { - // @ts-expect-error keepAlive is not public on httpAgent. - keepAlive: httpAgent.keepAlive, - // @ts-expect-error keepAliveMsecs is not public on httpAgent. - keepAliveMsecs: httpAgent.keepAliveMsecs - }); - } - writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch(_reject); - }); - } - updateHttpClientConfig(key, value) { - this.config = void 0; - this.configProvider = this.configProvider.then((config) => { - return { - ...config, - [key]: value - }; - }); - } - httpHandlerConfigs() { - return this.config ?? {}; - } - }; - __name(_NodeHttpHandler, "NodeHttpHandler"); - var NodeHttpHandler = _NodeHttpHandler; - var import_http22 = require("http2"); - var import_http2 = __toESM2(require("http2")); - var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool { - constructor(sessions) { - this.sessions = []; - this.sessions = sessions ?? []; - } - poll() { - if (this.sessions.length > 0) { - return this.sessions.shift(); - } - } - offerLast(session) { - this.sessions.push(session); - } - contains(session) { - return this.sessions.includes(session); - } - remove(session) { - this.sessions = this.sessions.filter((s) => s !== session); - } - [Symbol.iterator]() { - return this.sessions[Symbol.iterator](); - } - destroy(connection) { - for (const session of this.sessions) { - if (session === connection) { - if (!session.destroyed) { - session.destroy(); - } - } - } - } - }; - __name(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool"); - var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool; - var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager { - constructor(config) { - this.sessionCache = /* @__PURE__ */ new Map(); - this.config = config; - if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) { - throw new RangeError("maxConcurrency must be greater than zero."); - } - } - lease(requestContext, connectionConfiguration) { - const url = this.getUrlString(requestContext); - const existingPool = this.sessionCache.get(url); - if (existingPool) { - const existingSession = existingPool.poll(); - if (existingSession && !this.config.disableConcurrency) { - return existingSession; - } - } - const session = import_http2.default.connect(url); - if (this.config.maxConcurrency) { - session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => { - if (err) { - throw new Error( - "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString() - ); - } - }); - } - session.unref(); - const destroySessionCb = /* @__PURE__ */ __name(() => { - session.destroy(); - this.deleteSession(url, session); - }, "destroySessionCb"); - session.on("goaway", destroySessionCb); - session.on("error", destroySessionCb); - session.on("frameError", destroySessionCb); - session.on("close", () => this.deleteSession(url, session)); - if (connectionConfiguration.requestTimeout) { - session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb); - } - const connectionPool = this.sessionCache.get(url) || new NodeHttp2ConnectionPool(); - connectionPool.offerLast(session); - this.sessionCache.set(url, connectionPool); - return session; - } - /** - * Delete a session from the connection pool. - * @param authority The authority of the session to delete. - * @param session The session to delete. - */ - deleteSession(authority, session) { - const existingConnectionPool = this.sessionCache.get(authority); - if (!existingConnectionPool) { - return; - } - if (!existingConnectionPool.contains(session)) { - return; - } - existingConnectionPool.remove(session); - this.sessionCache.set(authority, existingConnectionPool); - } - release(requestContext, session) { - var _a; - const cacheKey = this.getUrlString(requestContext); - (_a = this.sessionCache.get(cacheKey)) == null ? void 0 : _a.offerLast(session); - } - destroy() { - for (const [key, connectionPool] of this.sessionCache) { - for (const session of connectionPool) { - if (!session.destroyed) { - session.destroy(); - } - connectionPool.remove(session); - } - this.sessionCache.delete(key); - } - } - setMaxConcurrentStreams(maxConcurrentStreams) { - if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) { - throw new RangeError("maxConcurrentStreams must be greater than zero."); - } - this.config.maxConcurrency = maxConcurrentStreams; - } - setDisableConcurrentStreams(disableConcurrentStreams) { - this.config.disableConcurrency = disableConcurrentStreams; - } - getUrlString(request) { - return request.destination.toString(); - } - }; - __name(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager"); - var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager; - var _NodeHttp2Handler = class _NodeHttp2Handler2 { - constructor(options) { - this.metadata = { handlerProtocol: "h2" }; - this.connectionManager = new NodeHttp2ConnectionManager({}); - this.configProvider = new Promise((resolve, reject) => { - if (typeof options === "function") { - options().then((opts) => { - resolve(opts || {}); - }).catch(reject); - } else { - resolve(options || {}); - } - }); - } - /** - * @returns the input if it is an HttpHandler of any class, - * or instantiates a new instance of this handler. - */ - static create(instanceOrOptions) { - if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") { - return instanceOrOptions; - } - return new _NodeHttp2Handler2(instanceOrOptions); - } - destroy() { - this.connectionManager.destroy(); - } - async handle(request, { abortSignal } = {}) { - if (!this.config) { - this.config = await this.configProvider; - this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false); - if (this.config.maxConcurrentStreams) { - this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams); - } - } - const { requestTimeout, disableConcurrentStreams } = this.config; - return new Promise((_resolve, _reject) => { - var _a; - let fulfilled = false; - let writeRequestBodyPromise = void 0; - const resolve = /* @__PURE__ */ __name(async (arg) => { - await writeRequestBodyPromise; - _resolve(arg); - }, "resolve"); - const reject = /* @__PURE__ */ __name(async (arg) => { - await writeRequestBodyPromise; - _reject(arg); - }, "reject"); - if (abortSignal == null ? void 0 : abortSignal.aborted) { - fulfilled = true; - const abortError = new Error("Request aborted"); - abortError.name = "AbortError"; - reject(abortError); - return; - } - const { hostname, method, port, protocol, query } = request; - let auth = ""; - if (request.username != null || request.password != null) { - const username = request.username ?? ""; - const password = request.password ?? ""; - auth = `${username}:${password}@`; - } - const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`; - const requestContext = { destination: new URL(authority) }; - const session = this.connectionManager.lease(requestContext, { - requestTimeout: (_a = this.config) == null ? void 0 : _a.sessionTimeout, - disableConcurrentStreams: disableConcurrentStreams || false - }); - const rejectWithDestroy = /* @__PURE__ */ __name((err) => { - if (disableConcurrentStreams) { - this.destroySession(session); - } - fulfilled = true; - reject(err); - }, "rejectWithDestroy"); - const queryString = (0, import_querystring_builder.buildQueryString)(query || {}); - let path = request.path; - if (queryString) { - path += `?${queryString}`; - } - if (request.fragment) { - path += `#${request.fragment}`; - } - const req = session.request({ - ...request.headers, - [import_http22.constants.HTTP2_HEADER_PATH]: path, - [import_http22.constants.HTTP2_HEADER_METHOD]: method - }); - session.ref(); - req.on("response", (headers) => { - const httpResponse = new import_protocol_http.HttpResponse({ - statusCode: headers[":status"] || -1, - headers: getTransformedHeaders(headers), - body: req - }); - fulfilled = true; - resolve({ response: httpResponse }); - if (disableConcurrentStreams) { - session.close(); - this.connectionManager.deleteSession(authority, session); - } - }); - if (requestTimeout) { - req.setTimeout(requestTimeout, () => { - req.close(); - const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`); - timeoutError.name = "TimeoutError"; - rejectWithDestroy(timeoutError); - }); - } - if (abortSignal) { - abortSignal.onabort = () => { - req.close(); - const abortError = new Error("Request aborted"); - abortError.name = "AbortError"; - rejectWithDestroy(abortError); - }; - } - req.on("frameError", (type, code, id) => { - rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`)); - }); - req.on("error", rejectWithDestroy); - req.on("aborted", () => { - rejectWithDestroy( - new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`) - ); - }); - req.on("close", () => { - session.unref(); - if (disableConcurrentStreams) { - session.destroy(); - } - if (!fulfilled) { - rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response")); - } - }); - writeRequestBodyPromise = writeRequestBody(req, request, requestTimeout); - }); - } - updateHttpClientConfig(key, value) { - this.config = void 0; - this.configProvider = this.configProvider.then((config) => { - return { - ...config, - [key]: value - }; - }); - } - httpHandlerConfigs() { - return this.config ?? {}; - } - /** - * Destroys a session. - * @param session The session to destroy. - */ - destroySession(session) { - if (!session.destroyed) { - session.destroy(); - } - } - }; - __name(_NodeHttp2Handler, "NodeHttp2Handler"); - var NodeHttp2Handler = _NodeHttp2Handler; - var _Collector = class _Collector extends import_stream.Writable { - constructor() { - super(...arguments); - this.bufferedBytes = []; - } - _write(chunk, encoding, callback) { - this.bufferedBytes.push(chunk); - callback(); - } - }; - __name(_Collector, "Collector"); - var Collector = _Collector; - var streamCollector = /* @__PURE__ */ __name((stream) => new Promise((resolve, reject) => { - const collector = new Collector(); - stream.pipe(collector); - stream.on("error", (err) => { - collector.end(); - reject(err); - }); - collector.on("error", reject); - collector.on("finish", function() { - const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes)); - resolve(bytes); - }); - }), "streamCollector"); - } -}); - -// node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js -var require_sdk_stream_mixin = __commonJS({ - "node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sdkStreamMixin = void 0; - var node_http_handler_1 = require_dist_cjs14(); - var util_buffer_from_1 = require_dist_cjs9(); - var stream_1 = require("stream"); - var util_1 = require("util"); - var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed."; - var sdkStreamMixin2 = (stream) => { - var _a, _b; - if (!(stream instanceof stream_1.Readable)) { - const name = ((_b = (_a = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream; - throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`); - } - let transformed = false; - const transformToByteArray = async () => { - if (transformed) { - throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED); - } - transformed = true; - return await (0, node_http_handler_1.streamCollector)(stream); - }; - return Object.assign(stream, { - transformToByteArray, - transformToString: async (encoding) => { - const buf = await transformToByteArray(); - if (encoding === void 0 || Buffer.isEncoding(encoding)) { - return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding); - } else { - const decoder = new util_1.TextDecoder(encoding); - return decoder.decode(buf); - } - }, - transformToWebStream: () => { - if (transformed) { - throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED); - } - if (stream.readableFlowing !== null) { - throw new Error("The stream has been consumed by other callbacks."); - } - if (typeof stream_1.Readable.toWeb !== "function") { - throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available."); - } - transformed = true; - return stream_1.Readable.toWeb(stream); - } - }); - }; - exports2.sdkStreamMixin = sdkStreamMixin2; - } -}); - -// node_modules/@smithy/util-stream/dist-cjs/index.js -var require_dist_cjs15 = __commonJS({ - "node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter - }); - module2.exports = __toCommonJS2(src_exports); - var import_util_base64 = require_dist_cjs10(); - var import_util_utf8 = require_dist_cjs11(); - function transformToString(payload, encoding = "utf-8") { - if (encoding === "base64") { - return (0, import_util_base64.toBase64)(payload); - } - return (0, import_util_utf8.toUtf8)(payload); - } - __name(transformToString, "transformToString"); - function transformFromString(str, encoding) { - if (encoding === "base64") { - return Uint8ArrayBlobAdapter.mutate((0, import_util_base64.fromBase64)(str)); - } - return Uint8ArrayBlobAdapter.mutate((0, import_util_utf8.fromUtf8)(str)); - } - __name(transformFromString, "transformFromString"); - var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array { - /** - * @param source - such as a string or Stream. - * @returns a new Uint8ArrayBlobAdapter extending Uint8Array. - */ - static fromString(source, encoding = "utf-8") { - switch (typeof source) { - case "string": - return transformFromString(source, encoding); - default: - throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`); - } - } - /** - * @param source - Uint8Array to be mutated. - * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter. - */ - static mutate(source) { - Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype); - return source; - } - /** - * @param encoding - default 'utf-8'. - * @returns the blob as string. - */ - transformToString(encoding = "utf-8") { - return transformToString(this, encoding); - } - }; - __name(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter"); - var Uint8ArrayBlobAdapter = _Uint8ArrayBlobAdapter; - __reExport(src_exports, require_getAwsChunkedEncodingStream(), module2.exports); - __reExport(src_exports, require_sdk_stream_mixin(), module2.exports); - } -}); - -// node_modules/@smithy/smithy-client/dist-cjs/index.js -var require_dist_cjs16 = __commonJS({ - "node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - Client: () => Client, - Command: () => Command, - LazyJsonString: () => LazyJsonString, - NoOpLogger: () => NoOpLogger, - SENSITIVE_STRING: () => SENSITIVE_STRING, - ServiceException: () => ServiceException, - StringWrapper: () => StringWrapper, - _json: () => _json, - collectBody: () => collectBody, - convertMap: () => convertMap, - createAggregatedClient: () => createAggregatedClient, - dateToUtcString: () => dateToUtcString, - decorateServiceException: () => decorateServiceException, - emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion, - expectBoolean: () => expectBoolean, - expectByte: () => expectByte, - expectFloat32: () => expectFloat32, - expectInt: () => expectInt, - expectInt32: () => expectInt32, - expectLong: () => expectLong, - expectNonNull: () => expectNonNull, - expectNumber: () => expectNumber, - expectObject: () => expectObject, - expectShort: () => expectShort, - expectString: () => expectString, - expectUnion: () => expectUnion, - extendedEncodeURIComponent: () => extendedEncodeURIComponent, - getArrayIfSingleItem: () => getArrayIfSingleItem, - getDefaultClientConfiguration: () => getDefaultClientConfiguration, - getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration, - getValueFromTextNode: () => getValueFromTextNode, - handleFloat: () => handleFloat, - limitedParseDouble: () => limitedParseDouble, - limitedParseFloat: () => limitedParseFloat, - limitedParseFloat32: () => limitedParseFloat32, - loadConfigsForDefaultMode: () => loadConfigsForDefaultMode, - logger: () => logger, - map: () => map, - parseBoolean: () => parseBoolean, - parseEpochTimestamp: () => parseEpochTimestamp, - parseRfc3339DateTime: () => parseRfc3339DateTime, - parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset, - parseRfc7231DateTime: () => parseRfc7231DateTime, - resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig, - resolvedPath: () => resolvedPath, - serializeFloat: () => serializeFloat, - splitEvery: () => splitEvery, - strictParseByte: () => strictParseByte, - strictParseDouble: () => strictParseDouble, - strictParseFloat: () => strictParseFloat, - strictParseFloat32: () => strictParseFloat32, - strictParseInt: () => strictParseInt, - strictParseInt32: () => strictParseInt32, - strictParseLong: () => strictParseLong, - strictParseShort: () => strictParseShort, - take: () => take, - throwDefaultError: () => throwDefaultError, - withBaseException: () => withBaseException - }); - module2.exports = __toCommonJS2(src_exports); - var _NoOpLogger = class _NoOpLogger { - trace() { - } - debug() { - } - info() { - } - warn() { - } - error() { - } - }; - __name(_NoOpLogger, "NoOpLogger"); - var NoOpLogger = _NoOpLogger; - var import_middleware_stack = require_dist_cjs7(); - var _Client = class _Client { - constructor(config) { - this.middlewareStack = (0, import_middleware_stack.constructStack)(); - this.config = config; - } - send(command, optionsOrCb, cb) { - const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0; - const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb; - const handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options); - if (callback) { - handler2(command).then( - (result) => callback(null, result.output), - (err) => callback(err) - ).catch( - // prevent any errors thrown in the callback from triggering an - // unhandled promise rejection - () => { - } - ); - } else { - return handler2(command).then((result) => result.output); - } - } - destroy() { - if (this.config.requestHandler.destroy) - this.config.requestHandler.destroy(); - } - }; - __name(_Client, "Client"); - var Client = _Client; - var import_util_stream = require_dist_cjs15(); - var collectBody = /* @__PURE__ */ __name(async (streamBody = new Uint8Array(), context) => { - if (streamBody instanceof Uint8Array) { - return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody); - } - if (!streamBody) { - return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array()); - } - const fromContext = context.streamCollector(streamBody); - return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext); - }, "collectBody"); - var import_types = require_dist_cjs(); - var _Command = class _Command { - constructor() { - this.middlewareStack = (0, import_middleware_stack.constructStack)(); - } - /** - * Factory for Command ClassBuilder. - * @internal - */ - static classBuilder() { - return new ClassBuilder(); - } - /** - * @internal - */ - resolveMiddlewareWithContext(clientStack, configuration, options, { - middlewareFn, - clientName, - commandName, - inputFilterSensitiveLog, - outputFilterSensitiveLog, - smithyContext, - additionalContext, - CommandCtor - }) { - for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) { - this.middlewareStack.use(mw); - } - const stack = clientStack.concat(this.middlewareStack); - const { logger: logger2 } = configuration; - const handlerExecutionContext = { - logger: logger2, - clientName, - commandName, - inputFilterSensitiveLog, - outputFilterSensitiveLog, - [import_types.SMITHY_CONTEXT_KEY]: { - ...smithyContext - }, - ...additionalContext - }; - const { requestHandler } = configuration; - return stack.resolve( - (request) => requestHandler.handle(request.request, options || {}), - handlerExecutionContext - ); - } - }; - __name(_Command, "Command"); - var Command = _Command; - var _ClassBuilder = class _ClassBuilder { - constructor() { - this._init = () => { - }; - this._ep = {}; - this._middlewareFn = () => []; - this._commandName = ""; - this._clientName = ""; - this._additionalContext = {}; - this._smithyContext = {}; - this._inputFilterSensitiveLog = (_) => _; - this._outputFilterSensitiveLog = (_) => _; - this._serializer = null; - this._deserializer = null; - } - /** - * Optional init callback. - */ - init(cb) { - this._init = cb; - } - /** - * Set the endpoint parameter instructions. - */ - ep(endpointParameterInstructions) { - this._ep = endpointParameterInstructions; - return this; - } - /** - * Add any number of middleware. - */ - m(middlewareSupplier) { - this._middlewareFn = middlewareSupplier; - return this; - } - /** - * Set the initial handler execution context Smithy field. - */ - s(service, operation, smithyContext = {}) { - this._smithyContext = { - service, - operation, - ...smithyContext - }; - return this; - } - /** - * Set the initial handler execution context. - */ - c(additionalContext = {}) { - this._additionalContext = additionalContext; - return this; - } - /** - * Set constant string identifiers for the operation. - */ - n(clientName, commandName) { - this._clientName = clientName; - this._commandName = commandName; - return this; - } - /** - * Set the input and output sensistive log filters. - */ - f(inputFilter = (_) => _, outputFilter = (_) => _) { - this._inputFilterSensitiveLog = inputFilter; - this._outputFilterSensitiveLog = outputFilter; - return this; - } - /** - * Sets the serializer. - */ - ser(serializer) { - this._serializer = serializer; - return this; - } - /** - * Sets the deserializer. - */ - de(deserializer) { - this._deserializer = deserializer; - return this; - } - /** - * @returns a Command class with the classBuilder properties. - */ - build() { - var _a; - const closure = this; - let CommandRef; - return CommandRef = (_a = class extends Command { - /** - * @public - */ - constructor(input) { - super(); - this.input = input; - this.serialize = closure._serializer; - this.deserialize = closure._deserializer; - closure._init(this); - } - /** - * @public - */ - static getEndpointParameterInstructions() { - return closure._ep; - } - /** - * @internal - */ - resolveMiddleware(stack, configuration, options) { - return this.resolveMiddlewareWithContext(stack, configuration, options, { - CommandCtor: CommandRef, - middlewareFn: closure._middlewareFn, - clientName: closure._clientName, - commandName: closure._commandName, - inputFilterSensitiveLog: closure._inputFilterSensitiveLog, - outputFilterSensitiveLog: closure._outputFilterSensitiveLog, - smithyContext: closure._smithyContext, - additionalContext: closure._additionalContext - }); - } - }, __name(_a, "CommandRef"), _a); - } - }; - __name(_ClassBuilder, "ClassBuilder"); - var ClassBuilder = _ClassBuilder; - var SENSITIVE_STRING = "***SensitiveInformation***"; - var createAggregatedClient = /* @__PURE__ */ __name((commands, Client2) => { - for (const command of Object.keys(commands)) { - const CommandCtor = commands[command]; - const methodImpl = /* @__PURE__ */ __name(async function(args, optionsOrCb, cb) { - const command2 = new CommandCtor(args); - if (typeof optionsOrCb === "function") { - this.send(command2, optionsOrCb); - } else if (typeof cb === "function") { - if (typeof optionsOrCb !== "object") - throw new Error(`Expected http options but got ${typeof optionsOrCb}`); - this.send(command2, optionsOrCb || {}, cb); - } else { - return this.send(command2, optionsOrCb); - } - }, "methodImpl"); - const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, ""); - Client2.prototype[methodName] = methodImpl; - } - }, "createAggregatedClient"); - var parseBoolean = /* @__PURE__ */ __name((value) => { - switch (value) { - case "true": - return true; - case "false": - return false; - default: - throw new Error(`Unable to parse boolean value "${value}"`); - } - }, "parseBoolean"); - var expectBoolean = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value === "number") { - if (value === 0 || value === 1) { - logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`)); - } - if (value === 0) { - return false; - } - if (value === 1) { - return true; - } - } - if (typeof value === "string") { - const lower = value.toLowerCase(); - if (lower === "false" || lower === "true") { - logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`)); - } - if (lower === "false") { - return false; - } - if (lower === "true") { - return true; - } - } - if (typeof value === "boolean") { - return value; - } - throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`); - }, "expectBoolean"); - var expectNumber = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value === "string") { - const parsed = parseFloat(value); - if (!Number.isNaN(parsed)) { - if (String(parsed) !== String(value)) { - logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`)); - } - return parsed; - } - } - if (typeof value === "number") { - return value; - } - throw new TypeError(`Expected number, got ${typeof value}: ${value}`); - }, "expectNumber"); - var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23)); - var expectFloat32 = /* @__PURE__ */ __name((value) => { - const expected = expectNumber(value); - if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) { - if (Math.abs(expected) > MAX_FLOAT) { - throw new TypeError(`Expected 32-bit float, got ${value}`); - } - } - return expected; - }, "expectFloat32"); - var expectLong = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (Number.isInteger(value) && !Number.isNaN(value)) { - return value; - } - throw new TypeError(`Expected integer, got ${typeof value}: ${value}`); - }, "expectLong"); - var expectInt = expectLong; - var expectInt32 = /* @__PURE__ */ __name((value) => expectSizedInt(value, 32), "expectInt32"); - var expectShort = /* @__PURE__ */ __name((value) => expectSizedInt(value, 16), "expectShort"); - var expectByte = /* @__PURE__ */ __name((value) => expectSizedInt(value, 8), "expectByte"); - var expectSizedInt = /* @__PURE__ */ __name((value, size) => { - const expected = expectLong(value); - if (expected !== void 0 && castInt(expected, size) !== expected) { - throw new TypeError(`Expected ${size}-bit integer, got ${value}`); - } - return expected; - }, "expectSizedInt"); - var castInt = /* @__PURE__ */ __name((value, size) => { - switch (size) { - case 32: - return Int32Array.of(value)[0]; - case 16: - return Int16Array.of(value)[0]; - case 8: - return Int8Array.of(value)[0]; - } - }, "castInt"); - var expectNonNull = /* @__PURE__ */ __name((value, location) => { - if (value === null || value === void 0) { - if (location) { - throw new TypeError(`Expected a non-null value for ${location}`); - } - throw new TypeError("Expected a non-null value"); - } - return value; - }, "expectNonNull"); - var expectObject = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value === "object" && !Array.isArray(value)) { - return value; - } - const receivedType = Array.isArray(value) ? "array" : typeof value; - throw new TypeError(`Expected object, got ${receivedType}: ${value}`); - }, "expectObject"); - var expectString = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value === "string") { - return value; - } - if (["boolean", "number", "bigint"].includes(typeof value)) { - logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`)); - return String(value); - } - throw new TypeError(`Expected string, got ${typeof value}: ${value}`); - }, "expectString"); - var expectUnion = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - const asObject = expectObject(value); - const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k); - if (setKeys.length === 0) { - throw new TypeError(`Unions must have exactly one non-null member. None were found.`); - } - if (setKeys.length > 1) { - throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`); - } - return asObject; - }, "expectUnion"); - var strictParseDouble = /* @__PURE__ */ __name((value) => { - if (typeof value == "string") { - return expectNumber(parseNumber(value)); - } - return expectNumber(value); - }, "strictParseDouble"); - var strictParseFloat = strictParseDouble; - var strictParseFloat32 = /* @__PURE__ */ __name((value) => { - if (typeof value == "string") { - return expectFloat32(parseNumber(value)); - } - return expectFloat32(value); - }, "strictParseFloat32"); - var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g; - var parseNumber = /* @__PURE__ */ __name((value) => { - const matches = value.match(NUMBER_REGEX); - if (matches === null || matches[0].length !== value.length) { - throw new TypeError(`Expected real number, got implicit NaN`); - } - return parseFloat(value); - }, "parseNumber"); - var limitedParseDouble = /* @__PURE__ */ __name((value) => { - if (typeof value == "string") { - return parseFloatString(value); - } - return expectNumber(value); - }, "limitedParseDouble"); - var handleFloat = limitedParseDouble; - var limitedParseFloat = limitedParseDouble; - var limitedParseFloat32 = /* @__PURE__ */ __name((value) => { - if (typeof value == "string") { - return parseFloatString(value); - } - return expectFloat32(value); - }, "limitedParseFloat32"); - var parseFloatString = /* @__PURE__ */ __name((value) => { - switch (value) { - case "NaN": - return NaN; - case "Infinity": - return Infinity; - case "-Infinity": - return -Infinity; - default: - throw new Error(`Unable to parse float value: ${value}`); - } - }, "parseFloatString"); - var strictParseLong = /* @__PURE__ */ __name((value) => { - if (typeof value === "string") { - return expectLong(parseNumber(value)); - } - return expectLong(value); - }, "strictParseLong"); - var strictParseInt = strictParseLong; - var strictParseInt32 = /* @__PURE__ */ __name((value) => { - if (typeof value === "string") { - return expectInt32(parseNumber(value)); - } - return expectInt32(value); - }, "strictParseInt32"); - var strictParseShort = /* @__PURE__ */ __name((value) => { - if (typeof value === "string") { - return expectShort(parseNumber(value)); - } - return expectShort(value); - }, "strictParseShort"); - var strictParseByte = /* @__PURE__ */ __name((value) => { - if (typeof value === "string") { - return expectByte(parseNumber(value)); - } - return expectByte(value); - }, "strictParseByte"); - var stackTraceWarning = /* @__PURE__ */ __name((message) => { - return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n"); - }, "stackTraceWarning"); - var logger = { - warn: console.warn - }; - var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; - var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; - function dateToUtcString(date) { - const year = date.getUTCFullYear(); - const month = date.getUTCMonth(); - const dayOfWeek = date.getUTCDay(); - const dayOfMonthInt = date.getUTCDate(); - const hoursInt = date.getUTCHours(); - const minutesInt = date.getUTCMinutes(); - const secondsInt = date.getUTCSeconds(); - const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`; - const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`; - const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`; - const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`; - return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`; - } - __name(dateToUtcString, "dateToUtcString"); - var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/); - var parseRfc3339DateTime = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value !== "string") { - throw new TypeError("RFC-3339 date-times must be expressed as strings"); - } - const match = RFC3339.exec(value); - if (!match) { - throw new TypeError("Invalid RFC-3339 date-time value"); - } - const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match; - const year = strictParseShort(stripLeadingZeroes(yearStr)); - const month = parseDateValue(monthStr, "month", 1, 12); - const day = parseDateValue(dayStr, "day", 1, 31); - return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds }); - }, "parseRfc3339DateTime"); - var RFC3339_WITH_OFFSET = new RegExp( - /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/ - ); - var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value !== "string") { - throw new TypeError("RFC-3339 date-times must be expressed as strings"); - } - const match = RFC3339_WITH_OFFSET.exec(value); - if (!match) { - throw new TypeError("Invalid RFC-3339 date-time value"); - } - const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match; - const year = strictParseShort(stripLeadingZeroes(yearStr)); - const month = parseDateValue(monthStr, "month", 1, 12); - const day = parseDateValue(dayStr, "day", 1, 31); - const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds }); - if (offsetStr.toUpperCase() != "Z") { - date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr)); - } - return date; - }, "parseRfc3339DateTimeWithOffset"); - var IMF_FIXDATE = new RegExp( - /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/ - ); - var RFC_850_DATE = new RegExp( - /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/ - ); - var ASC_TIME = new RegExp( - /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/ - ); - var parseRfc7231DateTime = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - if (typeof value !== "string") { - throw new TypeError("RFC-7231 date-times must be expressed as strings"); - } - let match = IMF_FIXDATE.exec(value); - if (match) { - const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match; - return buildDate( - strictParseShort(stripLeadingZeroes(yearStr)), - parseMonthByShortName(monthStr), - parseDateValue(dayStr, "day", 1, 31), - { hours, minutes, seconds, fractionalMilliseconds } - ); - } - match = RFC_850_DATE.exec(value); - if (match) { - const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match; - return adjustRfc850Year( - buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), { - hours, - minutes, - seconds, - fractionalMilliseconds - }) - ); - } - match = ASC_TIME.exec(value); - if (match) { - const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match; - return buildDate( - strictParseShort(stripLeadingZeroes(yearStr)), - parseMonthByShortName(monthStr), - parseDateValue(dayStr.trimLeft(), "day", 1, 31), - { hours, minutes, seconds, fractionalMilliseconds } - ); - } - throw new TypeError("Invalid RFC-7231 date-time value"); - }, "parseRfc7231DateTime"); - var parseEpochTimestamp = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return void 0; - } - let valueAsDouble; - if (typeof value === "number") { - valueAsDouble = value; - } else if (typeof value === "string") { - valueAsDouble = strictParseDouble(value); - } else { - throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation"); - } - if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) { - throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics"); - } - return new Date(Math.round(valueAsDouble * 1e3)); - }, "parseEpochTimestamp"); - var buildDate = /* @__PURE__ */ __name((year, month, day, time) => { - const adjustedMonth = month - 1; - validateDayOfMonth(year, adjustedMonth, day); - return new Date( - Date.UTC( - year, - adjustedMonth, - day, - parseDateValue(time.hours, "hour", 0, 23), - parseDateValue(time.minutes, "minute", 0, 59), - // seconds can go up to 60 for leap seconds - parseDateValue(time.seconds, "seconds", 0, 60), - parseMilliseconds(time.fractionalMilliseconds) - ) - ); - }, "buildDate"); - var parseTwoDigitYear = /* @__PURE__ */ __name((value) => { - const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear(); - const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value)); - if (valueInThisCentury < thisYear) { - return valueInThisCentury + 100; - } - return valueInThisCentury; - }, "parseTwoDigitYear"); - var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3; - var adjustRfc850Year = /* @__PURE__ */ __name((input) => { - if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) { - return new Date( - Date.UTC( - input.getUTCFullYear() - 100, - input.getUTCMonth(), - input.getUTCDate(), - input.getUTCHours(), - input.getUTCMinutes(), - input.getUTCSeconds(), - input.getUTCMilliseconds() - ) - ); - } - return input; - }, "adjustRfc850Year"); - var parseMonthByShortName = /* @__PURE__ */ __name((value) => { - const monthIdx = MONTHS.indexOf(value); - if (monthIdx < 0) { - throw new TypeError(`Invalid month: ${value}`); - } - return monthIdx + 1; - }, "parseMonthByShortName"); - var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; - var validateDayOfMonth = /* @__PURE__ */ __name((year, month, day) => { - let maxDays = DAYS_IN_MONTH[month]; - if (month === 1 && isLeapYear(year)) { - maxDays = 29; - } - if (day > maxDays) { - throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`); - } - }, "validateDayOfMonth"); - var isLeapYear = /* @__PURE__ */ __name((year) => { - return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); - }, "isLeapYear"); - var parseDateValue = /* @__PURE__ */ __name((value, type, lower, upper) => { - const dateVal = strictParseByte(stripLeadingZeroes(value)); - if (dateVal < lower || dateVal > upper) { - throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`); - } - return dateVal; - }, "parseDateValue"); - var parseMilliseconds = /* @__PURE__ */ __name((value) => { - if (value === null || value === void 0) { - return 0; - } - return strictParseFloat32("0." + value) * 1e3; - }, "parseMilliseconds"); - var parseOffsetToMilliseconds = /* @__PURE__ */ __name((value) => { - const directionStr = value[0]; - let direction = 1; - if (directionStr == "+") { - direction = 1; - } else if (directionStr == "-") { - direction = -1; - } else { - throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`); - } - const hour = Number(value.substring(1, 3)); - const minute = Number(value.substring(4, 6)); - return direction * (hour * 60 + minute) * 60 * 1e3; - }, "parseOffsetToMilliseconds"); - var stripLeadingZeroes = /* @__PURE__ */ __name((value) => { - let idx = 0; - while (idx < value.length - 1 && value.charAt(idx) === "0") { - idx++; - } - if (idx === 0) { - return value; - } - return value.slice(idx); - }, "stripLeadingZeroes"); - var _ServiceException = class _ServiceException2 extends Error { - constructor(options) { - super(options.message); - Object.setPrototypeOf(this, _ServiceException2.prototype); - this.name = options.name; - this.$fault = options.$fault; - this.$metadata = options.$metadata; - } - }; - __name(_ServiceException, "ServiceException"); - var ServiceException = _ServiceException; - var decorateServiceException = /* @__PURE__ */ __name((exception, additions = {}) => { - Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => { - if (exception[k] == void 0 || exception[k] === "") { - exception[k] = v; - } - }); - const message = exception.message || exception.Message || "UnknownError"; - exception.message = message; - delete exception.Message; - return exception; - }, "decorateServiceException"); - var throwDefaultError = /* @__PURE__ */ __name(({ output, parsedBody, exceptionCtor, errorCode }) => { - const $metadata = deserializeMetadata(output); - const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0; - const response = new exceptionCtor({ - name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError", - $fault: "client", - $metadata - }); - throw decorateServiceException(response, parsedBody); - }, "throwDefaultError"); - var withBaseException = /* @__PURE__ */ __name((ExceptionCtor) => { - return ({ output, parsedBody, errorCode }) => { - throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode }); - }; - }, "withBaseException"); - var deserializeMetadata = /* @__PURE__ */ __name((output) => ({ - httpStatusCode: output.statusCode, - requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], - extendedRequestId: output.headers["x-amz-id-2"], - cfId: output.headers["x-amz-cf-id"] - }), "deserializeMetadata"); - var loadConfigsForDefaultMode = /* @__PURE__ */ __name((mode) => { - switch (mode) { - case "standard": - return { - retryMode: "standard", - connectionTimeout: 3100 - }; - case "in-region": - return { - retryMode: "standard", - connectionTimeout: 1100 - }; - case "cross-region": - return { - retryMode: "standard", - connectionTimeout: 3100 - }; - case "mobile": - return { - retryMode: "standard", - connectionTimeout: 3e4 - }; - default: - return {}; - } - }, "loadConfigsForDefaultMode"); - var warningEmitted = false; - var emitWarningIfUnsupportedVersion = /* @__PURE__ */ __name((version2) => { - if (version2 && !warningEmitted && parseInt(version2.substring(1, version2.indexOf("."))) < 14) { - warningEmitted = true; - } - }, "emitWarningIfUnsupportedVersion"); - var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - const checksumAlgorithms = []; - for (const id in import_types.AlgorithmId) { - const algorithmId = import_types.AlgorithmId[id]; - if (runtimeConfig[algorithmId] === void 0) { - continue; - } - checksumAlgorithms.push({ - algorithmId: () => algorithmId, - checksumConstructor: () => runtimeConfig[algorithmId] - }); - } - return { - _checksumAlgorithms: checksumAlgorithms, - addChecksumAlgorithm(algo) { - this._checksumAlgorithms.push(algo); - }, - checksumAlgorithms() { - return this._checksumAlgorithms; - } - }; - }, "getChecksumConfiguration"); - var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { - const runtimeConfig = {}; - clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => { - runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor(); - }); - return runtimeConfig; - }, "resolveChecksumRuntimeConfig"); - var getRetryConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - let _retryStrategy = runtimeConfig.retryStrategy; - return { - setRetryStrategy(retryStrategy) { - _retryStrategy = retryStrategy; - }, - retryStrategy() { - return _retryStrategy; - } - }; - }, "getRetryConfiguration"); - var resolveRetryRuntimeConfig = /* @__PURE__ */ __name((retryStrategyConfiguration) => { - const runtimeConfig = {}; - runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy(); - return runtimeConfig; - }, "resolveRetryRuntimeConfig"); - var getDefaultExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return { - ...getChecksumConfiguration(runtimeConfig), - ...getRetryConfiguration(runtimeConfig) - }; - }, "getDefaultExtensionConfiguration"); - var getDefaultClientConfiguration = getDefaultExtensionConfiguration; - var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return { - ...resolveChecksumRuntimeConfig(config), - ...resolveRetryRuntimeConfig(config) - }; - }, "resolveDefaultRuntimeConfig"); - function extendedEncodeURIComponent(str) { - return encodeURIComponent(str).replace(/[!'()*]/g, function(c) { - return "%" + c.charCodeAt(0).toString(16).toUpperCase(); - }); - } - __name(extendedEncodeURIComponent, "extendedEncodeURIComponent"); - var getArrayIfSingleItem = /* @__PURE__ */ __name((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem"); - var getValueFromTextNode = /* @__PURE__ */ __name((obj) => { - const textNodeName = "#text"; - for (const key in obj) { - if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) { - obj[key] = obj[key][textNodeName]; - } else if (typeof obj[key] === "object" && obj[key] !== null) { - obj[key] = getValueFromTextNode(obj[key]); - } - } - return obj; - }, "getValueFromTextNode"); - var StringWrapper = /* @__PURE__ */ __name(function() { - const Class = Object.getPrototypeOf(this).constructor; - const Constructor = Function.bind.apply(String, [null, ...arguments]); - const instance = new Constructor(); - Object.setPrototypeOf(instance, Class.prototype); - return instance; - }, "StringWrapper"); - StringWrapper.prototype = Object.create(String.prototype, { - constructor: { - value: StringWrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - Object.setPrototypeOf(StringWrapper, String); - var _LazyJsonString = class _LazyJsonString2 extends StringWrapper { - deserializeJSON() { - return JSON.parse(super.toString()); - } - toJSON() { - return super.toString(); - } - static fromObject(object) { - if (object instanceof _LazyJsonString2) { - return object; - } else if (object instanceof String || typeof object === "string") { - return new _LazyJsonString2(object); - } - return new _LazyJsonString2(JSON.stringify(object)); - } - }; - __name(_LazyJsonString, "LazyJsonString"); - var LazyJsonString = _LazyJsonString; - function map(arg0, arg1, arg2) { - let target; - let filter; - let instructions; - if (typeof arg1 === "undefined" && typeof arg2 === "undefined") { - target = {}; - instructions = arg0; - } else { - target = arg0; - if (typeof arg1 === "function") { - filter = arg1; - instructions = arg2; - return mapWithFilter(target, filter, instructions); - } else { - instructions = arg1; - } - } - for (const key of Object.keys(instructions)) { - if (!Array.isArray(instructions[key])) { - target[key] = instructions[key]; - continue; - } - applyInstruction(target, null, instructions, key); - } - return target; - } - __name(map, "map"); - var convertMap = /* @__PURE__ */ __name((target) => { - const output = {}; - for (const [k, v] of Object.entries(target || {})) { - output[k] = [, v]; - } - return output; - }, "convertMap"); - var take = /* @__PURE__ */ __name((source, instructions) => { - const out = {}; - for (const key in instructions) { - applyInstruction(out, source, instructions, key); - } - return out; - }, "take"); - var mapWithFilter = /* @__PURE__ */ __name((target, filter, instructions) => { - return map( - target, - Object.entries(instructions).reduce( - (_instructions, [key, value]) => { - if (Array.isArray(value)) { - _instructions[key] = value; - } else { - if (typeof value === "function") { - _instructions[key] = [filter, value()]; - } else { - _instructions[key] = [filter, value]; - } - } - return _instructions; - }, - {} - ) - ); - }, "mapWithFilter"); - var applyInstruction = /* @__PURE__ */ __name((target, source, instructions, targetKey) => { - if (source !== null) { - let instruction = instructions[targetKey]; - if (typeof instruction === "function") { - instruction = [, instruction]; - } - const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction; - if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) { - target[targetKey] = valueFn(source[sourceKey]); - } - return; - } - let [filter, value] = instructions[targetKey]; - if (typeof value === "function") { - let _value; - const defaultFilterPassed = filter === void 0 && (_value = value()) != null; - const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter; - if (defaultFilterPassed) { - target[targetKey] = _value; - } else if (customFilterPassed) { - target[targetKey] = value(); - } - } else { - const defaultFilterPassed = filter === void 0 && value != null; - const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter; - if (defaultFilterPassed || customFilterPassed) { - target[targetKey] = value; - } - } - }, "applyInstruction"); - var nonNullish = /* @__PURE__ */ __name((_) => _ != null, "nonNullish"); - var pass = /* @__PURE__ */ __name((_) => _, "pass"); - var resolvedPath = /* @__PURE__ */ __name((resolvedPath2, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => { - if (input != null && input[memberName] !== void 0) { - const labelValue = labelValueProvider(); - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: " + memberName + "."); - } - resolvedPath2 = resolvedPath2.replace( - uriLabel, - isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent(segment)).join("/") : extendedEncodeURIComponent(labelValue) - ); - } else { - throw new Error("No value provided for input HTTP label: " + memberName + "."); - } - return resolvedPath2; - }, "resolvedPath"); - var serializeFloat = /* @__PURE__ */ __name((value) => { - if (value !== value) { - return "NaN"; - } - switch (value) { - case Infinity: - return "Infinity"; - case -Infinity: - return "-Infinity"; - default: - return value; - } - }, "serializeFloat"); - var _json = /* @__PURE__ */ __name((obj) => { - if (obj == null) { - return {}; - } - if (Array.isArray(obj)) { - return obj.filter((_) => _ != null).map(_json); - } - if (typeof obj === "object") { - const target = {}; - for (const key of Object.keys(obj)) { - if (obj[key] == null) { - continue; - } - target[key] = _json(obj[key]); - } - return target; - } - return obj; - }, "_json"); - function splitEvery(value, delimiter, numDelimiters) { - if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) { - throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery."); - } - const segments = value.split(delimiter); - if (numDelimiters === 1) { - return segments; - } - const compoundSegments = []; - let currentSegment = ""; - for (let i = 0; i < segments.length; i++) { - if (currentSegment === "") { - currentSegment = segments[i]; - } else { - currentSegment += delimiter + segments[i]; - } - if ((i + 1) % numDelimiters === 0) { - compoundSegments.push(currentSegment); - currentSegment = ""; - } - } - if (currentSegment !== "") { - compoundSegments.push(currentSegment); - } - return compoundSegments; - } - __name(splitEvery, "splitEvery"); - } -}); - -// node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/check-content-length-header.js -var require_check_content_length_header = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/check-content-length-header.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getCheckContentLengthHeaderPlugin = exports2.checkContentLengthHeaderMiddlewareOptions = exports2.checkContentLengthHeader = void 0; - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var CONTENT_LENGTH_HEADER = "content-length"; - function checkContentLengthHeader() { - return (next, context) => async (args) => { - var _a; - const { request } = args; - if (protocol_http_1.HttpRequest.isInstance(request)) { - if (!request.headers[CONTENT_LENGTH_HEADER]) { - const message = `Are you using a Stream of unknown length as the Body of a PutObject request? Consider using Upload instead from @aws-sdk/lib-storage.`; - if (typeof ((_a = context === null || context === void 0 ? void 0 : context.logger) === null || _a === void 0 ? void 0 : _a.warn) === "function" && !(context.logger instanceof smithy_client_1.NoOpLogger)) { - context.logger.warn(message); - } else { - console.warn(message); - } - } - } - return next({ ...args }); - }; - } - exports2.checkContentLengthHeader = checkContentLengthHeader; - exports2.checkContentLengthHeaderMiddlewareOptions = { - step: "finalizeRequest", - tags: ["CHECK_CONTENT_LENGTH_HEADER"], - name: "getCheckContentLengthHeaderPlugin", - override: true - }; - var getCheckContentLengthHeaderPlugin = (unused) => ({ - applyToStack: (clientStack) => { - clientStack.add(checkContentLengthHeader(), exports2.checkContentLengthHeaderMiddlewareOptions); - } - }); - exports2.getCheckContentLengthHeaderPlugin = getCheckContentLengthHeaderPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/s3Configuration.js -var require_s3Configuration = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/s3Configuration.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveS3Config = void 0; - var resolveS3Config = (input) => { - var _a, _b, _c; - return { - ...input, - forcePathStyle: (_a = input.forcePathStyle) !== null && _a !== void 0 ? _a : false, - useAccelerateEndpoint: (_b = input.useAccelerateEndpoint) !== null && _b !== void 0 ? _b : false, - disableMultiregionAccessPoints: (_c = input.disableMultiregionAccessPoints) !== null && _c !== void 0 ? _c : false - }; - }; - exports2.resolveS3Config = resolveS3Config; - } -}); - -// node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/throw-200-exceptions.js -var require_throw_200_exceptions = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/throw-200-exceptions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getThrow200ExceptionsPlugin = exports2.throw200ExceptionsMiddlewareOptions = exports2.throw200ExceptionsMiddleware = void 0; - var protocol_http_1 = require_dist_cjs2(); - var throw200ExceptionsMiddleware = (config) => (next) => async (args) => { - const result = await next(args); - const { response } = result; - if (!protocol_http_1.HttpResponse.isInstance(response)) - return result; - const { statusCode, body } = response; - if (statusCode < 200 || statusCode >= 300) - return result; - const bodyBytes = await collectBody(body, config); - const bodyString = await collectBodyString(bodyBytes, config); - if (bodyBytes.length === 0) { - const err = new Error("S3 aborted request"); - err.name = "InternalError"; - throw err; - } - if (bodyString && bodyString.match("")) { - response.statusCode = 400; - } - response.body = bodyBytes; - return result; - }; - exports2.throw200ExceptionsMiddleware = throw200ExceptionsMiddleware; - var collectBody = (streamBody = new Uint8Array(), context) => { - if (streamBody instanceof Uint8Array) { - return Promise.resolve(streamBody); - } - return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array()); - }; - var collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body)); - exports2.throw200ExceptionsMiddlewareOptions = { - relation: "after", - toMiddleware: "deserializerMiddleware", - tags: ["THROW_200_EXCEPTIONS", "S3"], - name: "throw200ExceptionsMiddleware", - override: true - }; - var getThrow200ExceptionsPlugin = (config) => ({ - applyToStack: (clientStack) => { - clientStack.addRelativeTo((0, exports2.throw200ExceptionsMiddleware)(config), exports2.throw200ExceptionsMiddlewareOptions); - } - }); - exports2.getThrow200ExceptionsPlugin = getThrow200ExceptionsPlugin; - } -}); - -// node_modules/@aws-sdk/util-arn-parser/dist-cjs/index.js -var require_dist_cjs17 = __commonJS({ - "node_modules/@aws-sdk/util-arn-parser/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.build = exports2.parse = exports2.validate = void 0; - var validate2 = (str) => typeof str === "string" && str.indexOf("arn:") === 0 && str.split(":").length >= 6; - exports2.validate = validate2; - var parse2 = (arn) => { - const segments = arn.split(":"); - if (segments.length < 6 || segments[0] !== "arn") - throw new Error("Malformed ARN"); - const [, partition, service, region, accountId, ...resource] = segments; - return { - partition, - service, - region, - accountId, - resource: resource.join(":") - }; - }; - exports2.parse = parse2; - var build = (arnObject) => { - const { partition = "aws", service, region, accountId, resource } = arnObject; - if ([service, region, accountId, resource].some((segment) => typeof segment !== "string")) { - throw new Error("Input ARN object is invalid"); - } - return `arn:${partition}:${service}:${region}:${accountId}:${resource}`; - }; - exports2.build = build; - } -}); - -// node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/validate-bucket-name.js -var require_validate_bucket_name = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/validate-bucket-name.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getValidateBucketNamePlugin = exports2.validateBucketNameMiddlewareOptions = exports2.validateBucketNameMiddleware = void 0; - var util_arn_parser_1 = require_dist_cjs17(); - function validateBucketNameMiddleware() { - return (next) => async (args) => { - const { input: { Bucket } } = args; - if (typeof Bucket === "string" && !(0, util_arn_parser_1.validate)(Bucket) && Bucket.indexOf("/") >= 0) { - const err = new Error(`Bucket name shouldn't contain '/', received '${Bucket}'`); - err.name = "InvalidBucketName"; - throw err; - } - return next({ ...args }); - }; - } - exports2.validateBucketNameMiddleware = validateBucketNameMiddleware; - exports2.validateBucketNameMiddlewareOptions = { - step: "initialize", - tags: ["VALIDATE_BUCKET_NAME"], - name: "validateBucketNameMiddleware", - override: true - }; - var getValidateBucketNamePlugin = (unused) => ({ - applyToStack: (clientStack) => { - clientStack.add(validateBucketNameMiddleware(), exports2.validateBucketNameMiddlewareOptions); - } - }); - exports2.getValidateBucketNamePlugin = getValidateBucketNamePlugin; - } -}); - -// node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/index.js -var require_dist_cjs18 = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_check_content_length_header(), exports2); - tslib_1.__exportStar(require_s3Configuration(), exports2); - tslib_1.__exportStar(require_throw_200_exceptions(), exports2); - tslib_1.__exportStar(require_validate_bucket_name(), exports2); - } -}); - -// node_modules/@smithy/property-provider/dist-cjs/index.js -var require_dist_cjs19 = __commonJS({ - "node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - CredentialsProviderError: () => CredentialsProviderError, - ProviderError: () => ProviderError, - TokenProviderError: () => TokenProviderError, - chain: () => chain, - fromStatic: () => fromStatic, - memoize: () => memoize - }); - module2.exports = __toCommonJS2(src_exports); - var _ProviderError = class _ProviderError2 extends Error { - constructor(message, tryNextLink = true) { - super(message); - this.tryNextLink = tryNextLink; - this.name = "ProviderError"; - Object.setPrototypeOf(this, _ProviderError2.prototype); - } - static from(error, tryNextLink = true) { - return Object.assign(new this(error.message, tryNextLink), error); - } - }; - __name(_ProviderError, "ProviderError"); - var ProviderError = _ProviderError; - var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError { - constructor(message, tryNextLink = true) { - super(message, tryNextLink); - this.tryNextLink = tryNextLink; - this.name = "CredentialsProviderError"; - Object.setPrototypeOf(this, _CredentialsProviderError2.prototype); - } - }; - __name(_CredentialsProviderError, "CredentialsProviderError"); - var CredentialsProviderError = _CredentialsProviderError; - var _TokenProviderError = class _TokenProviderError2 extends ProviderError { - constructor(message, tryNextLink = true) { - super(message, tryNextLink); - this.tryNextLink = tryNextLink; - this.name = "TokenProviderError"; - Object.setPrototypeOf(this, _TokenProviderError2.prototype); - } - }; - __name(_TokenProviderError, "TokenProviderError"); - var TokenProviderError = _TokenProviderError; - var chain = /* @__PURE__ */ __name((...providers) => async () => { - if (providers.length === 0) { - throw new ProviderError("No providers in chain"); - } - let lastProviderError; - for (const provider of providers) { - try { - const credentials = await provider(); - return credentials; - } catch (err) { - lastProviderError = err; - if (err == null ? void 0 : err.tryNextLink) { - continue; - } - throw err; - } - } - throw lastProviderError; - }, "chain"); - var fromStatic = /* @__PURE__ */ __name((staticValue) => () => Promise.resolve(staticValue), "fromStatic"); - var memoize = /* @__PURE__ */ __name((provider, isExpired, requiresRefresh) => { - let resolved; - let pending; - let hasResult; - let isConstant = false; - const coalesceProvider = /* @__PURE__ */ __name(async () => { - if (!pending) { - pending = provider(); - } - try { - resolved = await pending; - hasResult = true; - isConstant = false; - } finally { - pending = void 0; - } - return resolved; - }, "coalesceProvider"); - if (isExpired === void 0) { - return async (options) => { - if (!hasResult || (options == null ? void 0 : options.forceRefresh)) { - resolved = await coalesceProvider(); - } - return resolved; - }; - } - return async (options) => { - if (!hasResult || (options == null ? void 0 : options.forceRefresh)) { - resolved = await coalesceProvider(); - } - if (isConstant) { - return resolved; - } - if (requiresRefresh && !requiresRefresh(resolved)) { - isConstant = true; - return resolved; - } - if (isExpired(resolved)) { - await coalesceProvider(); - return resolved; - } - return resolved; - }; - }, "memoize"); - } -}); - -// node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.js -var tslib_es6_exports2 = {}; -__export(tslib_es6_exports2, { - __assign: () => __assign2, - __asyncDelegator: () => __asyncDelegator2, - __asyncGenerator: () => __asyncGenerator2, - __asyncValues: () => __asyncValues2, - __await: () => __await2, - __awaiter: () => __awaiter2, - __classPrivateFieldGet: () => __classPrivateFieldGet2, - __classPrivateFieldSet: () => __classPrivateFieldSet2, - __createBinding: () => __createBinding2, - __decorate: () => __decorate2, - __exportStar: () => __exportStar2, - __extends: () => __extends2, - __generator: () => __generator2, - __importDefault: () => __importDefault2, - __importStar: () => __importStar2, - __makeTemplateObject: () => __makeTemplateObject2, - __metadata: () => __metadata2, - __param: () => __param2, - __read: () => __read2, - __rest: () => __rest2, - __spread: () => __spread2, - __spreadArrays: () => __spreadArrays2, - __values: () => __values2 -}); -function __extends2(d, b) { - extendStatics2(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} -function __rest2(s, e) { - var t = {}; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} -function __decorate2(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") - r = Reflect.decorate(decorators, target, key, desc); - else - for (var i = decorators.length - 1; i >= 0; i--) - if (d = decorators[i]) - r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} -function __param2(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; -} -function __metadata2(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") - return Reflect.metadata(metadataKey, metadataValue); -} -function __awaiter2(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} -function __generator2(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; - } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; - } -} -function __createBinding2(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; -} -function __exportStar2(m, exports2) { - for (var p in m) - if (p !== "default" && !exports2.hasOwnProperty(p)) - exports2[p] = m[p]; -} -function __values2(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); -} -function __read2(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; -} -function __spread2() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read2(arguments[i])); - return ar; -} -function __spreadArrays2() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) - s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; -} -function __await2(v) { - return this instanceof __await2 ? (this.v = v, this) : new __await2(v); -} -function __asyncGenerator2(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; - } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); - } - } - function step(r) { - r.value instanceof __await2 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); - } - function fulfill(value) { - resume("next", value); - } - function reject(value) { - resume("throw", value); - } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); - } -} -function __asyncDelegator2(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function(e) { - throw e; - }), verb("return"), i[Symbol.iterator] = function() { - return this; - }, i; - function verb(n, f) { - i[n] = o[n] ? function(v) { - return (p = !p) ? { value: __await2(o[n](v)), done: n === "return" } : f ? f(v) : v; - } : f; - } -} -function __asyncValues2(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values2 === "function" ? __values2(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); - }); - }; - } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); - } -} -function __makeTemplateObject2(cooked, raw) { - if (Object.defineProperty) { - Object.defineProperty(cooked, "raw", { value: raw }); - } else { - cooked.raw = raw; - } - return cooked; -} -function __importStar2(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (Object.hasOwnProperty.call(mod, k)) - result[k] = mod[k]; - } - result.default = mod; - return result; -} -function __importDefault2(mod) { - return mod && mod.__esModule ? mod : { default: mod }; -} -function __classPrivateFieldGet2(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - return privateMap.get(receiver); -} -function __classPrivateFieldSet2(receiver, privateMap, value) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - privateMap.set(receiver, value); - return value; -} -var extendStatics2, __assign2; -var init_tslib_es62 = __esm({ - "node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.js"() { - extendStatics2 = function(d, b) { - extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (b2.hasOwnProperty(p)) - d2[p] = b2[p]; - }; - return extendStatics2(d, b); - }; - __assign2 = function() { - __assign2 = Object.assign || function __assign4(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign2.apply(this, arguments); - }; - } -}); - -// node_modules/@aws-sdk/util-utf8-browser/dist-cjs/pureJs.js -var require_pureJs = __commonJS({ - "node_modules/@aws-sdk/util-utf8-browser/dist-cjs/pureJs.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - var fromUtf8 = (input) => { - const bytes = []; - for (let i = 0, len = input.length; i < len; i++) { - const value = input.charCodeAt(i); - if (value < 128) { - bytes.push(value); - } else if (value < 2048) { - bytes.push(value >> 6 | 192, value & 63 | 128); - } else if (i + 1 < input.length && (value & 64512) === 55296 && (input.charCodeAt(i + 1) & 64512) === 56320) { - const surrogatePair = 65536 + ((value & 1023) << 10) + (input.charCodeAt(++i) & 1023); - bytes.push(surrogatePair >> 18 | 240, surrogatePair >> 12 & 63 | 128, surrogatePair >> 6 & 63 | 128, surrogatePair & 63 | 128); - } else { - bytes.push(value >> 12 | 224, value >> 6 & 63 | 128, value & 63 | 128); - } - } - return Uint8Array.from(bytes); - }; - exports2.fromUtf8 = fromUtf8; - var toUtf8 = (input) => { - let decoded = ""; - for (let i = 0, len = input.length; i < len; i++) { - const byte = input[i]; - if (byte < 128) { - decoded += String.fromCharCode(byte); - } else if (192 <= byte && byte < 224) { - const nextByte = input[++i]; - decoded += String.fromCharCode((byte & 31) << 6 | nextByte & 63); - } else if (240 <= byte && byte < 365) { - const surrogatePair = [byte, input[++i], input[++i], input[++i]]; - const encoded = "%" + surrogatePair.map((byteValue) => byteValue.toString(16)).join("%"); - decoded += decodeURIComponent(encoded); - } else { - decoded += String.fromCharCode((byte & 15) << 12 | (input[++i] & 63) << 6 | input[++i] & 63); - } - } - return decoded; - }; - exports2.toUtf8 = toUtf8; - } -}); - -// node_modules/@aws-sdk/util-utf8-browser/dist-cjs/whatwgEncodingApi.js -var require_whatwgEncodingApi = __commonJS({ - "node_modules/@aws-sdk/util-utf8-browser/dist-cjs/whatwgEncodingApi.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - function fromUtf8(input) { - return new TextEncoder().encode(input); - } - exports2.fromUtf8 = fromUtf8; - function toUtf8(input) { - return new TextDecoder("utf-8").decode(input); - } - exports2.toUtf8 = toUtf8; - } -}); - -// node_modules/@aws-sdk/util-utf8-browser/dist-cjs/index.js -var require_dist_cjs20 = __commonJS({ - "node_modules/@aws-sdk/util-utf8-browser/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8 = exports2.fromUtf8 = void 0; - var pureJs_1 = require_pureJs(); - var whatwgEncodingApi_1 = require_whatwgEncodingApi(); - var fromUtf8 = (input) => typeof TextEncoder === "function" ? (0, whatwgEncodingApi_1.fromUtf8)(input) : (0, pureJs_1.fromUtf8)(input); - exports2.fromUtf8 = fromUtf8; - var toUtf8 = (input) => typeof TextDecoder === "function" ? (0, whatwgEncodingApi_1.toUtf8)(input) : (0, pureJs_1.toUtf8)(input); - exports2.toUtf8 = toUtf8; - } -}); - -// node_modules/@aws-crypto/util/build/convertToBuffer.js -var require_convertToBuffer = __commonJS({ - "node_modules/@aws-crypto/util/build/convertToBuffer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.convertToBuffer = void 0; - var util_utf8_browser_1 = require_dist_cjs20(); - var fromUtf8 = typeof Buffer !== "undefined" && Buffer.from ? function(input) { - return Buffer.from(input, "utf8"); - } : util_utf8_browser_1.fromUtf8; - function convertToBuffer(data) { - if (data instanceof Uint8Array) - return data; - if (typeof data === "string") { - return fromUtf8(data); - } - if (ArrayBuffer.isView(data)) { - return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT); - } - return new Uint8Array(data); - } - exports2.convertToBuffer = convertToBuffer; - } -}); - -// node_modules/@aws-crypto/util/build/isEmptyData.js -var require_isEmptyData = __commonJS({ - "node_modules/@aws-crypto/util/build/isEmptyData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isEmptyData = void 0; - function isEmptyData(data) { - if (typeof data === "string") { - return data.length === 0; - } - return data.byteLength === 0; - } - exports2.isEmptyData = isEmptyData; - } -}); - -// node_modules/@aws-crypto/util/build/numToUint8.js -var require_numToUint8 = __commonJS({ - "node_modules/@aws-crypto/util/build/numToUint8.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.numToUint8 = void 0; - function numToUint8(num) { - return new Uint8Array([ - (num & 4278190080) >> 24, - (num & 16711680) >> 16, - (num & 65280) >> 8, - num & 255 - ]); - } - exports2.numToUint8 = numToUint8; - } -}); - -// node_modules/@aws-crypto/util/build/uint32ArrayFrom.js -var require_uint32ArrayFrom = __commonJS({ - "node_modules/@aws-crypto/util/build/uint32ArrayFrom.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.uint32ArrayFrom = void 0; - function uint32ArrayFrom(a_lookUpTable) { - if (!Uint32Array.from) { - var return_array = new Uint32Array(a_lookUpTable.length); - var a_index = 0; - while (a_index < a_lookUpTable.length) { - return_array[a_index] = a_lookUpTable[a_index]; - a_index += 1; - } - return return_array; - } - return Uint32Array.from(a_lookUpTable); - } - exports2.uint32ArrayFrom = uint32ArrayFrom; - } -}); - -// node_modules/@aws-crypto/util/build/index.js -var require_build = __commonJS({ - "node_modules/@aws-crypto/util/build/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.uint32ArrayFrom = exports2.numToUint8 = exports2.isEmptyData = exports2.convertToBuffer = void 0; - var convertToBuffer_1 = require_convertToBuffer(); - Object.defineProperty(exports2, "convertToBuffer", { enumerable: true, get: function() { - return convertToBuffer_1.convertToBuffer; - } }); - var isEmptyData_1 = require_isEmptyData(); - Object.defineProperty(exports2, "isEmptyData", { enumerable: true, get: function() { - return isEmptyData_1.isEmptyData; - } }); - var numToUint8_1 = require_numToUint8(); - Object.defineProperty(exports2, "numToUint8", { enumerable: true, get: function() { - return numToUint8_1.numToUint8; - } }); - var uint32ArrayFrom_1 = require_uint32ArrayFrom(); - Object.defineProperty(exports2, "uint32ArrayFrom", { enumerable: true, get: function() { - return uint32ArrayFrom_1.uint32ArrayFrom; - } }); - } -}); - -// node_modules/@aws-crypto/crc32/build/aws_crc32.js -var require_aws_crc32 = __commonJS({ - "node_modules/@aws-crypto/crc32/build/aws_crc32.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32 = void 0; - var tslib_1 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); - var util_1 = require_build(); - var index_1 = require_build2(); - var AwsCrc32 = ( - /** @class */ - function() { - function AwsCrc322() { - this.crc32 = new index_1.Crc32(); - } - AwsCrc322.prototype.update = function(toHash) { - if ((0, util_1.isEmptyData)(toHash)) - return; - this.crc32.update((0, util_1.convertToBuffer)(toHash)); - }; - AwsCrc322.prototype.digest = function() { - return tslib_1.__awaiter(this, void 0, void 0, function() { - return tslib_1.__generator(this, function(_a) { - return [2, (0, util_1.numToUint8)(this.crc32.digest())]; - }); - }); - }; - AwsCrc322.prototype.reset = function() { - this.crc32 = new index_1.Crc32(); - }; - return AwsCrc322; - }() - ); - exports2.AwsCrc32 = AwsCrc32; - } -}); - -// node_modules/@aws-crypto/crc32/build/index.js -var require_build2 = __commonJS({ - "node_modules/@aws-crypto/crc32/build/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32 = exports2.Crc32 = exports2.crc32 = void 0; - var tslib_1 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); - var util_1 = require_build(); - function crc32(data) { - return new Crc32().update(data).digest(); - } - exports2.crc32 = crc32; - var Crc32 = ( - /** @class */ - function() { - function Crc322() { - this.checksum = 4294967295; - } - Crc322.prototype.update = function(data) { - var e_1, _a; - try { - for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) { - var byte = data_1_1.value; - this.checksum = this.checksum >>> 8 ^ lookupTable[(this.checksum ^ byte) & 255]; - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (data_1_1 && !data_1_1.done && (_a = data_1.return)) - _a.call(data_1); - } finally { - if (e_1) - throw e_1.error; - } - } - return this; - }; - Crc322.prototype.digest = function() { - return (this.checksum ^ 4294967295) >>> 0; - }; - return Crc322; - }() - ); - exports2.Crc32 = Crc32; - var a_lookUpTable = [ - 0, - 1996959894, - 3993919788, - 2567524794, - 124634137, - 1886057615, - 3915621685, - 2657392035, - 249268274, - 2044508324, - 3772115230, - 2547177864, - 162941995, - 2125561021, - 3887607047, - 2428444049, - 498536548, - 1789927666, - 4089016648, - 2227061214, - 450548861, - 1843258603, - 4107580753, - 2211677639, - 325883990, - 1684777152, - 4251122042, - 2321926636, - 335633487, - 1661365465, - 4195302755, - 2366115317, - 997073096, - 1281953886, - 3579855332, - 2724688242, - 1006888145, - 1258607687, - 3524101629, - 2768942443, - 901097722, - 1119000684, - 3686517206, - 2898065728, - 853044451, - 1172266101, - 3705015759, - 2882616665, - 651767980, - 1373503546, - 3369554304, - 3218104598, - 565507253, - 1454621731, - 3485111705, - 3099436303, - 671266974, - 1594198024, - 3322730930, - 2970347812, - 795835527, - 1483230225, - 3244367275, - 3060149565, - 1994146192, - 31158534, - 2563907772, - 4023717930, - 1907459465, - 112637215, - 2680153253, - 3904427059, - 2013776290, - 251722036, - 2517215374, - 3775830040, - 2137656763, - 141376813, - 2439277719, - 3865271297, - 1802195444, - 476864866, - 2238001368, - 4066508878, - 1812370925, - 453092731, - 2181625025, - 4111451223, - 1706088902, - 314042704, - 2344532202, - 4240017532, - 1658658271, - 366619977, - 2362670323, - 4224994405, - 1303535960, - 984961486, - 2747007092, - 3569037538, - 1256170817, - 1037604311, - 2765210733, - 3554079995, - 1131014506, - 879679996, - 2909243462, - 3663771856, - 1141124467, - 855842277, - 2852801631, - 3708648649, - 1342533948, - 654459306, - 3188396048, - 3373015174, - 1466479909, - 544179635, - 3110523913, - 3462522015, - 1591671054, - 702138776, - 2966460450, - 3352799412, - 1504918807, - 783551873, - 3082640443, - 3233442989, - 3988292384, - 2596254646, - 62317068, - 1957810842, - 3939845945, - 2647816111, - 81470997, - 1943803523, - 3814918930, - 2489596804, - 225274430, - 2053790376, - 3826175755, - 2466906013, - 167816743, - 2097651377, - 4027552580, - 2265490386, - 503444072, - 1762050814, - 4150417245, - 2154129355, - 426522225, - 1852507879, - 4275313526, - 2312317920, - 282753626, - 1742555852, - 4189708143, - 2394877945, - 397917763, - 1622183637, - 3604390888, - 2714866558, - 953729732, - 1340076626, - 3518719985, - 2797360999, - 1068828381, - 1219638859, - 3624741850, - 2936675148, - 906185462, - 1090812512, - 3747672003, - 2825379669, - 829329135, - 1181335161, - 3412177804, - 3160834842, - 628085408, - 1382605366, - 3423369109, - 3138078467, - 570562233, - 1426400815, - 3317316542, - 2998733608, - 733239954, - 1555261956, - 3268935591, - 3050360625, - 752459403, - 1541320221, - 2607071920, - 3965973030, - 1969922972, - 40735498, - 2617837225, - 3943577151, - 1913087877, - 83908371, - 2512341634, - 3803740692, - 2075208622, - 213261112, - 2463272603, - 3855990285, - 2094854071, - 198958881, - 2262029012, - 4057260610, - 1759359992, - 534414190, - 2176718541, - 4139329115, - 1873836001, - 414664567, - 2282248934, - 4279200368, - 1711684554, - 285281116, - 2405801727, - 4167216745, - 1634467795, - 376229701, - 2685067896, - 3608007406, - 1308918612, - 956543938, - 2808555105, - 3495958263, - 1231636301, - 1047427035, - 2932959818, - 3654703836, - 1088359270, - 936918e3, - 2847714899, - 3736837829, - 1202900863, - 817233897, - 3183342108, - 3401237130, - 1404277552, - 615818150, - 3134207493, - 3453421203, - 1423857449, - 601450431, - 3009837614, - 3294710456, - 1567103746, - 711928724, - 3020668471, - 3272380065, - 1510334235, - 755167117 - ]; - var lookupTable = (0, util_1.uint32ArrayFrom)(a_lookUpTable); - var aws_crc32_1 = require_aws_crc32(); - Object.defineProperty(exports2, "AwsCrc32", { enumerable: true, get: function() { - return aws_crc32_1.AwsCrc32; - } }); - } -}); - -// node_modules/@smithy/util-hex-encoding/dist-cjs/index.js -var require_dist_cjs21 = __commonJS({ - "node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - fromHex: () => fromHex, - toHex: () => toHex - }); - module2.exports = __toCommonJS2(src_exports); - var SHORT_TO_HEX = {}; - var HEX_TO_SHORT = {}; - for (let i = 0; i < 256; i++) { - let encodedByte = i.toString(16).toLowerCase(); - if (encodedByte.length === 1) { - encodedByte = `0${encodedByte}`; - } - SHORT_TO_HEX[i] = encodedByte; - HEX_TO_SHORT[encodedByte] = i; - } - function fromHex(encoded) { - if (encoded.length % 2 !== 0) { - throw new Error("Hex encoded strings must have an even number length"); - } - const out = new Uint8Array(encoded.length / 2); - for (let i = 0; i < encoded.length; i += 2) { - const encodedByte = encoded.slice(i, i + 2).toLowerCase(); - if (encodedByte in HEX_TO_SHORT) { - out[i / 2] = HEX_TO_SHORT[encodedByte]; - } else { - throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`); - } - } - return out; - } - __name(fromHex, "fromHex"); - function toHex(bytes) { - let out = ""; - for (let i = 0; i < bytes.byteLength; i++) { - out += SHORT_TO_HEX[bytes[i]]; - } - return out; - } - __name(toHex, "toHex"); - } -}); - -// node_modules/@smithy/eventstream-codec/dist-cjs/index.js -var require_dist_cjs22 = __commonJS({ - "node_modules/@smithy/eventstream-codec/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - EventStreamCodec: () => EventStreamCodec, - HeaderMarshaller: () => HeaderMarshaller, - Int64: () => Int64, - MessageDecoderStream: () => MessageDecoderStream, - MessageEncoderStream: () => MessageEncoderStream, - SmithyMessageDecoderStream: () => SmithyMessageDecoderStream, - SmithyMessageEncoderStream: () => SmithyMessageEncoderStream - }); - module2.exports = __toCommonJS2(src_exports); - var import_crc322 = require_build2(); - var import_util_hex_encoding = require_dist_cjs21(); - var _Int64 = class _Int642 { - constructor(bytes) { - this.bytes = bytes; - if (bytes.byteLength !== 8) { - throw new Error("Int64 buffers must be exactly 8 bytes"); - } - } - static fromNumber(number) { - if (number > 9223372036854776e3 || number < -9223372036854776e3) { - throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`); - } - const bytes = new Uint8Array(8); - for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) { - bytes[i] = remaining; - } - if (number < 0) { - negate(bytes); - } - return new _Int642(bytes); - } - /** - * Called implicitly by infix arithmetic operators. - */ - valueOf() { - const bytes = this.bytes.slice(0); - const negative = bytes[0] & 128; - if (negative) { - negate(bytes); - } - return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1); - } - toString() { - return String(this.valueOf()); - } - }; - __name(_Int64, "Int64"); - var Int64 = _Int64; - function negate(bytes) { - for (let i = 0; i < 8; i++) { - bytes[i] ^= 255; - } - for (let i = 7; i > -1; i--) { - bytes[i]++; - if (bytes[i] !== 0) - break; - } - } - __name(negate, "negate"); - var _HeaderMarshaller = class _HeaderMarshaller { - constructor(toUtf8, fromUtf8) { - this.toUtf8 = toUtf8; - this.fromUtf8 = fromUtf8; - } - format(headers) { - const chunks = []; - for (const headerName of Object.keys(headers)) { - const bytes = this.fromUtf8(headerName); - chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName])); - } - const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0)); - let position = 0; - for (const chunk of chunks) { - out.set(chunk, position); - position += chunk.byteLength; - } - return out; - } - formatHeaderValue(header) { - switch (header.type) { - case "boolean": - return Uint8Array.from([ - header.value ? 0 : 1 - /* boolFalse */ - ]); - case "byte": - return Uint8Array.from([2, header.value]); - case "short": - const shortView = new DataView(new ArrayBuffer(3)); - shortView.setUint8( - 0, - 3 - /* short */ - ); - shortView.setInt16(1, header.value, false); - return new Uint8Array(shortView.buffer); - case "integer": - const intView = new DataView(new ArrayBuffer(5)); - intView.setUint8( - 0, - 4 - /* integer */ - ); - intView.setInt32(1, header.value, false); - return new Uint8Array(intView.buffer); - case "long": - const longBytes = new Uint8Array(9); - longBytes[0] = 5; - longBytes.set(header.value.bytes, 1); - return longBytes; - case "binary": - const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength)); - binView.setUint8( - 0, - 6 - /* byteArray */ - ); - binView.setUint16(1, header.value.byteLength, false); - const binBytes = new Uint8Array(binView.buffer); - binBytes.set(header.value, 3); - return binBytes; - case "string": - const utf8Bytes = this.fromUtf8(header.value); - const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength)); - strView.setUint8( - 0, - 7 - /* string */ - ); - strView.setUint16(1, utf8Bytes.byteLength, false); - const strBytes = new Uint8Array(strView.buffer); - strBytes.set(utf8Bytes, 3); - return strBytes; - case "timestamp": - const tsBytes = new Uint8Array(9); - tsBytes[0] = 8; - tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1); - return tsBytes; - case "uuid": - if (!UUID_PATTERN.test(header.value)) { - throw new Error(`Invalid UUID received: ${header.value}`); - } - const uuidBytes = new Uint8Array(17); - uuidBytes[0] = 9; - uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1); - return uuidBytes; - } - } - parse(headers) { - const out = {}; - let position = 0; - while (position < headers.byteLength) { - const nameLength = headers.getUint8(position++); - const name = this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, nameLength)); - position += nameLength; - switch (headers.getUint8(position++)) { - case 0: - out[name] = { - type: BOOLEAN_TAG, - value: true - }; - break; - case 1: - out[name] = { - type: BOOLEAN_TAG, - value: false - }; - break; - case 2: - out[name] = { - type: BYTE_TAG, - value: headers.getInt8(position++) - }; - break; - case 3: - out[name] = { - type: SHORT_TAG, - value: headers.getInt16(position, false) - }; - position += 2; - break; - case 4: - out[name] = { - type: INT_TAG, - value: headers.getInt32(position, false) - }; - position += 4; - break; - case 5: - out[name] = { - type: LONG_TAG, - value: new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)) - }; - position += 8; - break; - case 6: - const binaryLength = headers.getUint16(position, false); - position += 2; - out[name] = { - type: BINARY_TAG, - value: new Uint8Array(headers.buffer, headers.byteOffset + position, binaryLength) - }; - position += binaryLength; - break; - case 7: - const stringLength = headers.getUint16(position, false); - position += 2; - out[name] = { - type: STRING_TAG, - value: this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, stringLength)) - }; - position += stringLength; - break; - case 8: - out[name] = { - type: TIMESTAMP_TAG, - value: new Date(new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)).valueOf()) - }; - position += 8; - break; - case 9: - const uuidBytes = new Uint8Array(headers.buffer, headers.byteOffset + position, 16); - position += 16; - out[name] = { - type: UUID_TAG, - value: `${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(0, 4))}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(4, 6))}-${(0, import_util_hex_encoding.toHex)( - uuidBytes.subarray(6, 8) - )}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(8, 10))}-${(0, import_util_hex_encoding.toHex)(uuidBytes.subarray(10))}` - }; - break; - default: - throw new Error(`Unrecognized header type tag`); - } - } - return out; - } - }; - __name(_HeaderMarshaller, "HeaderMarshaller"); - var HeaderMarshaller = _HeaderMarshaller; - var BOOLEAN_TAG = "boolean"; - var BYTE_TAG = "byte"; - var SHORT_TAG = "short"; - var INT_TAG = "integer"; - var LONG_TAG = "long"; - var BINARY_TAG = "binary"; - var STRING_TAG = "string"; - var TIMESTAMP_TAG = "timestamp"; - var UUID_TAG = "uuid"; - var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/; - var import_crc32 = require_build2(); - var PRELUDE_MEMBER_LENGTH = 4; - var PRELUDE_LENGTH = PRELUDE_MEMBER_LENGTH * 2; - var CHECKSUM_LENGTH = 4; - var MINIMUM_MESSAGE_LENGTH = PRELUDE_LENGTH + CHECKSUM_LENGTH * 2; - function splitMessage({ byteLength, byteOffset, buffer }) { - if (byteLength < MINIMUM_MESSAGE_LENGTH) { - throw new Error("Provided message too short to accommodate event stream message overhead"); - } - const view = new DataView(buffer, byteOffset, byteLength); - const messageLength = view.getUint32(0, false); - if (byteLength !== messageLength) { - throw new Error("Reported message length does not match received message length"); - } - const headerLength = view.getUint32(PRELUDE_MEMBER_LENGTH, false); - const expectedPreludeChecksum = view.getUint32(PRELUDE_LENGTH, false); - const expectedMessageChecksum = view.getUint32(byteLength - CHECKSUM_LENGTH, false); - const checksummer = new import_crc32.Crc32().update(new Uint8Array(buffer, byteOffset, PRELUDE_LENGTH)); - if (expectedPreludeChecksum !== checksummer.digest()) { - throw new Error( - `The prelude checksum specified in the message (${expectedPreludeChecksum}) does not match the calculated CRC32 checksum (${checksummer.digest()})` - ); - } - checksummer.update( - new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH, byteLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH)) - ); - if (expectedMessageChecksum !== checksummer.digest()) { - throw new Error( - `The message checksum (${checksummer.digest()}) did not match the expected value of ${expectedMessageChecksum}` - ); - } - return { - headers: new DataView(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH, headerLength), - body: new Uint8Array( - buffer, - byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH + headerLength, - messageLength - headerLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH + CHECKSUM_LENGTH) - ) - }; - } - __name(splitMessage, "splitMessage"); - var _EventStreamCodec = class _EventStreamCodec { - constructor(toUtf8, fromUtf8) { - this.headerMarshaller = new HeaderMarshaller(toUtf8, fromUtf8); - this.messageBuffer = []; - this.isEndOfStream = false; - } - feed(message) { - this.messageBuffer.push(this.decode(message)); - } - endOfStream() { - this.isEndOfStream = true; - } - getMessage() { - const message = this.messageBuffer.pop(); - const isEndOfStream = this.isEndOfStream; - return { - getMessage() { - return message; - }, - isEndOfStream() { - return isEndOfStream; - } - }; - } - getAvailableMessages() { - const messages = this.messageBuffer; - this.messageBuffer = []; - const isEndOfStream = this.isEndOfStream; - return { - getMessages() { - return messages; - }, - isEndOfStream() { - return isEndOfStream; - } - }; - } - /** - * Convert a structured JavaScript object with tagged headers into a binary - * event stream message. - */ - encode({ headers: rawHeaders, body }) { - const headers = this.headerMarshaller.format(rawHeaders); - const length = headers.byteLength + body.byteLength + 16; - const out = new Uint8Array(length); - const view = new DataView(out.buffer, out.byteOffset, out.byteLength); - const checksum = new import_crc322.Crc32(); - view.setUint32(0, length, false); - view.setUint32(4, headers.byteLength, false); - view.setUint32(8, checksum.update(out.subarray(0, 8)).digest(), false); - out.set(headers, 12); - out.set(body, headers.byteLength + 12); - view.setUint32(length - 4, checksum.update(out.subarray(8, length - 4)).digest(), false); - return out; - } - /** - * Convert a binary event stream message into a JavaScript object with an - * opaque, binary body and tagged, parsed headers. - */ - decode(message) { - const { headers, body } = splitMessage(message); - return { headers: this.headerMarshaller.parse(headers), body }; - } - /** - * Convert a structured JavaScript object with tagged headers into a binary - * event stream message header. - */ - formatHeaders(rawHeaders) { - return this.headerMarshaller.format(rawHeaders); - } - }; - __name(_EventStreamCodec, "EventStreamCodec"); - var EventStreamCodec = _EventStreamCodec; - var _MessageDecoderStream = class _MessageDecoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const bytes of this.options.inputStream) { - const decoded = this.options.decoder.decode(bytes); - yield decoded; - } - } - }; - __name(_MessageDecoderStream, "MessageDecoderStream"); - var MessageDecoderStream = _MessageDecoderStream; - var _MessageEncoderStream = class _MessageEncoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const msg of this.options.messageStream) { - const encoded = this.options.encoder.encode(msg); - yield encoded; - } - if (this.options.includeEndFrame) { - yield new Uint8Array(0); - } - } - }; - __name(_MessageEncoderStream, "MessageEncoderStream"); - var MessageEncoderStream = _MessageEncoderStream; - var _SmithyMessageDecoderStream = class _SmithyMessageDecoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const message of this.options.messageStream) { - const deserialized = await this.options.deserializer(message); - if (deserialized === void 0) - continue; - yield deserialized; - } - } - }; - __name(_SmithyMessageDecoderStream, "SmithyMessageDecoderStream"); - var SmithyMessageDecoderStream = _SmithyMessageDecoderStream; - var _SmithyMessageEncoderStream = class _SmithyMessageEncoderStream { - constructor(options) { - this.options = options; - } - [Symbol.asyncIterator]() { - return this.asyncIterator(); - } - async *asyncIterator() { - for await (const chunk of this.options.inputStream) { - const payloadBuf = this.options.serializer(chunk); - yield payloadBuf; - } - } - }; - __name(_SmithyMessageEncoderStream, "SmithyMessageEncoderStream"); - var SmithyMessageEncoderStream = _SmithyMessageEncoderStream; - } -}); - -// node_modules/@smithy/util-middleware/dist-cjs/index.js -var require_dist_cjs23 = __commonJS({ - "node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - getSmithyContext: () => getSmithyContext, - normalizeProvider: () => normalizeProvider - }); - module2.exports = __toCommonJS2(src_exports); - var import_types = require_dist_cjs(); - var getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types.SMITHY_CONTEXT_KEY] || (context[import_types.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext"); - var normalizeProvider = /* @__PURE__ */ __name((input) => { - if (typeof input === "function") - return input; - const promisified = Promise.resolve(input); - return () => promisified; - }, "normalizeProvider"); - } -}); - -// node_modules/@smithy/signature-v4/dist-cjs/index.js -var require_dist_cjs24 = __commonJS({ - "node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - SignatureV4: () => SignatureV4, - clearCredentialCache: () => clearCredentialCache, - createScope: () => createScope, - getCanonicalHeaders: () => getCanonicalHeaders, - getCanonicalQuery: () => getCanonicalQuery, - getPayloadHash: () => getPayloadHash, - getSigningKey: () => getSigningKey, - moveHeadersToQuery: () => moveHeadersToQuery, - prepareRequest: () => prepareRequest - }); - module2.exports = __toCommonJS2(src_exports); - var import_eventstream_codec = require_dist_cjs22(); - var import_util_middleware = require_dist_cjs23(); - var import_util_utf83 = require_dist_cjs11(); - var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm"; - var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential"; - var AMZ_DATE_QUERY_PARAM = "X-Amz-Date"; - 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 AUTH_HEADER = "authorization"; - var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase(); - var DATE_HEADER = "date"; - 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 ALWAYS_UNSIGNABLE_HEADERS = { - authorization: true, - "cache-control": true, - connection: true, - expect: true, - from: true, - "keep-alive": true, - "max-forwards": true, - pragma: true, - referer: true, - te: true, - trailer: true, - "transfer-encoding": true, - upgrade: true, - "user-agent": true, - "x-amzn-trace-id": true - }; - var PROXY_HEADER_PATTERN = /^proxy-/; - var SEC_HEADER_PATTERN = /^sec-/; - var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256"; - var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD"; - var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD"; - var MAX_CACHE_SIZE = 50; - var KEY_TYPE_IDENTIFIER = "aws4_request"; - var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7; - var import_util_hex_encoding = require_dist_cjs21(); - var import_util_utf8 = require_dist_cjs11(); - var signingKeyCache = {}; - var cacheQueue = []; - var createScope = /* @__PURE__ */ __name((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope"); - var getSigningKey = /* @__PURE__ */ __name(async (sha256Constructor, credentials, shortDate, region, service) => { - const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId); - const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`; - if (cacheKey in signingKeyCache) { - return signingKeyCache[cacheKey]; - } - cacheQueue.push(cacheKey); - while (cacheQueue.length > MAX_CACHE_SIZE) { - delete signingKeyCache[cacheQueue.shift()]; - } - let key = `AWS4${credentials.secretAccessKey}`; - for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) { - key = await hmac(sha256Constructor, key, signable); - } - return signingKeyCache[cacheKey] = key; - }, "getSigningKey"); - var clearCredentialCache = /* @__PURE__ */ __name(() => { - cacheQueue.length = 0; - Object.keys(signingKeyCache).forEach((cacheKey) => { - delete signingKeyCache[cacheKey]; - }); - }, "clearCredentialCache"); - var hmac = /* @__PURE__ */ __name((ctor, secret, data) => { - const hash = new ctor(secret); - hash.update((0, import_util_utf8.toUint8Array)(data)); - return hash.digest(); - }, "hmac"); - var getCanonicalHeaders = /* @__PURE__ */ __name(({ headers }, unsignableHeaders, signableHeaders) => { - const canonical = {}; - for (const headerName of Object.keys(headers).sort()) { - if (headers[headerName] == void 0) { - continue; - } - const canonicalHeaderName = headerName.toLowerCase(); - if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) { - if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) { - continue; - } - } - canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " "); - } - return canonical; - }, "getCanonicalHeaders"); - var import_util_uri_escape = require_dist_cjs12(); - var getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => { - const keys = []; - const serialized = {}; - for (const key of Object.keys(query).sort()) { - if (key.toLowerCase() === SIGNATURE_HEADER) { - continue; - } - keys.push(key); - const value = query[key]; - if (typeof value === "string") { - serialized[key] = `${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value)}`; - } else if (Array.isArray(value)) { - serialized[key] = value.slice(0).reduce( - (encoded, value2) => encoded.concat([`${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), - [] - ).sort().join("&"); - } - } - return keys.map((key) => serialized[key]).filter((serialized2) => serialized2).join("&"); - }, "getCanonicalQuery"); - var import_is_array_buffer = require_dist_cjs8(); - var import_util_utf82 = require_dist_cjs11(); - var getPayloadHash = /* @__PURE__ */ __name(async ({ headers, body }, hashConstructor) => { - for (const headerName of Object.keys(headers)) { - if (headerName.toLowerCase() === SHA256_HEADER) { - return headers[headerName]; - } - } - if (body == void 0) { - return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"; - } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) { - const hashCtor = new hashConstructor(); - hashCtor.update((0, import_util_utf82.toUint8Array)(body)); - return (0, import_util_hex_encoding.toHex)(await hashCtor.digest()); - } - return UNSIGNED_PAYLOAD; - }, "getPayloadHash"); - var hasHeader = /* @__PURE__ */ __name((soughtHeader, headers) => { - soughtHeader = soughtHeader.toLowerCase(); - for (const headerName of Object.keys(headers)) { - if (soughtHeader === headerName.toLowerCase()) { - return true; - } - } - return false; - }, "hasHeader"); - var cloneRequest = /* @__PURE__ */ __name(({ headers, query, ...rest }) => ({ - ...rest, - headers: { ...headers }, - query: query ? cloneQuery(query) : void 0 - }), "cloneRequest"); - var cloneQuery = /* @__PURE__ */ __name((query) => Object.keys(query).reduce((carry, paramName) => { - const param = query[paramName]; - return { - ...carry, - [paramName]: Array.isArray(param) ? [...param] : param - }; - }, {}), "cloneQuery"); - var moveHeadersToQuery = /* @__PURE__ */ __name((request, options = {}) => { - var _a; - const { headers, query = {} } = typeof request.clone === "function" ? request.clone() : cloneRequest(request); - for (const name of Object.keys(headers)) { - const lname = name.toLowerCase(); - if (lname.slice(0, 6) === "x-amz-" && !((_a = options.unhoistableHeaders) == null ? void 0 : _a.has(lname))) { - query[name] = headers[name]; - delete headers[name]; - } - } - return { - ...request, - headers, - query - }; - }, "moveHeadersToQuery"); - var prepareRequest = /* @__PURE__ */ __name((request) => { - request = typeof request.clone === "function" ? request.clone() : cloneRequest(request); - for (const headerName of Object.keys(request.headers)) { - if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) { - delete request.headers[headerName]; - } - } - return request; - }, "prepareRequest"); - var iso8601 = /* @__PURE__ */ __name((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601"); - var toDate = /* @__PURE__ */ __name((time) => { - if (typeof time === "number") { - return new Date(time * 1e3); - } - if (typeof time === "string") { - if (Number(time)) { - return new Date(Number(time) * 1e3); - } - return new Date(time); - } - return time; - }, "toDate"); - var _SignatureV4 = class _SignatureV4 { - constructor({ - applyChecksum, - credentials, - region, - service, - sha256, - uriEscapePath = true - }) { - this.headerMarshaller = new import_eventstream_codec.HeaderMarshaller(import_util_utf83.toUtf8, import_util_utf83.fromUtf8); - this.service = service; - this.sha256 = sha256; - this.uriEscapePath = uriEscapePath; - this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true; - this.regionProvider = (0, import_util_middleware.normalizeProvider)(region); - this.credentialProvider = (0, import_util_middleware.normalizeProvider)(credentials); - } - async presign(originalRequest, options = {}) { - const { - signingDate = /* @__PURE__ */ new Date(), - expiresIn = 3600, - unsignableHeaders, - unhoistableHeaders, - signableHeaders, - signingRegion, - signingService - } = options; - const credentials = await this.credentialProvider(); - this.validateResolvedCredentials(credentials); - const region = signingRegion ?? await this.regionProvider(); - 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" - ); - } - const scope = createScope(shortDate, region, signingService ?? this.service); - const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders }); - if (credentials.sessionToken) { - request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken; - } - request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER; - request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`; - 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] = getCanonicalHeaderList(canonicalHeaders); - request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature( - longDate, - scope, - this.getSigningKey(credentials, region, shortDate, signingService), - this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)) - ); - return request; - } - async sign(toSign, options) { - if (typeof toSign === "string") { - return this.signString(toSign, options); - } else if (toSign.headers && toSign.payload) { - return this.signEvent(toSign, options); - } else if (toSign.message) { - return this.signMessage(toSign, options); - } else { - return this.signRequest(toSign, options); - } - } - async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) { - const region = signingRegion ?? await this.regionProvider(); - 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(); - hash.update(headers); - const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest()); - const stringToSign = [ - EVENT_ALGORITHM_IDENTIFIER, - longDate, - scope, - priorSignature, - hashedHeaders, - hashedPayload - ].join("\n"); - return this.signString(stringToSign, { signingDate, signingRegion: region, signingService }); - } - async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) { - const promise = this.signEvent( - { - headers: this.headerMarshaller.format(signableMessage.message.headers), - payload: signableMessage.message.body - }, - { - signingDate, - signingRegion, - signingService, - priorSignature: signableMessage.priorSignature - } - ); - return promise.then((signature) => { - return { message: signableMessage.message, signature }; - }); - } - async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) { - const credentials = await this.credentialProvider(); - this.validateResolvedCredentials(credentials); - const region = signingRegion ?? await this.regionProvider(); - const { shortDate } = formatDate(signingDate); - const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService)); - hash.update((0, import_util_utf83.toUint8Array)(stringToSign)); - return (0, import_util_hex_encoding.toHex)(await hash.digest()); - } - async signRequest(requestToSign, { - signingDate = /* @__PURE__ */ new Date(), - signableHeaders, - unsignableHeaders, - signingRegion, - signingService - } = {}) { - const credentials = await this.credentialProvider(); - this.validateResolvedCredentials(credentials); - const region = signingRegion ?? await this.regionProvider(); - const request = prepareRequest(requestToSign); - const { longDate, shortDate } = formatDate(signingDate); - const scope = createScope(shortDate, region, signingService ?? this.service); - request.headers[AMZ_DATE_HEADER] = longDate; - if (credentials.sessionToken) { - request.headers[TOKEN_HEADER] = credentials.sessionToken; - } - const payloadHash = await getPayloadHash(request, this.sha256); - if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) { - request.headers[SHA256_HEADER] = payloadHash; - } - const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders); - const signature = await this.getSignature( - longDate, - scope, - this.getSigningKey(credentials, region, shortDate, signingService), - this.createCanonicalRequest(request, canonicalHeaders, payloadHash) - ); - 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_utf83.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 == null ? void 0 : pathSegment.length) === 0) - continue; - if (pathSegment === ".") - continue; - if (pathSegment === "..") { - normalizedPathSegments.pop(); - } else { - normalizedPathSegments.push(pathSegment); - } - } - const normalizedPath = `${(path == null ? void 0 : path.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path == null ? void 0 : path.endsWith("/")) ? "/" : ""}`; - const doubleEncoded = encodeURIComponent(normalizedPath); - return doubleEncoded.replace(/%2F/g, "/"); - } - return path; - } - async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) { - const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest); - const hash = new this.sha256(await keyPromise); - hash.update((0, import_util_utf83.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"); - } - } - }; - __name(_SignatureV4, "SignatureV4"); - var SignatureV4 = _SignatureV4; - 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"); - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthConfiguration.js -var require_awsAuthConfiguration = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthConfiguration.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveSigV4AuthConfig = exports2.resolveAwsAuthConfig = void 0; - var property_provider_1 = require_dist_cjs19(); - var signature_v4_1 = require_dist_cjs24(); - var util_middleware_1 = require_dist_cjs23(); - var CREDENTIAL_EXPIRE_WINDOW = 3e5; - var resolveAwsAuthConfig = (input) => { - const normalizedCreds = input.credentials ? normalizeCredentialProvider(input.credentials) : input.credentialDefaultProvider(input); - const { signingEscapePath = true, systemClockOffset = input.systemClockOffset || 0, sha256 } = input; - let signer; - if (input.signer) { - signer = (0, util_middleware_1.normalizeProvider)(input.signer); - } else if (input.regionInfoProvider) { - signer = () => (0, util_middleware_1.normalizeProvider)(input.region)().then(async (region) => [ - await input.regionInfoProvider(region, { - useFipsEndpoint: await input.useFipsEndpoint(), - useDualstackEndpoint: await input.useDualstackEndpoint() - }) || {}, - region - ]).then(([regionInfo, region]) => { - const { signingRegion, signingService } = regionInfo; - input.signingRegion = input.signingRegion || signingRegion || region; - input.signingName = input.signingName || signingService || input.serviceId; - const params = { - ...input, - credentials: normalizedCreds, - region: input.signingRegion, - service: input.signingName, - sha256, - uriEscapePath: signingEscapePath - }; - const SignerCtor = input.signerConstructor || signature_v4_1.SignatureV4; - return new SignerCtor(params); - }); - } else { - signer = async (authScheme) => { - authScheme = Object.assign({}, { - name: "sigv4", - signingName: input.signingName || input.defaultSigningName, - signingRegion: await (0, util_middleware_1.normalizeProvider)(input.region)(), - properties: {} - }, authScheme); - const signingRegion = authScheme.signingRegion; - const signingService = authScheme.signingName; - input.signingRegion = input.signingRegion || signingRegion; - input.signingName = input.signingName || signingService || input.serviceId; - const params = { - ...input, - credentials: normalizedCreds, - region: input.signingRegion, - service: input.signingName, - sha256, - uriEscapePath: signingEscapePath - }; - const SignerCtor = input.signerConstructor || signature_v4_1.SignatureV4; - return new SignerCtor(params); - }; - } - return { - ...input, - systemClockOffset, - signingEscapePath, - credentials: normalizedCreds, - signer - }; - }; - exports2.resolveAwsAuthConfig = resolveAwsAuthConfig; - var resolveSigV4AuthConfig = (input) => { - const normalizedCreds = input.credentials ? normalizeCredentialProvider(input.credentials) : input.credentialDefaultProvider(input); - const { signingEscapePath = true, systemClockOffset = input.systemClockOffset || 0, sha256 } = input; - let signer; - if (input.signer) { - signer = (0, util_middleware_1.normalizeProvider)(input.signer); - } else { - signer = (0, util_middleware_1.normalizeProvider)(new signature_v4_1.SignatureV4({ - credentials: normalizedCreds, - region: input.region, - service: input.signingName, - sha256, - uriEscapePath: signingEscapePath - })); - } - return { - ...input, - systemClockOffset, - signingEscapePath, - credentials: normalizedCreds, - signer - }; - }; - exports2.resolveSigV4AuthConfig = resolveSigV4AuthConfig; - var normalizeCredentialProvider = (credentials) => { - if (typeof credentials === "function") { - return (0, property_provider_1.memoize)(credentials, (credentials2) => credentials2.expiration !== void 0 && credentials2.expiration.getTime() - Date.now() < CREDENTIAL_EXPIRE_WINDOW, (credentials2) => credentials2.expiration !== void 0); - } - return (0, util_middleware_1.normalizeProvider)(credentials); - }; - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getSkewCorrectedDate.js -var require_getSkewCorrectedDate = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getSkewCorrectedDate.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSkewCorrectedDate = void 0; - var getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset); - exports2.getSkewCorrectedDate = getSkewCorrectedDate; - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/isClockSkewed.js -var require_isClockSkewed = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/isClockSkewed.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isClockSkewed = void 0; - var getSkewCorrectedDate_1 = require_getSkewCorrectedDate(); - var isClockSkewed = (clockTime, systemClockOffset) => Math.abs((0, getSkewCorrectedDate_1.getSkewCorrectedDate)(systemClockOffset).getTime() - clockTime) >= 3e5; - exports2.isClockSkewed = isClockSkewed; - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getUpdatedSystemClockOffset.js -var require_getUpdatedSystemClockOffset = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/utils/getUpdatedSystemClockOffset.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getUpdatedSystemClockOffset = void 0; - var isClockSkewed_1 = require_isClockSkewed(); - var getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => { - const clockTimeInMs = Date.parse(clockTime); - if ((0, isClockSkewed_1.isClockSkewed)(clockTimeInMs, currentSystemClockOffset)) { - return clockTimeInMs - Date.now(); - } - return currentSystemClockOffset; - }; - exports2.getUpdatedSystemClockOffset = getUpdatedSystemClockOffset; - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js -var require_awsAuthMiddleware = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSigV4AuthPlugin = exports2.getAwsAuthPlugin = exports2.awsAuthMiddlewareOptions = exports2.awsAuthMiddleware = void 0; - var protocol_http_1 = require_dist_cjs2(); - var getSkewCorrectedDate_1 = require_getSkewCorrectedDate(); - var getUpdatedSystemClockOffset_1 = require_getUpdatedSystemClockOffset(); - var awsAuthMiddleware = (options) => (next, context) => async function(args) { - var _a, _b, _c, _d; - if (!protocol_http_1.HttpRequest.isInstance(args.request)) - return next(args); - const authScheme = (_c = (_b = (_a = context.endpointV2) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.authSchemes) === null || _c === void 0 ? void 0 : _c[0]; - const multiRegionOverride = (authScheme === null || authScheme === void 0 ? void 0 : authScheme.name) === "sigv4a" ? (_d = authScheme === null || authScheme === void 0 ? void 0 : authScheme.signingRegionSet) === null || _d === void 0 ? void 0 : _d.join(",") : void 0; - const signer = await options.signer(authScheme); - const output = await next({ - ...args, - request: await signer.sign(args.request, { - signingDate: (0, getSkewCorrectedDate_1.getSkewCorrectedDate)(options.systemClockOffset), - signingRegion: multiRegionOverride || context["signing_region"], - signingService: context["signing_service"] - }) - }).catch((error) => { - var _a2; - const serverTime = (_a2 = error.ServerTime) !== null && _a2 !== void 0 ? _a2 : getDateHeader(error.$response); - if (serverTime) { - options.systemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(serverTime, options.systemClockOffset); - } - throw error; - }); - const dateHeader = getDateHeader(output.response); - if (dateHeader) { - options.systemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(dateHeader, options.systemClockOffset); - } - return output; - }; - exports2.awsAuthMiddleware = awsAuthMiddleware; - var getDateHeader = (response) => { - var _a, _b, _c; - return protocol_http_1.HttpResponse.isInstance(response) ? (_b = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.date) !== null && _b !== void 0 ? _b : (_c = response.headers) === null || _c === void 0 ? void 0 : _c.Date : void 0; - }; - exports2.awsAuthMiddlewareOptions = { - name: "awsAuthMiddleware", - tags: ["SIGNATURE", "AWSAUTH"], - relation: "after", - toMiddleware: "retryMiddleware", - override: true - }; - var getAwsAuthPlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.addRelativeTo((0, exports2.awsAuthMiddleware)(options), exports2.awsAuthMiddlewareOptions); - } - }); - exports2.getAwsAuthPlugin = getAwsAuthPlugin; - exports2.getSigV4AuthPlugin = exports2.getAwsAuthPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js -var require_dist_cjs25 = __commonJS({ - "node_modules/@aws-sdk/middleware-signing/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_awsAuthConfiguration(), exports2); - tslib_1.__exportStar(require_awsAuthMiddleware(), exports2); - } -}); - -// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/configurations.js -var require_configurations = __commonJS({ - "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/configurations.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveUserAgentConfig = void 0; - function resolveUserAgentConfig(input) { - return { - ...input, - customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent - }; - } - exports2.resolveUserAgentConfig = resolveUserAgentConfig; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json -var require_partitions = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json"(exports2, module2) { - module2.exports = { - partitions: [{ - id: "aws", - outputs: { - dnsSuffix: "amazonaws.com", - dualStackDnsSuffix: "api.aws", - implicitGlobalRegion: "us-east-1", - name: "aws", - supportsDualStack: true, - supportsFIPS: true - }, - regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$", - regions: { - "af-south-1": { - description: "Africa (Cape Town)" - }, - "ap-east-1": { - description: "Asia Pacific (Hong Kong)" - }, - "ap-northeast-1": { - description: "Asia Pacific (Tokyo)" - }, - "ap-northeast-2": { - description: "Asia Pacific (Seoul)" - }, - "ap-northeast-3": { - description: "Asia Pacific (Osaka)" - }, - "ap-south-1": { - description: "Asia Pacific (Mumbai)" - }, - "ap-south-2": { - description: "Asia Pacific (Hyderabad)" - }, - "ap-southeast-1": { - description: "Asia Pacific (Singapore)" - }, - "ap-southeast-2": { - description: "Asia Pacific (Sydney)" - }, - "ap-southeast-3": { - description: "Asia Pacific (Jakarta)" - }, - "ap-southeast-4": { - description: "Asia Pacific (Melbourne)" - }, - "aws-global": { - description: "AWS Standard global region" - }, - "ca-central-1": { - description: "Canada (Central)" - }, - "eu-central-1": { - description: "Europe (Frankfurt)" - }, - "eu-central-2": { - description: "Europe (Zurich)" - }, - "eu-north-1": { - description: "Europe (Stockholm)" - }, - "eu-south-1": { - description: "Europe (Milan)" - }, - "eu-south-2": { - description: "Europe (Spain)" - }, - "eu-west-1": { - description: "Europe (Ireland)" - }, - "eu-west-2": { - description: "Europe (London)" - }, - "eu-west-3": { - description: "Europe (Paris)" - }, - "il-central-1": { - description: "Israel (Tel Aviv)" - }, - "me-central-1": { - description: "Middle East (UAE)" - }, - "me-south-1": { - description: "Middle East (Bahrain)" - }, - "sa-east-1": { - description: "South America (Sao Paulo)" - }, - "us-east-1": { - description: "US East (N. Virginia)" - }, - "us-east-2": { - description: "US East (Ohio)" - }, - "us-west-1": { - description: "US West (N. California)" - }, - "us-west-2": { - description: "US West (Oregon)" - } - } - }, { - id: "aws-cn", - outputs: { - dnsSuffix: "amazonaws.com.cn", - dualStackDnsSuffix: "api.amazonwebservices.com.cn", - implicitGlobalRegion: "cn-northwest-1", - name: "aws-cn", - supportsDualStack: true, - supportsFIPS: true - }, - regionRegex: "^cn\\-\\w+\\-\\d+$", - regions: { - "aws-cn-global": { - description: "AWS China global region" - }, - "cn-north-1": { - description: "China (Beijing)" - }, - "cn-northwest-1": { - description: "China (Ningxia)" - } - } - }, { - id: "aws-us-gov", - outputs: { - dnsSuffix: "amazonaws.com", - dualStackDnsSuffix: "api.aws", - implicitGlobalRegion: "us-gov-west-1", - name: "aws-us-gov", - supportsDualStack: true, - supportsFIPS: true - }, - regionRegex: "^us\\-gov\\-\\w+\\-\\d+$", - regions: { - "aws-us-gov-global": { - description: "AWS GovCloud (US) global region" - }, - "us-gov-east-1": { - description: "AWS GovCloud (US-East)" - }, - "us-gov-west-1": { - description: "AWS GovCloud (US-West)" - } - } - }, { - id: "aws-iso", - outputs: { - dnsSuffix: "c2s.ic.gov", - dualStackDnsSuffix: "c2s.ic.gov", - implicitGlobalRegion: "us-iso-east-1", - name: "aws-iso", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^us\\-iso\\-\\w+\\-\\d+$", - regions: { - "aws-iso-global": { - description: "AWS ISO (US) global region" - }, - "us-iso-east-1": { - description: "US ISO East" - }, - "us-iso-west-1": { - description: "US ISO WEST" - } - } - }, { - id: "aws-iso-b", - outputs: { - dnsSuffix: "sc2s.sgov.gov", - dualStackDnsSuffix: "sc2s.sgov.gov", - implicitGlobalRegion: "us-isob-east-1", - name: "aws-iso-b", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^us\\-isob\\-\\w+\\-\\d+$", - regions: { - "aws-iso-b-global": { - description: "AWS ISOB (US) global region" - }, - "us-isob-east-1": { - description: "US ISOB East (Ohio)" - } - } - }, { - id: "aws-iso-e", - outputs: { - dnsSuffix: "cloud.adc-e.uk", - dualStackDnsSuffix: "cloud.adc-e.uk", - implicitGlobalRegion: "eu-isoe-west-1", - name: "aws-iso-e", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$", - regions: {} - }, { - id: "aws-iso-f", - outputs: { - dnsSuffix: "csp.hci.ic.gov", - dualStackDnsSuffix: "csp.hci.ic.gov", - implicitGlobalRegion: "us-isof-south-1", - name: "aws-iso-f", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^us\\-isof\\-\\w+\\-\\d+$", - regions: {} - }], - version: "1.1" - }; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partition.js -var require_partition = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partition.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getUserAgentPrefix = exports2.useDefaultPartitionInfo = exports2.setPartitionInfo = exports2.partition = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - var partitions_json_1 = tslib_1.__importDefault(require_partitions()); - var selectedPartitionsInfo = partitions_json_1.default; - var selectedUserAgentPrefix = ""; - var partition = (value) => { - const { partitions } = selectedPartitionsInfo; - for (const partition2 of partitions) { - const { regions, outputs } = partition2; - for (const [region, regionData] of Object.entries(regions)) { - if (region === value) { - return { - ...outputs, - ...regionData - }; - } - } - } - for (const partition2 of partitions) { - const { regionRegex, outputs } = partition2; - if (new RegExp(regionRegex).test(value)) { - return { - ...outputs - }; - } - } - const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws"); - if (!DEFAULT_PARTITION) { - throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."); - } - return { - ...DEFAULT_PARTITION.outputs - }; - }; - exports2.partition = partition; - var setPartitionInfo = (partitionsInfo, userAgentPrefix = "") => { - selectedPartitionsInfo = partitionsInfo; - selectedUserAgentPrefix = userAgentPrefix; - }; - exports2.setPartitionInfo = setPartitionInfo; - var useDefaultPartitionInfo = () => { - (0, exports2.setPartitionInfo)(partitions_json_1.default, ""); - }; - exports2.useDefaultPartitionInfo = useDefaultPartitionInfo; - var getUserAgentPrefix = () => selectedUserAgentPrefix; - exports2.getUserAgentPrefix = getUserAgentPrefix; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isIpAddress.js -var require_isIpAddress = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isIpAddress.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isIpAddress = void 0; - var IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`); - var isIpAddress = (value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"); - exports2.isIpAddress = isIpAddress; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/debugId.js -var require_debugId = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/debugId.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.debugId = void 0; - exports2.debugId = "endpoints"; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/toDebugString.js -var require_toDebugString = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/toDebugString.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toDebugString = void 0; - function toDebugString(input) { - if (typeof input !== "object" || input == null) { - return input; - } - if ("ref" in input) { - return `$${toDebugString(input.ref)}`; - } - if ("fn" in input) { - return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`; - } - return JSON.stringify(input, null, 2); - } - exports2.toDebugString = toDebugString; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/index.js -var require_debug = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/debug/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_debugId(), exports2); - tslib_1.__exportStar(require_toDebugString(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointError.js -var require_EndpointError = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointError.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EndpointError = void 0; - var EndpointError = class extends Error { - constructor(message) { - super(message); - this.name = "EndpointError"; - } - }; - exports2.EndpointError = EndpointError; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointRuleObject.js -var require_EndpointRuleObject = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/EndpointRuleObject.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/ErrorRuleObject.js -var require_ErrorRuleObject = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/ErrorRuleObject.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/RuleSetObject.js -var require_RuleSetObject = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/RuleSetObject.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/TreeRuleObject.js -var require_TreeRuleObject = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/TreeRuleObject.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/shared.js -var require_shared = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/shared.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/types/index.js -var require_types = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/types/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_EndpointError(), exports2); - tslib_1.__exportStar(require_EndpointRuleObject(), exports2); - tslib_1.__exportStar(require_ErrorRuleObject(), exports2); - tslib_1.__exportStar(require_RuleSetObject(), exports2); - tslib_1.__exportStar(require_TreeRuleObject(), exports2); - tslib_1.__exportStar(require_shared(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isValidHostLabel.js -var require_isValidHostLabel = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isValidHostLabel.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isValidHostLabel = void 0; - var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`); - var isValidHostLabel = (value, allowSubDomains = false) => { - if (!allowSubDomains) { - return VALID_HOST_LABEL_REGEX.test(value); - } - const labels = value.split("."); - for (const label of labels) { - if (!(0, exports2.isValidHostLabel)(label)) { - return false; - } - } - return true; - }; - exports2.isValidHostLabel = isValidHostLabel; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/isVirtualHostableS3Bucket.js -var require_isVirtualHostableS3Bucket = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/isVirtualHostableS3Bucket.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isVirtualHostableS3Bucket = void 0; - var isIpAddress_1 = require_isIpAddress(); - var isValidHostLabel_1 = require_isValidHostLabel(); - var isVirtualHostableS3Bucket = (value, allowSubDomains = false) => { - if (allowSubDomains) { - for (const label of value.split(".")) { - if (!(0, exports2.isVirtualHostableS3Bucket)(label)) { - return false; - } - } - return true; - } - if (!(0, isValidHostLabel_1.isValidHostLabel)(value)) { - return false; - } - if (value.length < 3 || value.length > 63) { - return false; - } - if (value !== value.toLowerCase()) { - return false; - } - if ((0, isIpAddress_1.isIpAddress)(value)) { - return false; - } - return true; - }; - exports2.isVirtualHostableS3Bucket = isVirtualHostableS3Bucket; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/parseArn.js -var require_parseArn = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/parseArn.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseArn = void 0; - var parseArn = (value) => { - const segments = value.split(":"); - if (segments.length < 6) - return null; - const [arn, partition, service, region, accountId, ...resourceId] = segments; - if (arn !== "arn" || partition === "" || service === "" || resourceId[0] === "") - return null; - return { - partition, - service, - region, - accountId, - resourceId: resourceId[0].includes("/") ? resourceId[0].split("/") : resourceId - }; - }; - exports2.parseArn = parseArn; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/index.js -var require_aws = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_isVirtualHostableS3Bucket(), exports2); - tslib_1.__exportStar(require_parseArn(), exports2); - tslib_1.__exportStar(require_partition(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/booleanEquals.js -var require_booleanEquals = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/booleanEquals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.booleanEquals = void 0; - var booleanEquals = (value1, value2) => value1 === value2; - exports2.booleanEquals = booleanEquals; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttrPathList.js -var require_getAttrPathList = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttrPathList.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getAttrPathList = void 0; - var types_1 = require_types(); - var getAttrPathList = (path) => { - const parts = path.split("."); - const pathList = []; - for (const part of parts) { - const squareBracketIndex = part.indexOf("["); - if (squareBracketIndex !== -1) { - if (part.indexOf("]") !== part.length - 1) { - throw new types_1.EndpointError(`Path: '${path}' does not end with ']'`); - } - const arrayIndex = part.slice(squareBracketIndex + 1, -1); - if (Number.isNaN(parseInt(arrayIndex))) { - throw new types_1.EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`); - } - if (squareBracketIndex !== 0) { - pathList.push(part.slice(0, squareBracketIndex)); - } - pathList.push(arrayIndex); - } else { - pathList.push(part); - } - } - return pathList; - }; - exports2.getAttrPathList = getAttrPathList; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttr.js -var require_getAttr = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/getAttr.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getAttr = void 0; - var types_1 = require_types(); - var getAttrPathList_1 = require_getAttrPathList(); - var getAttr = (value, path) => (0, getAttrPathList_1.getAttrPathList)(path).reduce((acc, index) => { - if (typeof acc !== "object") { - throw new types_1.EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`); - } else if (Array.isArray(acc)) { - return acc[parseInt(index)]; - } - return acc[index]; - }, value); - exports2.getAttr = getAttr; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isSet.js -var require_isSet = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/isSet.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isSet = void 0; - var isSet = (value) => value != null; - exports2.isSet = isSet; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/not.js -var require_not = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/not.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.not = void 0; - var not = (value) => !value; - exports2.not = not; - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/abort.js -var require_abort = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/abort.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/auth.js -var require_auth = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/auth.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HttpAuthLocation = void 0; - var types_1 = require_dist_cjs(); - Object.defineProperty(exports2, "HttpAuthLocation", { enumerable: true, get: function() { - return types_1.HttpAuthLocation; - } }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/blob/blob-types.js -var require_blob_types = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/blob/blob-types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/checksum.js -var require_checksum = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/checksum.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/client.js -var require_client = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/client.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/command.js -var require_command = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/command.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/connection.js -var require_connection = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/connection.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/credentials.js -var require_credentials = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/credentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/crypto.js -var require_crypto = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/crypto.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/dns.js -var require_dns = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/dns.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HostAddressType = void 0; - var HostAddressType; - (function(HostAddressType2) { - HostAddressType2["AAAA"] = "AAAA"; - HostAddressType2["A"] = "A"; - })(HostAddressType = exports2.HostAddressType || (exports2.HostAddressType = {})); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/encode.js -var require_encode = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/encode.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/endpoint.js -var require_endpoint = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/endpoint.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EndpointURLScheme = void 0; - var types_1 = require_dist_cjs(); - Object.defineProperty(exports2, "EndpointURLScheme", { enumerable: true, get: function() { - return types_1.EndpointURLScheme; - } }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/eventStream.js -var require_eventStream = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/eventStream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/extensions/index.js -var require_extensions = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/extensions/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/http.js -var require_http = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/http.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/AnonymousIdentity.js -var require_AnonymousIdentity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/AnonymousIdentity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/AwsCredentialIdentity.js -var require_AwsCredentialIdentity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/AwsCredentialIdentity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/Identity.js -var require_Identity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/Identity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/LoginIdentity.js -var require_LoginIdentity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/LoginIdentity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/TokenIdentity.js -var require_TokenIdentity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/TokenIdentity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/identity/index.js -var require_identity = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/identity/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_AnonymousIdentity(), exports2); - tslib_1.__exportStar(require_AwsCredentialIdentity(), exports2); - tslib_1.__exportStar(require_Identity(), exports2); - tslib_1.__exportStar(require_LoginIdentity(), exports2); - tslib_1.__exportStar(require_TokenIdentity(), exports2); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/logger.js -var require_logger = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/logger.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/middleware.js -var require_middleware = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/middleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/pagination.js -var require_pagination = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/pagination.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/profile.js -var require_profile = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/profile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/request.js -var require_request = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/request.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/response.js -var require_response = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/response.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/retry.js -var require_retry = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/retry.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/serde.js -var require_serde = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/serde.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/shapes.js -var require_shapes = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/shapes.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/signature.js -var require_signature = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/signature.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/stream.js -var require_stream = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/stream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/token.js -var require_token = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/token.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/transfer.js -var require_transfer = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/transfer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.RequestHandlerProtocol = void 0; - var types_1 = require_dist_cjs(); - Object.defineProperty(exports2, "RequestHandlerProtocol", { enumerable: true, get: function() { - return types_1.RequestHandlerProtocol; - } }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/uri.js -var require_uri = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/uri.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/util.js -var require_util = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/util.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/waiter.js -var require_waiter = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/waiter.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/types/dist-cjs/index.js -var require_dist_cjs26 = __commonJS({ - "node_modules/@aws-sdk/types/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_abort(), exports2); - tslib_1.__exportStar(require_auth(), exports2); - tslib_1.__exportStar(require_blob_types(), exports2); - tslib_1.__exportStar(require_checksum(), exports2); - tslib_1.__exportStar(require_client(), exports2); - tslib_1.__exportStar(require_command(), exports2); - tslib_1.__exportStar(require_connection(), exports2); - tslib_1.__exportStar(require_credentials(), exports2); - tslib_1.__exportStar(require_crypto(), exports2); - tslib_1.__exportStar(require_dns(), exports2); - tslib_1.__exportStar(require_encode(), exports2); - tslib_1.__exportStar(require_endpoint(), exports2); - tslib_1.__exportStar(require_eventStream(), exports2); - tslib_1.__exportStar(require_extensions(), exports2); - tslib_1.__exportStar(require_http(), exports2); - tslib_1.__exportStar(require_identity(), exports2); - tslib_1.__exportStar(require_logger(), exports2); - tslib_1.__exportStar(require_middleware(), exports2); - tslib_1.__exportStar(require_pagination(), exports2); - tslib_1.__exportStar(require_profile(), exports2); - tslib_1.__exportStar(require_request(), exports2); - tslib_1.__exportStar(require_response(), exports2); - tslib_1.__exportStar(require_retry(), exports2); - tslib_1.__exportStar(require_serde(), exports2); - tslib_1.__exportStar(require_shapes(), exports2); - tslib_1.__exportStar(require_signature(), exports2); - tslib_1.__exportStar(require_stream(), exports2); - tslib_1.__exportStar(require_token(), exports2); - tslib_1.__exportStar(require_transfer(), exports2); - tslib_1.__exportStar(require_uri(), exports2); - tslib_1.__exportStar(require_util(), exports2); - tslib_1.__exportStar(require_waiter(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/parseURL.js -var require_parseURL = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/parseURL.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseURL = void 0; - var types_1 = require_dist_cjs26(); - var isIpAddress_1 = require_isIpAddress(); - var DEFAULT_PORTS = { - [types_1.EndpointURLScheme.HTTP]: 80, - [types_1.EndpointURLScheme.HTTPS]: 443 - }; - var parseURL = (value) => { - const whatwgURL = (() => { - try { - if (value instanceof URL) { - return value; - } - if (typeof value === "object" && "hostname" in value) { - const { hostname: hostname2, port, protocol: protocol2 = "", path = "", query = {} } = value; - const url = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path}`); - url.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&"); - return url; - } - return new URL(value); - } catch (error) { - return null; - } - })(); - if (!whatwgURL) { - console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`); - return null; - } - const urlString = whatwgURL.href; - const { host, hostname, pathname, protocol, search } = whatwgURL; - if (search) { - return null; - } - const scheme = protocol.slice(0, -1); - if (!Object.values(types_1.EndpointURLScheme).includes(scheme)) { - return null; - } - const isIp = (0, isIpAddress_1.isIpAddress)(hostname); - const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`); - const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`; - return { - scheme, - authority, - path: pathname, - normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`, - isIp - }; - }; - exports2.parseURL = parseURL; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/stringEquals.js -var require_stringEquals = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/stringEquals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.stringEquals = void 0; - var stringEquals = (value1, value2) => value1 === value2; - exports2.stringEquals = stringEquals; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/substring.js -var require_substring = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/substring.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.substring = void 0; - var substring = (input, start, stop, reverse) => { - if (start >= stop || input.length < stop) { - return null; - } - if (!reverse) { - return input.substring(start, stop); - } - return input.substring(input.length - stop, input.length - start); - }; - exports2.substring = substring; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/uriEncode.js -var require_uriEncode = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/uriEncode.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.uriEncode = void 0; - var uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`); - exports2.uriEncode = uriEncode; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/index.js -var require_lib = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.aws = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - exports2.aws = tslib_1.__importStar(require_aws()); - tslib_1.__exportStar(require_booleanEquals(), exports2); - tslib_1.__exportStar(require_getAttr(), exports2); - tslib_1.__exportStar(require_isSet(), exports2); - tslib_1.__exportStar(require_isValidHostLabel(), exports2); - tslib_1.__exportStar(require_not(), exports2); - tslib_1.__exportStar(require_parseURL(), exports2); - tslib_1.__exportStar(require_stringEquals(), exports2); - tslib_1.__exportStar(require_substring(), exports2); - tslib_1.__exportStar(require_uriEncode(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTemplate.js -var require_evaluateTemplate = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTemplate.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateTemplate = void 0; - var lib_1 = require_lib(); - var evaluateTemplate = (template, options) => { - const evaluatedTemplateArr = []; - const templateContext = { - ...options.endpointParams, - ...options.referenceRecord - }; - let currentIndex = 0; - while (currentIndex < template.length) { - const openingBraceIndex = template.indexOf("{", currentIndex); - if (openingBraceIndex === -1) { - evaluatedTemplateArr.push(template.slice(currentIndex)); - break; - } - evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex)); - const closingBraceIndex = template.indexOf("}", openingBraceIndex); - if (closingBraceIndex === -1) { - evaluatedTemplateArr.push(template.slice(openingBraceIndex)); - break; - } - if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") { - evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex)); - currentIndex = closingBraceIndex + 2; - } - const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex); - if (parameterName.includes("#")) { - const [refName, attrName] = parameterName.split("#"); - evaluatedTemplateArr.push((0, lib_1.getAttr)(templateContext[refName], attrName)); - } else { - evaluatedTemplateArr.push(templateContext[parameterName]); - } - currentIndex = closingBraceIndex + 1; - } - return evaluatedTemplateArr.join(""); - }; - exports2.evaluateTemplate = evaluateTemplate; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getReferenceValue.js -var require_getReferenceValue = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getReferenceValue.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getReferenceValue = void 0; - var getReferenceValue = ({ ref }, options) => { - const referenceRecord = { - ...options.endpointParams, - ...options.referenceRecord - }; - return referenceRecord[ref]; - }; - exports2.getReferenceValue = getReferenceValue; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateExpression.js -var require_evaluateExpression = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateExpression.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateExpression = void 0; - var types_1 = require_types(); - var callFunction_1 = require_callFunction(); - var evaluateTemplate_1 = require_evaluateTemplate(); - var getReferenceValue_1 = require_getReferenceValue(); - var evaluateExpression = (obj, keyName, options) => { - if (typeof obj === "string") { - return (0, evaluateTemplate_1.evaluateTemplate)(obj, options); - } else if (obj["fn"]) { - return (0, callFunction_1.callFunction)(obj, options); - } else if (obj["ref"]) { - return (0, getReferenceValue_1.getReferenceValue)(obj, options); - } - throw new types_1.EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`); - }; - exports2.evaluateExpression = evaluateExpression; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/callFunction.js -var require_callFunction = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/callFunction.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.callFunction = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - var lib = tslib_1.__importStar(require_lib()); - var evaluateExpression_1 = require_evaluateExpression(); - var callFunction = ({ fn, argv }, options) => { - const evaluatedArgs = argv.map((arg) => ["boolean", "number"].includes(typeof arg) ? arg : (0, evaluateExpression_1.evaluateExpression)(arg, "arg", options)); - return fn.split(".").reduce((acc, key) => acc[key], lib)(...evaluatedArgs); - }; - exports2.callFunction = callFunction; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateCondition.js -var require_evaluateCondition = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateCondition.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateCondition = void 0; - var debug_1 = require_debug(); - var types_1 = require_types(); - var callFunction_1 = require_callFunction(); - var evaluateCondition = ({ assign, ...fnArgs }, options) => { - var _a, _b; - if (assign && assign in options.referenceRecord) { - throw new types_1.EndpointError(`'${assign}' is already defined in Reference Record.`); - } - const value = (0, callFunction_1.callFunction)(fnArgs, options); - (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `evaluateCondition: ${(0, debug_1.toDebugString)(fnArgs)} = ${(0, debug_1.toDebugString)(value)}`); - return { - result: value === "" ? true : !!value, - ...assign != null && { toAssign: { name: assign, value } } - }; - }; - exports2.evaluateCondition = evaluateCondition; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateConditions.js -var require_evaluateConditions = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateConditions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateConditions = void 0; - var debug_1 = require_debug(); - var evaluateCondition_1 = require_evaluateCondition(); - var evaluateConditions = (conditions = [], options) => { - var _a, _b; - const conditionsReferenceRecord = {}; - for (const condition of conditions) { - const { result, toAssign } = (0, evaluateCondition_1.evaluateCondition)(condition, { - ...options, - referenceRecord: { - ...options.referenceRecord, - ...conditionsReferenceRecord - } - }); - if (!result) { - return { result }; - } - if (toAssign) { - conditionsReferenceRecord[toAssign.name] = toAssign.value; - (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `assign: ${toAssign.name} := ${(0, debug_1.toDebugString)(toAssign.value)}`); - } - } - return { result: true, referenceRecord: conditionsReferenceRecord }; - }; - exports2.evaluateConditions = evaluateConditions; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointHeaders.js -var require_getEndpointHeaders = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointHeaders.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointHeaders = void 0; - var types_1 = require_types(); - var evaluateExpression_1 = require_evaluateExpression(); - var getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({ - ...acc, - [headerKey]: headerVal.map((headerValEntry) => { - const processedExpr = (0, evaluateExpression_1.evaluateExpression)(headerValEntry, "Header value entry", options); - if (typeof processedExpr !== "string") { - throw new types_1.EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`); - } - return processedExpr; - }) - }), {}); - exports2.getEndpointHeaders = getEndpointHeaders; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperty.js -var require_getEndpointProperty = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperty.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointProperty = void 0; - var types_1 = require_types(); - var evaluateTemplate_1 = require_evaluateTemplate(); - var getEndpointProperties_1 = require_getEndpointProperties(); - var getEndpointProperty = (property, options) => { - if (Array.isArray(property)) { - return property.map((propertyEntry) => (0, exports2.getEndpointProperty)(propertyEntry, options)); - } - switch (typeof property) { - case "string": - return (0, evaluateTemplate_1.evaluateTemplate)(property, options); - case "object": - if (property === null) { - throw new types_1.EndpointError(`Unexpected endpoint property: ${property}`); - } - return (0, getEndpointProperties_1.getEndpointProperties)(property, options); - case "boolean": - return property; - default: - throw new types_1.EndpointError(`Unexpected endpoint property type: ${typeof property}`); - } - }; - exports2.getEndpointProperty = getEndpointProperty; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperties.js -var require_getEndpointProperties = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointProperties.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointProperties = void 0; - var getEndpointProperty_1 = require_getEndpointProperty(); - var getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({ - ...acc, - [propertyKey]: (0, getEndpointProperty_1.getEndpointProperty)(propertyVal, options) - }), {}); - exports2.getEndpointProperties = getEndpointProperties; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointUrl.js -var require_getEndpointUrl = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/getEndpointUrl.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointUrl = void 0; - var types_1 = require_types(); - var evaluateExpression_1 = require_evaluateExpression(); - var getEndpointUrl = (endpointUrl, options) => { - const expression = (0, evaluateExpression_1.evaluateExpression)(endpointUrl, "Endpoint URL", options); - if (typeof expression === "string") { - try { - return new URL(expression); - } catch (error) { - console.error(`Failed to construct URL with ${expression}`, error); - throw error; - } - } - throw new types_1.EndpointError(`Endpoint URL must be a string, got ${typeof expression}`); - }; - exports2.getEndpointUrl = getEndpointUrl; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateEndpointRule.js -var require_evaluateEndpointRule = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateEndpointRule.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateEndpointRule = void 0; - var debug_1 = require_debug(); - var evaluateConditions_1 = require_evaluateConditions(); - var getEndpointHeaders_1 = require_getEndpointHeaders(); - var getEndpointProperties_1 = require_getEndpointProperties(); - var getEndpointUrl_1 = require_getEndpointUrl(); - var evaluateEndpointRule = (endpointRule, options) => { - var _a, _b; - const { conditions, endpoint } = endpointRule; - const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); - if (!result) { - return; - } - const endpointRuleOptions = { - ...options, - referenceRecord: { ...options.referenceRecord, ...referenceRecord } - }; - const { url, properties, headers } = endpoint; - (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, debug_1.debugId, `Resolving endpoint from template: ${(0, debug_1.toDebugString)(endpoint)}`); - return { - ...headers != void 0 && { - headers: (0, getEndpointHeaders_1.getEndpointHeaders)(headers, endpointRuleOptions) - }, - ...properties != void 0 && { - properties: (0, getEndpointProperties_1.getEndpointProperties)(properties, endpointRuleOptions) - }, - url: (0, getEndpointUrl_1.getEndpointUrl)(url, endpointRuleOptions) - }; - }; - exports2.evaluateEndpointRule = evaluateEndpointRule; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateErrorRule.js -var require_evaluateErrorRule = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateErrorRule.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateErrorRule = void 0; - var types_1 = require_types(); - var evaluateConditions_1 = require_evaluateConditions(); - var evaluateExpression_1 = require_evaluateExpression(); - var evaluateErrorRule = (errorRule, options) => { - const { conditions, error } = errorRule; - const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); - if (!result) { - return; - } - throw new types_1.EndpointError((0, evaluateExpression_1.evaluateExpression)(error, "Error", { - ...options, - referenceRecord: { ...options.referenceRecord, ...referenceRecord } - })); - }; - exports2.evaluateErrorRule = evaluateErrorRule; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTreeRule.js -var require_evaluateTreeRule = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateTreeRule.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateTreeRule = void 0; - var evaluateConditions_1 = require_evaluateConditions(); - var evaluateRules_1 = require_evaluateRules(); - var evaluateTreeRule = (treeRule, options) => { - const { conditions, rules } = treeRule; - const { result, referenceRecord } = (0, evaluateConditions_1.evaluateConditions)(conditions, options); - if (!result) { - return; - } - return (0, evaluateRules_1.evaluateRules)(rules, { - ...options, - referenceRecord: { ...options.referenceRecord, ...referenceRecord } - }); - }; - exports2.evaluateTreeRule = evaluateTreeRule; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateRules.js -var require_evaluateRules = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateRules.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.evaluateRules = void 0; - var types_1 = require_types(); - var evaluateEndpointRule_1 = require_evaluateEndpointRule(); - var evaluateErrorRule_1 = require_evaluateErrorRule(); - var evaluateTreeRule_1 = require_evaluateTreeRule(); - var evaluateRules = (rules, options) => { - for (const rule of rules) { - if (rule.type === "endpoint") { - const endpointOrUndefined = (0, evaluateEndpointRule_1.evaluateEndpointRule)(rule, options); - if (endpointOrUndefined) { - return endpointOrUndefined; - } - } else if (rule.type === "error") { - (0, evaluateErrorRule_1.evaluateErrorRule)(rule, options); - } else if (rule.type === "tree") { - const endpointOrUndefined = (0, evaluateTreeRule_1.evaluateTreeRule)(rule, options); - if (endpointOrUndefined) { - return endpointOrUndefined; - } - } else { - throw new types_1.EndpointError(`Unknown endpoint rule: ${rule}`); - } - } - throw new types_1.EndpointError(`Rules evaluation failed`); - }; - exports2.evaluateRules = evaluateRules; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/index.js -var require_utils = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_evaluateRules(), exports2); - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/resolveEndpoint.js -var require_resolveEndpoint = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/resolveEndpoint.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveEndpoint = void 0; - var debug_1 = require_debug(); - var types_1 = require_types(); - var utils_1 = require_utils(); - var resolveEndpoint = (ruleSetObject, options) => { - var _a, _b, _c, _d, _e, _f; - const { endpointParams, logger } = options; - const { parameters, rules } = ruleSetObject; - (_b = (_a = options.logger) === null || _a === void 0 ? void 0 : _a.debug) === null || _b === void 0 ? void 0 : _b.call(_a, `${debug_1.debugId} Initial EndpointParams: ${(0, debug_1.toDebugString)(endpointParams)}`); - const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]); - if (paramsWithDefault.length > 0) { - for (const [paramKey, paramDefaultValue] of paramsWithDefault) { - endpointParams[paramKey] = (_c = endpointParams[paramKey]) !== null && _c !== void 0 ? _c : paramDefaultValue; - } - } - const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k); - for (const requiredParam of requiredParams) { - if (endpointParams[requiredParam] == null) { - throw new types_1.EndpointError(`Missing required parameter: '${requiredParam}'`); - } - } - const endpoint = (0, utils_1.evaluateRules)(rules, { endpointParams, logger, referenceRecord: {} }); - if ((_d = options.endpointParams) === null || _d === void 0 ? void 0 : _d.Endpoint) { - try { - const givenEndpoint = new URL(options.endpointParams.Endpoint); - const { protocol, port } = givenEndpoint; - endpoint.url.protocol = protocol; - endpoint.url.port = port; - } catch (e) { - } - } - (_f = (_e = options.logger) === null || _e === void 0 ? void 0 : _e.debug) === null || _f === void 0 ? void 0 : _f.call(_e, `${debug_1.debugId} Resolved endpoint: ${(0, debug_1.toDebugString)(endpoint)}`); - return endpoint; - }; - exports2.resolveEndpoint = resolveEndpoint; - } -}); - -// node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js -var require_dist_cjs27 = __commonJS({ - "node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_partition(), exports2); - tslib_1.__exportStar(require_isIpAddress(), exports2); - tslib_1.__exportStar(require_resolveEndpoint(), exports2); - tslib_1.__exportStar(require_types(), exports2); - } -}); - -// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/constants.js -var require_constants = __commonJS({ - "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/constants.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UA_ESCAPE_CHAR = exports2.UA_VALUE_ESCAPE_REGEX = exports2.UA_NAME_ESCAPE_REGEX = exports2.UA_NAME_SEPARATOR = exports2.SPACE = exports2.X_AMZ_USER_AGENT = exports2.USER_AGENT = void 0; - exports2.USER_AGENT = "user-agent"; - exports2.X_AMZ_USER_AGENT = "x-amz-user-agent"; - exports2.SPACE = " "; - exports2.UA_NAME_SEPARATOR = "/"; - exports2.UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g; - exports2.UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g; - exports2.UA_ESCAPE_CHAR = "-"; - } -}); - -// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/user-agent-middleware.js -var require_user_agent_middleware = __commonJS({ - "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/user-agent-middleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getUserAgentPlugin = exports2.getUserAgentMiddlewareOptions = exports2.userAgentMiddleware = void 0; - var util_endpoints_1 = require_dist_cjs27(); - var protocol_http_1 = require_dist_cjs2(); - var constants_1 = require_constants(); - var userAgentMiddleware = (options) => (next, context) => async (args) => { - var _a, _b; - const { request } = args; - if (!protocol_http_1.HttpRequest.isInstance(request)) - return next(args); - const { headers } = request; - const userAgent = ((_a = context === null || context === void 0 ? void 0 : context.userAgent) === null || _a === void 0 ? void 0 : _a.map(escapeUserAgent)) || []; - const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent); - const customUserAgent = ((_b = options === null || options === void 0 ? void 0 : options.customUserAgent) === null || _b === void 0 ? void 0 : _b.map(escapeUserAgent)) || []; - const prefix = (0, util_endpoints_1.getUserAgentPrefix)(); - const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(constants_1.SPACE); - const normalUAValue = [ - ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")), - ...customUserAgent - ].join(constants_1.SPACE); - if (options.runtime !== "browser") { - if (normalUAValue) { - headers[constants_1.X_AMZ_USER_AGENT] = headers[constants_1.X_AMZ_USER_AGENT] ? `${headers[constants_1.USER_AGENT]} ${normalUAValue}` : normalUAValue; - } - headers[constants_1.USER_AGENT] = sdkUserAgentValue; - } else { - headers[constants_1.X_AMZ_USER_AGENT] = sdkUserAgentValue; - } - return next({ - ...args, - request - }); - }; - exports2.userAgentMiddleware = userAgentMiddleware; - var escapeUserAgent = (userAgentPair) => { - var _a; - const name = userAgentPair[0].split(constants_1.UA_NAME_SEPARATOR).map((part) => part.replace(constants_1.UA_NAME_ESCAPE_REGEX, constants_1.UA_ESCAPE_CHAR)).join(constants_1.UA_NAME_SEPARATOR); - const version2 = (_a = userAgentPair[1]) === null || _a === void 0 ? void 0 : _a.replace(constants_1.UA_VALUE_ESCAPE_REGEX, constants_1.UA_ESCAPE_CHAR); - const prefixSeparatorIndex = name.indexOf(constants_1.UA_NAME_SEPARATOR); - const prefix = name.substring(0, prefixSeparatorIndex); - let uaName = name.substring(prefixSeparatorIndex + 1); - if (prefix === "api") { - uaName = uaName.toLowerCase(); - } - return [prefix, uaName, version2].filter((item) => item && item.length > 0).reduce((acc, item, index) => { - switch (index) { - case 0: - return item; - case 1: - return `${acc}/${item}`; - default: - return `${acc}#${item}`; - } - }, ""); - }; - exports2.getUserAgentMiddlewareOptions = { - name: "getUserAgentMiddleware", - step: "build", - priority: "low", - tags: ["SET_USER_AGENT", "USER_AGENT"], - override: true - }; - var getUserAgentPlugin = (config) => ({ - applyToStack: (clientStack) => { - clientStack.add((0, exports2.userAgentMiddleware)(config), exports2.getUserAgentMiddlewareOptions); - } - }); - exports2.getUserAgentPlugin = getUserAgentPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js -var require_dist_cjs28 = __commonJS({ - "node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_configurations(), exports2); - tslib_1.__exportStar(require_user_agent_middleware(), exports2); - } -}); - -// node_modules/@smithy/util-config-provider/dist-cjs/index.js -var require_dist_cjs29 = __commonJS({ - "node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - SelectorType: () => SelectorType, - booleanSelector: () => booleanSelector, - numberSelector: () => numberSelector - }); - module2.exports = __toCommonJS2(src_exports); - var booleanSelector = /* @__PURE__ */ __name((obj, key, type) => { - if (!(key in obj)) - return void 0; - if (obj[key] === "true") - return true; - if (obj[key] === "false") - return false; - throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`); - }, "booleanSelector"); - var numberSelector = /* @__PURE__ */ __name((obj, key, type) => { - if (!(key in obj)) - return void 0; - const numberValue = parseInt(obj[key], 10); - if (Number.isNaN(numberValue)) { - throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`); - } - return numberValue; - }, "numberSelector"); - var SelectorType = /* @__PURE__ */ ((SelectorType2) => { - SelectorType2["ENV"] = "env"; - SelectorType2["CONFIG"] = "shared config entry"; - return SelectorType2; - })(SelectorType || {}); - } -}); - -// node_modules/@smithy/config-resolver/dist-cjs/index.js -var require_dist_cjs30 = __commonJS({ - "node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT, - CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT, - DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT, - DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT, - ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT, - ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT, - NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS, - NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS, - NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, - NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, - REGION_ENV_NAME: () => REGION_ENV_NAME, - REGION_INI_NAME: () => REGION_INI_NAME, - getRegionInfo: () => getRegionInfo, - resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig, - resolveEndpointsConfig: () => resolveEndpointsConfig, - resolveRegionConfig: () => resolveRegionConfig - }); - module2.exports = __toCommonJS2(src_exports); - var import_util_config_provider = require_dist_cjs29(); - var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT"; - var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint"; - var DEFAULT_USE_DUALSTACK_ENDPOINT = false; - var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => (0, import_util_config_provider.booleanSelector)(env, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV), - configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG), - default: false - }; - var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT"; - var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint"; - var DEFAULT_USE_FIPS_ENDPOINT = false; - var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => (0, import_util_config_provider.booleanSelector)(env, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV), - configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG), - default: false - }; - var import_util_middleware = require_dist_cjs23(); - var resolveCustomEndpointsConfig = /* @__PURE__ */ __name((input) => { - 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)(input.useDualstackEndpoint ?? false) - }; - }, "resolveCustomEndpointsConfig"); - var getEndpointFromRegion = /* @__PURE__ */ __name(async (input) => { - const { tls = true } = input; - const region = await input.region(); - const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/); - if (!dnsHostRegex.test(region)) { - throw new Error("Invalid region in client config"); - } - const useDualstackEndpoint = await input.useDualstackEndpoint(); - const useFipsEndpoint = await input.useFipsEndpoint(); - const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {}; - if (!hostname) { - throw new Error("Cannot resolve hostname from client config"); - } - return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`); - }, "getEndpointFromRegion"); - var resolveEndpointsConfig = /* @__PURE__ */ __name((input) => { - const useDualstackEndpoint = (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false); - 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"); - var REGION_ENV_NAME = "AWS_REGION"; - var REGION_INI_NAME = "region"; - var NODE_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => env[REGION_ENV_NAME], - configFileSelector: (profile) => profile[REGION_INI_NAME], - default: () => { - throw new Error("Region is missing"); - } - }; - var NODE_REGION_CONFIG_FILE_OPTIONS = { - preferredFile: "credentials" - }; - var isFipsRegion = /* @__PURE__ */ __name((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion"); - 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"); - var resolveRegionConfig = /* @__PURE__ */ __name((input) => { - const { region, useFipsEndpoint } = input; - if (!region) { - throw new Error("Region is missing"); - } - return { - ...input, - region: async () => { - if (typeof region === "string") { - return getRealRegion(region); - } - const providedRegion = await region(); - return getRealRegion(providedRegion); - }, - useFipsEndpoint: async () => { - const providedRegion = typeof region === "string" ? region : await region(); - if (isFipsRegion(providedRegion)) { - return true; - } - return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); - } - }; - }, "resolveRegionConfig"); - var getHostnameFromVariants = /* @__PURE__ */ __name((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => { - var _a; - return (_a = variants.find( - ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack") - )) == null ? void 0 : _a.hostname; - }, "getHostnameFromVariants"); - var getResolvedHostname = /* @__PURE__ */ __name((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname"); - var getResolvedPartition = /* @__PURE__ */ __name((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition"); - var getResolvedSigningRegion = /* @__PURE__ */ __name((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => { - if (signingRegion) { - return signingRegion; - } else if (useFipsEndpoint) { - const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\."); - const regionRegexmatchArray = hostname.match(regionRegexJs); - if (regionRegexmatchArray) { - return regionRegexmatchArray[0].slice(1, -1); - } - } - }, "getResolvedSigningRegion"); - var getRegionInfo = /* @__PURE__ */ __name((region, { - useFipsEndpoint = false, - useDualstackEndpoint = false, - signingService, - regionHash, - partitionHash - }) => { - var _a, _b, _c, _d, _e; - const partition = getResolvedPartition(region, { partitionHash }); - const resolvedRegion = region in regionHash ? region : ((_a = partitionHash[partition]) == null ? void 0 : _a.endpoint) ?? region; - const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint }; - const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions); - const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions); - const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname }); - if (hostname === void 0) { - throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`); - } - const signingRegion = getResolvedSigningRegion(hostname, { - signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion, - regionRegex: partitionHash[partition].regionRegex, - useFipsEndpoint - }); - return { - partition, - signingService, - hostname, - ...signingRegion && { signingRegion }, - ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && { - signingService: regionHash[resolvedRegion].signingService - } - }; - }, "getRegionInfo"); - } -}); - -// node_modules/@smithy/eventstream-serde-config-resolver/dist-cjs/index.js -var require_dist_cjs31 = __commonJS({ - "node_modules/@smithy/eventstream-serde-config-resolver/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - resolveEventStreamSerdeConfig: () => resolveEventStreamSerdeConfig - }); - module2.exports = __toCommonJS2(src_exports); - var resolveEventStreamSerdeConfig = /* @__PURE__ */ __name((input) => ({ - ...input, - eventStreamMarshaller: input.eventStreamSerdeProvider(input) - }), "resolveEventStreamSerdeConfig"); - } -}); - -// node_modules/@smithy/middleware-content-length/dist-cjs/index.js -var require_dist_cjs32 = __commonJS({ - "node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - contentLengthMiddleware: () => contentLengthMiddleware, - contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions, - getContentLengthPlugin: () => getContentLengthPlugin - }); - module2.exports = __toCommonJS2(src_exports); - var import_protocol_http = require_dist_cjs2(); - var CONTENT_LENGTH_HEADER = "content-length"; - function contentLengthMiddleware(bodyLengthChecker) { - return (next) => async (args) => { - const request = args.request; - if (import_protocol_http.HttpRequest.isInstance(request)) { - const { body, headers } = request; - if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) { - try { - const length = bodyLengthChecker(body); - request.headers = { - ...request.headers, - [CONTENT_LENGTH_HEADER]: String(length) - }; - } catch (error) { - } - } - } - return next({ - ...args, - request - }); - }; - } - __name(contentLengthMiddleware, "contentLengthMiddleware"); - var contentLengthMiddlewareOptions = { - step: "build", - tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"], - name: "contentLengthMiddleware", - override: true - }; - var getContentLengthPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: (clientStack) => { - clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions); - } - }), "getContentLengthPlugin"); - } -}); - -// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js -var require_getHomeDir = __commonJS({ - "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getHomeDir = void 0; - var os_1 = require("os"); - var path_1 = require("path"); - var homeDirCache = {}; - var getHomeDirCacheKey = () => { - if (process && process.geteuid) { - return `${process.geteuid()}`; - } - return "DEFAULT"; - }; - var getHomeDir2 = () => { - const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; - if (HOME) - return HOME; - if (USERPROFILE) - return USERPROFILE; - if (HOMEPATH) - return `${HOMEDRIVE}${HOMEPATH}`; - const homeDirCacheKey = getHomeDirCacheKey(); - if (!homeDirCache[homeDirCacheKey]) - homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); - return homeDirCache[homeDirCacheKey]; - }; - exports2.getHomeDir = getHomeDir2; - } -}); - -// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js -var require_getSSOTokenFilepath = __commonJS({ - "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSSOTokenFilepath = void 0; - var crypto_1 = require("crypto"); - var path_1 = require("path"); - var getHomeDir_1 = require_getHomeDir(); - var getSSOTokenFilepath2 = (id) => { - const hasher = (0, crypto_1.createHash)("sha1"); - const cacheName = hasher.update(id).digest("hex"); - return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); - }; - exports2.getSSOTokenFilepath = getSSOTokenFilepath2; - } -}); - -// node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js -var require_getSSOTokenFromFile = __commonJS({ - "node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSSOTokenFromFile = void 0; - var fs_1 = require("fs"); - var getSSOTokenFilepath_1 = require_getSSOTokenFilepath(); - var { readFile } = fs_1.promises; - var getSSOTokenFromFile2 = async (id) => { - const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); - const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); - return JSON.parse(ssoTokenText); - }; - exports2.getSSOTokenFromFile = getSSOTokenFromFile2; - } -}); - -// node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js -var require_slurpFile = __commonJS({ - "node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.slurpFile = void 0; - var fs_1 = require("fs"); - var { readFile } = fs_1.promises; - var filePromisesHash = {}; - var slurpFile = (path, options) => { - if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { - filePromisesHash[path] = readFile(path, "utf8"); - } - return filePromisesHash[path]; - }; - exports2.slurpFile = slurpFile; - } -}); - -// node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js -var require_dist_cjs33 = __commonJS({ - "node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, - DEFAULT_PROFILE: () => DEFAULT_PROFILE, - ENV_PROFILE: () => ENV_PROFILE, - getProfileName: () => getProfileName, - loadSharedConfigFiles: () => loadSharedConfigFiles, - loadSsoSessionData: () => loadSsoSessionData, - parseKnownFiles: () => parseKnownFiles - }); - module2.exports = __toCommonJS2(src_exports); - __reExport(src_exports, require_getHomeDir(), module2.exports); - var ENV_PROFILE = "AWS_PROFILE"; - var DEFAULT_PROFILE = "default"; - var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); - __reExport(src_exports, require_getSSOTokenFilepath(), module2.exports); - __reExport(src_exports, require_getSSOTokenFromFile(), module2.exports); - var import_types = require_dist_cjs(); - var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { - const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); - if (indexOfSeparator === -1) { - return false; - } - return Object.values(import_types.IniSectionType).includes(key.substring(0, indexOfSeparator)); - }).reduce( - (acc, [key, value]) => { - const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); - const updatedKey = key.substring(0, indexOfSeparator) === import_types.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; - acc[updatedKey] = value; - return acc; - }, - { - // Populate default profile, if present. - ...data.default && { default: data.default } - } - ), "getConfigData"); - var import_path = require("path"); - var import_getHomeDir = require_getHomeDir(); - var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; - var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); - var import_getHomeDir2 = require_getHomeDir(); - var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; - var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); - var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; - var profileNameBlockList = ["__proto__", "profile __proto__"]; - var parseIni = /* @__PURE__ */ __name((iniData) => { - const map = {}; - let currentSection; - let currentSubSection; - for (const iniLine of iniData.split(/\r?\n/)) { - const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); - const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; - if (isSection) { - currentSection = void 0; - currentSubSection = void 0; - const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); - const matches = prefixKeyRegex.exec(sectionName); - if (matches) { - const [, prefix, , name] = matches; - if (Object.values(import_types.IniSectionType).includes(prefix)) { - currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); - } - } else { - currentSection = sectionName; - } - if (profileNameBlockList.includes(sectionName)) { - throw new Error(`Found invalid profile name "${sectionName}"`); - } - } else if (currentSection) { - const indexOfEqualsSign = trimmedLine.indexOf("="); - if (![0, -1].includes(indexOfEqualsSign)) { - const [name, value] = [ - trimmedLine.substring(0, indexOfEqualsSign).trim(), - trimmedLine.substring(indexOfEqualsSign + 1).trim() - ]; - if (value === "") { - currentSubSection = name; - } else { - if (currentSubSection && iniLine.trimStart() === iniLine) { - currentSubSection = void 0; - } - map[currentSection] = map[currentSection] || {}; - const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; - map[currentSection][key] = value; - } - } - } - } - return map; - }, "parseIni"); - var import_slurpFile = require_slurpFile(); - var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); - var CONFIG_PREFIX_SEPARATOR = "."; - var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { - const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; - const parsedFiles = await Promise.all([ - (0, import_slurpFile.slurpFile)(configFilepath, { - ignoreCache: init.ignoreCache - }).then(parseIni).then(getConfigData).catch(swallowError), - (0, import_slurpFile.slurpFile)(filepath, { - ignoreCache: init.ignoreCache - }).then(parseIni).catch(swallowError) - ]); - return { - configFile: parsedFiles[0], - credentialsFile: parsedFiles[1] - }; - }, "loadSharedConfigFiles"); - var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.split(CONFIG_PREFIX_SEPARATOR)[1]]: value }), {}), "getSsoSessionData"); - var import_slurpFile2 = require_slurpFile(); - var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); - var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); - var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { - const merged = {}; - for (const file of files) { - for (const [key, values] of Object.entries(file)) { - if (merged[key] !== void 0) { - Object.assign(merged[key], values); - } else { - merged[key] = values; - } - } - } - return merged; - }, "mergeConfigFiles"); - var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { - const parsedFiles = await loadSharedConfigFiles(init); - return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); - }, "parseKnownFiles"); - } -}); - -// node_modules/@smithy/node-config-provider/dist-cjs/index.js -var require_dist_cjs34 = __commonJS({ - "node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - loadConfig: () => loadConfig - }); - module2.exports = __toCommonJS2(src_exports); - var import_property_provider = require_dist_cjs19(); - var fromEnv = /* @__PURE__ */ __name((envVarSelector) => async () => { - try { - const config = envVarSelector(process.env); - if (config === void 0) { - throw new Error(); - } - return config; - } catch (e) { - throw new import_property_provider.CredentialsProviderError( - e.message || `Cannot load config from environment variables with getter: ${envVarSelector}` - ); - } - }, "fromEnv"); - var import_shared_ini_file_loader = require_dist_cjs33(); - var fromSharedConfigFiles = /* @__PURE__ */ __name((configSelector, { preferredFile = "config", ...init } = {}) => async () => { - const profile = (0, import_shared_ini_file_loader.getProfileName)(init); - const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init); - const profileFromCredentials = credentialsFile[profile] || {}; - const profileFromConfig = configFile[profile] || {}; - const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials }; - try { - const cfgFile = preferredFile === "config" ? configFile : credentialsFile; - const configValue = configSelector(mergedProfile, cfgFile); - if (configValue === void 0) { - throw new Error(); - } - return configValue; - } catch (e) { - throw new import_property_provider.CredentialsProviderError( - e.message || `Cannot load config for profile ${profile} in SDK configuration files with getter: ${configSelector}` - ); - } - }, "fromSharedConfigFiles"); - var isFunction = /* @__PURE__ */ __name((func) => typeof func === "function", "isFunction"); - var fromStatic = /* @__PURE__ */ __name((defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : (0, import_property_provider.fromStatic)(defaultValue), "fromStatic"); - var loadConfig = /* @__PURE__ */ __name(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider.memoize)( - (0, import_property_provider.chain)( - fromEnv(environmentVariableSelector), - fromSharedConfigFiles(configFileSelector, configuration), - fromStatic(defaultValue) - ) - ), "loadConfig"); - } -}); - -// node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js -var require_getEndpointUrlConfig = __commonJS({ - "node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointUrlConfig = void 0; - var shared_ini_file_loader_1 = require_dist_cjs33(); - var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL"; - var CONFIG_ENDPOINT_URL = "endpoint_url"; - var getEndpointUrlConfig = (serviceId) => ({ - environmentVariableSelector: (env) => { - const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase()); - const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")]; - if (serviceEndpointUrl) - return serviceEndpointUrl; - const endpointUrl = env[ENV_ENDPOINT_URL]; - if (endpointUrl) - return endpointUrl; - return void 0; - }, - configFileSelector: (profile, config) => { - if (config && profile.services) { - const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)]; - if (servicesSection) { - const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase()); - const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)]; - if (endpointUrl2) - return endpointUrl2; - } - } - const endpointUrl = profile[CONFIG_ENDPOINT_URL]; - if (endpointUrl) - return endpointUrl; - return void 0; - }, - default: void 0 - }); - exports2.getEndpointUrlConfig = getEndpointUrlConfig; - } -}); - -// node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js -var require_getEndpointFromConfig = __commonJS({ - "node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getEndpointFromConfig = void 0; - var node_config_provider_1 = require_dist_cjs34(); - var getEndpointUrlConfig_1 = require_getEndpointUrlConfig(); - var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId))(); - exports2.getEndpointFromConfig = getEndpointFromConfig; - } -}); - -// node_modules/@smithy/querystring-parser/dist-cjs/index.js -var require_dist_cjs35 = __commonJS({ - "node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - parseQueryString: () => parseQueryString - }); - module2.exports = __toCommonJS2(src_exports); - function parseQueryString(querystring) { - const query = {}; - querystring = querystring.replace(/^\?/, ""); - if (querystring) { - for (const pair of querystring.split("&")) { - let [key, value = null] = pair.split("="); - key = decodeURIComponent(key); - if (value) { - value = decodeURIComponent(value); - } - if (!(key in query)) { - query[key] = value; - } else if (Array.isArray(query[key])) { - query[key].push(value); - } else { - query[key] = [query[key], value]; - } - } - } - return query; - } - __name(parseQueryString, "parseQueryString"); - } -}); - -// node_modules/@smithy/url-parser/dist-cjs/index.js -var require_dist_cjs36 = __commonJS({ - "node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - parseUrl: () => parseUrl - }); - module2.exports = __toCommonJS2(src_exports); - var import_querystring_parser = require_dist_cjs35(); - var parseUrl = /* @__PURE__ */ __name((url) => { - if (typeof url === "string") { - return parseUrl(new URL(url)); - } - const { hostname, pathname, port, protocol, search } = url; - let query; - if (search) { - query = (0, import_querystring_parser.parseQueryString)(search); - } - return { - hostname, - port: port ? parseInt(port) : void 0, - protocol, - path: pathname, - query - }; - }, "parseUrl"); - } -}); - -// node_modules/@smithy/middleware-serde/dist-cjs/index.js -var require_dist_cjs37 = __commonJS({ - "node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - deserializerMiddleware: () => deserializerMiddleware, - deserializerMiddlewareOption: () => deserializerMiddlewareOption, - getSerdePlugin: () => getSerdePlugin, - serializerMiddleware: () => serializerMiddleware, - serializerMiddlewareOption: () => serializerMiddlewareOption - }); - module2.exports = __toCommonJS2(src_exports); - var deserializerMiddleware = /* @__PURE__ */ __name((options, deserializer) => (next, context) => async (args) => { - const { response } = await next(args); - try { - const parsed = await deserializer(response, options); - return { - response, - output: parsed - }; - } catch (error) { - Object.defineProperty(error, "$response", { - value: response - }); - if (!("$metadata" in error)) { - const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`; - error.message += "\n " + hint; - } - throw error; - } - }, "deserializerMiddleware"); - var serializerMiddleware = /* @__PURE__ */ __name((options, serializer) => (next, context) => async (args) => { - var _a; - const endpoint = ((_a = context.endpointV2) == null ? void 0 : _a.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint; - if (!endpoint) { - throw new Error("No valid endpoint provider available."); - } - const request = await serializer(args.input, { ...options, endpoint }); - return next({ - ...args, - request - }); - }, "serializerMiddleware"); - var deserializerMiddlewareOption = { - name: "deserializerMiddleware", - step: "deserialize", - tags: ["DESERIALIZER"], - override: true - }; - var serializerMiddlewareOption = { - name: "serializerMiddleware", - step: "serialize", - tags: ["SERIALIZER"], - override: true - }; - function getSerdePlugin(config, serializer, deserializer) { - return { - applyToStack: (commandStack) => { - commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption); - commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption); - } - }; - } - __name(getSerdePlugin, "getSerdePlugin"); - } -}); - -// node_modules/@smithy/middleware-endpoint/dist-cjs/index.js -var require_dist_cjs38 = __commonJS({ - "node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - endpointMiddleware: () => endpointMiddleware, - endpointMiddlewareOptions: () => endpointMiddlewareOptions, - getEndpointFromInstructions: () => getEndpointFromInstructions, - getEndpointPlugin: () => getEndpointPlugin, - resolveEndpointConfig: () => resolveEndpointConfig, - resolveParams: () => resolveParams, - toEndpointV1: () => toEndpointV1 - }); - module2.exports = __toCommonJS2(src_exports); - var resolveParamsForS3 = /* @__PURE__ */ __name(async (endpointParams) => { - const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || ""; - if (typeof endpointParams.Bucket === "string") { - endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?")); - } - if (isArnBucketName(bucket)) { - if (endpointParams.ForcePathStyle === true) { - throw new Error("Path-style addressing cannot be used with ARN buckets"); - } - } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) { - endpointParams.ForcePathStyle = true; - } - if (endpointParams.DisableMultiRegionAccessPoints) { - endpointParams.disableMultiRegionAccessPoints = true; - endpointParams.DisableMRAP = true; - } - return endpointParams; - }, "resolveParamsForS3"); - var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/; - var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/; - var DOTS_PATTERN = /\.\./; - var isDnsCompatibleBucketName = /* @__PURE__ */ __name((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName"); - var isArnBucketName = /* @__PURE__ */ __name((bucketName) => { - const [arn, partition, service, region, account, typeOrId] = bucketName.split(":"); - const isArn = arn === "arn" && bucketName.split(":").length >= 6; - const isValidArn = [arn, partition, service, account, typeOrId].filter(Boolean).length === 5; - if (isArn && !isValidArn) { - throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`); - } - return arn === "arn" && !!partition && !!service && !!account && !!typeOrId; - }, "isArnBucketName"); - var createConfigValueProvider = /* @__PURE__ */ __name((configKey, canonicalEndpointParamKey, config) => { - const configProvider = /* @__PURE__ */ __name(async () => { - const configValue = config[configKey] ?? config[canonicalEndpointParamKey]; - if (typeof configValue === "function") { - return configValue(); - } - return configValue; - }, "configProvider"); - if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") { - return async () => { - const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials; - const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope); - return configValue; - }; - } - if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") { - return async () => { - const endpoint = await configProvider(); - if (endpoint && typeof endpoint === "object") { - if ("url" in endpoint) { - return endpoint.url.href; - } - if ("hostname" in endpoint) { - const { protocol, hostname, port, path } = endpoint; - return `${protocol}//${hostname}${port ? ":" + port : ""}${path}`; - } - } - return endpoint; - }; - } - return configProvider; - }, "createConfigValueProvider"); - var import_getEndpointFromConfig = require_getEndpointFromConfig(); - var import_url_parser = require_dist_cjs36(); - var toEndpointV1 = /* @__PURE__ */ __name((endpoint) => { - if (typeof endpoint === "object") { - if ("url" in endpoint) { - return (0, import_url_parser.parseUrl)(endpoint.url); - } - return endpoint; - } - return (0, import_url_parser.parseUrl)(endpoint); - }, "toEndpointV1"); - var getEndpointFromInstructions = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig, context) => { - if (!clientConfig.endpoint) { - const endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId || ""); - if (endpointFromConfig) { - clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig)); - } - } - const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig); - if (typeof clientConfig.endpointProvider !== "function") { - throw new Error("config.endpointProvider is not set."); - } - const endpoint = clientConfig.endpointProvider(endpointParams, context); - return endpoint; - }, "getEndpointFromInstructions"); - var resolveParams = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig) => { - var _a; - const endpointParams = {}; - const instructions = ((_a = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a.call(instructionsSupplier)) || {}; - for (const [name, instruction] of Object.entries(instructions)) { - switch (instruction.type) { - case "staticContextParams": - endpointParams[name] = instruction.value; - break; - case "contextParams": - endpointParams[name] = commandInput[instruction.name]; - break; - case "clientContextParams": - case "builtInParams": - endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)(); - break; - default: - throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction)); - } - } - if (Object.keys(instructions).length === 0) { - Object.assign(endpointParams, clientConfig); - } - if (String(clientConfig.serviceId).toLowerCase() === "s3") { - await resolveParamsForS3(endpointParams); - } - return endpointParams; - }, "resolveParams"); - var import_util_middleware = require_dist_cjs23(); - var endpointMiddleware = /* @__PURE__ */ __name(({ - config, - instructions - }) => { - return (next, context) => async (args) => { - var _a, _b, _c; - const endpoint = await getEndpointFromInstructions( - args.input, - { - getEndpointParameterInstructions() { - return instructions; - } - }, - { ...config }, - context - ); - context.endpointV2 = endpoint; - context.authSchemes = (_a = endpoint.properties) == null ? void 0 : _a.authSchemes; - const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0]; - if (authScheme) { - context["signing_region"] = authScheme.signingRegion; - context["signing_service"] = authScheme.signingName; - const smithyContext = (0, import_util_middleware.getSmithyContext)(context); - const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption; - if (httpAuthOption) { - httpAuthOption.signingProperties = Object.assign( - httpAuthOption.signingProperties || {}, - { - signing_region: authScheme.signingRegion, - signingRegion: authScheme.signingRegion, - signing_service: authScheme.signingName, - signingName: authScheme.signingName, - signingRegionSet: authScheme.signingRegionSet - }, - authScheme.properties - ); - } - } - return next({ - ...args - }); - }; - }, "endpointMiddleware"); - var import_middleware_serde = require_dist_cjs37(); - var endpointMiddlewareOptions = { - step: "serialize", - tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"], - name: "endpointV2Middleware", - override: true, - relation: "before", - toMiddleware: import_middleware_serde.serializerMiddlewareOption.name - }; - var getEndpointPlugin = /* @__PURE__ */ __name((config, instructions) => ({ - applyToStack: (clientStack) => { - clientStack.addRelativeTo( - endpointMiddleware({ - config, - instructions - }), - endpointMiddlewareOptions - ); - } - }), "getEndpointPlugin"); - var resolveEndpointConfig = /* @__PURE__ */ __name((input) => { - const tls = input.tls ?? true; - const { endpoint } = input; - const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware.normalizeProvider)(endpoint)()) : void 0; - const isCustomEndpoint = !!endpoint; - return { - ...input, - endpoint: customEndpointProvider, - tls, - isCustomEndpoint, - useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false), - useFipsEndpoint: (0, import_util_middleware.normalizeProvider)(input.useFipsEndpoint ?? false) - }; - }, "resolveEndpointConfig"); - } -}); - -// node_modules/uuid/dist/esm-node/rng.js -function rng() { - if (poolPtr > rnds8Pool.length - 16) { - import_crypto.default.randomFillSync(rnds8Pool); - poolPtr = 0; - } - return rnds8Pool.slice(poolPtr, poolPtr += 16); -} -var import_crypto, rnds8Pool, poolPtr; -var init_rng = __esm({ - "node_modules/uuid/dist/esm-node/rng.js"() { - import_crypto = __toESM(require("crypto")); - rnds8Pool = new Uint8Array(256); - poolPtr = rnds8Pool.length; - } -}); - -// node_modules/uuid/dist/esm-node/regex.js -var regex_default; -var init_regex = __esm({ - "node_modules/uuid/dist/esm-node/regex.js"() { - regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; - } -}); - -// node_modules/uuid/dist/esm-node/validate.js -function validate(uuid) { - return typeof uuid === "string" && regex_default.test(uuid); -} -var validate_default; -var init_validate = __esm({ - "node_modules/uuid/dist/esm-node/validate.js"() { - init_regex(); - validate_default = validate; - } -}); - -// node_modules/uuid/dist/esm-node/stringify.js -function stringify(arr, offset = 0) { - const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); - if (!validate_default(uuid)) { - throw TypeError("Stringified UUID is invalid"); - } - return uuid; -} -var byteToHex, stringify_default; -var init_stringify = __esm({ - "node_modules/uuid/dist/esm-node/stringify.js"() { - init_validate(); - byteToHex = []; - for (let i = 0; i < 256; ++i) { - byteToHex.push((i + 256).toString(16).substr(1)); - } - stringify_default = stringify; - } -}); - -// node_modules/uuid/dist/esm-node/v1.js -function v1(options, buf, offset) { - let i = buf && offset || 0; - const b = buf || new Array(16); - options = options || {}; - let node = options.node || _nodeId; - let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; - if (node == null || clockseq == null) { - const seedBytes = options.random || (options.rng || rng)(); - if (node == null) { - node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; - } - if (clockseq == null) { - clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383; - } - } - let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); - let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; - const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; - if (dt < 0 && options.clockseq === void 0) { - clockseq = clockseq + 1 & 16383; - } - if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) { - nsecs = 0; - } - if (nsecs >= 1e4) { - throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); - } - _lastMSecs = msecs; - _lastNSecs = nsecs; - _clockseq = clockseq; - msecs += 122192928e5; - const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; - b[i++] = tl >>> 24 & 255; - b[i++] = tl >>> 16 & 255; - b[i++] = tl >>> 8 & 255; - b[i++] = tl & 255; - const tmh = msecs / 4294967296 * 1e4 & 268435455; - b[i++] = tmh >>> 8 & 255; - b[i++] = tmh & 255; - b[i++] = tmh >>> 24 & 15 | 16; - b[i++] = tmh >>> 16 & 255; - b[i++] = clockseq >>> 8 | 128; - b[i++] = clockseq & 255; - for (let n = 0; n < 6; ++n) { - b[i + n] = node[n]; - } - return buf || stringify_default(b); -} -var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default; -var init_v1 = __esm({ - "node_modules/uuid/dist/esm-node/v1.js"() { - init_rng(); - init_stringify(); - _lastMSecs = 0; - _lastNSecs = 0; - v1_default = v1; - } -}); - -// node_modules/uuid/dist/esm-node/parse.js -function parse(uuid) { - if (!validate_default(uuid)) { - throw TypeError("Invalid UUID"); - } - let v; - const arr = new Uint8Array(16); - arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; - arr[1] = v >>> 16 & 255; - arr[2] = v >>> 8 & 255; - arr[3] = v & 255; - arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; - arr[5] = v & 255; - arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; - arr[7] = v & 255; - arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; - arr[9] = v & 255; - arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255; - arr[11] = v / 4294967296 & 255; - arr[12] = v >>> 24 & 255; - arr[13] = v >>> 16 & 255; - arr[14] = v >>> 8 & 255; - arr[15] = v & 255; - return arr; -} -var parse_default; -var init_parse = __esm({ - "node_modules/uuid/dist/esm-node/parse.js"() { - init_validate(); - parse_default = parse; - } -}); - -// node_modules/uuid/dist/esm-node/v35.js -function stringToBytes(str) { - str = unescape(encodeURIComponent(str)); - const bytes = []; - for (let i = 0; i < str.length; ++i) { - bytes.push(str.charCodeAt(i)); - } - return bytes; -} -function v35_default(name, version2, hashfunc) { - function generateUUID(value, namespace, buf, offset) { - if (typeof value === "string") { - value = stringToBytes(value); - } - if (typeof namespace === "string") { - namespace = parse_default(namespace); - } - if (namespace.length !== 16) { - throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); - } - let bytes = new Uint8Array(16 + value.length); - bytes.set(namespace); - bytes.set(value, namespace.length); - bytes = hashfunc(bytes); - bytes[6] = bytes[6] & 15 | version2; - bytes[8] = bytes[8] & 63 | 128; - if (buf) { - offset = offset || 0; - for (let i = 0; i < 16; ++i) { - buf[offset + i] = bytes[i]; - } - return buf; - } - return stringify_default(bytes); - } - try { - generateUUID.name = name; - } catch (err) { - } - generateUUID.DNS = DNS; - generateUUID.URL = URL2; - return generateUUID; -} -var DNS, URL2; -var init_v35 = __esm({ - "node_modules/uuid/dist/esm-node/v35.js"() { - init_stringify(); - init_parse(); - DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; - URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; - } -}); - -// node_modules/uuid/dist/esm-node/md5.js -function md5(bytes) { - if (Array.isArray(bytes)) { - bytes = Buffer.from(bytes); - } else if (typeof bytes === "string") { - bytes = Buffer.from(bytes, "utf8"); - } - return import_crypto2.default.createHash("md5").update(bytes).digest(); -} -var import_crypto2, md5_default; -var init_md5 = __esm({ - "node_modules/uuid/dist/esm-node/md5.js"() { - import_crypto2 = __toESM(require("crypto")); - md5_default = md5; - } -}); - -// node_modules/uuid/dist/esm-node/v3.js -var v3, v3_default; -var init_v3 = __esm({ - "node_modules/uuid/dist/esm-node/v3.js"() { - init_v35(); - init_md5(); - v3 = v35_default("v3", 48, md5_default); - v3_default = v3; - } -}); - -// node_modules/uuid/dist/esm-node/v4.js -function v4(options, buf, offset) { - options = options || {}; - const rnds = options.random || (options.rng || rng)(); - rnds[6] = rnds[6] & 15 | 64; - rnds[8] = rnds[8] & 63 | 128; - if (buf) { - offset = offset || 0; - for (let i = 0; i < 16; ++i) { - buf[offset + i] = rnds[i]; - } - return buf; - } - return stringify_default(rnds); -} -var v4_default; -var init_v4 = __esm({ - "node_modules/uuid/dist/esm-node/v4.js"() { - init_rng(); - init_stringify(); - v4_default = v4; - } -}); - -// node_modules/uuid/dist/esm-node/sha1.js -function sha1(bytes) { - if (Array.isArray(bytes)) { - bytes = Buffer.from(bytes); - } else if (typeof bytes === "string") { - bytes = Buffer.from(bytes, "utf8"); - } - return import_crypto3.default.createHash("sha1").update(bytes).digest(); -} -var import_crypto3, sha1_default; -var init_sha1 = __esm({ - "node_modules/uuid/dist/esm-node/sha1.js"() { - import_crypto3 = __toESM(require("crypto")); - sha1_default = sha1; - } -}); - -// node_modules/uuid/dist/esm-node/v5.js -var v5, v5_default; -var init_v5 = __esm({ - "node_modules/uuid/dist/esm-node/v5.js"() { - init_v35(); - init_sha1(); - v5 = v35_default("v5", 80, sha1_default); - v5_default = v5; - } -}); - -// node_modules/uuid/dist/esm-node/nil.js -var nil_default; -var init_nil = __esm({ - "node_modules/uuid/dist/esm-node/nil.js"() { - nil_default = "00000000-0000-0000-0000-000000000000"; - } -}); - -// node_modules/uuid/dist/esm-node/version.js -function version(uuid) { - if (!validate_default(uuid)) { - throw TypeError("Invalid UUID"); - } - return parseInt(uuid.substr(14, 1), 16); -} -var version_default; -var init_version = __esm({ - "node_modules/uuid/dist/esm-node/version.js"() { - init_validate(); - version_default = version; - } -}); - -// node_modules/uuid/dist/esm-node/index.js -var esm_node_exports = {}; -__export(esm_node_exports, { - NIL: () => nil_default, - parse: () => parse_default, - stringify: () => stringify_default, - v1: () => v1_default, - v3: () => v3_default, - v4: () => v4_default, - v5: () => v5_default, - validate: () => validate_default, - version: () => version_default -}); -var init_esm_node = __esm({ - "node_modules/uuid/dist/esm-node/index.js"() { - init_v1(); - init_v3(); - init_v4(); - init_v5(); - init_nil(); - init_version(); - init_validate(); - init_stringify(); - init_parse(); - } -}); - -// node_modules/@smithy/service-error-classification/dist-cjs/index.js -var require_dist_cjs39 = __commonJS({ - "node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - isClockSkewError: () => isClockSkewError, - isRetryableByTrait: () => isRetryableByTrait, - isServerError: () => isServerError, - isThrottlingError: () => isThrottlingError, - isTransientError: () => isTransientError - }); - module2.exports = __toCommonJS2(src_exports); - var CLOCK_SKEW_ERROR_CODES = [ - "AuthFailure", - "InvalidSignatureException", - "RequestExpired", - "RequestInTheFuture", - "RequestTimeTooSkewed", - "SignatureDoesNotMatch" - ]; - var THROTTLING_ERROR_CODES = [ - "BandwidthLimitExceeded", - "EC2ThrottledException", - "LimitExceededException", - "PriorRequestNotComplete", - "ProvisionedThroughputExceededException", - "RequestLimitExceeded", - "RequestThrottled", - "RequestThrottledException", - "SlowDown", - "ThrottledException", - "Throttling", - "ThrottlingException", - "TooManyRequestsException", - "TransactionInProgressException" - // DynamoDB - ]; - var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"]; - var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504]; - var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"]; - var isRetryableByTrait = /* @__PURE__ */ __name((error) => error.$retryable !== void 0, "isRetryableByTrait"); - var isClockSkewError = /* @__PURE__ */ __name((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError"); - var isThrottlingError = /* @__PURE__ */ __name((error) => { - var _a, _b; - return ((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true; - }, "isThrottlingError"); - var isTransientError = /* @__PURE__ */ __name((error) => { - var _a; - return TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) || 0); - }, "isTransientError"); - var isServerError = /* @__PURE__ */ __name((error) => { - var _a; - if (((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) !== void 0) { - const statusCode = error.$metadata.httpStatusCode; - if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) { - return true; - } - return false; - } - return false; - }, "isServerError"); - } -}); - -// node_modules/@smithy/util-retry/dist-cjs/index.js -var require_dist_cjs40 = __commonJS({ - "node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - AdaptiveRetryStrategy: () => AdaptiveRetryStrategy, - ConfiguredRetryStrategy: () => ConfiguredRetryStrategy, - DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS, - DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE, - DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE, - DefaultRateLimiter: () => DefaultRateLimiter, - INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS, - INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER, - MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY, - NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT, - REQUEST_HEADER: () => REQUEST_HEADER, - RETRY_COST: () => RETRY_COST, - RETRY_MODES: () => RETRY_MODES, - StandardRetryStrategy: () => StandardRetryStrategy, - THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE, - TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST - }); - module2.exports = __toCommonJS2(src_exports); - var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => { - RETRY_MODES2["STANDARD"] = "standard"; - RETRY_MODES2["ADAPTIVE"] = "adaptive"; - return RETRY_MODES2; - })(RETRY_MODES || {}); - var DEFAULT_MAX_ATTEMPTS = 3; - var DEFAULT_RETRY_MODE = "standard"; - var import_service_error_classification = require_dist_cjs39(); - var _DefaultRateLimiter = class _DefaultRateLimiter { - constructor(options) { - this.currentCapacity = 0; - this.enabled = false; - this.lastMaxRate = 0; - this.measuredTxRate = 0; - this.requestCount = 0; - this.lastTimestamp = 0; - this.timeWindow = 0; - this.beta = (options == null ? void 0 : options.beta) ?? 0.7; - this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1; - this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5; - this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4; - this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8; - const currentTimeInSeconds = this.getCurrentTimeInSeconds(); - this.lastThrottleTime = currentTimeInSeconds; - this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds()); - this.fillRate = this.minFillRate; - this.maxCapacity = this.minCapacity; - } - getCurrentTimeInSeconds() { - return Date.now() / 1e3; - } - async getSendToken() { - return this.acquireTokenBucket(1); - } - async acquireTokenBucket(amount) { - if (!this.enabled) { - return; - } - this.refillTokenBucket(); - if (amount > this.currentCapacity) { - const delay = (amount - this.currentCapacity) / this.fillRate * 1e3; - await new Promise((resolve) => setTimeout(resolve, delay)); - } - this.currentCapacity = this.currentCapacity - amount; - } - refillTokenBucket() { - const timestamp = this.getCurrentTimeInSeconds(); - if (!this.lastTimestamp) { - this.lastTimestamp = timestamp; - return; - } - const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate; - this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount); - this.lastTimestamp = timestamp; - } - updateClientSendingRate(response) { - let calculatedRate; - this.updateMeasuredRate(); - if ((0, import_service_error_classification.isThrottlingError)(response)) { - const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate); - this.lastMaxRate = rateToUse; - this.calculateTimeWindow(); - this.lastThrottleTime = this.getCurrentTimeInSeconds(); - calculatedRate = this.cubicThrottle(rateToUse); - this.enableTokenBucket(); - } else { - this.calculateTimeWindow(); - calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds()); - } - const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate); - this.updateTokenBucketRate(newRate); - } - calculateTimeWindow() { - this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3)); - } - cubicThrottle(rateToUse) { - return this.getPrecise(rateToUse * this.beta); - } - cubicSuccess(timestamp) { - return this.getPrecise( - this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate - ); - } - enableTokenBucket() { - this.enabled = true; - } - updateTokenBucketRate(newRate) { - this.refillTokenBucket(); - this.fillRate = Math.max(newRate, this.minFillRate); - this.maxCapacity = Math.max(newRate, this.minCapacity); - this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity); - } - updateMeasuredRate() { - const t = this.getCurrentTimeInSeconds(); - const timeBucket = Math.floor(t * 2) / 2; - this.requestCount++; - if (timeBucket > this.lastTxRateBucket) { - const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket); - this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth)); - this.requestCount = 0; - this.lastTxRateBucket = timeBucket; - } - } - getPrecise(num) { - return parseFloat(num.toFixed(8)); - } - }; - __name(_DefaultRateLimiter, "DefaultRateLimiter"); - var DefaultRateLimiter = _DefaultRateLimiter; - var DEFAULT_RETRY_DELAY_BASE = 100; - var MAXIMUM_RETRY_DELAY = 20 * 1e3; - var THROTTLING_RETRY_DELAY_BASE = 500; - var INITIAL_RETRY_TOKENS = 500; - var RETRY_COST = 5; - var TIMEOUT_RETRY_COST = 10; - var NO_RETRY_INCREMENT = 1; - var INVOCATION_ID_HEADER = "amz-sdk-invocation-id"; - var REQUEST_HEADER = "amz-sdk-request"; - var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name(() => { - let delayBase = DEFAULT_RETRY_DELAY_BASE; - const computeNextBackoffDelay = /* @__PURE__ */ __name((attempts) => { - return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)); - }, "computeNextBackoffDelay"); - const setDelayBase = /* @__PURE__ */ __name((delay) => { - delayBase = delay; - }, "setDelayBase"); - return { - computeNextBackoffDelay, - setDelayBase - }; - }, "getDefaultRetryBackoffStrategy"); - var createDefaultRetryToken = /* @__PURE__ */ __name(({ - retryDelay, - retryCount, - retryCost - }) => { - const getRetryCount = /* @__PURE__ */ __name(() => retryCount, "getRetryCount"); - const getRetryDelay = /* @__PURE__ */ __name(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay"); - const getRetryCost = /* @__PURE__ */ __name(() => retryCost, "getRetryCost"); - return { - getRetryCount, - getRetryDelay, - getRetryCost - }; - }, "createDefaultRetryToken"); - var _StandardRetryStrategy = class _StandardRetryStrategy { - constructor(maxAttempts) { - this.maxAttempts = maxAttempts; - this.mode = "standard"; - this.capacity = INITIAL_RETRY_TOKENS; - this.retryBackoffStrategy = getDefaultRetryBackoffStrategy(); - this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts; - } - async acquireInitialRetryToken(retryTokenScope) { - return createDefaultRetryToken({ - retryDelay: DEFAULT_RETRY_DELAY_BASE, - retryCount: 0 - }); - } - async refreshRetryTokenForRetry(token, errorInfo) { - const maxAttempts = await this.getMaxAttempts(); - if (this.shouldRetry(token, errorInfo, maxAttempts)) { - const errorType = errorInfo.errorType; - this.retryBackoffStrategy.setDelayBase( - errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE - ); - const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount()); - const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType; - const capacityCost = this.getCapacityCost(errorType); - this.capacity -= capacityCost; - return createDefaultRetryToken({ - retryDelay, - retryCount: token.getRetryCount() + 1, - retryCost: capacityCost - }); - } - throw new Error("No retry token available"); - } - recordSuccess(token) { - this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT)); - } - /** - * @returns the current available retry capacity. - * - * This number decreases when retries are executed and refills when requests or retries succeed. - */ - getCapacity() { - return this.capacity; - } - async getMaxAttempts() { - try { - return await this.maxAttemptsProvider(); - } catch (error) { - console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`); - return DEFAULT_MAX_ATTEMPTS; - } - } - shouldRetry(tokenToRenew, errorInfo, maxAttempts) { - const attempts = tokenToRenew.getRetryCount() + 1; - return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType); - } - getCapacityCost(errorType) { - return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST; - } - isRetryableError(errorType) { - return errorType === "THROTTLING" || errorType === "TRANSIENT"; - } - }; - __name(_StandardRetryStrategy, "StandardRetryStrategy"); - var StandardRetryStrategy = _StandardRetryStrategy; - var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy { - constructor(maxAttemptsProvider, options) { - this.maxAttemptsProvider = maxAttemptsProvider; - this.mode = "adaptive"; - const { rateLimiter } = options ?? {}; - this.rateLimiter = rateLimiter ?? new DefaultRateLimiter(); - this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider); - } - async acquireInitialRetryToken(retryTokenScope) { - await this.rateLimiter.getSendToken(); - return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope); - } - async refreshRetryTokenForRetry(tokenToRenew, errorInfo) { - this.rateLimiter.updateClientSendingRate(errorInfo); - return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo); - } - recordSuccess(token) { - this.rateLimiter.updateClientSendingRate({}); - this.standardRetryStrategy.recordSuccess(token); - } - }; - __name(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy"); - var AdaptiveRetryStrategy = _AdaptiveRetryStrategy; - var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy { - /** - * @param maxAttempts - the maximum number of retry attempts allowed. - * e.g., if set to 3, then 4 total requests are possible. - * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt - * and returns the delay. - * - * @example exponential backoff. - * ```js - * new Client({ - * retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2) - * }); - * ``` - * @example constant delay. - * ```js - * new Client({ - * retryStrategy: new ConfiguredRetryStrategy(3, 2000) - * }); - * ``` - */ - constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) { - super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts); - if (typeof computeNextBackoffDelay === "number") { - this.computeNextBackoffDelay = () => computeNextBackoffDelay; - } else { - this.computeNextBackoffDelay = computeNextBackoffDelay; - } - } - async refreshRetryTokenForRetry(tokenToRenew, errorInfo) { - const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo); - token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount()); - return token; - } - }; - __name(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy"); - var ConfiguredRetryStrategy = _ConfiguredRetryStrategy; - } -}); - -// node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js -var require_isStreamingPayload = __commonJS({ - "node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isStreamingPayload = void 0; - var stream_1 = require("stream"); - var isStreamingPayload = (request) => (request === null || request === void 0 ? void 0 : request.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request === null || request === void 0 ? void 0 : request.body) instanceof ReadableStream; - exports2.isStreamingPayload = isStreamingPayload; - } -}); - -// node_modules/@smithy/middleware-retry/dist-cjs/index.js -var require_dist_cjs41 = __commonJS({ - "node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - AdaptiveRetryStrategy: () => AdaptiveRetryStrategy, - CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS, - CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE, - ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS, - ENV_RETRY_MODE: () => ENV_RETRY_MODE, - NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS, - NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS, - StandardRetryStrategy: () => StandardRetryStrategy, - defaultDelayDecider: () => defaultDelayDecider, - defaultRetryDecider: () => defaultRetryDecider, - getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin, - getRetryAfterHint: () => getRetryAfterHint, - getRetryPlugin: () => getRetryPlugin, - omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware, - omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions, - resolveRetryConfig: () => resolveRetryConfig, - retryMiddleware: () => retryMiddleware, - retryMiddlewareOptions: () => retryMiddlewareOptions - }); - module2.exports = __toCommonJS2(src_exports); - var import_protocol_http = require_dist_cjs2(); - var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports)); - var import_util_retry = require_dist_cjs40(); - var getDefaultRetryQuota = /* @__PURE__ */ __name((initialRetryTokens, options) => { - const MAX_CAPACITY = initialRetryTokens; - const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT; - const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST; - const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST; - let availableCapacity = initialRetryTokens; - const getCapacityAmount = /* @__PURE__ */ __name((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount"); - const hasRetryTokens = /* @__PURE__ */ __name((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens"); - const retrieveRetryTokens = /* @__PURE__ */ __name((error) => { - if (!hasRetryTokens(error)) { - throw new Error("No retry token available"); - } - const capacityAmount = getCapacityAmount(error); - availableCapacity -= capacityAmount; - return capacityAmount; - }, "retrieveRetryTokens"); - const releaseRetryTokens = /* @__PURE__ */ __name((capacityReleaseAmount) => { - availableCapacity += capacityReleaseAmount ?? noRetryIncrement; - availableCapacity = Math.min(availableCapacity, MAX_CAPACITY); - }, "releaseRetryTokens"); - return Object.freeze({ - hasRetryTokens, - retrieveRetryTokens, - releaseRetryTokens - }); - }, "getDefaultRetryQuota"); - var defaultDelayDecider = /* @__PURE__ */ __name((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider"); - var import_service_error_classification = require_dist_cjs39(); - var defaultRetryDecider = /* @__PURE__ */ __name((error) => { - if (!error) { - return false; - } - return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error); - }, "defaultRetryDecider"); - var asSdkError = /* @__PURE__ */ __name((error) => { - if (error instanceof Error) - return error; - if (error instanceof Object) - return Object.assign(new Error(), error); - if (typeof error === "string") - return new Error(error); - return new Error(`AWS SDK error wrapper for ${error}`); - }, "asSdkError"); - var _StandardRetryStrategy = class _StandardRetryStrategy { - constructor(maxAttemptsProvider, options) { - this.maxAttemptsProvider = maxAttemptsProvider; - this.mode = import_util_retry.RETRY_MODES.STANDARD; - this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider; - this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider; - this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS); - } - shouldRetry(error, attempts, maxAttempts) { - return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error); - } - async getMaxAttempts() { - let maxAttempts; - try { - maxAttempts = await this.maxAttemptsProvider(); - } catch (error) { - maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS; - } - return maxAttempts; - } - async retry(next, args, options) { - let retryTokenAmount; - let attempts = 0; - let totalDelay = 0; - const maxAttempts = await this.getMaxAttempts(); - const { request } = args; - if (import_protocol_http.HttpRequest.isInstance(request)) { - request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)(); - } - while (true) { - try { - if (import_protocol_http.HttpRequest.isInstance(request)) { - request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`; - } - if (options == null ? void 0 : options.beforeRequest) { - await options.beforeRequest(); - } - const { response, output } = await next(args); - if (options == null ? void 0 : options.afterRequest) { - options.afterRequest(response); - } - this.retryQuota.releaseRetryTokens(retryTokenAmount); - output.$metadata.attempts = attempts + 1; - output.$metadata.totalRetryDelay = totalDelay; - return { response, output }; - } catch (e) { - const err = asSdkError(e); - attempts++; - if (this.shouldRetry(err, attempts, maxAttempts)) { - retryTokenAmount = this.retryQuota.retrieveRetryTokens(err); - const delayFromDecider = this.delayDecider( - (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE, - attempts - ); - const delayFromResponse = getDelayFromRetryAfterHeader(err.$response); - const delay = Math.max(delayFromResponse || 0, delayFromDecider); - totalDelay += delay; - await new Promise((resolve) => setTimeout(resolve, delay)); - continue; - } - if (!err.$metadata) { - err.$metadata = {}; - } - err.$metadata.attempts = attempts; - err.$metadata.totalRetryDelay = totalDelay; - throw err; - } - } - } - }; - __name(_StandardRetryStrategy, "StandardRetryStrategy"); - var StandardRetryStrategy = _StandardRetryStrategy; - var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name((response) => { - if (!import_protocol_http.HttpResponse.isInstance(response)) - return; - const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after"); - if (!retryAfterHeaderName) - return; - const retryAfter = response.headers[retryAfterHeaderName]; - const retryAfterSeconds = Number(retryAfter); - if (!Number.isNaN(retryAfterSeconds)) - return retryAfterSeconds * 1e3; - const retryAfterDate = new Date(retryAfter); - return retryAfterDate.getTime() - Date.now(); - }, "getDelayFromRetryAfterHeader"); - var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy { - constructor(maxAttemptsProvider, options) { - const { rateLimiter, ...superOptions } = options ?? {}; - super(maxAttemptsProvider, superOptions); - this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter(); - this.mode = import_util_retry.RETRY_MODES.ADAPTIVE; - } - async retry(next, args) { - return super.retry(next, args, { - beforeRequest: async () => { - return this.rateLimiter.getSendToken(); - }, - afterRequest: (response) => { - this.rateLimiter.updateClientSendingRate(response); - } - }); - } - }; - __name(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy"); - var AdaptiveRetryStrategy = _AdaptiveRetryStrategy; - var import_util_middleware = require_dist_cjs23(); - var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS"; - var CONFIG_MAX_ATTEMPTS = "max_attempts"; - var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => { - const value = env[ENV_MAX_ATTEMPTS]; - if (!value) - return void 0; - const maxAttempt = parseInt(value); - if (Number.isNaN(maxAttempt)) { - throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`); - } - return maxAttempt; - }, - configFileSelector: (profile) => { - const value = profile[CONFIG_MAX_ATTEMPTS]; - if (!value) - return void 0; - const maxAttempt = parseInt(value); - if (Number.isNaN(maxAttempt)) { - throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`); - } - return maxAttempt; - }, - default: import_util_retry.DEFAULT_MAX_ATTEMPTS - }; - var resolveRetryConfig = /* @__PURE__ */ __name((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)(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"; - var NODE_RETRY_MODE_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => env[ENV_RETRY_MODE], - configFileSelector: (profile) => profile[CONFIG_RETRY_MODE], - default: import_util_retry.DEFAULT_RETRY_MODE - }; - var omitRetryHeadersMiddleware = /* @__PURE__ */ __name(() => (next) => async (args) => { - const { request } = args; - if (import_protocol_http.HttpRequest.isInstance(request)) { - delete request.headers[import_util_retry.INVOCATION_ID_HEADER]; - delete request.headers[import_util_retry.REQUEST_HEADER]; - } - return next(args); - }, "omitRetryHeadersMiddleware"); - var omitRetryHeadersMiddlewareOptions = { - name: "omitRetryHeadersMiddleware", - tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"], - relation: "before", - toMiddleware: "awsAuthMiddleware", - override: true - }; - var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: (clientStack) => { - clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions); - } - }), "getOmitRetryHeadersPlugin"); - var import_smithy_client = require_dist_cjs16(); - var import_isStreamingPayload = require_isStreamingPayload(); - var retryMiddleware = /* @__PURE__ */ __name((options) => (next, context) => async (args) => { - var _a; - let retryStrategy = await options.retryStrategy(); - const maxAttempts = await options.maxAttempts(); - if (isRetryStrategyV2(retryStrategy)) { - retryStrategy = retryStrategy; - let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]); - let lastError = new Error(); - let attempts = 0; - let totalRetryDelay = 0; - const { request } = args; - const isRequest = import_protocol_http.HttpRequest.isInstance(request); - if (isRequest) { - request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)(); - } - while (true) { - try { - if (isRequest) { - request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`; - } - const { response, output } = await next(args); - retryStrategy.recordSuccess(retryToken); - output.$metadata.attempts = attempts + 1; - output.$metadata.totalRetryDelay = totalRetryDelay; - return { response, output }; - } catch (e) { - const retryErrorInfo = getRetryErrorInfo(e); - lastError = asSdkError(e); - if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request)) { - (_a = context.logger instanceof import_smithy_client.NoOpLogger ? console : context.logger) == null ? void 0 : _a.warn( - "An error was encountered in a non-retryable streaming request." - ); - throw lastError; - } - try { - retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo); - } catch (refreshError) { - if (!lastError.$metadata) { - lastError.$metadata = {}; - } - lastError.$metadata.attempts = attempts + 1; - lastError.$metadata.totalRetryDelay = totalRetryDelay; - throw lastError; - } - attempts = retryToken.getRetryCount(); - const delay = retryToken.getRetryDelay(); - totalRetryDelay += delay; - await new Promise((resolve) => setTimeout(resolve, delay)); - } - } - } else { - retryStrategy = retryStrategy; - if (retryStrategy == null ? void 0 : retryStrategy.mode) - context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]]; - return retryStrategy.retry(next, args); - } - }, "retryMiddleware"); - var isRetryStrategyV2 = /* @__PURE__ */ __name((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2"); - var getRetryErrorInfo = /* @__PURE__ */ __name((error) => { - const errorInfo = { - errorType: getRetryErrorType(error) - }; - const retryAfterHint = getRetryAfterHint(error.$response); - if (retryAfterHint) { - errorInfo.retryAfterHint = retryAfterHint; - } - return errorInfo; - }, "getRetryErrorInfo"); - var getRetryErrorType = /* @__PURE__ */ __name((error) => { - if ((0, import_service_error_classification.isThrottlingError)(error)) - return "THROTTLING"; - if ((0, import_service_error_classification.isTransientError)(error)) - return "TRANSIENT"; - if ((0, import_service_error_classification.isServerError)(error)) - return "SERVER_ERROR"; - return "CLIENT_ERROR"; - }, "getRetryErrorType"); - var retryMiddlewareOptions = { - name: "retryMiddleware", - tags: ["RETRY"], - step: "finalizeRequest", - priority: "high", - override: true - }; - var getRetryPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: (clientStack) => { - clientStack.add(retryMiddleware(options), retryMiddlewareOptions); - } - }), "getRetryPlugin"); - var getRetryAfterHint = /* @__PURE__ */ __name((response) => { - if (!import_protocol_http.HttpResponse.isInstance(response)) - return; - const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after"); - if (!retryAfterHeaderName) - return; - const retryAfter = response.headers[retryAfterHeaderName]; - const retryAfterSeconds = Number(retryAfter); - if (!Number.isNaN(retryAfterSeconds)) - return new Date(retryAfterSeconds * 1e3); - const retryAfterDate = new Date(retryAfter); - return retryAfterDate; - }, "getRetryAfterHint"); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/EndpointParameters.js -var require_EndpointParameters = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/EndpointParameters.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveClientEndpointParameters = void 0; - var resolveClientEndpointParameters = (options) => { - return { - ...options, - useFipsEndpoint: options.useFipsEndpoint ?? false, - useDualstackEndpoint: options.useDualstackEndpoint ?? false, - forcePathStyle: options.forcePathStyle ?? false, - useAccelerateEndpoint: options.useAccelerateEndpoint ?? false, - useGlobalEndpoint: options.useGlobalEndpoint ?? false, - disableMultiregionAccessPoints: options.disableMultiregionAccessPoints ?? false, - defaultSigningName: "s3" - }; - }; - exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; - } -}); - -// node_modules/@aws-sdk/client-s3/package.json -var require_package = __commonJS({ - "node_modules/@aws-sdk/client-s3/package.json"(exports2, module2) { - module2.exports = { - name: "@aws-sdk/client-s3", - description: "AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native", - version: "3.421.0", - scripts: { - build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", - "build:cjs": "tsc -p tsconfig.cjs.json", - "build:docs": "typedoc", - "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 s3", - test: "yarn test:unit", - "test:e2e": "ts-mocha test/**/*.ispec.ts && karma start karma.conf.js", - "test:unit": "ts-mocha test/**/*.spec.ts" - }, - main: "./dist-cjs/index.js", - types: "./dist-types/index.d.ts", - module: "./dist-es/index.js", - sideEffects: false, - dependencies: { - "@aws-crypto/sha1-browser": "3.0.0", - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.421.0", - "@aws-sdk/credential-provider-node": "3.421.0", - "@aws-sdk/middleware-bucket-endpoint": "3.418.0", - "@aws-sdk/middleware-expect-continue": "3.418.0", - "@aws-sdk/middleware-flexible-checksums": "3.418.0", - "@aws-sdk/middleware-host-header": "3.418.0", - "@aws-sdk/middleware-location-constraint": "3.418.0", - "@aws-sdk/middleware-logger": "3.418.0", - "@aws-sdk/middleware-recursion-detection": "3.418.0", - "@aws-sdk/middleware-sdk-s3": "3.418.0", - "@aws-sdk/middleware-signing": "3.418.0", - "@aws-sdk/middleware-ssec": "3.418.0", - "@aws-sdk/middleware-user-agent": "3.418.0", - "@aws-sdk/region-config-resolver": "3.418.0", - "@aws-sdk/signature-v4-multi-region": "3.418.0", - "@aws-sdk/types": "3.418.0", - "@aws-sdk/util-endpoints": "3.418.0", - "@aws-sdk/util-user-agent-browser": "3.418.0", - "@aws-sdk/util-user-agent-node": "3.418.0", - "@aws-sdk/xml-builder": "3.310.0", - "@smithy/config-resolver": "^2.0.10", - "@smithy/eventstream-serde-browser": "^2.0.9", - "@smithy/eventstream-serde-config-resolver": "^2.0.9", - "@smithy/eventstream-serde-node": "^2.0.9", - "@smithy/fetch-http-handler": "^2.1.5", - "@smithy/hash-blob-browser": "^2.0.9", - "@smithy/hash-node": "^2.0.9", - "@smithy/hash-stream-node": "^2.0.9", - "@smithy/invalid-dependency": "^2.0.9", - "@smithy/md5-js": "^2.0.9", - "@smithy/middleware-content-length": "^2.0.11", - "@smithy/middleware-endpoint": "^2.0.9", - "@smithy/middleware-retry": "^2.0.12", - "@smithy/middleware-serde": "^2.0.9", - "@smithy/middleware-stack": "^2.0.2", - "@smithy/node-config-provider": "^2.0.12", - "@smithy/node-http-handler": "^2.1.5", - "@smithy/protocol-http": "^3.0.5", - "@smithy/smithy-client": "^2.1.6", - "@smithy/types": "^2.3.3", - "@smithy/url-parser": "^2.0.9", - "@smithy/util-base64": "^2.0.0", - "@smithy/util-body-length-browser": "^2.0.0", - "@smithy/util-body-length-node": "^2.1.0", - "@smithy/util-defaults-mode-browser": "^2.0.10", - "@smithy/util-defaults-mode-node": "^2.0.12", - "@smithy/util-retry": "^2.0.2", - "@smithy/util-stream": "^2.0.12", - "@smithy/util-utf8": "^2.0.0", - "@smithy/util-waiter": "^2.0.9", - "fast-xml-parser": "4.2.5", - tslib: "^2.5.0" - }, - devDependencies: { - "@smithy/service-client-documentation-generator": "^2.0.0", - "@tsconfig/node14": "1.0.3", - "@types/chai": "^4.2.11", - "@types/mocha": "^8.0.4", - "@types/node": "^14.14.31", - concurrently: "7.0.0", - "downlevel-dts": "0.10.1", - rimraf: "3.0.2", - typedoc: "0.23.23", - typescript: "~4.9.5" - }, - engines: { - node: ">=14.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-s3", - repository: { - type: "git", - url: "https://github.com/aws/aws-sdk-js-v3.git", - directory: "clients/client-s3" - } - }; - } -}); - -// node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js -var require_dist_cjs42 = __commonJS({ - "node_modules/@aws-sdk/middleware-sdk-sts/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveStsAuthConfig = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var resolveStsAuthConfig = (input, { stsClientCtor }) => (0, middleware_signing_1.resolveAwsAuthConfig)({ - ...input, - stsClientCtor - }); - exports2.resolveStsAuthConfig = resolveStsAuthConfig; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js -var require_EndpointParameters2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveClientEndpointParameters = void 0; - var resolveClientEndpointParameters = (options) => { - return { - ...options, - useDualstackEndpoint: options.useDualstackEndpoint ?? false, - useFipsEndpoint: options.useFipsEndpoint ?? false, - useGlobalEndpoint: options.useGlobalEndpoint ?? false, - defaultSigningName: "sts" - }; - }; - exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; - } -}); - -// node_modules/@aws-sdk/client-sts/package.json -var require_package2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) { - module2.exports = { - name: "@aws-sdk/client-sts", - description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native", - version: "3.421.0", - scripts: { - build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", - "build:cjs": "tsc -p tsconfig.cjs.json", - "build:docs": "typedoc", - "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 sts", - test: "yarn test:unit", - "test:unit": "jest" - }, - main: "./dist-cjs/index.js", - types: "./dist-types/index.d.ts", - module: "./dist-es/index.js", - sideEffects: false, - dependencies: { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/credential-provider-node": "3.421.0", - "@aws-sdk/middleware-host-header": "3.418.0", - "@aws-sdk/middleware-logger": "3.418.0", - "@aws-sdk/middleware-recursion-detection": "3.418.0", - "@aws-sdk/middleware-sdk-sts": "3.418.0", - "@aws-sdk/middleware-signing": "3.418.0", - "@aws-sdk/middleware-user-agent": "3.418.0", - "@aws-sdk/region-config-resolver": "3.418.0", - "@aws-sdk/types": "3.418.0", - "@aws-sdk/util-endpoints": "3.418.0", - "@aws-sdk/util-user-agent-browser": "3.418.0", - "@aws-sdk/util-user-agent-node": "3.418.0", - "@smithy/config-resolver": "^2.0.10", - "@smithy/fetch-http-handler": "^2.1.5", - "@smithy/hash-node": "^2.0.9", - "@smithy/invalid-dependency": "^2.0.9", - "@smithy/middleware-content-length": "^2.0.11", - "@smithy/middleware-endpoint": "^2.0.9", - "@smithy/middleware-retry": "^2.0.12", - "@smithy/middleware-serde": "^2.0.9", - "@smithy/middleware-stack": "^2.0.2", - "@smithy/node-config-provider": "^2.0.12", - "@smithy/node-http-handler": "^2.1.5", - "@smithy/protocol-http": "^3.0.5", - "@smithy/smithy-client": "^2.1.6", - "@smithy/types": "^2.3.3", - "@smithy/url-parser": "^2.0.9", - "@smithy/util-base64": "^2.0.0", - "@smithy/util-body-length-browser": "^2.0.0", - "@smithy/util-body-length-node": "^2.1.0", - "@smithy/util-defaults-mode-browser": "^2.0.10", - "@smithy/util-defaults-mode-node": "^2.0.12", - "@smithy/util-retry": "^2.0.2", - "@smithy/util-utf8": "^2.0.0", - "fast-xml-parser": "4.2.5", - tslib: "^2.5.0" - }, - devDependencies: { - "@smithy/service-client-documentation-generator": "^2.0.0", - "@tsconfig/node14": "1.0.3", - "@types/node": "^14.14.31", - concurrently: "7.0.0", - "downlevel-dts": "0.10.1", - rimraf: "3.0.2", - typedoc: "0.23.23", - typescript: "~4.9.5" - }, - engines: { - node: ">=14.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-sts", - repository: { - type: "git", - url: "https://github.com/aws/aws-sdk-js-v3.git", - directory: "clients/client-sts" - } - }; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/models/STSServiceException.js -var require_STSServiceException = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/models/STSServiceException.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.STSServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { - return smithy_client_1.ServiceException; - } }); - var STSServiceException = class _STSServiceException extends smithy_client_1.ServiceException { - constructor(options) { - super(options); - Object.setPrototypeOf(this, _STSServiceException.prototype); - } - }; - exports2.STSServiceException = STSServiceException; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/models/models_0.js -var require_models_0 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/models/models_0.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetSessionTokenResponseFilterSensitiveLog = exports2.GetFederationTokenResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityResponseFilterSensitiveLog = exports2.AssumeRoleWithWebIdentityRequestFilterSensitiveLog = exports2.AssumeRoleWithSAMLResponseFilterSensitiveLog = exports2.AssumeRoleWithSAMLRequestFilterSensitiveLog = exports2.AssumeRoleResponseFilterSensitiveLog = exports2.CredentialsFilterSensitiveLog = exports2.InvalidAuthorizationMessageException = exports2.IDPCommunicationErrorException = exports2.InvalidIdentityTokenException = exports2.IDPRejectedClaimException = exports2.RegionDisabledException = exports2.PackedPolicyTooLargeException = exports2.MalformedPolicyDocumentException = exports2.ExpiredTokenException = void 0; - var smithy_client_1 = require_dist_cjs16(); - var STSServiceException_1 = require_STSServiceException(); - var ExpiredTokenException = class _ExpiredTokenException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "ExpiredTokenException", - $fault: "client", - ...opts - }); - this.name = "ExpiredTokenException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _ExpiredTokenException.prototype); - } - }; - exports2.ExpiredTokenException = ExpiredTokenException; - var MalformedPolicyDocumentException = class _MalformedPolicyDocumentException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "MalformedPolicyDocumentException", - $fault: "client", - ...opts - }); - this.name = "MalformedPolicyDocumentException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _MalformedPolicyDocumentException.prototype); - } - }; - exports2.MalformedPolicyDocumentException = MalformedPolicyDocumentException; - var PackedPolicyTooLargeException = class _PackedPolicyTooLargeException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "PackedPolicyTooLargeException", - $fault: "client", - ...opts - }); - this.name = "PackedPolicyTooLargeException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _PackedPolicyTooLargeException.prototype); - } - }; - exports2.PackedPolicyTooLargeException = PackedPolicyTooLargeException; - var RegionDisabledException = class _RegionDisabledException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "RegionDisabledException", - $fault: "client", - ...opts - }); - this.name = "RegionDisabledException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _RegionDisabledException.prototype); - } - }; - exports2.RegionDisabledException = RegionDisabledException; - var IDPRejectedClaimException = class _IDPRejectedClaimException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "IDPRejectedClaimException", - $fault: "client", - ...opts - }); - this.name = "IDPRejectedClaimException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _IDPRejectedClaimException.prototype); - } - }; - exports2.IDPRejectedClaimException = IDPRejectedClaimException; - var InvalidIdentityTokenException = class _InvalidIdentityTokenException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "InvalidIdentityTokenException", - $fault: "client", - ...opts - }); - this.name = "InvalidIdentityTokenException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidIdentityTokenException.prototype); - } - }; - exports2.InvalidIdentityTokenException = InvalidIdentityTokenException; - var IDPCommunicationErrorException = class _IDPCommunicationErrorException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "IDPCommunicationErrorException", - $fault: "client", - ...opts - }); - this.name = "IDPCommunicationErrorException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _IDPCommunicationErrorException.prototype); - } - }; - exports2.IDPCommunicationErrorException = IDPCommunicationErrorException; - var InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException extends STSServiceException_1.STSServiceException { - constructor(opts) { - super({ - name: "InvalidAuthorizationMessageException", - $fault: "client", - ...opts - }); - this.name = "InvalidAuthorizationMessageException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidAuthorizationMessageException.prototype); - } - }; - exports2.InvalidAuthorizationMessageException = InvalidAuthorizationMessageException; - var CredentialsFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SecretAccessKey && { SecretAccessKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CredentialsFilterSensitiveLog = CredentialsFilterSensitiveLog; - var AssumeRoleResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } - }); - exports2.AssumeRoleResponseFilterSensitiveLog = AssumeRoleResponseFilterSensitiveLog; - var AssumeRoleWithSAMLRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SAMLAssertion && { SAMLAssertion: smithy_client_1.SENSITIVE_STRING } - }); - exports2.AssumeRoleWithSAMLRequestFilterSensitiveLog = AssumeRoleWithSAMLRequestFilterSensitiveLog; - var AssumeRoleWithSAMLResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } - }); - exports2.AssumeRoleWithSAMLResponseFilterSensitiveLog = AssumeRoleWithSAMLResponseFilterSensitiveLog; - var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.WebIdentityToken && { WebIdentityToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.AssumeRoleWithWebIdentityRequestFilterSensitiveLog = AssumeRoleWithWebIdentityRequestFilterSensitiveLog; - var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } - }); - exports2.AssumeRoleWithWebIdentityResponseFilterSensitiveLog = AssumeRoleWithWebIdentityResponseFilterSensitiveLog; - var GetFederationTokenResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } - }); - exports2.GetFederationTokenResponseFilterSensitiveLog = GetFederationTokenResponseFilterSensitiveLog; - var GetSessionTokenResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Credentials && { Credentials: (0, exports2.CredentialsFilterSensitiveLog)(obj.Credentials) } - }); - exports2.GetSessionTokenResponseFilterSensitiveLog = GetSessionTokenResponseFilterSensitiveLog; - } -}); - -// node_modules/fast-xml-parser/src/util.js -var require_util2 = __commonJS({ - "node_modules/fast-xml-parser/src/util.js"(exports2) { - "use strict"; - var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD"; - var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040"; - var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*"; - var regexName = new RegExp("^" + nameRegexp + "$"); - var getAllMatches = function(string, regex) { - const matches = []; - let match = regex.exec(string); - while (match) { - const allmatches = []; - allmatches.startIndex = regex.lastIndex - match[0].length; - const len = match.length; - for (let index = 0; index < len; index++) { - allmatches.push(match[index]); - } - matches.push(allmatches); - match = regex.exec(string); - } - return matches; - }; - var isName = function(string) { - const match = regexName.exec(string); - return !(match === null || typeof match === "undefined"); - }; - exports2.isExist = function(v) { - return typeof v !== "undefined"; - }; - exports2.isEmptyObject = function(obj) { - return Object.keys(obj).length === 0; - }; - exports2.merge = function(target, a, arrayMode) { - if (a) { - const keys = Object.keys(a); - const len = keys.length; - for (let i = 0; i < len; i++) { - if (arrayMode === "strict") { - target[keys[i]] = [a[keys[i]]]; - } else { - target[keys[i]] = a[keys[i]]; - } - } - } - }; - exports2.getValue = function(v) { - if (exports2.isExist(v)) { - return v; - } else { - return ""; - } - }; - exports2.isName = isName; - exports2.getAllMatches = getAllMatches; - exports2.nameRegexp = nameRegexp; - } -}); - -// node_modules/fast-xml-parser/src/validator.js -var require_validator = __commonJS({ - "node_modules/fast-xml-parser/src/validator.js"(exports2) { - "use strict"; - var util = require_util2(); - var defaultOptions = { - allowBooleanAttributes: false, - //A tag can have attributes without any value - unpairedTags: [] - }; - exports2.validate = function(xmlData, options) { - options = Object.assign({}, defaultOptions, options); - const tags = []; - let tagFound = false; - let reachedRoot = false; - if (xmlData[0] === "\uFEFF") { - xmlData = xmlData.substr(1); - } - for (let i = 0; i < xmlData.length; i++) { - if (xmlData[i] === "<" && xmlData[i + 1] === "?") { - i += 2; - i = readPI(xmlData, i); - if (i.err) - return i; - } else if (xmlData[i] === "<") { - let tagStartPos = i; - i++; - if (xmlData[i] === "!") { - i = readCommentAndCDATA(xmlData, i); - continue; - } else { - let closingTag = false; - if (xmlData[i] === "/") { - closingTag = true; - i++; - } - let tagName = ""; - for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== " " && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) { - tagName += xmlData[i]; - } - tagName = tagName.trim(); - if (tagName[tagName.length - 1] === "/") { - tagName = tagName.substring(0, tagName.length - 1); - i--; - } - if (!validateTagName(tagName)) { - let msg; - if (tagName.trim().length === 0) { - msg = "Invalid space after '<'."; - } else { - msg = "Tag '" + tagName + "' is an invalid name."; - } - return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i)); - } - const result = readAttributeStr(xmlData, i); - if (result === false) { - return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i)); - } - let attrStr = result.value; - i = result.index; - if (attrStr[attrStr.length - 1] === "/") { - const attrStrStart = i - attrStr.length; - attrStr = attrStr.substring(0, attrStr.length - 1); - const isValid = validateAttributeString(attrStr, options); - if (isValid === true) { - tagFound = true; - } else { - return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line)); - } - } else if (closingTag) { - if (!result.tagClosed) { - return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i)); - } else if (attrStr.trim().length > 0) { - return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos)); - } else { - const otg = tags.pop(); - if (tagName !== otg.tagName) { - let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos); - return getErrorObject( - "InvalidTag", - "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.", - getLineNumberForPosition(xmlData, tagStartPos) - ); - } - if (tags.length == 0) { - reachedRoot = true; - } - } - } else { - const isValid = validateAttributeString(attrStr, options); - if (isValid !== true) { - return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line)); - } - if (reachedRoot === true) { - return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i)); - } else if (options.unpairedTags.indexOf(tagName) !== -1) { - } else { - tags.push({ tagName, tagStartPos }); - } - tagFound = true; - } - for (i++; i < xmlData.length; i++) { - if (xmlData[i] === "<") { - if (xmlData[i + 1] === "!") { - i++; - i = readCommentAndCDATA(xmlData, i); - continue; - } else if (xmlData[i + 1] === "?") { - i = readPI(xmlData, ++i); - if (i.err) - return i; - } else { - break; - } - } else if (xmlData[i] === "&") { - const afterAmp = validateAmpersand(xmlData, i); - if (afterAmp == -1) - return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i)); - i = afterAmp; - } else { - if (reachedRoot === true && !isWhiteSpace(xmlData[i])) { - return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i)); - } - } - } - if (xmlData[i] === "<") { - i--; - } - } - } else { - if (isWhiteSpace(xmlData[i])) { - continue; - } - return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i)); - } - } - if (!tagFound) { - return getErrorObject("InvalidXml", "Start tag expected.", 1); - } else if (tags.length == 1) { - return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos)); - } else if (tags.length > 0) { - return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 }); - } - return true; - }; - function isWhiteSpace(char) { - return char === " " || char === " " || char === "\n" || char === "\r"; - } - function readPI(xmlData, i) { - const start = i; - for (; i < xmlData.length; i++) { - if (xmlData[i] == "?" || xmlData[i] == " ") { - const tagname = xmlData.substr(start, i - start); - if (i > 5 && tagname === "xml") { - return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i)); - } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") { - i++; - break; - } else { - continue; - } - } - } - return i; - } - function readCommentAndCDATA(xmlData, i) { - if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") { - for (i += 3; i < xmlData.length; i++) { - if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") { - i += 2; - break; - } - } - } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") { - let angleBracketsCount = 1; - for (i += 8; i < xmlData.length; i++) { - if (xmlData[i] === "<") { - angleBracketsCount++; - } else if (xmlData[i] === ">") { - angleBracketsCount--; - if (angleBracketsCount === 0) { - break; - } - } - } - } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") { - for (i += 8; i < xmlData.length; i++) { - if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") { - i += 2; - break; - } - } - } - return i; - } - var doubleQuote = '"'; - var singleQuote = "'"; - function readAttributeStr(xmlData, i) { - let attrStr = ""; - let startChar = ""; - let tagClosed = false; - for (; i < xmlData.length; i++) { - if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) { - if (startChar === "") { - startChar = xmlData[i]; - } else if (startChar !== xmlData[i]) { - } else { - startChar = ""; - } - } else if (xmlData[i] === ">") { - if (startChar === "") { - tagClosed = true; - break; - } - } - attrStr += xmlData[i]; - } - if (startChar !== "") { - return false; - } - return { - value: attrStr, - index: i, - tagClosed - }; - } - var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g"); - function validateAttributeString(attrStr, options) { - const matches = util.getAllMatches(attrStr, validAttrStrRegxp); - const attrNames = {}; - for (let i = 0; i < matches.length; i++) { - if (matches[i][1].length === 0) { - return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i])); - } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) { - return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i])); - } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) { - return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i])); - } - const attrName = matches[i][2]; - if (!validateAttrName(attrName)) { - return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i])); - } - if (!attrNames.hasOwnProperty(attrName)) { - attrNames[attrName] = 1; - } else { - return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i])); - } - } - return true; - } - function validateNumberAmpersand(xmlData, i) { - let re = /\d/; - if (xmlData[i] === "x") { - i++; - re = /[\da-fA-F]/; - } - for (; i < xmlData.length; i++) { - if (xmlData[i] === ";") - return i; - if (!xmlData[i].match(re)) - break; - } - return -1; - } - function validateAmpersand(xmlData, i) { - i++; - if (xmlData[i] === ";") - return -1; - if (xmlData[i] === "#") { - i++; - return validateNumberAmpersand(xmlData, i); - } - let count = 0; - for (; i < xmlData.length; i++, count++) { - if (xmlData[i].match(/\w/) && count < 20) - continue; - if (xmlData[i] === ";") - break; - return -1; - } - return i; - } - function getErrorObject(code, message, lineNumber) { - return { - err: { - code, - msg: message, - line: lineNumber.line || lineNumber, - col: lineNumber.col - } - }; - } - function validateAttrName(attrName) { - return util.isName(attrName); - } - function validateTagName(tagname) { - return util.isName(tagname); - } - function getLineNumberForPosition(xmlData, index) { - const lines = xmlData.substring(0, index).split(/\r?\n/); - return { - line: lines.length, - // column number is last line's length + 1, because column numbering starts at 1: - col: lines[lines.length - 1].length + 1 - }; - } - function getPositionFromMatch(match) { - return match.startIndex + match[1].length; - } - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js -var require_OptionsBuilder = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) { - var defaultOptions = { - preserveOrder: false, - attributeNamePrefix: "@_", - attributesGroupName: false, - textNodeName: "#text", - ignoreAttributes: true, - removeNSPrefix: false, - // remove NS from tag name or attribute name if true - allowBooleanAttributes: false, - //a tag can have attributes without any value - //ignoreRootElement : false, - parseTagValue: true, - parseAttributeValue: false, - trimValues: true, - //Trim string values of tag and attributes - cdataPropName: false, - numberParseOptions: { - hex: true, - leadingZeros: true, - eNotation: true - }, - tagValueProcessor: function(tagName, val2) { - return val2; - }, - attributeValueProcessor: function(attrName, val2) { - return val2; - }, - stopNodes: [], - //nested tags will not be parsed even for errors - alwaysCreateTextNode: false, - isArray: () => false, - commentPropName: false, - unpairedTags: [], - processEntities: true, - htmlEntities: false, - ignoreDeclaration: false, - ignorePiTags: false, - transformTagName: false, - transformAttributeName: false, - updateTag: function(tagName, jPath, attrs) { - return tagName; - } - // skipEmptyListItem: false - }; - var buildOptions = function(options) { - return Object.assign({}, defaultOptions, options); - }; - exports2.buildOptions = buildOptions; - exports2.defaultOptions = defaultOptions; - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/xmlNode.js -var require_xmlNode = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) { - "use strict"; - var XmlNode = class { - constructor(tagname) { - this.tagname = tagname; - this.child = []; - this[":@"] = {}; - } - add(key, val2) { - if (key === "__proto__") - key = "#__proto__"; - this.child.push({ [key]: val2 }); - } - addChild(node) { - if (node.tagname === "__proto__") - node.tagname = "#__proto__"; - if (node[":@"] && Object.keys(node[":@"]).length > 0) { - this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] }); - } else { - this.child.push({ [node.tagname]: node.child }); - } - } - }; - module2.exports = XmlNode; - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js -var require_DocTypeReader = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) { - var util = require_util2(); - function readDocType(xmlData, i) { - const entities = {}; - if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") { - i = i + 9; - let angleBracketsCount = 1; - let hasBody = false, comment = false; - let exp = ""; - for (; i < xmlData.length; i++) { - if (xmlData[i] === "<" && !comment) { - if (hasBody && isEntity(xmlData, i)) { - i += 7; - [entityName, val, i] = readEntityExp(xmlData, i + 1); - if (val.indexOf("&") === -1) - entities[validateEntityName(entityName)] = { - regx: RegExp(`&${entityName};`, "g"), - val - }; - } else if (hasBody && isElement(xmlData, i)) - i += 8; - else if (hasBody && isAttlist(xmlData, i)) - i += 8; - else if (hasBody && isNotation(xmlData, i)) - i += 9; - else if (isComment) - comment = true; - else - throw new Error("Invalid DOCTYPE"); - angleBracketsCount++; - exp = ""; - } else if (xmlData[i] === ">") { - if (comment) { - if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") { - comment = false; - angleBracketsCount--; - } - } else { - angleBracketsCount--; - } - if (angleBracketsCount === 0) { - break; - } - } else if (xmlData[i] === "[") { - hasBody = true; - } else { - exp += xmlData[i]; - } - } - if (angleBracketsCount !== 0) { - throw new Error(`Unclosed DOCTYPE`); - } - } else { - throw new Error(`Invalid Tag instead of DOCTYPE`); - } - return { entities, i }; - } - function readEntityExp(xmlData, i) { - let entityName2 = ""; - for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) { - entityName2 += xmlData[i]; - } - entityName2 = entityName2.trim(); - if (entityName2.indexOf(" ") !== -1) - throw new Error("External entites are not supported"); - const startChar = xmlData[i++]; - let val2 = ""; - for (; i < xmlData.length && xmlData[i] !== startChar; i++) { - val2 += xmlData[i]; - } - return [entityName2, val2, i]; - } - function isComment(xmlData, i) { - if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") - return true; - return false; - } - function isEntity(xmlData, i) { - if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") - return true; - return false; - } - function isElement(xmlData, i) { - if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") - return true; - return false; - } - function isAttlist(xmlData, i) { - if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") - return true; - return false; - } - function isNotation(xmlData, i) { - if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") - return true; - return false; - } - function validateEntityName(name) { - if (util.isName(name)) - return name; - else - throw new Error(`Invalid entity name ${name}`); - } - module2.exports = readDocType; - } -}); - -// node_modules/strnum/strnum.js -var require_strnum = __commonJS({ - "node_modules/strnum/strnum.js"(exports2, module2) { - var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/; - var numRegex = /^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/; - if (!Number.parseInt && window.parseInt) { - Number.parseInt = window.parseInt; - } - if (!Number.parseFloat && window.parseFloat) { - Number.parseFloat = window.parseFloat; - } - var consider = { - hex: true, - leadingZeros: true, - decimalPoint: ".", - eNotation: true - //skipLike: /regex/ - }; - function toNumber(str, options = {}) { - options = Object.assign({}, consider, options); - if (!str || typeof str !== "string") - return str; - let trimmedStr = str.trim(); - if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) - return str; - else if (options.hex && hexRegex.test(trimmedStr)) { - return Number.parseInt(trimmedStr, 16); - } else { - const match = numRegex.exec(trimmedStr); - if (match) { - const sign = match[1]; - const leadingZeros = match[2]; - let numTrimmedByZeros = trimZeros(match[3]); - const eNotation = match[4] || match[6]; - if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") - return str; - else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") - return str; - else { - const num = Number(trimmedStr); - const numStr = "" + num; - if (numStr.search(/[eE]/) !== -1) { - if (options.eNotation) - return num; - else - return str; - } else if (eNotation) { - if (options.eNotation) - return num; - else - return str; - } else if (trimmedStr.indexOf(".") !== -1) { - if (numStr === "0" && numTrimmedByZeros === "") - return num; - else if (numStr === numTrimmedByZeros) - return num; - else if (sign && numStr === "-" + numTrimmedByZeros) - return num; - else - return str; - } - if (leadingZeros) { - if (numTrimmedByZeros === numStr) - return num; - else if (sign + numTrimmedByZeros === numStr) - return num; - else - return str; - } - if (trimmedStr === numStr) - return num; - else if (trimmedStr === sign + numStr) - return num; - return str; - } - } else { - return str; - } - } - } - function trimZeros(numStr) { - if (numStr && numStr.indexOf(".") !== -1) { - numStr = numStr.replace(/0+$/, ""); - if (numStr === ".") - numStr = "0"; - else if (numStr[0] === ".") - numStr = "0" + numStr; - else if (numStr[numStr.length - 1] === ".") - numStr = numStr.substr(0, numStr.length - 1); - return numStr; - } - return numStr; - } - module2.exports = toNumber; - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js -var require_OrderedObjParser = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) { - "use strict"; - var util = require_util2(); - var xmlNode = require_xmlNode(); - var readDocType = require_DocTypeReader(); - var toNumber = require_strnum(); - var regx = "<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g, util.nameRegexp); - var OrderedObjParser = class { - constructor(options) { - this.options = options; - this.currentNode = null; - this.tagsNodeStack = []; - this.docTypeEntities = {}; - this.lastEntities = { - "apos": { regex: /&(apos|#39|#x27);/g, val: "'" }, - "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" }, - "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" }, - "quot": { regex: /&(quot|#34|#x22);/g, val: '"' } - }; - this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" }; - this.htmlEntities = { - "space": { regex: /&(nbsp|#160);/g, val: " " }, - // "lt" : { regex: /&(lt|#60);/g, val: "<" }, - // "gt" : { regex: /&(gt|#62);/g, val: ">" }, - // "amp" : { regex: /&(amp|#38);/g, val: "&" }, - // "quot" : { regex: /&(quot|#34);/g, val: "\"" }, - // "apos" : { regex: /&(apos|#39);/g, val: "'" }, - "cent": { regex: /&(cent|#162);/g, val: "\xA2" }, - "pound": { regex: /&(pound|#163);/g, val: "\xA3" }, - "yen": { regex: /&(yen|#165);/g, val: "\xA5" }, - "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" }, - "copyright": { regex: /&(copy|#169);/g, val: "\xA9" }, - "reg": { regex: /&(reg|#174);/g, val: "\xAE" }, - "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" } - }; - this.addExternalEntities = addExternalEntities; - this.parseXml = parseXml; - this.parseTextData = parseTextData; - this.resolveNameSpace = resolveNameSpace; - this.buildAttributesMap = buildAttributesMap; - this.isItStopNode = isItStopNode; - this.replaceEntitiesValue = replaceEntitiesValue; - this.readStopNodeData = readStopNodeData; - this.saveTextToParentTag = saveTextToParentTag; - this.addChild = addChild; - } - }; - function addExternalEntities(externalEntities) { - const entKeys = Object.keys(externalEntities); - for (let i = 0; i < entKeys.length; i++) { - const ent = entKeys[i]; - this.lastEntities[ent] = { - regex: new RegExp("&" + ent + ";", "g"), - val: externalEntities[ent] - }; - } - } - function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) { - if (val2 !== void 0) { - if (this.options.trimValues && !dontTrim) { - val2 = val2.trim(); - } - if (val2.length > 0) { - if (!escapeEntities) - val2 = this.replaceEntitiesValue(val2); - const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode); - if (newval === null || newval === void 0) { - return val2; - } else if (typeof newval !== typeof val2 || newval !== val2) { - return newval; - } else if (this.options.trimValues) { - return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions); - } else { - const trimmedVal = val2.trim(); - if (trimmedVal === val2) { - return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions); - } else { - return val2; - } - } - } - } - } - function resolveNameSpace(tagname) { - if (this.options.removeNSPrefix) { - const tags = tagname.split(":"); - const prefix = tagname.charAt(0) === "/" ? "/" : ""; - if (tags[0] === "xmlns") { - return ""; - } - if (tags.length === 2) { - tagname = prefix + tags[1]; - } - } - return tagname; - } - var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm"); - function buildAttributesMap(attrStr, jPath, tagName) { - if (!this.options.ignoreAttributes && typeof attrStr === "string") { - const matches = util.getAllMatches(attrStr, attrsRegx); - const len = matches.length; - const attrs = {}; - for (let i = 0; i < len; i++) { - const attrName = this.resolveNameSpace(matches[i][1]); - let oldVal = matches[i][4]; - let aName = this.options.attributeNamePrefix + attrName; - if (attrName.length) { - if (this.options.transformAttributeName) { - aName = this.options.transformAttributeName(aName); - } - if (aName === "__proto__") - aName = "#__proto__"; - if (oldVal !== void 0) { - if (this.options.trimValues) { - oldVal = oldVal.trim(); - } - oldVal = this.replaceEntitiesValue(oldVal); - const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath); - if (newVal === null || newVal === void 0) { - attrs[aName] = oldVal; - } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) { - attrs[aName] = newVal; - } else { - attrs[aName] = parseValue( - oldVal, - this.options.parseAttributeValue, - this.options.numberParseOptions - ); - } - } else if (this.options.allowBooleanAttributes) { - attrs[aName] = true; - } - } - } - if (!Object.keys(attrs).length) { - return; - } - if (this.options.attributesGroupName) { - const attrCollection = {}; - attrCollection[this.options.attributesGroupName] = attrs; - return attrCollection; - } - return attrs; - } - } - var parseXml = function(xmlData) { - xmlData = xmlData.replace(/\r\n?/g, "\n"); - const xmlObj = new xmlNode("!xml"); - let currentNode = xmlObj; - let textData = ""; - let jPath = ""; - for (let i = 0; i < xmlData.length; i++) { - const ch = xmlData[i]; - if (ch === "<") { - if (xmlData[i + 1] === "/") { - const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed."); - let tagName = xmlData.substring(i + 2, closeIndex).trim(); - if (this.options.removeNSPrefix) { - const colonIndex = tagName.indexOf(":"); - if (colonIndex !== -1) { - tagName = tagName.substr(colonIndex + 1); - } - } - if (this.options.transformTagName) { - tagName = this.options.transformTagName(tagName); - } - if (currentNode) { - textData = this.saveTextToParentTag(textData, currentNode, jPath); - } - const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1); - if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) { - throw new Error(`Unpaired tag can not be used as closing tag: `); - } - let propIndex = 0; - if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) { - propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1); - this.tagsNodeStack.pop(); - } else { - propIndex = jPath.lastIndexOf("."); - } - jPath = jPath.substring(0, propIndex); - currentNode = this.tagsNodeStack.pop(); - textData = ""; - i = closeIndex; - } else if (xmlData[i + 1] === "?") { - let tagData = readTagExp(xmlData, i, false, "?>"); - if (!tagData) - throw new Error("Pi Tag is not closed."); - textData = this.saveTextToParentTag(textData, currentNode, jPath); - if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) { - } else { - const childNode = new xmlNode(tagData.tagName); - childNode.add(this.options.textNodeName, ""); - if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) { - childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName); - } - this.addChild(currentNode, childNode, jPath); - } - i = tagData.closeIndex + 1; - } else if (xmlData.substr(i + 1, 3) === "!--") { - const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed."); - if (this.options.commentPropName) { - const comment = xmlData.substring(i + 4, endIndex - 2); - textData = this.saveTextToParentTag(textData, currentNode, jPath); - currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]); - } - i = endIndex; - } else if (xmlData.substr(i + 1, 2) === "!D") { - const result = readDocType(xmlData, i); - this.docTypeEntities = result.entities; - i = result.i; - } else if (xmlData.substr(i + 1, 2) === "![") { - const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2; - const tagExp = xmlData.substring(i + 9, closeIndex); - textData = this.saveTextToParentTag(textData, currentNode, jPath); - if (this.options.cdataPropName) { - currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]); - } else { - let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true); - if (val2 == void 0) - val2 = ""; - currentNode.add(this.options.textNodeName, val2); - } - i = closeIndex + 2; - } else { - let result = readTagExp(xmlData, i, this.options.removeNSPrefix); - let tagName = result.tagName; - let tagExp = result.tagExp; - let attrExpPresent = result.attrExpPresent; - let closeIndex = result.closeIndex; - if (this.options.transformTagName) { - tagName = this.options.transformTagName(tagName); - } - if (currentNode && textData) { - if (currentNode.tagname !== "!xml") { - textData = this.saveTextToParentTag(textData, currentNode, jPath, false); - } - } - const lastTag = currentNode; - if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) { - currentNode = this.tagsNodeStack.pop(); - jPath = jPath.substring(0, jPath.lastIndexOf(".")); - } - if (tagName !== xmlObj.tagname) { - jPath += jPath ? "." + tagName : tagName; - } - if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) { - let tagContent = ""; - if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) { - i = result.closeIndex; - } else if (this.options.unpairedTags.indexOf(tagName) !== -1) { - i = result.closeIndex; - } else { - const result2 = this.readStopNodeData(xmlData, tagName, closeIndex + 1); - if (!result2) - throw new Error(`Unexpected end of ${tagName}`); - i = result2.i; - tagContent = result2.tagContent; - } - const childNode = new xmlNode(tagName); - if (tagName !== tagExp && attrExpPresent) { - childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); - } - if (tagContent) { - tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true); - } - jPath = jPath.substr(0, jPath.lastIndexOf(".")); - childNode.add(this.options.textNodeName, tagContent); - this.addChild(currentNode, childNode, jPath); - } else { - if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) { - if (tagName[tagName.length - 1] === "/") { - tagName = tagName.substr(0, tagName.length - 1); - tagExp = tagName; - } else { - tagExp = tagExp.substr(0, tagExp.length - 1); - } - if (this.options.transformTagName) { - tagName = this.options.transformTagName(tagName); - } - const childNode = new xmlNode(tagName); - if (tagName !== tagExp && attrExpPresent) { - childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); - } - this.addChild(currentNode, childNode, jPath); - jPath = jPath.substr(0, jPath.lastIndexOf(".")); - } else { - const childNode = new xmlNode(tagName); - this.tagsNodeStack.push(currentNode); - if (tagName !== tagExp && attrExpPresent) { - childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName); - } - this.addChild(currentNode, childNode, jPath); - currentNode = childNode; - } - textData = ""; - i = closeIndex; - } - } - } else { - textData += xmlData[i]; - } - } - return xmlObj.child; - }; - function addChild(currentNode, childNode, jPath) { - const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]); - if (result === false) { - } else if (typeof result === "string") { - childNode.tagname = result; - currentNode.addChild(childNode); - } else { - currentNode.addChild(childNode); - } - } - var replaceEntitiesValue = function(val2) { - if (this.options.processEntities) { - for (let entityName2 in this.docTypeEntities) { - const entity = this.docTypeEntities[entityName2]; - val2 = val2.replace(entity.regx, entity.val); - } - for (let entityName2 in this.lastEntities) { - const entity = this.lastEntities[entityName2]; - val2 = val2.replace(entity.regex, entity.val); - } - if (this.options.htmlEntities) { - for (let entityName2 in this.htmlEntities) { - const entity = this.htmlEntities[entityName2]; - val2 = val2.replace(entity.regex, entity.val); - } - } - val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val); - } - return val2; - }; - function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) { - if (textData) { - if (isLeafNode === void 0) - isLeafNode = Object.keys(currentNode.child).length === 0; - textData = this.parseTextData( - textData, - currentNode.tagname, - jPath, - false, - currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false, - isLeafNode - ); - if (textData !== void 0 && textData !== "") - currentNode.add(this.options.textNodeName, textData); - textData = ""; - } - return textData; - } - function isItStopNode(stopNodes, jPath, currentTagName) { - const allNodesExp = "*." + currentTagName; - for (const stopNodePath in stopNodes) { - const stopNodeExp = stopNodes[stopNodePath]; - if (allNodesExp === stopNodeExp || jPath === stopNodeExp) - return true; - } - return false; - } - function tagExpWithClosingIndex(xmlData, i, closingChar = ">") { - let attrBoundary; - let tagExp = ""; - for (let index = i; index < xmlData.length; index++) { - let ch = xmlData[index]; - if (attrBoundary) { - if (ch === attrBoundary) - attrBoundary = ""; - } else if (ch === '"' || ch === "'") { - attrBoundary = ch; - } else if (ch === closingChar[0]) { - if (closingChar[1]) { - if (xmlData[index + 1] === closingChar[1]) { - return { - data: tagExp, - index - }; - } - } else { - return { - data: tagExp, - index - }; - } - } else if (ch === " ") { - ch = " "; - } - tagExp += ch; - } - } - function findClosingIndex(xmlData, str, i, errMsg) { - const closingIndex = xmlData.indexOf(str, i); - if (closingIndex === -1) { - throw new Error(errMsg); - } else { - return closingIndex + str.length - 1; - } - } - function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") { - const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar); - if (!result) - return; - let tagExp = result.data; - const closeIndex = result.index; - const separatorIndex = tagExp.search(/\s/); - let tagName = tagExp; - let attrExpPresent = true; - if (separatorIndex !== -1) { - tagName = tagExp.substr(0, separatorIndex).replace(/\s\s*$/, ""); - tagExp = tagExp.substr(separatorIndex + 1); - } - if (removeNSPrefix) { - const colonIndex = tagName.indexOf(":"); - if (colonIndex !== -1) { - tagName = tagName.substr(colonIndex + 1); - attrExpPresent = tagName !== result.data.substr(colonIndex + 1); - } - } - return { - tagName, - tagExp, - closeIndex, - attrExpPresent - }; - } - function readStopNodeData(xmlData, tagName, i) { - const startIndex = i; - let openTagCount = 1; - for (; i < xmlData.length; i++) { - if (xmlData[i] === "<") { - if (xmlData[i + 1] === "/") { - const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`); - let closeTagName = xmlData.substring(i + 2, closeIndex).trim(); - if (closeTagName === tagName) { - openTagCount--; - if (openTagCount === 0) { - return { - tagContent: xmlData.substring(startIndex, i), - i: closeIndex - }; - } - } - i = closeIndex; - } else if (xmlData[i + 1] === "?") { - const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed."); - i = closeIndex; - } else if (xmlData.substr(i + 1, 3) === "!--") { - const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed."); - i = closeIndex; - } else if (xmlData.substr(i + 1, 2) === "![") { - const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2; - i = closeIndex; - } else { - const tagData = readTagExp(xmlData, i, ">"); - if (tagData) { - const openTagName = tagData && tagData.tagName; - if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") { - openTagCount++; - } - i = tagData.closeIndex; - } - } - } - } - } - function parseValue(val2, shouldParse, options) { - if (shouldParse && typeof val2 === "string") { - const newval = val2.trim(); - if (newval === "true") - return true; - else if (newval === "false") - return false; - else - return toNumber(val2, options); - } else { - if (util.isExist(val2)) { - return val2; - } else { - return ""; - } - } - } - module2.exports = OrderedObjParser; - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/node2json.js -var require_node2json = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) { - "use strict"; - function prettify(node, options) { - return compress(node, options); - } - function compress(arr, options, jPath) { - let text; - const compressedObj = {}; - for (let i = 0; i < arr.length; i++) { - const tagObj = arr[i]; - const property = propName(tagObj); - let newJpath = ""; - if (jPath === void 0) - newJpath = property; - else - newJpath = jPath + "." + property; - if (property === options.textNodeName) { - if (text === void 0) - text = tagObj[property]; - else - text += "" + tagObj[property]; - } else if (property === void 0) { - continue; - } else if (tagObj[property]) { - let val2 = compress(tagObj[property], options, newJpath); - const isLeaf = isLeafTag(val2, options); - if (tagObj[":@"]) { - assignAttributes(val2, tagObj[":@"], newJpath, options); - } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) { - val2 = val2[options.textNodeName]; - } else if (Object.keys(val2).length === 0) { - if (options.alwaysCreateTextNode) - val2[options.textNodeName] = ""; - else - val2 = ""; - } - if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) { - if (!Array.isArray(compressedObj[property])) { - compressedObj[property] = [compressedObj[property]]; - } - compressedObj[property].push(val2); - } else { - if (options.isArray(property, newJpath, isLeaf)) { - compressedObj[property] = [val2]; - } else { - compressedObj[property] = val2; - } - } - } - } - if (typeof text === "string") { - if (text.length > 0) - compressedObj[options.textNodeName] = text; - } else if (text !== void 0) - compressedObj[options.textNodeName] = text; - return compressedObj; - } - function propName(obj) { - const keys = Object.keys(obj); - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - if (key !== ":@") - return key; - } - } - function assignAttributes(obj, attrMap, jpath, options) { - if (attrMap) { - const keys = Object.keys(attrMap); - const len = keys.length; - for (let i = 0; i < len; i++) { - const atrrName = keys[i]; - if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) { - obj[atrrName] = [attrMap[atrrName]]; - } else { - obj[atrrName] = attrMap[atrrName]; - } - } - } - } - function isLeafTag(obj, options) { - const { textNodeName } = options; - const propCount = Object.keys(obj).length; - if (propCount === 0) { - return true; - } - if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) { - return true; - } - return false; - } - exports2.prettify = prettify; - } -}); - -// node_modules/fast-xml-parser/src/xmlparser/XMLParser.js -var require_XMLParser = __commonJS({ - "node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) { - var { buildOptions } = require_OptionsBuilder(); - var OrderedObjParser = require_OrderedObjParser(); - var { prettify } = require_node2json(); - var validator = require_validator(); - var XMLParser = class { - constructor(options) { - this.externalEntities = {}; - this.options = buildOptions(options); - } - /** - * Parse XML dats to JS object - * @param {string|Buffer} xmlData - * @param {boolean|Object} validationOption - */ - parse(xmlData, validationOption) { - if (typeof xmlData === "string") { - } else if (xmlData.toString) { - xmlData = xmlData.toString(); - } else { - throw new Error("XML data is accepted in String or Bytes[] form."); - } - if (validationOption) { - if (validationOption === true) - validationOption = {}; - const result = validator.validate(xmlData, validationOption); - if (result !== true) { - throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`); - } - } - const orderedObjParser = new OrderedObjParser(this.options); - orderedObjParser.addExternalEntities(this.externalEntities); - const orderedResult = orderedObjParser.parseXml(xmlData); - if (this.options.preserveOrder || orderedResult === void 0) - return orderedResult; - else - return prettify(orderedResult, this.options); - } - /** - * Add Entity which is not by default supported by this library - * @param {string} key - * @param {string} value - */ - addEntity(key, value) { - if (value.indexOf("&") !== -1) { - throw new Error("Entity value can't have '&'"); - } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) { - throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for ' '"); - } else if (value === "&") { - throw new Error("An entity with value '&' is not permitted"); - } else { - this.externalEntities[key] = value; - } - } - }; - module2.exports = XMLParser; - } -}); - -// node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js -var require_orderedJs2Xml = __commonJS({ - "node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) { - var EOL = "\n"; - function toXml(jArray, options) { - let indentation = ""; - if (options.format && options.indentBy.length > 0) { - indentation = EOL; - } - return arrToStr(jArray, options, "", indentation); - } - function arrToStr(arr, options, jPath, indentation) { - let xmlStr = ""; - let isPreviousElementTag = false; - for (let i = 0; i < arr.length; i++) { - const tagObj = arr[i]; - const tagName = propName(tagObj); - let newJPath = ""; - if (jPath.length === 0) - newJPath = tagName; - else - newJPath = `${jPath}.${tagName}`; - if (tagName === options.textNodeName) { - let tagText = tagObj[tagName]; - if (!isStopNode(newJPath, options)) { - tagText = options.tagValueProcessor(tagName, tagText); - tagText = replaceEntitiesValue(tagText, options); - } - if (isPreviousElementTag) { - xmlStr += indentation; - } - xmlStr += tagText; - isPreviousElementTag = false; - continue; - } else if (tagName === options.cdataPropName) { - if (isPreviousElementTag) { - xmlStr += indentation; - } - xmlStr += ``; - isPreviousElementTag = false; - continue; - } else if (tagName === options.commentPropName) { - xmlStr += indentation + ``; - isPreviousElementTag = true; - continue; - } else if (tagName[0] === "?") { - const attStr2 = attr_to_str(tagObj[":@"], options); - const tempInd = tagName === "?xml" ? "" : indentation; - let piTextNodeName = tagObj[tagName][0][options.textNodeName]; - piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : ""; - xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`; - isPreviousElementTag = true; - continue; - } - let newIdentation = indentation; - if (newIdentation !== "") { - newIdentation += options.indentBy; - } - const attStr = attr_to_str(tagObj[":@"], options); - const tagStart = indentation + `<${tagName}${attStr}`; - const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation); - if (options.unpairedTags.indexOf(tagName) !== -1) { - if (options.suppressUnpairedNode) - xmlStr += tagStart + ">"; - else - xmlStr += tagStart + "/>"; - } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) { - xmlStr += tagStart + "/>"; - } else if (tagValue && tagValue.endsWith(">")) { - xmlStr += tagStart + `>${tagValue}${indentation}`; - } else { - xmlStr += tagStart + ">"; - if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`; - } - isPreviousElementTag = true; - } - return xmlStr; - } - function propName(obj) { - const keys = Object.keys(obj); - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - if (key !== ":@") - return key; - } - } - function attr_to_str(attrMap, options) { - let attrStr = ""; - if (attrMap && !options.ignoreAttributes) { - for (let attr in attrMap) { - let attrVal = options.attributeValueProcessor(attr, attrMap[attr]); - attrVal = replaceEntitiesValue(attrVal, options); - if (attrVal === true && options.suppressBooleanAttributes) { - attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`; - } else { - attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`; - } - } - } - return attrStr; - } - function isStopNode(jPath, options) { - jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1); - let tagName = jPath.substr(jPath.lastIndexOf(".") + 1); - for (let index in options.stopNodes) { - if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) - return true; - } - return false; - } - function replaceEntitiesValue(textValue, options) { - if (textValue && textValue.length > 0 && options.processEntities) { - for (let i = 0; i < options.entities.length; i++) { - const entity = options.entities[i]; - textValue = textValue.replace(entity.regex, entity.val); - } - } - return textValue; - } - module2.exports = toXml; - } -}); - -// node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js -var require_json2xml = __commonJS({ - "node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) { - "use strict"; - var buildFromOrderedJs = require_orderedJs2Xml(); - var defaultOptions = { - attributeNamePrefix: "@_", - attributesGroupName: false, - textNodeName: "#text", - ignoreAttributes: true, - cdataPropName: false, - format: false, - indentBy: " ", - suppressEmptyNode: false, - suppressUnpairedNode: true, - suppressBooleanAttributes: true, - tagValueProcessor: function(key, a) { - return a; - }, - attributeValueProcessor: function(attrName, a) { - return a; - }, - preserveOrder: false, - commentPropName: false, - unpairedTags: [], - entities: [ - { regex: new RegExp("&", "g"), val: "&" }, - //it must be on top - { regex: new RegExp(">", "g"), val: ">" }, - { regex: new RegExp("<", "g"), val: "<" }, - { regex: new RegExp("'", "g"), val: "'" }, - { regex: new RegExp('"', "g"), val: """ } - ], - processEntities: true, - stopNodes: [], - // transformTagName: false, - // transformAttributeName: false, - oneListGroup: false - }; - function Builder(options) { - this.options = Object.assign({}, defaultOptions, options); - if (this.options.ignoreAttributes || this.options.attributesGroupName) { - this.isAttribute = function() { - return false; - }; - } else { - this.attrPrefixLen = this.options.attributeNamePrefix.length; - this.isAttribute = isAttribute; - } - this.processTextOrObjNode = processTextOrObjNode; - if (this.options.format) { - this.indentate = indentate; - this.tagEndChar = ">\n"; - this.newLine = "\n"; - } else { - this.indentate = function() { - return ""; - }; - this.tagEndChar = ">"; - this.newLine = ""; - } - } - Builder.prototype.build = function(jObj) { - if (this.options.preserveOrder) { - return buildFromOrderedJs(jObj, this.options); - } else { - if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) { - jObj = { - [this.options.arrayNodeName]: jObj - }; - } - return this.j2x(jObj, 0).val; - } - }; - Builder.prototype.j2x = function(jObj, level) { - let attrStr = ""; - let val2 = ""; - for (let key in jObj) { - if (typeof jObj[key] === "undefined") { - } else if (jObj[key] === null) { - if (key[0] === "?") - val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar; - else - val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar; - } else if (jObj[key] instanceof Date) { - val2 += this.buildTextValNode(jObj[key], key, "", level); - } else if (typeof jObj[key] !== "object") { - const attr = this.isAttribute(key); - if (attr) { - attrStr += this.buildAttrPairStr(attr, "" + jObj[key]); - } else { - if (key === this.options.textNodeName) { - let newval = this.options.tagValueProcessor(key, "" + jObj[key]); - val2 += this.replaceEntitiesValue(newval); - } else { - val2 += this.buildTextValNode(jObj[key], key, "", level); - } - } - } else if (Array.isArray(jObj[key])) { - const arrLen = jObj[key].length; - let listTagVal = ""; - for (let j = 0; j < arrLen; j++) { - const item = jObj[key][j]; - if (typeof item === "undefined") { - } else if (item === null) { - if (key[0] === "?") - val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar; - else - val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar; - } else if (typeof item === "object") { - if (this.options.oneListGroup) { - listTagVal += this.j2x(item, level + 1).val; - } else { - listTagVal += this.processTextOrObjNode(item, key, level); - } - } else { - listTagVal += this.buildTextValNode(item, key, "", level); - } - } - if (this.options.oneListGroup) { - listTagVal = this.buildObjectNode(listTagVal, key, "", level); - } - val2 += listTagVal; - } else { - if (this.options.attributesGroupName && key === this.options.attributesGroupName) { - const Ks = Object.keys(jObj[key]); - const L = Ks.length; - for (let j = 0; j < L; j++) { - attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]); - } - } else { - val2 += this.processTextOrObjNode(jObj[key], key, level); - } - } - } - return { attrStr, val: val2 }; - }; - Builder.prototype.buildAttrPairStr = function(attrName, val2) { - val2 = this.options.attributeValueProcessor(attrName, "" + val2); - val2 = this.replaceEntitiesValue(val2); - if (this.options.suppressBooleanAttributes && val2 === "true") { - return " " + attrName; - } else - return " " + attrName + '="' + val2 + '"'; - }; - function processTextOrObjNode(object, key, level) { - const result = this.j2x(object, level + 1); - if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) { - return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level); - } else { - return this.buildObjectNode(result.val, key, result.attrStr, level); - } - } - Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) { - if (val2 === "") { - if (key[0] === "?") - return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar; - else { - return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar; - } - } else { - let tagEndExp = "" + val2 + tagEndExp; - } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) { - return this.indentate(level) + `` + this.newLine; - } else { - return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp; - } - } - }; - Builder.prototype.closeTag = function(key) { - let closeTag = ""; - if (this.options.unpairedTags.indexOf(key) !== -1) { - if (!this.options.suppressUnpairedNode) - closeTag = "/"; - } else if (this.options.suppressEmptyNode) { - closeTag = "/"; - } else { - closeTag = `>` + this.newLine; - } else if (this.options.commentPropName !== false && key === this.options.commentPropName) { - return this.indentate(level) + `` + this.newLine; - } else if (key[0] === "?") { - return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar; - } else { - let textValue = this.options.tagValueProcessor(key, val2); - textValue = this.replaceEntitiesValue(textValue); - if (textValue === "") { - return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar; - } else { - return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) { - for (let i = 0; i < this.options.entities.length; i++) { - const entity = this.options.entities[i]; - textValue = textValue.replace(entity.regex, entity.val); - } - } - return textValue; - }; - function indentate(level) { - return this.options.indentBy.repeat(level); - } - function isAttribute(name) { - if (name.startsWith(this.options.attributeNamePrefix)) { - return name.substr(this.attrPrefixLen); - } else { - return false; - } - } - module2.exports = Builder; - } -}); - -// node_modules/fast-xml-parser/src/fxp.js -var require_fxp = __commonJS({ - "node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) { - "use strict"; - var validator = require_validator(); - var XMLParser = require_XMLParser(); - var XMLBuilder = require_json2xml(); - module2.exports = { - XMLParser, - XMLValidator: validator, - XMLBuilder - }; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/protocols/Aws_query.js -var require_Aws_query = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/protocols/Aws_query.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.de_GetSessionTokenCommand = exports2.de_GetFederationTokenCommand = exports2.de_GetCallerIdentityCommand = exports2.de_GetAccessKeyInfoCommand = exports2.de_DecodeAuthorizationMessageCommand = exports2.de_AssumeRoleWithWebIdentityCommand = exports2.de_AssumeRoleWithSAMLCommand = exports2.de_AssumeRoleCommand = exports2.se_GetSessionTokenCommand = exports2.se_GetFederationTokenCommand = exports2.se_GetCallerIdentityCommand = exports2.se_GetAccessKeyInfoCommand = exports2.se_DecodeAuthorizationMessageCommand = exports2.se_AssumeRoleWithWebIdentityCommand = exports2.se_AssumeRoleWithSAMLCommand = exports2.se_AssumeRoleCommand = void 0; - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var fast_xml_parser_1 = require_fxp(); - var models_0_1 = require_models_0(); - var STSServiceException_1 = require_STSServiceException(); - var se_AssumeRoleCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_AssumeRoleRequest(input, context), - Action: "AssumeRole", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_AssumeRoleCommand = se_AssumeRoleCommand; - var se_AssumeRoleWithSAMLCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_AssumeRoleWithSAMLRequest(input, context), - Action: "AssumeRoleWithSAML", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_AssumeRoleWithSAMLCommand = se_AssumeRoleWithSAMLCommand; - var se_AssumeRoleWithWebIdentityCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_AssumeRoleWithWebIdentityRequest(input, context), - Action: "AssumeRoleWithWebIdentity", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_AssumeRoleWithWebIdentityCommand = se_AssumeRoleWithWebIdentityCommand; - var se_DecodeAuthorizationMessageCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_DecodeAuthorizationMessageRequest(input, context), - Action: "DecodeAuthorizationMessage", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_DecodeAuthorizationMessageCommand = se_DecodeAuthorizationMessageCommand; - var se_GetAccessKeyInfoCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_GetAccessKeyInfoRequest(input, context), - Action: "GetAccessKeyInfo", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_GetAccessKeyInfoCommand = se_GetAccessKeyInfoCommand; - var se_GetCallerIdentityCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_GetCallerIdentityRequest(input, context), - Action: "GetCallerIdentity", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_GetCallerIdentityCommand = se_GetCallerIdentityCommand; - var se_GetFederationTokenCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_GetFederationTokenRequest(input, context), - Action: "GetFederationToken", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_GetFederationTokenCommand = se_GetFederationTokenCommand; - var se_GetSessionTokenCommand = async (input, context) => { - const headers = SHARED_HEADERS; - let body; - body = buildFormUrlencodedString({ - ...se_GetSessionTokenRequest(input, context), - Action: "GetSessionToken", - Version: "2011-06-15" - }); - return buildHttpRpcRequest(context, headers, "/", void 0, body); - }; - exports2.se_GetSessionTokenCommand = se_GetSessionTokenCommand; - var de_AssumeRoleCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_AssumeRoleCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_AssumeRoleResponse(data.AssumeRoleResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_AssumeRoleCommand = de_AssumeRoleCommand; - var de_AssumeRoleCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "ExpiredTokenException": - case "com.amazonaws.sts#ExpiredTokenException": - throw await de_ExpiredTokenExceptionRes(parsedOutput, context); - case "MalformedPolicyDocument": - case "com.amazonaws.sts#MalformedPolicyDocumentException": - throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); - case "PackedPolicyTooLarge": - case "com.amazonaws.sts#PackedPolicyTooLargeException": - throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); - case "RegionDisabledException": - case "com.amazonaws.sts#RegionDisabledException": - throw await de_RegionDisabledExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_AssumeRoleWithSAMLCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_AssumeRoleWithSAMLCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_AssumeRoleWithSAMLCommand = de_AssumeRoleWithSAMLCommand; - var de_AssumeRoleWithSAMLCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "ExpiredTokenException": - case "com.amazonaws.sts#ExpiredTokenException": - throw await de_ExpiredTokenExceptionRes(parsedOutput, context); - case "IDPRejectedClaim": - case "com.amazonaws.sts#IDPRejectedClaimException": - throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context); - case "InvalidIdentityToken": - case "com.amazonaws.sts#InvalidIdentityTokenException": - throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context); - case "MalformedPolicyDocument": - case "com.amazonaws.sts#MalformedPolicyDocumentException": - throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); - case "PackedPolicyTooLarge": - case "com.amazonaws.sts#PackedPolicyTooLargeException": - throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); - case "RegionDisabledException": - case "com.amazonaws.sts#RegionDisabledException": - throw await de_RegionDisabledExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_AssumeRoleWithWebIdentityCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_AssumeRoleWithWebIdentityCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_AssumeRoleWithWebIdentityCommand = de_AssumeRoleWithWebIdentityCommand; - var de_AssumeRoleWithWebIdentityCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "ExpiredTokenException": - case "com.amazonaws.sts#ExpiredTokenException": - throw await de_ExpiredTokenExceptionRes(parsedOutput, context); - case "IDPCommunicationError": - case "com.amazonaws.sts#IDPCommunicationErrorException": - throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context); - case "IDPRejectedClaim": - case "com.amazonaws.sts#IDPRejectedClaimException": - throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context); - case "InvalidIdentityToken": - case "com.amazonaws.sts#InvalidIdentityTokenException": - throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context); - case "MalformedPolicyDocument": - case "com.amazonaws.sts#MalformedPolicyDocumentException": - throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); - case "PackedPolicyTooLarge": - case "com.amazonaws.sts#PackedPolicyTooLargeException": - throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); - case "RegionDisabledException": - case "com.amazonaws.sts#RegionDisabledException": - throw await de_RegionDisabledExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_DecodeAuthorizationMessageCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_DecodeAuthorizationMessageCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_DecodeAuthorizationMessageCommand = de_DecodeAuthorizationMessageCommand; - var de_DecodeAuthorizationMessageCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidAuthorizationMessageException": - case "com.amazonaws.sts#InvalidAuthorizationMessageException": - throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_GetAccessKeyInfoCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_GetAccessKeyInfoCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_GetAccessKeyInfoCommand = de_GetAccessKeyInfoCommand; - var de_GetAccessKeyInfoCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - }; - var de_GetCallerIdentityCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_GetCallerIdentityCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_GetCallerIdentityCommand = de_GetCallerIdentityCommand; - var de_GetCallerIdentityCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - }; - var de_GetFederationTokenCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_GetFederationTokenCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_GetFederationTokenCommand = de_GetFederationTokenCommand; - var de_GetFederationTokenCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "MalformedPolicyDocument": - case "com.amazonaws.sts#MalformedPolicyDocumentException": - throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context); - case "PackedPolicyTooLarge": - case "com.amazonaws.sts#PackedPolicyTooLargeException": - throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context); - case "RegionDisabledException": - case "com.amazonaws.sts#RegionDisabledException": - throw await de_RegionDisabledExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_GetSessionTokenCommand = async (output, context) => { - if (output.statusCode >= 300) { - return de_GetSessionTokenCommandError(output, context); - } - const data = await parseBody(output.body, context); - let contents = {}; - contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context); - const response = { - $metadata: deserializeMetadata(output), - ...contents - }; - return response; - }; - exports2.de_GetSessionTokenCommand = de_GetSessionTokenCommand; - var de_GetSessionTokenCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadQueryErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "RegionDisabledException": - case "com.amazonaws.sts#RegionDisabledException": - throw await de_RegionDisabledExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody: parsedBody.Error, - errorCode - }); - } - }; - var de_ExpiredTokenExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_ExpiredTokenException(body.Error, context); - const exception = new models_0_1.ExpiredTokenException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_IDPCommunicationErrorExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_IDPCommunicationErrorException(body.Error, context); - const exception = new models_0_1.IDPCommunicationErrorException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_IDPRejectedClaimExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_IDPRejectedClaimException(body.Error, context); - const exception = new models_0_1.IDPRejectedClaimException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_InvalidAuthorizationMessageExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_InvalidAuthorizationMessageException(body.Error, context); - const exception = new models_0_1.InvalidAuthorizationMessageException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_InvalidIdentityTokenExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_InvalidIdentityTokenException(body.Error, context); - const exception = new models_0_1.InvalidIdentityTokenException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_MalformedPolicyDocumentExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_MalformedPolicyDocumentException(body.Error, context); - const exception = new models_0_1.MalformedPolicyDocumentException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_PackedPolicyTooLargeExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_PackedPolicyTooLargeException(body.Error, context); - const exception = new models_0_1.PackedPolicyTooLargeException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var de_RegionDisabledExceptionRes = async (parsedOutput, context) => { - const body = parsedOutput.body; - const deserialized = de_RegionDisabledException(body.Error, context); - const exception = new models_0_1.RegionDisabledException({ - $metadata: deserializeMetadata(parsedOutput), - ...deserialized - }); - return (0, smithy_client_1.decorateServiceException)(exception, body); - }; - var se_AssumeRoleRequest = (input, context) => { - const entries = {}; - if (input.RoleArn != null) { - entries["RoleArn"] = input.RoleArn; - } - if (input.RoleSessionName != null) { - entries["RoleSessionName"] = input.RoleSessionName; - } - if (input.PolicyArns != null) { - const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); - if (input.PolicyArns?.length === 0) { - entries.PolicyArns = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `PolicyArns.${key}`; - entries[loc] = value; - }); - } - if (input.Policy != null) { - entries["Policy"] = input.Policy; - } - if (input.DurationSeconds != null) { - entries["DurationSeconds"] = input.DurationSeconds; - } - if (input.Tags != null) { - const memberEntries = se_tagListType(input.Tags, context); - if (input.Tags?.length === 0) { - entries.Tags = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `Tags.${key}`; - entries[loc] = value; - }); - } - if (input.TransitiveTagKeys != null) { - const memberEntries = se_tagKeyListType(input.TransitiveTagKeys, context); - if (input.TransitiveTagKeys?.length === 0) { - entries.TransitiveTagKeys = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `TransitiveTagKeys.${key}`; - entries[loc] = value; - }); - } - if (input.ExternalId != null) { - entries["ExternalId"] = input.ExternalId; - } - if (input.SerialNumber != null) { - entries["SerialNumber"] = input.SerialNumber; - } - if (input.TokenCode != null) { - entries["TokenCode"] = input.TokenCode; - } - if (input.SourceIdentity != null) { - entries["SourceIdentity"] = input.SourceIdentity; - } - if (input.ProvidedContexts != null) { - const memberEntries = se_ProvidedContextsListType(input.ProvidedContexts, context); - if (input.ProvidedContexts?.length === 0) { - entries.ProvidedContexts = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `ProvidedContexts.${key}`; - entries[loc] = value; - }); - } - return entries; - }; - var se_AssumeRoleWithSAMLRequest = (input, context) => { - const entries = {}; - if (input.RoleArn != null) { - entries["RoleArn"] = input.RoleArn; - } - if (input.PrincipalArn != null) { - entries["PrincipalArn"] = input.PrincipalArn; - } - if (input.SAMLAssertion != null) { - entries["SAMLAssertion"] = input.SAMLAssertion; - } - if (input.PolicyArns != null) { - const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); - if (input.PolicyArns?.length === 0) { - entries.PolicyArns = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `PolicyArns.${key}`; - entries[loc] = value; - }); - } - if (input.Policy != null) { - entries["Policy"] = input.Policy; - } - if (input.DurationSeconds != null) { - entries["DurationSeconds"] = input.DurationSeconds; - } - return entries; - }; - var se_AssumeRoleWithWebIdentityRequest = (input, context) => { - const entries = {}; - if (input.RoleArn != null) { - entries["RoleArn"] = input.RoleArn; - } - if (input.RoleSessionName != null) { - entries["RoleSessionName"] = input.RoleSessionName; - } - if (input.WebIdentityToken != null) { - entries["WebIdentityToken"] = input.WebIdentityToken; - } - if (input.ProviderId != null) { - entries["ProviderId"] = input.ProviderId; - } - if (input.PolicyArns != null) { - const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); - if (input.PolicyArns?.length === 0) { - entries.PolicyArns = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `PolicyArns.${key}`; - entries[loc] = value; - }); - } - if (input.Policy != null) { - entries["Policy"] = input.Policy; - } - if (input.DurationSeconds != null) { - entries["DurationSeconds"] = input.DurationSeconds; - } - return entries; - }; - var se_DecodeAuthorizationMessageRequest = (input, context) => { - const entries = {}; - if (input.EncodedMessage != null) { - entries["EncodedMessage"] = input.EncodedMessage; - } - return entries; - }; - var se_GetAccessKeyInfoRequest = (input, context) => { - const entries = {}; - if (input.AccessKeyId != null) { - entries["AccessKeyId"] = input.AccessKeyId; - } - return entries; - }; - var se_GetCallerIdentityRequest = (input, context) => { - const entries = {}; - return entries; - }; - var se_GetFederationTokenRequest = (input, context) => { - const entries = {}; - if (input.Name != null) { - entries["Name"] = input.Name; - } - if (input.Policy != null) { - entries["Policy"] = input.Policy; - } - if (input.PolicyArns != null) { - const memberEntries = se_policyDescriptorListType(input.PolicyArns, context); - if (input.PolicyArns?.length === 0) { - entries.PolicyArns = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `PolicyArns.${key}`; - entries[loc] = value; - }); - } - if (input.DurationSeconds != null) { - entries["DurationSeconds"] = input.DurationSeconds; - } - if (input.Tags != null) { - const memberEntries = se_tagListType(input.Tags, context); - if (input.Tags?.length === 0) { - entries.Tags = []; - } - Object.entries(memberEntries).forEach(([key, value]) => { - const loc = `Tags.${key}`; - entries[loc] = value; - }); - } - return entries; - }; - var se_GetSessionTokenRequest = (input, context) => { - const entries = {}; - if (input.DurationSeconds != null) { - entries["DurationSeconds"] = input.DurationSeconds; - } - if (input.SerialNumber != null) { - entries["SerialNumber"] = input.SerialNumber; - } - if (input.TokenCode != null) { - entries["TokenCode"] = input.TokenCode; - } - return entries; - }; - var se_policyDescriptorListType = (input, context) => { - const entries = {}; - let counter = 1; - for (const entry of input) { - if (entry === null) { - continue; - } - const memberEntries = se_PolicyDescriptorType(entry, context); - Object.entries(memberEntries).forEach(([key, value]) => { - entries[`member.${counter}.${key}`] = value; - }); - counter++; - } - return entries; - }; - var se_PolicyDescriptorType = (input, context) => { - const entries = {}; - if (input.arn != null) { - entries["arn"] = input.arn; - } - return entries; - }; - var se_ProvidedContext = (input, context) => { - const entries = {}; - if (input.ProviderArn != null) { - entries["ProviderArn"] = input.ProviderArn; - } - if (input.ContextAssertion != null) { - entries["ContextAssertion"] = input.ContextAssertion; - } - return entries; - }; - var se_ProvidedContextsListType = (input, context) => { - const entries = {}; - let counter = 1; - for (const entry of input) { - if (entry === null) { - continue; - } - const memberEntries = se_ProvidedContext(entry, context); - Object.entries(memberEntries).forEach(([key, value]) => { - entries[`member.${counter}.${key}`] = value; - }); - counter++; - } - return entries; - }; - var se_Tag = (input, context) => { - const entries = {}; - if (input.Key != null) { - entries["Key"] = input.Key; - } - if (input.Value != null) { - entries["Value"] = input.Value; - } - return entries; - }; - var se_tagKeyListType = (input, context) => { - const entries = {}; - let counter = 1; - for (const entry of input) { - if (entry === null) { - continue; - } - entries[`member.${counter}`] = entry; - counter++; - } - return entries; - }; - var se_tagListType = (input, context) => { - const entries = {}; - let counter = 1; - for (const entry of input) { - if (entry === null) { - continue; - } - const memberEntries = se_Tag(entry, context); - Object.entries(memberEntries).forEach(([key, value]) => { - entries[`member.${counter}.${key}`] = value; - }); - counter++; - } - return entries; - }; - var de_AssumedRoleUser = (output, context) => { - const contents = {}; - if (output["AssumedRoleId"] !== void 0) { - contents.AssumedRoleId = (0, smithy_client_1.expectString)(output["AssumedRoleId"]); - } - if (output["Arn"] !== void 0) { - contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); - } - return contents; - }; - var de_AssumeRoleResponse = (output, context) => { - const contents = {}; - if (output["Credentials"] !== void 0) { - contents.Credentials = de_Credentials(output["Credentials"], context); - } - if (output["AssumedRoleUser"] !== void 0) { - contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); - } - if (output["PackedPolicySize"] !== void 0) { - contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); - } - if (output["SourceIdentity"] !== void 0) { - contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); - } - return contents; - }; - var de_AssumeRoleWithSAMLResponse = (output, context) => { - const contents = {}; - if (output["Credentials"] !== void 0) { - contents.Credentials = de_Credentials(output["Credentials"], context); - } - if (output["AssumedRoleUser"] !== void 0) { - contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); - } - if (output["PackedPolicySize"] !== void 0) { - contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); - } - if (output["Subject"] !== void 0) { - contents.Subject = (0, smithy_client_1.expectString)(output["Subject"]); - } - if (output["SubjectType"] !== void 0) { - contents.SubjectType = (0, smithy_client_1.expectString)(output["SubjectType"]); - } - if (output["Issuer"] !== void 0) { - contents.Issuer = (0, smithy_client_1.expectString)(output["Issuer"]); - } - if (output["Audience"] !== void 0) { - contents.Audience = (0, smithy_client_1.expectString)(output["Audience"]); - } - if (output["NameQualifier"] !== void 0) { - contents.NameQualifier = (0, smithy_client_1.expectString)(output["NameQualifier"]); - } - if (output["SourceIdentity"] !== void 0) { - contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); - } - return contents; - }; - var de_AssumeRoleWithWebIdentityResponse = (output, context) => { - const contents = {}; - if (output["Credentials"] !== void 0) { - contents.Credentials = de_Credentials(output["Credentials"], context); - } - if (output["SubjectFromWebIdentityToken"] !== void 0) { - contents.SubjectFromWebIdentityToken = (0, smithy_client_1.expectString)(output["SubjectFromWebIdentityToken"]); - } - if (output["AssumedRoleUser"] !== void 0) { - contents.AssumedRoleUser = de_AssumedRoleUser(output["AssumedRoleUser"], context); - } - if (output["PackedPolicySize"] !== void 0) { - contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); - } - if (output["Provider"] !== void 0) { - contents.Provider = (0, smithy_client_1.expectString)(output["Provider"]); - } - if (output["Audience"] !== void 0) { - contents.Audience = (0, smithy_client_1.expectString)(output["Audience"]); - } - if (output["SourceIdentity"] !== void 0) { - contents.SourceIdentity = (0, smithy_client_1.expectString)(output["SourceIdentity"]); - } - return contents; - }; - var de_Credentials = (output, context) => { - const contents = {}; - if (output["AccessKeyId"] !== void 0) { - contents.AccessKeyId = (0, smithy_client_1.expectString)(output["AccessKeyId"]); - } - if (output["SecretAccessKey"] !== void 0) { - contents.SecretAccessKey = (0, smithy_client_1.expectString)(output["SecretAccessKey"]); - } - if (output["SessionToken"] !== void 0) { - contents.SessionToken = (0, smithy_client_1.expectString)(output["SessionToken"]); - } - if (output["Expiration"] !== void 0) { - contents.Expiration = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["Expiration"])); - } - return contents; - }; - var de_DecodeAuthorizationMessageResponse = (output, context) => { - const contents = {}; - if (output["DecodedMessage"] !== void 0) { - contents.DecodedMessage = (0, smithy_client_1.expectString)(output["DecodedMessage"]); - } - return contents; - }; - var de_ExpiredTokenException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_FederatedUser = (output, context) => { - const contents = {}; - if (output["FederatedUserId"] !== void 0) { - contents.FederatedUserId = (0, smithy_client_1.expectString)(output["FederatedUserId"]); - } - if (output["Arn"] !== void 0) { - contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); - } - return contents; - }; - var de_GetAccessKeyInfoResponse = (output, context) => { - const contents = {}; - if (output["Account"] !== void 0) { - contents.Account = (0, smithy_client_1.expectString)(output["Account"]); - } - return contents; - }; - var de_GetCallerIdentityResponse = (output, context) => { - const contents = {}; - if (output["UserId"] !== void 0) { - contents.UserId = (0, smithy_client_1.expectString)(output["UserId"]); - } - if (output["Account"] !== void 0) { - contents.Account = (0, smithy_client_1.expectString)(output["Account"]); - } - if (output["Arn"] !== void 0) { - contents.Arn = (0, smithy_client_1.expectString)(output["Arn"]); - } - return contents; - }; - var de_GetFederationTokenResponse = (output, context) => { - const contents = {}; - if (output["Credentials"] !== void 0) { - contents.Credentials = de_Credentials(output["Credentials"], context); - } - if (output["FederatedUser"] !== void 0) { - contents.FederatedUser = de_FederatedUser(output["FederatedUser"], context); - } - if (output["PackedPolicySize"] !== void 0) { - contents.PackedPolicySize = (0, smithy_client_1.strictParseInt32)(output["PackedPolicySize"]); - } - return contents; - }; - var de_GetSessionTokenResponse = (output, context) => { - const contents = {}; - if (output["Credentials"] !== void 0) { - contents.Credentials = de_Credentials(output["Credentials"], context); - } - return contents; - }; - var de_IDPCommunicationErrorException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_IDPRejectedClaimException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_InvalidAuthorizationMessageException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_InvalidIdentityTokenException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_MalformedPolicyDocumentException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_PackedPolicyTooLargeException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var de_RegionDisabledException = (output, context) => { - const contents = {}; - if (output["message"] !== void 0) { - contents.message = (0, smithy_client_1.expectString)(output["message"]); - } - return contents; - }; - var deserializeMetadata = (output) => ({ - httpStatusCode: output.statusCode, - requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], - extendedRequestId: output.headers["x-amz-id-2"], - cfId: output.headers["x-amz-cf-id"] - }); - var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); - var throwDefaultError = (0, smithy_client_1.withBaseException)(STSServiceException_1.STSServiceException); - var buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const contents = { - protocol, - hostname, - port, - method: "POST", - path: basePath.endsWith("/") ? basePath.slice(0, -1) + path : basePath + path, - headers - }; - if (resolvedHostname !== void 0) { - contents.hostname = resolvedHostname; - } - if (body !== void 0) { - contents.body = body; - } - return new protocol_http_1.HttpRequest(contents); - }; - var SHARED_HEADERS = { - "content-type": "application/x-www-form-urlencoded" - }; - var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { - if (encoded.length) { - const parser = new fast_xml_parser_1.XMLParser({ - attributeNamePrefix: "", - htmlEntities: true, - ignoreAttributes: false, - ignoreDeclaration: true, - parseTagValue: false, - trimValues: false, - tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0 - }); - parser.addEntity("#xD", "\r"); - parser.addEntity("#10", "\n"); - const parsedObj = parser.parse(encoded); - const textNodeName = "#text"; - const key = Object.keys(parsedObj)[0]; - const parsedObjToReturn = parsedObj[key]; - if (parsedObjToReturn[textNodeName]) { - parsedObjToReturn[key] = parsedObjToReturn[textNodeName]; - delete parsedObjToReturn[textNodeName]; - } - return (0, smithy_client_1.getValueFromTextNode)(parsedObjToReturn); - } - return {}; - }); - var parseErrorBody = async (errorBody, context) => { - const value = await parseBody(errorBody, context); - if (value.Error) { - value.Error.message = value.Error.message ?? value.Error.Message; - } - return value; - }; - var buildFormUrlencodedString = (formEntries) => Object.entries(formEntries).map(([key, value]) => (0, smithy_client_1.extendedEncodeURIComponent)(key) + "=" + (0, smithy_client_1.extendedEncodeURIComponent)(value)).join("&"); - var loadQueryErrorCode = (output, data) => { - if (data.Error?.Code !== void 0) { - return data.Error.Code; - } - if (output.statusCode == 404) { - return "NotFound"; - } - }; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleCommand.js -var require_AssumeRoleCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AssumeRoleCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_0(); - var Aws_query_1 = require_Aws_query(); - var AssumeRoleCommand = class _AssumeRoleCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "AssumeRoleCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.AssumeRoleResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "AssumeRole" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_AssumeRoleCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_AssumeRoleCommand)(output, context); - } - }; - exports2.AssumeRoleCommand = AssumeRoleCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js -var require_AssumeRoleWithWebIdentityCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AssumeRoleWithWebIdentityCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_0(); - var Aws_query_1 = require_Aws_query(); - var AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleWithWebIdentityCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "AssumeRoleWithWebIdentityCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.AssumeRoleWithWebIdentityRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.AssumeRoleWithWebIdentityResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "AssumeRoleWithWebIdentity" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_AssumeRoleWithWebIdentityCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_AssumeRoleWithWebIdentityCommand)(output, context); - } - }; - exports2.AssumeRoleWithWebIdentityCommand = AssumeRoleWithWebIdentityCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/defaultStsRoleAssumers.js -var require_defaultStsRoleAssumers = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/defaultStsRoleAssumers.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.decorateDefaultCredentialProvider = exports2.getDefaultRoleAssumerWithWebIdentity = exports2.getDefaultRoleAssumer = void 0; - var AssumeRoleCommand_1 = require_AssumeRoleCommand(); - var AssumeRoleWithWebIdentityCommand_1 = require_AssumeRoleWithWebIdentityCommand(); - var ASSUME_ROLE_DEFAULT_REGION = "us-east-1"; - var decorateDefaultRegion = (region) => { - if (typeof region !== "function") { - return region === void 0 ? ASSUME_ROLE_DEFAULT_REGION : region; - } - return async () => { - try { - return await region(); - } catch (e) { - return ASSUME_ROLE_DEFAULT_REGION; - } - }; - }; - var getDefaultRoleAssumer = (stsOptions, stsClientCtor) => { - let stsClient; - let closureSourceCreds; - return async (sourceCreds, params) => { - closureSourceCreds = sourceCreds; - if (!stsClient) { - const { logger, region, requestHandler } = stsOptions; - stsClient = new stsClientCtor({ - logger, - credentialDefaultProvider: () => async () => closureSourceCreds, - region: decorateDefaultRegion(region || stsOptions.region), - ...requestHandler ? { requestHandler } : {} - }); - } - const { Credentials } = await stsClient.send(new AssumeRoleCommand_1.AssumeRoleCommand(params)); - if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) { - throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`); - } - return { - accessKeyId: Credentials.AccessKeyId, - secretAccessKey: Credentials.SecretAccessKey, - sessionToken: Credentials.SessionToken, - expiration: Credentials.Expiration - }; - }; - }; - exports2.getDefaultRoleAssumer = getDefaultRoleAssumer; - var getDefaultRoleAssumerWithWebIdentity = (stsOptions, stsClientCtor) => { - let stsClient; - return async (params) => { - if (!stsClient) { - const { logger, region, requestHandler } = stsOptions; - stsClient = new stsClientCtor({ - logger, - region: decorateDefaultRegion(region || stsOptions.region), - ...requestHandler ? { requestHandler } : {} - }); - } - const { Credentials } = await stsClient.send(new AssumeRoleWithWebIdentityCommand_1.AssumeRoleWithWebIdentityCommand(params)); - if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) { - throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`); - } - return { - accessKeyId: Credentials.AccessKeyId, - secretAccessKey: Credentials.SecretAccessKey, - sessionToken: Credentials.SessionToken, - expiration: Credentials.Expiration - }; - }; - }; - exports2.getDefaultRoleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity; - var decorateDefaultCredentialProvider = (provider) => (input) => provider({ - roleAssumer: (0, exports2.getDefaultRoleAssumer)(input, input.stsClientCtor), - roleAssumerWithWebIdentity: (0, exports2.getDefaultRoleAssumerWithWebIdentity)(input, input.stsClientCtor), - ...input - }); - exports2.decorateDefaultCredentialProvider = decorateDefaultCredentialProvider; - } -}); - -// node_modules/@aws-sdk/credential-provider-env/dist-cjs/fromEnv.js -var require_fromEnv = __commonJS({ - "node_modules/@aws-sdk/credential-provider-env/dist-cjs/fromEnv.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromEnv = exports2.ENV_EXPIRATION = exports2.ENV_SESSION = exports2.ENV_SECRET = exports2.ENV_KEY = void 0; - var property_provider_1 = require_dist_cjs19(); - exports2.ENV_KEY = "AWS_ACCESS_KEY_ID"; - exports2.ENV_SECRET = "AWS_SECRET_ACCESS_KEY"; - exports2.ENV_SESSION = "AWS_SESSION_TOKEN"; - exports2.ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION"; - var fromEnv = () => async () => { - const accessKeyId = process.env[exports2.ENV_KEY]; - const secretAccessKey = process.env[exports2.ENV_SECRET]; - const sessionToken = process.env[exports2.ENV_SESSION]; - const expiry = process.env[exports2.ENV_EXPIRATION]; - if (accessKeyId && secretAccessKey) { - return { - accessKeyId, - secretAccessKey, - ...sessionToken && { sessionToken }, - ...expiry && { expiration: new Date(expiry) } - }; - } - throw new property_provider_1.CredentialsProviderError("Unable to find environment variable credentials."); - }; - exports2.fromEnv = fromEnv; - } -}); - -// node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js -var require_dist_cjs43 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_fromEnv(), exports2); - } -}); - -// node_modules/@smithy/credential-provider-imds/dist-cjs/index.js -var require_dist_cjs44 = __commonJS({ - "node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES, - DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT, - ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN, - ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI, - ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI, - fromContainerMetadata: () => fromContainerMetadata, - fromInstanceMetadata: () => fromInstanceMetadata, - getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint, - httpRequest: () => httpRequest, - providerConfigFromInit: () => providerConfigFromInit - }); - module2.exports = __toCommonJS2(src_exports); - var import_url = require("url"); - var import_property_provider = require_dist_cjs19(); - var import_buffer = require("buffer"); - var import_http = require("http"); - function httpRequest(options) { - return new Promise((resolve, reject) => { - var _a; - const req = (0, import_http.request)({ - method: "GET", - ...options, - // Node.js http module doesn't accept hostname with square brackets - // Refs: https://github.com/nodejs/node/issues/39738 - hostname: (_a = options.hostname) == null ? void 0 : _a.replace(/^\[(.+)\]$/, "$1") - }); - req.on("error", (err) => { - reject(Object.assign(new import_property_provider.ProviderError("Unable to connect to instance metadata service"), err)); - req.destroy(); - }); - req.on("timeout", () => { - reject(new import_property_provider.ProviderError("TimeoutError from instance metadata service")); - req.destroy(); - }); - req.on("response", (res) => { - const { statusCode = 400 } = res; - if (statusCode < 200 || 300 <= statusCode) { - reject( - Object.assign(new import_property_provider.ProviderError("Error response received from instance metadata service"), { statusCode }) - ); - req.destroy(); - } - const chunks = []; - res.on("data", (chunk) => { - chunks.push(chunk); - }); - res.on("end", () => { - resolve(import_buffer.Buffer.concat(chunks)); - req.destroy(); - }); - }); - req.end(); - }); - } - __name(httpRequest, "httpRequest"); - var isImdsCredentials = /* @__PURE__ */ __name((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials"); - var fromImdsCredentials = /* @__PURE__ */ __name((creds) => ({ - accessKeyId: creds.AccessKeyId, - secretAccessKey: creds.SecretAccessKey, - sessionToken: creds.Token, - expiration: new Date(creds.Expiration) - }), "fromImdsCredentials"); - var DEFAULT_TIMEOUT = 1e3; - var DEFAULT_MAX_RETRIES = 0; - var providerConfigFromInit = /* @__PURE__ */ __name(({ - maxRetries = DEFAULT_MAX_RETRIES, - timeout = DEFAULT_TIMEOUT - }) => ({ maxRetries, timeout }), "providerConfigFromInit"); - var retry = /* @__PURE__ */ __name((toRetry, maxRetries) => { - let promise = toRetry(); - for (let i = 0; i < maxRetries; i++) { - promise = promise.catch(toRetry); - } - return promise; - }, "retry"); - var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI"; - var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"; - var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN"; - var fromContainerMetadata = /* @__PURE__ */ __name((init = {}) => { - const { timeout, maxRetries } = providerConfigFromInit(init); - return () => retry(async () => { - const requestOptions = await getCmdsUri(); - const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions)); - if (!isImdsCredentials(credsResponse)) { - throw new import_property_provider.CredentialsProviderError("Invalid response received from instance metadata service."); - } - return fromImdsCredentials(credsResponse); - }, maxRetries); - }, "fromContainerMetadata"); - var requestFromEcsImds = /* @__PURE__ */ __name(async (timeout, options) => { - if (process.env[ENV_CMDS_AUTH_TOKEN]) { - options.headers = { - ...options.headers, - Authorization: process.env[ENV_CMDS_AUTH_TOKEN] - }; - } - const buffer = await httpRequest({ - ...options, - timeout - }); - return buffer.toString(); - }, "requestFromEcsImds"); - var CMDS_IP = "169.254.170.2"; - var GREENGRASS_HOSTS = { - localhost: true, - "127.0.0.1": true - }; - var GREENGRASS_PROTOCOLS = { - "http:": true, - "https:": true - }; - var getCmdsUri = /* @__PURE__ */ __name(async () => { - if (process.env[ENV_CMDS_RELATIVE_URI]) { - return { - hostname: CMDS_IP, - path: process.env[ENV_CMDS_RELATIVE_URI] - }; - } - if (process.env[ENV_CMDS_FULL_URI]) { - const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]); - if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) { - throw new import_property_provider.CredentialsProviderError( - `${parsed.hostname} is not a valid container metadata service hostname`, - false - ); - } - if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) { - throw new import_property_provider.CredentialsProviderError( - `${parsed.protocol} is not a valid container metadata service protocol`, - false - ); - } - return { - ...parsed, - port: parsed.port ? parseInt(parsed.port, 10) : void 0 - }; - } - throw new import_property_provider.CredentialsProviderError( - `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`, - false - ); - }, "getCmdsUri"); - var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider.CredentialsProviderError { - constructor(message, tryNextLink = true) { - super(message, tryNextLink); - this.tryNextLink = tryNextLink; - this.name = "InstanceMetadataV1FallbackError"; - Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype); - } - }; - __name(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError"); - var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError; - var import_node_config_provider = require_dist_cjs34(); - var import_url_parser = require_dist_cjs36(); - var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT"; - var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint"; - var ENDPOINT_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => env[ENV_ENDPOINT_NAME], - configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME], - default: void 0 - }; - var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => { - EndpointMode2["IPv4"] = "IPv4"; - EndpointMode2["IPv6"] = "IPv6"; - return EndpointMode2; - })(EndpointMode || {}); - var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE"; - var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode"; - var ENDPOINT_MODE_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => env[ENV_ENDPOINT_MODE_NAME], - configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME], - default: "IPv4" - /* IPv4 */ - }; - var getInstanceMetadataEndpoint = /* @__PURE__ */ __name(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint"); - var getFromEndpointConfig = /* @__PURE__ */ __name(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig"); - var getFromEndpointModeConfig = /* @__PURE__ */ __name(async () => { - const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)(); - switch (endpointMode) { - case "IPv4": - return "http://169.254.169.254"; - case "IPv6": - return "http://[fd00:ec2::254]"; - default: - throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`); - } - }, "getFromEndpointModeConfig"); - var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60; - var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60; - var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html"; - var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name((credentials, logger) => { - const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS); - const newExpiration = new Date(Date.now() + refreshInterval * 1e3); - logger.warn( - "Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.\nFor more information, please visit: " + STATIC_STABILITY_DOC_URL - ); - const originalExpiration = credentials.originalExpiration ?? credentials.expiration; - return { - ...credentials, - ...originalExpiration ? { originalExpiration } : {}, - expiration: newExpiration - }; - }, "getExtendedInstanceMetadataCredentials"); - var staticStabilityProvider = /* @__PURE__ */ __name((provider, options = {}) => { - const logger = (options == null ? void 0 : options.logger) || console; - let pastCredentials; - return async () => { - let credentials; - try { - credentials = await provider(); - if (credentials.expiration && credentials.expiration.getTime() < Date.now()) { - credentials = getExtendedInstanceMetadataCredentials(credentials, logger); - } - } catch (e) { - if (pastCredentials) { - logger.warn("Credential renew failed: ", e); - credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger); - } else { - throw e; - } - } - pastCredentials = credentials; - return credentials; - }; - }, "staticStabilityProvider"); - var IMDS_PATH = "/latest/meta-data/iam/security-credentials/"; - var IMDS_TOKEN_PATH = "/latest/api/token"; - var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED"; - var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled"; - var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token"; - var fromInstanceMetadata = /* @__PURE__ */ __name((init = {}) => staticStabilityProvider(getInstanceImdsProvider(init), { logger: init.logger }), "fromInstanceMetadata"); - var getInstanceImdsProvider = /* @__PURE__ */ __name((init) => { - let disableFetchToken = false; - const { logger, profile } = init; - const { timeout, maxRetries } = providerConfigFromInit(init); - const getCredentials = /* @__PURE__ */ __name(async (maxRetries2, options) => { - var _a; - const isImdsV1Fallback = disableFetchToken || ((_a = options.headers) == null ? void 0 : _a[X_AWS_EC2_METADATA_TOKEN]) == null; - if (isImdsV1Fallback) { - let fallbackBlockedFromProfile = false; - let fallbackBlockedFromProcessEnv = false; - const configValue = await (0, import_node_config_provider.loadConfig)( - { - environmentVariableSelector: (env) => { - const envValue = env[AWS_EC2_METADATA_V1_DISABLED]; - fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false"; - if (envValue === void 0) { - throw new import_property_provider.CredentialsProviderError( - `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.` - ); - } - return fallbackBlockedFromProcessEnv; - }, - configFileSelector: (profile2) => { - const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED]; - fallbackBlockedFromProfile = !!profileValue && profileValue !== "false"; - return fallbackBlockedFromProfile; - }, - default: false - }, - { - profile - } - )(); - if (init.ec2MetadataV1Disabled || configValue) { - const causes = []; - if (init.ec2MetadataV1Disabled) - causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"); - if (fallbackBlockedFromProfile) - causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`); - if (fallbackBlockedFromProcessEnv) - causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`); - throw new InstanceMetadataV1FallbackError( - `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join( - ", " - )}].` - ); - } - } - const imdsProfile = (await retry(async () => { - let profile2; - try { - profile2 = await getProfile(options); - } catch (err) { - if (err.statusCode === 401) { - disableFetchToken = false; - } - throw err; - } - return profile2; - }, maxRetries2)).trim(); - return retry(async () => { - let creds; - try { - creds = await getCredentialsFromProfile(imdsProfile, options); - } catch (err) { - if (err.statusCode === 401) { - disableFetchToken = false; - } - throw err; - } - return creds; - }, maxRetries2); - }, "getCredentials"); - return async () => { - const endpoint = await getInstanceMetadataEndpoint(); - if (disableFetchToken) { - logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)"); - return getCredentials(maxRetries, { ...endpoint, timeout }); - } else { - let token; - try { - token = (await getMetadataToken({ ...endpoint, timeout })).toString(); - } catch (error) { - if ((error == null ? void 0 : error.statusCode) === 400) { - throw Object.assign(error, { - message: "EC2 Metadata token request returned error" - }); - } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) { - disableFetchToken = true; - } - logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)"); - return getCredentials(maxRetries, { ...endpoint, timeout }); - } - return getCredentials(maxRetries, { - ...endpoint, - headers: { - [X_AWS_EC2_METADATA_TOKEN]: token - }, - timeout - }); - } - }; - }, "getInstanceImdsProvider"); - var getMetadataToken = /* @__PURE__ */ __name(async (options) => httpRequest({ - ...options, - path: IMDS_TOKEN_PATH, - method: "PUT", - headers: { - "x-aws-ec2-metadata-token-ttl-seconds": "21600" - } - }), "getMetadataToken"); - var getProfile = /* @__PURE__ */ __name(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile"); - var getCredentialsFromProfile = /* @__PURE__ */ __name(async (profile, options) => { - const credsResponse = JSON.parse( - (await httpRequest({ - ...options, - path: IMDS_PATH + profile - })).toString() - ); - if (!isImdsCredentials(credsResponse)) { - throw new import_property_provider.CredentialsProviderError("Invalid response received from instance metadata service."); - } - return fromImdsCredentials(credsResponse); - }, "getCredentialsFromProfile"); - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveCredentialSource.js -var require_resolveCredentialSource = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveCredentialSource.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveCredentialSource = void 0; - var credential_provider_env_1 = require_dist_cjs43(); - var credential_provider_imds_1 = require_dist_cjs44(); - var property_provider_1 = require_dist_cjs19(); - var resolveCredentialSource = (credentialSource, profileName) => { - const sourceProvidersMap = { - EcsContainer: credential_provider_imds_1.fromContainerMetadata, - Ec2InstanceMetadata: credential_provider_imds_1.fromInstanceMetadata, - Environment: credential_provider_env_1.fromEnv - }; - if (credentialSource in sourceProvidersMap) { - return sourceProvidersMap[credentialSource](); - } else { - throw new property_provider_1.CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`); - } - }; - exports2.resolveCredentialSource = resolveCredentialSource; - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveAssumeRoleCredentials.js -var require_resolveAssumeRoleCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveAssumeRoleCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveAssumeRoleCredentials = exports2.isAssumeRoleProfile = void 0; - var property_provider_1 = require_dist_cjs19(); - var shared_ini_file_loader_1 = require_dist_cjs33(); - var resolveCredentialSource_1 = require_resolveCredentialSource(); - var resolveProfileData_1 = require_resolveProfileData(); - var isAssumeRoleProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg) || isAssumeRoleWithProviderProfile(arg)); - exports2.isAssumeRoleProfile = isAssumeRoleProfile; - var isAssumeRoleWithSourceProfile = (arg) => typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined"; - var isAssumeRoleWithProviderProfile = (arg) => typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined"; - var resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => { - const data = profiles[profileName]; - if (!options.roleAssumer) { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires a role to be assumed, but no role assumption callback was provided.`, false); - } - const { source_profile } = data; - if (source_profile && source_profile in visitedProfiles) { - throw new property_provider_1.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${(0, shared_ini_file_loader_1.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "), false); - } - const sourceCredsProvider = source_profile ? (0, resolveProfileData_1.resolveProfileData)(source_profile, profiles, options, { - ...visitedProfiles, - [source_profile]: true - }) : (0, resolveCredentialSource_1.resolveCredentialSource)(data.credential_source, profileName)(); - const params = { - RoleArn: data.role_arn, - RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`, - ExternalId: data.external_id, - DurationSeconds: parseInt(data.duration_seconds || "3600", 10) - }; - const { mfa_serial } = data; - if (mfa_serial) { - if (!options.mfaCodeProvider) { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, false); - } - params.SerialNumber = mfa_serial; - params.TokenCode = await options.mfaCodeProvider(mfa_serial); - } - const sourceCreds = await sourceCredsProvider; - return options.roleAssumer(sourceCreds, params); - }; - exports2.resolveAssumeRoleCredentials = resolveAssumeRoleCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-process/dist-cjs/getValidatedProcessCredentials.js -var require_getValidatedProcessCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-process/dist-cjs/getValidatedProcessCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getValidatedProcessCredentials = void 0; - var getValidatedProcessCredentials = (profileName, data) => { - if (data.Version !== 1) { - throw Error(`Profile ${profileName} credential_process did not return Version 1.`); - } - if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) { - throw Error(`Profile ${profileName} credential_process returned invalid credentials.`); - } - if (data.Expiration) { - const currentTime = /* @__PURE__ */ new Date(); - const expireTime = new Date(data.Expiration); - if (expireTime < currentTime) { - throw Error(`Profile ${profileName} credential_process returned expired credentials.`); - } - } - return { - accessKeyId: data.AccessKeyId, - secretAccessKey: data.SecretAccessKey, - ...data.SessionToken && { sessionToken: data.SessionToken }, - ...data.Expiration && { expiration: new Date(data.Expiration) } - }; - }; - exports2.getValidatedProcessCredentials = getValidatedProcessCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-process/dist-cjs/resolveProcessCredentials.js -var require_resolveProcessCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-process/dist-cjs/resolveProcessCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveProcessCredentials = void 0; - var property_provider_1 = require_dist_cjs19(); - var child_process_1 = require("child_process"); - var util_1 = require("util"); - var getValidatedProcessCredentials_1 = require_getValidatedProcessCredentials(); - var resolveProcessCredentials = async (profileName, profiles) => { - const profile = profiles[profileName]; - if (profiles[profileName]) { - const credentialProcess = profile["credential_process"]; - if (credentialProcess !== void 0) { - const execPromise = (0, util_1.promisify)(child_process_1.exec); - try { - const { stdout } = await execPromise(credentialProcess); - let data; - try { - data = JSON.parse(stdout.trim()); - } catch (_a) { - throw Error(`Profile ${profileName} credential_process returned invalid JSON.`); - } - return (0, getValidatedProcessCredentials_1.getValidatedProcessCredentials)(profileName, data); - } catch (error) { - throw new property_provider_1.CredentialsProviderError(error.message); - } - } else { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`); - } - } else { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`); - } - }; - exports2.resolveProcessCredentials = resolveProcessCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-process/dist-cjs/fromProcess.js -var require_fromProcess = __commonJS({ - "node_modules/@aws-sdk/credential-provider-process/dist-cjs/fromProcess.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromProcess = void 0; - var shared_ini_file_loader_1 = require_dist_cjs33(); - var resolveProcessCredentials_1 = require_resolveProcessCredentials(); - var fromProcess = (init = {}) => async () => { - const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); - return (0, resolveProcessCredentials_1.resolveProcessCredentials)((0, shared_ini_file_loader_1.getProfileName)(init), profiles); - }; - exports2.fromProcess = fromProcess; - } -}); - -// node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js -var require_dist_cjs45 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_fromProcess(), exports2); - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProcessCredentials.js -var require_resolveProcessCredentials2 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProcessCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveProcessCredentials = exports2.isProcessProfile = void 0; - var credential_provider_process_1 = require_dist_cjs45(); - var isProcessProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string"; - exports2.isProcessProfile = isProcessProfile; - var resolveProcessCredentials = async (options, profile) => (0, credential_provider_process_1.fromProcess)({ - ...options, - profile - })(); - exports2.resolveProcessCredentials = resolveProcessCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/isSsoProfile.js -var require_isSsoProfile = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/isSsoProfile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isSsoProfile = void 0; - var isSsoProfile = (arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"); - exports2.isSsoProfile = isSsoProfile; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/EndpointParameters.js -var require_EndpointParameters3 = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/EndpointParameters.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveClientEndpointParameters = void 0; - var resolveClientEndpointParameters = (options) => { - return { - ...options, - useDualstackEndpoint: options.useDualstackEndpoint ?? false, - useFipsEndpoint: options.useFipsEndpoint ?? false, - defaultSigningName: "awsssoportal" - }; - }; - exports2.resolveClientEndpointParameters = resolveClientEndpointParameters; - } -}); - -// node_modules/@aws-sdk/client-sso/package.json -var require_package3 = __commonJS({ - "node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) { - module2.exports = { - name: "@aws-sdk/client-sso", - description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native", - version: "3.421.0", - scripts: { - build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", - "build:cjs": "tsc -p tsconfig.cjs.json", - "build:docs": "typedoc", - "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": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/middleware-host-header": "3.418.0", - "@aws-sdk/middleware-logger": "3.418.0", - "@aws-sdk/middleware-recursion-detection": "3.418.0", - "@aws-sdk/middleware-user-agent": "3.418.0", - "@aws-sdk/region-config-resolver": "3.418.0", - "@aws-sdk/types": "3.418.0", - "@aws-sdk/util-endpoints": "3.418.0", - "@aws-sdk/util-user-agent-browser": "3.418.0", - "@aws-sdk/util-user-agent-node": "3.418.0", - "@smithy/config-resolver": "^2.0.10", - "@smithy/fetch-http-handler": "^2.1.5", - "@smithy/hash-node": "^2.0.9", - "@smithy/invalid-dependency": "^2.0.9", - "@smithy/middleware-content-length": "^2.0.11", - "@smithy/middleware-endpoint": "^2.0.9", - "@smithy/middleware-retry": "^2.0.12", - "@smithy/middleware-serde": "^2.0.9", - "@smithy/middleware-stack": "^2.0.2", - "@smithy/node-config-provider": "^2.0.12", - "@smithy/node-http-handler": "^2.1.5", - "@smithy/protocol-http": "^3.0.5", - "@smithy/smithy-client": "^2.1.6", - "@smithy/types": "^2.3.3", - "@smithy/url-parser": "^2.0.9", - "@smithy/util-base64": "^2.0.0", - "@smithy/util-body-length-browser": "^2.0.0", - "@smithy/util-body-length-node": "^2.1.0", - "@smithy/util-defaults-mode-browser": "^2.0.10", - "@smithy/util-defaults-mode-node": "^2.0.12", - "@smithy/util-retry": "^2.0.2", - "@smithy/util-utf8": "^2.0.0", - tslib: "^2.5.0" - }, - devDependencies: { - "@smithy/service-client-documentation-generator": "^2.0.0", - "@tsconfig/node14": "1.0.3", - "@types/node": "^14.14.31", - concurrently: "7.0.0", - "downlevel-dts": "0.10.1", - rimraf: "3.0.2", - typedoc: "0.23.23", - typescript: "~4.9.5" - }, - engines: { - node: ">=14.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" - } - }; - } -}); - -// node_modules/@aws-sdk/util-user-agent-node/dist-cjs/is-crt-available.js -var require_is_crt_available = __commonJS({ - "node_modules/@aws-sdk/util-user-agent-node/dist-cjs/is-crt-available.js"(exports2, module2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isCrtAvailable = void 0; - var isCrtAvailable = () => { - try { - if (typeof require === "function" && typeof module2 !== "undefined" && require("aws-crt")) { - return ["md/crt-avail"]; - } - return null; - } catch (e) { - return null; - } - }; - exports2.isCrtAvailable = isCrtAvailable; - } -}); - -// node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js -var require_dist_cjs46 = __commonJS({ - "node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultUserAgent = exports2.UA_APP_ID_INI_NAME = exports2.UA_APP_ID_ENV_NAME = void 0; - var node_config_provider_1 = require_dist_cjs34(); - var os_1 = require("os"); - var process_1 = require("process"); - var is_crt_available_1 = require_is_crt_available(); - exports2.UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; - exports2.UA_APP_ID_INI_NAME = "sdk-ua-app-id"; - var defaultUserAgent = ({ serviceId, clientVersion }) => { - const sections = [ - ["aws-sdk-js", clientVersion], - ["ua", "2.0"], - [`os/${(0, os_1.platform)()}`, (0, os_1.release)()], - ["lang/js"], - ["md/nodejs", `${process_1.versions.node}`] - ]; - const crtAvailable = (0, is_crt_available_1.isCrtAvailable)(); - if (crtAvailable) { - sections.push(crtAvailable); - } - if (serviceId) { - sections.push([`api/${serviceId}`, clientVersion]); - } - if (process_1.env.AWS_EXECUTION_ENV) { - sections.push([`exec-env/${process_1.env.AWS_EXECUTION_ENV}`]); - } - const appIdPromise = (0, node_config_provider_1.loadConfig)({ - environmentVariableSelector: (env) => env[exports2.UA_APP_ID_ENV_NAME], - configFileSelector: (profile) => profile[exports2.UA_APP_ID_INI_NAME], - default: void 0 - })(); - let resolvedUserAgent = void 0; - return async () => { - if (!resolvedUserAgent) { - const appId = await appIdPromise; - resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections]; - } - return resolvedUserAgent; - }; - }; - exports2.defaultUserAgent = defaultUserAgent; - } -}); - -// node_modules/@smithy/hash-node/dist-cjs/index.js -var require_dist_cjs47 = __commonJS({ - "node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - Hash: () => Hash - }); - module2.exports = __toCommonJS2(src_exports); - var import_util_buffer_from = require_dist_cjs9(); - var import_util_utf8 = require_dist_cjs11(); - var import_buffer = require("buffer"); - var import_crypto4 = require("crypto"); - var _Hash = class _Hash { - constructor(algorithmIdentifier, secret) { - this.algorithmIdentifier = algorithmIdentifier; - this.secret = secret; - this.reset(); - } - update(toHash, encoding) { - this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding))); - } - digest() { - return Promise.resolve(this.hash.digest()); - } - reset() { - this.hash = this.secret ? (0, import_crypto4.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto4.createHash)(this.algorithmIdentifier); - } - }; - __name(_Hash, "Hash"); - var Hash = _Hash; - function castSourceData(toCast, encoding) { - if (import_buffer.Buffer.isBuffer(toCast)) { - return toCast; - } - if (typeof toCast === "string") { - return (0, import_util_buffer_from.fromString)(toCast, encoding); - } - if (ArrayBuffer.isView(toCast)) { - return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength); - } - return (0, import_util_buffer_from.fromArrayBuffer)(toCast); - } - __name(castSourceData, "castSourceData"); - } -}); - -// node_modules/@smithy/util-body-length-node/dist-cjs/index.js -var require_dist_cjs48 = __commonJS({ - "node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - calculateBodyLength: () => calculateBodyLength - }); - module2.exports = __toCommonJS2(src_exports); - var import_fs = require("fs"); - var calculateBodyLength = /* @__PURE__ */ __name((body) => { - if (!body) { - return 0; - } - if (typeof body === "string") { - return Buffer.from(body).length; - } else if (typeof body.byteLength === "number") { - return body.byteLength; - } else if (typeof body.size === "number") { - return body.size; - } else if (typeof body.start === "number" && typeof body.end === "number") { - return body.end + 1 - body.start; - } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) { - return (0, import_fs.lstatSync)(body.path).size; - } else if (typeof body.fd === "number") { - return (0, import_fs.fstatSync)(body.fd).size; - } - throw new Error(`Body Length computation failed for ${body}`); - }, "calculateBodyLength"); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js -var require_ruleset = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ruleSet = void 0; - var q = "required"; - var r = "fn"; - var s = "argv"; - var t = "ref"; - var a = "isSet"; - var b = "tree"; - var c = "error"; - var d = "endpoint"; - var e = "PartitionResult"; - var f = { [q]: false, "type": "String" }; - var g = { [q]: true, "default": false, "type": "Boolean" }; - var h = { [t]: "Endpoint" }; - var i = { [r]: "booleanEquals", [s]: [{ [t]: "UseFIPS" }, true] }; - var j = { [r]: "booleanEquals", [s]: [{ [t]: "UseDualStack" }, true] }; - var k = {}; - var l = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsFIPS"] }] }; - var m = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsDualStack"] }] }; - var n = [i]; - var o = [j]; - var p = [{ [t]: "Region" }]; - var _data = { version: "1.0", parameters: { Region: f, UseDualStack: g, UseFIPS: g, Endpoint: f }, rules: [{ conditions: [{ [r]: a, [s]: [h] }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: h, properties: k, headers: k }, type: d }] }, { conditions: [{ [r]: a, [s]: p }], type: b, rules: [{ conditions: [{ [r]: "aws.partition", [s]: p, assign: e }], type: b, rules: [{ conditions: [i, j], type: b, rules: [{ conditions: [l, m], type: b, rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [l], type: b, rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [m], type: b, rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "Invalid Configuration: Missing Region", type: c }] }; - exports2.ruleSet = _data; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js -var require_endpointResolver = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs27(); - var ruleset_1 = require_ruleset(); - var defaultEndpointResolver = (endpointParams, context = {}) => { - return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { - endpointParams, - logger: context.logger - }); - }; - exports2.defaultEndpointResolver = defaultEndpointResolver; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js -var require_runtimeConfig_shared = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var smithy_client_1 = require_dist_cjs16(); - var url_parser_1 = require_dist_cjs36(); - var util_base64_1 = require_dist_cjs10(); - var util_utf8_1 = require_dist_cjs11(); - var endpointResolver_1 = require_endpointResolver(); - var getRuntimeConfig = (config) => ({ - apiVersion: "2019-06-10", - base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, - base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, - disableHostPrefix: config?.disableHostPrefix ?? false, - endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, - extensions: config?.extensions ?? [], - logger: config?.logger ?? new smithy_client_1.NoOpLogger(), - serviceId: config?.serviceId ?? "SSO", - urlParser: config?.urlParser ?? url_parser_1.parseUrl, - utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, - utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 - }); - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js -var require_dist_cjs49 = __commonJS({ - "node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) { - var __create2 = Object.create; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __getProtoOf2 = Object.getPrototypeOf; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, - mod - )); - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - resolveDefaultsModeConfig: () => resolveDefaultsModeConfig - }); - module2.exports = __toCommonJS2(src_exports); - var import_config_resolver = require_dist_cjs30(); - var import_node_config_provider = require_dist_cjs34(); - var import_property_provider = require_dist_cjs19(); - var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV"; - var AWS_REGION_ENV = "AWS_REGION"; - var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION"; - var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; - var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"]; - var IMDS_REGION_PATH = "/latest/meta-data/placement/region"; - var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE"; - var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode"; - var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => { - return env[AWS_DEFAULTS_MODE_ENV]; - }, - configFileSelector: (profile) => { - return profile[AWS_DEFAULTS_MODE_CONFIG]; - }, - default: "legacy" - }; - var resolveDefaultsModeConfig = /* @__PURE__ */ __name(({ - region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS), - defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS) - } = {}) => (0, import_property_provider.memoize)(async () => { - const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode; - switch (mode == null ? void 0 : mode.toLowerCase()) { - case "auto": - return resolveNodeDefaultsModeAuto(region); - case "in-region": - case "cross-region": - case "mobile": - case "standard": - case "legacy": - return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase()); - case void 0: - return Promise.resolve("legacy"); - default: - throw new Error( - `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}` - ); - } - }), "resolveDefaultsModeConfig"); - var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name(async (clientRegion) => { - if (clientRegion) { - const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion; - const inferredRegion = await inferPhysicalRegion(); - if (!inferredRegion) { - return "standard"; - } - if (resolvedRegion === inferredRegion) { - return "in-region"; - } else { - return "cross-region"; - } - } - return "standard"; - }, "resolveNodeDefaultsModeAuto"); - var inferPhysicalRegion = /* @__PURE__ */ __name(async () => { - if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) { - return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV]; - } - if (!process.env[ENV_IMDS_DISABLED]) { - try { - const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs44())); - const endpoint = await getInstanceMetadataEndpoint(); - return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString(); - } catch (e) { - } - } - }, "inferPhysicalRegion"); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js -var require_runtimeConfig = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - var package_json_1 = tslib_1.__importDefault(require_package3()); - var util_user_agent_node_1 = require_dist_cjs46(); - var config_resolver_1 = require_dist_cjs30(); - var hash_node_1 = require_dist_cjs47(); - var middleware_retry_1 = require_dist_cjs41(); - var node_config_provider_1 = require_dist_cjs34(); - var node_http_handler_1 = require_dist_cjs14(); - var util_body_length_node_1 = require_dist_cjs48(); - var util_retry_1 = require_dist_cjs40(); - var runtimeConfig_shared_1 = require_runtimeConfig_shared(); - var smithy_client_1 = require_dist_cjs16(); - var util_defaults_mode_node_1 = require_dist_cjs49(); - var smithy_client_2 = require_dist_cjs16(); - var getRuntimeConfig = (config) => { - (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); - const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); - const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); - const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); - return { - ...clientSharedValues, - ...config, - runtime: "node", - defaultsMode, - bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, - defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), - maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), - region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), - requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), - retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ - ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, - default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE - }), - sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), - streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, - useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), - useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) - }; - }; - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/extensions/index.js -var require_extensions2 = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/extensions/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveAwsRegionExtensionConfiguration = exports2.getAwsRegionExtensionConfiguration = void 0; - var getAwsRegionExtensionConfiguration = (runtimeConfig) => { - let runtimeConfigRegion = async () => { - if (runtimeConfig.region === void 0) { - throw new Error("Region is missing from runtimeConfig"); - } - const region = runtimeConfig.region; - if (typeof region === "string") { - return region; - } - return region(); - }; - return { - setRegion(region) { - runtimeConfigRegion = region; - }, - region() { - return runtimeConfigRegion; - } - }; - }; - exports2.getAwsRegionExtensionConfiguration = getAwsRegionExtensionConfiguration; - var resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => { - return { - region: awsRegionExtensionConfiguration.region() - }; - }; - exports2.resolveAwsRegionExtensionConfiguration = resolveAwsRegionExtensionConfiguration; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/config.js -var require_config = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/config.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NODE_REGION_CONFIG_FILE_OPTIONS = exports2.NODE_REGION_CONFIG_OPTIONS = exports2.REGION_INI_NAME = exports2.REGION_ENV_NAME = void 0; - exports2.REGION_ENV_NAME = "AWS_REGION"; - exports2.REGION_INI_NAME = "region"; - exports2.NODE_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => env[exports2.REGION_ENV_NAME], - configFileSelector: (profile) => profile[exports2.REGION_INI_NAME], - default: () => { - throw new Error("Region is missing"); - } - }; - exports2.NODE_REGION_CONFIG_FILE_OPTIONS = { - preferredFile: "credentials" - }; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/isFipsRegion.js -var require_isFipsRegion = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/isFipsRegion.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isFipsRegion = void 0; - var isFipsRegion = (region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")); - exports2.isFipsRegion = isFipsRegion; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/getRealRegion.js -var require_getRealRegion = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/getRealRegion.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRealRegion = void 0; - var isFipsRegion_1 = require_isFipsRegion(); - var getRealRegion = (region) => (0, isFipsRegion_1.isFipsRegion)(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region; - exports2.getRealRegion = getRealRegion; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/resolveRegionConfig.js -var require_resolveRegionConfig = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/resolveRegionConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveRegionConfig = void 0; - var getRealRegion_1 = require_getRealRegion(); - var isFipsRegion_1 = require_isFipsRegion(); - var resolveRegionConfig = (input) => { - const { region, useFipsEndpoint } = input; - if (!region) { - throw new Error("Region is missing"); - } - return { - ...input, - region: async () => { - if (typeof region === "string") { - return (0, getRealRegion_1.getRealRegion)(region); - } - const providedRegion = await region(); - return (0, getRealRegion_1.getRealRegion)(providedRegion); - }, - useFipsEndpoint: async () => { - const providedRegion = typeof region === "string" ? region : await region(); - if ((0, isFipsRegion_1.isFipsRegion)(providedRegion)) { - return true; - } - return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); - } - }; - }; - exports2.resolveRegionConfig = resolveRegionConfig; - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/index.js -var require_regionConfig = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/regionConfig/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_config(), exports2); - tslib_1.__exportStar(require_resolveRegionConfig(), exports2); - } -}); - -// node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js -var require_dist_cjs50 = __commonJS({ - "node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_extensions2(), exports2); - tslib_1.__exportStar(require_regionConfig(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/runtimeExtensions.js -var require_runtimeExtensions = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/runtimeExtensions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs50(); - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var asPartial = (t) => t; - var resolveRuntimeExtensions = (runtimeConfig, extensions) => { - const extensionConfiguration = { - ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) - }; - extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return { - ...runtimeConfig, - ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), - ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) - }; - }; - exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/SSOClient.js -var require_SSOClient = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/SSOClient.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SSOClient = exports2.__Client = void 0; - var middleware_host_header_1 = require_dist_cjs4(); - var middleware_logger_1 = require_dist_cjs5(); - var middleware_recursion_detection_1 = require_dist_cjs6(); - var middleware_user_agent_1 = require_dist_cjs28(); - var config_resolver_1 = require_dist_cjs30(); - var middleware_content_length_1 = require_dist_cjs32(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_retry_1 = require_dist_cjs41(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { - return smithy_client_1.Client; - } }); - var EndpointParameters_1 = require_EndpointParameters3(); - var runtimeConfig_1 = require_runtimeConfig(); - var runtimeExtensions_1 = require_runtimeExtensions(); - var SSOClient = class extends smithy_client_1.Client { - constructor(...[configuration]) { - const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); - const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); - const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); - const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); - const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); - const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); - const _config_6 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_5); - const _config_7 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_6, configuration?.extensions || []); - super(_config_7); - this.config = _config_7; - this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); - this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); - this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); - this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); - this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); - this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); - } - destroy() { - super.destroy(); - } - }; - exports2.SSOClient = SSOClient; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/models/SSOServiceException.js -var require_SSOServiceException = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/models/SSOServiceException.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SSOServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { - return smithy_client_1.ServiceException; - } }); - var SSOServiceException = class _SSOServiceException extends smithy_client_1.ServiceException { - constructor(options) { - super(options); - Object.setPrototypeOf(this, _SSOServiceException.prototype); - } - }; - exports2.SSOServiceException = SSOServiceException; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/models/models_0.js -var require_models_02 = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/models/models_0.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LogoutRequestFilterSensitiveLog = exports2.ListAccountsRequestFilterSensitiveLog = exports2.ListAccountRolesRequestFilterSensitiveLog = exports2.GetRoleCredentialsResponseFilterSensitiveLog = exports2.RoleCredentialsFilterSensitiveLog = exports2.GetRoleCredentialsRequestFilterSensitiveLog = exports2.UnauthorizedException = exports2.TooManyRequestsException = exports2.ResourceNotFoundException = exports2.InvalidRequestException = void 0; - var smithy_client_1 = require_dist_cjs16(); - var SSOServiceException_1 = require_SSOServiceException(); - var InvalidRequestException = class _InvalidRequestException extends SSOServiceException_1.SSOServiceException { - constructor(opts) { - super({ - name: "InvalidRequestException", - $fault: "client", - ...opts - }); - this.name = "InvalidRequestException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidRequestException.prototype); - } - }; - exports2.InvalidRequestException = InvalidRequestException; - var ResourceNotFoundException = class _ResourceNotFoundException extends SSOServiceException_1.SSOServiceException { - constructor(opts) { - super({ - name: "ResourceNotFoundException", - $fault: "client", - ...opts - }); - this.name = "ResourceNotFoundException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _ResourceNotFoundException.prototype); - } - }; - exports2.ResourceNotFoundException = ResourceNotFoundException; - var TooManyRequestsException = class _TooManyRequestsException extends SSOServiceException_1.SSOServiceException { - constructor(opts) { - super({ - name: "TooManyRequestsException", - $fault: "client", - ...opts - }); - this.name = "TooManyRequestsException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _TooManyRequestsException.prototype); - } - }; - exports2.TooManyRequestsException = TooManyRequestsException; - var UnauthorizedException = class _UnauthorizedException extends SSOServiceException_1.SSOServiceException { - constructor(opts) { - super({ - name: "UnauthorizedException", - $fault: "client", - ...opts - }); - this.name = "UnauthorizedException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _UnauthorizedException.prototype); - } - }; - exports2.UnauthorizedException = UnauthorizedException; - var GetRoleCredentialsRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.GetRoleCredentialsRequestFilterSensitiveLog = GetRoleCredentialsRequestFilterSensitiveLog; - var RoleCredentialsFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.secretAccessKey && { secretAccessKey: smithy_client_1.SENSITIVE_STRING }, - ...obj.sessionToken && { sessionToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.RoleCredentialsFilterSensitiveLog = RoleCredentialsFilterSensitiveLog; - var GetRoleCredentialsResponseFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.roleCredentials && { roleCredentials: (0, exports2.RoleCredentialsFilterSensitiveLog)(obj.roleCredentials) } - }); - exports2.GetRoleCredentialsResponseFilterSensitiveLog = GetRoleCredentialsResponseFilterSensitiveLog; - var ListAccountRolesRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.ListAccountRolesRequestFilterSensitiveLog = ListAccountRolesRequestFilterSensitiveLog; - var ListAccountsRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.ListAccountsRequestFilterSensitiveLog = ListAccountsRequestFilterSensitiveLog; - var LogoutRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.accessToken && { accessToken: smithy_client_1.SENSITIVE_STRING } - }); - exports2.LogoutRequestFilterSensitiveLog = LogoutRequestFilterSensitiveLog; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/protocols/Aws_restJson1.js -var require_Aws_restJson1 = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/protocols/Aws_restJson1.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.de_LogoutCommand = exports2.de_ListAccountsCommand = exports2.de_ListAccountRolesCommand = exports2.de_GetRoleCredentialsCommand = exports2.se_LogoutCommand = exports2.se_ListAccountsCommand = exports2.se_ListAccountRolesCommand = exports2.se_GetRoleCredentialsCommand = void 0; - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var models_0_1 = require_models_02(); - var SSOServiceException_1 = require_SSOServiceException(); - var se_GetRoleCredentialsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-sso_bearer_token": input.accessToken - }); - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/federation/credentials`; - const query = (0, smithy_client_1.map)({ - role_name: [, (0, smithy_client_1.expectNonNull)(input.roleName, `roleName`)], - account_id: [, (0, smithy_client_1.expectNonNull)(input.accountId, `accountId`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetRoleCredentialsCommand = se_GetRoleCredentialsCommand; - var se_ListAccountRolesCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-sso_bearer_token": input.accessToken - }); - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/assignment/roles`; - const query = (0, smithy_client_1.map)({ - next_token: [, input.nextToken], - max_result: [() => input.maxResults !== void 0, () => input.maxResults.toString()], - account_id: [, (0, smithy_client_1.expectNonNull)(input.accountId, `accountId`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListAccountRolesCommand = se_ListAccountRolesCommand; - var se_ListAccountsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-sso_bearer_token": input.accessToken - }); - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/assignment/accounts`; - const query = (0, smithy_client_1.map)({ - next_token: [, input.nextToken], - max_result: [() => input.maxResults !== void 0, () => input.maxResults.toString()] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListAccountsCommand = se_ListAccountsCommand; - var se_LogoutCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-sso_bearer_token": input.accessToken - }); - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/logout`; - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - body - }); - }; - exports2.se_LogoutCommand = se_LogoutCommand; - var de_GetRoleCredentialsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetRoleCredentialsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_1.take)(data, { - roleCredentials: smithy_client_1._json - }); - Object.assign(contents, doc); - return contents; - }; - exports2.de_GetRoleCredentialsCommand = de_GetRoleCredentialsCommand; - var de_GetRoleCredentialsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidRequestException": - case "com.amazonaws.sso#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "ResourceNotFoundException": - case "com.amazonaws.sso#ResourceNotFoundException": - throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); - case "TooManyRequestsException": - case "com.amazonaws.sso#TooManyRequestsException": - throw await de_TooManyRequestsExceptionRes(parsedOutput, context); - case "UnauthorizedException": - case "com.amazonaws.sso#UnauthorizedException": - throw await de_UnauthorizedExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_ListAccountRolesCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListAccountRolesCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_1.take)(data, { - nextToken: smithy_client_1.expectString, - roleList: smithy_client_1._json - }); - Object.assign(contents, doc); - return contents; - }; - exports2.de_ListAccountRolesCommand = de_ListAccountRolesCommand; - var de_ListAccountRolesCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidRequestException": - case "com.amazonaws.sso#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "ResourceNotFoundException": - case "com.amazonaws.sso#ResourceNotFoundException": - throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); - case "TooManyRequestsException": - case "com.amazonaws.sso#TooManyRequestsException": - throw await de_TooManyRequestsExceptionRes(parsedOutput, context); - case "UnauthorizedException": - case "com.amazonaws.sso#UnauthorizedException": - throw await de_UnauthorizedExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_ListAccountsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListAccountsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_1.take)(data, { - accountList: smithy_client_1._json, - nextToken: smithy_client_1.expectString - }); - Object.assign(contents, doc); - return contents; - }; - exports2.de_ListAccountsCommand = de_ListAccountsCommand; - var de_ListAccountsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidRequestException": - case "com.amazonaws.sso#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "ResourceNotFoundException": - case "com.amazonaws.sso#ResourceNotFoundException": - throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); - case "TooManyRequestsException": - case "com.amazonaws.sso#TooManyRequestsException": - throw await de_TooManyRequestsExceptionRes(parsedOutput, context); - case "UnauthorizedException": - case "com.amazonaws.sso#UnauthorizedException": - throw await de_UnauthorizedExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_LogoutCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_LogoutCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_LogoutCommand = de_LogoutCommand; - var de_LogoutCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidRequestException": - case "com.amazonaws.sso#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "TooManyRequestsException": - case "com.amazonaws.sso#TooManyRequestsException": - throw await de_TooManyRequestsExceptionRes(parsedOutput, context); - case "UnauthorizedException": - case "com.amazonaws.sso#UnauthorizedException": - throw await de_UnauthorizedExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var throwDefaultError = (0, smithy_client_1.withBaseException)(SSOServiceException_1.SSOServiceException); - var de_InvalidRequestExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_1.take)(data, { - message: smithy_client_1.expectString - }); - Object.assign(contents, doc); - const exception = new models_0_1.InvalidRequestException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_1.take)(data, { - message: smithy_client_1.expectString - }); - Object.assign(contents, doc); - const exception = new models_0_1.ResourceNotFoundException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_TooManyRequestsExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_1.take)(data, { - message: smithy_client_1.expectString - }); - Object.assign(contents, doc); - const exception = new models_0_1.TooManyRequestsException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_UnauthorizedExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_1.take)(data, { - message: smithy_client_1.expectString - }); - Object.assign(contents, doc); - const exception = new models_0_1.UnauthorizedException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var deserializeMetadata = (output) => ({ - httpStatusCode: output.statusCode, - requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], - extendedRequestId: output.headers["x-amz-id-2"], - cfId: output.headers["x-amz-cf-id"] - }); - var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); - var isSerializableHeaderValue = (value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0); - var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { - if (encoded.length) { - return JSON.parse(encoded); - } - return {}; - }); - var parseErrorBody = async (errorBody, context) => { - const value = await parseBody(errorBody, context); - value.message = value.message ?? value.Message; - return value; - }; - var loadRestJsonErrorCode = (output, data) => { - const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase()); - const sanitizeErrorCode = (rawValue) => { - let cleanValue = rawValue; - if (typeof cleanValue === "number") { - cleanValue = cleanValue.toString(); - } - if (cleanValue.indexOf(",") >= 0) { - cleanValue = cleanValue.split(",")[0]; - } - if (cleanValue.indexOf(":") >= 0) { - cleanValue = cleanValue.split(":")[0]; - } - if (cleanValue.indexOf("#") >= 0) { - cleanValue = cleanValue.split("#")[1]; - } - return cleanValue; - }; - const headerKey = findKey(output.headers, "x-amzn-errortype"); - if (headerKey !== void 0) { - return sanitizeErrorCode(output.headers[headerKey]); - } - if (data.code !== void 0) { - return sanitizeErrorCode(data.code); - } - if (data["__type"] !== void 0) { - return sanitizeErrorCode(data["__type"]); - } - }; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/commands/GetRoleCredentialsCommand.js -var require_GetRoleCredentialsCommand = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/commands/GetRoleCredentialsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetRoleCredentialsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_02(); - var Aws_restJson1_1 = require_Aws_restJson1(); - var GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetRoleCredentialsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOClient"; - const commandName = "GetRoleCredentialsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.GetRoleCredentialsRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.GetRoleCredentialsResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "SWBPortalService", - operation: "GetRoleCredentials" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restJson1_1.se_GetRoleCredentialsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restJson1_1.de_GetRoleCredentialsCommand)(output, context); - } - }; - exports2.GetRoleCredentialsCommand = GetRoleCredentialsCommand; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountRolesCommand.js -var require_ListAccountRolesCommand = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountRolesCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListAccountRolesCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_02(); - var Aws_restJson1_1 = require_Aws_restJson1(); - var ListAccountRolesCommand = class _ListAccountRolesCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListAccountRolesCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOClient"; - const commandName = "ListAccountRolesCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.ListAccountRolesRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "SWBPortalService", - operation: "ListAccountRoles" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restJson1_1.se_ListAccountRolesCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restJson1_1.de_ListAccountRolesCommand)(output, context); - } - }; - exports2.ListAccountRolesCommand = ListAccountRolesCommand; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountsCommand.js -var require_ListAccountsCommand = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/commands/ListAccountsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListAccountsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_02(); - var Aws_restJson1_1 = require_Aws_restJson1(); - var ListAccountsCommand = class _ListAccountsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListAccountsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOClient"; - const commandName = "ListAccountsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.ListAccountsRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "SWBPortalService", - operation: "ListAccounts" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restJson1_1.se_ListAccountsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restJson1_1.de_ListAccountsCommand)(output, context); - } - }; - exports2.ListAccountsCommand = ListAccountsCommand; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/commands/LogoutCommand.js -var require_LogoutCommand = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/commands/LogoutCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LogoutCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_02(); - var Aws_restJson1_1 = require_Aws_restJson1(); - var LogoutCommand = class _LogoutCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _LogoutCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOClient"; - const commandName = "LogoutCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.LogoutRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "SWBPortalService", - operation: "Logout" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restJson1_1.se_LogoutCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restJson1_1.de_LogoutCommand)(output, context); - } - }; - exports2.LogoutCommand = LogoutCommand; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/SSO.js -var require_SSO = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/SSO.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SSO = void 0; - var smithy_client_1 = require_dist_cjs16(); - var GetRoleCredentialsCommand_1 = require_GetRoleCredentialsCommand(); - var ListAccountRolesCommand_1 = require_ListAccountRolesCommand(); - var ListAccountsCommand_1 = require_ListAccountsCommand(); - var LogoutCommand_1 = require_LogoutCommand(); - var SSOClient_1 = require_SSOClient(); - var commands = { - GetRoleCredentialsCommand: GetRoleCredentialsCommand_1.GetRoleCredentialsCommand, - ListAccountRolesCommand: ListAccountRolesCommand_1.ListAccountRolesCommand, - ListAccountsCommand: ListAccountsCommand_1.ListAccountsCommand, - LogoutCommand: LogoutCommand_1.LogoutCommand - }; - var SSO = class extends SSOClient_1.SSOClient { - }; - exports2.SSO = SSO; - (0, smithy_client_1.createAggregatedClient)(commands, SSO); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/commands/index.js -var require_commands = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/commands/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_GetRoleCredentialsCommand(), exports2); - tslib_1.__exportStar(require_ListAccountRolesCommand(), exports2); - tslib_1.__exportStar(require_ListAccountsCommand(), exports2); - tslib_1.__exportStar(require_LogoutCommand(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/Interfaces.js -var require_Interfaces = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/Interfaces.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountRolesPaginator.js -var require_ListAccountRolesPaginator = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountRolesPaginator.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.paginateListAccountRoles = void 0; - var ListAccountRolesCommand_1 = require_ListAccountRolesCommand(); - var SSOClient_1 = require_SSOClient(); - var makePagedClientRequest = async (client, input, ...args) => { - return await client.send(new ListAccountRolesCommand_1.ListAccountRolesCommand(input), ...args); - }; - async function* paginateListAccountRoles(config, input, ...additionalArguments) { - let token = config.startingToken || void 0; - let hasNext = true; - let page; - while (hasNext) { - input.nextToken = token; - input["maxResults"] = config.pageSize; - if (config.client instanceof SSOClient_1.SSOClient) { - page = await makePagedClientRequest(config.client, input, ...additionalArguments); - } else { - throw new Error("Invalid client, expected SSO | SSOClient"); - } - yield page; - const prevToken = token; - token = page.nextToken; - hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); - } - return void 0; - } - exports2.paginateListAccountRoles = paginateListAccountRoles; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountsPaginator.js -var require_ListAccountsPaginator = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/ListAccountsPaginator.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.paginateListAccounts = void 0; - var ListAccountsCommand_1 = require_ListAccountsCommand(); - var SSOClient_1 = require_SSOClient(); - var makePagedClientRequest = async (client, input, ...args) => { - return await client.send(new ListAccountsCommand_1.ListAccountsCommand(input), ...args); - }; - async function* paginateListAccounts(config, input, ...additionalArguments) { - let token = config.startingToken || void 0; - let hasNext = true; - let page; - while (hasNext) { - input.nextToken = token; - input["maxResults"] = config.pageSize; - if (config.client instanceof SSOClient_1.SSOClient) { - page = await makePagedClientRequest(config.client, input, ...additionalArguments); - } else { - throw new Error("Invalid client, expected SSO | SSOClient"); - } - yield page; - const prevToken = token; - token = page.nextToken; - hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); - } - return void 0; - } - exports2.paginateListAccounts = paginateListAccounts; - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/pagination/index.js -var require_pagination2 = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/pagination/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_Interfaces(), exports2); - tslib_1.__exportStar(require_ListAccountRolesPaginator(), exports2); - tslib_1.__exportStar(require_ListAccountsPaginator(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/models/index.js -var require_models = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/models/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_models_02(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sso/dist-cjs/index.js -var require_dist_cjs51 = __commonJS({ - "node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SSOServiceException = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_SSOClient(), exports2); - tslib_1.__exportStar(require_SSO(), exports2); - tslib_1.__exportStar(require_commands(), exports2); - tslib_1.__exportStar(require_pagination2(), exports2); - tslib_1.__exportStar(require_models(), exports2); - var SSOServiceException_1 = require_SSOServiceException(); - Object.defineProperty(exports2, "SSOServiceException", { enumerable: true, get: function() { - return SSOServiceException_1.SSOServiceException; - } }); - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/bundle/client-sso-oidc-node.js -var require_client_sso_oidc_node = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/bundle/client-sso-oidc-node.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UnsupportedGrantTypeException = exports2.UnauthorizedClientException = exports2.SlowDownException = exports2.SSOOIDCClient = exports2.InvalidScopeException = exports2.InvalidRequestException = exports2.InvalidClientException = exports2.InternalServerException = exports2.ExpiredTokenException = exports2.CreateTokenCommand = exports2.AuthorizationPendingException = exports2.AccessDeniedException = void 0; - var middleware_host_header_1 = require_dist_cjs4(); - var middleware_logger_1 = require_dist_cjs5(); - var middleware_recursion_detection_1 = require_dist_cjs6(); - var middleware_user_agent_1 = require_dist_cjs28(); - var config_resolver_1 = require_dist_cjs30(); - var middleware_content_length_1 = require_dist_cjs32(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_retry_1 = require_dist_cjs41(); - var smithy_client_1 = require_dist_cjs16(); - var resolveClientEndpointParameters = (options) => { - var _a, _b; - return { - ...options, - useDualstackEndpoint: (_a = options.useDualstackEndpoint) !== null && _a !== void 0 ? _a : false, - useFipsEndpoint: (_b = options.useFipsEndpoint) !== null && _b !== void 0 ? _b : false, - defaultSigningName: "awsssooidc" - }; - }; - var package_default = { version: "3.387.0" }; - var util_user_agent_node_1 = require_dist_cjs46(); - var config_resolver_2 = require_dist_cjs30(); - var hash_node_1 = require_dist_cjs47(); - var middleware_retry_2 = require_dist_cjs41(); - var node_config_provider_1 = require_dist_cjs34(); - var node_http_handler_1 = require_dist_cjs14(); - var util_body_length_node_1 = require_dist_cjs48(); - var util_retry_1 = require_dist_cjs40(); - var smithy_client_2 = require_dist_cjs16(); - var url_parser_1 = require_dist_cjs36(); - var util_base64_1 = require_dist_cjs10(); - var util_utf8_1 = require_dist_cjs11(); - var util_endpoints_1 = require_dist_cjs27(); - var p = "required"; - var q = "fn"; - var r = "argv"; - var s = "ref"; - var a = "PartitionResult"; - var b = "tree"; - var c = "error"; - var d = "endpoint"; - var e = { [p]: false, "type": "String" }; - var f = { [p]: true, "default": false, "type": "Boolean" }; - var g = { [s]: "Endpoint" }; - var h = { [q]: "booleanEquals", [r]: [{ [s]: "UseFIPS" }, true] }; - var i = { [q]: "booleanEquals", [r]: [{ [s]: "UseDualStack" }, true] }; - var j = {}; - var k = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: a }, "supportsFIPS"] }] }; - var l = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: a }, "supportsDualStack"] }] }; - var m = [g]; - var n = [h]; - var o = [i]; - var _data = { version: "1.0", parameters: { Region: e, UseDualStack: f, UseFIPS: f, Endpoint: e }, rules: [{ conditions: [{ [q]: "aws.partition", [r]: [{ [s]: "Region" }], assign: a }], type: b, rules: [{ conditions: [{ [q]: "isSet", [r]: m }, { [q]: "parseURL", [r]: m, assign: "url" }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { type: b, rules: [{ conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: g, properties: j, headers: j }, type: d }] }] }, { conditions: [h, i], type: b, rules: [{ conditions: [k, l], type: b, rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: j, headers: j }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [k], type: b, rules: [{ type: b, rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: j, headers: j }, type: d }] }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [l], type: b, rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: j, headers: j }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: j, headers: j }, type: d }] }] }; - var ruleSet = _data; - var defaultEndpointResolver = (endpointParams, context = {}) => { - return (0, util_endpoints_1.resolveEndpoint)(ruleSet, { - endpointParams, - logger: context.logger - }); - }; - var getRuntimeConfig = (config) => { - var _a, _b, _c, _d, _e, _f, _g, _h, _j; - return { - apiVersion: "2019-06-10", - base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : util_base64_1.fromBase64, - base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : util_base64_1.toBase64, - disableHostPrefix: (_c = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _c !== void 0 ? _c : false, - endpointProvider: (_d = config === null || config === void 0 ? void 0 : config.endpointProvider) !== null && _d !== void 0 ? _d : defaultEndpointResolver, - logger: (_e = config === null || config === void 0 ? void 0 : config.logger) !== null && _e !== void 0 ? _e : new smithy_client_2.NoOpLogger(), - serviceId: (_f = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _f !== void 0 ? _f : "SSO OIDC", - urlParser: (_g = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _g !== void 0 ? _g : url_parser_1.parseUrl, - utf8Decoder: (_h = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _h !== void 0 ? _h : util_utf8_1.fromUtf8, - utf8Encoder: (_j = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _j !== void 0 ? _j : util_utf8_1.toUtf8 - }; - }; - var smithy_client_3 = require_dist_cjs16(); - var util_defaults_mode_node_1 = require_dist_cjs49(); - var smithy_client_4 = require_dist_cjs16(); - var getRuntimeConfig2 = (config) => { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; - (0, smithy_client_4.emitWarningIfUnsupportedVersion)(process.version); - const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); - const defaultConfigProvider = () => defaultsMode().then(smithy_client_3.loadConfigsForDefaultMode); - const clientSharedValues = getRuntimeConfig(config); - return { - ...clientSharedValues, - ...config, - runtime: "node", - defaultsMode, - bodyLengthChecker: (_a = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _a !== void 0 ? _a : util_body_length_node_1.calculateBodyLength, - defaultUserAgentProvider: (_b = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _b !== void 0 ? _b : (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_default.version }), - maxAttempts: (_c = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _c !== void 0 ? _c : (0, node_config_provider_1.loadConfig)(middleware_retry_2.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), - region: (_d = config === null || config === void 0 ? void 0 : config.region) !== null && _d !== void 0 ? _d : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_REGION_CONFIG_OPTIONS, config_resolver_2.NODE_REGION_CONFIG_FILE_OPTIONS), - requestHandler: (_e = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _e !== void 0 ? _e : new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), - retryMode: (_f = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _f !== void 0 ? _f : (0, node_config_provider_1.loadConfig)({ - ...middleware_retry_2.NODE_RETRY_MODE_CONFIG_OPTIONS, - default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE - }), - sha256: (_g = config === null || config === void 0 ? void 0 : config.sha256) !== null && _g !== void 0 ? _g : hash_node_1.Hash.bind(null, "sha256"), - streamCollector: (_h = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _h !== void 0 ? _h : node_http_handler_1.streamCollector, - useDualstackEndpoint: (_j = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _j !== void 0 ? _j : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), - useFipsEndpoint: (_k = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _k !== void 0 ? _k : (0, node_config_provider_1.loadConfig)(config_resolver_2.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) - }; - }; - var SSOOIDCClient = class extends smithy_client_1.Client { - constructor(...[configuration]) { - const _config_0 = getRuntimeConfig2(configuration || {}); - const _config_1 = resolveClientEndpointParameters(_config_0); - const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); - const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); - const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); - const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); - const _config_6 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_5); - super(_config_6); - this.config = _config_6; - this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); - this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); - this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); - this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); - this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); - this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); - } - destroy() { - super.destroy(); - } - }; - exports2.SSOOIDCClient = SSOOIDCClient; - var smithy_client_5 = require_dist_cjs16(); - var middleware_endpoint_2 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_6 = require_dist_cjs16(); - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_7 = require_dist_cjs16(); - var smithy_client_8 = require_dist_cjs16(); - var SSOOIDCServiceException = class _SSOOIDCServiceException extends smithy_client_8.ServiceException { - constructor(options) { - super(options); - Object.setPrototypeOf(this, _SSOOIDCServiceException.prototype); - } - }; - var AccessDeniedException = class _AccessDeniedException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "AccessDeniedException", - $fault: "client", - ...opts - }); - this.name = "AccessDeniedException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _AccessDeniedException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.AccessDeniedException = AccessDeniedException; - var AuthorizationPendingException = class _AuthorizationPendingException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "AuthorizationPendingException", - $fault: "client", - ...opts - }); - this.name = "AuthorizationPendingException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _AuthorizationPendingException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.AuthorizationPendingException = AuthorizationPendingException; - var ExpiredTokenException = class _ExpiredTokenException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "ExpiredTokenException", - $fault: "client", - ...opts - }); - this.name = "ExpiredTokenException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _ExpiredTokenException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.ExpiredTokenException = ExpiredTokenException; - var InternalServerException = class _InternalServerException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InternalServerException", - $fault: "server", - ...opts - }); - this.name = "InternalServerException"; - this.$fault = "server"; - Object.setPrototypeOf(this, _InternalServerException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.InternalServerException = InternalServerException; - var InvalidClientException = class _InvalidClientException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InvalidClientException", - $fault: "client", - ...opts - }); - this.name = "InvalidClientException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidClientException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.InvalidClientException = InvalidClientException; - var InvalidGrantException = class _InvalidGrantException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InvalidGrantException", - $fault: "client", - ...opts - }); - this.name = "InvalidGrantException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidGrantException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - var InvalidRequestException = class _InvalidRequestException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InvalidRequestException", - $fault: "client", - ...opts - }); - this.name = "InvalidRequestException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidRequestException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.InvalidRequestException = InvalidRequestException; - var InvalidScopeException = class _InvalidScopeException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InvalidScopeException", - $fault: "client", - ...opts - }); - this.name = "InvalidScopeException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidScopeException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.InvalidScopeException = InvalidScopeException; - var SlowDownException = class _SlowDownException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "SlowDownException", - $fault: "client", - ...opts - }); - this.name = "SlowDownException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _SlowDownException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.SlowDownException = SlowDownException; - var UnauthorizedClientException = class _UnauthorizedClientException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "UnauthorizedClientException", - $fault: "client", - ...opts - }); - this.name = "UnauthorizedClientException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _UnauthorizedClientException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.UnauthorizedClientException = UnauthorizedClientException; - var UnsupportedGrantTypeException = class _UnsupportedGrantTypeException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "UnsupportedGrantTypeException", - $fault: "client", - ...opts - }); - this.name = "UnsupportedGrantTypeException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _UnsupportedGrantTypeException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - exports2.UnsupportedGrantTypeException = UnsupportedGrantTypeException; - var InvalidClientMetadataException = class _InvalidClientMetadataException extends SSOOIDCServiceException { - constructor(opts) { - super({ - name: "InvalidClientMetadataException", - $fault: "client", - ...opts - }); - this.name = "InvalidClientMetadataException"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidClientMetadataException.prototype); - this.error = opts.error; - this.error_description = opts.error_description; - } - }; - var se_CreateTokenCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = { - "content-type": "application/json" - }; - const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/token`; - let body; - body = JSON.stringify((0, smithy_client_7.take)(input, { - clientId: [], - clientSecret: [], - code: [], - deviceCode: [], - grantType: [], - redirectUri: [], - refreshToken: [], - scope: (_) => (0, smithy_client_7._json)(_) - })); - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - body - }); - }; - var se_RegisterClientCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = { - "content-type": "application/json" - }; - const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/client/register`; - let body; - body = JSON.stringify((0, smithy_client_7.take)(input, { - clientName: [], - clientType: [], - scopes: (_) => (0, smithy_client_7._json)(_) - })); - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - body - }); - }; - var se_StartDeviceAuthorizationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = { - "content-type": "application/json" - }; - const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}/device_authorization`; - let body; - body = JSON.stringify((0, smithy_client_7.take)(input, { - clientId: [], - clientSecret: [], - startUrl: [] - })); - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - body - }); - }; - var de_CreateTokenCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CreateTokenCommandError(output, context); - } - const contents = (0, smithy_client_7.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_7.take)(data, { - accessToken: smithy_client_7.expectString, - expiresIn: smithy_client_7.expectInt32, - idToken: smithy_client_7.expectString, - refreshToken: smithy_client_7.expectString, - tokenType: smithy_client_7.expectString - }); - Object.assign(contents, doc); - return contents; - }; - var de_CreateTokenCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "AccessDeniedException": - case "com.amazonaws.ssooidc#AccessDeniedException": - throw await de_AccessDeniedExceptionRes(parsedOutput, context); - case "AuthorizationPendingException": - case "com.amazonaws.ssooidc#AuthorizationPendingException": - throw await de_AuthorizationPendingExceptionRes(parsedOutput, context); - case "ExpiredTokenException": - case "com.amazonaws.ssooidc#ExpiredTokenException": - throw await de_ExpiredTokenExceptionRes(parsedOutput, context); - case "InternalServerException": - case "com.amazonaws.ssooidc#InternalServerException": - throw await de_InternalServerExceptionRes(parsedOutput, context); - case "InvalidClientException": - case "com.amazonaws.ssooidc#InvalidClientException": - throw await de_InvalidClientExceptionRes(parsedOutput, context); - case "InvalidGrantException": - case "com.amazonaws.ssooidc#InvalidGrantException": - throw await de_InvalidGrantExceptionRes(parsedOutput, context); - case "InvalidRequestException": - case "com.amazonaws.ssooidc#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "InvalidScopeException": - case "com.amazonaws.ssooidc#InvalidScopeException": - throw await de_InvalidScopeExceptionRes(parsedOutput, context); - case "SlowDownException": - case "com.amazonaws.ssooidc#SlowDownException": - throw await de_SlowDownExceptionRes(parsedOutput, context); - case "UnauthorizedClientException": - case "com.amazonaws.ssooidc#UnauthorizedClientException": - throw await de_UnauthorizedClientExceptionRes(parsedOutput, context); - case "UnsupportedGrantTypeException": - case "com.amazonaws.ssooidc#UnsupportedGrantTypeException": - throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_RegisterClientCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_RegisterClientCommandError(output, context); - } - const contents = (0, smithy_client_7.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_7.take)(data, { - authorizationEndpoint: smithy_client_7.expectString, - clientId: smithy_client_7.expectString, - clientIdIssuedAt: smithy_client_7.expectLong, - clientSecret: smithy_client_7.expectString, - clientSecretExpiresAt: smithy_client_7.expectLong, - tokenEndpoint: smithy_client_7.expectString - }); - Object.assign(contents, doc); - return contents; - }; - var de_RegisterClientCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InternalServerException": - case "com.amazonaws.ssooidc#InternalServerException": - throw await de_InternalServerExceptionRes(parsedOutput, context); - case "InvalidClientMetadataException": - case "com.amazonaws.ssooidc#InvalidClientMetadataException": - throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context); - case "InvalidRequestException": - case "com.amazonaws.ssooidc#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "InvalidScopeException": - case "com.amazonaws.ssooidc#InvalidScopeException": - throw await de_InvalidScopeExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_StartDeviceAuthorizationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_StartDeviceAuthorizationCommandError(output, context); - } - const contents = (0, smithy_client_7.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_7.expectNonNull)((0, smithy_client_7.expectObject)(await parseBody(output.body, context)), "body"); - const doc = (0, smithy_client_7.take)(data, { - deviceCode: smithy_client_7.expectString, - expiresIn: smithy_client_7.expectInt32, - interval: smithy_client_7.expectInt32, - userCode: smithy_client_7.expectString, - verificationUri: smithy_client_7.expectString, - verificationUriComplete: smithy_client_7.expectString - }); - Object.assign(contents, doc); - return contents; - }; - var de_StartDeviceAuthorizationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InternalServerException": - case "com.amazonaws.ssooidc#InternalServerException": - throw await de_InternalServerExceptionRes(parsedOutput, context); - case "InvalidClientException": - case "com.amazonaws.ssooidc#InvalidClientException": - throw await de_InvalidClientExceptionRes(parsedOutput, context); - case "InvalidRequestException": - case "com.amazonaws.ssooidc#InvalidRequestException": - throw await de_InvalidRequestExceptionRes(parsedOutput, context); - case "SlowDownException": - case "com.amazonaws.ssooidc#SlowDownException": - throw await de_SlowDownExceptionRes(parsedOutput, context); - case "UnauthorizedClientException": - case "com.amazonaws.ssooidc#UnauthorizedClientException": - throw await de_UnauthorizedClientExceptionRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var throwDefaultError = (0, smithy_client_7.withBaseException)(SSOOIDCServiceException); - var de_AccessDeniedExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new AccessDeniedException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_AuthorizationPendingExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new AuthorizationPendingException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_ExpiredTokenExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new ExpiredTokenException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InternalServerExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InternalServerException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidClientExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InvalidClientException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidClientMetadataExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InvalidClientMetadataException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidGrantExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InvalidGrantException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidRequestExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InvalidRequestException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidScopeExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new InvalidScopeException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_SlowDownExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new SlowDownException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_UnauthorizedClientExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new UnauthorizedClientException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var de_UnsupportedGrantTypeExceptionRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_7.map)({}); - const data = parsedOutput.body; - const doc = (0, smithy_client_7.take)(data, { - error: smithy_client_7.expectString, - error_description: smithy_client_7.expectString - }); - Object.assign(contents, doc); - const exception = new UnsupportedGrantTypeException({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_7.decorateServiceException)(exception, parsedOutput.body); - }; - var deserializeMetadata = (output) => { - var _a, _b; - return { - httpStatusCode: output.statusCode, - requestId: (_b = (_a = output.headers["x-amzn-requestid"]) !== null && _a !== void 0 ? _a : output.headers["x-amzn-request-id"]) !== null && _b !== void 0 ? _b : output.headers["x-amz-request-id"], - extendedRequestId: output.headers["x-amz-id-2"], - cfId: output.headers["x-amz-cf-id"] - }; - }; - var collectBodyString = (streamBody, context) => (0, smithy_client_7.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); - var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { - if (encoded.length) { - return JSON.parse(encoded); - } - return {}; - }); - var parseErrorBody = async (errorBody, context) => { - var _a; - const value = await parseBody(errorBody, context); - value.message = (_a = value.message) !== null && _a !== void 0 ? _a : value.Message; - return value; - }; - var loadRestJsonErrorCode = (output, data) => { - const findKey = (object, key) => Object.keys(object).find((k2) => k2.toLowerCase() === key.toLowerCase()); - const sanitizeErrorCode = (rawValue) => { - let cleanValue = rawValue; - if (typeof cleanValue === "number") { - cleanValue = cleanValue.toString(); - } - if (cleanValue.indexOf(",") >= 0) { - cleanValue = cleanValue.split(",")[0]; - } - if (cleanValue.indexOf(":") >= 0) { - cleanValue = cleanValue.split(":")[0]; - } - if (cleanValue.indexOf("#") >= 0) { - cleanValue = cleanValue.split("#")[1]; - } - return cleanValue; - }; - const headerKey = findKey(output.headers, "x-amzn-errortype"); - if (headerKey !== void 0) { - return sanitizeErrorCode(output.headers[headerKey]); - } - if (data.code !== void 0) { - return sanitizeErrorCode(data.code); - } - if (data["__type"] !== void 0) { - return sanitizeErrorCode(data["__type"]); - } - }; - var CreateTokenCommand = class _CreateTokenCommand extends smithy_client_6.Command { - constructor(input) { - super(); - this.input = input; - } - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_2.getEndpointPlugin)(configuration, _CreateTokenCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOOIDCClient"; - const commandName = "CreateTokenCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _ - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return se_CreateTokenCommand(input, context); - } - deserialize(output, context) { - return de_CreateTokenCommand(output, context); - } - }; - exports2.CreateTokenCommand = CreateTokenCommand; - var middleware_endpoint_3 = require_dist_cjs38(); - var middleware_serde_2 = require_dist_cjs37(); - var smithy_client_9 = require_dist_cjs16(); - var RegisterClientCommand = class _RegisterClientCommand extends smithy_client_9.Command { - constructor(input) { - super(); - this.input = input; - } - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_2.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_3.getEndpointPlugin)(configuration, _RegisterClientCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOOIDCClient"; - const commandName = "RegisterClientCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _ - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return se_RegisterClientCommand(input, context); - } - deserialize(output, context) { - return de_RegisterClientCommand(output, context); - } - }; - var middleware_endpoint_4 = require_dist_cjs38(); - var middleware_serde_3 = require_dist_cjs37(); - var smithy_client_10 = require_dist_cjs16(); - var StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends smithy_client_10.Command { - constructor(input) { - super(); - this.input = input; - } - static getEndpointParameterInstructions() { - return { - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_3.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_4.getEndpointPlugin)(configuration, _StartDeviceAuthorizationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "SSOOIDCClient"; - const commandName = "StartDeviceAuthorizationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _ - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return se_StartDeviceAuthorizationCommand(input, context); - } - deserialize(output, context) { - return de_StartDeviceAuthorizationCommand(output, context); - } - }; - var commands = { - CreateTokenCommand, - RegisterClientCommand, - StartDeviceAuthorizationCommand - }; - var SSOOIDC = class extends SSOOIDCClient { - }; - (0, smithy_client_5.createAggregatedClient)(commands, SSOOIDC); - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/constants.js -var require_constants2 = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/constants.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.REFRESH_MESSAGE = exports2.EXPIRE_WINDOW_MS = void 0; - exports2.EXPIRE_WINDOW_MS = 5 * 60 * 1e3; - exports2.REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/getSsoOidcClient.js -var require_getSsoOidcClient = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/getSsoOidcClient.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSsoOidcClient = void 0; - var client_sso_oidc_node_1 = require_client_sso_oidc_node(); - var ssoOidcClientsHash = {}; - var getSsoOidcClient = (ssoRegion) => { - if (ssoOidcClientsHash[ssoRegion]) { - return ssoOidcClientsHash[ssoRegion]; - } - const ssoOidcClient = new client_sso_oidc_node_1.SSOOIDCClient({ region: ssoRegion }); - ssoOidcClientsHash[ssoRegion] = ssoOidcClient; - return ssoOidcClient; - }; - exports2.getSsoOidcClient = getSsoOidcClient; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/getNewSsoOidcToken.js -var require_getNewSsoOidcToken = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/getNewSsoOidcToken.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getNewSsoOidcToken = void 0; - var client_sso_oidc_node_1 = require_client_sso_oidc_node(); - var getSsoOidcClient_1 = require_getSsoOidcClient(); - var getNewSsoOidcToken = (ssoToken, ssoRegion) => { - const ssoOidcClient = (0, getSsoOidcClient_1.getSsoOidcClient)(ssoRegion); - return ssoOidcClient.send(new client_sso_oidc_node_1.CreateTokenCommand({ - clientId: ssoToken.clientId, - clientSecret: ssoToken.clientSecret, - refreshToken: ssoToken.refreshToken, - grantType: "refresh_token" - })); - }; - exports2.getNewSsoOidcToken = getNewSsoOidcToken; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenExpiry.js -var require_validateTokenExpiry = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenExpiry.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateTokenExpiry = void 0; - var property_provider_1 = require_dist_cjs19(); - var constants_1 = require_constants2(); - var validateTokenExpiry = (token) => { - if (token.expiration && token.expiration.getTime() < Date.now()) { - throw new property_provider_1.TokenProviderError(`Token is expired. ${constants_1.REFRESH_MESSAGE}`, false); - } - }; - exports2.validateTokenExpiry = validateTokenExpiry; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenKey.js -var require_validateTokenKey = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/validateTokenKey.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateTokenKey = void 0; - var property_provider_1 = require_dist_cjs19(); - var constants_1 = require_constants2(); - var validateTokenKey = (key, value, forRefresh = false) => { - if (typeof value === "undefined") { - throw new property_provider_1.TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${constants_1.REFRESH_MESSAGE}`, false); - } - }; - exports2.validateTokenKey = validateTokenKey; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/writeSSOTokenToFile.js -var require_writeSSOTokenToFile = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/writeSSOTokenToFile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.writeSSOTokenToFile = void 0; - var shared_ini_file_loader_1 = require_dist_cjs33(); - var fs_1 = require("fs"); - var { writeFile } = fs_1.promises; - var writeSSOTokenToFile = (id, ssoToken) => { - const tokenFilepath = (0, shared_ini_file_loader_1.getSSOTokenFilepath)(id); - const tokenString = JSON.stringify(ssoToken, null, 2); - return writeFile(tokenFilepath, tokenString); - }; - exports2.writeSSOTokenToFile = writeSSOTokenToFile; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/fromSso.js -var require_fromSso = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/fromSso.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromSso = void 0; - var property_provider_1 = require_dist_cjs19(); - var shared_ini_file_loader_1 = require_dist_cjs33(); - var constants_1 = require_constants2(); - var getNewSsoOidcToken_1 = require_getNewSsoOidcToken(); - var validateTokenExpiry_1 = require_validateTokenExpiry(); - var validateTokenKey_1 = require_validateTokenKey(); - var writeSSOTokenToFile_1 = require_writeSSOTokenToFile(); - var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0); - var fromSso = (init = {}) => async () => { - const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); - const profileName = (0, shared_ini_file_loader_1.getProfileName)(init); - const profile = profiles[profileName]; - if (!profile) { - throw new property_provider_1.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false); - } else if (!profile["sso_session"]) { - throw new property_provider_1.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`); - } - const ssoSessionName = profile["sso_session"]; - const ssoSessions = await (0, shared_ini_file_loader_1.loadSsoSessionData)(init); - const ssoSession = ssoSessions[ssoSessionName]; - if (!ssoSession) { - throw new property_provider_1.TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false); - } - for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) { - if (!ssoSession[ssoSessionRequiredKey]) { - throw new property_provider_1.TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false); - } - } - const ssoStartUrl = ssoSession["sso_start_url"]; - const ssoRegion = ssoSession["sso_region"]; - let ssoToken; - try { - ssoToken = await (0, shared_ini_file_loader_1.getSSOTokenFromFile)(ssoSessionName); - } catch (e) { - throw new property_provider_1.TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${constants_1.REFRESH_MESSAGE}`, false); - } - (0, validateTokenKey_1.validateTokenKey)("accessToken", ssoToken.accessToken); - (0, validateTokenKey_1.validateTokenKey)("expiresAt", ssoToken.expiresAt); - const { accessToken, expiresAt } = ssoToken; - const existingToken = { token: accessToken, expiration: new Date(expiresAt) }; - if (existingToken.expiration.getTime() - Date.now() > constants_1.EXPIRE_WINDOW_MS) { - return existingToken; - } - if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) { - (0, validateTokenExpiry_1.validateTokenExpiry)(existingToken); - return existingToken; - } - (0, validateTokenKey_1.validateTokenKey)("clientId", ssoToken.clientId, true); - (0, validateTokenKey_1.validateTokenKey)("clientSecret", ssoToken.clientSecret, true); - (0, validateTokenKey_1.validateTokenKey)("refreshToken", ssoToken.refreshToken, true); - try { - lastRefreshAttemptTime.setTime(Date.now()); - const newSsoOidcToken = await (0, getNewSsoOidcToken_1.getNewSsoOidcToken)(ssoToken, ssoRegion); - (0, validateTokenKey_1.validateTokenKey)("accessToken", newSsoOidcToken.accessToken); - (0, validateTokenKey_1.validateTokenKey)("expiresIn", newSsoOidcToken.expiresIn); - const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3); - try { - await (0, writeSSOTokenToFile_1.writeSSOTokenToFile)(ssoSessionName, { - ...ssoToken, - accessToken: newSsoOidcToken.accessToken, - expiresAt: newTokenExpiration.toISOString(), - refreshToken: newSsoOidcToken.refreshToken - }); - } catch (error) { - } - return { - token: newSsoOidcToken.accessToken, - expiration: newTokenExpiration - }; - } catch (error) { - (0, validateTokenExpiry_1.validateTokenExpiry)(existingToken); - return existingToken; - } - }; - exports2.fromSso = fromSso; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/fromStatic.js -var require_fromStatic = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/fromStatic.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromStatic = void 0; - var property_provider_1 = require_dist_cjs19(); - var fromStatic = ({ token }) => async () => { - if (!token || !token.token) { - throw new property_provider_1.TokenProviderError(`Please pass a valid token to fromStatic`, false); - } - return token; - }; - exports2.fromStatic = fromStatic; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/nodeProvider.js -var require_nodeProvider = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/nodeProvider.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.nodeProvider = void 0; - var property_provider_1 = require_dist_cjs19(); - var fromSso_1 = require_fromSso(); - var nodeProvider = (init = {}) => (0, property_provider_1.memoize)((0, property_provider_1.chain)((0, fromSso_1.fromSso)(init), async () => { - throw new property_provider_1.TokenProviderError("Could not load token from any providers", false); - }), (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5, (token) => token.expiration !== void 0); - exports2.nodeProvider = nodeProvider; - } -}); - -// node_modules/@aws-sdk/token-providers/dist-cjs/index.js -var require_dist_cjs52 = __commonJS({ - "node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_client_sso_oidc_node(), exports2); - tslib_1.__exportStar(require_fromSso(), exports2); - tslib_1.__exportStar(require_fromStatic(), exports2); - tslib_1.__exportStar(require_nodeProvider(), exports2); - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/resolveSSOCredentials.js -var require_resolveSSOCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/resolveSSOCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveSSOCredentials = void 0; - var client_sso_1 = require_dist_cjs51(); - var token_providers_1 = require_dist_cjs52(); - var property_provider_1 = require_dist_cjs19(); - var shared_ini_file_loader_1 = require_dist_cjs33(); - var SHOULD_FAIL_CREDENTIAL_CHAIN = false; - var resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, profile }) => { - let token; - const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`; - if (ssoSession) { - try { - const _token = await (0, token_providers_1.fromSso)({ profile })(); - token = { - accessToken: _token.token, - expiresAt: new Date(_token.expiration).toISOString() - }; - } catch (e) { - throw new property_provider_1.CredentialsProviderError(e.message, SHOULD_FAIL_CREDENTIAL_CHAIN); - } - } else { - try { - token = await (0, shared_ini_file_loader_1.getSSOTokenFromFile)(ssoStartUrl); - } catch (e) { - throw new property_provider_1.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, SHOULD_FAIL_CREDENTIAL_CHAIN); - } - } - if (new Date(token.expiresAt).getTime() - Date.now() <= 0) { - throw new property_provider_1.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, SHOULD_FAIL_CREDENTIAL_CHAIN); - } - const { accessToken } = token; - const sso = ssoClient || new client_sso_1.SSOClient({ region: ssoRegion }); - let ssoResp; - try { - ssoResp = await sso.send(new client_sso_1.GetRoleCredentialsCommand({ - accountId: ssoAccountId, - roleName: ssoRoleName, - accessToken - })); - } catch (e) { - throw property_provider_1.CredentialsProviderError.from(e, SHOULD_FAIL_CREDENTIAL_CHAIN); - } - const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration } = {} } = ssoResp; - if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) { - throw new property_provider_1.CredentialsProviderError("SSO returns an invalid temporary credential.", SHOULD_FAIL_CREDENTIAL_CHAIN); - } - return { accessKeyId, secretAccessKey, sessionToken, expiration: new Date(expiration) }; - }; - exports2.resolveSSOCredentials = resolveSSOCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/validateSsoProfile.js -var require_validateSsoProfile = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/validateSsoProfile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateSsoProfile = void 0; - var property_provider_1 = require_dist_cjs19(); - var validateSsoProfile = (profile) => { - const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile; - if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) { - throw new property_provider_1.CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(", ")} -Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, false); - } - return profile; - }; - exports2.validateSsoProfile = validateSsoProfile; - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/fromSSO.js -var require_fromSSO = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/fromSSO.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromSSO = void 0; - var property_provider_1 = require_dist_cjs19(); - var shared_ini_file_loader_1 = require_dist_cjs33(); - var isSsoProfile_1 = require_isSsoProfile(); - var resolveSSOCredentials_1 = require_resolveSSOCredentials(); - var validateSsoProfile_1 = require_validateSsoProfile(); - var fromSSO = (init = {}) => async () => { - const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, ssoSession } = init; - const profileName = (0, shared_ini_file_loader_1.getProfileName)(init); - if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) { - const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); - const profile = profiles[profileName]; - if (!profile) { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} was not found.`); - } - if (!(0, isSsoProfile_1.isSsoProfile)(profile)) { - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`); - } - if (profile === null || profile === void 0 ? void 0 : profile.sso_session) { - const ssoSessions = await (0, shared_ini_file_loader_1.loadSsoSessionData)(init); - const session = ssoSessions[profile.sso_session]; - const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`; - if (ssoRegion && ssoRegion !== session.sso_region) { - throw new property_provider_1.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, false); - } - if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) { - throw new property_provider_1.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, false); - } - profile.sso_region = session.sso_region; - profile.sso_start_url = session.sso_start_url; - } - const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = (0, validateSsoProfile_1.validateSsoProfile)(profile); - return (0, resolveSSOCredentials_1.resolveSSOCredentials)({ - ssoStartUrl: sso_start_url, - ssoSession: sso_session, - ssoAccountId: sso_account_id, - ssoRegion: sso_region, - ssoRoleName: sso_role_name, - ssoClient, - profile: profileName - }); - } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) { - throw new property_provider_1.CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"'); - } else { - return (0, resolveSSOCredentials_1.resolveSSOCredentials)({ - ssoStartUrl, - ssoSession, - ssoAccountId, - ssoRegion, - ssoRoleName, - ssoClient, - profile: profileName - }); - } - }; - exports2.fromSSO = fromSSO; - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/types.js -var require_types2 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js -var require_dist_cjs53 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_fromSSO(), exports2); - tslib_1.__exportStar(require_isSsoProfile(), exports2); - tslib_1.__exportStar(require_types2(), exports2); - tslib_1.__exportStar(require_validateSsoProfile(), exports2); - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveSsoCredentials.js -var require_resolveSsoCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveSsoCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveSsoCredentials = exports2.isSsoProfile = void 0; - var credential_provider_sso_1 = require_dist_cjs53(); - var credential_provider_sso_2 = require_dist_cjs53(); - Object.defineProperty(exports2, "isSsoProfile", { enumerable: true, get: function() { - return credential_provider_sso_2.isSsoProfile; - } }); - var resolveSsoCredentials = (data) => { - const { sso_start_url, sso_account_id, sso_session, sso_region, sso_role_name } = (0, credential_provider_sso_1.validateSsoProfile)(data); - return (0, credential_provider_sso_1.fromSSO)({ - ssoStartUrl: sso_start_url, - ssoAccountId: sso_account_id, - ssoSession: sso_session, - ssoRegion: sso_region, - ssoRoleName: sso_role_name - })(); - }; - exports2.resolveSsoCredentials = resolveSsoCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveStaticCredentials.js -var require_resolveStaticCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveStaticCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveStaticCredentials = exports2.isStaticCredsProfile = void 0; - var isStaticCredsProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1; - exports2.isStaticCredsProfile = isStaticCredsProfile; - var resolveStaticCredentials = (profile) => Promise.resolve({ - accessKeyId: profile.aws_access_key_id, - secretAccessKey: profile.aws_secret_access_key, - sessionToken: profile.aws_session_token - }); - exports2.resolveStaticCredentials = resolveStaticCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js -var require_fromWebToken = __commonJS({ - "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromWebToken = void 0; - var property_provider_1 = require_dist_cjs19(); - var fromWebToken = (init) => () => { - const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds, roleAssumerWithWebIdentity } = init; - if (!roleAssumerWithWebIdentity) { - throw new property_provider_1.CredentialsProviderError(`Role Arn '${roleArn}' needs to be assumed with web identity, but no role assumption callback was provided.`, false); - } - return roleAssumerWithWebIdentity({ - RoleArn: roleArn, - RoleSessionName: roleSessionName !== null && roleSessionName !== void 0 ? roleSessionName : `aws-sdk-js-session-${Date.now()}`, - WebIdentityToken: webIdentityToken, - ProviderId: providerId, - PolicyArns: policyArns, - Policy: policy, - DurationSeconds: durationSeconds - }); - }; - exports2.fromWebToken = fromWebToken; - } -}); - -// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js -var require_fromTokenFile = __commonJS({ - "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromTokenFile = void 0; - var property_provider_1 = require_dist_cjs19(); - var fs_1 = require("fs"); - var fromWebToken_1 = require_fromWebToken(); - var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE"; - var ENV_ROLE_ARN = "AWS_ROLE_ARN"; - var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME"; - var fromTokenFile = (init = {}) => async () => { - var _a, _b, _c; - const webIdentityTokenFile = (_a = init === null || init === void 0 ? void 0 : init.webIdentityTokenFile) !== null && _a !== void 0 ? _a : process.env[ENV_TOKEN_FILE]; - const roleArn = (_b = init === null || init === void 0 ? void 0 : init.roleArn) !== null && _b !== void 0 ? _b : process.env[ENV_ROLE_ARN]; - const roleSessionName = (_c = init === null || init === void 0 ? void 0 : init.roleSessionName) !== null && _c !== void 0 ? _c : process.env[ENV_ROLE_SESSION_NAME]; - if (!webIdentityTokenFile || !roleArn) { - throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified"); - } - return (0, fromWebToken_1.fromWebToken)({ - ...init, - webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }), - roleArn, - roleSessionName - })(); - }; - exports2.fromTokenFile = fromTokenFile; - } -}); - -// node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js -var require_dist_cjs54 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_fromTokenFile(), exports2); - tslib_1.__exportStar(require_fromWebToken(), exports2); - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveWebIdentityCredentials.js -var require_resolveWebIdentityCredentials = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveWebIdentityCredentials.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveWebIdentityCredentials = exports2.isWebIdentityProfile = void 0; - var credential_provider_web_identity_1 = require_dist_cjs54(); - var isWebIdentityProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1; - exports2.isWebIdentityProfile = isWebIdentityProfile; - var resolveWebIdentityCredentials = async (profile, options) => (0, credential_provider_web_identity_1.fromTokenFile)({ - webIdentityTokenFile: profile.web_identity_token_file, - roleArn: profile.role_arn, - roleSessionName: profile.role_session_name, - roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity - })(); - exports2.resolveWebIdentityCredentials = resolveWebIdentityCredentials; - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProfileData.js -var require_resolveProfileData = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/resolveProfileData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveProfileData = void 0; - var property_provider_1 = require_dist_cjs19(); - var resolveAssumeRoleCredentials_1 = require_resolveAssumeRoleCredentials(); - var resolveProcessCredentials_1 = require_resolveProcessCredentials2(); - var resolveSsoCredentials_1 = require_resolveSsoCredentials(); - var resolveStaticCredentials_1 = require_resolveStaticCredentials(); - var resolveWebIdentityCredentials_1 = require_resolveWebIdentityCredentials(); - var resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => { - const data = profiles[profileName]; - if (Object.keys(visitedProfiles).length > 0 && (0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { - return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); - } - if ((0, resolveAssumeRoleCredentials_1.isAssumeRoleProfile)(data)) { - return (0, resolveAssumeRoleCredentials_1.resolveAssumeRoleCredentials)(profileName, profiles, options, visitedProfiles); - } - if ((0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { - return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); - } - if ((0, resolveWebIdentityCredentials_1.isWebIdentityProfile)(data)) { - return (0, resolveWebIdentityCredentials_1.resolveWebIdentityCredentials)(data, options); - } - if ((0, resolveProcessCredentials_1.isProcessProfile)(data)) { - return (0, resolveProcessCredentials_1.resolveProcessCredentials)(options, profileName); - } - if ((0, resolveSsoCredentials_1.isSsoProfile)(data)) { - return (0, resolveSsoCredentials_1.resolveSsoCredentials)(data); - } - throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found or parsed in shared credentials file.`); - }; - exports2.resolveProfileData = resolveProfileData; - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/fromIni.js -var require_fromIni = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/fromIni.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromIni = void 0; - var shared_ini_file_loader_1 = require_dist_cjs33(); - var resolveProfileData_1 = require_resolveProfileData(); - var fromIni = (init = {}) => async () => { - const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init); - return (0, resolveProfileData_1.resolveProfileData)((0, shared_ini_file_loader_1.getProfileName)(init), profiles, init); - }; - exports2.fromIni = fromIni; - } -}); - -// node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js -var require_dist_cjs55 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_fromIni(), exports2); - } -}); - -// node_modules/@aws-sdk/credential-provider-node/dist-cjs/remoteProvider.js -var require_remoteProvider = __commonJS({ - "node_modules/@aws-sdk/credential-provider-node/dist-cjs/remoteProvider.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.remoteProvider = exports2.ENV_IMDS_DISABLED = void 0; - var credential_provider_imds_1 = require_dist_cjs44(); - var property_provider_1 = require_dist_cjs19(); - exports2.ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; - var remoteProvider = (init) => { - if (process.env[credential_provider_imds_1.ENV_CMDS_RELATIVE_URI] || process.env[credential_provider_imds_1.ENV_CMDS_FULL_URI]) { - return (0, credential_provider_imds_1.fromContainerMetadata)(init); - } - if (process.env[exports2.ENV_IMDS_DISABLED]) { - return async () => { - throw new property_provider_1.CredentialsProviderError("EC2 Instance Metadata Service access disabled"); - }; - } - return (0, credential_provider_imds_1.fromInstanceMetadata)(init); - }; - exports2.remoteProvider = remoteProvider; - } -}); - -// node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js -var require_defaultProvider = __commonJS({ - "node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultProvider = void 0; - var credential_provider_env_1 = require_dist_cjs43(); - var credential_provider_ini_1 = require_dist_cjs55(); - var credential_provider_process_1 = require_dist_cjs45(); - var credential_provider_sso_1 = require_dist_cjs53(); - var credential_provider_web_identity_1 = require_dist_cjs54(); - var property_provider_1 = require_dist_cjs19(); - var shared_ini_file_loader_1 = require_dist_cjs33(); - var remoteProvider_1 = require_remoteProvider(); - var defaultProvider = (init = {}) => (0, property_provider_1.memoize)((0, property_provider_1.chain)(...init.profile || process.env[shared_ini_file_loader_1.ENV_PROFILE] ? [] : [(0, credential_provider_env_1.fromEnv)()], (0, credential_provider_sso_1.fromSSO)(init), (0, credential_provider_ini_1.fromIni)(init), (0, credential_provider_process_1.fromProcess)(init), (0, credential_provider_web_identity_1.fromTokenFile)(init), (0, remoteProvider_1.remoteProvider)(init), async () => { - throw new property_provider_1.CredentialsProviderError("Could not load credentials from any providers", false); - }), (credentials) => credentials.expiration !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, (credentials) => credentials.expiration !== void 0); - exports2.defaultProvider = defaultProvider; - } -}); - -// node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js -var require_dist_cjs56 = __commonJS({ - "node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_defaultProvider(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js -var require_ruleset2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ruleSet = void 0; - var F = "required"; - var G = "type"; - var H = "fn"; - var I = "argv"; - var J = "ref"; - var a = false; - var b = true; - var c = "booleanEquals"; - var d = "tree"; - var e = "stringEquals"; - var f = "sigv4"; - var g = "sts"; - var h = "us-east-1"; - var i = "endpoint"; - var j = "https://sts.{Region}.{PartitionResult#dnsSuffix}"; - var k = "error"; - var l = "getAttr"; - var m = { [F]: false, [G]: "String" }; - var n = { [F]: true, "default": false, [G]: "Boolean" }; - var o = { [J]: "Endpoint" }; - var p = { [H]: "isSet", [I]: [{ [J]: "Region" }] }; - var q = { [J]: "Region" }; - var r = { [H]: "aws.partition", [I]: [q], "assign": "PartitionResult" }; - var s = { [J]: "UseFIPS" }; - var t = { [J]: "UseDualStack" }; - var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": f, "signingName": g, "signingRegion": h }] }, "headers": {} }; - var v = {}; - var w = { "conditions": [{ [H]: e, [I]: [q, "aws-global"] }], [i]: u, [G]: i }; - var x = { [H]: c, [I]: [s, true] }; - var y = { [H]: c, [I]: [t, true] }; - var z = { [H]: c, [I]: [true, { [H]: l, [I]: [{ [J]: "PartitionResult" }, "supportsFIPS"] }] }; - var A = { [J]: "PartitionResult" }; - var B = { [H]: c, [I]: [true, { [H]: l, [I]: [A, "supportsDualStack"] }] }; - var C = [{ [H]: "isSet", [I]: [o] }]; - var D = [x]; - var E = [y]; - var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H]: c, [I]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H]: "not", [I]: C }, p, r, { [H]: c, [I]: [s, a] }, { [H]: c, [I]: [t, a] }], [G]: d, rules: [{ conditions: [{ [H]: e, [I]: [q, "ap-northeast-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-south-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-southeast-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "ap-southeast-2"] }], endpoint: u, [G]: i }, w, { conditions: [{ [H]: e, [I]: [q, "ca-central-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-central-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-north-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-2"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "eu-west-3"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "sa-east-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, h] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-east-2"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-west-1"] }], endpoint: u, [G]: i }, { conditions: [{ [H]: e, [I]: [q, "us-west-2"] }], endpoint: u, [G]: i }, { endpoint: { url: j, properties: { authSchemes: [{ name: f, signingName: g, signingRegion: "{Region}" }] }, headers: v }, [G]: i }] }, { conditions: C, [G]: d, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G]: k }, { endpoint: { url: o, properties: v, headers: v }, [G]: i }] }, { conditions: [p], [G]: d, rules: [{ conditions: [r], [G]: d, rules: [{ conditions: [x, y], [G]: d, rules: [{ conditions: [z, B], [G]: d, rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G]: k }] }, { conditions: D, [G]: d, rules: [{ conditions: [z], [G]: d, rules: [{ conditions: [{ [H]: e, [I]: ["aws-us-gov", { [H]: l, [I]: [A, "name"] }] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G]: i }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "FIPS is enabled but this partition does not support FIPS", [G]: k }] }, { conditions: E, [G]: d, rules: [{ conditions: [B], [G]: d, rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G]: i }] }, { error: "DualStack is enabled but this partition does not support DualStack", [G]: k }] }, w, { endpoint: { url: j, properties: v, headers: v }, [G]: i }] }] }, { error: "Invalid Configuration: Missing Region", [G]: k }] }; - exports2.ruleSet = _data; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js -var require_endpointResolver2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs27(); - var ruleset_1 = require_ruleset2(); - var defaultEndpointResolver = (endpointParams, context = {}) => { - return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { - endpointParams, - logger: context.logger - }); - }; - exports2.defaultEndpointResolver = defaultEndpointResolver; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js -var require_runtimeConfig_shared2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var smithy_client_1 = require_dist_cjs16(); - var url_parser_1 = require_dist_cjs36(); - var util_base64_1 = require_dist_cjs10(); - var util_utf8_1 = require_dist_cjs11(); - var endpointResolver_1 = require_endpointResolver2(); - var getRuntimeConfig = (config) => ({ - apiVersion: "2011-06-15", - base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, - base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, - disableHostPrefix: config?.disableHostPrefix ?? false, - endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, - extensions: config?.extensions ?? [], - logger: config?.logger ?? new smithy_client_1.NoOpLogger(), - serviceId: config?.serviceId ?? "STS", - urlParser: config?.urlParser ?? url_parser_1.parseUrl, - utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, - utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 - }); - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js -var require_runtimeConfig2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - var package_json_1 = tslib_1.__importDefault(require_package2()); - var defaultStsRoleAssumers_1 = require_defaultStsRoleAssumers(); - var credential_provider_node_1 = require_dist_cjs56(); - var util_user_agent_node_1 = require_dist_cjs46(); - var config_resolver_1 = require_dist_cjs30(); - var hash_node_1 = require_dist_cjs47(); - var middleware_retry_1 = require_dist_cjs41(); - var node_config_provider_1 = require_dist_cjs34(); - var node_http_handler_1 = require_dist_cjs14(); - var util_body_length_node_1 = require_dist_cjs48(); - var util_retry_1 = require_dist_cjs40(); - var runtimeConfig_shared_1 = require_runtimeConfig_shared2(); - var smithy_client_1 = require_dist_cjs16(); - var util_defaults_mode_node_1 = require_dist_cjs49(); - var smithy_client_2 = require_dist_cjs16(); - var getRuntimeConfig = (config) => { - (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); - const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); - const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); - const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); - return { - ...clientSharedValues, - ...config, - runtime: "node", - defaultsMode, - bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, - credentialDefaultProvider: config?.credentialDefaultProvider ?? (0, defaultStsRoleAssumers_1.decorateDefaultCredentialProvider)(credential_provider_node_1.defaultProvider), - defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), - maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), - region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), - requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), - retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ - ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, - default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE - }), - sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), - streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, - useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), - useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) - }; - }; - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js -var require_runtimeExtensions2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs50(); - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var asPartial = (t) => t; - var resolveRuntimeExtensions = (runtimeConfig, extensions) => { - const extensionConfiguration = { - ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) - }; - extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return { - ...runtimeConfig, - ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), - ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) - }; - }; - exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js -var require_STSClient = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.STSClient = exports2.__Client = void 0; - var middleware_host_header_1 = require_dist_cjs4(); - var middleware_logger_1 = require_dist_cjs5(); - var middleware_recursion_detection_1 = require_dist_cjs6(); - var middleware_sdk_sts_1 = require_dist_cjs42(); - var middleware_user_agent_1 = require_dist_cjs28(); - var config_resolver_1 = require_dist_cjs30(); - var middleware_content_length_1 = require_dist_cjs32(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_retry_1 = require_dist_cjs41(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { - return smithy_client_1.Client; - } }); - var EndpointParameters_1 = require_EndpointParameters2(); - var runtimeConfig_1 = require_runtimeConfig2(); - var runtimeExtensions_1 = require_runtimeExtensions2(); - var STSClient = class _STSClient extends smithy_client_1.Client { - constructor(...[configuration]) { - const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); - const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); - const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); - const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); - const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); - const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); - const _config_6 = (0, middleware_sdk_sts_1.resolveStsAuthConfig)(_config_5, { stsClientCtor: _STSClient }); - const _config_7 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_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_retry_1.getRetryPlugin)(this.config)); - this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); - this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); - this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); - this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); - this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); - } - destroy() { - super.destroy(); - } - }; - exports2.STSClient = STSClient; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithSAMLCommand.js -var require_AssumeRoleWithSAMLCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/AssumeRoleWithSAMLCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AssumeRoleWithSAMLCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_0(); - var Aws_query_1 = require_Aws_query(); - var AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AssumeRoleWithSAMLCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "AssumeRoleWithSAMLCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.AssumeRoleWithSAMLRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.AssumeRoleWithSAMLResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "AssumeRoleWithSAML" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_AssumeRoleWithSAMLCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_AssumeRoleWithSAMLCommand)(output, context); - } - }; - exports2.AssumeRoleWithSAMLCommand = AssumeRoleWithSAMLCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/DecodeAuthorizationMessageCommand.js -var require_DecodeAuthorizationMessageCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/DecodeAuthorizationMessageCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DecodeAuthorizationMessageCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_query_1 = require_Aws_query(); - var DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DecodeAuthorizationMessageCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "DecodeAuthorizationMessageCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "DecodeAuthorizationMessage" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_DecodeAuthorizationMessageCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_DecodeAuthorizationMessageCommand)(output, context); - } - }; - exports2.DecodeAuthorizationMessageCommand = DecodeAuthorizationMessageCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetAccessKeyInfoCommand.js -var require_GetAccessKeyInfoCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetAccessKeyInfoCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetAccessKeyInfoCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_query_1 = require_Aws_query(); - var GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetAccessKeyInfoCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "GetAccessKeyInfoCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "GetAccessKeyInfo" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_GetAccessKeyInfoCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_GetAccessKeyInfoCommand)(output, context); - } - }; - exports2.GetAccessKeyInfoCommand = GetAccessKeyInfoCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetCallerIdentityCommand.js -var require_GetCallerIdentityCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetCallerIdentityCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetCallerIdentityCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_query_1 = require_Aws_query(); - var GetCallerIdentityCommand = class _GetCallerIdentityCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetCallerIdentityCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "GetCallerIdentityCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "GetCallerIdentity" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_GetCallerIdentityCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_GetCallerIdentityCommand)(output, context); - } - }; - exports2.GetCallerIdentityCommand = GetCallerIdentityCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetFederationTokenCommand.js -var require_GetFederationTokenCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetFederationTokenCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetFederationTokenCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_0(); - var Aws_query_1 = require_Aws_query(); - var GetFederationTokenCommand = class _GetFederationTokenCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetFederationTokenCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "GetFederationTokenCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.GetFederationTokenResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "GetFederationToken" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_GetFederationTokenCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_GetFederationTokenCommand)(output, context); - } - }; - exports2.GetFederationTokenCommand = GetFederationTokenCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetSessionTokenCommand.js -var require_GetSessionTokenCommand = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/GetSessionTokenCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetSessionTokenCommand = exports2.$Command = void 0; - var middleware_signing_1 = require_dist_cjs25(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_0(); - var Aws_query_1 = require_Aws_query(); - var GetSessionTokenCommand = class _GetSessionTokenCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetSessionTokenCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "STSClient"; - const commandName = "GetSessionTokenCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.GetSessionTokenResponseFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AWSSecurityTokenServiceV20110615", - operation: "GetSessionToken" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_query_1.se_GetSessionTokenCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_query_1.de_GetSessionTokenCommand)(output, context); - } - }; - exports2.GetSessionTokenCommand = GetSessionTokenCommand; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/STS.js -var require_STS = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/STS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.STS = void 0; - var smithy_client_1 = require_dist_cjs16(); - var AssumeRoleCommand_1 = require_AssumeRoleCommand(); - var AssumeRoleWithSAMLCommand_1 = require_AssumeRoleWithSAMLCommand(); - var AssumeRoleWithWebIdentityCommand_1 = require_AssumeRoleWithWebIdentityCommand(); - var DecodeAuthorizationMessageCommand_1 = require_DecodeAuthorizationMessageCommand(); - var GetAccessKeyInfoCommand_1 = require_GetAccessKeyInfoCommand(); - var GetCallerIdentityCommand_1 = require_GetCallerIdentityCommand(); - var GetFederationTokenCommand_1 = require_GetFederationTokenCommand(); - var GetSessionTokenCommand_1 = require_GetSessionTokenCommand(); - var STSClient_1 = require_STSClient(); - var commands = { - AssumeRoleCommand: AssumeRoleCommand_1.AssumeRoleCommand, - AssumeRoleWithSAMLCommand: AssumeRoleWithSAMLCommand_1.AssumeRoleWithSAMLCommand, - AssumeRoleWithWebIdentityCommand: AssumeRoleWithWebIdentityCommand_1.AssumeRoleWithWebIdentityCommand, - DecodeAuthorizationMessageCommand: DecodeAuthorizationMessageCommand_1.DecodeAuthorizationMessageCommand, - GetAccessKeyInfoCommand: GetAccessKeyInfoCommand_1.GetAccessKeyInfoCommand, - GetCallerIdentityCommand: GetCallerIdentityCommand_1.GetCallerIdentityCommand, - GetFederationTokenCommand: GetFederationTokenCommand_1.GetFederationTokenCommand, - GetSessionTokenCommand: GetSessionTokenCommand_1.GetSessionTokenCommand - }; - var STS = class extends STSClient_1.STSClient { - }; - exports2.STS = STS; - (0, smithy_client_1.createAggregatedClient)(commands, STS); - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/commands/index.js -var require_commands2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/commands/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_AssumeRoleCommand(), exports2); - tslib_1.__exportStar(require_AssumeRoleWithSAMLCommand(), exports2); - tslib_1.__exportStar(require_AssumeRoleWithWebIdentityCommand(), exports2); - tslib_1.__exportStar(require_DecodeAuthorizationMessageCommand(), exports2); - tslib_1.__exportStar(require_GetAccessKeyInfoCommand(), exports2); - tslib_1.__exportStar(require_GetCallerIdentityCommand(), exports2); - tslib_1.__exportStar(require_GetFederationTokenCommand(), exports2); - tslib_1.__exportStar(require_GetSessionTokenCommand(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/models/index.js -var require_models2 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/models/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_models_0(), exports2); - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/defaultRoleAssumers.js -var require_defaultRoleAssumers = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/defaultRoleAssumers.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.decorateDefaultCredentialProvider = exports2.getDefaultRoleAssumerWithWebIdentity = exports2.getDefaultRoleAssumer = void 0; - var defaultStsRoleAssumers_1 = require_defaultStsRoleAssumers(); - var STSClient_1 = require_STSClient(); - var getCustomizableStsClientCtor = (baseCtor, customizations) => { - if (!customizations) - return baseCtor; - else - return class CustomizableSTSClient extends baseCtor { - constructor(config) { - super(config); - for (const customization of customizations) { - this.middlewareStack.use(customization); - } - } - }; - }; - var getDefaultRoleAssumer = (stsOptions = {}, stsPlugins) => (0, defaultStsRoleAssumers_1.getDefaultRoleAssumer)(stsOptions, getCustomizableStsClientCtor(STSClient_1.STSClient, stsPlugins)); - exports2.getDefaultRoleAssumer = getDefaultRoleAssumer; - var getDefaultRoleAssumerWithWebIdentity = (stsOptions = {}, stsPlugins) => (0, defaultStsRoleAssumers_1.getDefaultRoleAssumerWithWebIdentity)(stsOptions, getCustomizableStsClientCtor(STSClient_1.STSClient, stsPlugins)); - exports2.getDefaultRoleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity; - var decorateDefaultCredentialProvider = (provider) => (input) => provider({ - roleAssumer: (0, exports2.getDefaultRoleAssumer)(input), - roleAssumerWithWebIdentity: (0, exports2.getDefaultRoleAssumerWithWebIdentity)(input), - ...input - }); - exports2.decorateDefaultCredentialProvider = decorateDefaultCredentialProvider; - } -}); - -// node_modules/@aws-sdk/client-sts/dist-cjs/index.js -var require_dist_cjs57 = __commonJS({ - "node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.STSServiceException = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_STSClient(), exports2); - tslib_1.__exportStar(require_STS(), exports2); - tslib_1.__exportStar(require_commands2(), exports2); - tslib_1.__exportStar(require_models2(), exports2); - tslib_1.__exportStar(require_defaultRoleAssumers(), exports2); - var STSServiceException_1 = require_STSServiceException(); - Object.defineProperty(exports2, "STSServiceException", { enumerable: true, get: function() { - return STSServiceException_1.STSServiceException; - } }); - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/NodeDisableMultiregionAccessPointConfigOptions.js -var require_NodeDisableMultiregionAccessPointConfigOptions = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/NodeDisableMultiregionAccessPointConfigOptions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS = exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME = exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME = void 0; - var util_config_provider_1 = require_dist_cjs29(); - exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME = "AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS"; - exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME = "s3_disable_multiregion_access_points"; - exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => (0, util_config_provider_1.booleanSelector)(env, exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME, util_config_provider_1.SelectorType.ENV), - configFileSelector: (profile) => (0, util_config_provider_1.booleanSelector)(profile, exports2.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME, util_config_provider_1.SelectorType.CONFIG), - default: false - }; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/NodeUseArnRegionConfigOptions.js -var require_NodeUseArnRegionConfigOptions = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/NodeUseArnRegionConfigOptions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NODE_USE_ARN_REGION_CONFIG_OPTIONS = exports2.NODE_USE_ARN_REGION_INI_NAME = exports2.NODE_USE_ARN_REGION_ENV_NAME = void 0; - var util_config_provider_1 = require_dist_cjs29(); - exports2.NODE_USE_ARN_REGION_ENV_NAME = "AWS_S3_USE_ARN_REGION"; - exports2.NODE_USE_ARN_REGION_INI_NAME = "s3_use_arn_region"; - exports2.NODE_USE_ARN_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: (env) => (0, util_config_provider_1.booleanSelector)(env, exports2.NODE_USE_ARN_REGION_ENV_NAME, util_config_provider_1.SelectorType.ENV), - configFileSelector: (profile) => (0, util_config_provider_1.booleanSelector)(profile, exports2.NODE_USE_ARN_REGION_INI_NAME, util_config_provider_1.SelectorType.CONFIG), - default: false - }; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketHostnameUtils.js -var require_bucketHostnameUtils = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketHostnameUtils.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateMrapAlias = exports2.validateNoFIPS = exports2.validateNoDualstack = exports2.getArnResources = exports2.validateCustomEndpoint = exports2.validateDNSHostLabel = exports2.validateAccountId = exports2.validateRegionalClient = exports2.validateRegion = exports2.validatePartition = exports2.validateOutpostService = exports2.validateS3Service = exports2.validateService = exports2.validateArnEndpointOptions = exports2.getSuffixForArnEndpoint = exports2.getSuffix = exports2.isDnsCompatibleBucketName = exports2.isBucketNameOptions = exports2.S3_HOSTNAME_PATTERN = exports2.DOT_PATTERN = void 0; - var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/; - var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/; - var DOTS_PATTERN = /\.\./; - exports2.DOT_PATTERN = /\./; - exports2.S3_HOSTNAME_PATTERN = /^(.+\.)?s3(-fips)?(\.dualstack)?[.-]([a-z0-9-]+)\./; - var S3_US_EAST_1_ALTNAME_PATTERN = /^s3(-external-1)?\.amazonaws\.com$/; - var AWS_PARTITION_SUFFIX = "amazonaws.com"; - var isBucketNameOptions = (options) => typeof options.bucketName === "string"; - exports2.isBucketNameOptions = isBucketNameOptions; - var isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName); - exports2.isDnsCompatibleBucketName = isDnsCompatibleBucketName; - var getRegionalSuffix = (hostname) => { - const parts = hostname.match(exports2.S3_HOSTNAME_PATTERN); - return [parts[4], hostname.replace(new RegExp(`^${parts[0]}`), "")]; - }; - var getSuffix = (hostname) => S3_US_EAST_1_ALTNAME_PATTERN.test(hostname) ? ["us-east-1", AWS_PARTITION_SUFFIX] : getRegionalSuffix(hostname); - exports2.getSuffix = getSuffix; - var getSuffixForArnEndpoint = (hostname) => S3_US_EAST_1_ALTNAME_PATTERN.test(hostname) ? [hostname.replace(`.${AWS_PARTITION_SUFFIX}`, ""), AWS_PARTITION_SUFFIX] : getRegionalSuffix(hostname); - exports2.getSuffixForArnEndpoint = getSuffixForArnEndpoint; - var validateArnEndpointOptions = (options) => { - if (options.pathStyleEndpoint) { - throw new Error("Path-style S3 endpoint is not supported when bucket is an ARN"); - } - if (options.accelerateEndpoint) { - throw new Error("Accelerate endpoint is not supported when bucket is an ARN"); - } - if (!options.tlsCompatible) { - throw new Error("HTTPS is required when bucket is an ARN"); - } - }; - exports2.validateArnEndpointOptions = validateArnEndpointOptions; - var validateService = (service) => { - if (service !== "s3" && service !== "s3-outposts" && service !== "s3-object-lambda") { - throw new Error("Expect 's3' or 's3-outposts' or 's3-object-lambda' in ARN service component"); - } - }; - exports2.validateService = validateService; - var validateS3Service = (service) => { - if (service !== "s3") { - throw new Error("Expect 's3' in Accesspoint ARN service component"); - } - }; - exports2.validateS3Service = validateS3Service; - var validateOutpostService = (service) => { - if (service !== "s3-outposts") { - throw new Error("Expect 's3-posts' in Outpost ARN service component"); - } - }; - exports2.validateOutpostService = validateOutpostService; - var validatePartition = (partition, options) => { - if (partition !== options.clientPartition) { - throw new Error(`Partition in ARN is incompatible, got "${partition}" but expected "${options.clientPartition}"`); - } - }; - exports2.validatePartition = validatePartition; - var validateRegion = (region, options) => { - if (region === "") { - throw new Error("ARN region is empty"); - } - if (options.useFipsEndpoint) { - if (!options.allowFipsRegion) { - throw new Error("FIPS region is not supported"); - } else if (!isEqualRegions(region, options.clientRegion)) { - throw new Error(`Client FIPS region ${options.clientRegion} doesn't match region ${region} in ARN`); - } - } - if (!options.useArnRegion && !isEqualRegions(region, options.clientRegion || "") && !isEqualRegions(region, options.clientSigningRegion || "")) { - throw new Error(`Region in ARN is incompatible, got ${region} but expected ${options.clientRegion}`); - } - }; - exports2.validateRegion = validateRegion; - var validateRegionalClient = (region) => { - if (["s3-external-1", "aws-global"].includes(region)) { - throw new Error(`Client region ${region} is not regional`); - } - }; - exports2.validateRegionalClient = validateRegionalClient; - var isEqualRegions = (regionA, regionB) => regionA === regionB; - var validateAccountId = (accountId) => { - if (!/[0-9]{12}/.exec(accountId)) { - throw new Error("Access point ARN accountID does not match regex '[0-9]{12}'"); - } - }; - exports2.validateAccountId = validateAccountId; - var validateDNSHostLabel = (label, options = { tlsCompatible: true }) => { - if (label.length >= 64 || !/^[a-z0-9][a-z0-9.-]*[a-z0-9]$/.test(label) || /(\d+\.){3}\d+/.test(label) || /[.-]{2}/.test(label) || (options === null || options === void 0 ? void 0 : options.tlsCompatible) && exports2.DOT_PATTERN.test(label)) { - throw new Error(`Invalid DNS label ${label}`); - } - }; - exports2.validateDNSHostLabel = validateDNSHostLabel; - var validateCustomEndpoint = (options) => { - if (options.isCustomEndpoint) { - if (options.dualstackEndpoint) - throw new Error("Dualstack endpoint is not supported with custom endpoint"); - if (options.accelerateEndpoint) - throw new Error("Accelerate endpoint is not supported with custom endpoint"); - } - }; - exports2.validateCustomEndpoint = validateCustomEndpoint; - var getArnResources = (resource) => { - const delimiter = resource.includes(":") ? ":" : "/"; - const [resourceType, ...rest] = resource.split(delimiter); - if (resourceType === "accesspoint") { - if (rest.length !== 1 || rest[0] === "") { - throw new Error(`Access Point ARN should have one resource accesspoint${delimiter}{accesspointname}`); - } - return { accesspointName: rest[0] }; - } else if (resourceType === "outpost") { - if (!rest[0] || rest[1] !== "accesspoint" || !rest[2] || rest.length !== 3) { - throw new Error(`Outpost ARN should have resource outpost${delimiter}{outpostId}${delimiter}accesspoint${delimiter}{accesspointName}`); - } - const [outpostId, _, accesspointName] = rest; - return { outpostId, accesspointName }; - } else { - throw new Error(`ARN resource should begin with 'accesspoint${delimiter}' or 'outpost${delimiter}'`); - } - }; - exports2.getArnResources = getArnResources; - var validateNoDualstack = (dualstackEndpoint) => { - if (dualstackEndpoint) - throw new Error("Dualstack endpoint is not supported with Outpost or Multi-region Access Point ARN."); - }; - exports2.validateNoDualstack = validateNoDualstack; - var validateNoFIPS = (useFipsEndpoint) => { - if (useFipsEndpoint) - throw new Error(`FIPS region is not supported with Outpost.`); - }; - exports2.validateNoFIPS = validateNoFIPS; - var validateMrapAlias = (name) => { - try { - name.split(".").forEach((label) => { - (0, exports2.validateDNSHostLabel)(label); - }); - } catch (e) { - throw new Error(`"${name}" is not a DNS compatible name.`); - } - }; - exports2.validateMrapAlias = validateMrapAlias; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketHostname.js -var require_bucketHostname = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketHostname.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bucketHostname = void 0; - var bucketHostnameUtils_1 = require_bucketHostnameUtils(); - var bucketHostname = (options) => { - (0, bucketHostnameUtils_1.validateCustomEndpoint)(options); - return (0, bucketHostnameUtils_1.isBucketNameOptions)(options) ? getEndpointFromBucketName(options) : getEndpointFromArn(options); - }; - exports2.bucketHostname = bucketHostname; - var getEndpointFromBucketName = ({ accelerateEndpoint = false, clientRegion: region, baseHostname, bucketName, dualstackEndpoint = false, fipsEndpoint = false, pathStyleEndpoint = false, tlsCompatible = true, isCustomEndpoint = false }) => { - const [clientRegion, hostnameSuffix] = isCustomEndpoint ? [region, baseHostname] : (0, bucketHostnameUtils_1.getSuffix)(baseHostname); - if (pathStyleEndpoint || !(0, bucketHostnameUtils_1.isDnsCompatibleBucketName)(bucketName) || tlsCompatible && bucketHostnameUtils_1.DOT_PATTERN.test(bucketName)) { - return { - bucketEndpoint: false, - hostname: dualstackEndpoint ? `s3.dualstack.${clientRegion}.${hostnameSuffix}` : baseHostname - }; - } - if (accelerateEndpoint) { - baseHostname = `s3-accelerate${dualstackEndpoint ? ".dualstack" : ""}.${hostnameSuffix}`; - } else if (dualstackEndpoint) { - baseHostname = `s3.dualstack.${clientRegion}.${hostnameSuffix}`; - } - return { - bucketEndpoint: true, - hostname: `${bucketName}.${baseHostname}` - }; - }; - var getEndpointFromArn = (options) => { - const { isCustomEndpoint, baseHostname, clientRegion } = options; - const hostnameSuffix = isCustomEndpoint ? baseHostname : (0, bucketHostnameUtils_1.getSuffixForArnEndpoint)(baseHostname)[1]; - const { pathStyleEndpoint, accelerateEndpoint = false, fipsEndpoint = false, tlsCompatible = true, bucketName, clientPartition = "aws" } = options; - (0, bucketHostnameUtils_1.validateArnEndpointOptions)({ pathStyleEndpoint, accelerateEndpoint, tlsCompatible }); - const { service, partition, accountId, region, resource } = bucketName; - (0, bucketHostnameUtils_1.validateService)(service); - (0, bucketHostnameUtils_1.validatePartition)(partition, { clientPartition }); - (0, bucketHostnameUtils_1.validateAccountId)(accountId); - const { accesspointName, outpostId } = (0, bucketHostnameUtils_1.getArnResources)(resource); - if (service === "s3-object-lambda") { - return getEndpointFromObjectLambdaArn({ ...options, tlsCompatible, bucketName, accesspointName, hostnameSuffix }); - } - if (region === "") { - return getEndpointFromMRAPArn({ ...options, clientRegion, mrapAlias: accesspointName, hostnameSuffix }); - } - if (outpostId) { - return getEndpointFromOutpostArn({ ...options, clientRegion, outpostId, accesspointName, hostnameSuffix }); - } - return getEndpointFromAccessPointArn({ ...options, clientRegion, accesspointName, hostnameSuffix }); - }; - var getEndpointFromObjectLambdaArn = ({ dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, useArnRegion, clientRegion, clientSigningRegion = clientRegion, accesspointName, bucketName, hostnameSuffix }) => { - const { accountId, region, service } = bucketName; - (0, bucketHostnameUtils_1.validateRegionalClient)(clientRegion); - (0, bucketHostnameUtils_1.validateRegion)(region, { - useArnRegion, - clientRegion, - clientSigningRegion, - allowFipsRegion: true, - useFipsEndpoint: fipsEndpoint - }); - (0, bucketHostnameUtils_1.validateNoDualstack)(dualstackEndpoint); - const DNSHostLabel = `${accesspointName}-${accountId}`; - (0, bucketHostnameUtils_1.validateDNSHostLabel)(DNSHostLabel, { tlsCompatible }); - const endpointRegion = useArnRegion ? region : clientRegion; - const signingRegion = useArnRegion ? region : clientSigningRegion; - return { - bucketEndpoint: true, - hostname: `${DNSHostLabel}.${service}${fipsEndpoint ? "-fips" : ""}.${endpointRegion}.${hostnameSuffix}`, - signingRegion, - signingService: service - }; - }; - var getEndpointFromMRAPArn = ({ disableMultiregionAccessPoints, dualstackEndpoint = false, isCustomEndpoint, mrapAlias, hostnameSuffix }) => { - if (disableMultiregionAccessPoints === true) { - throw new Error("SDK is attempting to use a MRAP ARN. Please enable to feature."); - } - (0, bucketHostnameUtils_1.validateMrapAlias)(mrapAlias); - (0, bucketHostnameUtils_1.validateNoDualstack)(dualstackEndpoint); - return { - bucketEndpoint: true, - hostname: `${mrapAlias}${isCustomEndpoint ? "" : `.accesspoint.s3-global`}.${hostnameSuffix}`, - signingRegion: "*" - }; - }; - var getEndpointFromOutpostArn = ({ useArnRegion, clientRegion, clientSigningRegion = clientRegion, bucketName, outpostId, dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, accesspointName, isCustomEndpoint, hostnameSuffix }) => { - (0, bucketHostnameUtils_1.validateRegionalClient)(clientRegion); - (0, bucketHostnameUtils_1.validateRegion)(bucketName.region, { useArnRegion, clientRegion, clientSigningRegion, useFipsEndpoint: fipsEndpoint }); - const DNSHostLabel = `${accesspointName}-${bucketName.accountId}`; - (0, bucketHostnameUtils_1.validateDNSHostLabel)(DNSHostLabel, { tlsCompatible }); - const endpointRegion = useArnRegion ? bucketName.region : clientRegion; - const signingRegion = useArnRegion ? bucketName.region : clientSigningRegion; - (0, bucketHostnameUtils_1.validateOutpostService)(bucketName.service); - (0, bucketHostnameUtils_1.validateDNSHostLabel)(outpostId, { tlsCompatible }); - (0, bucketHostnameUtils_1.validateNoDualstack)(dualstackEndpoint); - (0, bucketHostnameUtils_1.validateNoFIPS)(fipsEndpoint); - const hostnamePrefix = `${DNSHostLabel}.${outpostId}`; - return { - bucketEndpoint: true, - hostname: `${hostnamePrefix}${isCustomEndpoint ? "" : `.s3-outposts.${endpointRegion}`}.${hostnameSuffix}`, - signingRegion, - signingService: "s3-outposts" - }; - }; - var getEndpointFromAccessPointArn = ({ useArnRegion, clientRegion, clientSigningRegion = clientRegion, bucketName, dualstackEndpoint = false, fipsEndpoint = false, tlsCompatible = true, accesspointName, isCustomEndpoint, hostnameSuffix }) => { - (0, bucketHostnameUtils_1.validateRegionalClient)(clientRegion); - (0, bucketHostnameUtils_1.validateRegion)(bucketName.region, { - useArnRegion, - clientRegion, - clientSigningRegion, - allowFipsRegion: true, - useFipsEndpoint: fipsEndpoint - }); - const hostnamePrefix = `${accesspointName}-${bucketName.accountId}`; - (0, bucketHostnameUtils_1.validateDNSHostLabel)(hostnamePrefix, { tlsCompatible }); - const endpointRegion = useArnRegion ? bucketName.region : clientRegion; - const signingRegion = useArnRegion ? bucketName.region : clientSigningRegion; - (0, bucketHostnameUtils_1.validateS3Service)(bucketName.service); - return { - bucketEndpoint: true, - hostname: `${hostnamePrefix}${isCustomEndpoint ? "" : `.s3-accesspoint${fipsEndpoint ? "-fips" : ""}${dualstackEndpoint ? ".dualstack" : ""}.${endpointRegion}`}.${hostnameSuffix}`, - signingRegion - }; - }; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketEndpointMiddleware.js -var require_bucketEndpointMiddleware = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/bucketEndpointMiddleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getBucketEndpointPlugin = exports2.bucketEndpointMiddlewareOptions = exports2.bucketEndpointMiddleware = void 0; - var util_arn_parser_1 = require_dist_cjs17(); - var protocol_http_1 = require_dist_cjs2(); - var bucketHostname_1 = require_bucketHostname(); - var bucketEndpointMiddleware = (options) => (next, context) => async (args) => { - const { Bucket: bucketName } = args.input; - let replaceBucketInPath = options.bucketEndpoint; - const request = args.request; - if (protocol_http_1.HttpRequest.isInstance(request)) { - if (options.bucketEndpoint) { - request.hostname = bucketName; - } else if ((0, util_arn_parser_1.validate)(bucketName)) { - const bucketArn = (0, util_arn_parser_1.parse)(bucketName); - const clientRegion = await options.region(); - const useDualstackEndpoint = await options.useDualstackEndpoint(); - const useFipsEndpoint = await options.useFipsEndpoint(); - const { partition, signingRegion = clientRegion } = await options.regionInfoProvider(clientRegion, { useDualstackEndpoint, useFipsEndpoint }) || {}; - const useArnRegion = await options.useArnRegion(); - const { hostname, bucketEndpoint, signingRegion: modifiedSigningRegion, signingService } = (0, bucketHostname_1.bucketHostname)({ - bucketName: bucketArn, - baseHostname: request.hostname, - accelerateEndpoint: options.useAccelerateEndpoint, - dualstackEndpoint: useDualstackEndpoint, - fipsEndpoint: useFipsEndpoint, - pathStyleEndpoint: options.forcePathStyle, - tlsCompatible: request.protocol === "https:", - useArnRegion, - clientPartition: partition, - clientSigningRegion: signingRegion, - clientRegion, - isCustomEndpoint: options.isCustomEndpoint, - disableMultiregionAccessPoints: await options.disableMultiregionAccessPoints() - }); - if (modifiedSigningRegion && modifiedSigningRegion !== signingRegion) { - context["signing_region"] = modifiedSigningRegion; - } - if (signingService && signingService !== "s3") { - context["signing_service"] = signingService; - } - request.hostname = hostname; - replaceBucketInPath = bucketEndpoint; - } else { - const clientRegion = await options.region(); - const dualstackEndpoint = await options.useDualstackEndpoint(); - const fipsEndpoint = await options.useFipsEndpoint(); - const { hostname, bucketEndpoint } = (0, bucketHostname_1.bucketHostname)({ - bucketName, - clientRegion, - baseHostname: request.hostname, - accelerateEndpoint: options.useAccelerateEndpoint, - dualstackEndpoint, - fipsEndpoint, - pathStyleEndpoint: options.forcePathStyle, - tlsCompatible: request.protocol === "https:", - isCustomEndpoint: options.isCustomEndpoint - }); - request.hostname = hostname; - replaceBucketInPath = bucketEndpoint; - } - if (replaceBucketInPath) { - request.path = request.path.replace(/^(\/)?[^\/]+/, ""); - if (request.path === "") { - request.path = "/"; - } - } - } - return next({ ...args, request }); - }; - exports2.bucketEndpointMiddleware = bucketEndpointMiddleware; - exports2.bucketEndpointMiddlewareOptions = { - tags: ["BUCKET_ENDPOINT"], - name: "bucketEndpointMiddleware", - relation: "before", - toMiddleware: "hostHeaderMiddleware", - override: true - }; - var getBucketEndpointPlugin = (options) => ({ - applyToStack: (clientStack) => { - clientStack.addRelativeTo((0, exports2.bucketEndpointMiddleware)(options), exports2.bucketEndpointMiddlewareOptions); - } - }); - exports2.getBucketEndpointPlugin = getBucketEndpointPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/configurations.js -var require_configurations2 = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/configurations.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveBucketEndpointConfig = void 0; - function resolveBucketEndpointConfig(input) { - const { bucketEndpoint = false, forcePathStyle = false, useAccelerateEndpoint = false, useArnRegion = false, disableMultiregionAccessPoints = false } = input; - return { - ...input, - bucketEndpoint, - forcePathStyle, - useAccelerateEndpoint, - useArnRegion: typeof useArnRegion === "function" ? useArnRegion : () => Promise.resolve(useArnRegion), - disableMultiregionAccessPoints: typeof disableMultiregionAccessPoints === "function" ? disableMultiregionAccessPoints : () => Promise.resolve(disableMultiregionAccessPoints) - }; - } - exports2.resolveBucketEndpointConfig = resolveBucketEndpointConfig; - } -}); - -// node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/index.js -var require_dist_cjs58 = __commonJS({ - "node_modules/@aws-sdk/middleware-bucket-endpoint/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateNoFIPS = exports2.validateNoDualstack = exports2.validateDNSHostLabel = exports2.validateRegion = exports2.validateAccountId = exports2.validatePartition = exports2.validateOutpostService = exports2.getSuffixForArnEndpoint = exports2.getArnResources = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_NodeDisableMultiregionAccessPointConfigOptions(), exports2); - tslib_1.__exportStar(require_NodeUseArnRegionConfigOptions(), exports2); - tslib_1.__exportStar(require_bucketEndpointMiddleware(), exports2); - tslib_1.__exportStar(require_bucketHostname(), exports2); - tslib_1.__exportStar(require_configurations2(), exports2); - var bucketHostnameUtils_1 = require_bucketHostnameUtils(); - Object.defineProperty(exports2, "getArnResources", { enumerable: true, get: function() { - return bucketHostnameUtils_1.getArnResources; - } }); - Object.defineProperty(exports2, "getSuffixForArnEndpoint", { enumerable: true, get: function() { - return bucketHostnameUtils_1.getSuffixForArnEndpoint; - } }); - Object.defineProperty(exports2, "validateOutpostService", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateOutpostService; - } }); - Object.defineProperty(exports2, "validatePartition", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validatePartition; - } }); - Object.defineProperty(exports2, "validateAccountId", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateAccountId; - } }); - Object.defineProperty(exports2, "validateRegion", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateRegion; - } }); - Object.defineProperty(exports2, "validateDNSHostLabel", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateDNSHostLabel; - } }); - Object.defineProperty(exports2, "validateNoDualstack", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateNoDualstack; - } }); - Object.defineProperty(exports2, "validateNoFIPS", { enumerable: true, get: function() { - return bucketHostnameUtils_1.validateNoFIPS; - } }); - } -}); - -// node_modules/@smithy/eventstream-serde-universal/dist-cjs/index.js -var require_dist_cjs59 = __commonJS({ - "node_modules/@smithy/eventstream-serde-universal/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - EventStreamMarshaller: () => EventStreamMarshaller, - eventStreamSerdeProvider: () => eventStreamSerdeProvider - }); - module2.exports = __toCommonJS2(src_exports); - var import_eventstream_codec = require_dist_cjs22(); - function getChunkedStream(source) { - let currentMessageTotalLength = 0; - let currentMessagePendingLength = 0; - let currentMessage = null; - let messageLengthBuffer = null; - const allocateMessage = /* @__PURE__ */ __name((size) => { - if (typeof size !== "number") { - throw new Error("Attempted to allocate an event message where size was not a number: " + size); - } - currentMessageTotalLength = size; - currentMessagePendingLength = 4; - currentMessage = new Uint8Array(size); - const currentMessageView = new DataView(currentMessage.buffer); - currentMessageView.setUint32(0, size, false); - }, "allocateMessage"); - const iterator = /* @__PURE__ */ __name(async function* () { - const sourceIterator = source[Symbol.asyncIterator](); - while (true) { - const { value, done } = await sourceIterator.next(); - if (done) { - if (!currentMessageTotalLength) { - return; - } else if (currentMessageTotalLength === currentMessagePendingLength) { - yield currentMessage; - } else { - throw new Error("Truncated event message received."); - } - return; - } - const chunkLength = value.length; - let currentOffset = 0; - while (currentOffset < chunkLength) { - if (!currentMessage) { - const bytesRemaining = chunkLength - currentOffset; - if (!messageLengthBuffer) { - messageLengthBuffer = new Uint8Array(4); - } - const numBytesForTotal = Math.min( - 4 - currentMessagePendingLength, - // remaining bytes to fill the messageLengthBuffer - bytesRemaining - // bytes left in chunk - ); - messageLengthBuffer.set( - // @ts-ignore error TS2532: Object is possibly 'undefined' for value - value.slice(currentOffset, currentOffset + numBytesForTotal), - currentMessagePendingLength - ); - currentMessagePendingLength += numBytesForTotal; - currentOffset += numBytesForTotal; - if (currentMessagePendingLength < 4) { - break; - } - allocateMessage(new DataView(messageLengthBuffer.buffer).getUint32(0, false)); - messageLengthBuffer = null; - } - const numBytesToWrite = Math.min( - currentMessageTotalLength - currentMessagePendingLength, - // number of bytes left to complete message - chunkLength - currentOffset - // number of bytes left in the original chunk - ); - currentMessage.set( - // @ts-ignore error TS2532: Object is possibly 'undefined' for value - value.slice(currentOffset, currentOffset + numBytesToWrite), - currentMessagePendingLength - ); - currentMessagePendingLength += numBytesToWrite; - currentOffset += numBytesToWrite; - if (currentMessageTotalLength && currentMessageTotalLength === currentMessagePendingLength) { - yield currentMessage; - currentMessage = null; - currentMessageTotalLength = 0; - currentMessagePendingLength = 0; - } - } - } - }, "iterator"); - return { - [Symbol.asyncIterator]: iterator - }; - } - __name(getChunkedStream, "getChunkedStream"); - function getMessageUnmarshaller(deserializer, toUtf8) { - return async function(message) { - const { value: messageType } = message.headers[":message-type"]; - if (messageType === "error") { - const unmodeledError = new Error(message.headers[":error-message"].value || "UnknownError"); - unmodeledError.name = message.headers[":error-code"].value; - throw unmodeledError; - } else if (messageType === "exception") { - const code = message.headers[":exception-type"].value; - const exception = { [code]: message }; - const deserializedException = await deserializer(exception); - if (deserializedException.$unknown) { - const error = new Error(toUtf8(message.body)); - error.name = code; - throw error; - } - throw deserializedException[code]; - } else if (messageType === "event") { - const event = { - [message.headers[":event-type"].value]: message - }; - const deserialized = await deserializer(event); - if (deserialized.$unknown) - return; - return deserialized; - } else { - throw Error(`Unrecognizable event type: ${message.headers[":event-type"].value}`); - } - }; - } - __name(getMessageUnmarshaller, "getMessageUnmarshaller"); - var _EventStreamMarshaller = class _EventStreamMarshaller { - constructor({ utf8Encoder, utf8Decoder }) { - this.eventStreamCodec = new import_eventstream_codec.EventStreamCodec(utf8Encoder, utf8Decoder); - this.utfEncoder = utf8Encoder; - } - deserialize(body, deserializer) { - const inputStream = getChunkedStream(body); - return new import_eventstream_codec.SmithyMessageDecoderStream({ - messageStream: new import_eventstream_codec.MessageDecoderStream({ inputStream, decoder: this.eventStreamCodec }), - // @ts-expect-error Type 'T' is not assignable to type 'Record' - deserializer: getMessageUnmarshaller(deserializer, this.utfEncoder) - }); - } - serialize(inputStream, serializer) { - return new import_eventstream_codec.MessageEncoderStream({ - messageStream: new import_eventstream_codec.SmithyMessageEncoderStream({ inputStream, serializer }), - encoder: this.eventStreamCodec, - includeEndFrame: true - }); - } - }; - __name(_EventStreamMarshaller, "EventStreamMarshaller"); - var EventStreamMarshaller = _EventStreamMarshaller; - var eventStreamSerdeProvider = /* @__PURE__ */ __name((options) => new EventStreamMarshaller(options), "eventStreamSerdeProvider"); - } -}); - -// node_modules/@smithy/eventstream-serde-node/dist-cjs/index.js -var require_dist_cjs60 = __commonJS({ - "node_modules/@smithy/eventstream-serde-node/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - EventStreamMarshaller: () => EventStreamMarshaller, - eventStreamSerdeProvider: () => eventStreamSerdeProvider - }); - module2.exports = __toCommonJS2(src_exports); - var import_eventstream_serde_universal = require_dist_cjs59(); - var import_stream = require("stream"); - async function* readabletoIterable(readStream) { - let streamEnded = false; - let generationEnded = false; - const records = new Array(); - readStream.on("error", (err) => { - if (!streamEnded) { - streamEnded = true; - } - if (err) { - throw err; - } - }); - readStream.on("data", (data) => { - records.push(data); - }); - readStream.on("end", () => { - streamEnded = true; - }); - while (!generationEnded) { - const value = await new Promise((resolve) => setTimeout(() => resolve(records.shift()), 0)); - if (value) { - yield value; - } - generationEnded = streamEnded && records.length === 0; - } - } - __name(readabletoIterable, "readabletoIterable"); - var _EventStreamMarshaller = class _EventStreamMarshaller { - constructor({ utf8Encoder, utf8Decoder }) { - this.universalMarshaller = new import_eventstream_serde_universal.EventStreamMarshaller({ - utf8Decoder, - utf8Encoder - }); - } - deserialize(body, deserializer) { - const bodyIterable = typeof body[Symbol.asyncIterator] === "function" ? body : readabletoIterable(body); - return this.universalMarshaller.deserialize(bodyIterable, deserializer); - } - serialize(input, serializer) { - return import_stream.Readable.from(this.universalMarshaller.serialize(input, serializer)); - } - }; - __name(_EventStreamMarshaller, "EventStreamMarshaller"); - var EventStreamMarshaller = _EventStreamMarshaller; - var eventStreamSerdeProvider = /* @__PURE__ */ __name((options) => new EventStreamMarshaller(options), "eventStreamSerdeProvider"); - } -}); - -// node_modules/@smithy/hash-stream-node/dist-cjs/index.js -var require_dist_cjs61 = __commonJS({ - "node_modules/@smithy/hash-stream-node/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - fileStreamHasher: () => fileStreamHasher, - readableStreamHasher: () => readableStreamHasher - }); - module2.exports = __toCommonJS2(src_exports); - var import_fs = require("fs"); - var import_util_utf8 = require_dist_cjs11(); - var import_stream = require("stream"); - var _HashCalculator = class _HashCalculator extends import_stream.Writable { - constructor(hash, options) { - super(options); - this.hash = hash; - } - _write(chunk, encoding, callback) { - try { - this.hash.update((0, import_util_utf8.toUint8Array)(chunk)); - } catch (err) { - return callback(err); - } - callback(); - } - }; - __name(_HashCalculator, "HashCalculator"); - var HashCalculator = _HashCalculator; - var fileStreamHasher = /* @__PURE__ */ __name((hashCtor, fileStream) => new Promise((resolve, reject) => { - if (!isReadStream(fileStream)) { - reject(new Error("Unable to calculate hash for non-file streams.")); - return; - } - const fileStreamTee = (0, import_fs.createReadStream)(fileStream.path, { - start: fileStream.start, - end: fileStream.end - }); - const hash = new hashCtor(); - const hashCalculator = new HashCalculator(hash); - fileStreamTee.pipe(hashCalculator); - fileStreamTee.on("error", (err) => { - hashCalculator.end(); - reject(err); - }); - hashCalculator.on("error", reject); - hashCalculator.on("finish", function() { - hash.digest().then(resolve).catch(reject); - }); - }), "fileStreamHasher"); - var isReadStream = /* @__PURE__ */ __name((stream) => typeof stream.path === "string", "isReadStream"); - var readableStreamHasher = /* @__PURE__ */ __name((hashCtor, readableStream) => { - if (readableStream.readableFlowing !== null) { - throw new Error("Unable to calculate hash for flowing readable stream"); - } - const hash = new hashCtor(); - const hashCalculator = new HashCalculator(hash); - readableStream.pipe(hashCalculator); - return new Promise((resolve, reject) => { - readableStream.on("error", (err) => { - hashCalculator.end(); - reject(err); - }); - hashCalculator.on("error", reject); - hashCalculator.on("finish", () => { - hash.digest().then(resolve).catch(reject); - }); - }); - }, "readableStreamHasher"); - } -}); - -// node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/signature-v4-crt-container.js -var require_signature_v4_crt_container = __commonJS({ - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/signature-v4-crt-container.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.signatureV4CrtContainer = void 0; - exports2.signatureV4CrtContainer = { - CrtSignerV4: null - }; - } -}); - -// node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/load-crt.js -var require_load_crt = __commonJS({ - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/load-crt.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.loadCrt = void 0; - var signature_v4_crt_container_1 = require_signature_v4_crt_container(); - function loadCrt() { - if (signature_v4_crt_container_1.signatureV4CrtContainer.CrtSignerV4) { - return; - } - try { - if (typeof require === "function") { - const __require = require; - const moduleName = "@aws-sdk/signature-v4-crt"; - __require.call(null, moduleName); - process.emitWarning(`The package @aws-sdk/signature-v4-crt has been loaded dynamically. -To avoid this warning, please explicitly import the package in your application with: - -import "@aws-sdk/signature-v4-crt"; // ESM -require("@aws-sdk/signature-v4-crt"); // CJS - -In a future version of the AWS SDK for JavaScript (v3), this warning -will become an error and dynamic loading will not be available. - -See https://github.com/aws/aws-sdk-js-v3/issues/5229. -`); - } - } catch (e) { - } - } - exports2.loadCrt = loadCrt; - } -}); - -// node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/SignatureV4MultiRegion.js -var require_SignatureV4MultiRegion = __commonJS({ - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/SignatureV4MultiRegion.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SignatureV4MultiRegion = void 0; - var signature_v4_1 = require_dist_cjs24(); - var load_crt_1 = require_load_crt(); - var signature_v4_crt_container_1 = require_signature_v4_crt_container(); - var SignatureV4MultiRegion = class { - constructor(options) { - this.sigv4Signer = new signature_v4_1.SignatureV4(options); - this.signerOptions = options; - } - async sign(requestToSign, options = {}) { - if (options.signingRegion === "*") { - if (this.signerOptions.runtime !== "node") - throw new Error("This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js"); - return this.getSigv4aSigner().sign(requestToSign, options); - } - return this.sigv4Signer.sign(requestToSign, options); - } - async presign(originalRequest, options = {}) { - if (options.signingRegion === "*") { - if (this.signerOptions.runtime !== "node") - throw new Error("This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js"); - return this.getSigv4aSigner().presign(originalRequest, options); - } - return this.sigv4Signer.presign(originalRequest, options); - } - getSigv4aSigner() { - if (!this.sigv4aSigner) { - let CrtSignerV4 = null; - try { - (0, load_crt_1.loadCrt)(); - CrtSignerV4 = signature_v4_crt_container_1.signatureV4CrtContainer.CrtSignerV4; - if (typeof CrtSignerV4 !== "function") - throw new Error(); - } catch (e) { - e.message = `${e.message} -Please check if you have installed "@aws-sdk/signature-v4-crt" package explicitly. -For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`; - throw e; - } - this.sigv4aSigner = new CrtSignerV4({ - ...this.signerOptions, - signingAlgorithm: 1 - }); - } - return this.sigv4aSigner; - } - }; - exports2.SignatureV4MultiRegion = SignatureV4MultiRegion; - } -}); - -// node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js -var require_dist_cjs62 = __commonJS({ - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_SignatureV4MultiRegion(), exports2); - tslib_1.__exportStar(require_signature_v4_crt_container(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/ruleset.js -var require_ruleset3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/ruleset.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ruleSet = void 0; - var bJ = "required"; - var bK = "type"; - var bL = "conditions"; - var bM = "fn"; - var bN = "argv"; - var bO = "ref"; - var bP = "assign"; - var bQ = "url"; - var bR = "properties"; - var bS = "authSchemes"; - var bT = "disableDoubleEncoding"; - var bU = "signingName"; - var bV = "signingRegion"; - var bW = "headers"; - var a = false; - var b = true; - var c = "isSet"; - var d = "tree"; - var e = "booleanEquals"; - var f = "error"; - var g = "aws.partition"; - var h = "stringEquals"; - var i = "getAttr"; - var j = "name"; - var k = "substring"; - var l = "hardwareType"; - var m = "regionPrefix"; - var n = "bucketAliasSuffix"; - var o = "outpostId"; - var p = "isValidHostLabel"; - var q = "not"; - var r = "parseURL"; - var s = "s3-outposts"; - var t = "endpoint"; - var u = "aws.isVirtualHostableS3Bucket"; - var v = "s3"; - var w = "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}"; - var x = "{url#scheme}://{Bucket}.{url#authority}{url#path}"; - var y = "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}"; - var z = "https://{Bucket}.s3.{partitionResult#dnsSuffix}"; - var A = "aws.parseArn"; - var B = "bucketArn"; - var C = "arnType"; - var D = ""; - var E = "s3-object-lambda"; - var F = "accesspoint"; - var G = "accessPointName"; - var H = "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}"; - var I = "mrapPartition"; - var J = "outpostType"; - var K = "arnPrefix"; - var L = "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}"; - var M = "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}"; - var N = "{url#scheme}://{url#authority}{url#path}"; - var O = "https://s3.{partitionResult#dnsSuffix}"; - var P = { [bJ]: false, [bK]: "String" }; - var Q = { [bJ]: true, "default": false, [bK]: "Boolean" }; - var R = { [bJ]: false, [bK]: "Boolean" }; - var S = { [bM]: e, [bN]: [{ [bO]: "Accelerate" }, true] }; - var T = { [bM]: e, [bN]: [{ [bO]: "UseFIPS" }, true] }; - var U = { [bM]: e, [bN]: [{ [bO]: "UseDualStack" }, true] }; - var V = { [bM]: c, [bN]: [{ [bO]: "Endpoint" }] }; - var W = { [bM]: g, [bN]: [{ [bO]: "Region" }], [bP]: "partitionResult" }; - var X = { [bM]: h, [bN]: [{ [bM]: i, [bN]: [{ [bO]: "partitionResult" }, j] }, "aws-cn"] }; - var Y = { [bM]: c, [bN]: [{ [bO]: "Bucket" }] }; - var Z = { [bO]: "Bucket" }; - var aa = { [bO]: l }; - var ab = { [bL]: [{ [bM]: q, [bN]: [V] }], [f]: "Expected a endpoint to be specified but no endpoint was found", [bK]: f }; - var ac = { [bM]: q, [bN]: [V] }; - var ad = { [bM]: r, [bN]: [{ [bO]: "Endpoint" }], [bP]: "url" }; - var ae = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: s, [bV]: "{Region}" }] }; - var af = {}; - var ag = { [bM]: e, [bN]: [{ [bO]: "ForcePathStyle" }, false] }; - var ah = { [bO]: "ForcePathStyle" }; - var ai = { [bM]: e, [bN]: [{ [bO]: "Accelerate" }, false] }; - var aj = { [bM]: h, [bN]: [{ [bO]: "Region" }, "aws-global"] }; - var ak = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: v, [bV]: "us-east-1" }] }; - var al = { [bM]: q, [bN]: [aj] }; - var am = { [bM]: e, [bN]: [{ [bO]: "UseGlobalEndpoint" }, true] }; - var an = { [bQ]: "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: v, [bV]: "{Region}" }] }, [bW]: {} }; - var ao = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: v, [bV]: "{Region}" }] }; - var ap = { [bM]: e, [bN]: [{ [bO]: "UseGlobalEndpoint" }, false] }; - var aq = { [bM]: e, [bN]: [{ [bO]: "UseDualStack" }, false] }; - var ar = { [bQ]: "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var as = { [bM]: e, [bN]: [{ [bO]: "UseFIPS" }, false] }; - var at = { [bQ]: "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var au = { [bQ]: "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var av = { [bM]: e, [bN]: [{ [bM]: i, [bN]: [{ [bO]: "url" }, "isIp"] }, true] }; - var aw = { [bO]: "url" }; - var ax = { [bM]: e, [bN]: [{ [bM]: i, [bN]: [aw, "isIp"] }, false] }; - var ay = { [bQ]: w, [bR]: ao, [bW]: {} }; - var az = { [bQ]: x, [bR]: ao, [bW]: {} }; - var aA = { [t]: az, [bK]: t }; - var aB = { [bQ]: y, [bR]: ao, [bW]: {} }; - var aC = { [bQ]: "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var aD = { [f]: "Invalid region: region was not a valid DNS name.", [bK]: f }; - var aE = { [bO]: B }; - var aF = { [bO]: C }; - var aG = { [bM]: i, [bN]: [aE, "service"] }; - var aH = { [bO]: G }; - var aI = { [bL]: [U], [f]: "S3 Object Lambda does not support Dual-stack", [bK]: f }; - var aJ = { [bL]: [S], [f]: "S3 Object Lambda does not support S3 Accelerate", [bK]: f }; - var aK = { [bL]: [{ [bM]: c, [bN]: [{ [bO]: "DisableAccessPoints" }] }, { [bM]: e, [bN]: [{ [bO]: "DisableAccessPoints" }, true] }], [f]: "Access points are not supported for this operation", [bK]: f }; - var aL = { [bL]: [{ [bM]: c, [bN]: [{ [bO]: "UseArnRegion" }] }, { [bM]: e, [bN]: [{ [bO]: "UseArnRegion" }, false] }, { [bM]: q, [bN]: [{ [bM]: h, [bN]: [{ [bM]: i, [bN]: [aE, "region"] }, "{Region}"] }] }], [f]: "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", [bK]: f }; - var aM = { [bM]: i, [bN]: [{ [bO]: "bucketPartition" }, j] }; - var aN = { [bM]: i, [bN]: [aE, "accountId"] }; - var aO = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: E, [bV]: "{bucketArn#region}" }] }; - var aP = { [f]: "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", [bK]: f }; - var aQ = { [f]: "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", [bK]: f }; - var aR = { [f]: "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", [bK]: f }; - var aS = { [f]: "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", [bK]: f }; - var aT = { [f]: "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", [bK]: f }; - var aU = { [f]: "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", [bK]: f }; - var aV = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: v, [bV]: "{bucketArn#region}" }] }; - var aW = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: s, [bV]: "{bucketArn#region}" }] }; - var aX = { [bM]: A, [bN]: [Z] }; - var aY = { [bQ]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }; - var aZ = { [bQ]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }; - var ba = { [bQ]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }; - var bb = { [bQ]: L, [bR]: ao, [bW]: {} }; - var bc = { [bQ]: "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }; - var bd = { [bO]: "UseObjectLambdaEndpoint" }; - var be = { [bS]: [{ [bT]: true, [j]: "sigv4", [bU]: E, [bV]: "{Region}" }] }; - var bf = { [bQ]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var bg = { [bQ]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var bh = { [bQ]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var bi = { [bQ]: N, [bR]: ao, [bW]: {} }; - var bj = { [bQ]: "https://s3.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }; - var bk = [{ [bO]: "Region" }]; - var bl = [{ [bO]: "Endpoint" }]; - var bm = [Z]; - var bn = [{ [bM]: p, [bN]: [{ [bO]: o }, false] }]; - var bo = [{ [bM]: h, [bN]: [{ [bO]: m }, "beta"] }]; - var bp = [V, ad]; - var bq = [Y]; - var br = [W]; - var bs = [{ [bM]: p, [bN]: [{ [bO]: "Region" }, false] }]; - var bt = [{ [bM]: h, [bN]: [{ [bO]: "Region" }, "us-east-1"] }]; - var bu = [{ [bM]: h, [bN]: [aF, F] }]; - var bv = [{ [bM]: i, [bN]: [aE, "resourceId[1]"], [bP]: G }, { [bM]: q, [bN]: [{ [bM]: h, [bN]: [aH, D] }] }]; - var bw = [aE, "resourceId[1]"]; - var bx = [U]; - var by = [S]; - var bz = [{ [bM]: q, [bN]: [{ [bM]: h, [bN]: [{ [bM]: i, [bN]: [aE, "region"] }, D] }] }]; - var bA = [{ [bM]: q, [bN]: [{ [bM]: c, [bN]: [{ [bM]: i, [bN]: [aE, "resourceId[2]"] }] }] }]; - var bB = [aE, "resourceId[2]"]; - var bC = [{ [bM]: g, [bN]: [{ [bM]: i, [bN]: [aE, "region"] }], [bP]: "bucketPartition" }]; - var bD = [{ [bM]: h, [bN]: [aM, { [bM]: i, [bN]: [{ [bO]: "partitionResult" }, j] }] }]; - var bE = [{ [bM]: p, [bN]: [{ [bM]: i, [bN]: [aE, "region"] }, true] }]; - var bF = [{ [bM]: p, [bN]: [aN, false] }]; - var bG = [{ [bM]: p, [bN]: [aH, false] }]; - var bH = [T]; - var bI = [{ [bM]: p, [bN]: [{ [bO]: "Region" }, true] }]; - var _data = { version: "1.0", parameters: { Bucket: P, Region: P, UseFIPS: Q, UseDualStack: Q, Endpoint: P, ForcePathStyle: Q, Accelerate: Q, UseGlobalEndpoint: Q, UseObjectLambdaEndpoint: R, DisableAccessPoints: R, DisableMultiRegionAccessPoints: Q, UseArnRegion: R }, rules: [{ [bL]: [{ [bM]: c, [bN]: bk }], [bK]: d, rules: [{ [bL]: [S, T], error: "Accelerate cannot be used with FIPS", [bK]: f }, { [bL]: [U, V], error: "Cannot set dual-stack in combination with a custom endpoint.", [bK]: f }, { [bL]: [V, T], error: "A custom endpoint cannot be combined with FIPS", [bK]: f }, { [bL]: [V, S], error: "A custom endpoint cannot be combined with S3 Accelerate", [bK]: f }, { [bL]: [T, W, X], error: "Partition does not support FIPS", [bK]: f }, { [bL]: [Y, { [bM]: k, [bN]: [Z, 49, 50, b], [bP]: l }, { [bM]: k, [bN]: [Z, 8, 12, b], [bP]: m }, { [bM]: k, [bN]: [Z, 0, 7, b], [bP]: n }, { [bM]: k, [bN]: [Z, 32, 49, b], [bP]: o }, { [bM]: g, [bN]: bk, [bP]: "regionPartition" }, { [bM]: h, [bN]: [{ [bO]: n }, "--op-s3"] }], [bK]: d, rules: [{ [bL]: bn, [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [aa, "e"] }], [bK]: d, rules: [{ [bL]: bo, [bK]: d, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.ec2.{url#authority}", [bR]: ae, [bW]: af }, [bK]: t }] }, { endpoint: { [bQ]: "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: t }] }, { [bL]: [{ [bM]: h, [bN]: [aa, "o"] }], [bK]: d, rules: [{ [bL]: bo, [bK]: d, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.{url#authority}", [bR]: ae, [bW]: af }, [bK]: t }] }, { endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: t }] }, { error: 'Unrecognized hardware type: "Expected hardware type o or e but got {hardwareType}"', [bK]: f }] }, { error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", [bK]: f }] }, { [bL]: bq, [bK]: d, rules: [{ [bL]: [V, { [bM]: q, [bN]: [{ [bM]: c, [bN]: [{ [bM]: r, [bN]: bl }] }] }], error: "Custom endpoint `{Endpoint}` was not a valid URI", [bK]: f }, { [bL]: [ag, { [bM]: u, [bN]: [Z, a] }], [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bs, [bK]: d, rules: [{ [bL]: [S, X], error: "S3 Accelerate cannot be used in this region", [bK]: f }, { [bL]: [U, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [U, T, ai, ac, al, am], [bK]: d, rules: [{ endpoint: an, [bK]: t }] }, { [bL]: [U, T, ai, ac, al, ap], endpoint: an, [bK]: t }, { [bL]: [aq, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, T, ai, ac, al, am], [bK]: d, rules: [{ endpoint: ar, [bK]: t }] }, { [bL]: [aq, T, ai, ac, al, ap], endpoint: ar, [bK]: t }, { [bL]: [U, as, S, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [U, as, S, ac, al, am], [bK]: d, rules: [{ endpoint: at, [bK]: t }] }, { [bL]: [U, as, S, ac, al, ap], endpoint: at, [bK]: t }, { [bL]: [U, as, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [U, as, ai, ac, al, am], [bK]: d, rules: [{ endpoint: au, [bK]: t }] }, { [bL]: [U, as, ai, ac, al, ap], endpoint: au, [bK]: t }, { [bL]: [aq, as, ai, V, ad, av, aj], endpoint: { [bQ]: w, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, as, ai, V, ad, ax, aj], endpoint: { [bQ]: x, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, as, ai, V, ad, av, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: ay, [bK]: t }, { endpoint: ay, [bK]: t }] }, { [bL]: [aq, as, ai, V, ad, ax, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: az, [bK]: t }, aA] }, { [bL]: [aq, as, ai, V, ad, av, al, ap], endpoint: ay, [bK]: t }, { [bL]: [aq, as, ai, V, ad, ax, al, ap], endpoint: az, [bK]: t }, { [bL]: [aq, as, S, ac, aj], endpoint: { [bQ]: y, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, as, S, ac, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: aB, [bK]: t }, { endpoint: aB, [bK]: t }] }, { [bL]: [aq, as, S, ac, al, ap], endpoint: aB, [bK]: t }, { [bL]: [aq, as, ai, ac, aj], endpoint: { [bQ]: z, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, as, ai, ac, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: { [bQ]: z, [bR]: ao, [bW]: af }, [bK]: t }, { endpoint: aC, [bK]: t }] }, { [bL]: [aq, as, ai, ac, al, ap], endpoint: aC, [bK]: t }] }, aD] }] }, { [bL]: [V, ad, { [bM]: h, [bN]: [{ [bM]: i, [bN]: [aw, "scheme"] }, "http"] }, { [bM]: u, [bN]: [Z, b] }, ag, as, aq, ai], [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bs, [bK]: d, rules: [aA] }, aD] }] }, { [bL]: [ag, { [bM]: A, [bN]: bm, [bP]: B }], [bK]: d, rules: [{ [bL]: [{ [bM]: i, [bN]: [aE, "resourceId[0]"], [bP]: C }, { [bM]: q, [bN]: [{ [bM]: h, [bN]: [aF, D] }] }], [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [aG, E] }], [bK]: d, rules: [{ [bL]: bu, [bK]: d, rules: [{ [bL]: bv, [bK]: d, rules: [aI, aJ, { [bL]: bz, [bK]: d, rules: [aK, { [bL]: bA, [bK]: d, rules: [aL, { [bL]: bC, [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bD, [bK]: d, rules: [{ [bL]: bE, [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [aN, D] }], error: "Invalid ARN: Missing account id", [bK]: f }, { [bL]: bF, [bK]: d, rules: [{ [bL]: bG, [bK]: d, rules: [{ [bL]: bp, endpoint: { [bQ]: H, [bR]: aO, [bW]: af }, [bK]: t }, { [bL]: bH, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: t }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: t }] }, aP] }, aQ] }, aR] }, aS] }] }] }, aT] }, { error: "Invalid ARN: bucket ARN is missing a region", [bK]: f }] }, aU] }, { error: "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", [bK]: f }] }, { [bL]: bu, [bK]: d, rules: [{ [bL]: bv, [bK]: d, rules: [{ [bL]: bz, [bK]: d, rules: [{ [bL]: bu, [bK]: d, rules: [{ [bL]: bz, [bK]: d, rules: [aK, { [bL]: bA, [bK]: d, rules: [aL, { [bL]: bC, [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [aM, "{partitionResult#name}"] }], [bK]: d, rules: [{ [bL]: bE, [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [aG, v] }], [bK]: d, rules: [{ [bL]: bF, [bK]: d, rules: [{ [bL]: bG, [bK]: d, rules: [{ [bL]: by, error: "Access Points do not support S3 Accelerate", [bK]: f }, { [bL]: [T, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: t }, { [bL]: [T, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: t }, { [bL]: [as, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: t }, { [bL]: [as, aq, V, ad], endpoint: { [bQ]: H, [bR]: aV, [bW]: af }, [bK]: t }, { [bL]: [as, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: t }] }, aP] }, aQ] }, { error: "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", [bK]: f }] }, aR] }, aS] }] }] }, aT] }] }] }, { [bL]: [{ [bM]: p, [bN]: [aH, b] }], [bK]: d, rules: [{ [bL]: bx, error: "S3 MRAP does not support dual-stack", [bK]: f }, { [bL]: bH, error: "S3 MRAP does not support FIPS", [bK]: f }, { [bL]: by, error: "S3 MRAP does not support S3 Accelerate", [bK]: f }, { [bL]: [{ [bM]: e, [bN]: [{ [bO]: "DisableMultiRegionAccessPoints" }, b] }], error: "Invalid configuration: Multi-Region Access Point ARNs are disabled.", [bK]: f }, { [bL]: [{ [bM]: g, [bN]: bk, [bP]: I }], [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [{ [bM]: i, [bN]: [{ [bO]: I }, j] }, { [bM]: i, [bN]: [aE, "partition"] }] }], [bK]: d, rules: [{ endpoint: { [bQ]: "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", [bR]: { [bS]: [{ [bT]: b, name: "sigv4a", [bU]: v, signingRegionSet: ["*"] }] }, [bW]: af }, [bK]: t }] }, { error: "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", [bK]: f }] }] }, { error: "Invalid Access Point Name", [bK]: f }] }, aU] }, { [bL]: [{ [bM]: h, [bN]: [aG, s] }], [bK]: d, rules: [{ [bL]: bx, error: "S3 Outposts does not support Dual-stack", [bK]: f }, { [bL]: bH, error: "S3 Outposts does not support FIPS", [bK]: f }, { [bL]: by, error: "S3 Outposts does not support S3 Accelerate", [bK]: f }, { [bL]: [{ [bM]: c, [bN]: [{ [bM]: i, [bN]: [aE, "resourceId[4]"] }] }], error: "Invalid Arn: Outpost Access Point ARN contains sub resources", [bK]: f }, { [bL]: [{ [bM]: i, [bN]: bw, [bP]: o }], [bK]: d, rules: [{ [bL]: bn, [bK]: d, rules: [aL, { [bL]: bC, [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bD, [bK]: d, rules: [{ [bL]: bE, [bK]: d, rules: [{ [bL]: bF, [bK]: d, rules: [{ [bL]: [{ [bM]: i, [bN]: bB, [bP]: J }], [bK]: d, rules: [{ [bL]: [{ [bM]: i, [bN]: [aE, "resourceId[3]"], [bP]: G }], [bK]: d, rules: [{ [bL]: [{ [bM]: h, [bN]: [{ [bO]: J }, F] }], [bK]: d, rules: [{ [bL]: bp, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", [bR]: aW, [bW]: af }, [bK]: t }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aW, [bW]: af }, [bK]: t }] }, { error: "Expected an outpost type `accesspoint`, found {outpostType}", [bK]: f }] }, { error: "Invalid ARN: expected an access point name", [bK]: f }] }, { error: "Invalid ARN: Expected a 4-component resource", [bK]: f }] }, aQ] }, aR] }, aS] }] }] }, { error: "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", [bK]: f }] }, { error: "Invalid ARN: The Outpost Id was not set", [bK]: f }] }, { error: "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", [bK]: f }] }, { error: "Invalid ARN: No ARN type specified", [bK]: f }] }, { [bL]: [{ [bM]: k, [bN]: [Z, 0, 4, a], [bP]: K }, { [bM]: h, [bN]: [{ [bO]: K }, "arn:"] }, { [bM]: q, [bN]: [{ [bM]: c, [bN]: [aX] }] }], error: "Invalid ARN: `{Bucket}` was not a valid ARN", [bK]: f }, { [bL]: [{ [bM]: e, [bN]: [ah, b] }, aX], error: "Path-style addressing cannot be used with ARN buckets", [bK]: f }, { [bL]: [{ [bM]: "uriEncode", [bN]: bm, [bP]: "uri_encoded_bucket" }], [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: [ai], [bK]: d, rules: [{ [bL]: [U, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [U, ac, T, al, am], [bK]: d, rules: [{ endpoint: aY, [bK]: t }] }, { [bL]: [U, ac, T, al, ap], endpoint: aY, [bK]: t }, { [bL]: [aq, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, ac, T, al, am], [bK]: d, rules: [{ endpoint: aZ, [bK]: t }] }, { [bL]: [aq, ac, T, al, ap], endpoint: aZ, [bK]: t }, { [bL]: [U, ac, as, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [U, ac, as, al, am], [bK]: d, rules: [{ endpoint: ba, [bK]: t }] }, { [bL]: [U, ac, as, al, ap], endpoint: ba, [bK]: t }, { [bL]: [aq, V, ad, as, aj], endpoint: { [bQ]: L, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, V, ad, as, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: bb, [bK]: t }, { endpoint: bb, [bK]: t }] }, { [bL]: [aq, V, ad, as, al, ap], endpoint: bb, [bK]: t }, { [bL]: [aq, ac, as, aj], endpoint: { [bQ]: M, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [aq, ac, as, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: { [bQ]: M, [bR]: ao, [bW]: af }, [bK]: t }, { endpoint: bc, [bK]: t }] }, { [bL]: [aq, ac, as, al, ap], endpoint: bc, [bK]: t }] }, { error: "Path-style addressing cannot be used with S3 Accelerate", [bK]: f }] }] }] }, { [bL]: [{ [bM]: c, [bN]: [bd] }, { [bM]: e, [bN]: [bd, b] }], [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bI, [bK]: d, rules: [aI, aJ, { [bL]: bp, endpoint: { [bQ]: N, [bR]: be, [bW]: af }, [bK]: t }, { [bL]: bH, endpoint: { [bQ]: "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: t }, { endpoint: { [bQ]: "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: t }] }, aD] }] }, { [bL]: [{ [bM]: q, [bN]: bq }], [bK]: d, rules: [{ [bL]: br, [bK]: d, rules: [{ [bL]: bI, [bK]: d, rules: [{ [bL]: [T, U, ac, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [T, U, ac, al, am], [bK]: d, rules: [{ endpoint: bf, [bK]: t }] }, { [bL]: [T, U, ac, al, ap], endpoint: bf, [bK]: t }, { [bL]: [T, aq, ac, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [T, aq, ac, al, am], [bK]: d, rules: [{ endpoint: bg, [bK]: t }] }, { [bL]: [T, aq, ac, al, ap], endpoint: bg, [bK]: t }, { [bL]: [as, U, ac, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [as, U, ac, al, am], [bK]: d, rules: [{ endpoint: bh, [bK]: t }] }, { [bL]: [as, U, ac, al, ap], endpoint: bh, [bK]: t }, { [bL]: [as, aq, V, ad, aj], endpoint: { [bQ]: N, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [as, aq, V, ad, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: bi, [bK]: t }, { endpoint: bi, [bK]: t }] }, { [bL]: [as, aq, V, ad, al, ap], endpoint: bi, [bK]: t }, { [bL]: [as, aq, ac, aj], endpoint: { [bQ]: O, [bR]: ak, [bW]: af }, [bK]: t }, { [bL]: [as, aq, ac, al, am], [bK]: d, rules: [{ [bL]: bt, endpoint: { [bQ]: O, [bR]: ao, [bW]: af }, [bK]: t }, { endpoint: bj, [bK]: t }] }, { [bL]: [as, aq, ac, al, ap], endpoint: bj, [bK]: t }] }, aD] }] }] }, { error: "A region must be set when sending requests to S3.", [bK]: f }] }; - exports2.ruleSet = _data; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/endpointResolver.js -var require_endpointResolver3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/endpoint/endpointResolver.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultEndpointResolver = void 0; - var util_endpoints_1 = require_dist_cjs27(); - var ruleset_1 = require_ruleset3(); - var defaultEndpointResolver = (endpointParams, context = {}) => { - return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, { - endpointParams, - logger: context.logger - }); - }; - exports2.defaultEndpointResolver = defaultEndpointResolver; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.shared.js -var require_runtimeConfig_shared3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.shared.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var signature_v4_multi_region_1 = require_dist_cjs62(); - var smithy_client_1 = require_dist_cjs16(); - var url_parser_1 = require_dist_cjs36(); - var util_base64_1 = require_dist_cjs10(); - var util_stream_1 = require_dist_cjs15(); - var util_utf8_1 = require_dist_cjs11(); - var endpointResolver_1 = require_endpointResolver3(); - var getRuntimeConfig = (config) => ({ - apiVersion: "2006-03-01", - base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64, - base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64, - disableHostPrefix: config?.disableHostPrefix ?? false, - endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver, - extensions: config?.extensions ?? [], - getAwsChunkedEncodingStream: config?.getAwsChunkedEncodingStream ?? util_stream_1.getAwsChunkedEncodingStream, - logger: config?.logger ?? new smithy_client_1.NoOpLogger(), - sdkStreamMixin: config?.sdkStreamMixin ?? util_stream_1.sdkStreamMixin, - serviceId: config?.serviceId ?? "S3", - signerConstructor: config?.signerConstructor ?? signature_v4_multi_region_1.SignatureV4MultiRegion, - signingEscapePath: config?.signingEscapePath ?? false, - urlParser: config?.urlParser ?? url_parser_1.parseUrl, - useArnRegion: config?.useArnRegion ?? false, - utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8, - utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8 - }); - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.js -var require_runtimeConfig3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/runtimeConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRuntimeConfig = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - var package_json_1 = tslib_1.__importDefault(require_package()); - var client_sts_1 = require_dist_cjs57(); - var credential_provider_node_1 = require_dist_cjs56(); - var middleware_bucket_endpoint_1 = require_dist_cjs58(); - var util_user_agent_node_1 = require_dist_cjs46(); - var config_resolver_1 = require_dist_cjs30(); - var eventstream_serde_node_1 = require_dist_cjs60(); - var hash_node_1 = require_dist_cjs47(); - var hash_stream_node_1 = require_dist_cjs61(); - var middleware_retry_1 = require_dist_cjs41(); - var node_config_provider_1 = require_dist_cjs34(); - var node_http_handler_1 = require_dist_cjs14(); - var util_body_length_node_1 = require_dist_cjs48(); - var util_retry_1 = require_dist_cjs40(); - var runtimeConfig_shared_1 = require_runtimeConfig_shared3(); - var smithy_client_1 = require_dist_cjs16(); - var util_defaults_mode_node_1 = require_dist_cjs49(); - var smithy_client_2 = require_dist_cjs16(); - var getRuntimeConfig = (config) => { - (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); - const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); - const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode); - const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config); - return { - ...clientSharedValues, - ...config, - runtime: "node", - defaultsMode, - bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength, - credentialDefaultProvider: config?.credentialDefaultProvider ?? (0, client_sts_1.decorateDefaultCredentialProvider)(credential_provider_node_1.defaultProvider), - defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }), - eventStreamSerdeProvider: config?.eventStreamSerdeProvider ?? eventstream_serde_node_1.eventStreamSerdeProvider, - maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS), - md5: config?.md5 ?? hash_node_1.Hash.bind(null, "md5"), - region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS), - requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider), - retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({ - ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS, - default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE - }), - sha1: config?.sha1 ?? hash_node_1.Hash.bind(null, "sha1"), - sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"), - streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector, - streamHasher: config?.streamHasher ?? hash_stream_node_1.readableStreamHasher, - useArnRegion: config?.useArnRegion ?? (0, node_config_provider_1.loadConfig)(middleware_bucket_endpoint_1.NODE_USE_ARN_REGION_CONFIG_OPTIONS), - useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), - useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS) - }; - }; - exports2.getRuntimeConfig = getRuntimeConfig; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/runtimeExtensions.js -var require_runtimeExtensions3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/runtimeExtensions.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs50(); - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var asPartial = (t) => t; - var resolveRuntimeExtensions = (runtimeConfig, extensions) => { - const extensionConfiguration = { - ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), - ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)) - }; - extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return { - ...runtimeConfig, - ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), - ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration) - }; - }; - exports2.resolveRuntimeExtensions = resolveRuntimeExtensions; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/S3Client.js -var require_S3Client = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/S3Client.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.S3Client = exports2.__Client = void 0; - var middleware_expect_continue_1 = require_dist_cjs3(); - var middleware_host_header_1 = require_dist_cjs4(); - var middleware_logger_1 = require_dist_cjs5(); - var middleware_recursion_detection_1 = require_dist_cjs6(); - var middleware_sdk_s3_1 = require_dist_cjs18(); - var middleware_signing_1 = require_dist_cjs25(); - var middleware_user_agent_1 = require_dist_cjs28(); - var config_resolver_1 = require_dist_cjs30(); - var eventstream_serde_config_resolver_1 = require_dist_cjs31(); - var middleware_content_length_1 = require_dist_cjs32(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_retry_1 = require_dist_cjs41(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { - return smithy_client_1.Client; - } }); - var EndpointParameters_1 = require_EndpointParameters(); - var runtimeConfig_1 = require_runtimeConfig3(); - var runtimeExtensions_1 = require_runtimeExtensions3(); - var S3Client2 = class extends smithy_client_1.Client { - constructor(...[configuration]) { - const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); - const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); - const _config_2 = (0, config_resolver_1.resolveRegionConfig)(_config_1); - const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2); - const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3); - const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4); - const _config_6 = (0, middleware_signing_1.resolveAwsAuthConfig)(_config_5); - const _config_7 = (0, middleware_sdk_s3_1.resolveS3Config)(_config_6); - const _config_8 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_7); - const _config_9 = (0, eventstream_serde_config_resolver_1.resolveEventStreamSerdeConfig)(_config_8); - const _config_10 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_9, configuration?.extensions || []); - super(_config_10); - this.config = _config_10; - this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); - this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config)); - this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config)); - this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config)); - this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config)); - this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(this.config)); - this.middlewareStack.use((0, middleware_sdk_s3_1.getValidateBucketNamePlugin)(this.config)); - this.middlewareStack.use((0, middleware_expect_continue_1.getAddExpectContinuePlugin)(this.config)); - this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); - } - destroy() { - super.destroy(); - } - }; - exports2.S3Client = S3Client2; - } -}); - -// node_modules/@aws-sdk/xml-builder/dist-cjs/escape-attribute.js -var require_escape_attribute = __commonJS({ - "node_modules/@aws-sdk/xml-builder/dist-cjs/escape-attribute.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.escapeAttribute = void 0; - function escapeAttribute(value) { - return value.replace(/&/g, "&").replace(//g, ">").replace(/"/g, """); - } - exports2.escapeAttribute = escapeAttribute; - } -}); - -// node_modules/@aws-sdk/xml-builder/dist-cjs/escape-element.js -var require_escape_element = __commonJS({ - "node_modules/@aws-sdk/xml-builder/dist-cjs/escape-element.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.escapeElement = void 0; - function escapeElement(value) { - return value.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(//g, ">").replace(/\r/g, " ").replace(/\n/g, " ").replace(/\u0085/g, "…").replace(/\u2028/, "
"); - } - exports2.escapeElement = escapeElement; - } -}); - -// node_modules/@aws-sdk/xml-builder/dist-cjs/XmlText.js -var require_XmlText = __commonJS({ - "node_modules/@aws-sdk/xml-builder/dist-cjs/XmlText.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.XmlText = void 0; - var escape_element_1 = require_escape_element(); - var XmlText = class { - constructor(value) { - this.value = value; - } - toString() { - return (0, escape_element_1.escapeElement)("" + this.value); - } - }; - exports2.XmlText = XmlText; - } -}); - -// node_modules/@aws-sdk/xml-builder/dist-cjs/XmlNode.js -var require_XmlNode = __commonJS({ - "node_modules/@aws-sdk/xml-builder/dist-cjs/XmlNode.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.XmlNode = void 0; - var escape_attribute_1 = require_escape_attribute(); - var XmlText_1 = require_XmlText(); - var XmlNode = class _XmlNode { - static of(name, childText, withName) { - const node = new _XmlNode(name); - if (childText !== void 0) { - node.addChildNode(new XmlText_1.XmlText(childText)); - } - if (withName !== void 0) { - node.withName(withName); - } - return node; - } - constructor(name, children = []) { - this.name = name; - this.children = children; - this.attributes = {}; - } - withName(name) { - this.name = name; - return this; - } - addAttribute(name, value) { - this.attributes[name] = value; - return this; - } - addChildNode(child) { - this.children.push(child); - return this; - } - removeAttribute(name) { - delete this.attributes[name]; - return this; - } - toString() { - const hasChildren = Boolean(this.children.length); - let xmlText = `<${this.name}`; - const attributes = this.attributes; - for (const attributeName of Object.keys(attributes)) { - const attribute = attributes[attributeName]; - if (typeof attribute !== "undefined" && attribute !== null) { - xmlText += ` ${attributeName}="${(0, escape_attribute_1.escapeAttribute)("" + attribute)}"`; - } - } - return xmlText += !hasChildren ? "/>" : `>${this.children.map((c) => c.toString()).join("")}`; - } - }; - exports2.XmlNode = XmlNode; - } -}); - -// node_modules/@aws-sdk/xml-builder/dist-cjs/index.js -var require_dist_cjs63 = __commonJS({ - "node_modules/@aws-sdk/xml-builder/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_XmlNode(), exports2); - tslib_1.__exportStar(require_XmlText(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/models/S3ServiceException.js -var require_S3ServiceException = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/models/S3ServiceException.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.S3ServiceException = exports2.__ServiceException = void 0; - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "__ServiceException", { enumerable: true, get: function() { - return smithy_client_1.ServiceException; - } }); - var S3ServiceException = class _S3ServiceException extends smithy_client_1.ServiceException { - constructor(options) { - super(options); - Object.setPrototypeOf(this, _S3ServiceException.prototype); - } - }; - exports2.S3ServiceException = S3ServiceException; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/models/models_0.js -var require_models_03 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/models/models_0.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ReplicationStatus = exports2.Protocol = exports2.BucketVersioningStatus = exports2.MFADeleteStatus = exports2.Payer = exports2.ReplicationRuleStatus = exports2.SseKmsEncryptedObjectsStatus = exports2.ReplicaModificationsStatus = exports2.ReplicationRuleFilter = exports2.ExistingObjectReplicationStatus = exports2.ReplicationTimeStatus = exports2.MetricsStatus = exports2.DeleteMarkerReplicationStatus = exports2.FilterRuleName = exports2.Event = exports2.MetricsFilter = exports2.BucketLogsPermission = exports2.ExpirationStatus = exports2.TransitionStorageClass = exports2.LifecycleRuleFilter = exports2.InventoryFrequency = exports2.InventoryOptionalField = exports2.InventoryIncludedObjectVersions = exports2.InventoryFormat = exports2.IntelligentTieringAccessTier = exports2.IntelligentTieringStatus = exports2.StorageClassAnalysisSchemaVersion = exports2.AnalyticsS3ExportFileFormat = exports2.AnalyticsFilter = exports2.ObjectOwnership = exports2.BucketLocationConstraint = exports2.BucketCannedACL = exports2.BucketAlreadyOwnedByYou = exports2.BucketAlreadyExists = exports2.ObjectNotInActiveTierError = exports2.TaggingDirective = exports2.StorageClass = exports2.ObjectLockMode = exports2.ObjectLockLegalHoldStatus = exports2.MetadataDirective = exports2.ChecksumAlgorithm = exports2.ObjectCannedACL = exports2.ServerSideEncryption = exports2.OwnerOverride = exports2.Permission = exports2.Type = exports2.BucketAccelerateStatus = exports2.NoSuchUpload = exports2.RequestPayer = exports2.RequestCharged = void 0; - exports2.PutObjectRequestFilterSensitiveLog = exports2.PutObjectOutputFilterSensitiveLog = exports2.PutBucketInventoryConfigurationRequestFilterSensitiveLog = exports2.PutBucketEncryptionRequestFilterSensitiveLog = exports2.ListPartsRequestFilterSensitiveLog = exports2.ListBucketInventoryConfigurationsOutputFilterSensitiveLog = exports2.HeadObjectRequestFilterSensitiveLog = exports2.HeadObjectOutputFilterSensitiveLog = exports2.GetObjectTorrentOutputFilterSensitiveLog = exports2.GetObjectAttributesRequestFilterSensitiveLog = exports2.GetObjectRequestFilterSensitiveLog = exports2.GetObjectOutputFilterSensitiveLog = exports2.GetBucketInventoryConfigurationOutputFilterSensitiveLog = exports2.InventoryConfigurationFilterSensitiveLog = exports2.InventoryDestinationFilterSensitiveLog = exports2.InventoryS3BucketDestinationFilterSensitiveLog = exports2.InventoryEncryptionFilterSensitiveLog = exports2.SSEKMSFilterSensitiveLog = exports2.GetBucketEncryptionOutputFilterSensitiveLog = exports2.ServerSideEncryptionConfigurationFilterSensitiveLog = exports2.ServerSideEncryptionRuleFilterSensitiveLog = exports2.ServerSideEncryptionByDefaultFilterSensitiveLog = exports2.CreateMultipartUploadRequestFilterSensitiveLog = exports2.CreateMultipartUploadOutputFilterSensitiveLog = exports2.CopyObjectRequestFilterSensitiveLog = exports2.CopyObjectOutputFilterSensitiveLog = exports2.CompleteMultipartUploadRequestFilterSensitiveLog = exports2.CompleteMultipartUploadOutputFilterSensitiveLog = exports2.MFADelete = exports2.ObjectVersionStorageClass = exports2.NoSuchBucket = exports2.OptionalObjectAttributes = exports2.ObjectStorageClass = exports2.EncodingType = exports2.ArchiveStatus = exports2.NotFound = exports2.ObjectLockRetentionMode = exports2.ObjectLockEnabled = exports2.ObjectAttributes = exports2.NoSuchKey = exports2.InvalidObjectState = exports2.ChecksumMode = void 0; - var smithy_client_1 = require_dist_cjs16(); - var S3ServiceException_1 = require_S3ServiceException(); - exports2.RequestCharged = { - requester: "requester" - }; - exports2.RequestPayer = { - requester: "requester" - }; - var NoSuchUpload = class _NoSuchUpload extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "NoSuchUpload", - $fault: "client", - ...opts - }); - this.name = "NoSuchUpload"; - this.$fault = "client"; - Object.setPrototypeOf(this, _NoSuchUpload.prototype); - } - }; - exports2.NoSuchUpload = NoSuchUpload; - exports2.BucketAccelerateStatus = { - Enabled: "Enabled", - Suspended: "Suspended" - }; - exports2.Type = { - AmazonCustomerByEmail: "AmazonCustomerByEmail", - CanonicalUser: "CanonicalUser", - Group: "Group" - }; - exports2.Permission = { - FULL_CONTROL: "FULL_CONTROL", - READ: "READ", - READ_ACP: "READ_ACP", - WRITE: "WRITE", - WRITE_ACP: "WRITE_ACP" - }; - exports2.OwnerOverride = { - Destination: "Destination" - }; - exports2.ServerSideEncryption = { - AES256: "AES256", - aws_kms: "aws:kms", - aws_kms_dsse: "aws:kms:dsse" - }; - exports2.ObjectCannedACL = { - authenticated_read: "authenticated-read", - aws_exec_read: "aws-exec-read", - bucket_owner_full_control: "bucket-owner-full-control", - bucket_owner_read: "bucket-owner-read", - private: "private", - public_read: "public-read", - public_read_write: "public-read-write" - }; - exports2.ChecksumAlgorithm = { - CRC32: "CRC32", - CRC32C: "CRC32C", - SHA1: "SHA1", - SHA256: "SHA256" - }; - exports2.MetadataDirective = { - COPY: "COPY", - REPLACE: "REPLACE" - }; - exports2.ObjectLockLegalHoldStatus = { - OFF: "OFF", - ON: "ON" - }; - exports2.ObjectLockMode = { - COMPLIANCE: "COMPLIANCE", - GOVERNANCE: "GOVERNANCE" - }; - exports2.StorageClass = { - DEEP_ARCHIVE: "DEEP_ARCHIVE", - GLACIER: "GLACIER", - GLACIER_IR: "GLACIER_IR", - INTELLIGENT_TIERING: "INTELLIGENT_TIERING", - ONEZONE_IA: "ONEZONE_IA", - OUTPOSTS: "OUTPOSTS", - REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY", - SNOW: "SNOW", - STANDARD: "STANDARD", - STANDARD_IA: "STANDARD_IA" - }; - exports2.TaggingDirective = { - COPY: "COPY", - REPLACE: "REPLACE" - }; - var ObjectNotInActiveTierError = class _ObjectNotInActiveTierError extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "ObjectNotInActiveTierError", - $fault: "client", - ...opts - }); - this.name = "ObjectNotInActiveTierError"; - this.$fault = "client"; - Object.setPrototypeOf(this, _ObjectNotInActiveTierError.prototype); - } - }; - exports2.ObjectNotInActiveTierError = ObjectNotInActiveTierError; - var BucketAlreadyExists = class _BucketAlreadyExists extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "BucketAlreadyExists", - $fault: "client", - ...opts - }); - this.name = "BucketAlreadyExists"; - this.$fault = "client"; - Object.setPrototypeOf(this, _BucketAlreadyExists.prototype); - } - }; - exports2.BucketAlreadyExists = BucketAlreadyExists; - var BucketAlreadyOwnedByYou = class _BucketAlreadyOwnedByYou extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "BucketAlreadyOwnedByYou", - $fault: "client", - ...opts - }); - this.name = "BucketAlreadyOwnedByYou"; - this.$fault = "client"; - Object.setPrototypeOf(this, _BucketAlreadyOwnedByYou.prototype); - } - }; - exports2.BucketAlreadyOwnedByYou = BucketAlreadyOwnedByYou; - exports2.BucketCannedACL = { - authenticated_read: "authenticated-read", - private: "private", - public_read: "public-read", - public_read_write: "public-read-write" - }; - exports2.BucketLocationConstraint = { - EU: "EU", - af_south_1: "af-south-1", - ap_east_1: "ap-east-1", - ap_northeast_1: "ap-northeast-1", - ap_northeast_2: "ap-northeast-2", - ap_northeast_3: "ap-northeast-3", - ap_south_1: "ap-south-1", - ap_south_2: "ap-south-2", - ap_southeast_1: "ap-southeast-1", - ap_southeast_2: "ap-southeast-2", - ap_southeast_3: "ap-southeast-3", - ca_central_1: "ca-central-1", - cn_north_1: "cn-north-1", - cn_northwest_1: "cn-northwest-1", - eu_central_1: "eu-central-1", - eu_north_1: "eu-north-1", - eu_south_1: "eu-south-1", - eu_south_2: "eu-south-2", - eu_west_1: "eu-west-1", - eu_west_2: "eu-west-2", - eu_west_3: "eu-west-3", - me_south_1: "me-south-1", - sa_east_1: "sa-east-1", - us_east_2: "us-east-2", - us_gov_east_1: "us-gov-east-1", - us_gov_west_1: "us-gov-west-1", - us_west_1: "us-west-1", - us_west_2: "us-west-2" - }; - exports2.ObjectOwnership = { - BucketOwnerEnforced: "BucketOwnerEnforced", - BucketOwnerPreferred: "BucketOwnerPreferred", - ObjectWriter: "ObjectWriter" - }; - var AnalyticsFilter; - (function(AnalyticsFilter2) { - AnalyticsFilter2.visit = (value, visitor) => { - if (value.Prefix !== void 0) - return visitor.Prefix(value.Prefix); - if (value.Tag !== void 0) - return visitor.Tag(value.Tag); - if (value.And !== void 0) - return visitor.And(value.And); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; - })(AnalyticsFilter = exports2.AnalyticsFilter || (exports2.AnalyticsFilter = {})); - exports2.AnalyticsS3ExportFileFormat = { - CSV: "CSV" - }; - exports2.StorageClassAnalysisSchemaVersion = { - V_1: "V_1" - }; - exports2.IntelligentTieringStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.IntelligentTieringAccessTier = { - ARCHIVE_ACCESS: "ARCHIVE_ACCESS", - DEEP_ARCHIVE_ACCESS: "DEEP_ARCHIVE_ACCESS" - }; - exports2.InventoryFormat = { - CSV: "CSV", - ORC: "ORC", - Parquet: "Parquet" - }; - exports2.InventoryIncludedObjectVersions = { - All: "All", - Current: "Current" - }; - exports2.InventoryOptionalField = { - BucketKeyStatus: "BucketKeyStatus", - ChecksumAlgorithm: "ChecksumAlgorithm", - ETag: "ETag", - EncryptionStatus: "EncryptionStatus", - IntelligentTieringAccessTier: "IntelligentTieringAccessTier", - IsMultipartUploaded: "IsMultipartUploaded", - LastModifiedDate: "LastModifiedDate", - ObjectAccessControlList: "ObjectAccessControlList", - ObjectLockLegalHoldStatus: "ObjectLockLegalHoldStatus", - ObjectLockMode: "ObjectLockMode", - ObjectLockRetainUntilDate: "ObjectLockRetainUntilDate", - ObjectOwner: "ObjectOwner", - ReplicationStatus: "ReplicationStatus", - Size: "Size", - StorageClass: "StorageClass" - }; - exports2.InventoryFrequency = { - Daily: "Daily", - Weekly: "Weekly" - }; - var LifecycleRuleFilter; - (function(LifecycleRuleFilter2) { - LifecycleRuleFilter2.visit = (value, visitor) => { - if (value.Prefix !== void 0) - return visitor.Prefix(value.Prefix); - if (value.Tag !== void 0) - return visitor.Tag(value.Tag); - if (value.ObjectSizeGreaterThan !== void 0) - return visitor.ObjectSizeGreaterThan(value.ObjectSizeGreaterThan); - if (value.ObjectSizeLessThan !== void 0) - return visitor.ObjectSizeLessThan(value.ObjectSizeLessThan); - if (value.And !== void 0) - return visitor.And(value.And); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; - })(LifecycleRuleFilter = exports2.LifecycleRuleFilter || (exports2.LifecycleRuleFilter = {})); - exports2.TransitionStorageClass = { - DEEP_ARCHIVE: "DEEP_ARCHIVE", - GLACIER: "GLACIER", - GLACIER_IR: "GLACIER_IR", - INTELLIGENT_TIERING: "INTELLIGENT_TIERING", - ONEZONE_IA: "ONEZONE_IA", - STANDARD_IA: "STANDARD_IA" - }; - exports2.ExpirationStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.BucketLogsPermission = { - FULL_CONTROL: "FULL_CONTROL", - READ: "READ", - WRITE: "WRITE" - }; - var MetricsFilter; - (function(MetricsFilter2) { - MetricsFilter2.visit = (value, visitor) => { - if (value.Prefix !== void 0) - return visitor.Prefix(value.Prefix); - if (value.Tag !== void 0) - return visitor.Tag(value.Tag); - if (value.AccessPointArn !== void 0) - return visitor.AccessPointArn(value.AccessPointArn); - if (value.And !== void 0) - return visitor.And(value.And); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; - })(MetricsFilter = exports2.MetricsFilter || (exports2.MetricsFilter = {})); - exports2.Event = { - s3_IntelligentTiering: "s3:IntelligentTiering", - s3_LifecycleExpiration_: "s3:LifecycleExpiration:*", - s3_LifecycleExpiration_Delete: "s3:LifecycleExpiration:Delete", - s3_LifecycleExpiration_DeleteMarkerCreated: "s3:LifecycleExpiration:DeleteMarkerCreated", - s3_LifecycleTransition: "s3:LifecycleTransition", - s3_ObjectAcl_Put: "s3:ObjectAcl:Put", - s3_ObjectCreated_: "s3:ObjectCreated:*", - s3_ObjectCreated_CompleteMultipartUpload: "s3:ObjectCreated:CompleteMultipartUpload", - s3_ObjectCreated_Copy: "s3:ObjectCreated:Copy", - s3_ObjectCreated_Post: "s3:ObjectCreated:Post", - s3_ObjectCreated_Put: "s3:ObjectCreated:Put", - s3_ObjectRemoved_: "s3:ObjectRemoved:*", - s3_ObjectRemoved_Delete: "s3:ObjectRemoved:Delete", - s3_ObjectRemoved_DeleteMarkerCreated: "s3:ObjectRemoved:DeleteMarkerCreated", - s3_ObjectRestore_: "s3:ObjectRestore:*", - s3_ObjectRestore_Completed: "s3:ObjectRestore:Completed", - s3_ObjectRestore_Delete: "s3:ObjectRestore:Delete", - s3_ObjectRestore_Post: "s3:ObjectRestore:Post", - s3_ObjectTagging_: "s3:ObjectTagging:*", - s3_ObjectTagging_Delete: "s3:ObjectTagging:Delete", - s3_ObjectTagging_Put: "s3:ObjectTagging:Put", - s3_ReducedRedundancyLostObject: "s3:ReducedRedundancyLostObject", - s3_Replication_: "s3:Replication:*", - s3_Replication_OperationFailedReplication: "s3:Replication:OperationFailedReplication", - s3_Replication_OperationMissedThreshold: "s3:Replication:OperationMissedThreshold", - s3_Replication_OperationNotTracked: "s3:Replication:OperationNotTracked", - s3_Replication_OperationReplicatedAfterThreshold: "s3:Replication:OperationReplicatedAfterThreshold" - }; - exports2.FilterRuleName = { - prefix: "prefix", - suffix: "suffix" - }; - exports2.DeleteMarkerReplicationStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.MetricsStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.ReplicationTimeStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.ExistingObjectReplicationStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - var ReplicationRuleFilter; - (function(ReplicationRuleFilter2) { - ReplicationRuleFilter2.visit = (value, visitor) => { - if (value.Prefix !== void 0) - return visitor.Prefix(value.Prefix); - if (value.Tag !== void 0) - return visitor.Tag(value.Tag); - if (value.And !== void 0) - return visitor.And(value.And); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; - })(ReplicationRuleFilter = exports2.ReplicationRuleFilter || (exports2.ReplicationRuleFilter = {})); - exports2.ReplicaModificationsStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.SseKmsEncryptedObjectsStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.ReplicationRuleStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.Payer = { - BucketOwner: "BucketOwner", - Requester: "Requester" - }; - exports2.MFADeleteStatus = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - exports2.BucketVersioningStatus = { - Enabled: "Enabled", - Suspended: "Suspended" - }; - exports2.Protocol = { - http: "http", - https: "https" - }; - exports2.ReplicationStatus = { - COMPLETE: "COMPLETE", - COMPLETED: "COMPLETED", - FAILED: "FAILED", - PENDING: "PENDING", - REPLICA: "REPLICA" - }; - exports2.ChecksumMode = { - ENABLED: "ENABLED" - }; - var InvalidObjectState = class _InvalidObjectState extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "InvalidObjectState", - $fault: "client", - ...opts - }); - this.name = "InvalidObjectState"; - this.$fault = "client"; - Object.setPrototypeOf(this, _InvalidObjectState.prototype); - this.StorageClass = opts.StorageClass; - this.AccessTier = opts.AccessTier; - } - }; - exports2.InvalidObjectState = InvalidObjectState; - var NoSuchKey = class _NoSuchKey extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "NoSuchKey", - $fault: "client", - ...opts - }); - this.name = "NoSuchKey"; - this.$fault = "client"; - Object.setPrototypeOf(this, _NoSuchKey.prototype); - } - }; - exports2.NoSuchKey = NoSuchKey; - exports2.ObjectAttributes = { - CHECKSUM: "Checksum", - ETAG: "ETag", - OBJECT_PARTS: "ObjectParts", - OBJECT_SIZE: "ObjectSize", - STORAGE_CLASS: "StorageClass" - }; - exports2.ObjectLockEnabled = { - Enabled: "Enabled" - }; - exports2.ObjectLockRetentionMode = { - COMPLIANCE: "COMPLIANCE", - GOVERNANCE: "GOVERNANCE" - }; - var NotFound = class _NotFound extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "NotFound", - $fault: "client", - ...opts - }); - this.name = "NotFound"; - this.$fault = "client"; - Object.setPrototypeOf(this, _NotFound.prototype); - } - }; - exports2.NotFound = NotFound; - exports2.ArchiveStatus = { - ARCHIVE_ACCESS: "ARCHIVE_ACCESS", - DEEP_ARCHIVE_ACCESS: "DEEP_ARCHIVE_ACCESS" - }; - exports2.EncodingType = { - url: "url" - }; - exports2.ObjectStorageClass = { - DEEP_ARCHIVE: "DEEP_ARCHIVE", - GLACIER: "GLACIER", - GLACIER_IR: "GLACIER_IR", - INTELLIGENT_TIERING: "INTELLIGENT_TIERING", - ONEZONE_IA: "ONEZONE_IA", - OUTPOSTS: "OUTPOSTS", - REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY", - SNOW: "SNOW", - STANDARD: "STANDARD", - STANDARD_IA: "STANDARD_IA" - }; - exports2.OptionalObjectAttributes = { - RESTORE_STATUS: "RestoreStatus" - }; - var NoSuchBucket = class _NoSuchBucket extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "NoSuchBucket", - $fault: "client", - ...opts - }); - this.name = "NoSuchBucket"; - this.$fault = "client"; - Object.setPrototypeOf(this, _NoSuchBucket.prototype); - } - }; - exports2.NoSuchBucket = NoSuchBucket; - exports2.ObjectVersionStorageClass = { - STANDARD: "STANDARD" - }; - exports2.MFADelete = { - Disabled: "Disabled", - Enabled: "Enabled" - }; - var CompleteMultipartUploadOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CompleteMultipartUploadOutputFilterSensitiveLog = CompleteMultipartUploadOutputFilterSensitiveLog; - var CompleteMultipartUploadRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CompleteMultipartUploadRequestFilterSensitiveLog = CompleteMultipartUploadRequestFilterSensitiveLog; - var CopyObjectOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CopyObjectOutputFilterSensitiveLog = CopyObjectOutputFilterSensitiveLog; - var CopyObjectRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING }, - ...obj.CopySourceSSECustomerKey && { CopySourceSSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CopyObjectRequestFilterSensitiveLog = CopyObjectRequestFilterSensitiveLog; - var CreateMultipartUploadOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CreateMultipartUploadOutputFilterSensitiveLog = CreateMultipartUploadOutputFilterSensitiveLog; - var CreateMultipartUploadRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING } - }); - exports2.CreateMultipartUploadRequestFilterSensitiveLog = CreateMultipartUploadRequestFilterSensitiveLog; - var ServerSideEncryptionByDefaultFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.KMSMasterKeyID && { KMSMasterKeyID: smithy_client_1.SENSITIVE_STRING } - }); - exports2.ServerSideEncryptionByDefaultFilterSensitiveLog = ServerSideEncryptionByDefaultFilterSensitiveLog; - var ServerSideEncryptionRuleFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.ApplyServerSideEncryptionByDefault && { - ApplyServerSideEncryptionByDefault: (0, exports2.ServerSideEncryptionByDefaultFilterSensitiveLog)(obj.ApplyServerSideEncryptionByDefault) - } - }); - exports2.ServerSideEncryptionRuleFilterSensitiveLog = ServerSideEncryptionRuleFilterSensitiveLog; - var ServerSideEncryptionConfigurationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Rules && { Rules: obj.Rules.map((item) => (0, exports2.ServerSideEncryptionRuleFilterSensitiveLog)(item)) } - }); - exports2.ServerSideEncryptionConfigurationFilterSensitiveLog = ServerSideEncryptionConfigurationFilterSensitiveLog; - var GetBucketEncryptionOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.ServerSideEncryptionConfiguration && { - ServerSideEncryptionConfiguration: (0, exports2.ServerSideEncryptionConfigurationFilterSensitiveLog)(obj.ServerSideEncryptionConfiguration) - } - }); - exports2.GetBucketEncryptionOutputFilterSensitiveLog = GetBucketEncryptionOutputFilterSensitiveLog; - var SSEKMSFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.KeyId && { KeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.SSEKMSFilterSensitiveLog = SSEKMSFilterSensitiveLog; - var InventoryEncryptionFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMS && { SSEKMS: (0, exports2.SSEKMSFilterSensitiveLog)(obj.SSEKMS) } - }); - exports2.InventoryEncryptionFilterSensitiveLog = InventoryEncryptionFilterSensitiveLog; - var InventoryS3BucketDestinationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Encryption && { Encryption: (0, exports2.InventoryEncryptionFilterSensitiveLog)(obj.Encryption) } - }); - exports2.InventoryS3BucketDestinationFilterSensitiveLog = InventoryS3BucketDestinationFilterSensitiveLog; - var InventoryDestinationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.S3BucketDestination && { - S3BucketDestination: (0, exports2.InventoryS3BucketDestinationFilterSensitiveLog)(obj.S3BucketDestination) - } - }); - exports2.InventoryDestinationFilterSensitiveLog = InventoryDestinationFilterSensitiveLog; - var InventoryConfigurationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Destination && { Destination: (0, exports2.InventoryDestinationFilterSensitiveLog)(obj.Destination) } - }); - exports2.InventoryConfigurationFilterSensitiveLog = InventoryConfigurationFilterSensitiveLog; - var GetBucketInventoryConfigurationOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.InventoryConfiguration && { - InventoryConfiguration: (0, exports2.InventoryConfigurationFilterSensitiveLog)(obj.InventoryConfiguration) - } - }); - exports2.GetBucketInventoryConfigurationOutputFilterSensitiveLog = GetBucketInventoryConfigurationOutputFilterSensitiveLog; - var GetObjectOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.GetObjectOutputFilterSensitiveLog = GetObjectOutputFilterSensitiveLog; - var GetObjectRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.GetObjectRequestFilterSensitiveLog = GetObjectRequestFilterSensitiveLog; - var GetObjectAttributesRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.GetObjectAttributesRequestFilterSensitiveLog = GetObjectAttributesRequestFilterSensitiveLog; - var GetObjectTorrentOutputFilterSensitiveLog = (obj) => ({ - ...obj - }); - exports2.GetObjectTorrentOutputFilterSensitiveLog = GetObjectTorrentOutputFilterSensitiveLog; - var HeadObjectOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.HeadObjectOutputFilterSensitiveLog = HeadObjectOutputFilterSensitiveLog; - var HeadObjectRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.HeadObjectRequestFilterSensitiveLog = HeadObjectRequestFilterSensitiveLog; - var ListBucketInventoryConfigurationsOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.InventoryConfigurationList && { - InventoryConfigurationList: obj.InventoryConfigurationList.map((item) => (0, exports2.InventoryConfigurationFilterSensitiveLog)(item)) - } - }); - exports2.ListBucketInventoryConfigurationsOutputFilterSensitiveLog = ListBucketInventoryConfigurationsOutputFilterSensitiveLog; - var ListPartsRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.ListPartsRequestFilterSensitiveLog = ListPartsRequestFilterSensitiveLog; - var PutBucketEncryptionRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.ServerSideEncryptionConfiguration && { - ServerSideEncryptionConfiguration: (0, exports2.ServerSideEncryptionConfigurationFilterSensitiveLog)(obj.ServerSideEncryptionConfiguration) - } - }); - exports2.PutBucketEncryptionRequestFilterSensitiveLog = PutBucketEncryptionRequestFilterSensitiveLog; - var PutBucketInventoryConfigurationRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.InventoryConfiguration && { - InventoryConfiguration: (0, exports2.InventoryConfigurationFilterSensitiveLog)(obj.InventoryConfiguration) - } - }); - exports2.PutBucketInventoryConfigurationRequestFilterSensitiveLog = PutBucketInventoryConfigurationRequestFilterSensitiveLog; - var PutObjectOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING } - }); - exports2.PutObjectOutputFilterSensitiveLog = PutObjectOutputFilterSensitiveLog; - var PutObjectRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING }, - ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: smithy_client_1.SENSITIVE_STRING } - }); - exports2.PutObjectRequestFilterSensitiveLog = PutObjectRequestFilterSensitiveLog; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/models/models_1.js -var require_models_1 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/models/models_1.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.WriteGetObjectResponseRequestFilterSensitiveLog = exports2.UploadPartCopyRequestFilterSensitiveLog = exports2.UploadPartCopyOutputFilterSensitiveLog = exports2.UploadPartRequestFilterSensitiveLog = exports2.UploadPartOutputFilterSensitiveLog = exports2.SelectObjectContentRequestFilterSensitiveLog = exports2.SelectObjectContentOutputFilterSensitiveLog = exports2.SelectObjectContentEventStreamFilterSensitiveLog = exports2.RestoreObjectRequestFilterSensitiveLog = exports2.RestoreRequestFilterSensitiveLog = exports2.OutputLocationFilterSensitiveLog = exports2.S3LocationFilterSensitiveLog = exports2.EncryptionFilterSensitiveLog = exports2.SelectObjectContentEventStream = exports2.RestoreRequestType = exports2.QuoteFields = exports2.JSONType = exports2.FileHeaderInfo = exports2.CompressionType = exports2.ExpressionType = exports2.Tier = exports2.ObjectAlreadyInActiveTierError = void 0; - var smithy_client_1 = require_dist_cjs16(); - var S3ServiceException_1 = require_S3ServiceException(); - var ObjectAlreadyInActiveTierError = class _ObjectAlreadyInActiveTierError extends S3ServiceException_1.S3ServiceException { - constructor(opts) { - super({ - name: "ObjectAlreadyInActiveTierError", - $fault: "client", - ...opts - }); - this.name = "ObjectAlreadyInActiveTierError"; - this.$fault = "client"; - Object.setPrototypeOf(this, _ObjectAlreadyInActiveTierError.prototype); - } - }; - exports2.ObjectAlreadyInActiveTierError = ObjectAlreadyInActiveTierError; - exports2.Tier = { - Bulk: "Bulk", - Expedited: "Expedited", - Standard: "Standard" - }; - exports2.ExpressionType = { - SQL: "SQL" - }; - exports2.CompressionType = { - BZIP2: "BZIP2", - GZIP: "GZIP", - NONE: "NONE" - }; - exports2.FileHeaderInfo = { - IGNORE: "IGNORE", - NONE: "NONE", - USE: "USE" - }; - exports2.JSONType = { - DOCUMENT: "DOCUMENT", - LINES: "LINES" - }; - exports2.QuoteFields = { - ALWAYS: "ALWAYS", - ASNEEDED: "ASNEEDED" - }; - exports2.RestoreRequestType = { - SELECT: "SELECT" - }; - var SelectObjectContentEventStream; - (function(SelectObjectContentEventStream2) { - SelectObjectContentEventStream2.visit = (value, visitor) => { - if (value.Records !== void 0) - return visitor.Records(value.Records); - if (value.Stats !== void 0) - return visitor.Stats(value.Stats); - if (value.Progress !== void 0) - return visitor.Progress(value.Progress); - if (value.Cont !== void 0) - return visitor.Cont(value.Cont); - if (value.End !== void 0) - return visitor.End(value.End); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; - })(SelectObjectContentEventStream = exports2.SelectObjectContentEventStream || (exports2.SelectObjectContentEventStream = {})); - var EncryptionFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.KMSKeyId && { KMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.EncryptionFilterSensitiveLog = EncryptionFilterSensitiveLog; - var S3LocationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Encryption && { Encryption: (0, exports2.EncryptionFilterSensitiveLog)(obj.Encryption) } - }); - exports2.S3LocationFilterSensitiveLog = S3LocationFilterSensitiveLog; - var OutputLocationFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.S3 && { S3: (0, exports2.S3LocationFilterSensitiveLog)(obj.S3) } - }); - exports2.OutputLocationFilterSensitiveLog = OutputLocationFilterSensitiveLog; - var RestoreRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.OutputLocation && { OutputLocation: (0, exports2.OutputLocationFilterSensitiveLog)(obj.OutputLocation) } - }); - exports2.RestoreRequestFilterSensitiveLog = RestoreRequestFilterSensitiveLog; - var RestoreObjectRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.RestoreRequest && { RestoreRequest: (0, exports2.RestoreRequestFilterSensitiveLog)(obj.RestoreRequest) } - }); - exports2.RestoreObjectRequestFilterSensitiveLog = RestoreObjectRequestFilterSensitiveLog; - var SelectObjectContentEventStreamFilterSensitiveLog = (obj) => { - if (obj.Records !== void 0) - return { Records: obj.Records }; - if (obj.Stats !== void 0) - return { Stats: obj.Stats }; - if (obj.Progress !== void 0) - return { Progress: obj.Progress }; - if (obj.Cont !== void 0) - return { Cont: obj.Cont }; - if (obj.End !== void 0) - return { End: obj.End }; - if (obj.$unknown !== void 0) - return { [obj.$unknown[0]]: "UNKNOWN" }; - }; - exports2.SelectObjectContentEventStreamFilterSensitiveLog = SelectObjectContentEventStreamFilterSensitiveLog; - var SelectObjectContentOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.Payload && { Payload: "STREAMING_CONTENT" } - }); - exports2.SelectObjectContentOutputFilterSensitiveLog = SelectObjectContentOutputFilterSensitiveLog; - var SelectObjectContentRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.SelectObjectContentRequestFilterSensitiveLog = SelectObjectContentRequestFilterSensitiveLog; - var UploadPartOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.UploadPartOutputFilterSensitiveLog = UploadPartOutputFilterSensitiveLog; - var UploadPartRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.UploadPartRequestFilterSensitiveLog = UploadPartRequestFilterSensitiveLog; - var UploadPartCopyOutputFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.UploadPartCopyOutputFilterSensitiveLog = UploadPartCopyOutputFilterSensitiveLog; - var UploadPartCopyRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSECustomerKey && { SSECustomerKey: smithy_client_1.SENSITIVE_STRING }, - ...obj.CopySourceSSECustomerKey && { CopySourceSSECustomerKey: smithy_client_1.SENSITIVE_STRING } - }); - exports2.UploadPartCopyRequestFilterSensitiveLog = UploadPartCopyRequestFilterSensitiveLog; - var WriteGetObjectResponseRequestFilterSensitiveLog = (obj) => ({ - ...obj, - ...obj.SSEKMSKeyId && { SSEKMSKeyId: smithy_client_1.SENSITIVE_STRING } - }); - exports2.WriteGetObjectResponseRequestFilterSensitiveLog = WriteGetObjectResponseRequestFilterSensitiveLog; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js -var require_Aws_restXml = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.se_GetObjectTorrentCommand = exports2.se_GetObjectTaggingCommand = exports2.se_GetObjectRetentionCommand = exports2.se_GetObjectLockConfigurationCommand = exports2.se_GetObjectLegalHoldCommand = exports2.se_GetObjectAttributesCommand = exports2.se_GetObjectAclCommand = exports2.se_GetObjectCommand = exports2.se_GetBucketWebsiteCommand = exports2.se_GetBucketVersioningCommand = exports2.se_GetBucketTaggingCommand = exports2.se_GetBucketRequestPaymentCommand = exports2.se_GetBucketReplicationCommand = exports2.se_GetBucketPolicyStatusCommand = exports2.se_GetBucketPolicyCommand = exports2.se_GetBucketOwnershipControlsCommand = exports2.se_GetBucketNotificationConfigurationCommand = exports2.se_GetBucketMetricsConfigurationCommand = exports2.se_GetBucketLoggingCommand = exports2.se_GetBucketLocationCommand = exports2.se_GetBucketLifecycleConfigurationCommand = exports2.se_GetBucketInventoryConfigurationCommand = exports2.se_GetBucketIntelligentTieringConfigurationCommand = exports2.se_GetBucketEncryptionCommand = exports2.se_GetBucketCorsCommand = exports2.se_GetBucketAnalyticsConfigurationCommand = exports2.se_GetBucketAclCommand = exports2.se_GetBucketAccelerateConfigurationCommand = exports2.se_DeletePublicAccessBlockCommand = exports2.se_DeleteObjectTaggingCommand = exports2.se_DeleteObjectsCommand = exports2.se_DeleteObjectCommand = exports2.se_DeleteBucketWebsiteCommand = exports2.se_DeleteBucketTaggingCommand = exports2.se_DeleteBucketReplicationCommand = exports2.se_DeleteBucketPolicyCommand = exports2.se_DeleteBucketOwnershipControlsCommand = exports2.se_DeleteBucketMetricsConfigurationCommand = exports2.se_DeleteBucketLifecycleCommand = exports2.se_DeleteBucketInventoryConfigurationCommand = exports2.se_DeleteBucketIntelligentTieringConfigurationCommand = exports2.se_DeleteBucketEncryptionCommand = exports2.se_DeleteBucketCorsCommand = exports2.se_DeleteBucketAnalyticsConfigurationCommand = exports2.se_DeleteBucketCommand = exports2.se_CreateMultipartUploadCommand = exports2.se_CreateBucketCommand = exports2.se_CopyObjectCommand = exports2.se_CompleteMultipartUploadCommand = exports2.se_AbortMultipartUploadCommand = void 0; - exports2.de_DeleteBucketAnalyticsConfigurationCommand = exports2.de_DeleteBucketCommand = exports2.de_CreateMultipartUploadCommand = exports2.de_CreateBucketCommand = exports2.de_CopyObjectCommand = exports2.de_CompleteMultipartUploadCommand = exports2.de_AbortMultipartUploadCommand = exports2.se_WriteGetObjectResponseCommand = exports2.se_UploadPartCopyCommand = exports2.se_UploadPartCommand = exports2.se_SelectObjectContentCommand = exports2.se_RestoreObjectCommand = exports2.se_PutPublicAccessBlockCommand = exports2.se_PutObjectTaggingCommand = exports2.se_PutObjectRetentionCommand = exports2.se_PutObjectLockConfigurationCommand = exports2.se_PutObjectLegalHoldCommand = exports2.se_PutObjectAclCommand = exports2.se_PutObjectCommand = exports2.se_PutBucketWebsiteCommand = exports2.se_PutBucketVersioningCommand = exports2.se_PutBucketTaggingCommand = exports2.se_PutBucketRequestPaymentCommand = exports2.se_PutBucketReplicationCommand = exports2.se_PutBucketPolicyCommand = exports2.se_PutBucketOwnershipControlsCommand = exports2.se_PutBucketNotificationConfigurationCommand = exports2.se_PutBucketMetricsConfigurationCommand = exports2.se_PutBucketLoggingCommand = exports2.se_PutBucketLifecycleConfigurationCommand = exports2.se_PutBucketInventoryConfigurationCommand = exports2.se_PutBucketIntelligentTieringConfigurationCommand = exports2.se_PutBucketEncryptionCommand = exports2.se_PutBucketCorsCommand = exports2.se_PutBucketAnalyticsConfigurationCommand = exports2.se_PutBucketAclCommand = exports2.se_PutBucketAccelerateConfigurationCommand = exports2.se_ListPartsCommand = exports2.se_ListObjectVersionsCommand = exports2.se_ListObjectsV2Command = exports2.se_ListObjectsCommand = exports2.se_ListMultipartUploadsCommand = exports2.se_ListBucketsCommand = exports2.se_ListBucketMetricsConfigurationsCommand = exports2.se_ListBucketInventoryConfigurationsCommand = exports2.se_ListBucketIntelligentTieringConfigurationsCommand = exports2.se_ListBucketAnalyticsConfigurationsCommand = exports2.se_HeadObjectCommand = exports2.se_HeadBucketCommand = exports2.se_GetPublicAccessBlockCommand = void 0; - exports2.de_ListBucketMetricsConfigurationsCommand = exports2.de_ListBucketInventoryConfigurationsCommand = exports2.de_ListBucketIntelligentTieringConfigurationsCommand = exports2.de_ListBucketAnalyticsConfigurationsCommand = exports2.de_HeadObjectCommand = exports2.de_HeadBucketCommand = exports2.de_GetPublicAccessBlockCommand = exports2.de_GetObjectTorrentCommand = exports2.de_GetObjectTaggingCommand = exports2.de_GetObjectRetentionCommand = exports2.de_GetObjectLockConfigurationCommand = exports2.de_GetObjectLegalHoldCommand = exports2.de_GetObjectAttributesCommand = exports2.de_GetObjectAclCommand = exports2.de_GetObjectCommand = exports2.de_GetBucketWebsiteCommand = exports2.de_GetBucketVersioningCommand = exports2.de_GetBucketTaggingCommand = exports2.de_GetBucketRequestPaymentCommand = exports2.de_GetBucketReplicationCommand = exports2.de_GetBucketPolicyStatusCommand = exports2.de_GetBucketPolicyCommand = exports2.de_GetBucketOwnershipControlsCommand = exports2.de_GetBucketNotificationConfigurationCommand = exports2.de_GetBucketMetricsConfigurationCommand = exports2.de_GetBucketLoggingCommand = exports2.de_GetBucketLocationCommand = exports2.de_GetBucketLifecycleConfigurationCommand = exports2.de_GetBucketInventoryConfigurationCommand = exports2.de_GetBucketIntelligentTieringConfigurationCommand = exports2.de_GetBucketEncryptionCommand = exports2.de_GetBucketCorsCommand = exports2.de_GetBucketAnalyticsConfigurationCommand = exports2.de_GetBucketAclCommand = exports2.de_GetBucketAccelerateConfigurationCommand = exports2.de_DeletePublicAccessBlockCommand = exports2.de_DeleteObjectTaggingCommand = exports2.de_DeleteObjectsCommand = exports2.de_DeleteObjectCommand = exports2.de_DeleteBucketWebsiteCommand = exports2.de_DeleteBucketTaggingCommand = exports2.de_DeleteBucketReplicationCommand = exports2.de_DeleteBucketPolicyCommand = exports2.de_DeleteBucketOwnershipControlsCommand = exports2.de_DeleteBucketMetricsConfigurationCommand = exports2.de_DeleteBucketLifecycleCommand = exports2.de_DeleteBucketInventoryConfigurationCommand = exports2.de_DeleteBucketIntelligentTieringConfigurationCommand = exports2.de_DeleteBucketEncryptionCommand = exports2.de_DeleteBucketCorsCommand = void 0; - exports2.de_WriteGetObjectResponseCommand = exports2.de_UploadPartCopyCommand = exports2.de_UploadPartCommand = exports2.de_SelectObjectContentCommand = exports2.de_RestoreObjectCommand = exports2.de_PutPublicAccessBlockCommand = exports2.de_PutObjectTaggingCommand = exports2.de_PutObjectRetentionCommand = exports2.de_PutObjectLockConfigurationCommand = exports2.de_PutObjectLegalHoldCommand = exports2.de_PutObjectAclCommand = exports2.de_PutObjectCommand = exports2.de_PutBucketWebsiteCommand = exports2.de_PutBucketVersioningCommand = exports2.de_PutBucketTaggingCommand = exports2.de_PutBucketRequestPaymentCommand = exports2.de_PutBucketReplicationCommand = exports2.de_PutBucketPolicyCommand = exports2.de_PutBucketOwnershipControlsCommand = exports2.de_PutBucketNotificationConfigurationCommand = exports2.de_PutBucketMetricsConfigurationCommand = exports2.de_PutBucketLoggingCommand = exports2.de_PutBucketLifecycleConfigurationCommand = exports2.de_PutBucketInventoryConfigurationCommand = exports2.de_PutBucketIntelligentTieringConfigurationCommand = exports2.de_PutBucketEncryptionCommand = exports2.de_PutBucketCorsCommand = exports2.de_PutBucketAnalyticsConfigurationCommand = exports2.de_PutBucketAclCommand = exports2.de_PutBucketAccelerateConfigurationCommand = exports2.de_ListPartsCommand = exports2.de_ListObjectVersionsCommand = exports2.de_ListObjectsV2Command = exports2.de_ListObjectsCommand = exports2.de_ListMultipartUploadsCommand = exports2.de_ListBucketsCommand = void 0; - var xml_builder_1 = require_dist_cjs63(); - var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs16(); - var fast_xml_parser_1 = require_fxp(); - var models_0_1 = require_models_03(); - var models_1_1 = require_models_1(); - var S3ServiceException_1 = require_S3ServiceException(); - var se_AbortMultipartUploadCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "AbortMultipartUpload"], - uploadId: [, (0, smithy_client_1.expectNonNull)(input.UploadId, `UploadId`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_AbortMultipartUploadCommand = se_AbortMultipartUploadCommand; - var se_CompleteMultipartUploadCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-checksum-crc32": input.ChecksumCRC32, - "x-amz-checksum-crc32c": input.ChecksumCRC32C, - "x-amz-checksum-sha1": input.ChecksumSHA1, - "x-amz-checksum-sha256": input.ChecksumSHA256, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5 - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "CompleteMultipartUpload"], - uploadId: [, (0, smithy_client_1.expectNonNull)(input.UploadId, `UploadId`)] - }); - let body; - if (input.MultipartUpload !== void 0) { - body = se_CompletedMultipartUpload(input.MultipartUpload, context); - } - let contents; - if (input.MultipartUpload !== void 0) { - contents = se_CompletedMultipartUpload(input.MultipartUpload, context); - contents = contents.withName("CompleteMultipartUpload"); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_CompleteMultipartUploadCommand = se_CompleteMultipartUploadCommand; - var se_CopyObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-acl": input.ACL, - "cache-control": input.CacheControl, - "x-amz-checksum-algorithm": input.ChecksumAlgorithm, - "content-disposition": input.ContentDisposition, - "content-encoding": input.ContentEncoding, - "content-language": input.ContentLanguage, - "content-type": input.ContentType, - "x-amz-copy-source": input.CopySource, - "x-amz-copy-source-if-match": input.CopySourceIfMatch, - "x-amz-copy-source-if-modified-since": [ - () => isSerializableHeaderValue(input.CopySourceIfModifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.CopySourceIfModifiedSince).toString() - ], - "x-amz-copy-source-if-none-match": input.CopySourceIfNoneMatch, - "x-amz-copy-source-if-unmodified-since": [ - () => isSerializableHeaderValue(input.CopySourceIfUnmodifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.CopySourceIfUnmodifiedSince).toString() - ], - expires: [() => isSerializableHeaderValue(input.Expires), () => (0, smithy_client_1.dateToUtcString)(input.Expires).toString()], - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-metadata-directive": input.MetadataDirective, - "x-amz-tagging-directive": input.TaggingDirective, - "x-amz-server-side-encryption": input.ServerSideEncryption, - "x-amz-storage-class": input.StorageClass, - "x-amz-website-redirect-location": input.WebsiteRedirectLocation, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-server-side-encryption-aws-kms-key-id": input.SSEKMSKeyId, - "x-amz-server-side-encryption-context": input.SSEKMSEncryptionContext, - "x-amz-server-side-encryption-bucket-key-enabled": [ - () => isSerializableHeaderValue(input.BucketKeyEnabled), - () => input.BucketKeyEnabled.toString() - ], - "x-amz-copy-source-server-side-encryption-customer-algorithm": input.CopySourceSSECustomerAlgorithm, - "x-amz-copy-source-server-side-encryption-customer-key": input.CopySourceSSECustomerKey, - "x-amz-copy-source-server-side-encryption-customer-key-md5": input.CopySourceSSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-tagging": input.Tagging, - "x-amz-object-lock-mode": input.ObjectLockMode, - "x-amz-object-lock-retain-until-date": [ - () => isSerializableHeaderValue(input.ObjectLockRetainUntilDate), - () => (input.ObjectLockRetainUntilDate.toISOString().split(".")[0] + "Z").toString() - ], - "x-amz-object-lock-legal-hold": input.ObjectLockLegalHoldStatus, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-source-expected-bucket-owner": input.ExpectedSourceBucketOwner, - ...input.Metadata !== void 0 && Object.keys(input.Metadata).reduce((acc, suffix) => { - acc[`x-amz-meta-${suffix.toLowerCase()}`] = input.Metadata[suffix]; - return acc; - }, {}) - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "CopyObject"] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_CopyObjectCommand = se_CopyObjectCommand; - var se_CreateBucketCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-acl": input.ACL, - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write": input.GrantWrite, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-bucket-object-lock-enabled": [ - () => isSerializableHeaderValue(input.ObjectLockEnabledForBucket), - () => input.ObjectLockEnabledForBucket.toString() - ], - "x-amz-object-ownership": input.ObjectOwnership - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - let body; - if (input.CreateBucketConfiguration !== void 0) { - body = se_CreateBucketConfiguration(input.CreateBucketConfiguration, context); - } - let contents; - if (input.CreateBucketConfiguration !== void 0) { - contents = se_CreateBucketConfiguration(input.CreateBucketConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - body - }); - }; - exports2.se_CreateBucketCommand = se_CreateBucketCommand; - var se_CreateMultipartUploadCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-acl": input.ACL, - "cache-control": input.CacheControl, - "content-disposition": input.ContentDisposition, - "content-encoding": input.ContentEncoding, - "content-language": input.ContentLanguage, - "content-type": input.ContentType, - expires: [() => isSerializableHeaderValue(input.Expires), () => (0, smithy_client_1.dateToUtcString)(input.Expires).toString()], - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-server-side-encryption": input.ServerSideEncryption, - "x-amz-storage-class": input.StorageClass, - "x-amz-website-redirect-location": input.WebsiteRedirectLocation, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-server-side-encryption-aws-kms-key-id": input.SSEKMSKeyId, - "x-amz-server-side-encryption-context": input.SSEKMSEncryptionContext, - "x-amz-server-side-encryption-bucket-key-enabled": [ - () => isSerializableHeaderValue(input.BucketKeyEnabled), - () => input.BucketKeyEnabled.toString() - ], - "x-amz-request-payer": input.RequestPayer, - "x-amz-tagging": input.Tagging, - "x-amz-object-lock-mode": input.ObjectLockMode, - "x-amz-object-lock-retain-until-date": [ - () => isSerializableHeaderValue(input.ObjectLockRetainUntilDate), - () => (input.ObjectLockRetainUntilDate.toISOString().split(".")[0] + "Z").toString() - ], - "x-amz-object-lock-legal-hold": input.ObjectLockLegalHoldStatus, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-checksum-algorithm": input.ChecksumAlgorithm, - ...input.Metadata !== void 0 && Object.keys(input.Metadata).reduce((acc, suffix) => { - acc[`x-amz-meta-${suffix.toLowerCase()}`] = input.Metadata[suffix]; - return acc; - }, {}) - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - uploads: [, ""], - "x-id": [, "CreateMultipartUpload"] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_CreateMultipartUploadCommand = se_CreateMultipartUploadCommand; - var se_DeleteBucketCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - body - }); - }; - exports2.se_DeleteBucketCommand = se_DeleteBucketCommand; - var se_DeleteBucketAnalyticsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - analytics: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketAnalyticsConfigurationCommand = se_DeleteBucketAnalyticsConfigurationCommand; - var se_DeleteBucketCorsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - cors: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketCorsCommand = se_DeleteBucketCorsCommand; - var se_DeleteBucketEncryptionCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - encryption: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketEncryptionCommand = se_DeleteBucketEncryptionCommand; - var se_DeleteBucketIntelligentTieringConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = {}; - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "intelligent-tiering": [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketIntelligentTieringConfigurationCommand = se_DeleteBucketIntelligentTieringConfigurationCommand; - var se_DeleteBucketInventoryConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - inventory: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketInventoryConfigurationCommand = se_DeleteBucketInventoryConfigurationCommand; - var se_DeleteBucketLifecycleCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - lifecycle: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketLifecycleCommand = se_DeleteBucketLifecycleCommand; - var se_DeleteBucketMetricsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - metrics: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketMetricsConfigurationCommand = se_DeleteBucketMetricsConfigurationCommand; - var se_DeleteBucketOwnershipControlsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - ownershipControls: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketOwnershipControlsCommand = se_DeleteBucketOwnershipControlsCommand; - var se_DeleteBucketPolicyCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - policy: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketPolicyCommand = se_DeleteBucketPolicyCommand; - var se_DeleteBucketReplicationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - replication: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketReplicationCommand = se_DeleteBucketReplicationCommand; - var se_DeleteBucketTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - tagging: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketTaggingCommand = se_DeleteBucketTaggingCommand; - var se_DeleteBucketWebsiteCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - website: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteBucketWebsiteCommand = se_DeleteBucketWebsiteCommand; - var se_DeleteObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-mfa": input.MFA, - "x-amz-request-payer": input.RequestPayer, - "x-amz-bypass-governance-retention": [ - () => isSerializableHeaderValue(input.BypassGovernanceRetention), - () => input.BypassGovernanceRetention.toString() - ], - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "DeleteObject"], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteObjectCommand = se_DeleteObjectCommand; - var se_DeleteObjectsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-mfa": input.MFA, - "x-amz-request-payer": input.RequestPayer, - "x-amz-bypass-governance-retention": [ - () => isSerializableHeaderValue(input.BypassGovernanceRetention), - () => input.BypassGovernanceRetention.toString() - ], - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - delete: [, ""], - "x-id": [, "DeleteObjects"] - }); - let body; - if (input.Delete !== void 0) { - body = se_Delete(input.Delete, context); - } - let contents; - if (input.Delete !== void 0) { - contents = se_Delete(input.Delete, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteObjectsCommand = se_DeleteObjectsCommand; - var se_DeleteObjectTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - tagging: [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeleteObjectTaggingCommand = se_DeleteObjectTaggingCommand; - var se_DeletePublicAccessBlockCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - publicAccessBlock: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "DELETE", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_DeletePublicAccessBlockCommand = se_DeletePublicAccessBlockCommand; - var se_GetBucketAccelerateConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-request-payer": input.RequestPayer - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - accelerate: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketAccelerateConfigurationCommand = se_GetBucketAccelerateConfigurationCommand; - var se_GetBucketAclCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - acl: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketAclCommand = se_GetBucketAclCommand; - var se_GetBucketAnalyticsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - analytics: [, ""], - "x-id": [, "GetBucketAnalyticsConfiguration"], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketAnalyticsConfigurationCommand = se_GetBucketAnalyticsConfigurationCommand; - var se_GetBucketCorsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - cors: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketCorsCommand = se_GetBucketCorsCommand; - var se_GetBucketEncryptionCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - encryption: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketEncryptionCommand = se_GetBucketEncryptionCommand; - var se_GetBucketIntelligentTieringConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = {}; - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "intelligent-tiering": [, ""], - "x-id": [, "GetBucketIntelligentTieringConfiguration"], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketIntelligentTieringConfigurationCommand = se_GetBucketIntelligentTieringConfigurationCommand; - var se_GetBucketInventoryConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - inventory: [, ""], - "x-id": [, "GetBucketInventoryConfiguration"], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketInventoryConfigurationCommand = se_GetBucketInventoryConfigurationCommand; - var se_GetBucketLifecycleConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - lifecycle: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketLifecycleConfigurationCommand = se_GetBucketLifecycleConfigurationCommand; - var se_GetBucketLocationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - location: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketLocationCommand = se_GetBucketLocationCommand; - var se_GetBucketLoggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - logging: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketLoggingCommand = se_GetBucketLoggingCommand; - var se_GetBucketMetricsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - metrics: [, ""], - "x-id": [, "GetBucketMetricsConfiguration"], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketMetricsConfigurationCommand = se_GetBucketMetricsConfigurationCommand; - var se_GetBucketNotificationConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - notification: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketNotificationConfigurationCommand = se_GetBucketNotificationConfigurationCommand; - var se_GetBucketOwnershipControlsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - ownershipControls: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketOwnershipControlsCommand = se_GetBucketOwnershipControlsCommand; - var se_GetBucketPolicyCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - policy: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketPolicyCommand = se_GetBucketPolicyCommand; - var se_GetBucketPolicyStatusCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - policyStatus: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketPolicyStatusCommand = se_GetBucketPolicyStatusCommand; - var se_GetBucketReplicationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - replication: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketReplicationCommand = se_GetBucketReplicationCommand; - var se_GetBucketRequestPaymentCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - requestPayment: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketRequestPaymentCommand = se_GetBucketRequestPaymentCommand; - var se_GetBucketTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - tagging: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketTaggingCommand = se_GetBucketTaggingCommand; - var se_GetBucketVersioningCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - versioning: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketVersioningCommand = se_GetBucketVersioningCommand; - var se_GetBucketWebsiteCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - website: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetBucketWebsiteCommand = se_GetBucketWebsiteCommand; - var se_GetObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "if-match": input.IfMatch, - "if-modified-since": [ - () => isSerializableHeaderValue(input.IfModifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.IfModifiedSince).toString() - ], - "if-none-match": input.IfNoneMatch, - "if-unmodified-since": [ - () => isSerializableHeaderValue(input.IfUnmodifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.IfUnmodifiedSince).toString() - ], - range: input.Range, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-checksum-mode": input.ChecksumMode - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "GetObject"], - "response-cache-control": [, input.ResponseCacheControl], - "response-content-disposition": [, input.ResponseContentDisposition], - "response-content-encoding": [, input.ResponseContentEncoding], - "response-content-language": [, input.ResponseContentLanguage], - "response-content-type": [, input.ResponseContentType], - "response-expires": [ - () => input.ResponseExpires !== void 0, - () => (0, smithy_client_1.dateToUtcString)(input.ResponseExpires).toString() - ], - versionId: [, input.VersionId], - partNumber: [() => input.PartNumber !== void 0, () => input.PartNumber.toString()] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectCommand = se_GetObjectCommand; - var se_GetObjectAclCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - acl: [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectAclCommand = se_GetObjectAclCommand; - var se_GetObjectAttributesCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-max-parts": [() => isSerializableHeaderValue(input.MaxParts), () => input.MaxParts.toString()], - "x-amz-part-number-marker": input.PartNumberMarker, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-object-attributes": [ - () => isSerializableHeaderValue(input.ObjectAttributes), - () => (input.ObjectAttributes || []).map((_entry) => _entry).join(", ") - ] - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - attributes: [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectAttributesCommand = se_GetObjectAttributesCommand; - var se_GetObjectLegalHoldCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "legal-hold": [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectLegalHoldCommand = se_GetObjectLegalHoldCommand; - var se_GetObjectLockConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "object-lock": [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectLockConfigurationCommand = se_GetObjectLockConfigurationCommand; - var se_GetObjectRetentionCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - retention: [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectRetentionCommand = se_GetObjectRetentionCommand; - var se_GetObjectTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-request-payer": input.RequestPayer - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - tagging: [, ""], - versionId: [, input.VersionId] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectTaggingCommand = se_GetObjectTaggingCommand; - var se_GetObjectTorrentCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - torrent: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetObjectTorrentCommand = se_GetObjectTorrentCommand; - var se_GetPublicAccessBlockCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - publicAccessBlock: [, ""] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_GetPublicAccessBlockCommand = se_GetPublicAccessBlockCommand; - var se_HeadBucketCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "HEAD", - headers, - path: resolvedPath, - body - }); - }; - exports2.se_HeadBucketCommand = se_HeadBucketCommand; - var se_HeadObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "if-match": input.IfMatch, - "if-modified-since": [ - () => isSerializableHeaderValue(input.IfModifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.IfModifiedSince).toString() - ], - "if-none-match": input.IfNoneMatch, - "if-unmodified-since": [ - () => isSerializableHeaderValue(input.IfUnmodifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.IfUnmodifiedSince).toString() - ], - range: input.Range, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-checksum-mode": input.ChecksumMode - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - versionId: [, input.VersionId], - partNumber: [() => input.PartNumber !== void 0, () => input.PartNumber.toString()] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "HEAD", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_HeadObjectCommand = se_HeadObjectCommand; - var se_ListBucketAnalyticsConfigurationsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - analytics: [, ""], - "x-id": [, "ListBucketAnalyticsConfigurations"], - "continuation-token": [, input.ContinuationToken] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListBucketAnalyticsConfigurationsCommand = se_ListBucketAnalyticsConfigurationsCommand; - var se_ListBucketIntelligentTieringConfigurationsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = {}; - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "intelligent-tiering": [, ""], - "x-id": [, "ListBucketIntelligentTieringConfigurations"], - "continuation-token": [, input.ContinuationToken] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListBucketIntelligentTieringConfigurationsCommand = se_ListBucketIntelligentTieringConfigurationsCommand; - var se_ListBucketInventoryConfigurationsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - inventory: [, ""], - "x-id": [, "ListBucketInventoryConfigurations"], - "continuation-token": [, input.ContinuationToken] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListBucketInventoryConfigurationsCommand = se_ListBucketInventoryConfigurationsCommand; - var se_ListBucketMetricsConfigurationsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - metrics: [, ""], - "x-id": [, "ListBucketMetricsConfigurations"], - "continuation-token": [, input.ContinuationToken] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListBucketMetricsConfigurationsCommand = se_ListBucketMetricsConfigurationsCommand; - var se_ListBucketsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = { - "content-type": "application/xml" - }; - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - let body; - body = ""; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - body - }); - }; - exports2.se_ListBucketsCommand = se_ListBucketsCommand; - var se_ListMultipartUploadsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-request-payer": input.RequestPayer - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - uploads: [, ""], - delimiter: [, input.Delimiter], - "encoding-type": [, input.EncodingType], - "key-marker": [, input.KeyMarker], - "max-uploads": [() => input.MaxUploads !== void 0, () => input.MaxUploads.toString()], - prefix: [, input.Prefix], - "upload-id-marker": [, input.UploadIdMarker] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListMultipartUploadsCommand = se_ListMultipartUploadsCommand; - var se_ListObjectsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-optional-object-attributes": [ - () => isSerializableHeaderValue(input.OptionalObjectAttributes), - () => (input.OptionalObjectAttributes || []).map((_entry) => _entry).join(", ") - ] - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - delimiter: [, input.Delimiter], - "encoding-type": [, input.EncodingType], - marker: [, input.Marker], - "max-keys": [() => input.MaxKeys !== void 0, () => input.MaxKeys.toString()], - prefix: [, input.Prefix] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListObjectsCommand = se_ListObjectsCommand; - var se_ListObjectsV2Command = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-optional-object-attributes": [ - () => isSerializableHeaderValue(input.OptionalObjectAttributes), - () => (input.OptionalObjectAttributes || []).map((_entry) => _entry).join(", ") - ] - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "list-type": [, "2"], - delimiter: [, input.Delimiter], - "encoding-type": [, input.EncodingType], - "max-keys": [() => input.MaxKeys !== void 0, () => input.MaxKeys.toString()], - prefix: [, input.Prefix], - "continuation-token": [, input.ContinuationToken], - "fetch-owner": [() => input.FetchOwner !== void 0, () => input.FetchOwner.toString()], - "start-after": [, input.StartAfter] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListObjectsV2Command = se_ListObjectsV2Command; - var se_ListObjectVersionsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-request-payer": input.RequestPayer, - "x-amz-optional-object-attributes": [ - () => isSerializableHeaderValue(input.OptionalObjectAttributes), - () => (input.OptionalObjectAttributes || []).map((_entry) => _entry).join(", ") - ] - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - versions: [, ""], - delimiter: [, input.Delimiter], - "encoding-type": [, input.EncodingType], - "key-marker": [, input.KeyMarker], - "max-keys": [() => input.MaxKeys !== void 0, () => input.MaxKeys.toString()], - prefix: [, input.Prefix], - "version-id-marker": [, input.VersionIdMarker] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListObjectVersionsCommand = se_ListObjectVersionsCommand; - var se_ListPartsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5 - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "ListParts"], - "max-parts": [() => input.MaxParts !== void 0, () => input.MaxParts.toString()], - "part-number-marker": [, input.PartNumberMarker], - uploadId: [, (0, smithy_client_1.expectNonNull)(input.UploadId, `UploadId`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "GET", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_ListPartsCommand = se_ListPartsCommand; - var se_PutBucketAccelerateConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - accelerate: [, ""] - }); - let body; - if (input.AccelerateConfiguration !== void 0) { - body = se_AccelerateConfiguration(input.AccelerateConfiguration, context); - } - let contents; - if (input.AccelerateConfiguration !== void 0) { - contents = se_AccelerateConfiguration(input.AccelerateConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketAccelerateConfigurationCommand = se_PutBucketAccelerateConfigurationCommand; - var se_PutBucketAclCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-acl": input.ACL, - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write": input.GrantWrite, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - acl: [, ""] - }); - let body; - if (input.AccessControlPolicy !== void 0) { - body = se_AccessControlPolicy(input.AccessControlPolicy, context); - } - let contents; - if (input.AccessControlPolicy !== void 0) { - contents = se_AccessControlPolicy(input.AccessControlPolicy, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketAclCommand = se_PutBucketAclCommand; - var se_PutBucketAnalyticsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - analytics: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - if (input.AnalyticsConfiguration !== void 0) { - body = se_AnalyticsConfiguration(input.AnalyticsConfiguration, context); - } - let contents; - if (input.AnalyticsConfiguration !== void 0) { - contents = se_AnalyticsConfiguration(input.AnalyticsConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketAnalyticsConfigurationCommand = se_PutBucketAnalyticsConfigurationCommand; - var se_PutBucketCorsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - cors: [, ""] - }); - let body; - if (input.CORSConfiguration !== void 0) { - body = se_CORSConfiguration(input.CORSConfiguration, context); - } - let contents; - if (input.CORSConfiguration !== void 0) { - contents = se_CORSConfiguration(input.CORSConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketCorsCommand = se_PutBucketCorsCommand; - var se_PutBucketEncryptionCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - encryption: [, ""] - }); - let body; - if (input.ServerSideEncryptionConfiguration !== void 0) { - body = se_ServerSideEncryptionConfiguration(input.ServerSideEncryptionConfiguration, context); - } - let contents; - if (input.ServerSideEncryptionConfiguration !== void 0) { - contents = se_ServerSideEncryptionConfiguration(input.ServerSideEncryptionConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketEncryptionCommand = se_PutBucketEncryptionCommand; - var se_PutBucketIntelligentTieringConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = { - "content-type": "application/xml" - }; - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "intelligent-tiering": [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - if (input.IntelligentTieringConfiguration !== void 0) { - body = se_IntelligentTieringConfiguration(input.IntelligentTieringConfiguration, context); - } - let contents; - if (input.IntelligentTieringConfiguration !== void 0) { - contents = se_IntelligentTieringConfiguration(input.IntelligentTieringConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketIntelligentTieringConfigurationCommand = se_PutBucketIntelligentTieringConfigurationCommand; - var se_PutBucketInventoryConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - inventory: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - if (input.InventoryConfiguration !== void 0) { - body = se_InventoryConfiguration(input.InventoryConfiguration, context); - } - let contents; - if (input.InventoryConfiguration !== void 0) { - contents = se_InventoryConfiguration(input.InventoryConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketInventoryConfigurationCommand = se_PutBucketInventoryConfigurationCommand; - var se_PutBucketLifecycleConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - lifecycle: [, ""] - }); - let body; - if (input.LifecycleConfiguration !== void 0) { - body = se_BucketLifecycleConfiguration(input.LifecycleConfiguration, context); - } - let contents; - if (input.LifecycleConfiguration !== void 0) { - contents = se_BucketLifecycleConfiguration(input.LifecycleConfiguration, context); - contents = contents.withName("LifecycleConfiguration"); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketLifecycleConfigurationCommand = se_PutBucketLifecycleConfigurationCommand; - var se_PutBucketLoggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - logging: [, ""] - }); - let body; - if (input.BucketLoggingStatus !== void 0) { - body = se_BucketLoggingStatus(input.BucketLoggingStatus, context); - } - let contents; - if (input.BucketLoggingStatus !== void 0) { - contents = se_BucketLoggingStatus(input.BucketLoggingStatus, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketLoggingCommand = se_PutBucketLoggingCommand; - var se_PutBucketMetricsConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - metrics: [, ""], - id: [, (0, smithy_client_1.expectNonNull)(input.Id, `Id`)] - }); - let body; - if (input.MetricsConfiguration !== void 0) { - body = se_MetricsConfiguration(input.MetricsConfiguration, context); - } - let contents; - if (input.MetricsConfiguration !== void 0) { - contents = se_MetricsConfiguration(input.MetricsConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketMetricsConfigurationCommand = se_PutBucketMetricsConfigurationCommand; - var se_PutBucketNotificationConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-skip-destination-validation": [ - () => isSerializableHeaderValue(input.SkipDestinationValidation), - () => input.SkipDestinationValidation.toString() - ] - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - notification: [, ""] - }); - let body; - if (input.NotificationConfiguration !== void 0) { - body = se_NotificationConfiguration(input.NotificationConfiguration, context); - } - let contents; - if (input.NotificationConfiguration !== void 0) { - contents = se_NotificationConfiguration(input.NotificationConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketNotificationConfigurationCommand = se_PutBucketNotificationConfigurationCommand; - var se_PutBucketOwnershipControlsCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - ownershipControls: [, ""] - }); - let body; - if (input.OwnershipControls !== void 0) { - body = se_OwnershipControls(input.OwnershipControls, context); - } - let contents; - if (input.OwnershipControls !== void 0) { - contents = se_OwnershipControls(input.OwnershipControls, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketOwnershipControlsCommand = se_PutBucketOwnershipControlsCommand; - var se_PutBucketPolicyCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "text/plain", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-confirm-remove-self-bucket-access": [ - () => isSerializableHeaderValue(input.ConfirmRemoveSelfBucketAccess), - () => input.ConfirmRemoveSelfBucketAccess.toString() - ], - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - policy: [, ""] - }); - let body; - if (input.Policy !== void 0) { - body = input.Policy; - } - let contents; - if (input.Policy !== void 0) { - contents = input.Policy; - body = contents; - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketPolicyCommand = se_PutBucketPolicyCommand; - var se_PutBucketReplicationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-bucket-object-lock-token": input.Token, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - replication: [, ""] - }); - let body; - if (input.ReplicationConfiguration !== void 0) { - body = se_ReplicationConfiguration(input.ReplicationConfiguration, context); - } - let contents; - if (input.ReplicationConfiguration !== void 0) { - contents = se_ReplicationConfiguration(input.ReplicationConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketReplicationCommand = se_PutBucketReplicationCommand; - var se_PutBucketRequestPaymentCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - requestPayment: [, ""] - }); - let body; - if (input.RequestPaymentConfiguration !== void 0) { - body = se_RequestPaymentConfiguration(input.RequestPaymentConfiguration, context); - } - let contents; - if (input.RequestPaymentConfiguration !== void 0) { - contents = se_RequestPaymentConfiguration(input.RequestPaymentConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketRequestPaymentCommand = se_PutBucketRequestPaymentCommand; - var se_PutBucketTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - tagging: [, ""] - }); - let body; - if (input.Tagging !== void 0) { - body = se_Tagging(input.Tagging, context); - } - let contents; - if (input.Tagging !== void 0) { - contents = se_Tagging(input.Tagging, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketTaggingCommand = se_PutBucketTaggingCommand; - var se_PutBucketVersioningCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-mfa": input.MFA, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - versioning: [, ""] - }); - let body; - if (input.VersioningConfiguration !== void 0) { - body = se_VersioningConfiguration(input.VersioningConfiguration, context); - } - let contents; - if (input.VersioningConfiguration !== void 0) { - contents = se_VersioningConfiguration(input.VersioningConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketVersioningCommand = se_PutBucketVersioningCommand; - var se_PutBucketWebsiteCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - website: [, ""] - }); - let body; - if (input.WebsiteConfiguration !== void 0) { - body = se_WebsiteConfiguration(input.WebsiteConfiguration, context); - } - let contents; - if (input.WebsiteConfiguration !== void 0) { - contents = se_WebsiteConfiguration(input.WebsiteConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutBucketWebsiteCommand = se_PutBucketWebsiteCommand; - var se_PutObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": input.ContentType || "application/octet-stream", - "x-amz-acl": input.ACL, - "cache-control": input.CacheControl, - "content-disposition": input.ContentDisposition, - "content-encoding": input.ContentEncoding, - "content-language": input.ContentLanguage, - "content-length": [() => isSerializableHeaderValue(input.ContentLength), () => input.ContentLength.toString()], - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-checksum-crc32": input.ChecksumCRC32, - "x-amz-checksum-crc32c": input.ChecksumCRC32C, - "x-amz-checksum-sha1": input.ChecksumSHA1, - "x-amz-checksum-sha256": input.ChecksumSHA256, - expires: [() => isSerializableHeaderValue(input.Expires), () => (0, smithy_client_1.dateToUtcString)(input.Expires).toString()], - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-server-side-encryption": input.ServerSideEncryption, - "x-amz-storage-class": input.StorageClass, - "x-amz-website-redirect-location": input.WebsiteRedirectLocation, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-server-side-encryption-aws-kms-key-id": input.SSEKMSKeyId, - "x-amz-server-side-encryption-context": input.SSEKMSEncryptionContext, - "x-amz-server-side-encryption-bucket-key-enabled": [ - () => isSerializableHeaderValue(input.BucketKeyEnabled), - () => input.BucketKeyEnabled.toString() - ], - "x-amz-request-payer": input.RequestPayer, - "x-amz-tagging": input.Tagging, - "x-amz-object-lock-mode": input.ObjectLockMode, - "x-amz-object-lock-retain-until-date": [ - () => isSerializableHeaderValue(input.ObjectLockRetainUntilDate), - () => (input.ObjectLockRetainUntilDate.toISOString().split(".")[0] + "Z").toString() - ], - "x-amz-object-lock-legal-hold": input.ObjectLockLegalHoldStatus, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - ...input.Metadata !== void 0 && Object.keys(input.Metadata).reduce((acc, suffix) => { - acc[`x-amz-meta-${suffix.toLowerCase()}`] = input.Metadata[suffix]; - return acc; - }, {}) - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "PutObject"] - }); - let body; - if (input.Body !== void 0) { - body = input.Body; - } - let contents; - if (input.Body !== void 0) { - contents = input.Body; - body = contents; - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectCommand = se_PutObjectCommand; - var se_PutObjectAclCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-acl": input.ACL, - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-grant-full-control": input.GrantFullControl, - "x-amz-grant-read": input.GrantRead, - "x-amz-grant-read-acp": input.GrantReadACP, - "x-amz-grant-write": input.GrantWrite, - "x-amz-grant-write-acp": input.GrantWriteACP, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - acl: [, ""], - versionId: [, input.VersionId] - }); - let body; - if (input.AccessControlPolicy !== void 0) { - body = se_AccessControlPolicy(input.AccessControlPolicy, context); - } - let contents; - if (input.AccessControlPolicy !== void 0) { - contents = se_AccessControlPolicy(input.AccessControlPolicy, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectAclCommand = se_PutObjectAclCommand; - var se_PutObjectLegalHoldCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-request-payer": input.RequestPayer, - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "legal-hold": [, ""], - versionId: [, input.VersionId] - }); - let body; - if (input.LegalHold !== void 0) { - body = se_ObjectLockLegalHold(input.LegalHold, context); - } - let contents; - if (input.LegalHold !== void 0) { - contents = se_ObjectLockLegalHold(input.LegalHold, context); - contents = contents.withName("LegalHold"); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectLegalHoldCommand = se_PutObjectLegalHoldCommand; - var se_PutObjectLockConfigurationCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-request-payer": input.RequestPayer, - "x-amz-bucket-object-lock-token": input.Token, - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - "object-lock": [, ""] - }); - let body; - if (input.ObjectLockConfiguration !== void 0) { - body = se_ObjectLockConfiguration(input.ObjectLockConfiguration, context); - } - let contents; - if (input.ObjectLockConfiguration !== void 0) { - contents = se_ObjectLockConfiguration(input.ObjectLockConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectLockConfigurationCommand = se_PutObjectLockConfigurationCommand; - var se_PutObjectRetentionCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-request-payer": input.RequestPayer, - "x-amz-bypass-governance-retention": [ - () => isSerializableHeaderValue(input.BypassGovernanceRetention), - () => input.BypassGovernanceRetention.toString() - ], - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - retention: [, ""], - versionId: [, input.VersionId] - }); - let body; - if (input.Retention !== void 0) { - body = se_ObjectLockRetention(input.Retention, context); - } - let contents; - if (input.Retention !== void 0) { - contents = se_ObjectLockRetention(input.Retention, context); - contents = contents.withName("Retention"); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectRetentionCommand = se_PutObjectRetentionCommand; - var se_PutObjectTaggingCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-request-payer": input.RequestPayer - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - tagging: [, ""], - versionId: [, input.VersionId] - }); - let body; - if (input.Tagging !== void 0) { - body = se_Tagging(input.Tagging, context); - } - let contents; - if (input.Tagging !== void 0) { - contents = se_Tagging(input.Tagging, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutObjectTaggingCommand = se_PutObjectTaggingCommand; - var se_PutPublicAccessBlockCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - const query = (0, smithy_client_1.map)({ - publicAccessBlock: [, ""] - }); - let body; - if (input.PublicAccessBlockConfiguration !== void 0) { - body = se_PublicAccessBlockConfiguration(input.PublicAccessBlockConfiguration, context); - } - let contents; - if (input.PublicAccessBlockConfiguration !== void 0) { - contents = se_PublicAccessBlockConfiguration(input.PublicAccessBlockConfiguration, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_PutPublicAccessBlockCommand = se_PutPublicAccessBlockCommand; - var se_RestoreObjectCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-request-payer": input.RequestPayer, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - restore: [, ""], - "x-id": [, "RestoreObject"], - versionId: [, input.VersionId] - }); - let body; - if (input.RestoreRequest !== void 0) { - body = se_RestoreRequest(input.RestoreRequest, context); - } - let contents; - if (input.RestoreRequest !== void 0) { - contents = se_RestoreRequest(input.RestoreRequest, context); - body = ''; - contents.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - body += contents.toString(); - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_RestoreObjectCommand = se_RestoreObjectCommand; - var se_SelectObjectContentCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/xml", - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - select: [, ""], - "select-type": [, "2"], - "x-id": [, "SelectObjectContent"] - }); - let body; - body = ''; - const bodyNode = new xml_builder_1.XmlNode("SelectObjectContentRequest"); - bodyNode.addAttribute("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/"); - if (input.Expression !== void 0) { - const node = xml_builder_1.XmlNode.of("Expression", input.Expression).withName("Expression"); - bodyNode.addChildNode(node); - } - if (input.ExpressionType !== void 0) { - const node = xml_builder_1.XmlNode.of("ExpressionType", input.ExpressionType).withName("ExpressionType"); - bodyNode.addChildNode(node); - } - if (input.InputSerialization !== void 0) { - const node = se_InputSerialization(input.InputSerialization, context).withName("InputSerialization"); - bodyNode.addChildNode(node); - } - if (input.OutputSerialization !== void 0) { - const node = se_OutputSerialization(input.OutputSerialization, context).withName("OutputSerialization"); - bodyNode.addChildNode(node); - } - if (input.RequestProgress !== void 0) { - const node = se_RequestProgress(input.RequestProgress, context).withName("RequestProgress"); - bodyNode.addChildNode(node); - } - if (input.ScanRange !== void 0) { - const node = se_ScanRange(input.ScanRange, context).withName("ScanRange"); - bodyNode.addChildNode(node); - } - body += bodyNode.toString(); - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_SelectObjectContentCommand = se_SelectObjectContentCommand; - var se_UploadPartCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "content-type": "application/octet-stream", - "content-length": [() => isSerializableHeaderValue(input.ContentLength), () => input.ContentLength.toString()], - "content-md5": input.ContentMD5, - "x-amz-sdk-checksum-algorithm": input.ChecksumAlgorithm, - "x-amz-checksum-crc32": input.ChecksumCRC32, - "x-amz-checksum-crc32c": input.ChecksumCRC32C, - "x-amz-checksum-sha1": input.ChecksumSHA1, - "x-amz-checksum-sha256": input.ChecksumSHA256, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "UploadPart"], - partNumber: [(0, smithy_client_1.expectNonNull)(input.PartNumber, `PartNumber`) != null, () => input.PartNumber.toString()], - uploadId: [, (0, smithy_client_1.expectNonNull)(input.UploadId, `UploadId`)] - }); - let body; - if (input.Body !== void 0) { - body = input.Body; - } - let contents; - if (input.Body !== void 0) { - contents = input.Body; - body = contents; - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_UploadPartCommand = se_UploadPartCommand; - var se_UploadPartCopyCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-copy-source": input.CopySource, - "x-amz-copy-source-if-match": input.CopySourceIfMatch, - "x-amz-copy-source-if-modified-since": [ - () => isSerializableHeaderValue(input.CopySourceIfModifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.CopySourceIfModifiedSince).toString() - ], - "x-amz-copy-source-if-none-match": input.CopySourceIfNoneMatch, - "x-amz-copy-source-if-unmodified-since": [ - () => isSerializableHeaderValue(input.CopySourceIfUnmodifiedSince), - () => (0, smithy_client_1.dateToUtcString)(input.CopySourceIfUnmodifiedSince).toString() - ], - "x-amz-copy-source-range": input.CopySourceRange, - "x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-server-side-encryption-customer-key": input.SSECustomerKey, - "x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-copy-source-server-side-encryption-customer-algorithm": input.CopySourceSSECustomerAlgorithm, - "x-amz-copy-source-server-side-encryption-customer-key": input.CopySourceSSECustomerKey, - "x-amz-copy-source-server-side-encryption-customer-key-md5": input.CopySourceSSECustomerKeyMD5, - "x-amz-request-payer": input.RequestPayer, - "x-amz-expected-bucket-owner": input.ExpectedBucketOwner, - "x-amz-source-expected-bucket-owner": input.ExpectedSourceBucketOwner - }); - let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/{Key+}`; - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false); - resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Key", () => input.Key, "{Key+}", true); - const query = (0, smithy_client_1.map)({ - "x-id": [, "UploadPartCopy"], - partNumber: [(0, smithy_client_1.expectNonNull)(input.PartNumber, `PartNumber`) != null, () => input.PartNumber.toString()], - uploadId: [, (0, smithy_client_1.expectNonNull)(input.UploadId, `UploadId`)] - }); - let body; - return new protocol_http_1.HttpRequest({ - protocol, - hostname, - port, - method: "PUT", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_UploadPartCopyCommand = se_UploadPartCopyCommand; - var se_WriteGetObjectResponseCommand = async (input, context) => { - const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers = (0, smithy_client_1.map)({}, isSerializableHeaderValue, { - "x-amz-content-sha256": "UNSIGNED-PAYLOAD", - "content-type": "application/octet-stream", - "x-amz-request-route": input.RequestRoute, - "x-amz-request-token": input.RequestToken, - "x-amz-fwd-status": [() => isSerializableHeaderValue(input.StatusCode), () => input.StatusCode.toString()], - "x-amz-fwd-error-code": input.ErrorCode, - "x-amz-fwd-error-message": input.ErrorMessage, - "x-amz-fwd-header-accept-ranges": input.AcceptRanges, - "x-amz-fwd-header-cache-control": input.CacheControl, - "x-amz-fwd-header-content-disposition": input.ContentDisposition, - "x-amz-fwd-header-content-encoding": input.ContentEncoding, - "x-amz-fwd-header-content-language": input.ContentLanguage, - "content-length": [() => isSerializableHeaderValue(input.ContentLength), () => input.ContentLength.toString()], - "x-amz-fwd-header-content-range": input.ContentRange, - "x-amz-fwd-header-content-type": input.ContentType, - "x-amz-fwd-header-x-amz-checksum-crc32": input.ChecksumCRC32, - "x-amz-fwd-header-x-amz-checksum-crc32c": input.ChecksumCRC32C, - "x-amz-fwd-header-x-amz-checksum-sha1": input.ChecksumSHA1, - "x-amz-fwd-header-x-amz-checksum-sha256": input.ChecksumSHA256, - "x-amz-fwd-header-x-amz-delete-marker": [ - () => isSerializableHeaderValue(input.DeleteMarker), - () => input.DeleteMarker.toString() - ], - "x-amz-fwd-header-etag": input.ETag, - "x-amz-fwd-header-expires": [ - () => isSerializableHeaderValue(input.Expires), - () => (0, smithy_client_1.dateToUtcString)(input.Expires).toString() - ], - "x-amz-fwd-header-x-amz-expiration": input.Expiration, - "x-amz-fwd-header-last-modified": [ - () => isSerializableHeaderValue(input.LastModified), - () => (0, smithy_client_1.dateToUtcString)(input.LastModified).toString() - ], - "x-amz-fwd-header-x-amz-missing-meta": [ - () => isSerializableHeaderValue(input.MissingMeta), - () => input.MissingMeta.toString() - ], - "x-amz-fwd-header-x-amz-object-lock-mode": input.ObjectLockMode, - "x-amz-fwd-header-x-amz-object-lock-legal-hold": input.ObjectLockLegalHoldStatus, - "x-amz-fwd-header-x-amz-object-lock-retain-until-date": [ - () => isSerializableHeaderValue(input.ObjectLockRetainUntilDate), - () => (input.ObjectLockRetainUntilDate.toISOString().split(".")[0] + "Z").toString() - ], - "x-amz-fwd-header-x-amz-mp-parts-count": [ - () => isSerializableHeaderValue(input.PartsCount), - () => input.PartsCount.toString() - ], - "x-amz-fwd-header-x-amz-replication-status": input.ReplicationStatus, - "x-amz-fwd-header-x-amz-request-charged": input.RequestCharged, - "x-amz-fwd-header-x-amz-restore": input.Restore, - "x-amz-fwd-header-x-amz-server-side-encryption": input.ServerSideEncryption, - "x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm": input.SSECustomerAlgorithm, - "x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id": input.SSEKMSKeyId, - "x-amz-fwd-header-x-amz-server-side-encryption-customer-key-md5": input.SSECustomerKeyMD5, - "x-amz-fwd-header-x-amz-storage-class": input.StorageClass, - "x-amz-fwd-header-x-amz-tagging-count": [ - () => isSerializableHeaderValue(input.TagCount), - () => input.TagCount.toString() - ], - "x-amz-fwd-header-x-amz-version-id": input.VersionId, - "x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled": [ - () => isSerializableHeaderValue(input.BucketKeyEnabled), - () => input.BucketKeyEnabled.toString() - ], - ...input.Metadata !== void 0 && Object.keys(input.Metadata).reduce((acc, suffix) => { - acc[`x-amz-meta-${suffix.toLowerCase()}`] = input.Metadata[suffix]; - return acc; - }, {}) - }); - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}/WriteGetObjectResponse`; - const query = (0, smithy_client_1.map)({ - "x-id": [, "WriteGetObjectResponse"] - }); - let body; - if (input.Body !== void 0) { - body = input.Body; - } - let contents; - if (input.Body !== void 0) { - contents = input.Body; - body = contents; - } - let { hostname: resolvedHostname } = await context.endpoint(); - if (context.disableHostPrefix !== true) { - resolvedHostname = "{RequestRoute}." + resolvedHostname; - if (input.RequestRoute === void 0) { - throw new Error("Empty value provided for input host prefix: RequestRoute."); - } - resolvedHostname = resolvedHostname.replace("{RequestRoute}", input.RequestRoute); - if (!(0, protocol_http_1.isValidHostname)(resolvedHostname)) { - throw new Error("ValidationError: prefixed hostname must be hostname compatible."); - } - } - return new protocol_http_1.HttpRequest({ - protocol, - hostname: resolvedHostname, - port, - method: "POST", - headers, - path: resolvedPath, - query, - body - }); - }; - exports2.se_WriteGetObjectResponseCommand = se_WriteGetObjectResponseCommand; - var de_AbortMultipartUploadCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_AbortMultipartUploadCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_AbortMultipartUploadCommand = de_AbortMultipartUploadCommand; - var de_AbortMultipartUploadCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchUpload": - case "com.amazonaws.s3#NoSuchUpload": - throw await de_NoSuchUploadRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_CompleteMultipartUploadCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CompleteMultipartUploadCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - Expiration: [, output.headers["x-amz-expiration"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - VersionId: [, output.headers["x-amz-version-id"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(data["Bucket"]); - } - if (data["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(data["ChecksumCRC32"]); - } - if (data["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(data["ChecksumCRC32C"]); - } - if (data["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(data["ChecksumSHA1"]); - } - if (data["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(data["ChecksumSHA256"]); - } - if (data["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(data["ETag"]); - } - if (data["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(data["Key"]); - } - if (data["Location"] !== void 0) { - contents.Location = (0, smithy_client_1.expectString)(data["Location"]); - } - return contents; - }; - exports2.de_CompleteMultipartUploadCommand = de_CompleteMultipartUploadCommand; - var de_CompleteMultipartUploadCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_CopyObjectCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CopyObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - Expiration: [, output.headers["x-amz-expiration"]], - CopySourceVersionId: [, output.headers["x-amz-copy-source-version-id"]], - VersionId: [, output.headers["x-amz-version-id"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - SSEKMSEncryptionContext: [, output.headers["x-amz-server-side-encryption-context"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.CopyObjectResult = de_CopyObjectResult(data, context); - return contents; - }; - exports2.de_CopyObjectCommand = de_CopyObjectCommand; - var de_CopyObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "ObjectNotInActiveTierError": - case "com.amazonaws.s3#ObjectNotInActiveTierError": - throw await de_ObjectNotInActiveTierErrorRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_CreateBucketCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CreateBucketCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - Location: [, output.headers["location"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_CreateBucketCommand = de_CreateBucketCommand; - var de_CreateBucketCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "BucketAlreadyExists": - case "com.amazonaws.s3#BucketAlreadyExists": - throw await de_BucketAlreadyExistsRes(parsedOutput, context); - case "BucketAlreadyOwnedByYou": - case "com.amazonaws.s3#BucketAlreadyOwnedByYou": - throw await de_BucketAlreadyOwnedByYouRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_CreateMultipartUploadCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CreateMultipartUploadCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - AbortDate: [ - () => void 0 !== output.headers["x-amz-abort-date"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["x-amz-abort-date"])) - ], - AbortRuleId: [, output.headers["x-amz-abort-rule-id"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - SSEKMSEncryptionContext: [, output.headers["x-amz-server-side-encryption-context"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]], - ChecksumAlgorithm: [, output.headers["x-amz-checksum-algorithm"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(data["Bucket"]); - } - if (data["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(data["Key"]); - } - if (data["UploadId"] !== void 0) { - contents.UploadId = (0, smithy_client_1.expectString)(data["UploadId"]); - } - return contents; - }; - exports2.de_CreateMultipartUploadCommand = de_CreateMultipartUploadCommand; - var de_CreateMultipartUploadCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketCommand = de_DeleteBucketCommand; - var de_DeleteBucketCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketAnalyticsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketAnalyticsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketAnalyticsConfigurationCommand = de_DeleteBucketAnalyticsConfigurationCommand; - var de_DeleteBucketAnalyticsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketCorsCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketCorsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketCorsCommand = de_DeleteBucketCorsCommand; - var de_DeleteBucketCorsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketEncryptionCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketEncryptionCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketEncryptionCommand = de_DeleteBucketEncryptionCommand; - var de_DeleteBucketEncryptionCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketIntelligentTieringConfigurationCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketIntelligentTieringConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketIntelligentTieringConfigurationCommand = de_DeleteBucketIntelligentTieringConfigurationCommand; - var de_DeleteBucketIntelligentTieringConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketInventoryConfigurationCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketInventoryConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketInventoryConfigurationCommand = de_DeleteBucketInventoryConfigurationCommand; - var de_DeleteBucketInventoryConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketLifecycleCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketLifecycleCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketLifecycleCommand = de_DeleteBucketLifecycleCommand; - var de_DeleteBucketLifecycleCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketMetricsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketMetricsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketMetricsConfigurationCommand = de_DeleteBucketMetricsConfigurationCommand; - var de_DeleteBucketMetricsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketOwnershipControlsCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketOwnershipControlsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketOwnershipControlsCommand = de_DeleteBucketOwnershipControlsCommand; - var de_DeleteBucketOwnershipControlsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketPolicyCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketPolicyCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketPolicyCommand = de_DeleteBucketPolicyCommand; - var de_DeleteBucketPolicyCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketReplicationCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketReplicationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketReplicationCommand = de_DeleteBucketReplicationCommand; - var de_DeleteBucketReplicationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketTaggingCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketTaggingCommand = de_DeleteBucketTaggingCommand; - var de_DeleteBucketTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteBucketWebsiteCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteBucketWebsiteCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteBucketWebsiteCommand = de_DeleteBucketWebsiteCommand; - var de_DeleteBucketWebsiteCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteObjectCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - DeleteMarker: [ - () => void 0 !== output.headers["x-amz-delete-marker"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-delete-marker"]) - ], - VersionId: [, output.headers["x-amz-version-id"]], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteObjectCommand = de_DeleteObjectCommand; - var de_DeleteObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteObjectsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_DeleteObjectsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.Deleted === "") { - contents.Deleted = []; - } else if (data["Deleted"] !== void 0) { - contents.Deleted = de_DeletedObjects((0, smithy_client_1.getArrayIfSingleItem)(data["Deleted"]), context); - } - if (data.Error === "") { - contents.Errors = []; - } else if (data["Error"] !== void 0) { - contents.Errors = de_Errors((0, smithy_client_1.getArrayIfSingleItem)(data["Error"]), context); - } - return contents; - }; - exports2.de_DeleteObjectsCommand = de_DeleteObjectsCommand; - var de_DeleteObjectsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeleteObjectTaggingCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeleteObjectTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - VersionId: [, output.headers["x-amz-version-id"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeleteObjectTaggingCommand = de_DeleteObjectTaggingCommand; - var de_DeleteObjectTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_DeletePublicAccessBlockCommand = async (output, context) => { - if (output.statusCode !== 204 && output.statusCode >= 300) { - return de_DeletePublicAccessBlockCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_DeletePublicAccessBlockCommand = de_DeletePublicAccessBlockCommand; - var de_DeletePublicAccessBlockCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketAccelerateConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketAccelerateConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(data["Status"]); - } - return contents; - }; - exports2.de_GetBucketAccelerateConfigurationCommand = de_GetBucketAccelerateConfigurationCommand; - var de_GetBucketAccelerateConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketAclCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketAclCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.AccessControlList === "") { - contents.Grants = []; - } else if (data["AccessControlList"] !== void 0 && data["AccessControlList"]["Grant"] !== void 0) { - contents.Grants = de_Grants((0, smithy_client_1.getArrayIfSingleItem)(data["AccessControlList"]["Grant"]), context); - } - if (data["Owner"] !== void 0) { - contents.Owner = de_Owner(data["Owner"], context); - } - return contents; - }; - exports2.de_GetBucketAclCommand = de_GetBucketAclCommand; - var de_GetBucketAclCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketAnalyticsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketAnalyticsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.AnalyticsConfiguration = de_AnalyticsConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketAnalyticsConfigurationCommand = de_GetBucketAnalyticsConfigurationCommand; - var de_GetBucketAnalyticsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketCorsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketCorsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.CORSRule === "") { - contents.CORSRules = []; - } else if (data["CORSRule"] !== void 0) { - contents.CORSRules = de_CORSRules((0, smithy_client_1.getArrayIfSingleItem)(data["CORSRule"]), context); - } - return contents; - }; - exports2.de_GetBucketCorsCommand = de_GetBucketCorsCommand; - var de_GetBucketCorsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketEncryptionCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketEncryptionCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.ServerSideEncryptionConfiguration = de_ServerSideEncryptionConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketEncryptionCommand = de_GetBucketEncryptionCommand; - var de_GetBucketEncryptionCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketIntelligentTieringConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketIntelligentTieringConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.IntelligentTieringConfiguration = de_IntelligentTieringConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketIntelligentTieringConfigurationCommand = de_GetBucketIntelligentTieringConfigurationCommand; - var de_GetBucketIntelligentTieringConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketInventoryConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketInventoryConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.InventoryConfiguration = de_InventoryConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketInventoryConfigurationCommand = de_GetBucketInventoryConfigurationCommand; - var de_GetBucketInventoryConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketLifecycleConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketLifecycleConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.Rule === "") { - contents.Rules = []; - } else if (data["Rule"] !== void 0) { - contents.Rules = de_LifecycleRules((0, smithy_client_1.getArrayIfSingleItem)(data["Rule"]), context); - } - return contents; - }; - exports2.de_GetBucketLifecycleConfigurationCommand = de_GetBucketLifecycleConfigurationCommand; - var de_GetBucketLifecycleConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketLocationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketLocationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["LocationConstraint"] !== void 0) { - contents.LocationConstraint = (0, smithy_client_1.expectString)(data["LocationConstraint"]); - } - return contents; - }; - exports2.de_GetBucketLocationCommand = de_GetBucketLocationCommand; - var de_GetBucketLocationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketLoggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketLoggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["LoggingEnabled"] !== void 0) { - contents.LoggingEnabled = de_LoggingEnabled(data["LoggingEnabled"], context); - } - return contents; - }; - exports2.de_GetBucketLoggingCommand = de_GetBucketLoggingCommand; - var de_GetBucketLoggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketMetricsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketMetricsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.MetricsConfiguration = de_MetricsConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketMetricsConfigurationCommand = de_GetBucketMetricsConfigurationCommand; - var de_GetBucketMetricsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketNotificationConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketNotificationConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["EventBridgeConfiguration"] !== void 0) { - contents.EventBridgeConfiguration = de_EventBridgeConfiguration(data["EventBridgeConfiguration"], context); - } - if (data.CloudFunctionConfiguration === "") { - contents.LambdaFunctionConfigurations = []; - } else if (data["CloudFunctionConfiguration"] !== void 0) { - contents.LambdaFunctionConfigurations = de_LambdaFunctionConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["CloudFunctionConfiguration"]), context); - } - if (data.QueueConfiguration === "") { - contents.QueueConfigurations = []; - } else if (data["QueueConfiguration"] !== void 0) { - contents.QueueConfigurations = de_QueueConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["QueueConfiguration"]), context); - } - if (data.TopicConfiguration === "") { - contents.TopicConfigurations = []; - } else if (data["TopicConfiguration"] !== void 0) { - contents.TopicConfigurations = de_TopicConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["TopicConfiguration"]), context); - } - return contents; - }; - exports2.de_GetBucketNotificationConfigurationCommand = de_GetBucketNotificationConfigurationCommand; - var de_GetBucketNotificationConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketOwnershipControlsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketOwnershipControlsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.OwnershipControls = de_OwnershipControls(data, context); - return contents; - }; - exports2.de_GetBucketOwnershipControlsCommand = de_GetBucketOwnershipControlsCommand; - var de_GetBucketOwnershipControlsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketPolicyCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketPolicyCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = await collectBodyString(output.body, context); - contents.Policy = (0, smithy_client_1.expectString)(data); - return contents; - }; - exports2.de_GetBucketPolicyCommand = de_GetBucketPolicyCommand; - var de_GetBucketPolicyCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketPolicyStatusCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketPolicyStatusCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.PolicyStatus = de_PolicyStatus(data, context); - return contents; - }; - exports2.de_GetBucketPolicyStatusCommand = de_GetBucketPolicyStatusCommand; - var de_GetBucketPolicyStatusCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketReplicationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketReplicationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.ReplicationConfiguration = de_ReplicationConfiguration(data, context); - return contents; - }; - exports2.de_GetBucketReplicationCommand = de_GetBucketReplicationCommand; - var de_GetBucketReplicationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketRequestPaymentCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketRequestPaymentCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Payer"] !== void 0) { - contents.Payer = (0, smithy_client_1.expectString)(data["Payer"]); - } - return contents; - }; - exports2.de_GetBucketRequestPaymentCommand = de_GetBucketRequestPaymentCommand; - var de_GetBucketRequestPaymentCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketTaggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.TagSet === "") { - contents.TagSet = []; - } else if (data["TagSet"] !== void 0 && data["TagSet"]["Tag"] !== void 0) { - contents.TagSet = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(data["TagSet"]["Tag"]), context); - } - return contents; - }; - exports2.de_GetBucketTaggingCommand = de_GetBucketTaggingCommand; - var de_GetBucketTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketVersioningCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketVersioningCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["MfaDelete"] !== void 0) { - contents.MFADelete = (0, smithy_client_1.expectString)(data["MfaDelete"]); - } - if (data["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(data["Status"]); - } - return contents; - }; - exports2.de_GetBucketVersioningCommand = de_GetBucketVersioningCommand; - var de_GetBucketVersioningCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetBucketWebsiteCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetBucketWebsiteCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["ErrorDocument"] !== void 0) { - contents.ErrorDocument = de_ErrorDocument(data["ErrorDocument"], context); - } - if (data["IndexDocument"] !== void 0) { - contents.IndexDocument = de_IndexDocument(data["IndexDocument"], context); - } - if (data["RedirectAllRequestsTo"] !== void 0) { - contents.RedirectAllRequestsTo = de_RedirectAllRequestsTo(data["RedirectAllRequestsTo"], context); - } - if (data.RoutingRules === "") { - contents.RoutingRules = []; - } else if (data["RoutingRules"] !== void 0 && data["RoutingRules"]["RoutingRule"] !== void 0) { - contents.RoutingRules = de_RoutingRules((0, smithy_client_1.getArrayIfSingleItem)(data["RoutingRules"]["RoutingRule"]), context); - } - return contents; - }; - exports2.de_GetBucketWebsiteCommand = de_GetBucketWebsiteCommand; - var de_GetBucketWebsiteCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetObjectCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - DeleteMarker: [ - () => void 0 !== output.headers["x-amz-delete-marker"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-delete-marker"]) - ], - AcceptRanges: [, output.headers["accept-ranges"]], - Expiration: [, output.headers["x-amz-expiration"]], - Restore: [, output.headers["x-amz-restore"]], - LastModified: [ - () => void 0 !== output.headers["last-modified"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["last-modified"])) - ], - ContentLength: [ - () => void 0 !== output.headers["content-length"], - () => (0, smithy_client_1.strictParseLong)(output.headers["content-length"]) - ], - ETag: [, output.headers["etag"]], - ChecksumCRC32: [, output.headers["x-amz-checksum-crc32"]], - ChecksumCRC32C: [, output.headers["x-amz-checksum-crc32c"]], - ChecksumSHA1: [, output.headers["x-amz-checksum-sha1"]], - ChecksumSHA256: [, output.headers["x-amz-checksum-sha256"]], - MissingMeta: [ - () => void 0 !== output.headers["x-amz-missing-meta"], - () => (0, smithy_client_1.strictParseInt32)(output.headers["x-amz-missing-meta"]) - ], - VersionId: [, output.headers["x-amz-version-id"]], - CacheControl: [, output.headers["cache-control"]], - ContentDisposition: [, output.headers["content-disposition"]], - ContentEncoding: [, output.headers["content-encoding"]], - ContentLanguage: [, output.headers["content-language"]], - ContentRange: [, output.headers["content-range"]], - ContentType: [, output.headers["content-type"]], - Expires: [ - () => void 0 !== output.headers["expires"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["expires"])) - ], - WebsiteRedirectLocation: [, output.headers["x-amz-website-redirect-location"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - StorageClass: [, output.headers["x-amz-storage-class"]], - RequestCharged: [, output.headers["x-amz-request-charged"]], - ReplicationStatus: [, output.headers["x-amz-replication-status"]], - PartsCount: [ - () => void 0 !== output.headers["x-amz-mp-parts-count"], - () => (0, smithy_client_1.strictParseInt32)(output.headers["x-amz-mp-parts-count"]) - ], - TagCount: [ - () => void 0 !== output.headers["x-amz-tagging-count"], - () => (0, smithy_client_1.strictParseInt32)(output.headers["x-amz-tagging-count"]) - ], - ObjectLockMode: [, output.headers["x-amz-object-lock-mode"]], - ObjectLockRetainUntilDate: [ - () => void 0 !== output.headers["x-amz-object-lock-retain-until-date"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output.headers["x-amz-object-lock-retain-until-date"])) - ], - ObjectLockLegalHoldStatus: [, output.headers["x-amz-object-lock-legal-hold"]], - Metadata: [ - , - Object.keys(output.headers).filter((header) => header.startsWith("x-amz-meta-")).reduce((acc, header) => { - acc[header.substring(11)] = output.headers[header]; - return acc; - }, {}) - ] - }); - const data = output.body; - context.sdkStreamMixin(data); - contents.Body = data; - return contents; - }; - exports2.de_GetObjectCommand = de_GetObjectCommand; - var de_GetObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "InvalidObjectState": - case "com.amazonaws.s3#InvalidObjectState": - throw await de_InvalidObjectStateRes(parsedOutput, context); - case "NoSuchKey": - case "com.amazonaws.s3#NoSuchKey": - throw await de_NoSuchKeyRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_GetObjectAclCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectAclCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.AccessControlList === "") { - contents.Grants = []; - } else if (data["AccessControlList"] !== void 0 && data["AccessControlList"]["Grant"] !== void 0) { - contents.Grants = de_Grants((0, smithy_client_1.getArrayIfSingleItem)(data["AccessControlList"]["Grant"]), context); - } - if (data["Owner"] !== void 0) { - contents.Owner = de_Owner(data["Owner"], context); - } - return contents; - }; - exports2.de_GetObjectAclCommand = de_GetObjectAclCommand; - var de_GetObjectAclCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchKey": - case "com.amazonaws.s3#NoSuchKey": - throw await de_NoSuchKeyRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_GetObjectAttributesCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectAttributesCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - DeleteMarker: [ - () => void 0 !== output.headers["x-amz-delete-marker"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-delete-marker"]) - ], - LastModified: [ - () => void 0 !== output.headers["last-modified"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["last-modified"])) - ], - VersionId: [, output.headers["x-amz-version-id"]], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Checksum"] !== void 0) { - contents.Checksum = de_Checksum(data["Checksum"], context); - } - if (data["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(data["ETag"]); - } - if (data["ObjectParts"] !== void 0) { - contents.ObjectParts = de_GetObjectAttributesParts(data["ObjectParts"], context); - } - if (data["ObjectSize"] !== void 0) { - contents.ObjectSize = (0, smithy_client_1.strictParseLong)(data["ObjectSize"]); - } - if (data["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(data["StorageClass"]); - } - return contents; - }; - exports2.de_GetObjectAttributesCommand = de_GetObjectAttributesCommand; - var de_GetObjectAttributesCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchKey": - case "com.amazonaws.s3#NoSuchKey": - throw await de_NoSuchKeyRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_GetObjectLegalHoldCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectLegalHoldCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.LegalHold = de_ObjectLockLegalHold(data, context); - return contents; - }; - exports2.de_GetObjectLegalHoldCommand = de_GetObjectLegalHoldCommand; - var de_GetObjectLegalHoldCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetObjectLockConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectLockConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.ObjectLockConfiguration = de_ObjectLockConfiguration(data, context); - return contents; - }; - exports2.de_GetObjectLockConfigurationCommand = de_GetObjectLockConfigurationCommand; - var de_GetObjectLockConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetObjectRetentionCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectRetentionCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.Retention = de_ObjectLockRetention(data, context); - return contents; - }; - exports2.de_GetObjectRetentionCommand = de_GetObjectRetentionCommand; - var de_GetObjectRetentionCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetObjectTaggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - VersionId: [, output.headers["x-amz-version-id"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.TagSet === "") { - contents.TagSet = []; - } else if (data["TagSet"] !== void 0 && data["TagSet"]["Tag"] !== void 0) { - contents.TagSet = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(data["TagSet"]["Tag"]), context); - } - return contents; - }; - exports2.de_GetObjectTaggingCommand = de_GetObjectTaggingCommand; - var de_GetObjectTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetObjectTorrentCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetObjectTorrentCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = output.body; - context.sdkStreamMixin(data); - contents.Body = data; - return contents; - }; - exports2.de_GetObjectTorrentCommand = de_GetObjectTorrentCommand; - var de_GetObjectTorrentCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_GetPublicAccessBlockCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_GetPublicAccessBlockCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.PublicAccessBlockConfiguration = de_PublicAccessBlockConfiguration(data, context); - return contents; - }; - exports2.de_GetPublicAccessBlockCommand = de_GetPublicAccessBlockCommand; - var de_GetPublicAccessBlockCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_HeadBucketCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_HeadBucketCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_HeadBucketCommand = de_HeadBucketCommand; - var de_HeadBucketCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NotFound": - case "com.amazonaws.s3#NotFound": - throw await de_NotFoundRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_HeadObjectCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_HeadObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - DeleteMarker: [ - () => void 0 !== output.headers["x-amz-delete-marker"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-delete-marker"]) - ], - AcceptRanges: [, output.headers["accept-ranges"]], - Expiration: [, output.headers["x-amz-expiration"]], - Restore: [, output.headers["x-amz-restore"]], - ArchiveStatus: [, output.headers["x-amz-archive-status"]], - LastModified: [ - () => void 0 !== output.headers["last-modified"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["last-modified"])) - ], - ContentLength: [ - () => void 0 !== output.headers["content-length"], - () => (0, smithy_client_1.strictParseLong)(output.headers["content-length"]) - ], - ChecksumCRC32: [, output.headers["x-amz-checksum-crc32"]], - ChecksumCRC32C: [, output.headers["x-amz-checksum-crc32c"]], - ChecksumSHA1: [, output.headers["x-amz-checksum-sha1"]], - ChecksumSHA256: [, output.headers["x-amz-checksum-sha256"]], - ETag: [, output.headers["etag"]], - MissingMeta: [ - () => void 0 !== output.headers["x-amz-missing-meta"], - () => (0, smithy_client_1.strictParseInt32)(output.headers["x-amz-missing-meta"]) - ], - VersionId: [, output.headers["x-amz-version-id"]], - CacheControl: [, output.headers["cache-control"]], - ContentDisposition: [, output.headers["content-disposition"]], - ContentEncoding: [, output.headers["content-encoding"]], - ContentLanguage: [, output.headers["content-language"]], - ContentType: [, output.headers["content-type"]], - Expires: [ - () => void 0 !== output.headers["expires"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["expires"])) - ], - WebsiteRedirectLocation: [, output.headers["x-amz-website-redirect-location"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - StorageClass: [, output.headers["x-amz-storage-class"]], - RequestCharged: [, output.headers["x-amz-request-charged"]], - ReplicationStatus: [, output.headers["x-amz-replication-status"]], - PartsCount: [ - () => void 0 !== output.headers["x-amz-mp-parts-count"], - () => (0, smithy_client_1.strictParseInt32)(output.headers["x-amz-mp-parts-count"]) - ], - ObjectLockMode: [, output.headers["x-amz-object-lock-mode"]], - ObjectLockRetainUntilDate: [ - () => void 0 !== output.headers["x-amz-object-lock-retain-until-date"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output.headers["x-amz-object-lock-retain-until-date"])) - ], - ObjectLockLegalHoldStatus: [, output.headers["x-amz-object-lock-legal-hold"]], - Metadata: [ - , - Object.keys(output.headers).filter((header) => header.startsWith("x-amz-meta-")).reduce((acc, header) => { - acc[header.substring(11)] = output.headers[header]; - return acc; - }, {}) - ] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_HeadObjectCommand = de_HeadObjectCommand; - var de_HeadObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NotFound": - case "com.amazonaws.s3#NotFound": - throw await de_NotFoundRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_ListBucketAnalyticsConfigurationsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBucketAnalyticsConfigurationsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.AnalyticsConfiguration === "") { - contents.AnalyticsConfigurationList = []; - } else if (data["AnalyticsConfiguration"] !== void 0) { - contents.AnalyticsConfigurationList = de_AnalyticsConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["AnalyticsConfiguration"]), context); - } - if (data["ContinuationToken"] !== void 0) { - contents.ContinuationToken = (0, smithy_client_1.expectString)(data["ContinuationToken"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["NextContinuationToken"] !== void 0) { - contents.NextContinuationToken = (0, smithy_client_1.expectString)(data["NextContinuationToken"]); - } - return contents; - }; - exports2.de_ListBucketAnalyticsConfigurationsCommand = de_ListBucketAnalyticsConfigurationsCommand; - var de_ListBucketAnalyticsConfigurationsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListBucketIntelligentTieringConfigurationsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBucketIntelligentTieringConfigurationsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["ContinuationToken"] !== void 0) { - contents.ContinuationToken = (0, smithy_client_1.expectString)(data["ContinuationToken"]); - } - if (data.IntelligentTieringConfiguration === "") { - contents.IntelligentTieringConfigurationList = []; - } else if (data["IntelligentTieringConfiguration"] !== void 0) { - contents.IntelligentTieringConfigurationList = de_IntelligentTieringConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["IntelligentTieringConfiguration"]), context); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["NextContinuationToken"] !== void 0) { - contents.NextContinuationToken = (0, smithy_client_1.expectString)(data["NextContinuationToken"]); - } - return contents; - }; - exports2.de_ListBucketIntelligentTieringConfigurationsCommand = de_ListBucketIntelligentTieringConfigurationsCommand; - var de_ListBucketIntelligentTieringConfigurationsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListBucketInventoryConfigurationsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBucketInventoryConfigurationsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["ContinuationToken"] !== void 0) { - contents.ContinuationToken = (0, smithy_client_1.expectString)(data["ContinuationToken"]); - } - if (data.InventoryConfiguration === "") { - contents.InventoryConfigurationList = []; - } else if (data["InventoryConfiguration"] !== void 0) { - contents.InventoryConfigurationList = de_InventoryConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["InventoryConfiguration"]), context); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["NextContinuationToken"] !== void 0) { - contents.NextContinuationToken = (0, smithy_client_1.expectString)(data["NextContinuationToken"]); - } - return contents; - }; - exports2.de_ListBucketInventoryConfigurationsCommand = de_ListBucketInventoryConfigurationsCommand; - var de_ListBucketInventoryConfigurationsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListBucketMetricsConfigurationsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBucketMetricsConfigurationsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["ContinuationToken"] !== void 0) { - contents.ContinuationToken = (0, smithy_client_1.expectString)(data["ContinuationToken"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data.MetricsConfiguration === "") { - contents.MetricsConfigurationList = []; - } else if (data["MetricsConfiguration"] !== void 0) { - contents.MetricsConfigurationList = de_MetricsConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["MetricsConfiguration"]), context); - } - if (data["NextContinuationToken"] !== void 0) { - contents.NextContinuationToken = (0, smithy_client_1.expectString)(data["NextContinuationToken"]); - } - return contents; - }; - exports2.de_ListBucketMetricsConfigurationsCommand = de_ListBucketMetricsConfigurationsCommand; - var de_ListBucketMetricsConfigurationsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListBucketsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBucketsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.Buckets === "") { - contents.Buckets = []; - } else if (data["Buckets"] !== void 0 && data["Buckets"]["Bucket"] !== void 0) { - contents.Buckets = de_Buckets((0, smithy_client_1.getArrayIfSingleItem)(data["Buckets"]["Bucket"]), context); - } - if (data["Owner"] !== void 0) { - contents.Owner = de_Owner(data["Owner"], context); - } - return contents; - }; - exports2.de_ListBucketsCommand = de_ListBucketsCommand; - var de_ListBucketsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListMultipartUploadsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListMultipartUploadsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(data["Bucket"]); - } - if (data.CommonPrefixes === "") { - contents.CommonPrefixes = []; - } else if (data["CommonPrefixes"] !== void 0) { - contents.CommonPrefixes = de_CommonPrefixList((0, smithy_client_1.getArrayIfSingleItem)(data["CommonPrefixes"]), context); - } - if (data["Delimiter"] !== void 0) { - contents.Delimiter = (0, smithy_client_1.expectString)(data["Delimiter"]); - } - if (data["EncodingType"] !== void 0) { - contents.EncodingType = (0, smithy_client_1.expectString)(data["EncodingType"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["KeyMarker"] !== void 0) { - contents.KeyMarker = (0, smithy_client_1.expectString)(data["KeyMarker"]); - } - if (data["MaxUploads"] !== void 0) { - contents.MaxUploads = (0, smithy_client_1.strictParseInt32)(data["MaxUploads"]); - } - if (data["NextKeyMarker"] !== void 0) { - contents.NextKeyMarker = (0, smithy_client_1.expectString)(data["NextKeyMarker"]); - } - if (data["NextUploadIdMarker"] !== void 0) { - contents.NextUploadIdMarker = (0, smithy_client_1.expectString)(data["NextUploadIdMarker"]); - } - if (data["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(data["Prefix"]); - } - if (data["UploadIdMarker"] !== void 0) { - contents.UploadIdMarker = (0, smithy_client_1.expectString)(data["UploadIdMarker"]); - } - if (data.Upload === "") { - contents.Uploads = []; - } else if (data["Upload"] !== void 0) { - contents.Uploads = de_MultipartUploadList((0, smithy_client_1.getArrayIfSingleItem)(data["Upload"]), context); - } - return contents; - }; - exports2.de_ListMultipartUploadsCommand = de_ListMultipartUploadsCommand; - var de_ListMultipartUploadsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListObjectsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListObjectsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.CommonPrefixes === "") { - contents.CommonPrefixes = []; - } else if (data["CommonPrefixes"] !== void 0) { - contents.CommonPrefixes = de_CommonPrefixList((0, smithy_client_1.getArrayIfSingleItem)(data["CommonPrefixes"]), context); - } - if (data.Contents === "") { - contents.Contents = []; - } else if (data["Contents"] !== void 0) { - contents.Contents = de_ObjectList((0, smithy_client_1.getArrayIfSingleItem)(data["Contents"]), context); - } - if (data["Delimiter"] !== void 0) { - contents.Delimiter = (0, smithy_client_1.expectString)(data["Delimiter"]); - } - if (data["EncodingType"] !== void 0) { - contents.EncodingType = (0, smithy_client_1.expectString)(data["EncodingType"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["Marker"] !== void 0) { - contents.Marker = (0, smithy_client_1.expectString)(data["Marker"]); - } - if (data["MaxKeys"] !== void 0) { - contents.MaxKeys = (0, smithy_client_1.strictParseInt32)(data["MaxKeys"]); - } - if (data["Name"] !== void 0) { - contents.Name = (0, smithy_client_1.expectString)(data["Name"]); - } - if (data["NextMarker"] !== void 0) { - contents.NextMarker = (0, smithy_client_1.expectString)(data["NextMarker"]); - } - if (data["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(data["Prefix"]); - } - return contents; - }; - exports2.de_ListObjectsCommand = de_ListObjectsCommand; - var de_ListObjectsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchBucket": - case "com.amazonaws.s3#NoSuchBucket": - throw await de_NoSuchBucketRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_ListObjectsV2Command = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListObjectsV2CommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.CommonPrefixes === "") { - contents.CommonPrefixes = []; - } else if (data["CommonPrefixes"] !== void 0) { - contents.CommonPrefixes = de_CommonPrefixList((0, smithy_client_1.getArrayIfSingleItem)(data["CommonPrefixes"]), context); - } - if (data.Contents === "") { - contents.Contents = []; - } else if (data["Contents"] !== void 0) { - contents.Contents = de_ObjectList((0, smithy_client_1.getArrayIfSingleItem)(data["Contents"]), context); - } - if (data["ContinuationToken"] !== void 0) { - contents.ContinuationToken = (0, smithy_client_1.expectString)(data["ContinuationToken"]); - } - if (data["Delimiter"] !== void 0) { - contents.Delimiter = (0, smithy_client_1.expectString)(data["Delimiter"]); - } - if (data["EncodingType"] !== void 0) { - contents.EncodingType = (0, smithy_client_1.expectString)(data["EncodingType"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["KeyCount"] !== void 0) { - contents.KeyCount = (0, smithy_client_1.strictParseInt32)(data["KeyCount"]); - } - if (data["MaxKeys"] !== void 0) { - contents.MaxKeys = (0, smithy_client_1.strictParseInt32)(data["MaxKeys"]); - } - if (data["Name"] !== void 0) { - contents.Name = (0, smithy_client_1.expectString)(data["Name"]); - } - if (data["NextContinuationToken"] !== void 0) { - contents.NextContinuationToken = (0, smithy_client_1.expectString)(data["NextContinuationToken"]); - } - if (data["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(data["Prefix"]); - } - if (data["StartAfter"] !== void 0) { - contents.StartAfter = (0, smithy_client_1.expectString)(data["StartAfter"]); - } - return contents; - }; - exports2.de_ListObjectsV2Command = de_ListObjectsV2Command; - var de_ListObjectsV2CommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchBucket": - case "com.amazonaws.s3#NoSuchBucket": - throw await de_NoSuchBucketRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_ListObjectVersionsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListObjectVersionsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data.CommonPrefixes === "") { - contents.CommonPrefixes = []; - } else if (data["CommonPrefixes"] !== void 0) { - contents.CommonPrefixes = de_CommonPrefixList((0, smithy_client_1.getArrayIfSingleItem)(data["CommonPrefixes"]), context); - } - if (data.DeleteMarker === "") { - contents.DeleteMarkers = []; - } else if (data["DeleteMarker"] !== void 0) { - contents.DeleteMarkers = de_DeleteMarkers((0, smithy_client_1.getArrayIfSingleItem)(data["DeleteMarker"]), context); - } - if (data["Delimiter"] !== void 0) { - contents.Delimiter = (0, smithy_client_1.expectString)(data["Delimiter"]); - } - if (data["EncodingType"] !== void 0) { - contents.EncodingType = (0, smithy_client_1.expectString)(data["EncodingType"]); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["KeyMarker"] !== void 0) { - contents.KeyMarker = (0, smithy_client_1.expectString)(data["KeyMarker"]); - } - if (data["MaxKeys"] !== void 0) { - contents.MaxKeys = (0, smithy_client_1.strictParseInt32)(data["MaxKeys"]); - } - if (data["Name"] !== void 0) { - contents.Name = (0, smithy_client_1.expectString)(data["Name"]); - } - if (data["NextKeyMarker"] !== void 0) { - contents.NextKeyMarker = (0, smithy_client_1.expectString)(data["NextKeyMarker"]); - } - if (data["NextVersionIdMarker"] !== void 0) { - contents.NextVersionIdMarker = (0, smithy_client_1.expectString)(data["NextVersionIdMarker"]); - } - if (data["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(data["Prefix"]); - } - if (data["VersionIdMarker"] !== void 0) { - contents.VersionIdMarker = (0, smithy_client_1.expectString)(data["VersionIdMarker"]); - } - if (data.Version === "") { - contents.Versions = []; - } else if (data["Version"] !== void 0) { - contents.Versions = de_ObjectVersionList((0, smithy_client_1.getArrayIfSingleItem)(data["Version"]), context); - } - return contents; - }; - exports2.de_ListObjectVersionsCommand = de_ListObjectVersionsCommand; - var de_ListObjectVersionsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_ListPartsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListPartsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - AbortDate: [ - () => void 0 !== output.headers["x-amz-abort-date"], - () => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc7231DateTime)(output.headers["x-amz-abort-date"])) - ], - AbortRuleId: [, output.headers["x-amz-abort-rule-id"]], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body"); - if (data["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(data["Bucket"]); - } - if (data["ChecksumAlgorithm"] !== void 0) { - contents.ChecksumAlgorithm = (0, smithy_client_1.expectString)(data["ChecksumAlgorithm"]); - } - if (data["Initiator"] !== void 0) { - contents.Initiator = de_Initiator(data["Initiator"], context); - } - if (data["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(data["IsTruncated"]); - } - if (data["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(data["Key"]); - } - if (data["MaxParts"] !== void 0) { - contents.MaxParts = (0, smithy_client_1.strictParseInt32)(data["MaxParts"]); - } - if (data["NextPartNumberMarker"] !== void 0) { - contents.NextPartNumberMarker = (0, smithy_client_1.expectString)(data["NextPartNumberMarker"]); - } - if (data["Owner"] !== void 0) { - contents.Owner = de_Owner(data["Owner"], context); - } - if (data["PartNumberMarker"] !== void 0) { - contents.PartNumberMarker = (0, smithy_client_1.expectString)(data["PartNumberMarker"]); - } - if (data.Part === "") { - contents.Parts = []; - } else if (data["Part"] !== void 0) { - contents.Parts = de_Parts((0, smithy_client_1.getArrayIfSingleItem)(data["Part"]), context); - } - if (data["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(data["StorageClass"]); - } - if (data["UploadId"] !== void 0) { - contents.UploadId = (0, smithy_client_1.expectString)(data["UploadId"]); - } - return contents; - }; - exports2.de_ListPartsCommand = de_ListPartsCommand; - var de_ListPartsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketAccelerateConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketAccelerateConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketAccelerateConfigurationCommand = de_PutBucketAccelerateConfigurationCommand; - var de_PutBucketAccelerateConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketAclCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketAclCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketAclCommand = de_PutBucketAclCommand; - var de_PutBucketAclCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketAnalyticsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketAnalyticsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketAnalyticsConfigurationCommand = de_PutBucketAnalyticsConfigurationCommand; - var de_PutBucketAnalyticsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketCorsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketCorsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketCorsCommand = de_PutBucketCorsCommand; - var de_PutBucketCorsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketEncryptionCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketEncryptionCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketEncryptionCommand = de_PutBucketEncryptionCommand; - var de_PutBucketEncryptionCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketIntelligentTieringConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketIntelligentTieringConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketIntelligentTieringConfigurationCommand = de_PutBucketIntelligentTieringConfigurationCommand; - var de_PutBucketIntelligentTieringConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketInventoryConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketInventoryConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketInventoryConfigurationCommand = de_PutBucketInventoryConfigurationCommand; - var de_PutBucketInventoryConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketLifecycleConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketLifecycleConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketLifecycleConfigurationCommand = de_PutBucketLifecycleConfigurationCommand; - var de_PutBucketLifecycleConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketLoggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketLoggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketLoggingCommand = de_PutBucketLoggingCommand; - var de_PutBucketLoggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketMetricsConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketMetricsConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketMetricsConfigurationCommand = de_PutBucketMetricsConfigurationCommand; - var de_PutBucketMetricsConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketNotificationConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketNotificationConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketNotificationConfigurationCommand = de_PutBucketNotificationConfigurationCommand; - var de_PutBucketNotificationConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketOwnershipControlsCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketOwnershipControlsCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketOwnershipControlsCommand = de_PutBucketOwnershipControlsCommand; - var de_PutBucketOwnershipControlsCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketPolicyCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketPolicyCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketPolicyCommand = de_PutBucketPolicyCommand; - var de_PutBucketPolicyCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketReplicationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketReplicationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketReplicationCommand = de_PutBucketReplicationCommand; - var de_PutBucketReplicationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketRequestPaymentCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketRequestPaymentCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketRequestPaymentCommand = de_PutBucketRequestPaymentCommand; - var de_PutBucketRequestPaymentCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketTaggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketTaggingCommand = de_PutBucketTaggingCommand; - var de_PutBucketTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketVersioningCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketVersioningCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketVersioningCommand = de_PutBucketVersioningCommand; - var de_PutBucketVersioningCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutBucketWebsiteCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutBucketWebsiteCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutBucketWebsiteCommand = de_PutBucketWebsiteCommand; - var de_PutBucketWebsiteCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutObjectCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - Expiration: [, output.headers["x-amz-expiration"]], - ETag: [, output.headers["etag"]], - ChecksumCRC32: [, output.headers["x-amz-checksum-crc32"]], - ChecksumCRC32C: [, output.headers["x-amz-checksum-crc32c"]], - ChecksumSHA1: [, output.headers["x-amz-checksum-sha1"]], - ChecksumSHA256: [, output.headers["x-amz-checksum-sha256"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - VersionId: [, output.headers["x-amz-version-id"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - SSEKMSEncryptionContext: [, output.headers["x-amz-server-side-encryption-context"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectCommand = de_PutObjectCommand; - var de_PutObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutObjectAclCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectAclCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectAclCommand = de_PutObjectAclCommand; - var de_PutObjectAclCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "NoSuchKey": - case "com.amazonaws.s3#NoSuchKey": - throw await de_NoSuchKeyRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_PutObjectLegalHoldCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectLegalHoldCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectLegalHoldCommand = de_PutObjectLegalHoldCommand; - var de_PutObjectLegalHoldCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutObjectLockConfigurationCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectLockConfigurationCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectLockConfigurationCommand = de_PutObjectLockConfigurationCommand; - var de_PutObjectLockConfigurationCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutObjectRetentionCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectRetentionCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectRetentionCommand = de_PutObjectRetentionCommand; - var de_PutObjectRetentionCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutObjectTaggingCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutObjectTaggingCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - VersionId: [, output.headers["x-amz-version-id"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutObjectTaggingCommand = de_PutObjectTaggingCommand; - var de_PutObjectTaggingCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_PutPublicAccessBlockCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_PutPublicAccessBlockCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_PutPublicAccessBlockCommand = de_PutPublicAccessBlockCommand; - var de_PutPublicAccessBlockCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_RestoreObjectCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_RestoreObjectCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - RequestCharged: [, output.headers["x-amz-request-charged"]], - RestoreOutputPath: [, output.headers["x-amz-restore-output-path"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_RestoreObjectCommand = de_RestoreObjectCommand; - var de_RestoreObjectCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - switch (errorCode) { - case "ObjectAlreadyInActiveTierError": - case "com.amazonaws.s3#ObjectAlreadyInActiveTierError": - throw await de_ObjectAlreadyInActiveTierErrorRes(parsedOutput, context); - default: - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - } - }; - var de_SelectObjectContentCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_SelectObjectContentCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - const data = output.body; - contents.Payload = de_SelectObjectContentEventStream(data, context); - return contents; - }; - exports2.de_SelectObjectContentCommand = de_SelectObjectContentCommand; - var de_SelectObjectContentCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_UploadPartCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_UploadPartCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - ETag: [, output.headers["etag"]], - ChecksumCRC32: [, output.headers["x-amz-checksum-crc32"]], - ChecksumCRC32C: [, output.headers["x-amz-checksum-crc32c"]], - ChecksumSHA1: [, output.headers["x-amz-checksum-sha1"]], - ChecksumSHA256: [, output.headers["x-amz-checksum-sha256"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_UploadPartCommand = de_UploadPartCommand; - var de_UploadPartCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_UploadPartCopyCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_UploadPartCopyCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output), - CopySourceVersionId: [, output.headers["x-amz-copy-source-version-id"]], - ServerSideEncryption: [, output.headers["x-amz-server-side-encryption"]], - SSECustomerAlgorithm: [, output.headers["x-amz-server-side-encryption-customer-algorithm"]], - SSECustomerKeyMD5: [, output.headers["x-amz-server-side-encryption-customer-key-md5"]], - SSEKMSKeyId: [, output.headers["x-amz-server-side-encryption-aws-kms-key-id"]], - BucketKeyEnabled: [ - () => void 0 !== output.headers["x-amz-server-side-encryption-bucket-key-enabled"], - () => (0, smithy_client_1.parseBoolean)(output.headers["x-amz-server-side-encryption-bucket-key-enabled"]) - ], - RequestCharged: [, output.headers["x-amz-request-charged"]] - }); - const data = (0, smithy_client_1.expectObject)(await parseBody(output.body, context)); - contents.CopyPartResult = de_CopyPartResult(data, context); - return contents; - }; - exports2.de_UploadPartCopyCommand = de_UploadPartCopyCommand; - var de_UploadPartCopyCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var de_WriteGetObjectResponseCommand = async (output, context) => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_WriteGetObjectResponseCommandError(output, context); - } - const contents = (0, smithy_client_1.map)({ - $metadata: deserializeMetadata(output) - }); - await (0, smithy_client_1.collectBody)(output.body, context); - return contents; - }; - exports2.de_WriteGetObjectResponseCommand = de_WriteGetObjectResponseCommand; - var de_WriteGetObjectResponseCommandError = async (output, context) => { - const parsedOutput = { - ...output, - body: await parseErrorBody(output.body, context) - }; - const errorCode = loadRestXmlErrorCode(output, parsedOutput.body); - const parsedBody = parsedOutput.body; - return throwDefaultError({ - output, - parsedBody, - errorCode - }); - }; - var throwDefaultError = (0, smithy_client_1.withBaseException)(S3ServiceException_1.S3ServiceException); - var de_BucketAlreadyExistsRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.BucketAlreadyExists({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_BucketAlreadyOwnedByYouRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.BucketAlreadyOwnedByYou({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_InvalidObjectStateRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - if (data["AccessTier"] !== void 0) { - contents.AccessTier = (0, smithy_client_1.expectString)(data["AccessTier"]); - } - if (data["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(data["StorageClass"]); - } - const exception = new models_0_1.InvalidObjectState({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_NoSuchBucketRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.NoSuchBucket({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_NoSuchKeyRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.NoSuchKey({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_NoSuchUploadRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.NoSuchUpload({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_NotFoundRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.NotFound({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_ObjectAlreadyInActiveTierErrorRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_1_1.ObjectAlreadyInActiveTierError({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_ObjectNotInActiveTierErrorRes = async (parsedOutput, context) => { - const contents = (0, smithy_client_1.map)({}); - const data = parsedOutput.body; - const exception = new models_0_1.ObjectNotInActiveTierError({ - $metadata: deserializeMetadata(parsedOutput), - ...contents - }); - return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body); - }; - var de_SelectObjectContentEventStream = (output, context) => { - return context.eventStreamMarshaller.deserialize(output, async (event) => { - if (event["Records"] != null) { - return { - Records: await de_RecordsEvent_event(event["Records"], context) - }; - } - if (event["Stats"] != null) { - return { - Stats: await de_StatsEvent_event(event["Stats"], context) - }; - } - if (event["Progress"] != null) { - return { - Progress: await de_ProgressEvent_event(event["Progress"], context) - }; - } - if (event["Cont"] != null) { - return { - Cont: await de_ContinuationEvent_event(event["Cont"], context) - }; - } - if (event["End"] != null) { - return { - End: await de_EndEvent_event(event["End"], context) - }; - } - return { $unknown: output }; - }); - }; - var de_ContinuationEvent_event = async (output, context) => { - const contents = {}; - const data = await parseBody(output.body, context); - Object.assign(contents, de_ContinuationEvent(data, context)); - return contents; - }; - var de_EndEvent_event = async (output, context) => { - const contents = {}; - const data = await parseBody(output.body, context); - Object.assign(contents, de_EndEvent(data, context)); - return contents; - }; - var de_ProgressEvent_event = async (output, context) => { - const contents = {}; - const data = await parseBody(output.body, context); - contents.Details = de_Progress(data, context); - return contents; - }; - var de_RecordsEvent_event = async (output, context) => { - const contents = {}; - contents.Payload = output.body; - return contents; - }; - var de_StatsEvent_event = async (output, context) => { - const contents = {}; - const data = await parseBody(output.body, context); - contents.Details = de_Stats(data, context); - return contents; - }; - var se_AbortIncompleteMultipartUpload = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AbortIncompleteMultipartUpload"); - if (input.DaysAfterInitiation != null) { - const node = xml_builder_1.XmlNode.of("DaysAfterInitiation", String(input.DaysAfterInitiation)).withName("DaysAfterInitiation"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AccelerateConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AccelerateConfiguration"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("BucketAccelerateStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AccessControlPolicy = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AccessControlPolicy"); - if (input.Grants != null) { - const nodes = se_Grants(input.Grants, context); - const containerNode = new xml_builder_1.XmlNode("AccessControlList"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - if (input.Owner != null) { - const node = se_Owner(input.Owner, context).withName("Owner"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AccessControlTranslation = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AccessControlTranslation"); - if (input.Owner != null) { - const node = xml_builder_1.XmlNode.of("OwnerOverride", input.Owner).withName("Owner"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AllowedHeaders = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("AllowedHeader", entry); - return node.withName("member"); - }); - }; - var se_AllowedMethods = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("AllowedMethod", entry); - return node.withName("member"); - }); - }; - var se_AllowedOrigins = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("AllowedOrigin", entry); - return node.withName("member"); - }); - }; - var se_AnalyticsAndOperator = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AnalyticsAndOperator"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tags != null) { - const nodes = se_TagSet(input.Tags, context); - nodes.map((node) => { - node = node.withName("Tag"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_AnalyticsConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AnalyticsConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("AnalyticsId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_AnalyticsFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - if (input.StorageClassAnalysis != null) { - const node = se_StorageClassAnalysis(input.StorageClassAnalysis, context).withName("StorageClassAnalysis"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AnalyticsExportDestination = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AnalyticsExportDestination"); - if (input.S3BucketDestination != null) { - const node = se_AnalyticsS3BucketDestination(input.S3BucketDestination, context).withName("S3BucketDestination"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_AnalyticsFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AnalyticsFilter"); - models_0_1.AnalyticsFilter.visit(input, { - Prefix: (value) => { - const node = xml_builder_1.XmlNode.of("Prefix", value).withName("Prefix"); - bodyNode.addChildNode(node); - }, - Tag: (value) => { - const node = se_Tag(value, context).withName("Tag"); - bodyNode.addChildNode(node); - }, - And: (value) => { - const node = se_AnalyticsAndOperator(value, context).withName("And"); - bodyNode.addChildNode(node); - }, - _: (name, value) => { - if (!(value instanceof xml_builder_1.XmlNode || value instanceof xml_builder_1.XmlText)) { - throw new Error("Unable to serialize unknown union members in XML."); - } - bodyNode.addChildNode(new xml_builder_1.XmlNode(name).addChildNode(value)); - } - }); - return bodyNode; - }; - var se_AnalyticsS3BucketDestination = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("AnalyticsS3BucketDestination"); - if (input.Format != null) { - const node = xml_builder_1.XmlNode.of("AnalyticsS3ExportFileFormat", input.Format).withName("Format"); - bodyNode.addChildNode(node); - } - if (input.BucketAccountId != null) { - const node = xml_builder_1.XmlNode.of("AccountId", input.BucketAccountId).withName("BucketAccountId"); - bodyNode.addChildNode(node); - } - if (input.Bucket != null) { - const node = xml_builder_1.XmlNode.of("BucketName", input.Bucket).withName("Bucket"); - bodyNode.addChildNode(node); - } - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_BucketLifecycleConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("BucketLifecycleConfiguration"); - if (input.Rules != null) { - const nodes = se_LifecycleRules(input.Rules, context); - nodes.map((node) => { - node = node.withName("Rule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_BucketLoggingStatus = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("BucketLoggingStatus"); - if (input.LoggingEnabled != null) { - const node = se_LoggingEnabled(input.LoggingEnabled, context).withName("LoggingEnabled"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CompletedMultipartUpload = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CompletedMultipartUpload"); - if (input.Parts != null) { - const nodes = se_CompletedPartList(input.Parts, context); - nodes.map((node) => { - node = node.withName("Part"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_CompletedPart = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CompletedPart"); - if (input.ETag != null) { - const node = xml_builder_1.XmlNode.of("ETag", input.ETag).withName("ETag"); - bodyNode.addChildNode(node); - } - if (input.ChecksumCRC32 != null) { - const node = xml_builder_1.XmlNode.of("ChecksumCRC32", input.ChecksumCRC32).withName("ChecksumCRC32"); - bodyNode.addChildNode(node); - } - if (input.ChecksumCRC32C != null) { - const node = xml_builder_1.XmlNode.of("ChecksumCRC32C", input.ChecksumCRC32C).withName("ChecksumCRC32C"); - bodyNode.addChildNode(node); - } - if (input.ChecksumSHA1 != null) { - const node = xml_builder_1.XmlNode.of("ChecksumSHA1", input.ChecksumSHA1).withName("ChecksumSHA1"); - bodyNode.addChildNode(node); - } - if (input.ChecksumSHA256 != null) { - const node = xml_builder_1.XmlNode.of("ChecksumSHA256", input.ChecksumSHA256).withName("ChecksumSHA256"); - bodyNode.addChildNode(node); - } - if (input.PartNumber != null) { - const node = xml_builder_1.XmlNode.of("PartNumber", String(input.PartNumber)).withName("PartNumber"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CompletedPartList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_CompletedPart(entry, context); - return node.withName("member"); - }); - }; - var se_Condition = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Condition"); - if (input.HttpErrorCodeReturnedEquals != null) { - const node = xml_builder_1.XmlNode.of("HttpErrorCodeReturnedEquals", input.HttpErrorCodeReturnedEquals).withName("HttpErrorCodeReturnedEquals"); - bodyNode.addChildNode(node); - } - if (input.KeyPrefixEquals != null) { - const node = xml_builder_1.XmlNode.of("KeyPrefixEquals", input.KeyPrefixEquals).withName("KeyPrefixEquals"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CORSConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CORSConfiguration"); - if (input.CORSRules != null) { - const nodes = se_CORSRules(input.CORSRules, context); - nodes.map((node) => { - node = node.withName("CORSRule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_CORSRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CORSRule"); - if (input.ID != null) { - const node = xml_builder_1.XmlNode.of("ID", input.ID).withName("ID"); - bodyNode.addChildNode(node); - } - if (input.AllowedHeaders != null) { - const nodes = se_AllowedHeaders(input.AllowedHeaders, context); - nodes.map((node) => { - node = node.withName("AllowedHeader"); - bodyNode.addChildNode(node); - }); - } - if (input.AllowedMethods != null) { - const nodes = se_AllowedMethods(input.AllowedMethods, context); - nodes.map((node) => { - node = node.withName("AllowedMethod"); - bodyNode.addChildNode(node); - }); - } - if (input.AllowedOrigins != null) { - const nodes = se_AllowedOrigins(input.AllowedOrigins, context); - nodes.map((node) => { - node = node.withName("AllowedOrigin"); - bodyNode.addChildNode(node); - }); - } - if (input.ExposeHeaders != null) { - const nodes = se_ExposeHeaders(input.ExposeHeaders, context); - nodes.map((node) => { - node = node.withName("ExposeHeader"); - bodyNode.addChildNode(node); - }); - } - if (input.MaxAgeSeconds != null) { - const node = xml_builder_1.XmlNode.of("MaxAgeSeconds", String(input.MaxAgeSeconds)).withName("MaxAgeSeconds"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CORSRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_CORSRule(entry, context); - return node.withName("member"); - }); - }; - var se_CreateBucketConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CreateBucketConfiguration"); - if (input.LocationConstraint != null) { - const node = xml_builder_1.XmlNode.of("BucketLocationConstraint", input.LocationConstraint).withName("LocationConstraint"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CSVInput = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CSVInput"); - if (input.FileHeaderInfo != null) { - const node = xml_builder_1.XmlNode.of("FileHeaderInfo", input.FileHeaderInfo).withName("FileHeaderInfo"); - bodyNode.addChildNode(node); - } - if (input.Comments != null) { - const node = xml_builder_1.XmlNode.of("Comments", input.Comments).withName("Comments"); - bodyNode.addChildNode(node); - } - if (input.QuoteEscapeCharacter != null) { - const node = xml_builder_1.XmlNode.of("QuoteEscapeCharacter", input.QuoteEscapeCharacter).withName("QuoteEscapeCharacter"); - bodyNode.addChildNode(node); - } - if (input.RecordDelimiter != null) { - const node = xml_builder_1.XmlNode.of("RecordDelimiter", input.RecordDelimiter).withName("RecordDelimiter"); - bodyNode.addChildNode(node); - } - if (input.FieldDelimiter != null) { - const node = xml_builder_1.XmlNode.of("FieldDelimiter", input.FieldDelimiter).withName("FieldDelimiter"); - bodyNode.addChildNode(node); - } - if (input.QuoteCharacter != null) { - const node = xml_builder_1.XmlNode.of("QuoteCharacter", input.QuoteCharacter).withName("QuoteCharacter"); - bodyNode.addChildNode(node); - } - if (input.AllowQuotedRecordDelimiter != null) { - const node = xml_builder_1.XmlNode.of("AllowQuotedRecordDelimiter", String(input.AllowQuotedRecordDelimiter)).withName("AllowQuotedRecordDelimiter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_CSVOutput = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("CSVOutput"); - if (input.QuoteFields != null) { - const node = xml_builder_1.XmlNode.of("QuoteFields", input.QuoteFields).withName("QuoteFields"); - bodyNode.addChildNode(node); - } - if (input.QuoteEscapeCharacter != null) { - const node = xml_builder_1.XmlNode.of("QuoteEscapeCharacter", input.QuoteEscapeCharacter).withName("QuoteEscapeCharacter"); - bodyNode.addChildNode(node); - } - if (input.RecordDelimiter != null) { - const node = xml_builder_1.XmlNode.of("RecordDelimiter", input.RecordDelimiter).withName("RecordDelimiter"); - bodyNode.addChildNode(node); - } - if (input.FieldDelimiter != null) { - const node = xml_builder_1.XmlNode.of("FieldDelimiter", input.FieldDelimiter).withName("FieldDelimiter"); - bodyNode.addChildNode(node); - } - if (input.QuoteCharacter != null) { - const node = xml_builder_1.XmlNode.of("QuoteCharacter", input.QuoteCharacter).withName("QuoteCharacter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_DefaultRetention = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("DefaultRetention"); - if (input.Mode != null) { - const node = xml_builder_1.XmlNode.of("ObjectLockRetentionMode", input.Mode).withName("Mode"); - bodyNode.addChildNode(node); - } - if (input.Days != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.Days)).withName("Days"); - bodyNode.addChildNode(node); - } - if (input.Years != null) { - const node = xml_builder_1.XmlNode.of("Years", String(input.Years)).withName("Years"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Delete = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Delete"); - if (input.Objects != null) { - const nodes = se_ObjectIdentifierList(input.Objects, context); - nodes.map((node) => { - node = node.withName("Object"); - bodyNode.addChildNode(node); - }); - } - if (input.Quiet != null) { - const node = xml_builder_1.XmlNode.of("Quiet", String(input.Quiet)).withName("Quiet"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_DeleteMarkerReplication = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("DeleteMarkerReplication"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("DeleteMarkerReplicationStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Destination = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Destination"); - if (input.Bucket != null) { - const node = xml_builder_1.XmlNode.of("BucketName", input.Bucket).withName("Bucket"); - bodyNode.addChildNode(node); - } - if (input.Account != null) { - const node = xml_builder_1.XmlNode.of("AccountId", input.Account).withName("Account"); - bodyNode.addChildNode(node); - } - if (input.StorageClass != null) { - const node = xml_builder_1.XmlNode.of("StorageClass", input.StorageClass).withName("StorageClass"); - bodyNode.addChildNode(node); - } - if (input.AccessControlTranslation != null) { - const node = se_AccessControlTranslation(input.AccessControlTranslation, context).withName("AccessControlTranslation"); - bodyNode.addChildNode(node); - } - if (input.EncryptionConfiguration != null) { - const node = se_EncryptionConfiguration(input.EncryptionConfiguration, context).withName("EncryptionConfiguration"); - bodyNode.addChildNode(node); - } - if (input.ReplicationTime != null) { - const node = se_ReplicationTime(input.ReplicationTime, context).withName("ReplicationTime"); - bodyNode.addChildNode(node); - } - if (input.Metrics != null) { - const node = se_Metrics(input.Metrics, context).withName("Metrics"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Encryption = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Encryption"); - if (input.EncryptionType != null) { - const node = xml_builder_1.XmlNode.of("ServerSideEncryption", input.EncryptionType).withName("EncryptionType"); - bodyNode.addChildNode(node); - } - if (input.KMSKeyId != null) { - const node = xml_builder_1.XmlNode.of("SSEKMSKeyId", input.KMSKeyId).withName("KMSKeyId"); - bodyNode.addChildNode(node); - } - if (input.KMSContext != null) { - const node = xml_builder_1.XmlNode.of("KMSContext", input.KMSContext).withName("KMSContext"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_EncryptionConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("EncryptionConfiguration"); - if (input.ReplicaKmsKeyID != null) { - const node = xml_builder_1.XmlNode.of("ReplicaKmsKeyID", input.ReplicaKmsKeyID).withName("ReplicaKmsKeyID"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ErrorDocument = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ErrorDocument"); - if (input.Key != null) { - const node = xml_builder_1.XmlNode.of("ObjectKey", input.Key).withName("Key"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_EventBridgeConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("EventBridgeConfiguration"); - return bodyNode; - }; - var se_EventList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("Event", entry); - return node.withName("member"); - }); - }; - var se_ExistingObjectReplication = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ExistingObjectReplication"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ExistingObjectReplicationStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ExposeHeaders = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("ExposeHeader", entry); - return node.withName("member"); - }); - }; - var se_FilterRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("FilterRule"); - if (input.Name != null) { - const node = xml_builder_1.XmlNode.of("FilterRuleName", input.Name).withName("Name"); - bodyNode.addChildNode(node); - } - if (input.Value != null) { - const node = xml_builder_1.XmlNode.of("FilterRuleValue", input.Value).withName("Value"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_FilterRuleList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_FilterRule(entry, context); - return node.withName("member"); - }); - }; - var se_GlacierJobParameters = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("GlacierJobParameters"); - if (input.Tier != null) { - const node = xml_builder_1.XmlNode.of("Tier", input.Tier).withName("Tier"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Grant = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Grant"); - if (input.Grantee != null) { - const node = se_Grantee(input.Grantee, context).withName("Grantee"); - node.addAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); - bodyNode.addChildNode(node); - } - if (input.Permission != null) { - const node = xml_builder_1.XmlNode.of("Permission", input.Permission).withName("Permission"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Grantee = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Grantee"); - if (input.DisplayName != null) { - const node = xml_builder_1.XmlNode.of("DisplayName", input.DisplayName).withName("DisplayName"); - bodyNode.addChildNode(node); - } - if (input.EmailAddress != null) { - const node = xml_builder_1.XmlNode.of("EmailAddress", input.EmailAddress).withName("EmailAddress"); - bodyNode.addChildNode(node); - } - if (input.ID != null) { - const node = xml_builder_1.XmlNode.of("ID", input.ID).withName("ID"); - bodyNode.addChildNode(node); - } - if (input.URI != null) { - const node = xml_builder_1.XmlNode.of("URI", input.URI).withName("URI"); - bodyNode.addChildNode(node); - } - if (input.Type != null) { - bodyNode.addAttribute("xsi:type", input.Type); - } - return bodyNode; - }; - var se_Grants = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_Grant(entry, context); - return node.withName("Grant"); - }); - }; - var se_IndexDocument = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("IndexDocument"); - if (input.Suffix != null) { - const node = xml_builder_1.XmlNode.of("Suffix", input.Suffix).withName("Suffix"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InputSerialization = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InputSerialization"); - if (input.CSV != null) { - const node = se_CSVInput(input.CSV, context).withName("CSV"); - bodyNode.addChildNode(node); - } - if (input.CompressionType != null) { - const node = xml_builder_1.XmlNode.of("CompressionType", input.CompressionType).withName("CompressionType"); - bodyNode.addChildNode(node); - } - if (input.JSON != null) { - const node = se_JSONInput(input.JSON, context).withName("JSON"); - bodyNode.addChildNode(node); - } - if (input.Parquet != null) { - const node = se_ParquetInput(input.Parquet, context).withName("Parquet"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_IntelligentTieringAndOperator = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("IntelligentTieringAndOperator"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tags != null) { - const nodes = se_TagSet(input.Tags, context); - nodes.map((node) => { - node = node.withName("Tag"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_IntelligentTieringConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("IntelligentTieringConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("IntelligentTieringId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_IntelligentTieringFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("IntelligentTieringStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - if (input.Tierings != null) { - const nodes = se_TieringList(input.Tierings, context); - nodes.map((node) => { - node = node.withName("Tiering"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_IntelligentTieringFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("IntelligentTieringFilter"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tag != null) { - const node = se_Tag(input.Tag, context).withName("Tag"); - bodyNode.addChildNode(node); - } - if (input.And != null) { - const node = se_IntelligentTieringAndOperator(input.And, context).withName("And"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventoryConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventoryConfiguration"); - if (input.Destination != null) { - const node = se_InventoryDestination(input.Destination, context).withName("Destination"); - bodyNode.addChildNode(node); - } - if (input.IsEnabled != null) { - const node = xml_builder_1.XmlNode.of("IsEnabled", String(input.IsEnabled)).withName("IsEnabled"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_InventoryFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("InventoryId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.IncludedObjectVersions != null) { - const node = xml_builder_1.XmlNode.of("InventoryIncludedObjectVersions", input.IncludedObjectVersions).withName("IncludedObjectVersions"); - bodyNode.addChildNode(node); - } - if (input.OptionalFields != null) { - const nodes = se_InventoryOptionalFields(input.OptionalFields, context); - const containerNode = new xml_builder_1.XmlNode("OptionalFields"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - if (input.Schedule != null) { - const node = se_InventorySchedule(input.Schedule, context).withName("Schedule"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventoryDestination = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventoryDestination"); - if (input.S3BucketDestination != null) { - const node = se_InventoryS3BucketDestination(input.S3BucketDestination, context).withName("S3BucketDestination"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventoryEncryption = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventoryEncryption"); - if (input.SSES3 != null) { - const node = se_SSES3(input.SSES3, context).withName("SSE-S3"); - bodyNode.addChildNode(node); - } - if (input.SSEKMS != null) { - const node = se_SSEKMS(input.SSEKMS, context).withName("SSE-KMS"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventoryFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventoryFilter"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventoryOptionalFields = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = xml_builder_1.XmlNode.of("InventoryOptionalField", entry); - return node.withName("Field"); - }); - }; - var se_InventoryS3BucketDestination = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventoryS3BucketDestination"); - if (input.AccountId != null) { - const node = xml_builder_1.XmlNode.of("AccountId", input.AccountId).withName("AccountId"); - bodyNode.addChildNode(node); - } - if (input.Bucket != null) { - const node = xml_builder_1.XmlNode.of("BucketName", input.Bucket).withName("Bucket"); - bodyNode.addChildNode(node); - } - if (input.Format != null) { - const node = xml_builder_1.XmlNode.of("InventoryFormat", input.Format).withName("Format"); - bodyNode.addChildNode(node); - } - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Encryption != null) { - const node = se_InventoryEncryption(input.Encryption, context).withName("Encryption"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_InventorySchedule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("InventorySchedule"); - if (input.Frequency != null) { - const node = xml_builder_1.XmlNode.of("InventoryFrequency", input.Frequency).withName("Frequency"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_JSONInput = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("JSONInput"); - if (input.Type != null) { - const node = xml_builder_1.XmlNode.of("JSONType", input.Type).withName("Type"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_JSONOutput = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("JSONOutput"); - if (input.RecordDelimiter != null) { - const node = xml_builder_1.XmlNode.of("RecordDelimiter", input.RecordDelimiter).withName("RecordDelimiter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_LambdaFunctionConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LambdaFunctionConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("NotificationId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.LambdaFunctionArn != null) { - const node = xml_builder_1.XmlNode.of("LambdaFunctionArn", input.LambdaFunctionArn).withName("CloudFunction"); - bodyNode.addChildNode(node); - } - if (input.Events != null) { - const nodes = se_EventList(input.Events, context); - nodes.map((node) => { - node = node.withName("Event"); - bodyNode.addChildNode(node); - }); - } - if (input.Filter != null) { - const node = se_NotificationConfigurationFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_LambdaFunctionConfigurationList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_LambdaFunctionConfiguration(entry, context); - return node.withName("member"); - }); - }; - var se_LifecycleExpiration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LifecycleExpiration"); - if (input.Date != null) { - const node = xml_builder_1.XmlNode.of("Date", (input.Date.toISOString().split(".")[0] + "Z").toString()).withName("Date"); - bodyNode.addChildNode(node); - } - if (input.Days != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.Days)).withName("Days"); - bodyNode.addChildNode(node); - } - if (input.ExpiredObjectDeleteMarker != null) { - const node = xml_builder_1.XmlNode.of("ExpiredObjectDeleteMarker", String(input.ExpiredObjectDeleteMarker)).withName("ExpiredObjectDeleteMarker"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_LifecycleRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LifecycleRule"); - if (input.Expiration != null) { - const node = se_LifecycleExpiration(input.Expiration, context).withName("Expiration"); - bodyNode.addChildNode(node); - } - if (input.ID != null) { - const node = xml_builder_1.XmlNode.of("ID", input.ID).withName("ID"); - bodyNode.addChildNode(node); - } - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_LifecycleRuleFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ExpirationStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - if (input.Transitions != null) { - const nodes = se_TransitionList(input.Transitions, context); - nodes.map((node) => { - node = node.withName("Transition"); - bodyNode.addChildNode(node); - }); - } - if (input.NoncurrentVersionTransitions != null) { - const nodes = se_NoncurrentVersionTransitionList(input.NoncurrentVersionTransitions, context); - nodes.map((node) => { - node = node.withName("NoncurrentVersionTransition"); - bodyNode.addChildNode(node); - }); - } - if (input.NoncurrentVersionExpiration != null) { - const node = se_NoncurrentVersionExpiration(input.NoncurrentVersionExpiration, context).withName("NoncurrentVersionExpiration"); - bodyNode.addChildNode(node); - } - if (input.AbortIncompleteMultipartUpload != null) { - const node = se_AbortIncompleteMultipartUpload(input.AbortIncompleteMultipartUpload, context).withName("AbortIncompleteMultipartUpload"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_LifecycleRuleAndOperator = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LifecycleRuleAndOperator"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tags != null) { - const nodes = se_TagSet(input.Tags, context); - nodes.map((node) => { - node = node.withName("Tag"); - bodyNode.addChildNode(node); - }); - } - if (input.ObjectSizeGreaterThan != null) { - const node = xml_builder_1.XmlNode.of("ObjectSizeGreaterThanBytes", String(input.ObjectSizeGreaterThan)).withName("ObjectSizeGreaterThan"); - bodyNode.addChildNode(node); - } - if (input.ObjectSizeLessThan != null) { - const node = xml_builder_1.XmlNode.of("ObjectSizeLessThanBytes", String(input.ObjectSizeLessThan)).withName("ObjectSizeLessThan"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_LifecycleRuleFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LifecycleRuleFilter"); - models_0_1.LifecycleRuleFilter.visit(input, { - Prefix: (value) => { - const node = xml_builder_1.XmlNode.of("Prefix", value).withName("Prefix"); - bodyNode.addChildNode(node); - }, - Tag: (value) => { - const node = se_Tag(value, context).withName("Tag"); - bodyNode.addChildNode(node); - }, - ObjectSizeGreaterThan: (value) => { - const node = xml_builder_1.XmlNode.of("ObjectSizeGreaterThanBytes", String(value)).withName("ObjectSizeGreaterThan"); - bodyNode.addChildNode(node); - }, - ObjectSizeLessThan: (value) => { - const node = xml_builder_1.XmlNode.of("ObjectSizeLessThanBytes", String(value)).withName("ObjectSizeLessThan"); - bodyNode.addChildNode(node); - }, - And: (value) => { - const node = se_LifecycleRuleAndOperator(value, context).withName("And"); - bodyNode.addChildNode(node); - }, - _: (name, value) => { - if (!(value instanceof xml_builder_1.XmlNode || value instanceof xml_builder_1.XmlText)) { - throw new Error("Unable to serialize unknown union members in XML."); - } - bodyNode.addChildNode(new xml_builder_1.XmlNode(name).addChildNode(value)); - } - }); - return bodyNode; - }; - var se_LifecycleRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_LifecycleRule(entry, context); - return node.withName("member"); - }); - }; - var se_LoggingEnabled = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("LoggingEnabled"); - if (input.TargetBucket != null) { - const node = xml_builder_1.XmlNode.of("TargetBucket", input.TargetBucket).withName("TargetBucket"); - bodyNode.addChildNode(node); - } - if (input.TargetGrants != null) { - const nodes = se_TargetGrants(input.TargetGrants, context); - const containerNode = new xml_builder_1.XmlNode("TargetGrants"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - if (input.TargetPrefix != null) { - const node = xml_builder_1.XmlNode.of("TargetPrefix", input.TargetPrefix).withName("TargetPrefix"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_MetadataEntry = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("MetadataEntry"); - if (input.Name != null) { - const node = xml_builder_1.XmlNode.of("MetadataKey", input.Name).withName("Name"); - bodyNode.addChildNode(node); - } - if (input.Value != null) { - const node = xml_builder_1.XmlNode.of("MetadataValue", input.Value).withName("Value"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Metrics = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Metrics"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("MetricsStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - if (input.EventThreshold != null) { - const node = se_ReplicationTimeValue(input.EventThreshold, context).withName("EventThreshold"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_MetricsAndOperator = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("MetricsAndOperator"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tags != null) { - const nodes = se_TagSet(input.Tags, context); - nodes.map((node) => { - node = node.withName("Tag"); - bodyNode.addChildNode(node); - }); - } - if (input.AccessPointArn != null) { - const node = xml_builder_1.XmlNode.of("AccessPointArn", input.AccessPointArn).withName("AccessPointArn"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_MetricsConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("MetricsConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("MetricsId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_MetricsFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_MetricsFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("MetricsFilter"); - models_0_1.MetricsFilter.visit(input, { - Prefix: (value) => { - const node = xml_builder_1.XmlNode.of("Prefix", value).withName("Prefix"); - bodyNode.addChildNode(node); - }, - Tag: (value) => { - const node = se_Tag(value, context).withName("Tag"); - bodyNode.addChildNode(node); - }, - AccessPointArn: (value) => { - const node = xml_builder_1.XmlNode.of("AccessPointArn", value).withName("AccessPointArn"); - bodyNode.addChildNode(node); - }, - And: (value) => { - const node = se_MetricsAndOperator(value, context).withName("And"); - bodyNode.addChildNode(node); - }, - _: (name, value) => { - if (!(value instanceof xml_builder_1.XmlNode || value instanceof xml_builder_1.XmlText)) { - throw new Error("Unable to serialize unknown union members in XML."); - } - bodyNode.addChildNode(new xml_builder_1.XmlNode(name).addChildNode(value)); - } - }); - return bodyNode; - }; - var se_NoncurrentVersionExpiration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("NoncurrentVersionExpiration"); - if (input.NoncurrentDays != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.NoncurrentDays)).withName("NoncurrentDays"); - bodyNode.addChildNode(node); - } - if (input.NewerNoncurrentVersions != null) { - const node = xml_builder_1.XmlNode.of("VersionCount", String(input.NewerNoncurrentVersions)).withName("NewerNoncurrentVersions"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_NoncurrentVersionTransition = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("NoncurrentVersionTransition"); - if (input.NoncurrentDays != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.NoncurrentDays)).withName("NoncurrentDays"); - bodyNode.addChildNode(node); - } - if (input.StorageClass != null) { - const node = xml_builder_1.XmlNode.of("TransitionStorageClass", input.StorageClass).withName("StorageClass"); - bodyNode.addChildNode(node); - } - if (input.NewerNoncurrentVersions != null) { - const node = xml_builder_1.XmlNode.of("VersionCount", String(input.NewerNoncurrentVersions)).withName("NewerNoncurrentVersions"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_NoncurrentVersionTransitionList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_NoncurrentVersionTransition(entry, context); - return node.withName("member"); - }); - }; - var se_NotificationConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("NotificationConfiguration"); - if (input.TopicConfigurations != null) { - const nodes = se_TopicConfigurationList(input.TopicConfigurations, context); - nodes.map((node) => { - node = node.withName("TopicConfiguration"); - bodyNode.addChildNode(node); - }); - } - if (input.QueueConfigurations != null) { - const nodes = se_QueueConfigurationList(input.QueueConfigurations, context); - nodes.map((node) => { - node = node.withName("QueueConfiguration"); - bodyNode.addChildNode(node); - }); - } - if (input.LambdaFunctionConfigurations != null) { - const nodes = se_LambdaFunctionConfigurationList(input.LambdaFunctionConfigurations, context); - nodes.map((node) => { - node = node.withName("CloudFunctionConfiguration"); - bodyNode.addChildNode(node); - }); - } - if (input.EventBridgeConfiguration != null) { - const node = se_EventBridgeConfiguration(input.EventBridgeConfiguration, context).withName("EventBridgeConfiguration"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_NotificationConfigurationFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("NotificationConfigurationFilter"); - if (input.Key != null) { - const node = se_S3KeyFilter(input.Key, context).withName("S3Key"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ObjectIdentifier = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ObjectIdentifier"); - if (input.Key != null) { - const node = xml_builder_1.XmlNode.of("ObjectKey", input.Key).withName("Key"); - bodyNode.addChildNode(node); - } - if (input.VersionId != null) { - const node = xml_builder_1.XmlNode.of("ObjectVersionId", input.VersionId).withName("VersionId"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ObjectIdentifierList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_ObjectIdentifier(entry, context); - return node.withName("member"); - }); - }; - var se_ObjectLockConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ObjectLockConfiguration"); - if (input.ObjectLockEnabled != null) { - const node = xml_builder_1.XmlNode.of("ObjectLockEnabled", input.ObjectLockEnabled).withName("ObjectLockEnabled"); - bodyNode.addChildNode(node); - } - if (input.Rule != null) { - const node = se_ObjectLockRule(input.Rule, context).withName("Rule"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ObjectLockLegalHold = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ObjectLockLegalHold"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ObjectLockLegalHoldStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ObjectLockRetention = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ObjectLockRetention"); - if (input.Mode != null) { - const node = xml_builder_1.XmlNode.of("ObjectLockRetentionMode", input.Mode).withName("Mode"); - bodyNode.addChildNode(node); - } - if (input.RetainUntilDate != null) { - const node = xml_builder_1.XmlNode.of("Date", (input.RetainUntilDate.toISOString().split(".")[0] + "Z").toString()).withName("RetainUntilDate"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ObjectLockRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ObjectLockRule"); - if (input.DefaultRetention != null) { - const node = se_DefaultRetention(input.DefaultRetention, context).withName("DefaultRetention"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_OutputLocation = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("OutputLocation"); - if (input.S3 != null) { - const node = se_S3Location(input.S3, context).withName("S3"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_OutputSerialization = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("OutputSerialization"); - if (input.CSV != null) { - const node = se_CSVOutput(input.CSV, context).withName("CSV"); - bodyNode.addChildNode(node); - } - if (input.JSON != null) { - const node = se_JSONOutput(input.JSON, context).withName("JSON"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Owner = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Owner"); - if (input.DisplayName != null) { - const node = xml_builder_1.XmlNode.of("DisplayName", input.DisplayName).withName("DisplayName"); - bodyNode.addChildNode(node); - } - if (input.ID != null) { - const node = xml_builder_1.XmlNode.of("ID", input.ID).withName("ID"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_OwnershipControls = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("OwnershipControls"); - if (input.Rules != null) { - const nodes = se_OwnershipControlsRules(input.Rules, context); - nodes.map((node) => { - node = node.withName("Rule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_OwnershipControlsRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("OwnershipControlsRule"); - if (input.ObjectOwnership != null) { - const node = xml_builder_1.XmlNode.of("ObjectOwnership", input.ObjectOwnership).withName("ObjectOwnership"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_OwnershipControlsRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_OwnershipControlsRule(entry, context); - return node.withName("member"); - }); - }; - var se_ParquetInput = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ParquetInput"); - return bodyNode; - }; - var se_PublicAccessBlockConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("PublicAccessBlockConfiguration"); - if (input.BlockPublicAcls != null) { - const node = xml_builder_1.XmlNode.of("Setting", String(input.BlockPublicAcls)).withName("BlockPublicAcls"); - bodyNode.addChildNode(node); - } - if (input.IgnorePublicAcls != null) { - const node = xml_builder_1.XmlNode.of("Setting", String(input.IgnorePublicAcls)).withName("IgnorePublicAcls"); - bodyNode.addChildNode(node); - } - if (input.BlockPublicPolicy != null) { - const node = xml_builder_1.XmlNode.of("Setting", String(input.BlockPublicPolicy)).withName("BlockPublicPolicy"); - bodyNode.addChildNode(node); - } - if (input.RestrictPublicBuckets != null) { - const node = xml_builder_1.XmlNode.of("Setting", String(input.RestrictPublicBuckets)).withName("RestrictPublicBuckets"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_QueueConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("QueueConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("NotificationId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.QueueArn != null) { - const node = xml_builder_1.XmlNode.of("QueueArn", input.QueueArn).withName("Queue"); - bodyNode.addChildNode(node); - } - if (input.Events != null) { - const nodes = se_EventList(input.Events, context); - nodes.map((node) => { - node = node.withName("Event"); - bodyNode.addChildNode(node); - }); - } - if (input.Filter != null) { - const node = se_NotificationConfigurationFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_QueueConfigurationList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_QueueConfiguration(entry, context); - return node.withName("member"); - }); - }; - var se_Redirect = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Redirect"); - if (input.HostName != null) { - const node = xml_builder_1.XmlNode.of("HostName", input.HostName).withName("HostName"); - bodyNode.addChildNode(node); - } - if (input.HttpRedirectCode != null) { - const node = xml_builder_1.XmlNode.of("HttpRedirectCode", input.HttpRedirectCode).withName("HttpRedirectCode"); - bodyNode.addChildNode(node); - } - if (input.Protocol != null) { - const node = xml_builder_1.XmlNode.of("Protocol", input.Protocol).withName("Protocol"); - bodyNode.addChildNode(node); - } - if (input.ReplaceKeyPrefixWith != null) { - const node = xml_builder_1.XmlNode.of("ReplaceKeyPrefixWith", input.ReplaceKeyPrefixWith).withName("ReplaceKeyPrefixWith"); - bodyNode.addChildNode(node); - } - if (input.ReplaceKeyWith != null) { - const node = xml_builder_1.XmlNode.of("ReplaceKeyWith", input.ReplaceKeyWith).withName("ReplaceKeyWith"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RedirectAllRequestsTo = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("RedirectAllRequestsTo"); - if (input.HostName != null) { - const node = xml_builder_1.XmlNode.of("HostName", input.HostName).withName("HostName"); - bodyNode.addChildNode(node); - } - if (input.Protocol != null) { - const node = xml_builder_1.XmlNode.of("Protocol", input.Protocol).withName("Protocol"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ReplicaModifications = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicaModifications"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ReplicaModificationsStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ReplicationConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationConfiguration"); - if (input.Role != null) { - const node = xml_builder_1.XmlNode.of("Role", input.Role).withName("Role"); - bodyNode.addChildNode(node); - } - if (input.Rules != null) { - const nodes = se_ReplicationRules(input.Rules, context); - nodes.map((node) => { - node = node.withName("Rule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_ReplicationRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationRule"); - if (input.ID != null) { - const node = xml_builder_1.XmlNode.of("ID", input.ID).withName("ID"); - bodyNode.addChildNode(node); - } - if (input.Priority != null) { - const node = xml_builder_1.XmlNode.of("Priority", String(input.Priority)).withName("Priority"); - bodyNode.addChildNode(node); - } - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Filter != null) { - const node = se_ReplicationRuleFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ReplicationRuleStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - if (input.SourceSelectionCriteria != null) { - const node = se_SourceSelectionCriteria(input.SourceSelectionCriteria, context).withName("SourceSelectionCriteria"); - bodyNode.addChildNode(node); - } - if (input.ExistingObjectReplication != null) { - const node = se_ExistingObjectReplication(input.ExistingObjectReplication, context).withName("ExistingObjectReplication"); - bodyNode.addChildNode(node); - } - if (input.Destination != null) { - const node = se_Destination(input.Destination, context).withName("Destination"); - bodyNode.addChildNode(node); - } - if (input.DeleteMarkerReplication != null) { - const node = se_DeleteMarkerReplication(input.DeleteMarkerReplication, context).withName("DeleteMarkerReplication"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ReplicationRuleAndOperator = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationRuleAndOperator"); - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("Prefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Tags != null) { - const nodes = se_TagSet(input.Tags, context); - nodes.map((node) => { - node = node.withName("Tag"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_ReplicationRuleFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationRuleFilter"); - models_0_1.ReplicationRuleFilter.visit(input, { - Prefix: (value) => { - const node = xml_builder_1.XmlNode.of("Prefix", value).withName("Prefix"); - bodyNode.addChildNode(node); - }, - Tag: (value) => { - const node = se_Tag(value, context).withName("Tag"); - bodyNode.addChildNode(node); - }, - And: (value) => { - const node = se_ReplicationRuleAndOperator(value, context).withName("And"); - bodyNode.addChildNode(node); - }, - _: (name, value) => { - if (!(value instanceof xml_builder_1.XmlNode || value instanceof xml_builder_1.XmlText)) { - throw new Error("Unable to serialize unknown union members in XML."); - } - bodyNode.addChildNode(new xml_builder_1.XmlNode(name).addChildNode(value)); - } - }); - return bodyNode; - }; - var se_ReplicationRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_ReplicationRule(entry, context); - return node.withName("member"); - }); - }; - var se_ReplicationTime = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationTime"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("ReplicationTimeStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - if (input.Time != null) { - const node = se_ReplicationTimeValue(input.Time, context).withName("Time"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ReplicationTimeValue = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ReplicationTimeValue"); - if (input.Minutes != null) { - const node = xml_builder_1.XmlNode.of("Minutes", String(input.Minutes)).withName("Minutes"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RequestPaymentConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("RequestPaymentConfiguration"); - if (input.Payer != null) { - const node = xml_builder_1.XmlNode.of("Payer", input.Payer).withName("Payer"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RequestProgress = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("RequestProgress"); - if (input.Enabled != null) { - const node = xml_builder_1.XmlNode.of("EnableRequestProgress", String(input.Enabled)).withName("Enabled"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RestoreRequest = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("RestoreRequest"); - if (input.Days != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.Days)).withName("Days"); - bodyNode.addChildNode(node); - } - if (input.GlacierJobParameters != null) { - const node = se_GlacierJobParameters(input.GlacierJobParameters, context).withName("GlacierJobParameters"); - bodyNode.addChildNode(node); - } - if (input.Type != null) { - const node = xml_builder_1.XmlNode.of("RestoreRequestType", input.Type).withName("Type"); - bodyNode.addChildNode(node); - } - if (input.Tier != null) { - const node = xml_builder_1.XmlNode.of("Tier", input.Tier).withName("Tier"); - bodyNode.addChildNode(node); - } - if (input.Description != null) { - const node = xml_builder_1.XmlNode.of("Description", input.Description).withName("Description"); - bodyNode.addChildNode(node); - } - if (input.SelectParameters != null) { - const node = se_SelectParameters(input.SelectParameters, context).withName("SelectParameters"); - bodyNode.addChildNode(node); - } - if (input.OutputLocation != null) { - const node = se_OutputLocation(input.OutputLocation, context).withName("OutputLocation"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RoutingRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("RoutingRule"); - if (input.Condition != null) { - const node = se_Condition(input.Condition, context).withName("Condition"); - bodyNode.addChildNode(node); - } - if (input.Redirect != null) { - const node = se_Redirect(input.Redirect, context).withName("Redirect"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_RoutingRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_RoutingRule(entry, context); - return node.withName("RoutingRule"); - }); - }; - var se_S3KeyFilter = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("S3KeyFilter"); - if (input.FilterRules != null) { - const nodes = se_FilterRuleList(input.FilterRules, context); - nodes.map((node) => { - node = node.withName("FilterRule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_S3Location = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("S3Location"); - if (input.BucketName != null) { - const node = xml_builder_1.XmlNode.of("BucketName", input.BucketName).withName("BucketName"); - bodyNode.addChildNode(node); - } - if (input.Prefix != null) { - const node = xml_builder_1.XmlNode.of("LocationPrefix", input.Prefix).withName("Prefix"); - bodyNode.addChildNode(node); - } - if (input.Encryption != null) { - const node = se_Encryption(input.Encryption, context).withName("Encryption"); - bodyNode.addChildNode(node); - } - if (input.CannedACL != null) { - const node = xml_builder_1.XmlNode.of("ObjectCannedACL", input.CannedACL).withName("CannedACL"); - bodyNode.addChildNode(node); - } - if (input.AccessControlList != null) { - const nodes = se_Grants(input.AccessControlList, context); - const containerNode = new xml_builder_1.XmlNode("AccessControlList"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - if (input.Tagging != null) { - const node = se_Tagging(input.Tagging, context).withName("Tagging"); - bodyNode.addChildNode(node); - } - if (input.UserMetadata != null) { - const nodes = se_UserMetadata(input.UserMetadata, context); - const containerNode = new xml_builder_1.XmlNode("UserMetadata"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - if (input.StorageClass != null) { - const node = xml_builder_1.XmlNode.of("StorageClass", input.StorageClass).withName("StorageClass"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ScanRange = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ScanRange"); - if (input.Start != null) { - const node = xml_builder_1.XmlNode.of("Start", String(input.Start)).withName("Start"); - bodyNode.addChildNode(node); - } - if (input.End != null) { - const node = xml_builder_1.XmlNode.of("End", String(input.End)).withName("End"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_SelectParameters = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("SelectParameters"); - if (input.InputSerialization != null) { - const node = se_InputSerialization(input.InputSerialization, context).withName("InputSerialization"); - bodyNode.addChildNode(node); - } - if (input.ExpressionType != null) { - const node = xml_builder_1.XmlNode.of("ExpressionType", input.ExpressionType).withName("ExpressionType"); - bodyNode.addChildNode(node); - } - if (input.Expression != null) { - const node = xml_builder_1.XmlNode.of("Expression", input.Expression).withName("Expression"); - bodyNode.addChildNode(node); - } - if (input.OutputSerialization != null) { - const node = se_OutputSerialization(input.OutputSerialization, context).withName("OutputSerialization"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ServerSideEncryptionByDefault = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ServerSideEncryptionByDefault"); - if (input.SSEAlgorithm != null) { - const node = xml_builder_1.XmlNode.of("ServerSideEncryption", input.SSEAlgorithm).withName("SSEAlgorithm"); - bodyNode.addChildNode(node); - } - if (input.KMSMasterKeyID != null) { - const node = xml_builder_1.XmlNode.of("SSEKMSKeyId", input.KMSMasterKeyID).withName("KMSMasterKeyID"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ServerSideEncryptionConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ServerSideEncryptionConfiguration"); - if (input.Rules != null) { - const nodes = se_ServerSideEncryptionRules(input.Rules, context); - nodes.map((node) => { - node = node.withName("Rule"); - bodyNode.addChildNode(node); - }); - } - return bodyNode; - }; - var se_ServerSideEncryptionRule = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("ServerSideEncryptionRule"); - if (input.ApplyServerSideEncryptionByDefault != null) { - const node = se_ServerSideEncryptionByDefault(input.ApplyServerSideEncryptionByDefault, context).withName("ApplyServerSideEncryptionByDefault"); - bodyNode.addChildNode(node); - } - if (input.BucketKeyEnabled != null) { - const node = xml_builder_1.XmlNode.of("BucketKeyEnabled", String(input.BucketKeyEnabled)).withName("BucketKeyEnabled"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_ServerSideEncryptionRules = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_ServerSideEncryptionRule(entry, context); - return node.withName("member"); - }); - }; - var se_SourceSelectionCriteria = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("SourceSelectionCriteria"); - if (input.SseKmsEncryptedObjects != null) { - const node = se_SseKmsEncryptedObjects(input.SseKmsEncryptedObjects, context).withName("SseKmsEncryptedObjects"); - bodyNode.addChildNode(node); - } - if (input.ReplicaModifications != null) { - const node = se_ReplicaModifications(input.ReplicaModifications, context).withName("ReplicaModifications"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_SSEKMS = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("SSE-KMS"); - if (input.KeyId != null) { - const node = xml_builder_1.XmlNode.of("SSEKMSKeyId", input.KeyId).withName("KeyId"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_SseKmsEncryptedObjects = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("SseKmsEncryptedObjects"); - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("SseKmsEncryptedObjectsStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_SSES3 = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("SSE-S3"); - return bodyNode; - }; - var se_StorageClassAnalysis = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("StorageClassAnalysis"); - if (input.DataExport != null) { - const node = se_StorageClassAnalysisDataExport(input.DataExport, context).withName("DataExport"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_StorageClassAnalysisDataExport = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("StorageClassAnalysisDataExport"); - if (input.OutputSchemaVersion != null) { - const node = xml_builder_1.XmlNode.of("StorageClassAnalysisSchemaVersion", input.OutputSchemaVersion).withName("OutputSchemaVersion"); - bodyNode.addChildNode(node); - } - if (input.Destination != null) { - const node = se_AnalyticsExportDestination(input.Destination, context).withName("Destination"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Tag = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Tag"); - if (input.Key != null) { - const node = xml_builder_1.XmlNode.of("ObjectKey", input.Key).withName("Key"); - bodyNode.addChildNode(node); - } - if (input.Value != null) { - const node = xml_builder_1.XmlNode.of("Value", input.Value).withName("Value"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_Tagging = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Tagging"); - if (input.TagSet != null) { - const nodes = se_TagSet(input.TagSet, context); - const containerNode = new xml_builder_1.XmlNode("TagSet"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - return bodyNode; - }; - var se_TagSet = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_Tag(entry, context); - return node.withName("Tag"); - }); - }; - var se_TargetGrant = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("TargetGrant"); - if (input.Grantee != null) { - const node = se_Grantee(input.Grantee, context).withName("Grantee"); - node.addAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); - bodyNode.addChildNode(node); - } - if (input.Permission != null) { - const node = xml_builder_1.XmlNode.of("BucketLogsPermission", input.Permission).withName("Permission"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_TargetGrants = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_TargetGrant(entry, context); - return node.withName("Grant"); - }); - }; - var se_Tiering = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Tiering"); - if (input.Days != null) { - const node = xml_builder_1.XmlNode.of("IntelligentTieringDays", String(input.Days)).withName("Days"); - bodyNode.addChildNode(node); - } - if (input.AccessTier != null) { - const node = xml_builder_1.XmlNode.of("IntelligentTieringAccessTier", input.AccessTier).withName("AccessTier"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_TieringList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_Tiering(entry, context); - return node.withName("member"); - }); - }; - var se_TopicConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("TopicConfiguration"); - if (input.Id != null) { - const node = xml_builder_1.XmlNode.of("NotificationId", input.Id).withName("Id"); - bodyNode.addChildNode(node); - } - if (input.TopicArn != null) { - const node = xml_builder_1.XmlNode.of("TopicArn", input.TopicArn).withName("Topic"); - bodyNode.addChildNode(node); - } - if (input.Events != null) { - const nodes = se_EventList(input.Events, context); - nodes.map((node) => { - node = node.withName("Event"); - bodyNode.addChildNode(node); - }); - } - if (input.Filter != null) { - const node = se_NotificationConfigurationFilter(input.Filter, context).withName("Filter"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_TopicConfigurationList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_TopicConfiguration(entry, context); - return node.withName("member"); - }); - }; - var se_Transition = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("Transition"); - if (input.Date != null) { - const node = xml_builder_1.XmlNode.of("Date", (input.Date.toISOString().split(".")[0] + "Z").toString()).withName("Date"); - bodyNode.addChildNode(node); - } - if (input.Days != null) { - const node = xml_builder_1.XmlNode.of("Days", String(input.Days)).withName("Days"); - bodyNode.addChildNode(node); - } - if (input.StorageClass != null) { - const node = xml_builder_1.XmlNode.of("TransitionStorageClass", input.StorageClass).withName("StorageClass"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_TransitionList = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_Transition(entry, context); - return node.withName("member"); - }); - }; - var se_UserMetadata = (input, context) => { - return input.filter((e) => e != null).map((entry) => { - const node = se_MetadataEntry(entry, context); - return node.withName("MetadataEntry"); - }); - }; - var se_VersioningConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("VersioningConfiguration"); - if (input.MFADelete != null) { - const node = xml_builder_1.XmlNode.of("MFADelete", input.MFADelete).withName("MfaDelete"); - bodyNode.addChildNode(node); - } - if (input.Status != null) { - const node = xml_builder_1.XmlNode.of("BucketVersioningStatus", input.Status).withName("Status"); - bodyNode.addChildNode(node); - } - return bodyNode; - }; - var se_WebsiteConfiguration = (input, context) => { - const bodyNode = new xml_builder_1.XmlNode("WebsiteConfiguration"); - if (input.ErrorDocument != null) { - const node = se_ErrorDocument(input.ErrorDocument, context).withName("ErrorDocument"); - bodyNode.addChildNode(node); - } - if (input.IndexDocument != null) { - const node = se_IndexDocument(input.IndexDocument, context).withName("IndexDocument"); - bodyNode.addChildNode(node); - } - if (input.RedirectAllRequestsTo != null) { - const node = se_RedirectAllRequestsTo(input.RedirectAllRequestsTo, context).withName("RedirectAllRequestsTo"); - bodyNode.addChildNode(node); - } - if (input.RoutingRules != null) { - const nodes = se_RoutingRules(input.RoutingRules, context); - const containerNode = new xml_builder_1.XmlNode("RoutingRules"); - nodes.map((node) => { - containerNode.addChildNode(node); - }); - bodyNode.addChildNode(containerNode); - } - return bodyNode; - }; - var de_AbortIncompleteMultipartUpload = (output, context) => { - const contents = {}; - if (output["DaysAfterInitiation"] !== void 0) { - contents.DaysAfterInitiation = (0, smithy_client_1.strictParseInt32)(output["DaysAfterInitiation"]); - } - return contents; - }; - var de_AccessControlTranslation = (output, context) => { - const contents = {}; - if (output["Owner"] !== void 0) { - contents.Owner = (0, smithy_client_1.expectString)(output["Owner"]); - } - return contents; - }; - var de_AllowedHeaders = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_AllowedMethods = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_AllowedOrigins = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_AnalyticsAndOperator = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Tag === "") { - contents.Tags = []; - } else if (output["Tag"] !== void 0) { - contents.Tags = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tag"]), context); - } - return contents; - }; - var de_AnalyticsConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output.Filter === "") { - } else if (output["Filter"] !== void 0) { - contents.Filter = de_AnalyticsFilter((0, smithy_client_1.expectUnion)(output["Filter"]), context); - } - if (output["StorageClassAnalysis"] !== void 0) { - contents.StorageClassAnalysis = de_StorageClassAnalysis(output["StorageClassAnalysis"], context); - } - return contents; - }; - var de_AnalyticsConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_AnalyticsConfiguration(entry, context); - }); - }; - var de_AnalyticsExportDestination = (output, context) => { - const contents = {}; - if (output["S3BucketDestination"] !== void 0) { - contents.S3BucketDestination = de_AnalyticsS3BucketDestination(output["S3BucketDestination"], context); - } - return contents; - }; - var de_AnalyticsFilter = (output, context) => { - if (output["Prefix"] !== void 0) { - return { - Prefix: (0, smithy_client_1.expectString)(output["Prefix"]) - }; - } - if (output["Tag"] !== void 0) { - return { - Tag: de_Tag(output["Tag"], context) - }; - } - if (output["And"] !== void 0) { - return { - And: de_AnalyticsAndOperator(output["And"], context) - }; - } - return { $unknown: Object.entries(output)[0] }; - }; - var de_AnalyticsS3BucketDestination = (output, context) => { - const contents = {}; - if (output["Format"] !== void 0) { - contents.Format = (0, smithy_client_1.expectString)(output["Format"]); - } - if (output["BucketAccountId"] !== void 0) { - contents.BucketAccountId = (0, smithy_client_1.expectString)(output["BucketAccountId"]); - } - if (output["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(output["Bucket"]); - } - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - return contents; - }; - var de_Bucket = (output, context) => { - const contents = {}; - if (output["Name"] !== void 0) { - contents.Name = (0, smithy_client_1.expectString)(output["Name"]); - } - if (output["CreationDate"] !== void 0) { - contents.CreationDate = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["CreationDate"])); - } - return contents; - }; - var de_Buckets = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Bucket(entry, context); - }); - }; - var de_Checksum = (output, context) => { - const contents = {}; - if (output["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(output["ChecksumCRC32"]); - } - if (output["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(output["ChecksumCRC32C"]); - } - if (output["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(output["ChecksumSHA1"]); - } - if (output["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(output["ChecksumSHA256"]); - } - return contents; - }; - var de_ChecksumAlgorithmList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_CommonPrefix = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - return contents; - }; - var de_CommonPrefixList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_CommonPrefix(entry, context); - }); - }; - var de_Condition = (output, context) => { - const contents = {}; - if (output["HttpErrorCodeReturnedEquals"] !== void 0) { - contents.HttpErrorCodeReturnedEquals = (0, smithy_client_1.expectString)(output["HttpErrorCodeReturnedEquals"]); - } - if (output["KeyPrefixEquals"] !== void 0) { - contents.KeyPrefixEquals = (0, smithy_client_1.expectString)(output["KeyPrefixEquals"]); - } - return contents; - }; - var de_ContinuationEvent = (output, context) => { - const contents = {}; - return contents; - }; - var de_CopyObjectResult = (output, context) => { - const contents = {}; - if (output["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(output["ETag"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - if (output["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(output["ChecksumCRC32"]); - } - if (output["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(output["ChecksumCRC32C"]); - } - if (output["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(output["ChecksumSHA1"]); - } - if (output["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(output["ChecksumSHA256"]); - } - return contents; - }; - var de_CopyPartResult = (output, context) => { - const contents = {}; - if (output["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(output["ETag"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - if (output["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(output["ChecksumCRC32"]); - } - if (output["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(output["ChecksumCRC32C"]); - } - if (output["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(output["ChecksumSHA1"]); - } - if (output["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(output["ChecksumSHA256"]); - } - return contents; - }; - var de_CORSRule = (output, context) => { - const contents = {}; - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - if (output.AllowedHeader === "") { - contents.AllowedHeaders = []; - } else if (output["AllowedHeader"] !== void 0) { - contents.AllowedHeaders = de_AllowedHeaders((0, smithy_client_1.getArrayIfSingleItem)(output["AllowedHeader"]), context); - } - if (output.AllowedMethod === "") { - contents.AllowedMethods = []; - } else if (output["AllowedMethod"] !== void 0) { - contents.AllowedMethods = de_AllowedMethods((0, smithy_client_1.getArrayIfSingleItem)(output["AllowedMethod"]), context); - } - if (output.AllowedOrigin === "") { - contents.AllowedOrigins = []; - } else if (output["AllowedOrigin"] !== void 0) { - contents.AllowedOrigins = de_AllowedOrigins((0, smithy_client_1.getArrayIfSingleItem)(output["AllowedOrigin"]), context); - } - if (output.ExposeHeader === "") { - contents.ExposeHeaders = []; - } else if (output["ExposeHeader"] !== void 0) { - contents.ExposeHeaders = de_ExposeHeaders((0, smithy_client_1.getArrayIfSingleItem)(output["ExposeHeader"]), context); - } - if (output["MaxAgeSeconds"] !== void 0) { - contents.MaxAgeSeconds = (0, smithy_client_1.strictParseInt32)(output["MaxAgeSeconds"]); - } - return contents; - }; - var de_CORSRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_CORSRule(entry, context); - }); - }; - var de_DefaultRetention = (output, context) => { - const contents = {}; - if (output["Mode"] !== void 0) { - contents.Mode = (0, smithy_client_1.expectString)(output["Mode"]); - } - if (output["Days"] !== void 0) { - contents.Days = (0, smithy_client_1.strictParseInt32)(output["Days"]); - } - if (output["Years"] !== void 0) { - contents.Years = (0, smithy_client_1.strictParseInt32)(output["Years"]); - } - return contents; - }; - var de_DeletedObject = (output, context) => { - const contents = {}; - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["VersionId"] !== void 0) { - contents.VersionId = (0, smithy_client_1.expectString)(output["VersionId"]); - } - if (output["DeleteMarker"] !== void 0) { - contents.DeleteMarker = (0, smithy_client_1.parseBoolean)(output["DeleteMarker"]); - } - if (output["DeleteMarkerVersionId"] !== void 0) { - contents.DeleteMarkerVersionId = (0, smithy_client_1.expectString)(output["DeleteMarkerVersionId"]); - } - return contents; - }; - var de_DeletedObjects = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_DeletedObject(entry, context); - }); - }; - var de_DeleteMarkerEntry = (output, context) => { - const contents = {}; - if (output["Owner"] !== void 0) { - contents.Owner = de_Owner(output["Owner"], context); - } - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["VersionId"] !== void 0) { - contents.VersionId = (0, smithy_client_1.expectString)(output["VersionId"]); - } - if (output["IsLatest"] !== void 0) { - contents.IsLatest = (0, smithy_client_1.parseBoolean)(output["IsLatest"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - return contents; - }; - var de_DeleteMarkerReplication = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - return contents; - }; - var de_DeleteMarkers = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_DeleteMarkerEntry(entry, context); - }); - }; - var de_Destination = (output, context) => { - const contents = {}; - if (output["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(output["Bucket"]); - } - if (output["Account"] !== void 0) { - contents.Account = (0, smithy_client_1.expectString)(output["Account"]); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - if (output["AccessControlTranslation"] !== void 0) { - contents.AccessControlTranslation = de_AccessControlTranslation(output["AccessControlTranslation"], context); - } - if (output["EncryptionConfiguration"] !== void 0) { - contents.EncryptionConfiguration = de_EncryptionConfiguration(output["EncryptionConfiguration"], context); - } - if (output["ReplicationTime"] !== void 0) { - contents.ReplicationTime = de_ReplicationTime(output["ReplicationTime"], context); - } - if (output["Metrics"] !== void 0) { - contents.Metrics = de_Metrics(output["Metrics"], context); - } - return contents; - }; - var de_EncryptionConfiguration = (output, context) => { - const contents = {}; - if (output["ReplicaKmsKeyID"] !== void 0) { - contents.ReplicaKmsKeyID = (0, smithy_client_1.expectString)(output["ReplicaKmsKeyID"]); - } - return contents; - }; - var de_EndEvent = (output, context) => { - const contents = {}; - return contents; - }; - var de__Error = (output, context) => { - const contents = {}; - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["VersionId"] !== void 0) { - contents.VersionId = (0, smithy_client_1.expectString)(output["VersionId"]); - } - if (output["Code"] !== void 0) { - contents.Code = (0, smithy_client_1.expectString)(output["Code"]); - } - if (output["Message"] !== void 0) { - contents.Message = (0, smithy_client_1.expectString)(output["Message"]); - } - return contents; - }; - var de_ErrorDocument = (output, context) => { - const contents = {}; - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - return contents; - }; - var de_Errors = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de__Error(entry, context); - }); - }; - var de_EventBridgeConfiguration = (output, context) => { - const contents = {}; - return contents; - }; - var de_EventList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_ExistingObjectReplication = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - return contents; - }; - var de_ExposeHeaders = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_FilterRule = (output, context) => { - const contents = {}; - if (output["Name"] !== void 0) { - contents.Name = (0, smithy_client_1.expectString)(output["Name"]); - } - if (output["Value"] !== void 0) { - contents.Value = (0, smithy_client_1.expectString)(output["Value"]); - } - return contents; - }; - var de_FilterRuleList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_FilterRule(entry, context); - }); - }; - var de_GetObjectAttributesParts = (output, context) => { - const contents = {}; - if (output["PartsCount"] !== void 0) { - contents.TotalPartsCount = (0, smithy_client_1.strictParseInt32)(output["PartsCount"]); - } - if (output["PartNumberMarker"] !== void 0) { - contents.PartNumberMarker = (0, smithy_client_1.expectString)(output["PartNumberMarker"]); - } - if (output["NextPartNumberMarker"] !== void 0) { - contents.NextPartNumberMarker = (0, smithy_client_1.expectString)(output["NextPartNumberMarker"]); - } - if (output["MaxParts"] !== void 0) { - contents.MaxParts = (0, smithy_client_1.strictParseInt32)(output["MaxParts"]); - } - if (output["IsTruncated"] !== void 0) { - contents.IsTruncated = (0, smithy_client_1.parseBoolean)(output["IsTruncated"]); - } - if (output.Part === "") { - contents.Parts = []; - } else if (output["Part"] !== void 0) { - contents.Parts = de_PartsList((0, smithy_client_1.getArrayIfSingleItem)(output["Part"]), context); - } - return contents; - }; - var de_Grant = (output, context) => { - const contents = {}; - if (output["Grantee"] !== void 0) { - contents.Grantee = de_Grantee(output["Grantee"], context); - } - if (output["Permission"] !== void 0) { - contents.Permission = (0, smithy_client_1.expectString)(output["Permission"]); - } - return contents; - }; - var de_Grantee = (output, context) => { - const contents = {}; - if (output["DisplayName"] !== void 0) { - contents.DisplayName = (0, smithy_client_1.expectString)(output["DisplayName"]); - } - if (output["EmailAddress"] !== void 0) { - contents.EmailAddress = (0, smithy_client_1.expectString)(output["EmailAddress"]); - } - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - if (output["URI"] !== void 0) { - contents.URI = (0, smithy_client_1.expectString)(output["URI"]); - } - if (output["xsi:type"] !== void 0) { - contents.Type = (0, smithy_client_1.expectString)(output["xsi:type"]); - } - return contents; - }; - var de_Grants = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Grant(entry, context); - }); - }; - var de_IndexDocument = (output, context) => { - const contents = {}; - if (output["Suffix"] !== void 0) { - contents.Suffix = (0, smithy_client_1.expectString)(output["Suffix"]); - } - return contents; - }; - var de_Initiator = (output, context) => { - const contents = {}; - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - if (output["DisplayName"] !== void 0) { - contents.DisplayName = (0, smithy_client_1.expectString)(output["DisplayName"]); - } - return contents; - }; - var de_IntelligentTieringAndOperator = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Tag === "") { - contents.Tags = []; - } else if (output["Tag"] !== void 0) { - contents.Tags = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tag"]), context); - } - return contents; - }; - var de_IntelligentTieringConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output["Filter"] !== void 0) { - contents.Filter = de_IntelligentTieringFilter(output["Filter"], context); - } - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - if (output.Tiering === "") { - contents.Tierings = []; - } else if (output["Tiering"] !== void 0) { - contents.Tierings = de_TieringList((0, smithy_client_1.getArrayIfSingleItem)(output["Tiering"]), context); - } - return contents; - }; - var de_IntelligentTieringConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_IntelligentTieringConfiguration(entry, context); - }); - }; - var de_IntelligentTieringFilter = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output["Tag"] !== void 0) { - contents.Tag = de_Tag(output["Tag"], context); - } - if (output["And"] !== void 0) { - contents.And = de_IntelligentTieringAndOperator(output["And"], context); - } - return contents; - }; - var de_InventoryConfiguration = (output, context) => { - const contents = {}; - if (output["Destination"] !== void 0) { - contents.Destination = de_InventoryDestination(output["Destination"], context); - } - if (output["IsEnabled"] !== void 0) { - contents.IsEnabled = (0, smithy_client_1.parseBoolean)(output["IsEnabled"]); - } - if (output["Filter"] !== void 0) { - contents.Filter = de_InventoryFilter(output["Filter"], context); - } - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output["IncludedObjectVersions"] !== void 0) { - contents.IncludedObjectVersions = (0, smithy_client_1.expectString)(output["IncludedObjectVersions"]); - } - if (output.OptionalFields === "") { - contents.OptionalFields = []; - } else if (output["OptionalFields"] !== void 0 && output["OptionalFields"]["Field"] !== void 0) { - contents.OptionalFields = de_InventoryOptionalFields((0, smithy_client_1.getArrayIfSingleItem)(output["OptionalFields"]["Field"]), context); - } - if (output["Schedule"] !== void 0) { - contents.Schedule = de_InventorySchedule(output["Schedule"], context); - } - return contents; - }; - var de_InventoryConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_InventoryConfiguration(entry, context); - }); - }; - var de_InventoryDestination = (output, context) => { - const contents = {}; - if (output["S3BucketDestination"] !== void 0) { - contents.S3BucketDestination = de_InventoryS3BucketDestination(output["S3BucketDestination"], context); - } - return contents; - }; - var de_InventoryEncryption = (output, context) => { - const contents = {}; - if (output["SSE-S3"] !== void 0) { - contents.SSES3 = de_SSES3(output["SSE-S3"], context); - } - if (output["SSE-KMS"] !== void 0) { - contents.SSEKMS = de_SSEKMS(output["SSE-KMS"], context); - } - return contents; - }; - var de_InventoryFilter = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - return contents; - }; - var de_InventoryOptionalFields = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return (0, smithy_client_1.expectString)(entry); - }); - }; - var de_InventoryS3BucketDestination = (output, context) => { - const contents = {}; - if (output["AccountId"] !== void 0) { - contents.AccountId = (0, smithy_client_1.expectString)(output["AccountId"]); - } - if (output["Bucket"] !== void 0) { - contents.Bucket = (0, smithy_client_1.expectString)(output["Bucket"]); - } - if (output["Format"] !== void 0) { - contents.Format = (0, smithy_client_1.expectString)(output["Format"]); - } - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output["Encryption"] !== void 0) { - contents.Encryption = de_InventoryEncryption(output["Encryption"], context); - } - return contents; - }; - var de_InventorySchedule = (output, context) => { - const contents = {}; - if (output["Frequency"] !== void 0) { - contents.Frequency = (0, smithy_client_1.expectString)(output["Frequency"]); - } - return contents; - }; - var de_LambdaFunctionConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output["CloudFunction"] !== void 0) { - contents.LambdaFunctionArn = (0, smithy_client_1.expectString)(output["CloudFunction"]); - } - if (output.Event === "") { - contents.Events = []; - } else if (output["Event"] !== void 0) { - contents.Events = de_EventList((0, smithy_client_1.getArrayIfSingleItem)(output["Event"]), context); - } - if (output["Filter"] !== void 0) { - contents.Filter = de_NotificationConfigurationFilter(output["Filter"], context); - } - return contents; - }; - var de_LambdaFunctionConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_LambdaFunctionConfiguration(entry, context); - }); - }; - var de_LifecycleExpiration = (output, context) => { - const contents = {}; - if (output["Date"] !== void 0) { - contents.Date = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["Date"])); - } - if (output["Days"] !== void 0) { - contents.Days = (0, smithy_client_1.strictParseInt32)(output["Days"]); - } - if (output["ExpiredObjectDeleteMarker"] !== void 0) { - contents.ExpiredObjectDeleteMarker = (0, smithy_client_1.parseBoolean)(output["ExpiredObjectDeleteMarker"]); - } - return contents; - }; - var de_LifecycleRule = (output, context) => { - const contents = {}; - if (output["Expiration"] !== void 0) { - contents.Expiration = de_LifecycleExpiration(output["Expiration"], context); - } - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Filter === "") { - } else if (output["Filter"] !== void 0) { - contents.Filter = de_LifecycleRuleFilter((0, smithy_client_1.expectUnion)(output["Filter"]), context); - } - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - if (output.Transition === "") { - contents.Transitions = []; - } else if (output["Transition"] !== void 0) { - contents.Transitions = de_TransitionList((0, smithy_client_1.getArrayIfSingleItem)(output["Transition"]), context); - } - if (output.NoncurrentVersionTransition === "") { - contents.NoncurrentVersionTransitions = []; - } else if (output["NoncurrentVersionTransition"] !== void 0) { - contents.NoncurrentVersionTransitions = de_NoncurrentVersionTransitionList((0, smithy_client_1.getArrayIfSingleItem)(output["NoncurrentVersionTransition"]), context); - } - if (output["NoncurrentVersionExpiration"] !== void 0) { - contents.NoncurrentVersionExpiration = de_NoncurrentVersionExpiration(output["NoncurrentVersionExpiration"], context); - } - if (output["AbortIncompleteMultipartUpload"] !== void 0) { - contents.AbortIncompleteMultipartUpload = de_AbortIncompleteMultipartUpload(output["AbortIncompleteMultipartUpload"], context); - } - return contents; - }; - var de_LifecycleRuleAndOperator = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Tag === "") { - contents.Tags = []; - } else if (output["Tag"] !== void 0) { - contents.Tags = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tag"]), context); - } - if (output["ObjectSizeGreaterThan"] !== void 0) { - contents.ObjectSizeGreaterThan = (0, smithy_client_1.strictParseLong)(output["ObjectSizeGreaterThan"]); - } - if (output["ObjectSizeLessThan"] !== void 0) { - contents.ObjectSizeLessThan = (0, smithy_client_1.strictParseLong)(output["ObjectSizeLessThan"]); - } - return contents; - }; - var de_LifecycleRuleFilter = (output, context) => { - if (output["Prefix"] !== void 0) { - return { - Prefix: (0, smithy_client_1.expectString)(output["Prefix"]) - }; - } - if (output["Tag"] !== void 0) { - return { - Tag: de_Tag(output["Tag"], context) - }; - } - if (output["ObjectSizeGreaterThan"] !== void 0) { - return { - ObjectSizeGreaterThan: (0, smithy_client_1.strictParseLong)(output["ObjectSizeGreaterThan"]) - }; - } - if (output["ObjectSizeLessThan"] !== void 0) { - return { - ObjectSizeLessThan: (0, smithy_client_1.strictParseLong)(output["ObjectSizeLessThan"]) - }; - } - if (output["And"] !== void 0) { - return { - And: de_LifecycleRuleAndOperator(output["And"], context) - }; - } - return { $unknown: Object.entries(output)[0] }; - }; - var de_LifecycleRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_LifecycleRule(entry, context); - }); - }; - var de_LoggingEnabled = (output, context) => { - const contents = {}; - if (output["TargetBucket"] !== void 0) { - contents.TargetBucket = (0, smithy_client_1.expectString)(output["TargetBucket"]); - } - if (output.TargetGrants === "") { - contents.TargetGrants = []; - } else if (output["TargetGrants"] !== void 0 && output["TargetGrants"]["Grant"] !== void 0) { - contents.TargetGrants = de_TargetGrants((0, smithy_client_1.getArrayIfSingleItem)(output["TargetGrants"]["Grant"]), context); - } - if (output["TargetPrefix"] !== void 0) { - contents.TargetPrefix = (0, smithy_client_1.expectString)(output["TargetPrefix"]); - } - return contents; - }; - var de_Metrics = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - if (output["EventThreshold"] !== void 0) { - contents.EventThreshold = de_ReplicationTimeValue(output["EventThreshold"], context); - } - return contents; - }; - var de_MetricsAndOperator = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Tag === "") { - contents.Tags = []; - } else if (output["Tag"] !== void 0) { - contents.Tags = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tag"]), context); - } - if (output["AccessPointArn"] !== void 0) { - contents.AccessPointArn = (0, smithy_client_1.expectString)(output["AccessPointArn"]); - } - return contents; - }; - var de_MetricsConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output.Filter === "") { - } else if (output["Filter"] !== void 0) { - contents.Filter = de_MetricsFilter((0, smithy_client_1.expectUnion)(output["Filter"]), context); - } - return contents; - }; - var de_MetricsConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_MetricsConfiguration(entry, context); - }); - }; - var de_MetricsFilter = (output, context) => { - if (output["Prefix"] !== void 0) { - return { - Prefix: (0, smithy_client_1.expectString)(output["Prefix"]) - }; - } - if (output["Tag"] !== void 0) { - return { - Tag: de_Tag(output["Tag"], context) - }; - } - if (output["AccessPointArn"] !== void 0) { - return { - AccessPointArn: (0, smithy_client_1.expectString)(output["AccessPointArn"]) - }; - } - if (output["And"] !== void 0) { - return { - And: de_MetricsAndOperator(output["And"], context) - }; - } - return { $unknown: Object.entries(output)[0] }; - }; - var de_MultipartUpload = (output, context) => { - const contents = {}; - if (output["UploadId"] !== void 0) { - contents.UploadId = (0, smithy_client_1.expectString)(output["UploadId"]); - } - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["Initiated"] !== void 0) { - contents.Initiated = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["Initiated"])); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - if (output["Owner"] !== void 0) { - contents.Owner = de_Owner(output["Owner"], context); - } - if (output["Initiator"] !== void 0) { - contents.Initiator = de_Initiator(output["Initiator"], context); - } - if (output["ChecksumAlgorithm"] !== void 0) { - contents.ChecksumAlgorithm = (0, smithy_client_1.expectString)(output["ChecksumAlgorithm"]); - } - return contents; - }; - var de_MultipartUploadList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_MultipartUpload(entry, context); - }); - }; - var de_NoncurrentVersionExpiration = (output, context) => { - const contents = {}; - if (output["NoncurrentDays"] !== void 0) { - contents.NoncurrentDays = (0, smithy_client_1.strictParseInt32)(output["NoncurrentDays"]); - } - if (output["NewerNoncurrentVersions"] !== void 0) { - contents.NewerNoncurrentVersions = (0, smithy_client_1.strictParseInt32)(output["NewerNoncurrentVersions"]); - } - return contents; - }; - var de_NoncurrentVersionTransition = (output, context) => { - const contents = {}; - if (output["NoncurrentDays"] !== void 0) { - contents.NoncurrentDays = (0, smithy_client_1.strictParseInt32)(output["NoncurrentDays"]); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - if (output["NewerNoncurrentVersions"] !== void 0) { - contents.NewerNoncurrentVersions = (0, smithy_client_1.strictParseInt32)(output["NewerNoncurrentVersions"]); - } - return contents; - }; - var de_NoncurrentVersionTransitionList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_NoncurrentVersionTransition(entry, context); - }); - }; - var de_NotificationConfigurationFilter = (output, context) => { - const contents = {}; - if (output["S3Key"] !== void 0) { - contents.Key = de_S3KeyFilter(output["S3Key"], context); - } - return contents; - }; - var de__Object = (output, context) => { - const contents = {}; - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - if (output["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(output["ETag"]); - } - if (output.ChecksumAlgorithm === "") { - contents.ChecksumAlgorithm = []; - } else if (output["ChecksumAlgorithm"] !== void 0) { - contents.ChecksumAlgorithm = de_ChecksumAlgorithmList((0, smithy_client_1.getArrayIfSingleItem)(output["ChecksumAlgorithm"]), context); - } - if (output["Size"] !== void 0) { - contents.Size = (0, smithy_client_1.strictParseLong)(output["Size"]); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - if (output["Owner"] !== void 0) { - contents.Owner = de_Owner(output["Owner"], context); - } - if (output["RestoreStatus"] !== void 0) { - contents.RestoreStatus = de_RestoreStatus(output["RestoreStatus"], context); - } - return contents; - }; - var de_ObjectList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de__Object(entry, context); - }); - }; - var de_ObjectLockConfiguration = (output, context) => { - const contents = {}; - if (output["ObjectLockEnabled"] !== void 0) { - contents.ObjectLockEnabled = (0, smithy_client_1.expectString)(output["ObjectLockEnabled"]); - } - if (output["Rule"] !== void 0) { - contents.Rule = de_ObjectLockRule(output["Rule"], context); - } - return contents; - }; - var de_ObjectLockLegalHold = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - return contents; - }; - var de_ObjectLockRetention = (output, context) => { - const contents = {}; - if (output["Mode"] !== void 0) { - contents.Mode = (0, smithy_client_1.expectString)(output["Mode"]); - } - if (output["RetainUntilDate"] !== void 0) { - contents.RetainUntilDate = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["RetainUntilDate"])); - } - return contents; - }; - var de_ObjectLockRule = (output, context) => { - const contents = {}; - if (output["DefaultRetention"] !== void 0) { - contents.DefaultRetention = de_DefaultRetention(output["DefaultRetention"], context); - } - return contents; - }; - var de_ObjectPart = (output, context) => { - const contents = {}; - if (output["PartNumber"] !== void 0) { - contents.PartNumber = (0, smithy_client_1.strictParseInt32)(output["PartNumber"]); - } - if (output["Size"] !== void 0) { - contents.Size = (0, smithy_client_1.strictParseLong)(output["Size"]); - } - if (output["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(output["ChecksumCRC32"]); - } - if (output["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(output["ChecksumCRC32C"]); - } - if (output["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(output["ChecksumSHA1"]); - } - if (output["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(output["ChecksumSHA256"]); - } - return contents; - }; - var de_ObjectVersion = (output, context) => { - const contents = {}; - if (output["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(output["ETag"]); - } - if (output.ChecksumAlgorithm === "") { - contents.ChecksumAlgorithm = []; - } else if (output["ChecksumAlgorithm"] !== void 0) { - contents.ChecksumAlgorithm = de_ChecksumAlgorithmList((0, smithy_client_1.getArrayIfSingleItem)(output["ChecksumAlgorithm"]), context); - } - if (output["Size"] !== void 0) { - contents.Size = (0, smithy_client_1.strictParseLong)(output["Size"]); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["VersionId"] !== void 0) { - contents.VersionId = (0, smithy_client_1.expectString)(output["VersionId"]); - } - if (output["IsLatest"] !== void 0) { - contents.IsLatest = (0, smithy_client_1.parseBoolean)(output["IsLatest"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - if (output["Owner"] !== void 0) { - contents.Owner = de_Owner(output["Owner"], context); - } - if (output["RestoreStatus"] !== void 0) { - contents.RestoreStatus = de_RestoreStatus(output["RestoreStatus"], context); - } - return contents; - }; - var de_ObjectVersionList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_ObjectVersion(entry, context); - }); - }; - var de_Owner = (output, context) => { - const contents = {}; - if (output["DisplayName"] !== void 0) { - contents.DisplayName = (0, smithy_client_1.expectString)(output["DisplayName"]); - } - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - return contents; - }; - var de_OwnershipControls = (output, context) => { - const contents = {}; - if (output.Rule === "") { - contents.Rules = []; - } else if (output["Rule"] !== void 0) { - contents.Rules = de_OwnershipControlsRules((0, smithy_client_1.getArrayIfSingleItem)(output["Rule"]), context); - } - return contents; - }; - var de_OwnershipControlsRule = (output, context) => { - const contents = {}; - if (output["ObjectOwnership"] !== void 0) { - contents.ObjectOwnership = (0, smithy_client_1.expectString)(output["ObjectOwnership"]); - } - return contents; - }; - var de_OwnershipControlsRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_OwnershipControlsRule(entry, context); - }); - }; - var de_Part = (output, context) => { - const contents = {}; - if (output["PartNumber"] !== void 0) { - contents.PartNumber = (0, smithy_client_1.strictParseInt32)(output["PartNumber"]); - } - if (output["LastModified"] !== void 0) { - contents.LastModified = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["LastModified"])); - } - if (output["ETag"] !== void 0) { - contents.ETag = (0, smithy_client_1.expectString)(output["ETag"]); - } - if (output["Size"] !== void 0) { - contents.Size = (0, smithy_client_1.strictParseLong)(output["Size"]); - } - if (output["ChecksumCRC32"] !== void 0) { - contents.ChecksumCRC32 = (0, smithy_client_1.expectString)(output["ChecksumCRC32"]); - } - if (output["ChecksumCRC32C"] !== void 0) { - contents.ChecksumCRC32C = (0, smithy_client_1.expectString)(output["ChecksumCRC32C"]); - } - if (output["ChecksumSHA1"] !== void 0) { - contents.ChecksumSHA1 = (0, smithy_client_1.expectString)(output["ChecksumSHA1"]); - } - if (output["ChecksumSHA256"] !== void 0) { - contents.ChecksumSHA256 = (0, smithy_client_1.expectString)(output["ChecksumSHA256"]); - } - return contents; - }; - var de_Parts = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Part(entry, context); - }); - }; - var de_PartsList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_ObjectPart(entry, context); - }); - }; - var de_PolicyStatus = (output, context) => { - const contents = {}; - if (output["IsPublic"] !== void 0) { - contents.IsPublic = (0, smithy_client_1.parseBoolean)(output["IsPublic"]); - } - return contents; - }; - var de_Progress = (output, context) => { - const contents = {}; - if (output["BytesScanned"] !== void 0) { - contents.BytesScanned = (0, smithy_client_1.strictParseLong)(output["BytesScanned"]); - } - if (output["BytesProcessed"] !== void 0) { - contents.BytesProcessed = (0, smithy_client_1.strictParseLong)(output["BytesProcessed"]); - } - if (output["BytesReturned"] !== void 0) { - contents.BytesReturned = (0, smithy_client_1.strictParseLong)(output["BytesReturned"]); - } - return contents; - }; - var de_PublicAccessBlockConfiguration = (output, context) => { - const contents = {}; - if (output["BlockPublicAcls"] !== void 0) { - contents.BlockPublicAcls = (0, smithy_client_1.parseBoolean)(output["BlockPublicAcls"]); - } - if (output["IgnorePublicAcls"] !== void 0) { - contents.IgnorePublicAcls = (0, smithy_client_1.parseBoolean)(output["IgnorePublicAcls"]); - } - if (output["BlockPublicPolicy"] !== void 0) { - contents.BlockPublicPolicy = (0, smithy_client_1.parseBoolean)(output["BlockPublicPolicy"]); - } - if (output["RestrictPublicBuckets"] !== void 0) { - contents.RestrictPublicBuckets = (0, smithy_client_1.parseBoolean)(output["RestrictPublicBuckets"]); - } - return contents; - }; - var de_QueueConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output["Queue"] !== void 0) { - contents.QueueArn = (0, smithy_client_1.expectString)(output["Queue"]); - } - if (output.Event === "") { - contents.Events = []; - } else if (output["Event"] !== void 0) { - contents.Events = de_EventList((0, smithy_client_1.getArrayIfSingleItem)(output["Event"]), context); - } - if (output["Filter"] !== void 0) { - contents.Filter = de_NotificationConfigurationFilter(output["Filter"], context); - } - return contents; - }; - var de_QueueConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_QueueConfiguration(entry, context); - }); - }; - var de_Redirect = (output, context) => { - const contents = {}; - if (output["HostName"] !== void 0) { - contents.HostName = (0, smithy_client_1.expectString)(output["HostName"]); - } - if (output["HttpRedirectCode"] !== void 0) { - contents.HttpRedirectCode = (0, smithy_client_1.expectString)(output["HttpRedirectCode"]); - } - if (output["Protocol"] !== void 0) { - contents.Protocol = (0, smithy_client_1.expectString)(output["Protocol"]); - } - if (output["ReplaceKeyPrefixWith"] !== void 0) { - contents.ReplaceKeyPrefixWith = (0, smithy_client_1.expectString)(output["ReplaceKeyPrefixWith"]); - } - if (output["ReplaceKeyWith"] !== void 0) { - contents.ReplaceKeyWith = (0, smithy_client_1.expectString)(output["ReplaceKeyWith"]); - } - return contents; - }; - var de_RedirectAllRequestsTo = (output, context) => { - const contents = {}; - if (output["HostName"] !== void 0) { - contents.HostName = (0, smithy_client_1.expectString)(output["HostName"]); - } - if (output["Protocol"] !== void 0) { - contents.Protocol = (0, smithy_client_1.expectString)(output["Protocol"]); - } - return contents; - }; - var de_ReplicaModifications = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - return contents; - }; - var de_ReplicationConfiguration = (output, context) => { - const contents = {}; - if (output["Role"] !== void 0) { - contents.Role = (0, smithy_client_1.expectString)(output["Role"]); - } - if (output.Rule === "") { - contents.Rules = []; - } else if (output["Rule"] !== void 0) { - contents.Rules = de_ReplicationRules((0, smithy_client_1.getArrayIfSingleItem)(output["Rule"]), context); - } - return contents; - }; - var de_ReplicationRule = (output, context) => { - const contents = {}; - if (output["ID"] !== void 0) { - contents.ID = (0, smithy_client_1.expectString)(output["ID"]); - } - if (output["Priority"] !== void 0) { - contents.Priority = (0, smithy_client_1.strictParseInt32)(output["Priority"]); - } - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Filter === "") { - } else if (output["Filter"] !== void 0) { - contents.Filter = de_ReplicationRuleFilter((0, smithy_client_1.expectUnion)(output["Filter"]), context); - } - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - if (output["SourceSelectionCriteria"] !== void 0) { - contents.SourceSelectionCriteria = de_SourceSelectionCriteria(output["SourceSelectionCriteria"], context); - } - if (output["ExistingObjectReplication"] !== void 0) { - contents.ExistingObjectReplication = de_ExistingObjectReplication(output["ExistingObjectReplication"], context); - } - if (output["Destination"] !== void 0) { - contents.Destination = de_Destination(output["Destination"], context); - } - if (output["DeleteMarkerReplication"] !== void 0) { - contents.DeleteMarkerReplication = de_DeleteMarkerReplication(output["DeleteMarkerReplication"], context); - } - return contents; - }; - var de_ReplicationRuleAndOperator = (output, context) => { - const contents = {}; - if (output["Prefix"] !== void 0) { - contents.Prefix = (0, smithy_client_1.expectString)(output["Prefix"]); - } - if (output.Tag === "") { - contents.Tags = []; - } else if (output["Tag"] !== void 0) { - contents.Tags = de_TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tag"]), context); - } - return contents; - }; - var de_ReplicationRuleFilter = (output, context) => { - if (output["Prefix"] !== void 0) { - return { - Prefix: (0, smithy_client_1.expectString)(output["Prefix"]) - }; - } - if (output["Tag"] !== void 0) { - return { - Tag: de_Tag(output["Tag"], context) - }; - } - if (output["And"] !== void 0) { - return { - And: de_ReplicationRuleAndOperator(output["And"], context) - }; - } - return { $unknown: Object.entries(output)[0] }; - }; - var de_ReplicationRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_ReplicationRule(entry, context); - }); - }; - var de_ReplicationTime = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - if (output["Time"] !== void 0) { - contents.Time = de_ReplicationTimeValue(output["Time"], context); - } - return contents; - }; - var de_ReplicationTimeValue = (output, context) => { - const contents = {}; - if (output["Minutes"] !== void 0) { - contents.Minutes = (0, smithy_client_1.strictParseInt32)(output["Minutes"]); - } - return contents; - }; - var de_RestoreStatus = (output, context) => { - const contents = {}; - if (output["IsRestoreInProgress"] !== void 0) { - contents.IsRestoreInProgress = (0, smithy_client_1.parseBoolean)(output["IsRestoreInProgress"]); - } - if (output["RestoreExpiryDate"] !== void 0) { - contents.RestoreExpiryDate = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["RestoreExpiryDate"])); - } - return contents; - }; - var de_RoutingRule = (output, context) => { - const contents = {}; - if (output["Condition"] !== void 0) { - contents.Condition = de_Condition(output["Condition"], context); - } - if (output["Redirect"] !== void 0) { - contents.Redirect = de_Redirect(output["Redirect"], context); - } - return contents; - }; - var de_RoutingRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_RoutingRule(entry, context); - }); - }; - var de_S3KeyFilter = (output, context) => { - const contents = {}; - if (output.FilterRule === "") { - contents.FilterRules = []; - } else if (output["FilterRule"] !== void 0) { - contents.FilterRules = de_FilterRuleList((0, smithy_client_1.getArrayIfSingleItem)(output["FilterRule"]), context); - } - return contents; - }; - var de_ServerSideEncryptionByDefault = (output, context) => { - const contents = {}; - if (output["SSEAlgorithm"] !== void 0) { - contents.SSEAlgorithm = (0, smithy_client_1.expectString)(output["SSEAlgorithm"]); - } - if (output["KMSMasterKeyID"] !== void 0) { - contents.KMSMasterKeyID = (0, smithy_client_1.expectString)(output["KMSMasterKeyID"]); - } - return contents; - }; - var de_ServerSideEncryptionConfiguration = (output, context) => { - const contents = {}; - if (output.Rule === "") { - contents.Rules = []; - } else if (output["Rule"] !== void 0) { - contents.Rules = de_ServerSideEncryptionRules((0, smithy_client_1.getArrayIfSingleItem)(output["Rule"]), context); - } - return contents; - }; - var de_ServerSideEncryptionRule = (output, context) => { - const contents = {}; - if (output["ApplyServerSideEncryptionByDefault"] !== void 0) { - contents.ApplyServerSideEncryptionByDefault = de_ServerSideEncryptionByDefault(output["ApplyServerSideEncryptionByDefault"], context); - } - if (output["BucketKeyEnabled"] !== void 0) { - contents.BucketKeyEnabled = (0, smithy_client_1.parseBoolean)(output["BucketKeyEnabled"]); - } - return contents; - }; - var de_ServerSideEncryptionRules = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_ServerSideEncryptionRule(entry, context); - }); - }; - var de_SourceSelectionCriteria = (output, context) => { - const contents = {}; - if (output["SseKmsEncryptedObjects"] !== void 0) { - contents.SseKmsEncryptedObjects = de_SseKmsEncryptedObjects(output["SseKmsEncryptedObjects"], context); - } - if (output["ReplicaModifications"] !== void 0) { - contents.ReplicaModifications = de_ReplicaModifications(output["ReplicaModifications"], context); - } - return contents; - }; - var de_SSEKMS = (output, context) => { - const contents = {}; - if (output["KeyId"] !== void 0) { - contents.KeyId = (0, smithy_client_1.expectString)(output["KeyId"]); - } - return contents; - }; - var de_SseKmsEncryptedObjects = (output, context) => { - const contents = {}; - if (output["Status"] !== void 0) { - contents.Status = (0, smithy_client_1.expectString)(output["Status"]); - } - return contents; - }; - var de_SSES3 = (output, context) => { - const contents = {}; - return contents; - }; - var de_Stats = (output, context) => { - const contents = {}; - if (output["BytesScanned"] !== void 0) { - contents.BytesScanned = (0, smithy_client_1.strictParseLong)(output["BytesScanned"]); - } - if (output["BytesProcessed"] !== void 0) { - contents.BytesProcessed = (0, smithy_client_1.strictParseLong)(output["BytesProcessed"]); - } - if (output["BytesReturned"] !== void 0) { - contents.BytesReturned = (0, smithy_client_1.strictParseLong)(output["BytesReturned"]); - } - return contents; - }; - var de_StorageClassAnalysis = (output, context) => { - const contents = {}; - if (output["DataExport"] !== void 0) { - contents.DataExport = de_StorageClassAnalysisDataExport(output["DataExport"], context); - } - return contents; - }; - var de_StorageClassAnalysisDataExport = (output, context) => { - const contents = {}; - if (output["OutputSchemaVersion"] !== void 0) { - contents.OutputSchemaVersion = (0, smithy_client_1.expectString)(output["OutputSchemaVersion"]); - } - if (output["Destination"] !== void 0) { - contents.Destination = de_AnalyticsExportDestination(output["Destination"], context); - } - return contents; - }; - var de_Tag = (output, context) => { - const contents = {}; - if (output["Key"] !== void 0) { - contents.Key = (0, smithy_client_1.expectString)(output["Key"]); - } - if (output["Value"] !== void 0) { - contents.Value = (0, smithy_client_1.expectString)(output["Value"]); - } - return contents; - }; - var de_TagSet = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Tag(entry, context); - }); - }; - var de_TargetGrant = (output, context) => { - const contents = {}; - if (output["Grantee"] !== void 0) { - contents.Grantee = de_Grantee(output["Grantee"], context); - } - if (output["Permission"] !== void 0) { - contents.Permission = (0, smithy_client_1.expectString)(output["Permission"]); - } - return contents; - }; - var de_TargetGrants = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_TargetGrant(entry, context); - }); - }; - var de_Tiering = (output, context) => { - const contents = {}; - if (output["Days"] !== void 0) { - contents.Days = (0, smithy_client_1.strictParseInt32)(output["Days"]); - } - if (output["AccessTier"] !== void 0) { - contents.AccessTier = (0, smithy_client_1.expectString)(output["AccessTier"]); - } - return contents; - }; - var de_TieringList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Tiering(entry, context); - }); - }; - var de_TopicConfiguration = (output, context) => { - const contents = {}; - if (output["Id"] !== void 0) { - contents.Id = (0, smithy_client_1.expectString)(output["Id"]); - } - if (output["Topic"] !== void 0) { - contents.TopicArn = (0, smithy_client_1.expectString)(output["Topic"]); - } - if (output.Event === "") { - contents.Events = []; - } else if (output["Event"] !== void 0) { - contents.Events = de_EventList((0, smithy_client_1.getArrayIfSingleItem)(output["Event"]), context); - } - if (output["Filter"] !== void 0) { - contents.Filter = de_NotificationConfigurationFilter(output["Filter"], context); - } - return contents; - }; - var de_TopicConfigurationList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_TopicConfiguration(entry, context); - }); - }; - var de_Transition = (output, context) => { - const contents = {}; - if (output["Date"] !== void 0) { - contents.Date = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(output["Date"])); - } - if (output["Days"] !== void 0) { - contents.Days = (0, smithy_client_1.strictParseInt32)(output["Days"]); - } - if (output["StorageClass"] !== void 0) { - contents.StorageClass = (0, smithy_client_1.expectString)(output["StorageClass"]); - } - return contents; - }; - var de_TransitionList = (output, context) => { - return (output || []).filter((e) => e != null).map((entry) => { - return de_Transition(entry, context); - }); - }; - var deserializeMetadata = (output) => ({ - httpStatusCode: output.statusCode, - requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], - extendedRequestId: output.headers["x-amz-id-2"], - cfId: output.headers["x-amz-cf-id"] - }); - var collectBodyString = (streamBody, context) => (0, smithy_client_1.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); - var isSerializableHeaderValue = (value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0); - var parseBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { - if (encoded.length) { - const parser = new fast_xml_parser_1.XMLParser({ - attributeNamePrefix: "", - htmlEntities: true, - ignoreAttributes: false, - ignoreDeclaration: true, - parseTagValue: false, - trimValues: false, - tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0 - }); - parser.addEntity("#xD", "\r"); - parser.addEntity("#10", "\n"); - const parsedObj = parser.parse(encoded); - const textNodeName = "#text"; - const key = Object.keys(parsedObj)[0]; - const parsedObjToReturn = parsedObj[key]; - if (parsedObjToReturn[textNodeName]) { - parsedObjToReturn[key] = parsedObjToReturn[textNodeName]; - delete parsedObjToReturn[textNodeName]; - } - return (0, smithy_client_1.getValueFromTextNode)(parsedObjToReturn); - } - return {}; - }); - var parseErrorBody = async (errorBody, context) => { - const value = await parseBody(errorBody, context); - if (value.Error) { - value.Error.message = value.Error.message ?? value.Error.Message; - } - return value; - }; - var loadRestXmlErrorCode = (output, data) => { - if (data?.Code !== void 0) { - return data.Code; - } - if (output.statusCode == 404) { - return "NotFound"; - } - }; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/AbortMultipartUploadCommand.js -var require_AbortMultipartUploadCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/AbortMultipartUploadCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AbortMultipartUploadCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var AbortMultipartUploadCommand = class _AbortMultipartUploadCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _AbortMultipartUploadCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "AbortMultipartUploadCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "AbortMultipartUpload" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_AbortMultipartUploadCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_AbortMultipartUploadCommand)(output, context); - } - }; - exports2.AbortMultipartUploadCommand = AbortMultipartUploadCommand; - } -}); - -// node_modules/@aws-sdk/middleware-ssec/dist-cjs/index.js -var require_dist_cjs64 = __commonJS({ - "node_modules/@aws-sdk/middleware-ssec/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSsecPlugin = exports2.ssecMiddlewareOptions = exports2.ssecMiddleware = void 0; - function ssecMiddleware(options) { - return (next) => async (args) => { - let input = { ...args.input }; - const properties = [ - { - target: "SSECustomerKey", - hash: "SSECustomerKeyMD5" - }, - { - target: "CopySourceSSECustomerKey", - hash: "CopySourceSSECustomerKeyMD5" - } - ]; - for (const prop of properties) { - const value = input[prop.target]; - if (value) { - const valueView = ArrayBuffer.isView(value) ? new Uint8Array(value.buffer, value.byteOffset, value.byteLength) : typeof value === "string" ? options.utf8Decoder(value) : new Uint8Array(value); - const encoded = options.base64Encoder(valueView); - const hash = new options.md5(); - hash.update(valueView); - input = { - ...input, - [prop.target]: encoded, - [prop.hash]: options.base64Encoder(await hash.digest()) - }; - } - } - return next({ - ...args, - input - }); - }; - } - exports2.ssecMiddleware = ssecMiddleware; - exports2.ssecMiddlewareOptions = { - name: "ssecMiddleware", - step: "initialize", - tags: ["SSE"], - override: true - }; - var getSsecPlugin = (config) => ({ - applyToStack: (clientStack) => { - clientStack.add(ssecMiddleware(config), exports2.ssecMiddlewareOptions); - } - }); - exports2.getSsecPlugin = getSsecPlugin; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/CompleteMultipartUploadCommand.js -var require_CompleteMultipartUploadCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/CompleteMultipartUploadCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.CompleteMultipartUploadCommand = exports2.$Command = void 0; - var middleware_sdk_s3_1 = require_dist_cjs18(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var CompleteMultipartUploadCommand = class _CompleteMultipartUploadCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CompleteMultipartUploadCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_sdk_s3_1.getThrow200ExceptionsPlugin)(configuration)); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "CompleteMultipartUploadCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.CompleteMultipartUploadRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.CompleteMultipartUploadOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "CompleteMultipartUpload" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_CompleteMultipartUploadCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_CompleteMultipartUploadCommand)(output, context); - } - }; - exports2.CompleteMultipartUploadCommand = CompleteMultipartUploadCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/CopyObjectCommand.js -var require_CopyObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/CopyObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.CopyObjectCommand = exports2.$Command = void 0; - var middleware_sdk_s3_1 = require_dist_cjs18(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var CopyObjectCommand = class _CopyObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CopyObjectCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_sdk_s3_1.getThrow200ExceptionsPlugin)(configuration)); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "CopyObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.CopyObjectRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.CopyObjectOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "CopyObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_CopyObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_CopyObjectCommand)(output, context); - } - }; - exports2.CopyObjectCommand = CopyObjectCommand; - } -}); - -// node_modules/@aws-sdk/middleware-location-constraint/dist-cjs/index.js -var require_dist_cjs65 = __commonJS({ - "node_modules/@aws-sdk/middleware-location-constraint/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getLocationConstraintPlugin = exports2.locationConstraintMiddlewareOptions = exports2.locationConstraintMiddleware = void 0; - function locationConstraintMiddleware(options) { - return (next) => async (args) => { - const { CreateBucketConfiguration } = args.input; - const region = await options.region(); - if (!CreateBucketConfiguration || !CreateBucketConfiguration.LocationConstraint) { - args = { - ...args, - input: { - ...args.input, - CreateBucketConfiguration: region === "us-east-1" ? void 0 : { LocationConstraint: region } - } - }; - } - return next(args); - }; - } - exports2.locationConstraintMiddleware = locationConstraintMiddleware; - exports2.locationConstraintMiddlewareOptions = { - step: "initialize", - tags: ["LOCATION_CONSTRAINT", "CREATE_BUCKET_CONFIGURATION"], - name: "locationConstraintMiddleware", - override: true - }; - var getLocationConstraintPlugin = (config) => ({ - applyToStack: (clientStack) => { - clientStack.add(locationConstraintMiddleware(config), exports2.locationConstraintMiddlewareOptions); - } - }); - exports2.getLocationConstraintPlugin = getLocationConstraintPlugin; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/CreateBucketCommand.js -var require_CreateBucketCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/CreateBucketCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.CreateBucketCommand = exports2.$Command = void 0; - var middleware_location_constraint_1 = require_dist_cjs65(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var CreateBucketCommand = class _CreateBucketCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - DisableAccessPoints: { type: "staticContextParams", value: true }, - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CreateBucketCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_location_constraint_1.getLocationConstraintPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "CreateBucketCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "CreateBucket" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_CreateBucketCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_CreateBucketCommand)(output, context); - } - }; - exports2.CreateBucketCommand = CreateBucketCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/CreateMultipartUploadCommand.js -var require_CreateMultipartUploadCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/CreateMultipartUploadCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.CreateMultipartUploadCommand = exports2.$Command = void 0; - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var CreateMultipartUploadCommand = class _CreateMultipartUploadCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _CreateMultipartUploadCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "CreateMultipartUploadCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.CreateMultipartUploadRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.CreateMultipartUploadOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "CreateMultipartUpload" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_CreateMultipartUploadCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_CreateMultipartUploadCommand)(output, context); - } - }; - exports2.CreateMultipartUploadCommand = CreateMultipartUploadCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketAnalyticsConfigurationCommand.js -var require_DeleteBucketAnalyticsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketAnalyticsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketAnalyticsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketAnalyticsConfigurationCommand = class _DeleteBucketAnalyticsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketAnalyticsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketAnalyticsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketAnalyticsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketAnalyticsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketAnalyticsConfigurationCommand)(output, context); - } - }; - exports2.DeleteBucketAnalyticsConfigurationCommand = DeleteBucketAnalyticsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketCommand.js -var require_DeleteBucketCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketCommand = class _DeleteBucketCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucket" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketCommand)(output, context); - } - }; - exports2.DeleteBucketCommand = DeleteBucketCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketCorsCommand.js -var require_DeleteBucketCorsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketCorsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketCorsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketCorsCommand = class _DeleteBucketCorsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketCorsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketCorsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketCors" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketCorsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketCorsCommand)(output, context); - } - }; - exports2.DeleteBucketCorsCommand = DeleteBucketCorsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketEncryptionCommand.js -var require_DeleteBucketEncryptionCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketEncryptionCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketEncryptionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketEncryptionCommand = class _DeleteBucketEncryptionCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketEncryptionCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketEncryptionCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketEncryption" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketEncryptionCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketEncryptionCommand)(output, context); - } - }; - exports2.DeleteBucketEncryptionCommand = DeleteBucketEncryptionCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketIntelligentTieringConfigurationCommand.js -var require_DeleteBucketIntelligentTieringConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketIntelligentTieringConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketIntelligentTieringConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketIntelligentTieringConfigurationCommand = class _DeleteBucketIntelligentTieringConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketIntelligentTieringConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketIntelligentTieringConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketIntelligentTieringConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketIntelligentTieringConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketIntelligentTieringConfigurationCommand)(output, context); - } - }; - exports2.DeleteBucketIntelligentTieringConfigurationCommand = DeleteBucketIntelligentTieringConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketInventoryConfigurationCommand.js -var require_DeleteBucketInventoryConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketInventoryConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketInventoryConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketInventoryConfigurationCommand = class _DeleteBucketInventoryConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketInventoryConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketInventoryConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketInventoryConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketInventoryConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketInventoryConfigurationCommand)(output, context); - } - }; - exports2.DeleteBucketInventoryConfigurationCommand = DeleteBucketInventoryConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketLifecycleCommand.js -var require_DeleteBucketLifecycleCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketLifecycleCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketLifecycleCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketLifecycleCommand = class _DeleteBucketLifecycleCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketLifecycleCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketLifecycleCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketLifecycle" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketLifecycleCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketLifecycleCommand)(output, context); - } - }; - exports2.DeleteBucketLifecycleCommand = DeleteBucketLifecycleCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketMetricsConfigurationCommand.js -var require_DeleteBucketMetricsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketMetricsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketMetricsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketMetricsConfigurationCommand = class _DeleteBucketMetricsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketMetricsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketMetricsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketMetricsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketMetricsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketMetricsConfigurationCommand)(output, context); - } - }; - exports2.DeleteBucketMetricsConfigurationCommand = DeleteBucketMetricsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketOwnershipControlsCommand.js -var require_DeleteBucketOwnershipControlsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketOwnershipControlsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketOwnershipControlsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketOwnershipControlsCommand = class _DeleteBucketOwnershipControlsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketOwnershipControlsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketOwnershipControlsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketOwnershipControls" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketOwnershipControlsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketOwnershipControlsCommand)(output, context); - } - }; - exports2.DeleteBucketOwnershipControlsCommand = DeleteBucketOwnershipControlsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketPolicyCommand.js -var require_DeleteBucketPolicyCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketPolicyCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketPolicyCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketPolicyCommand = class _DeleteBucketPolicyCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketPolicyCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketPolicyCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketPolicy" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketPolicyCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketPolicyCommand)(output, context); - } - }; - exports2.DeleteBucketPolicyCommand = DeleteBucketPolicyCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketReplicationCommand.js -var require_DeleteBucketReplicationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketReplicationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketReplicationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketReplicationCommand = class _DeleteBucketReplicationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketReplicationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketReplicationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketReplication" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketReplicationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketReplicationCommand)(output, context); - } - }; - exports2.DeleteBucketReplicationCommand = DeleteBucketReplicationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketTaggingCommand.js -var require_DeleteBucketTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketTaggingCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketTaggingCommand = class _DeleteBucketTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketTaggingCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketTaggingCommand)(output, context); - } - }; - exports2.DeleteBucketTaggingCommand = DeleteBucketTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketWebsiteCommand.js -var require_DeleteBucketWebsiteCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteBucketWebsiteCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteBucketWebsiteCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteBucketWebsiteCommand = class _DeleteBucketWebsiteCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteBucketWebsiteCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteBucketWebsiteCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteBucketWebsite" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteBucketWebsiteCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteBucketWebsiteCommand)(output, context); - } - }; - exports2.DeleteBucketWebsiteCommand = DeleteBucketWebsiteCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectCommand.js -var require_DeleteObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteObjectCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteObjectCommand = class _DeleteObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteObjectCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteObjectCommand)(output, context); - } - }; - exports2.DeleteObjectCommand = DeleteObjectCommand; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/constants.js -var require_constants3 = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/constants.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ChecksumLocation = exports2.ChecksumAlgorithm = void 0; - var ChecksumAlgorithm; - (function(ChecksumAlgorithm2) { - ChecksumAlgorithm2["MD5"] = "MD5"; - ChecksumAlgorithm2["CRC32"] = "CRC32"; - ChecksumAlgorithm2["CRC32C"] = "CRC32C"; - ChecksumAlgorithm2["SHA1"] = "SHA1"; - ChecksumAlgorithm2["SHA256"] = "SHA256"; - })(ChecksumAlgorithm = exports2.ChecksumAlgorithm || (exports2.ChecksumAlgorithm = {})); - var ChecksumLocation; - (function(ChecksumLocation2) { - ChecksumLocation2["HEADER"] = "header"; - ChecksumLocation2["TRAILER"] = "trailer"; - })(ChecksumLocation = exports2.ChecksumLocation || (exports2.ChecksumLocation = {})); - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/types.js -var require_types3 = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PRIORITY_ORDER_ALGORITHMS = exports2.CLIENT_SUPPORTED_ALGORITHMS = void 0; - var constants_1 = require_constants3(); - exports2.CLIENT_SUPPORTED_ALGORITHMS = [ - constants_1.ChecksumAlgorithm.CRC32, - constants_1.ChecksumAlgorithm.CRC32C, - constants_1.ChecksumAlgorithm.SHA1, - constants_1.ChecksumAlgorithm.SHA256 - ]; - exports2.PRIORITY_ORDER_ALGORITHMS = [ - constants_1.ChecksumAlgorithm.CRC32, - constants_1.ChecksumAlgorithm.CRC32C, - constants_1.ChecksumAlgorithm.SHA1, - constants_1.ChecksumAlgorithm.SHA256 - ]; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumAlgorithmForRequest.js -var require_getChecksumAlgorithmForRequest = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumAlgorithmForRequest.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getChecksumAlgorithmForRequest = void 0; - var constants_1 = require_constants3(); - var types_1 = require_types3(); - var getChecksumAlgorithmForRequest = (input, { requestChecksumRequired, requestAlgorithmMember }) => { - if (!requestAlgorithmMember || !input[requestAlgorithmMember]) { - return requestChecksumRequired ? constants_1.ChecksumAlgorithm.MD5 : void 0; - } - const checksumAlgorithm = input[requestAlgorithmMember]; - if (!types_1.CLIENT_SUPPORTED_ALGORITHMS.includes(checksumAlgorithm)) { - throw new Error(`The checksum algorithm "${checksumAlgorithm}" is not supported by the client. Select one of ${types_1.CLIENT_SUPPORTED_ALGORITHMS}.`); - } - return checksumAlgorithm; - }; - exports2.getChecksumAlgorithmForRequest = getChecksumAlgorithmForRequest; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumLocationName.js -var require_getChecksumLocationName = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumLocationName.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getChecksumLocationName = void 0; - var constants_1 = require_constants3(); - var getChecksumLocationName = (algorithm) => algorithm === constants_1.ChecksumAlgorithm.MD5 ? "content-md5" : `x-amz-checksum-${algorithm.toLowerCase()}`; - exports2.getChecksumLocationName = getChecksumLocationName; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/hasHeader.js -var require_hasHeader = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/hasHeader.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.hasHeader = void 0; - var hasHeader = (header, headers) => { - const soughtHeader = header.toLowerCase(); - for (const headerName of Object.keys(headers)) { - if (soughtHeader === headerName.toLowerCase()) { - return true; - } - } - return false; - }; - exports2.hasHeader = hasHeader; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/isStreaming.js -var require_isStreaming = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/isStreaming.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isStreaming = void 0; - var is_array_buffer_1 = require_dist_cjs8(); - var isStreaming = (body) => body !== void 0 && typeof body !== "string" && !ArrayBuffer.isView(body) && !(0, is_array_buffer_1.isArrayBuffer)(body); - exports2.isStreaming = isStreaming; - } -}); - -// node_modules/@aws-crypto/crc32c/node_modules/tslib/tslib.es6.js -var tslib_es6_exports3 = {}; -__export(tslib_es6_exports3, { - __assign: () => __assign3, - __asyncDelegator: () => __asyncDelegator3, - __asyncGenerator: () => __asyncGenerator3, - __asyncValues: () => __asyncValues3, - __await: () => __await3, - __awaiter: () => __awaiter3, - __classPrivateFieldGet: () => __classPrivateFieldGet3, - __classPrivateFieldSet: () => __classPrivateFieldSet3, - __createBinding: () => __createBinding3, - __decorate: () => __decorate3, - __exportStar: () => __exportStar3, - __extends: () => __extends3, - __generator: () => __generator3, - __importDefault: () => __importDefault3, - __importStar: () => __importStar3, - __makeTemplateObject: () => __makeTemplateObject3, - __metadata: () => __metadata3, - __param: () => __param3, - __read: () => __read3, - __rest: () => __rest3, - __spread: () => __spread3, - __spreadArrays: () => __spreadArrays3, - __values: () => __values3 -}); -function __extends3(d, b) { - extendStatics3(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} -function __rest3(s, e) { - var t = {}; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} -function __decorate3(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") - r = Reflect.decorate(decorators, target, key, desc); - else - for (var i = decorators.length - 1; i >= 0; i--) - if (d = decorators[i]) - r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} -function __param3(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; -} -function __metadata3(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") - return Reflect.metadata(metadataKey, metadataValue); -} -function __awaiter3(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} -function __generator3(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; - } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; - } -} -function __createBinding3(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; -} -function __exportStar3(m, exports2) { - for (var p in m) - if (p !== "default" && !exports2.hasOwnProperty(p)) - exports2[p] = m[p]; -} -function __values3(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); -} -function __read3(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; -} -function __spread3() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read3(arguments[i])); - return ar; -} -function __spreadArrays3() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) - s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; -} -function __await3(v) { - return this instanceof __await3 ? (this.v = v, this) : new __await3(v); -} -function __asyncGenerator3(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; - } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); - } - } - function step(r) { - r.value instanceof __await3 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); - } - function fulfill(value) { - resume("next", value); - } - function reject(value) { - resume("throw", value); - } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); - } -} -function __asyncDelegator3(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function(e) { - throw e; - }), verb("return"), i[Symbol.iterator] = function() { - return this; - }, i; - function verb(n, f) { - i[n] = o[n] ? function(v) { - return (p = !p) ? { value: __await3(o[n](v)), done: n === "return" } : f ? f(v) : v; - } : f; - } -} -function __asyncValues3(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values3 === "function" ? __values3(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); - }); - }; - } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); - } -} -function __makeTemplateObject3(cooked, raw) { - if (Object.defineProperty) { - Object.defineProperty(cooked, "raw", { value: raw }); - } else { - cooked.raw = raw; - } - return cooked; -} -function __importStar3(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (Object.hasOwnProperty.call(mod, k)) - result[k] = mod[k]; - } - result.default = mod; - return result; -} -function __importDefault3(mod) { - return mod && mod.__esModule ? mod : { default: mod }; -} -function __classPrivateFieldGet3(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - return privateMap.get(receiver); -} -function __classPrivateFieldSet3(receiver, privateMap, value) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - privateMap.set(receiver, value); - return value; -} -var extendStatics3, __assign3; -var init_tslib_es63 = __esm({ - "node_modules/@aws-crypto/crc32c/node_modules/tslib/tslib.es6.js"() { - extendStatics3 = function(d, b) { - extendStatics3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (b2.hasOwnProperty(p)) - d2[p] = b2[p]; - }; - return extendStatics3(d, b); - }; - __assign3 = function() { - __assign3 = Object.assign || function __assign4(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign3.apply(this, arguments); - }; - } -}); - -// node_modules/@aws-crypto/crc32c/build/aws_crc32c.js -var require_aws_crc32c = __commonJS({ - "node_modules/@aws-crypto/crc32c/build/aws_crc32c.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32c = void 0; - var tslib_1 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); - var util_1 = require_build(); - var index_1 = require_build3(); - var AwsCrc32c = ( - /** @class */ - function() { - function AwsCrc32c2() { - this.crc32c = new index_1.Crc32c(); - } - AwsCrc32c2.prototype.update = function(toHash) { - if ((0, util_1.isEmptyData)(toHash)) - return; - this.crc32c.update((0, util_1.convertToBuffer)(toHash)); - }; - AwsCrc32c2.prototype.digest = function() { - return tslib_1.__awaiter(this, void 0, void 0, function() { - return tslib_1.__generator(this, function(_a) { - return [2, (0, util_1.numToUint8)(this.crc32c.digest())]; - }); - }); - }; - AwsCrc32c2.prototype.reset = function() { - this.crc32c = new index_1.Crc32c(); - }; - return AwsCrc32c2; - }() - ); - exports2.AwsCrc32c = AwsCrc32c; - } -}); - -// node_modules/@aws-crypto/crc32c/build/index.js -var require_build3 = __commonJS({ - "node_modules/@aws-crypto/crc32c/build/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AwsCrc32c = exports2.Crc32c = exports2.crc32c = void 0; - var tslib_1 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); - var util_1 = require_build(); - function crc32c(data) { - return new Crc32c().update(data).digest(); - } - exports2.crc32c = crc32c; - var Crc32c = ( - /** @class */ - function() { - function Crc32c2() { - this.checksum = 4294967295; - } - Crc32c2.prototype.update = function(data) { - var e_1, _a; - try { - for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) { - var byte = data_1_1.value; - this.checksum = this.checksum >>> 8 ^ lookupTable[(this.checksum ^ byte) & 255]; - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (data_1_1 && !data_1_1.done && (_a = data_1.return)) - _a.call(data_1); - } finally { - if (e_1) - throw e_1.error; - } - } - return this; - }; - Crc32c2.prototype.digest = function() { - return (this.checksum ^ 4294967295) >>> 0; - }; - return Crc32c2; - }() - ); - exports2.Crc32c = Crc32c; - var a_lookupTable = [ - 0, - 4067132163, - 3778769143, - 324072436, - 3348797215, - 904991772, - 648144872, - 3570033899, - 2329499855, - 2024987596, - 1809983544, - 2575936315, - 1296289744, - 3207089363, - 2893594407, - 1578318884, - 274646895, - 3795141740, - 4049975192, - 51262619, - 3619967088, - 632279923, - 922689671, - 3298075524, - 2592579488, - 1760304291, - 2075979607, - 2312596564, - 1562183871, - 2943781820, - 3156637768, - 1313733451, - 549293790, - 3537243613, - 3246849577, - 871202090, - 3878099393, - 357341890, - 102525238, - 4101499445, - 2858735121, - 1477399826, - 1264559846, - 3107202533, - 1845379342, - 2677391885, - 2361733625, - 2125378298, - 820201905, - 3263744690, - 3520608582, - 598981189, - 4151959214, - 85089709, - 373468761, - 3827903834, - 3124367742, - 1213305469, - 1526817161, - 2842354314, - 2107672161, - 2412447074, - 2627466902, - 1861252501, - 1098587580, - 3004210879, - 2688576843, - 1378610760, - 2262928035, - 1955203488, - 1742404180, - 2511436119, - 3416409459, - 969524848, - 714683780, - 3639785095, - 205050476, - 4266873199, - 3976438427, - 526918040, - 1361435347, - 2739821008, - 2954799652, - 1114974503, - 2529119692, - 1691668175, - 2005155131, - 2247081528, - 3690758684, - 697762079, - 986182379, - 3366744552, - 476452099, - 3993867776, - 4250756596, - 255256311, - 1640403810, - 2477592673, - 2164122517, - 1922457750, - 2791048317, - 1412925310, - 1197962378, - 3037525897, - 3944729517, - 427051182, - 170179418, - 4165941337, - 746937522, - 3740196785, - 3451792453, - 1070968646, - 1905808397, - 2213795598, - 2426610938, - 1657317369, - 3053634322, - 1147748369, - 1463399397, - 2773627110, - 4215344322, - 153784257, - 444234805, - 3893493558, - 1021025245, - 3467647198, - 3722505002, - 797665321, - 2197175160, - 1889384571, - 1674398607, - 2443626636, - 1164749927, - 3070701412, - 2757221520, - 1446797203, - 137323447, - 4198817972, - 3910406976, - 461344835, - 3484808360, - 1037989803, - 781091935, - 3705997148, - 2460548119, - 1623424788, - 1939049696, - 2180517859, - 1429367560, - 2807687179, - 3020495871, - 1180866812, - 410100952, - 3927582683, - 4182430767, - 186734380, - 3756733383, - 763408580, - 1053836080, - 3434856499, - 2722870694, - 1344288421, - 1131464017, - 2971354706, - 1708204729, - 2545590714, - 2229949006, - 1988219213, - 680717673, - 3673779818, - 3383336350, - 1002577565, - 4010310262, - 493091189, - 238226049, - 4233660802, - 2987750089, - 1082061258, - 1395524158, - 2705686845, - 1972364758, - 2279892693, - 2494862625, - 1725896226, - 952904198, - 3399985413, - 3656866545, - 731699698, - 4283874585, - 222117402, - 510512622, - 3959836397, - 3280807620, - 837199303, - 582374963, - 3504198960, - 68661723, - 4135334616, - 3844915500, - 390545967, - 1230274059, - 3141532936, - 2825850620, - 1510247935, - 2395924756, - 2091215383, - 1878366691, - 2644384480, - 3553878443, - 565732008, - 854102364, - 3229815391, - 340358836, - 3861050807, - 4117890627, - 119113024, - 1493875044, - 2875275879, - 3090270611, - 1247431312, - 2660249211, - 1828433272, - 2141937292, - 2378227087, - 3811616794, - 291187481, - 34330861, - 4032846830, - 615137029, - 3603020806, - 3314634738, - 939183345, - 1776939221, - 2609017814, - 2295496738, - 2058945313, - 2926798794, - 1545135305, - 1330124605, - 3173225534, - 4084100981, - 17165430, - 307568514, - 3762199681, - 888469610, - 3332340585, - 3587147933, - 665062302, - 2042050490, - 2346497209, - 2559330125, - 1793573966, - 3190661285, - 1279665062, - 1595330642, - 2910671697 - ]; - var lookupTable = (0, util_1.uint32ArrayFrom)(a_lookupTable); - var aws_crc32c_1 = require_aws_crc32c(); - Object.defineProperty(exports2, "AwsCrc32c", { enumerable: true, get: function() { - return aws_crc32c_1.AwsCrc32c; - } }); - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/selectChecksumAlgorithmFunction.js -var require_selectChecksumAlgorithmFunction = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/selectChecksumAlgorithmFunction.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.selectChecksumAlgorithmFunction = void 0; - var crc32_1 = require_build2(); - var crc32c_1 = require_build3(); - var constants_1 = require_constants3(); - var selectChecksumAlgorithmFunction = (checksumAlgorithm, config) => ({ - [constants_1.ChecksumAlgorithm.MD5]: config.md5, - [constants_1.ChecksumAlgorithm.CRC32]: crc32_1.AwsCrc32, - [constants_1.ChecksumAlgorithm.CRC32C]: crc32c_1.AwsCrc32c, - [constants_1.ChecksumAlgorithm.SHA1]: config.sha1, - [constants_1.ChecksumAlgorithm.SHA256]: config.sha256 - })[checksumAlgorithm]; - exports2.selectChecksumAlgorithmFunction = selectChecksumAlgorithmFunction; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/stringHasher.js -var require_stringHasher = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/stringHasher.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.stringHasher = void 0; - var util_utf8_1 = require_dist_cjs11(); - var stringHasher = (checksumAlgorithmFn, body) => { - const hash = new checksumAlgorithmFn(); - hash.update((0, util_utf8_1.toUint8Array)(body || "")); - return hash.digest(); - }; - exports2.stringHasher = stringHasher; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js -var require_flexibleChecksumsMiddleware = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.flexibleChecksumsMiddleware = void 0; - var protocol_http_1 = require_dist_cjs2(); - var getChecksumAlgorithmForRequest_1 = require_getChecksumAlgorithmForRequest(); - var getChecksumLocationName_1 = require_getChecksumLocationName(); - var hasHeader_1 = require_hasHeader(); - var isStreaming_1 = require_isStreaming(); - var selectChecksumAlgorithmFunction_1 = require_selectChecksumAlgorithmFunction(); - var stringHasher_1 = require_stringHasher(); - var flexibleChecksumsMiddleware = (config, middlewareConfig) => (next) => async (args) => { - if (!protocol_http_1.HttpRequest.isInstance(args.request)) { - return next(args); - } - const { request } = args; - const { body: requestBody, headers } = request; - const { base64Encoder, streamHasher } = config; - const { input, requestChecksumRequired, requestAlgorithmMember } = middlewareConfig; - const checksumAlgorithm = (0, getChecksumAlgorithmForRequest_1.getChecksumAlgorithmForRequest)(input, { - requestChecksumRequired, - requestAlgorithmMember - }); - let updatedBody = requestBody; - let updatedHeaders = headers; - if (checksumAlgorithm) { - const checksumLocationName = (0, getChecksumLocationName_1.getChecksumLocationName)(checksumAlgorithm); - const checksumAlgorithmFn = (0, selectChecksumAlgorithmFunction_1.selectChecksumAlgorithmFunction)(checksumAlgorithm, config); - if ((0, isStreaming_1.isStreaming)(requestBody)) { - const { getAwsChunkedEncodingStream: getAwsChunkedEncodingStream2, bodyLengthChecker } = config; - updatedBody = getAwsChunkedEncodingStream2(requestBody, { - base64Encoder, - bodyLengthChecker, - checksumLocationName, - checksumAlgorithmFn, - streamHasher - }); - updatedHeaders = { - ...headers, - "content-encoding": headers["content-encoding"] ? `${headers["content-encoding"]},aws-chunked` : "aws-chunked", - "transfer-encoding": "chunked", - "x-amz-decoded-content-length": headers["content-length"], - "x-amz-content-sha256": "STREAMING-UNSIGNED-PAYLOAD-TRAILER", - "x-amz-trailer": checksumLocationName - }; - delete updatedHeaders["content-length"]; - } else if (!(0, hasHeader_1.hasHeader)(checksumLocationName, headers)) { - const rawChecksum = await (0, stringHasher_1.stringHasher)(checksumAlgorithmFn, requestBody); - updatedHeaders = { - ...headers, - [checksumLocationName]: base64Encoder(rawChecksum) - }; - } - } - const result = await next({ - ...args, - request: { - ...request, - headers: updatedHeaders, - body: updatedBody - } - }); - return result; - }; - exports2.flexibleChecksumsMiddleware = flexibleChecksumsMiddleware; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/streams/create-read-stream-on-buffer.js -var require_create_read_stream_on_buffer = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/streams/create-read-stream-on-buffer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createReadStreamOnBuffer = void 0; - var stream_1 = require("stream"); - function createReadStreamOnBuffer(buffer) { - const stream = new stream_1.Transform(); - stream.push(buffer); - stream.push(null); - return stream; - } - exports2.createReadStreamOnBuffer = createReadStreamOnBuffer; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksum.js -var require_getChecksum = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksum.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getChecksum = void 0; - var isStreaming_1 = require_isStreaming(); - var stringHasher_1 = require_stringHasher(); - var getChecksum = async (body, { streamHasher, checksumAlgorithmFn, base64Encoder }) => { - const digest = (0, isStreaming_1.isStreaming)(body) ? streamHasher(checksumAlgorithmFn, body) : (0, stringHasher_1.stringHasher)(checksumAlgorithmFn, body); - return base64Encoder(await digest); - }; - exports2.getChecksum = getChecksum; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumAlgorithmListForResponse.js -var require_getChecksumAlgorithmListForResponse = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getChecksumAlgorithmListForResponse.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getChecksumAlgorithmListForResponse = void 0; - var types_1 = require_types3(); - var getChecksumAlgorithmListForResponse = (responseAlgorithms = []) => { - const validChecksumAlgorithms = []; - for (const algorithm of types_1.PRIORITY_ORDER_ALGORITHMS) { - if (!responseAlgorithms.includes(algorithm) || !types_1.CLIENT_SUPPORTED_ALGORITHMS.includes(algorithm)) { - continue; - } - validChecksumAlgorithms.push(algorithm); - } - return validChecksumAlgorithms; - }; - exports2.getChecksumAlgorithmListForResponse = getChecksumAlgorithmListForResponse; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/validateChecksumFromResponse.js -var require_validateChecksumFromResponse = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/validateChecksumFromResponse.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateChecksumFromResponse = void 0; - var getChecksum_1 = require_getChecksum(); - var getChecksumAlgorithmListForResponse_1 = require_getChecksumAlgorithmListForResponse(); - var getChecksumLocationName_1 = require_getChecksumLocationName(); - var selectChecksumAlgorithmFunction_1 = require_selectChecksumAlgorithmFunction(); - var validateChecksumFromResponse = async (response, { config, responseAlgorithms }) => { - const checksumAlgorithms = (0, getChecksumAlgorithmListForResponse_1.getChecksumAlgorithmListForResponse)(responseAlgorithms); - const { body: responseBody, headers: responseHeaders } = response; - for (const algorithm of checksumAlgorithms) { - const responseHeader = (0, getChecksumLocationName_1.getChecksumLocationName)(algorithm); - const checksumFromResponse = responseHeaders[responseHeader]; - if (checksumFromResponse) { - const checksumAlgorithmFn = (0, selectChecksumAlgorithmFunction_1.selectChecksumAlgorithmFunction)(algorithm, config); - const { streamHasher, base64Encoder } = config; - const checksum = await (0, getChecksum_1.getChecksum)(responseBody, { streamHasher, checksumAlgorithmFn, base64Encoder }); - if (checksum === checksumFromResponse) { - break; - } - throw new Error(`Checksum mismatch: expected "${checksum}" but received "${checksumFromResponse}" in response header "${responseHeader}".`); - } - } - }; - exports2.validateChecksumFromResponse = validateChecksumFromResponse; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsResponseMiddleware.js -var require_flexibleChecksumsResponseMiddleware = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsResponseMiddleware.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.flexibleChecksumsResponseMiddleware = exports2.flexibleChecksumsResponseMiddlewareOptions = void 0; - var protocol_http_1 = require_dist_cjs2(); - var isStreaming_1 = require_isStreaming(); - var create_read_stream_on_buffer_1 = require_create_read_stream_on_buffer(); - var validateChecksumFromResponse_1 = require_validateChecksumFromResponse(); - exports2.flexibleChecksumsResponseMiddlewareOptions = { - name: "flexibleChecksumsResponseMiddleware", - toMiddleware: "deserializerMiddleware", - relation: "after", - tags: ["BODY_CHECKSUM"], - override: true - }; - var flexibleChecksumsResponseMiddleware = (config, middlewareConfig) => (next) => async (args) => { - if (!protocol_http_1.HttpRequest.isInstance(args.request)) { - return next(args); - } - const input = args.input; - const result = await next(args); - const response = result.response; - let collectedStream = void 0; - const { requestValidationModeMember, responseAlgorithms } = middlewareConfig; - if (requestValidationModeMember && input[requestValidationModeMember] === "ENABLED") { - const isStreamingBody = (0, isStreaming_1.isStreaming)(response.body); - if (isStreamingBody) { - collectedStream = await config.streamCollector(response.body); - response.body = (0, create_read_stream_on_buffer_1.createReadStreamOnBuffer)(collectedStream); - } - await (0, validateChecksumFromResponse_1.validateChecksumFromResponse)(result.response, { - config, - responseAlgorithms - }); - if (isStreamingBody && collectedStream) { - response.body = (0, create_read_stream_on_buffer_1.createReadStreamOnBuffer)(collectedStream); - } - } - return result; - }; - exports2.flexibleChecksumsResponseMiddleware = flexibleChecksumsResponseMiddleware; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getFlexibleChecksumsPlugin.js -var require_getFlexibleChecksumsPlugin = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/getFlexibleChecksumsPlugin.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getFlexibleChecksumsPlugin = exports2.flexibleChecksumsMiddlewareOptions = void 0; - var flexibleChecksumsMiddleware_1 = require_flexibleChecksumsMiddleware(); - var flexibleChecksumsResponseMiddleware_1 = require_flexibleChecksumsResponseMiddleware(); - exports2.flexibleChecksumsMiddlewareOptions = { - name: "flexibleChecksumsMiddleware", - step: "build", - tags: ["BODY_CHECKSUM"], - override: true - }; - var getFlexibleChecksumsPlugin = (config, middlewareConfig) => ({ - applyToStack: (clientStack) => { - clientStack.add((0, flexibleChecksumsMiddleware_1.flexibleChecksumsMiddleware)(config, middlewareConfig), exports2.flexibleChecksumsMiddlewareOptions); - clientStack.addRelativeTo((0, flexibleChecksumsResponseMiddleware_1.flexibleChecksumsResponseMiddleware)(config, middlewareConfig), flexibleChecksumsResponseMiddleware_1.flexibleChecksumsResponseMiddlewareOptions); - } - }); - exports2.getFlexibleChecksumsPlugin = getFlexibleChecksumsPlugin; - } -}); - -// node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/index.js -var require_dist_cjs66 = __commonJS({ - "node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_constants3(), exports2); - tslib_1.__exportStar(require_flexibleChecksumsMiddleware(), exports2); - tslib_1.__exportStar(require_getFlexibleChecksumsPlugin(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectsCommand.js -var require_DeleteObjectsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteObjectsCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteObjectsCommand = class _DeleteObjectsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteObjectsCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteObjectsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteObjects" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteObjectsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteObjectsCommand)(output, context); - } - }; - exports2.DeleteObjectsCommand = DeleteObjectsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectTaggingCommand.js -var require_DeleteObjectTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeleteObjectTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeleteObjectTaggingCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeleteObjectTaggingCommand = class _DeleteObjectTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeleteObjectTaggingCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeleteObjectTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeleteObjectTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeleteObjectTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeleteObjectTaggingCommand)(output, context); - } - }; - exports2.DeleteObjectTaggingCommand = DeleteObjectTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeletePublicAccessBlockCommand.js -var require_DeletePublicAccessBlockCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/DeletePublicAccessBlockCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DeletePublicAccessBlockCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var DeletePublicAccessBlockCommand = class _DeletePublicAccessBlockCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _DeletePublicAccessBlockCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "DeletePublicAccessBlockCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "DeletePublicAccessBlock" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_DeletePublicAccessBlockCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_DeletePublicAccessBlockCommand)(output, context); - } - }; - exports2.DeletePublicAccessBlockCommand = DeletePublicAccessBlockCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAccelerateConfigurationCommand.js -var require_GetBucketAccelerateConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAccelerateConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketAccelerateConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketAccelerateConfigurationCommand = class _GetBucketAccelerateConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketAccelerateConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketAccelerateConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketAccelerateConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketAccelerateConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketAccelerateConfigurationCommand)(output, context); - } - }; - exports2.GetBucketAccelerateConfigurationCommand = GetBucketAccelerateConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAclCommand.js -var require_GetBucketAclCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAclCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketAclCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketAclCommand = class _GetBucketAclCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketAclCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketAclCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketAcl" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketAclCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketAclCommand)(output, context); - } - }; - exports2.GetBucketAclCommand = GetBucketAclCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAnalyticsConfigurationCommand.js -var require_GetBucketAnalyticsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketAnalyticsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketAnalyticsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketAnalyticsConfigurationCommand = class _GetBucketAnalyticsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketAnalyticsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketAnalyticsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketAnalyticsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketAnalyticsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketAnalyticsConfigurationCommand)(output, context); - } - }; - exports2.GetBucketAnalyticsConfigurationCommand = GetBucketAnalyticsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketCorsCommand.js -var require_GetBucketCorsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketCorsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketCorsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketCorsCommand = class _GetBucketCorsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketCorsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketCorsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketCors" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketCorsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketCorsCommand)(output, context); - } - }; - exports2.GetBucketCorsCommand = GetBucketCorsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketEncryptionCommand.js -var require_GetBucketEncryptionCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketEncryptionCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketEncryptionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketEncryptionCommand = class _GetBucketEncryptionCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketEncryptionCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketEncryptionCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.GetBucketEncryptionOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketEncryption" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketEncryptionCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketEncryptionCommand)(output, context); - } - }; - exports2.GetBucketEncryptionCommand = GetBucketEncryptionCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketIntelligentTieringConfigurationCommand.js -var require_GetBucketIntelligentTieringConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketIntelligentTieringConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketIntelligentTieringConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketIntelligentTieringConfigurationCommand = class _GetBucketIntelligentTieringConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketIntelligentTieringConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketIntelligentTieringConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketIntelligentTieringConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketIntelligentTieringConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketIntelligentTieringConfigurationCommand)(output, context); - } - }; - exports2.GetBucketIntelligentTieringConfigurationCommand = GetBucketIntelligentTieringConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketInventoryConfigurationCommand.js -var require_GetBucketInventoryConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketInventoryConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketInventoryConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketInventoryConfigurationCommand = class _GetBucketInventoryConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketInventoryConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketInventoryConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.GetBucketInventoryConfigurationOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketInventoryConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketInventoryConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketInventoryConfigurationCommand)(output, context); - } - }; - exports2.GetBucketInventoryConfigurationCommand = GetBucketInventoryConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLifecycleConfigurationCommand.js -var require_GetBucketLifecycleConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLifecycleConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketLifecycleConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketLifecycleConfigurationCommand = class _GetBucketLifecycleConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketLifecycleConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketLifecycleConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketLifecycleConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketLifecycleConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketLifecycleConfigurationCommand)(output, context); - } - }; - exports2.GetBucketLifecycleConfigurationCommand = GetBucketLifecycleConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLocationCommand.js -var require_GetBucketLocationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLocationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketLocationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketLocationCommand = class _GetBucketLocationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketLocationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketLocationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketLocation" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketLocationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketLocationCommand)(output, context); - } - }; - exports2.GetBucketLocationCommand = GetBucketLocationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLoggingCommand.js -var require_GetBucketLoggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketLoggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketLoggingCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketLoggingCommand = class _GetBucketLoggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketLoggingCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketLoggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketLogging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketLoggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketLoggingCommand)(output, context); - } - }; - exports2.GetBucketLoggingCommand = GetBucketLoggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketMetricsConfigurationCommand.js -var require_GetBucketMetricsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketMetricsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketMetricsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketMetricsConfigurationCommand = class _GetBucketMetricsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketMetricsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketMetricsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketMetricsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketMetricsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketMetricsConfigurationCommand)(output, context); - } - }; - exports2.GetBucketMetricsConfigurationCommand = GetBucketMetricsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketNotificationConfigurationCommand.js -var require_GetBucketNotificationConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketNotificationConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketNotificationConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketNotificationConfigurationCommand = class _GetBucketNotificationConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketNotificationConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketNotificationConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketNotificationConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketNotificationConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketNotificationConfigurationCommand)(output, context); - } - }; - exports2.GetBucketNotificationConfigurationCommand = GetBucketNotificationConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketOwnershipControlsCommand.js -var require_GetBucketOwnershipControlsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketOwnershipControlsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketOwnershipControlsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketOwnershipControlsCommand = class _GetBucketOwnershipControlsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketOwnershipControlsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketOwnershipControlsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketOwnershipControls" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketOwnershipControlsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketOwnershipControlsCommand)(output, context); - } - }; - exports2.GetBucketOwnershipControlsCommand = GetBucketOwnershipControlsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketPolicyCommand.js -var require_GetBucketPolicyCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketPolicyCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketPolicyCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketPolicyCommand = class _GetBucketPolicyCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketPolicyCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketPolicyCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketPolicy" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketPolicyCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketPolicyCommand)(output, context); - } - }; - exports2.GetBucketPolicyCommand = GetBucketPolicyCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketPolicyStatusCommand.js -var require_GetBucketPolicyStatusCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketPolicyStatusCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketPolicyStatusCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketPolicyStatusCommand = class _GetBucketPolicyStatusCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketPolicyStatusCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketPolicyStatusCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketPolicyStatus" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketPolicyStatusCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketPolicyStatusCommand)(output, context); - } - }; - exports2.GetBucketPolicyStatusCommand = GetBucketPolicyStatusCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketReplicationCommand.js -var require_GetBucketReplicationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketReplicationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketReplicationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketReplicationCommand = class _GetBucketReplicationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketReplicationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketReplicationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketReplication" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketReplicationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketReplicationCommand)(output, context); - } - }; - exports2.GetBucketReplicationCommand = GetBucketReplicationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketRequestPaymentCommand.js -var require_GetBucketRequestPaymentCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketRequestPaymentCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketRequestPaymentCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketRequestPaymentCommand = class _GetBucketRequestPaymentCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketRequestPaymentCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketRequestPaymentCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketRequestPayment" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketRequestPaymentCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketRequestPaymentCommand)(output, context); - } - }; - exports2.GetBucketRequestPaymentCommand = GetBucketRequestPaymentCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketTaggingCommand.js -var require_GetBucketTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketTaggingCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketTaggingCommand = class _GetBucketTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketTaggingCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketTaggingCommand)(output, context); - } - }; - exports2.GetBucketTaggingCommand = GetBucketTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketVersioningCommand.js -var require_GetBucketVersioningCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketVersioningCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketVersioningCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketVersioningCommand = class _GetBucketVersioningCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketVersioningCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketVersioningCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketVersioning" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketVersioningCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketVersioningCommand)(output, context); - } - }; - exports2.GetBucketVersioningCommand = GetBucketVersioningCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketWebsiteCommand.js -var require_GetBucketWebsiteCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetBucketWebsiteCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetBucketWebsiteCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetBucketWebsiteCommand = class _GetBucketWebsiteCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetBucketWebsiteCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetBucketWebsiteCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetBucketWebsite" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetBucketWebsiteCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetBucketWebsiteCommand)(output, context); - } - }; - exports2.GetBucketWebsiteCommand = GetBucketWebsiteCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectAclCommand.js -var require_GetObjectAclCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectAclCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectAclCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectAclCommand = class _GetObjectAclCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectAclCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectAclCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectAcl" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectAclCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectAclCommand)(output, context); - } - }; - exports2.GetObjectAclCommand = GetObjectAclCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectAttributesCommand.js -var require_GetObjectAttributesCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectAttributesCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectAttributesCommand = exports2.$Command = void 0; - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectAttributesCommand = class _GetObjectAttributesCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectAttributesCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectAttributesCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.GetObjectAttributesRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectAttributes" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectAttributesCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectAttributesCommand)(output, context); - } - }; - exports2.GetObjectAttributesCommand = GetObjectAttributesCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectCommand.js -var require_GetObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectCommand = class _GetObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestChecksumRequired: false, - requestValidationModeMember: "ChecksumMode", - responseAlgorithms: ["CRC32", "CRC32C", "SHA256", "SHA1"] - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.GetObjectRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.GetObjectOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectCommand)(output, context); - } - }; - exports2.GetObjectCommand = GetObjectCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectLegalHoldCommand.js -var require_GetObjectLegalHoldCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectLegalHoldCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectLegalHoldCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectLegalHoldCommand = class _GetObjectLegalHoldCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectLegalHoldCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectLegalHoldCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectLegalHold" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectLegalHoldCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectLegalHoldCommand)(output, context); - } - }; - exports2.GetObjectLegalHoldCommand = GetObjectLegalHoldCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectLockConfigurationCommand.js -var require_GetObjectLockConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectLockConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectLockConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectLockConfigurationCommand = class _GetObjectLockConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectLockConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectLockConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectLockConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectLockConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectLockConfigurationCommand)(output, context); - } - }; - exports2.GetObjectLockConfigurationCommand = GetObjectLockConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectRetentionCommand.js -var require_GetObjectRetentionCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectRetentionCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectRetentionCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectRetentionCommand = class _GetObjectRetentionCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectRetentionCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectRetentionCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectRetention" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectRetentionCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectRetentionCommand)(output, context); - } - }; - exports2.GetObjectRetentionCommand = GetObjectRetentionCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectTaggingCommand.js -var require_GetObjectTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectTaggingCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectTaggingCommand = class _GetObjectTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectTaggingCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectTaggingCommand)(output, context); - } - }; - exports2.GetObjectTaggingCommand = GetObjectTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectTorrentCommand.js -var require_GetObjectTorrentCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetObjectTorrentCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetObjectTorrentCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetObjectTorrentCommand = class _GetObjectTorrentCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetObjectTorrentCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetObjectTorrentCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.GetObjectTorrentOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetObjectTorrent" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetObjectTorrentCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetObjectTorrentCommand)(output, context); - } - }; - exports2.GetObjectTorrentCommand = GetObjectTorrentCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetPublicAccessBlockCommand.js -var require_GetPublicAccessBlockCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/GetPublicAccessBlockCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.GetPublicAccessBlockCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var GetPublicAccessBlockCommand = class _GetPublicAccessBlockCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _GetPublicAccessBlockCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "GetPublicAccessBlockCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "GetPublicAccessBlock" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_GetPublicAccessBlockCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_GetPublicAccessBlockCommand)(output, context); - } - }; - exports2.GetPublicAccessBlockCommand = GetPublicAccessBlockCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/HeadBucketCommand.js -var require_HeadBucketCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/HeadBucketCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HeadBucketCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var HeadBucketCommand = class _HeadBucketCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _HeadBucketCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "HeadBucketCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "HeadBucket" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_HeadBucketCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_HeadBucketCommand)(output, context); - } - }; - exports2.HeadBucketCommand = HeadBucketCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/HeadObjectCommand.js -var require_HeadObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/HeadObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HeadObjectCommand = exports2.$Command = void 0; - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var HeadObjectCommand = class _HeadObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _HeadObjectCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "HeadObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.HeadObjectRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.HeadObjectOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "HeadObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_HeadObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_HeadObjectCommand)(output, context); - } - }; - exports2.HeadObjectCommand = HeadObjectCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketAnalyticsConfigurationsCommand.js -var require_ListBucketAnalyticsConfigurationsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketAnalyticsConfigurationsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListBucketAnalyticsConfigurationsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListBucketAnalyticsConfigurationsCommand = class _ListBucketAnalyticsConfigurationsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBucketAnalyticsConfigurationsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListBucketAnalyticsConfigurationsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListBucketAnalyticsConfigurations" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListBucketAnalyticsConfigurationsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListBucketAnalyticsConfigurationsCommand)(output, context); - } - }; - exports2.ListBucketAnalyticsConfigurationsCommand = ListBucketAnalyticsConfigurationsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketIntelligentTieringConfigurationsCommand.js -var require_ListBucketIntelligentTieringConfigurationsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketIntelligentTieringConfigurationsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListBucketIntelligentTieringConfigurationsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListBucketIntelligentTieringConfigurationsCommand = class _ListBucketIntelligentTieringConfigurationsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBucketIntelligentTieringConfigurationsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListBucketIntelligentTieringConfigurationsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListBucketIntelligentTieringConfigurations" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListBucketIntelligentTieringConfigurationsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListBucketIntelligentTieringConfigurationsCommand)(output, context); - } - }; - exports2.ListBucketIntelligentTieringConfigurationsCommand = ListBucketIntelligentTieringConfigurationsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketInventoryConfigurationsCommand.js -var require_ListBucketInventoryConfigurationsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketInventoryConfigurationsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListBucketInventoryConfigurationsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListBucketInventoryConfigurationsCommand = class _ListBucketInventoryConfigurationsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBucketInventoryConfigurationsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListBucketInventoryConfigurationsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: models_0_1.ListBucketInventoryConfigurationsOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListBucketInventoryConfigurations" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListBucketInventoryConfigurationsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListBucketInventoryConfigurationsCommand)(output, context); - } - }; - exports2.ListBucketInventoryConfigurationsCommand = ListBucketInventoryConfigurationsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketMetricsConfigurationsCommand.js -var require_ListBucketMetricsConfigurationsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketMetricsConfigurationsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListBucketMetricsConfigurationsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListBucketMetricsConfigurationsCommand = class _ListBucketMetricsConfigurationsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBucketMetricsConfigurationsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListBucketMetricsConfigurationsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListBucketMetricsConfigurations" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListBucketMetricsConfigurationsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListBucketMetricsConfigurationsCommand)(output, context); - } - }; - exports2.ListBucketMetricsConfigurationsCommand = ListBucketMetricsConfigurationsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketsCommand.js -var require_ListBucketsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListBucketsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListBucketsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListBucketsCommand = class _ListBucketsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListBucketsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListBucketsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListBuckets" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListBucketsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListBucketsCommand)(output, context); - } - }; - exports2.ListBucketsCommand = ListBucketsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListMultipartUploadsCommand.js -var require_ListMultipartUploadsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListMultipartUploadsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListMultipartUploadsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListMultipartUploadsCommand = class _ListMultipartUploadsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListMultipartUploadsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListMultipartUploadsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListMultipartUploads" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListMultipartUploadsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListMultipartUploadsCommand)(output, context); - } - }; - exports2.ListMultipartUploadsCommand = ListMultipartUploadsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectsCommand.js -var require_ListObjectsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListObjectsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListObjectsCommand = class _ListObjectsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListObjectsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListObjectsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListObjects" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListObjectsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListObjectsCommand)(output, context); - } - }; - exports2.ListObjectsCommand = ListObjectsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectsV2Command.js -var require_ListObjectsV2Command = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectsV2Command.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListObjectsV2Command = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListObjectsV2Command = class _ListObjectsV2Command extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListObjectsV2Command.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListObjectsV2Command"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListObjectsV2" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListObjectsV2Command)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListObjectsV2Command)(output, context); - } - }; - exports2.ListObjectsV2Command = ListObjectsV2Command; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectVersionsCommand.js -var require_ListObjectVersionsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListObjectVersionsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListObjectVersionsCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListObjectVersionsCommand = class _ListObjectVersionsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListObjectVersionsCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListObjectVersionsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListObjectVersions" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListObjectVersionsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListObjectVersionsCommand)(output, context); - } - }; - exports2.ListObjectVersionsCommand = ListObjectVersionsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListPartsCommand.js -var require_ListPartsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/ListPartsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListPartsCommand = exports2.$Command = void 0; - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var ListPartsCommand = class _ListPartsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _ListPartsCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "ListPartsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.ListPartsRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "ListParts" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_ListPartsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_ListPartsCommand)(output, context); - } - }; - exports2.ListPartsCommand = ListPartsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAccelerateConfigurationCommand.js -var require_PutBucketAccelerateConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAccelerateConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketAccelerateConfigurationCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketAccelerateConfigurationCommand = class _PutBucketAccelerateConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketAccelerateConfigurationCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: false - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketAccelerateConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketAccelerateConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketAccelerateConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketAccelerateConfigurationCommand)(output, context); - } - }; - exports2.PutBucketAccelerateConfigurationCommand = PutBucketAccelerateConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAclCommand.js -var require_PutBucketAclCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAclCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketAclCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketAclCommand = class _PutBucketAclCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketAclCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketAclCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketAcl" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketAclCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketAclCommand)(output, context); - } - }; - exports2.PutBucketAclCommand = PutBucketAclCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAnalyticsConfigurationCommand.js -var require_PutBucketAnalyticsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketAnalyticsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketAnalyticsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketAnalyticsConfigurationCommand = class _PutBucketAnalyticsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketAnalyticsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketAnalyticsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketAnalyticsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketAnalyticsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketAnalyticsConfigurationCommand)(output, context); - } - }; - exports2.PutBucketAnalyticsConfigurationCommand = PutBucketAnalyticsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketCorsCommand.js -var require_PutBucketCorsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketCorsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketCorsCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketCorsCommand = class _PutBucketCorsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketCorsCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketCorsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketCors" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketCorsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketCorsCommand)(output, context); - } - }; - exports2.PutBucketCorsCommand = PutBucketCorsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketEncryptionCommand.js -var require_PutBucketEncryptionCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketEncryptionCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketEncryptionCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketEncryptionCommand = class _PutBucketEncryptionCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketEncryptionCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketEncryptionCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.PutBucketEncryptionRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketEncryption" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketEncryptionCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketEncryptionCommand)(output, context); - } - }; - exports2.PutBucketEncryptionCommand = PutBucketEncryptionCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketIntelligentTieringConfigurationCommand.js -var require_PutBucketIntelligentTieringConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketIntelligentTieringConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketIntelligentTieringConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketIntelligentTieringConfigurationCommand = class _PutBucketIntelligentTieringConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketIntelligentTieringConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketIntelligentTieringConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketIntelligentTieringConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketIntelligentTieringConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketIntelligentTieringConfigurationCommand)(output, context); - } - }; - exports2.PutBucketIntelligentTieringConfigurationCommand = PutBucketIntelligentTieringConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketInventoryConfigurationCommand.js -var require_PutBucketInventoryConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketInventoryConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketInventoryConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketInventoryConfigurationCommand = class _PutBucketInventoryConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketInventoryConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketInventoryConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.PutBucketInventoryConfigurationRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketInventoryConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketInventoryConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketInventoryConfigurationCommand)(output, context); - } - }; - exports2.PutBucketInventoryConfigurationCommand = PutBucketInventoryConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketLifecycleConfigurationCommand.js -var require_PutBucketLifecycleConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketLifecycleConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketLifecycleConfigurationCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketLifecycleConfigurationCommand = class _PutBucketLifecycleConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketLifecycleConfigurationCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketLifecycleConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketLifecycleConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketLifecycleConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketLifecycleConfigurationCommand)(output, context); - } - }; - exports2.PutBucketLifecycleConfigurationCommand = PutBucketLifecycleConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketLoggingCommand.js -var require_PutBucketLoggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketLoggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketLoggingCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketLoggingCommand = class _PutBucketLoggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketLoggingCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketLoggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketLogging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketLoggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketLoggingCommand)(output, context); - } - }; - exports2.PutBucketLoggingCommand = PutBucketLoggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketMetricsConfigurationCommand.js -var require_PutBucketMetricsConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketMetricsConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketMetricsConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketMetricsConfigurationCommand = class _PutBucketMetricsConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketMetricsConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketMetricsConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketMetricsConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketMetricsConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketMetricsConfigurationCommand)(output, context); - } - }; - exports2.PutBucketMetricsConfigurationCommand = PutBucketMetricsConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketNotificationConfigurationCommand.js -var require_PutBucketNotificationConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketNotificationConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketNotificationConfigurationCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketNotificationConfigurationCommand = class _PutBucketNotificationConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketNotificationConfigurationCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketNotificationConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketNotificationConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketNotificationConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketNotificationConfigurationCommand)(output, context); - } - }; - exports2.PutBucketNotificationConfigurationCommand = PutBucketNotificationConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketOwnershipControlsCommand.js -var require_PutBucketOwnershipControlsCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketOwnershipControlsCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketOwnershipControlsCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketOwnershipControlsCommand = class _PutBucketOwnershipControlsCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketOwnershipControlsCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { input: this.input, requestChecksumRequired: true })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketOwnershipControlsCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketOwnershipControls" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketOwnershipControlsCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketOwnershipControlsCommand)(output, context); - } - }; - exports2.PutBucketOwnershipControlsCommand = PutBucketOwnershipControlsCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketPolicyCommand.js -var require_PutBucketPolicyCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketPolicyCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketPolicyCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketPolicyCommand = class _PutBucketPolicyCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketPolicyCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketPolicyCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketPolicy" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketPolicyCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketPolicyCommand)(output, context); - } - }; - exports2.PutBucketPolicyCommand = PutBucketPolicyCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketReplicationCommand.js -var require_PutBucketReplicationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketReplicationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketReplicationCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketReplicationCommand = class _PutBucketReplicationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketReplicationCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketReplicationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketReplication" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketReplicationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketReplicationCommand)(output, context); - } - }; - exports2.PutBucketReplicationCommand = PutBucketReplicationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketRequestPaymentCommand.js -var require_PutBucketRequestPaymentCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketRequestPaymentCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketRequestPaymentCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketRequestPaymentCommand = class _PutBucketRequestPaymentCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketRequestPaymentCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketRequestPaymentCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketRequestPayment" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketRequestPaymentCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketRequestPaymentCommand)(output, context); - } - }; - exports2.PutBucketRequestPaymentCommand = PutBucketRequestPaymentCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketTaggingCommand.js -var require_PutBucketTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketTaggingCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketTaggingCommand = class _PutBucketTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketTaggingCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketTaggingCommand)(output, context); - } - }; - exports2.PutBucketTaggingCommand = PutBucketTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketVersioningCommand.js -var require_PutBucketVersioningCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketVersioningCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketVersioningCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketVersioningCommand = class _PutBucketVersioningCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketVersioningCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketVersioningCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketVersioning" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketVersioningCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketVersioningCommand)(output, context); - } - }; - exports2.PutBucketVersioningCommand = PutBucketVersioningCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketWebsiteCommand.js -var require_PutBucketWebsiteCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutBucketWebsiteCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutBucketWebsiteCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutBucketWebsiteCommand = class _PutBucketWebsiteCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutBucketWebsiteCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutBucketWebsiteCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutBucketWebsite" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutBucketWebsiteCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutBucketWebsiteCommand)(output, context); - } - }; - exports2.PutBucketWebsiteCommand = PutBucketWebsiteCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectAclCommand.js -var require_PutObjectAclCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectAclCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectAclCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectAclCommand = class _PutObjectAclCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectAclCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectAclCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObjectAcl" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectAclCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectAclCommand)(output, context); - } - }; - exports2.PutObjectAclCommand = PutObjectAclCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectCommand.js -var require_PutObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_sdk_s3_1 = require_dist_cjs18(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_0_1 = require_models_03(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectCommand = class _PutObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_sdk_s3_1.getCheckContentLengthHeaderPlugin)(configuration)); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: false - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_0_1.PutObjectRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_0_1.PutObjectOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectCommand)(output, context); - } - }; - exports2.PutObjectCommand = PutObjectCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectLegalHoldCommand.js -var require_PutObjectLegalHoldCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectLegalHoldCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectLegalHoldCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectLegalHoldCommand = class _PutObjectLegalHoldCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectLegalHoldCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectLegalHoldCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObjectLegalHold" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectLegalHoldCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectLegalHoldCommand)(output, context); - } - }; - exports2.PutObjectLegalHoldCommand = PutObjectLegalHoldCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectLockConfigurationCommand.js -var require_PutObjectLockConfigurationCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectLockConfigurationCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectLockConfigurationCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectLockConfigurationCommand = class _PutObjectLockConfigurationCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectLockConfigurationCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectLockConfigurationCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObjectLockConfiguration" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectLockConfigurationCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectLockConfigurationCommand)(output, context); - } - }; - exports2.PutObjectLockConfigurationCommand = PutObjectLockConfigurationCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectRetentionCommand.js -var require_PutObjectRetentionCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectRetentionCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectRetentionCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectRetentionCommand = class _PutObjectRetentionCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectRetentionCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectRetentionCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObjectRetention" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectRetentionCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectRetentionCommand)(output, context); - } - }; - exports2.PutObjectRetentionCommand = PutObjectRetentionCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectTaggingCommand.js -var require_PutObjectTaggingCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutObjectTaggingCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutObjectTaggingCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutObjectTaggingCommand = class _PutObjectTaggingCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutObjectTaggingCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutObjectTaggingCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutObjectTagging" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutObjectTaggingCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutObjectTaggingCommand)(output, context); - } - }; - exports2.PutObjectTaggingCommand = PutObjectTaggingCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutPublicAccessBlockCommand.js -var require_PutPublicAccessBlockCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/PutPublicAccessBlockCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PutPublicAccessBlockCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var Aws_restXml_1 = require_Aws_restXml(); - var PutPublicAccessBlockCommand = class _PutPublicAccessBlockCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _PutPublicAccessBlockCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: true - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "PutPublicAccessBlockCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: (_) => _, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "PutPublicAccessBlock" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_PutPublicAccessBlockCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_PutPublicAccessBlockCommand)(output, context); - } - }; - exports2.PutPublicAccessBlockCommand = PutPublicAccessBlockCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/RestoreObjectCommand.js -var require_RestoreObjectCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/RestoreObjectCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.RestoreObjectCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_1_1 = require_models_1(); - var Aws_restXml_1 = require_Aws_restXml(); - var RestoreObjectCommand = class _RestoreObjectCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _RestoreObjectCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: false - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "RestoreObjectCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_1_1.RestoreObjectRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "RestoreObject" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_RestoreObjectCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_RestoreObjectCommand)(output, context); - } - }; - exports2.RestoreObjectCommand = RestoreObjectCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/SelectObjectContentCommand.js -var require_SelectObjectContentCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/SelectObjectContentCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SelectObjectContentCommand = exports2.$Command = void 0; - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_1_1 = require_models_1(); - var Aws_restXml_1 = require_Aws_restXml(); - var SelectObjectContentCommand = class _SelectObjectContentCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _SelectObjectContentCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "SelectObjectContentCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_1_1.SelectObjectContentRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_1_1.SelectObjectContentOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "SelectObjectContent" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_SelectObjectContentCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_SelectObjectContentCommand)(output, context); - } - }; - exports2.SelectObjectContentCommand = SelectObjectContentCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/UploadPartCommand.js -var require_UploadPartCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/UploadPartCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UploadPartCommand = exports2.$Command = void 0; - var middleware_flexible_checksums_1 = require_dist_cjs66(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_1_1 = require_models_1(); - var Aws_restXml_1 = require_Aws_restXml(); - var UploadPartCommand = class _UploadPartCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UploadPartCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - this.middlewareStack.use((0, middleware_flexible_checksums_1.getFlexibleChecksumsPlugin)(configuration, { - input: this.input, - requestAlgorithmMember: "ChecksumAlgorithm", - requestChecksumRequired: false - })); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "UploadPartCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_1_1.UploadPartRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_1_1.UploadPartOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "UploadPart" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_UploadPartCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_UploadPartCommand)(output, context); - } - }; - exports2.UploadPartCommand = UploadPartCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/UploadPartCopyCommand.js -var require_UploadPartCopyCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/UploadPartCopyCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UploadPartCopyCommand = exports2.$Command = void 0; - var middleware_sdk_s3_1 = require_dist_cjs18(); - var middleware_ssec_1 = require_dist_cjs64(); - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_1_1 = require_models_1(); - var Aws_restXml_1 = require_Aws_restXml(); - var UploadPartCopyCommand = class _UploadPartCopyCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - Bucket: { type: "contextParams", name: "Bucket" }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _UploadPartCopyCommand.getEndpointParameterInstructions())); - this.middlewareStack.use((0, middleware_sdk_s3_1.getThrow200ExceptionsPlugin)(configuration)); - this.middlewareStack.use((0, middleware_ssec_1.getSsecPlugin)(configuration)); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "UploadPartCopyCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_1_1.UploadPartCopyRequestFilterSensitiveLog, - outputFilterSensitiveLog: models_1_1.UploadPartCopyOutputFilterSensitiveLog, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "UploadPartCopy" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_UploadPartCopyCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_UploadPartCopyCommand)(output, context); - } - }; - exports2.UploadPartCopyCommand = UploadPartCopyCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/WriteGetObjectResponseCommand.js -var require_WriteGetObjectResponseCommand = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/WriteGetObjectResponseCommand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.WriteGetObjectResponseCommand = exports2.$Command = void 0; - var middleware_endpoint_1 = require_dist_cjs38(); - var middleware_serde_1 = require_dist_cjs37(); - var smithy_client_1 = require_dist_cjs16(); - Object.defineProperty(exports2, "$Command", { enumerable: true, get: function() { - return smithy_client_1.Command; - } }); - var types_1 = require_dist_cjs(); - var models_1_1 = require_models_1(); - var Aws_restXml_1 = require_Aws_restXml(); - var WriteGetObjectResponseCommand = class _WriteGetObjectResponseCommand extends smithy_client_1.Command { - static getEndpointParameterInstructions() { - return { - UseObjectLambdaEndpoint: { type: "staticContextParams", value: true }, - ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" }, - UseArnRegion: { type: "clientContextParams", name: "useArnRegion" }, - DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" }, - Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" }, - UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" }, - UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, - Endpoint: { type: "builtInParams", name: "endpoint" }, - Region: { type: "builtInParams", name: "region" }, - UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } - }; - } - constructor(input) { - super(); - this.input = input; - } - resolveMiddleware(clientStack, configuration, options) { - this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize)); - this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, _WriteGetObjectResponseCommand.getEndpointParameterInstructions())); - const stack = clientStack.concat(this.middlewareStack); - const { logger } = configuration; - const clientName = "S3Client"; - const commandName = "WriteGetObjectResponseCommand"; - const handlerExecutionContext = { - logger, - clientName, - commandName, - inputFilterSensitiveLog: models_1_1.WriteGetObjectResponseRequestFilterSensitiveLog, - outputFilterSensitiveLog: (_) => _, - [types_1.SMITHY_CONTEXT_KEY]: { - service: "AmazonS3", - operation: "WriteGetObjectResponse" - } - }; - const { requestHandler } = configuration; - return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext); - } - serialize(input, context) { - return (0, Aws_restXml_1.se_WriteGetObjectResponseCommand)(input, context); - } - deserialize(output, context) { - return (0, Aws_restXml_1.de_WriteGetObjectResponseCommand)(output, context); - } - }; - exports2.WriteGetObjectResponseCommand = WriteGetObjectResponseCommand; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/S3.js -var require_S3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/S3.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.S3 = void 0; - var smithy_client_1 = require_dist_cjs16(); - var AbortMultipartUploadCommand_1 = require_AbortMultipartUploadCommand(); - var CompleteMultipartUploadCommand_1 = require_CompleteMultipartUploadCommand(); - var CopyObjectCommand_1 = require_CopyObjectCommand(); - var CreateBucketCommand_1 = require_CreateBucketCommand(); - var CreateMultipartUploadCommand_1 = require_CreateMultipartUploadCommand(); - var DeleteBucketAnalyticsConfigurationCommand_1 = require_DeleteBucketAnalyticsConfigurationCommand(); - var DeleteBucketCommand_1 = require_DeleteBucketCommand(); - var DeleteBucketCorsCommand_1 = require_DeleteBucketCorsCommand(); - var DeleteBucketEncryptionCommand_1 = require_DeleteBucketEncryptionCommand(); - var DeleteBucketIntelligentTieringConfigurationCommand_1 = require_DeleteBucketIntelligentTieringConfigurationCommand(); - var DeleteBucketInventoryConfigurationCommand_1 = require_DeleteBucketInventoryConfigurationCommand(); - var DeleteBucketLifecycleCommand_1 = require_DeleteBucketLifecycleCommand(); - var DeleteBucketMetricsConfigurationCommand_1 = require_DeleteBucketMetricsConfigurationCommand(); - var DeleteBucketOwnershipControlsCommand_1 = require_DeleteBucketOwnershipControlsCommand(); - var DeleteBucketPolicyCommand_1 = require_DeleteBucketPolicyCommand(); - var DeleteBucketReplicationCommand_1 = require_DeleteBucketReplicationCommand(); - var DeleteBucketTaggingCommand_1 = require_DeleteBucketTaggingCommand(); - var DeleteBucketWebsiteCommand_1 = require_DeleteBucketWebsiteCommand(); - var DeleteObjectCommand_1 = require_DeleteObjectCommand(); - var DeleteObjectsCommand_1 = require_DeleteObjectsCommand(); - var DeleteObjectTaggingCommand_1 = require_DeleteObjectTaggingCommand(); - var DeletePublicAccessBlockCommand_1 = require_DeletePublicAccessBlockCommand(); - var GetBucketAccelerateConfigurationCommand_1 = require_GetBucketAccelerateConfigurationCommand(); - var GetBucketAclCommand_1 = require_GetBucketAclCommand(); - var GetBucketAnalyticsConfigurationCommand_1 = require_GetBucketAnalyticsConfigurationCommand(); - var GetBucketCorsCommand_1 = require_GetBucketCorsCommand(); - var GetBucketEncryptionCommand_1 = require_GetBucketEncryptionCommand(); - var GetBucketIntelligentTieringConfigurationCommand_1 = require_GetBucketIntelligentTieringConfigurationCommand(); - var GetBucketInventoryConfigurationCommand_1 = require_GetBucketInventoryConfigurationCommand(); - var GetBucketLifecycleConfigurationCommand_1 = require_GetBucketLifecycleConfigurationCommand(); - var GetBucketLocationCommand_1 = require_GetBucketLocationCommand(); - var GetBucketLoggingCommand_1 = require_GetBucketLoggingCommand(); - var GetBucketMetricsConfigurationCommand_1 = require_GetBucketMetricsConfigurationCommand(); - var GetBucketNotificationConfigurationCommand_1 = require_GetBucketNotificationConfigurationCommand(); - var GetBucketOwnershipControlsCommand_1 = require_GetBucketOwnershipControlsCommand(); - var GetBucketPolicyCommand_1 = require_GetBucketPolicyCommand(); - var GetBucketPolicyStatusCommand_1 = require_GetBucketPolicyStatusCommand(); - var GetBucketReplicationCommand_1 = require_GetBucketReplicationCommand(); - var GetBucketRequestPaymentCommand_1 = require_GetBucketRequestPaymentCommand(); - var GetBucketTaggingCommand_1 = require_GetBucketTaggingCommand(); - var GetBucketVersioningCommand_1 = require_GetBucketVersioningCommand(); - var GetBucketWebsiteCommand_1 = require_GetBucketWebsiteCommand(); - var GetObjectAclCommand_1 = require_GetObjectAclCommand(); - var GetObjectAttributesCommand_1 = require_GetObjectAttributesCommand(); - var GetObjectCommand_1 = require_GetObjectCommand(); - var GetObjectLegalHoldCommand_1 = require_GetObjectLegalHoldCommand(); - var GetObjectLockConfigurationCommand_1 = require_GetObjectLockConfigurationCommand(); - var GetObjectRetentionCommand_1 = require_GetObjectRetentionCommand(); - var GetObjectTaggingCommand_1 = require_GetObjectTaggingCommand(); - var GetObjectTorrentCommand_1 = require_GetObjectTorrentCommand(); - var GetPublicAccessBlockCommand_1 = require_GetPublicAccessBlockCommand(); - var HeadBucketCommand_1 = require_HeadBucketCommand(); - var HeadObjectCommand_1 = require_HeadObjectCommand(); - var ListBucketAnalyticsConfigurationsCommand_1 = require_ListBucketAnalyticsConfigurationsCommand(); - var ListBucketIntelligentTieringConfigurationsCommand_1 = require_ListBucketIntelligentTieringConfigurationsCommand(); - var ListBucketInventoryConfigurationsCommand_1 = require_ListBucketInventoryConfigurationsCommand(); - var ListBucketMetricsConfigurationsCommand_1 = require_ListBucketMetricsConfigurationsCommand(); - var ListBucketsCommand_1 = require_ListBucketsCommand(); - var ListMultipartUploadsCommand_1 = require_ListMultipartUploadsCommand(); - var ListObjectsCommand_1 = require_ListObjectsCommand(); - var ListObjectsV2Command_1 = require_ListObjectsV2Command(); - var ListObjectVersionsCommand_1 = require_ListObjectVersionsCommand(); - var ListPartsCommand_1 = require_ListPartsCommand(); - var PutBucketAccelerateConfigurationCommand_1 = require_PutBucketAccelerateConfigurationCommand(); - var PutBucketAclCommand_1 = require_PutBucketAclCommand(); - var PutBucketAnalyticsConfigurationCommand_1 = require_PutBucketAnalyticsConfigurationCommand(); - var PutBucketCorsCommand_1 = require_PutBucketCorsCommand(); - var PutBucketEncryptionCommand_1 = require_PutBucketEncryptionCommand(); - var PutBucketIntelligentTieringConfigurationCommand_1 = require_PutBucketIntelligentTieringConfigurationCommand(); - var PutBucketInventoryConfigurationCommand_1 = require_PutBucketInventoryConfigurationCommand(); - var PutBucketLifecycleConfigurationCommand_1 = require_PutBucketLifecycleConfigurationCommand(); - var PutBucketLoggingCommand_1 = require_PutBucketLoggingCommand(); - var PutBucketMetricsConfigurationCommand_1 = require_PutBucketMetricsConfigurationCommand(); - var PutBucketNotificationConfigurationCommand_1 = require_PutBucketNotificationConfigurationCommand(); - var PutBucketOwnershipControlsCommand_1 = require_PutBucketOwnershipControlsCommand(); - var PutBucketPolicyCommand_1 = require_PutBucketPolicyCommand(); - var PutBucketReplicationCommand_1 = require_PutBucketReplicationCommand(); - var PutBucketRequestPaymentCommand_1 = require_PutBucketRequestPaymentCommand(); - var PutBucketTaggingCommand_1 = require_PutBucketTaggingCommand(); - var PutBucketVersioningCommand_1 = require_PutBucketVersioningCommand(); - var PutBucketWebsiteCommand_1 = require_PutBucketWebsiteCommand(); - var PutObjectAclCommand_1 = require_PutObjectAclCommand(); - var PutObjectCommand_1 = require_PutObjectCommand(); - var PutObjectLegalHoldCommand_1 = require_PutObjectLegalHoldCommand(); - var PutObjectLockConfigurationCommand_1 = require_PutObjectLockConfigurationCommand(); - var PutObjectRetentionCommand_1 = require_PutObjectRetentionCommand(); - var PutObjectTaggingCommand_1 = require_PutObjectTaggingCommand(); - var PutPublicAccessBlockCommand_1 = require_PutPublicAccessBlockCommand(); - var RestoreObjectCommand_1 = require_RestoreObjectCommand(); - var SelectObjectContentCommand_1 = require_SelectObjectContentCommand(); - var UploadPartCommand_1 = require_UploadPartCommand(); - var UploadPartCopyCommand_1 = require_UploadPartCopyCommand(); - var WriteGetObjectResponseCommand_1 = require_WriteGetObjectResponseCommand(); - var S3Client_1 = require_S3Client(); - var commands = { - AbortMultipartUploadCommand: AbortMultipartUploadCommand_1.AbortMultipartUploadCommand, - CompleteMultipartUploadCommand: CompleteMultipartUploadCommand_1.CompleteMultipartUploadCommand, - CopyObjectCommand: CopyObjectCommand_1.CopyObjectCommand, - CreateBucketCommand: CreateBucketCommand_1.CreateBucketCommand, - CreateMultipartUploadCommand: CreateMultipartUploadCommand_1.CreateMultipartUploadCommand, - DeleteBucketCommand: DeleteBucketCommand_1.DeleteBucketCommand, - DeleteBucketAnalyticsConfigurationCommand: DeleteBucketAnalyticsConfigurationCommand_1.DeleteBucketAnalyticsConfigurationCommand, - DeleteBucketCorsCommand: DeleteBucketCorsCommand_1.DeleteBucketCorsCommand, - DeleteBucketEncryptionCommand: DeleteBucketEncryptionCommand_1.DeleteBucketEncryptionCommand, - DeleteBucketIntelligentTieringConfigurationCommand: DeleteBucketIntelligentTieringConfigurationCommand_1.DeleteBucketIntelligentTieringConfigurationCommand, - DeleteBucketInventoryConfigurationCommand: DeleteBucketInventoryConfigurationCommand_1.DeleteBucketInventoryConfigurationCommand, - DeleteBucketLifecycleCommand: DeleteBucketLifecycleCommand_1.DeleteBucketLifecycleCommand, - DeleteBucketMetricsConfigurationCommand: DeleteBucketMetricsConfigurationCommand_1.DeleteBucketMetricsConfigurationCommand, - DeleteBucketOwnershipControlsCommand: DeleteBucketOwnershipControlsCommand_1.DeleteBucketOwnershipControlsCommand, - DeleteBucketPolicyCommand: DeleteBucketPolicyCommand_1.DeleteBucketPolicyCommand, - DeleteBucketReplicationCommand: DeleteBucketReplicationCommand_1.DeleteBucketReplicationCommand, - DeleteBucketTaggingCommand: DeleteBucketTaggingCommand_1.DeleteBucketTaggingCommand, - DeleteBucketWebsiteCommand: DeleteBucketWebsiteCommand_1.DeleteBucketWebsiteCommand, - DeleteObjectCommand: DeleteObjectCommand_1.DeleteObjectCommand, - DeleteObjectsCommand: DeleteObjectsCommand_1.DeleteObjectsCommand, - DeleteObjectTaggingCommand: DeleteObjectTaggingCommand_1.DeleteObjectTaggingCommand, - DeletePublicAccessBlockCommand: DeletePublicAccessBlockCommand_1.DeletePublicAccessBlockCommand, - GetBucketAccelerateConfigurationCommand: GetBucketAccelerateConfigurationCommand_1.GetBucketAccelerateConfigurationCommand, - GetBucketAclCommand: GetBucketAclCommand_1.GetBucketAclCommand, - GetBucketAnalyticsConfigurationCommand: GetBucketAnalyticsConfigurationCommand_1.GetBucketAnalyticsConfigurationCommand, - GetBucketCorsCommand: GetBucketCorsCommand_1.GetBucketCorsCommand, - GetBucketEncryptionCommand: GetBucketEncryptionCommand_1.GetBucketEncryptionCommand, - GetBucketIntelligentTieringConfigurationCommand: GetBucketIntelligentTieringConfigurationCommand_1.GetBucketIntelligentTieringConfigurationCommand, - GetBucketInventoryConfigurationCommand: GetBucketInventoryConfigurationCommand_1.GetBucketInventoryConfigurationCommand, - GetBucketLifecycleConfigurationCommand: GetBucketLifecycleConfigurationCommand_1.GetBucketLifecycleConfigurationCommand, - GetBucketLocationCommand: GetBucketLocationCommand_1.GetBucketLocationCommand, - GetBucketLoggingCommand: GetBucketLoggingCommand_1.GetBucketLoggingCommand, - GetBucketMetricsConfigurationCommand: GetBucketMetricsConfigurationCommand_1.GetBucketMetricsConfigurationCommand, - GetBucketNotificationConfigurationCommand: GetBucketNotificationConfigurationCommand_1.GetBucketNotificationConfigurationCommand, - GetBucketOwnershipControlsCommand: GetBucketOwnershipControlsCommand_1.GetBucketOwnershipControlsCommand, - GetBucketPolicyCommand: GetBucketPolicyCommand_1.GetBucketPolicyCommand, - GetBucketPolicyStatusCommand: GetBucketPolicyStatusCommand_1.GetBucketPolicyStatusCommand, - GetBucketReplicationCommand: GetBucketReplicationCommand_1.GetBucketReplicationCommand, - GetBucketRequestPaymentCommand: GetBucketRequestPaymentCommand_1.GetBucketRequestPaymentCommand, - GetBucketTaggingCommand: GetBucketTaggingCommand_1.GetBucketTaggingCommand, - GetBucketVersioningCommand: GetBucketVersioningCommand_1.GetBucketVersioningCommand, - GetBucketWebsiteCommand: GetBucketWebsiteCommand_1.GetBucketWebsiteCommand, - GetObjectCommand: GetObjectCommand_1.GetObjectCommand, - GetObjectAclCommand: GetObjectAclCommand_1.GetObjectAclCommand, - GetObjectAttributesCommand: GetObjectAttributesCommand_1.GetObjectAttributesCommand, - GetObjectLegalHoldCommand: GetObjectLegalHoldCommand_1.GetObjectLegalHoldCommand, - GetObjectLockConfigurationCommand: GetObjectLockConfigurationCommand_1.GetObjectLockConfigurationCommand, - GetObjectRetentionCommand: GetObjectRetentionCommand_1.GetObjectRetentionCommand, - GetObjectTaggingCommand: GetObjectTaggingCommand_1.GetObjectTaggingCommand, - GetObjectTorrentCommand: GetObjectTorrentCommand_1.GetObjectTorrentCommand, - GetPublicAccessBlockCommand: GetPublicAccessBlockCommand_1.GetPublicAccessBlockCommand, - HeadBucketCommand: HeadBucketCommand_1.HeadBucketCommand, - HeadObjectCommand: HeadObjectCommand_1.HeadObjectCommand, - ListBucketAnalyticsConfigurationsCommand: ListBucketAnalyticsConfigurationsCommand_1.ListBucketAnalyticsConfigurationsCommand, - ListBucketIntelligentTieringConfigurationsCommand: ListBucketIntelligentTieringConfigurationsCommand_1.ListBucketIntelligentTieringConfigurationsCommand, - ListBucketInventoryConfigurationsCommand: ListBucketInventoryConfigurationsCommand_1.ListBucketInventoryConfigurationsCommand, - ListBucketMetricsConfigurationsCommand: ListBucketMetricsConfigurationsCommand_1.ListBucketMetricsConfigurationsCommand, - ListBucketsCommand: ListBucketsCommand_1.ListBucketsCommand, - ListMultipartUploadsCommand: ListMultipartUploadsCommand_1.ListMultipartUploadsCommand, - ListObjectsCommand: ListObjectsCommand_1.ListObjectsCommand, - ListObjectsV2Command: ListObjectsV2Command_1.ListObjectsV2Command, - ListObjectVersionsCommand: ListObjectVersionsCommand_1.ListObjectVersionsCommand, - ListPartsCommand: ListPartsCommand_1.ListPartsCommand, - PutBucketAccelerateConfigurationCommand: PutBucketAccelerateConfigurationCommand_1.PutBucketAccelerateConfigurationCommand, - PutBucketAclCommand: PutBucketAclCommand_1.PutBucketAclCommand, - PutBucketAnalyticsConfigurationCommand: PutBucketAnalyticsConfigurationCommand_1.PutBucketAnalyticsConfigurationCommand, - PutBucketCorsCommand: PutBucketCorsCommand_1.PutBucketCorsCommand, - PutBucketEncryptionCommand: PutBucketEncryptionCommand_1.PutBucketEncryptionCommand, - PutBucketIntelligentTieringConfigurationCommand: PutBucketIntelligentTieringConfigurationCommand_1.PutBucketIntelligentTieringConfigurationCommand, - PutBucketInventoryConfigurationCommand: PutBucketInventoryConfigurationCommand_1.PutBucketInventoryConfigurationCommand, - PutBucketLifecycleConfigurationCommand: PutBucketLifecycleConfigurationCommand_1.PutBucketLifecycleConfigurationCommand, - PutBucketLoggingCommand: PutBucketLoggingCommand_1.PutBucketLoggingCommand, - PutBucketMetricsConfigurationCommand: PutBucketMetricsConfigurationCommand_1.PutBucketMetricsConfigurationCommand, - PutBucketNotificationConfigurationCommand: PutBucketNotificationConfigurationCommand_1.PutBucketNotificationConfigurationCommand, - PutBucketOwnershipControlsCommand: PutBucketOwnershipControlsCommand_1.PutBucketOwnershipControlsCommand, - PutBucketPolicyCommand: PutBucketPolicyCommand_1.PutBucketPolicyCommand, - PutBucketReplicationCommand: PutBucketReplicationCommand_1.PutBucketReplicationCommand, - PutBucketRequestPaymentCommand: PutBucketRequestPaymentCommand_1.PutBucketRequestPaymentCommand, - PutBucketTaggingCommand: PutBucketTaggingCommand_1.PutBucketTaggingCommand, - PutBucketVersioningCommand: PutBucketVersioningCommand_1.PutBucketVersioningCommand, - PutBucketWebsiteCommand: PutBucketWebsiteCommand_1.PutBucketWebsiteCommand, - PutObjectCommand: PutObjectCommand_1.PutObjectCommand, - PutObjectAclCommand: PutObjectAclCommand_1.PutObjectAclCommand, - PutObjectLegalHoldCommand: PutObjectLegalHoldCommand_1.PutObjectLegalHoldCommand, - PutObjectLockConfigurationCommand: PutObjectLockConfigurationCommand_1.PutObjectLockConfigurationCommand, - PutObjectRetentionCommand: PutObjectRetentionCommand_1.PutObjectRetentionCommand, - PutObjectTaggingCommand: PutObjectTaggingCommand_1.PutObjectTaggingCommand, - PutPublicAccessBlockCommand: PutPublicAccessBlockCommand_1.PutPublicAccessBlockCommand, - RestoreObjectCommand: RestoreObjectCommand_1.RestoreObjectCommand, - SelectObjectContentCommand: SelectObjectContentCommand_1.SelectObjectContentCommand, - UploadPartCommand: UploadPartCommand_1.UploadPartCommand, - UploadPartCopyCommand: UploadPartCopyCommand_1.UploadPartCopyCommand, - WriteGetObjectResponseCommand: WriteGetObjectResponseCommand_1.WriteGetObjectResponseCommand - }; - var S3 = class extends S3Client_1.S3Client { - }; - exports2.S3 = S3; - (0, smithy_client_1.createAggregatedClient)(commands, S3); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/commands/index.js -var require_commands3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/commands/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_AbortMultipartUploadCommand(), exports2); - tslib_1.__exportStar(require_CompleteMultipartUploadCommand(), exports2); - tslib_1.__exportStar(require_CopyObjectCommand(), exports2); - tslib_1.__exportStar(require_CreateBucketCommand(), exports2); - tslib_1.__exportStar(require_CreateMultipartUploadCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketAnalyticsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketCorsCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketEncryptionCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketIntelligentTieringConfigurationCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketInventoryConfigurationCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketLifecycleCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketMetricsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketOwnershipControlsCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketPolicyCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketReplicationCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketTaggingCommand(), exports2); - tslib_1.__exportStar(require_DeleteBucketWebsiteCommand(), exports2); - tslib_1.__exportStar(require_DeleteObjectCommand(), exports2); - tslib_1.__exportStar(require_DeleteObjectTaggingCommand(), exports2); - tslib_1.__exportStar(require_DeleteObjectsCommand(), exports2); - tslib_1.__exportStar(require_DeletePublicAccessBlockCommand(), exports2); - tslib_1.__exportStar(require_GetBucketAccelerateConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketAclCommand(), exports2); - tslib_1.__exportStar(require_GetBucketAnalyticsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketCorsCommand(), exports2); - tslib_1.__exportStar(require_GetBucketEncryptionCommand(), exports2); - tslib_1.__exportStar(require_GetBucketIntelligentTieringConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketInventoryConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketLifecycleConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketLocationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketLoggingCommand(), exports2); - tslib_1.__exportStar(require_GetBucketMetricsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketNotificationConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketOwnershipControlsCommand(), exports2); - tslib_1.__exportStar(require_GetBucketPolicyCommand(), exports2); - tslib_1.__exportStar(require_GetBucketPolicyStatusCommand(), exports2); - tslib_1.__exportStar(require_GetBucketReplicationCommand(), exports2); - tslib_1.__exportStar(require_GetBucketRequestPaymentCommand(), exports2); - tslib_1.__exportStar(require_GetBucketTaggingCommand(), exports2); - tslib_1.__exportStar(require_GetBucketVersioningCommand(), exports2); - tslib_1.__exportStar(require_GetBucketWebsiteCommand(), exports2); - tslib_1.__exportStar(require_GetObjectAclCommand(), exports2); - tslib_1.__exportStar(require_GetObjectAttributesCommand(), exports2); - tslib_1.__exportStar(require_GetObjectCommand(), exports2); - tslib_1.__exportStar(require_GetObjectLegalHoldCommand(), exports2); - tslib_1.__exportStar(require_GetObjectLockConfigurationCommand(), exports2); - tslib_1.__exportStar(require_GetObjectRetentionCommand(), exports2); - tslib_1.__exportStar(require_GetObjectTaggingCommand(), exports2); - tslib_1.__exportStar(require_GetObjectTorrentCommand(), exports2); - tslib_1.__exportStar(require_GetPublicAccessBlockCommand(), exports2); - tslib_1.__exportStar(require_HeadBucketCommand(), exports2); - tslib_1.__exportStar(require_HeadObjectCommand(), exports2); - tslib_1.__exportStar(require_ListBucketAnalyticsConfigurationsCommand(), exports2); - tslib_1.__exportStar(require_ListBucketIntelligentTieringConfigurationsCommand(), exports2); - tslib_1.__exportStar(require_ListBucketInventoryConfigurationsCommand(), exports2); - tslib_1.__exportStar(require_ListBucketMetricsConfigurationsCommand(), exports2); - tslib_1.__exportStar(require_ListBucketsCommand(), exports2); - tslib_1.__exportStar(require_ListMultipartUploadsCommand(), exports2); - tslib_1.__exportStar(require_ListObjectVersionsCommand(), exports2); - tslib_1.__exportStar(require_ListObjectsCommand(), exports2); - tslib_1.__exportStar(require_ListObjectsV2Command(), exports2); - tslib_1.__exportStar(require_ListPartsCommand(), exports2); - tslib_1.__exportStar(require_PutBucketAccelerateConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketAclCommand(), exports2); - tslib_1.__exportStar(require_PutBucketAnalyticsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketCorsCommand(), exports2); - tslib_1.__exportStar(require_PutBucketEncryptionCommand(), exports2); - tslib_1.__exportStar(require_PutBucketIntelligentTieringConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketInventoryConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketLifecycleConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketLoggingCommand(), exports2); - tslib_1.__exportStar(require_PutBucketMetricsConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketNotificationConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketOwnershipControlsCommand(), exports2); - tslib_1.__exportStar(require_PutBucketPolicyCommand(), exports2); - tslib_1.__exportStar(require_PutBucketReplicationCommand(), exports2); - tslib_1.__exportStar(require_PutBucketRequestPaymentCommand(), exports2); - tslib_1.__exportStar(require_PutBucketTaggingCommand(), exports2); - tslib_1.__exportStar(require_PutBucketVersioningCommand(), exports2); - tslib_1.__exportStar(require_PutBucketWebsiteCommand(), exports2); - tslib_1.__exportStar(require_PutObjectAclCommand(), exports2); - tslib_1.__exportStar(require_PutObjectCommand(), exports2); - tslib_1.__exportStar(require_PutObjectLegalHoldCommand(), exports2); - tslib_1.__exportStar(require_PutObjectLockConfigurationCommand(), exports2); - tslib_1.__exportStar(require_PutObjectRetentionCommand(), exports2); - tslib_1.__exportStar(require_PutObjectTaggingCommand(), exports2); - tslib_1.__exportStar(require_PutPublicAccessBlockCommand(), exports2); - tslib_1.__exportStar(require_RestoreObjectCommand(), exports2); - tslib_1.__exportStar(require_SelectObjectContentCommand(), exports2); - tslib_1.__exportStar(require_UploadPartCommand(), exports2); - tslib_1.__exportStar(require_UploadPartCopyCommand(), exports2); - tslib_1.__exportStar(require_WriteGetObjectResponseCommand(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/pagination/Interfaces.js -var require_Interfaces2 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/pagination/Interfaces.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/pagination/ListObjectsV2Paginator.js -var require_ListObjectsV2Paginator = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/pagination/ListObjectsV2Paginator.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.paginateListObjectsV2 = void 0; - var ListObjectsV2Command_1 = require_ListObjectsV2Command(); - var S3Client_1 = require_S3Client(); - var makePagedClientRequest = async (client, input, ...args) => { - return await client.send(new ListObjectsV2Command_1.ListObjectsV2Command(input), ...args); - }; - async function* paginateListObjectsV2(config, input, ...additionalArguments) { - let token = config.startingToken || void 0; - let hasNext = true; - let page; - while (hasNext) { - input.ContinuationToken = token; - input["MaxKeys"] = config.pageSize; - if (config.client instanceof S3Client_1.S3Client) { - page = await makePagedClientRequest(config.client, input, ...additionalArguments); - } else { - throw new Error("Invalid client, expected S3 | S3Client"); - } - yield page; - const prevToken = token; - token = page.NextContinuationToken; - hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); - } - return void 0; - } - exports2.paginateListObjectsV2 = paginateListObjectsV2; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/pagination/ListPartsPaginator.js -var require_ListPartsPaginator = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/pagination/ListPartsPaginator.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.paginateListParts = void 0; - var ListPartsCommand_1 = require_ListPartsCommand(); - var S3Client_1 = require_S3Client(); - var makePagedClientRequest = async (client, input, ...args) => { - return await client.send(new ListPartsCommand_1.ListPartsCommand(input), ...args); - }; - async function* paginateListParts(config, input, ...additionalArguments) { - let token = config.startingToken || void 0; - let hasNext = true; - let page; - while (hasNext) { - input.PartNumberMarker = token; - input["MaxParts"] = config.pageSize; - if (config.client instanceof S3Client_1.S3Client) { - page = await makePagedClientRequest(config.client, input, ...additionalArguments); - } else { - throw new Error("Invalid client, expected S3 | S3Client"); - } - yield page; - const prevToken = token; - token = page.NextPartNumberMarker; - hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); - } - return void 0; - } - exports2.paginateListParts = paginateListParts; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/pagination/index.js -var require_pagination3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/pagination/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_Interfaces2(), exports2); - tslib_1.__exportStar(require_ListObjectsV2Paginator(), exports2); - tslib_1.__exportStar(require_ListPartsPaginator(), exports2); - } -}); - -// node_modules/@smithy/util-waiter/dist-cjs/index.js -var require_dist_cjs67 = __commonJS({ - "node_modules/@smithy/util-waiter/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); - var __export2 = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export2(src_exports, { - WaiterState: () => WaiterState, - checkExceptions: () => checkExceptions, - createWaiter: () => createWaiter, - waiterServiceDefaults: () => waiterServiceDefaults - }); - module2.exports = __toCommonJS2(src_exports); - var sleep = /* @__PURE__ */ __name((seconds) => { - return new Promise((resolve) => setTimeout(resolve, seconds * 1e3)); - }, "sleep"); - var waiterServiceDefaults = { - minDelay: 2, - maxDelay: 120 - }; - var WaiterState = /* @__PURE__ */ ((WaiterState2) => { - WaiterState2["ABORTED"] = "ABORTED"; - WaiterState2["FAILURE"] = "FAILURE"; - WaiterState2["SUCCESS"] = "SUCCESS"; - WaiterState2["RETRY"] = "RETRY"; - WaiterState2["TIMEOUT"] = "TIMEOUT"; - return WaiterState2; - })(WaiterState || {}); - var checkExceptions = /* @__PURE__ */ __name((result) => { - if (result.state === "ABORTED") { - const abortError = new Error( - `${JSON.stringify({ - ...result, - reason: "Request was aborted" - })}` - ); - abortError.name = "AbortError"; - throw abortError; - } else if (result.state === "TIMEOUT") { - const timeoutError = new Error( - `${JSON.stringify({ - ...result, - reason: "Waiter has timed out" - })}` - ); - timeoutError.name = "TimeoutError"; - throw timeoutError; - } else if (result.state !== "SUCCESS") { - throw new Error(`${JSON.stringify({ result })}`); - } - return result; - }, "checkExceptions"); - var exponentialBackoffWithJitter = /* @__PURE__ */ __name((minDelay, maxDelay, attemptCeiling, attempt) => { - if (attempt > attemptCeiling) - return maxDelay; - const delay = minDelay * 2 ** (attempt - 1); - return randomInRange(minDelay, delay); - }, "exponentialBackoffWithJitter"); - var randomInRange = /* @__PURE__ */ __name((min, max) => min + Math.random() * (max - min), "randomInRange"); - var runPolling = /* @__PURE__ */ __name(async ({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }, input, acceptorChecks) => { - var _a; - const { state, reason } = await acceptorChecks(client, input); - if (state !== "RETRY") { - return { state, reason }; - } - let currentAttempt = 1; - const waitUntil = Date.now() + maxWaitTime * 1e3; - const attemptCeiling = Math.log(maxDelay / minDelay) / Math.log(2) + 1; - while (true) { - if (((_a = abortController == null ? void 0 : abortController.signal) == null ? void 0 : _a.aborted) || (abortSignal == null ? void 0 : abortSignal.aborted)) { - return { - state: "ABORTED" - /* ABORTED */ - }; - } - const delay = exponentialBackoffWithJitter(minDelay, maxDelay, attemptCeiling, currentAttempt); - if (Date.now() + delay * 1e3 > waitUntil) { - return { - state: "TIMEOUT" - /* TIMEOUT */ - }; - } - await sleep(delay); - const { state: state2, reason: reason2 } = await acceptorChecks(client, input); - if (state2 !== "RETRY") { - return { state: state2, reason: reason2 }; - } - currentAttempt += 1; - } - }, "runPolling"); - var validateWaiterOptions = /* @__PURE__ */ __name((options) => { - if (options.maxWaitTime < 1) { - throw new Error(`WaiterConfiguration.maxWaitTime must be greater than 0`); - } else if (options.minDelay < 1) { - throw new Error(`WaiterConfiguration.minDelay must be greater than 0`); - } else if (options.maxDelay < 1) { - throw new Error(`WaiterConfiguration.maxDelay must be greater than 0`); - } else if (options.maxWaitTime <= options.minDelay) { - throw new Error( - `WaiterConfiguration.maxWaitTime [${options.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter` - ); - } else if (options.maxDelay < options.minDelay) { - throw new Error( - `WaiterConfiguration.maxDelay [${options.maxDelay}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter` - ); - } - }, "validateWaiterOptions"); - var abortTimeout = /* @__PURE__ */ __name(async (abortSignal) => { - return new Promise((resolve) => { - abortSignal.onabort = () => resolve({ - state: "ABORTED" - /* ABORTED */ - }); - }); - }, "abortTimeout"); - var createWaiter = /* @__PURE__ */ __name(async (options, input, acceptorChecks) => { - const params = { - ...waiterServiceDefaults, - ...options - }; - validateWaiterOptions(params); - const exitConditions = [runPolling(params, input, acceptorChecks)]; - if (options.abortController) { - exitConditions.push(abortTimeout(options.abortController.signal)); - } - if (options.abortSignal) { - exitConditions.push(abortTimeout(options.abortSignal)); - } - return Promise.race(exitConditions); - }, "createWaiter"); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForBucketExists.js -var require_waitForBucketExists = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForBucketExists.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitUntilBucketExists = exports2.waitForBucketExists = void 0; - var util_waiter_1 = require_dist_cjs67(); - var HeadBucketCommand_1 = require_HeadBucketCommand(); - var checkState = async (client, input) => { - let reason; - try { - const result = await client.send(new HeadBucketCommand_1.HeadBucketCommand(input)); - reason = result; - return { state: util_waiter_1.WaiterState.SUCCESS, reason }; - } catch (exception) { - reason = exception; - if (exception.name && exception.name == "NotFound") { - return { state: util_waiter_1.WaiterState.RETRY, reason }; - } - } - return { state: util_waiter_1.WaiterState.RETRY, reason }; - }; - var waitForBucketExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - }; - exports2.waitForBucketExists = waitForBucketExists; - var waitUntilBucketExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - return (0, util_waiter_1.checkExceptions)(result); - }; - exports2.waitUntilBucketExists = waitUntilBucketExists; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForBucketNotExists.js -var require_waitForBucketNotExists = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForBucketNotExists.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitUntilBucketNotExists = exports2.waitForBucketNotExists = void 0; - var util_waiter_1 = require_dist_cjs67(); - var HeadBucketCommand_1 = require_HeadBucketCommand(); - var checkState = async (client, input) => { - let reason; - try { - const result = await client.send(new HeadBucketCommand_1.HeadBucketCommand(input)); - reason = result; - } catch (exception) { - reason = exception; - if (exception.name && exception.name == "NotFound") { - return { state: util_waiter_1.WaiterState.SUCCESS, reason }; - } - } - return { state: util_waiter_1.WaiterState.RETRY, reason }; - }; - var waitForBucketNotExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - }; - exports2.waitForBucketNotExists = waitForBucketNotExists; - var waitUntilBucketNotExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - return (0, util_waiter_1.checkExceptions)(result); - }; - exports2.waitUntilBucketNotExists = waitUntilBucketNotExists; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForObjectExists.js -var require_waitForObjectExists = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForObjectExists.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitUntilObjectExists = exports2.waitForObjectExists = void 0; - var util_waiter_1 = require_dist_cjs67(); - var HeadObjectCommand_1 = require_HeadObjectCommand(); - var checkState = async (client, input) => { - let reason; - try { - const result = await client.send(new HeadObjectCommand_1.HeadObjectCommand(input)); - reason = result; - return { state: util_waiter_1.WaiterState.SUCCESS, reason }; - } catch (exception) { - reason = exception; - if (exception.name && exception.name == "NotFound") { - return { state: util_waiter_1.WaiterState.RETRY, reason }; - } - } - return { state: util_waiter_1.WaiterState.RETRY, reason }; - }; - var waitForObjectExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - }; - exports2.waitForObjectExists = waitForObjectExists; - var waitUntilObjectExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - return (0, util_waiter_1.checkExceptions)(result); - }; - exports2.waitUntilObjectExists = waitUntilObjectExists; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForObjectNotExists.js -var require_waitForObjectNotExists = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/waiters/waitForObjectNotExists.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitUntilObjectNotExists = exports2.waitForObjectNotExists = void 0; - var util_waiter_1 = require_dist_cjs67(); - var HeadObjectCommand_1 = require_HeadObjectCommand(); - var checkState = async (client, input) => { - let reason; - try { - const result = await client.send(new HeadObjectCommand_1.HeadObjectCommand(input)); - reason = result; - } catch (exception) { - reason = exception; - if (exception.name && exception.name == "NotFound") { - return { state: util_waiter_1.WaiterState.SUCCESS, reason }; - } - } - return { state: util_waiter_1.WaiterState.RETRY, reason }; - }; - var waitForObjectNotExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - return (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - }; - exports2.waitForObjectNotExists = waitForObjectNotExists; - var waitUntilObjectNotExists = async (params, input) => { - const serviceDefaults = { minDelay: 5, maxDelay: 120 }; - const result = await (0, util_waiter_1.createWaiter)({ ...serviceDefaults, ...params }, input, checkState); - return (0, util_waiter_1.checkExceptions)(result); - }; - exports2.waitUntilObjectNotExists = waitUntilObjectNotExists; - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/waiters/index.js -var require_waiters = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/waiters/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_waitForBucketExists(), exports2); - tslib_1.__exportStar(require_waitForBucketNotExists(), exports2); - tslib_1.__exportStar(require_waitForObjectExists(), exports2); - tslib_1.__exportStar(require_waitForObjectNotExists(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/models/index.js -var require_models3 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/models/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_models_03(), exports2); - tslib_1.__exportStar(require_models_1(), exports2); - } -}); - -// node_modules/@aws-sdk/client-s3/dist-cjs/index.js -var require_dist_cjs68 = __commonJS({ - "node_modules/@aws-sdk/client-s3/dist-cjs/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.S3ServiceException = void 0; - var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); - tslib_1.__exportStar(require_S3Client(), exports2); - tslib_1.__exportStar(require_S3(), exports2); - tslib_1.__exportStar(require_commands3(), exports2); - tslib_1.__exportStar(require_pagination3(), exports2); - tslib_1.__exportStar(require_waiters(), exports2); - tslib_1.__exportStar(require_models3(), exports2); - var S3ServiceException_1 = require_S3ServiceException(); - Object.defineProperty(exports2, "S3ServiceException", { enumerable: true, get: function() { - return S3ServiceException_1.S3ServiceException; - } }); - } -}); - -// packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ-handlers/dependencies-sdk-v3.ts -var dependencies_sdk_v3_exports = {}; -__export(dependencies_sdk_v3_exports, { - handler: () => handler -}); -module.exports = __toCommonJS(dependencies_sdk_v3_exports); -var import_client_s3 = __toESM(require_dist_cjs68()); -var s3 = new import_client_s3.S3Client({}); -async function handler() { - console.log(s3); -} -// Annotate the CommonJS export names for ESM import in node: -0 && (module.exports = { - handler -}); -/*! Bundled license information: - -tslib/tslib.es6.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** *) - -tslib/tslib.es6.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** *) -*/ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.assets.json index a318a8191f918..91714d934c307 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.assets.json @@ -1,20 +1,20 @@ { "version": "36.0.0", "files": { - "f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928": { + "6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66": { "source": { - "path": "asset.f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928", + "path": "asset.6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928.zip", + "objectKey": "6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "17258cf37fa643ec69624a1bf186de44ef38375388ccb6973e51e8eb15ac1dd7": { + "5a4d18be04ae91567829410b04f23d23b5093b65dd86c33dcd839962b0ada565": { "source": { "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "17258cf37fa643ec69624a1bf186de44ef38375388ccb6973e51e8eb15ac1dd7.json", + "objectKey": "5a4d18be04ae91567829410b04f23d23b5093b65dd86c33dcd839962b0ada565.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.template.json index 2a4b3446e0e16..ace26cbd137d9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.template.json @@ -1,5 +1,33 @@ { "Resources": { + "SdkCallee1DA14178": { + "Type": "AWS::DynamoDB::GlobalTable", + "Properties": { + "AttributeDefinitions": [ + { + "AttributeName": "call", + "AttributeType": "S" + } + ], + "BillingMode": "PAY_PER_REQUEST", + "KeySchema": [ + { + "AttributeName": "call", + "KeyType": "HASH" + } + ], + "Replicas": [ + { + "Region": { + "Ref": "AWS::Region" + } + } + ], + "TableName": "bundle-sdk-table" + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, "bundlesdkServiceRoleAD25F2C9": { "Type": "AWS::IAM::Role", "Properties": { @@ -31,6 +59,45 @@ ] } }, + "bundlesdkServiceRoleDefaultPolicy309683EE": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "dynamodb:BatchGetItem", + "dynamodb:BatchWriteItem", + "dynamodb:ConditionCheckItem", + "dynamodb:DeleteItem", + "dynamodb:DescribeTable", + "dynamodb:GetItem", + "dynamodb:GetRecords", + "dynamodb:GetShardIterator", + "dynamodb:PutItem", + "dynamodb:Query", + "dynamodb:Scan", + "dynamodb:UpdateItem" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "SdkCallee1DA14178", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "bundlesdkServiceRoleDefaultPolicy309683EE", + "Roles": [ + { + "Ref": "bundlesdkServiceRoleAD25F2C9" + } + ] + } + }, "bundlesdk386047BD": { "Type": "AWS::Lambda::Function", "Properties": { @@ -38,10 +105,13 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928.zip" + "S3Key": "6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66.zip" }, "Environment": { "Variables": { + "TABLE_NAME": { + "Ref": "SdkCallee1DA14178" + }, "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" } }, @@ -55,6 +125,7 @@ "Runtime": "nodejs18.x" }, "DependsOn": [ + "bundlesdkServiceRoleDefaultPolicy309683EE", "bundlesdkServiceRoleAD25F2C9" ] } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json index e99566c8239cc..a956f08de935e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json @@ -1,20 +1,20 @@ { "version": "36.0.0", "files": { - "f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c": { + "c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e": { "source": { - "path": "asset.f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c", + "path": "asset.c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c.zip", + "objectKey": "c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "e2c67274669b657e0b92ca460614bc7522787fe5c1e8c702173ec6e1f957e8e4": { + "f7953c63483df6838ddff1bc0911cff50e0f0158eaea55d2ef8b0bf49c4c64a6": { "source": { "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "e2c67274669b657e0b92ca460614bc7522787fe5c1e8c702173ec6e1f957e8e4.json", + "objectKey": "f7953c63483df6838ddff1bc0911cff50e0f0158eaea55d2ef8b0bf49c4c64a6.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json index a47a38f8c58c6..dfac178c6b25d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json @@ -1,5 +1,33 @@ { "Resources": { + "SdkCallee1DA14178": { + "Type": "AWS::DynamoDB::GlobalTable", + "Properties": { + "AttributeDefinitions": [ + { + "AttributeName": "call", + "AttributeType": "S" + } + ], + "BillingMode": "PAY_PER_REQUEST", + "KeySchema": [ + { + "AttributeName": "call", + "KeyType": "HASH" + } + ], + "Replicas": [ + { + "Region": { + "Ref": "AWS::Region" + } + } + ], + "TableName": "external-sdk-table" + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, "externalsdkv3ServiceRole9C835365": { "Type": "AWS::IAM::Role", "Properties": { @@ -31,6 +59,45 @@ ] } }, + "externalsdkv3ServiceRoleDefaultPolicy08CC919E": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "dynamodb:BatchGetItem", + "dynamodb:BatchWriteItem", + "dynamodb:ConditionCheckItem", + "dynamodb:DeleteItem", + "dynamodb:DescribeTable", + "dynamodb:GetItem", + "dynamodb:GetRecords", + "dynamodb:GetShardIterator", + "dynamodb:PutItem", + "dynamodb:Query", + "dynamodb:Scan", + "dynamodb:UpdateItem" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "SdkCallee1DA14178", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "externalsdkv3ServiceRoleDefaultPolicy08CC919E", + "Roles": [ + { + "Ref": "externalsdkv3ServiceRole9C835365" + } + ] + } + }, "externalsdkv3B69F9D99": { "Type": "AWS::Lambda::Function", "Properties": { @@ -38,10 +105,13 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c.zip" + "S3Key": "c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e.zip" }, "Environment": { "Variables": { + "TABLE_NAME": { + "Ref": "SdkCallee1DA14178" + }, "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" } }, @@ -55,6 +125,7 @@ "Runtime": "nodejs18.x" }, "DependsOn": [ + "externalsdkv3ServiceRoleDefaultPolicy08CC919E", "externalsdkv3ServiceRole9C835365" ] } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.template.json deleted file mode 100644 index 09a2ff15d327e..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/cdk-integ-lambda-nodejs-dependencies.template.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "Resources": { - "externalServiceRole85A00A90": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } - } - ], - "Version": "2012-10-17" - }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - ] - ] - } - ] - } - }, - "external068F12D1": { - "Type": "AWS::Lambda::Function", - "Properties": { - "Code": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1.zip" - }, - "Environment": { - "Variables": { - "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" - } - }, - "Handler": "index.handler", - "Role": { - "Fn::GetAtt": [ - "externalServiceRole85A00A90", - "Arn" - ] - }, - "Runtime": "nodejs18.x" - }, - "DependsOn": [ - "externalServiceRole85A00A90" - ] - } - }, - "Outputs": { - "ExportsOutputRefexternal068F12D12C72A375": { - "Value": { - "Ref": "external068F12D1" - }, - "Export": { - "Name": "cdk-integ-lambda-nodejs-dependencies:ExportsOutputRefexternal068F12D12C72A375" - } - } - }, - "Parameters": { - "BootstrapVersion": { - "Type": "AWS::SSM::Parameter::Value", - "Default": "/cdk-bootstrap/hnb659fds/version", - "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" - } - }, - "Rules": { - "CheckBootstrapVersion": { - "Assertions": [ - { - "Assert": { - "Fn::Not": [ - { - "Fn::Contains": [ - [ - "1", - "2", - "3", - "4", - "5" - ], - { - "Ref": "BootstrapVersion" - } - ] - } - ] - }, - "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." - } - ] - } - } -} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/integ.json index 74b4af133a4f1..a8606f9ae6fae 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/integ.json @@ -3,7 +3,6 @@ "testCases": { "LambdaDependencies/DefaultTest": { "stacks": [ - "cdk-integ-lambda-nodejs-dependencies", "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/manifest.json index 1865be2b918dc..8ed09ee3c99a5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/manifest.json @@ -1,28 +1,28 @@ { "version": "36.0.0", "artifacts": { - "cdk-integ-lambda-nodejs-dependencies.assets": { + "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets": { "type": "cdk:asset-manifest", "properties": { - "file": "cdk-integ-lambda-nodejs-dependencies.assets.json", + "file": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" } }, - "cdk-integ-lambda-nodejs-dependencies": { + "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3": { "type": "aws:cloudformation:stack", "environment": "aws://unknown-account/unknown-region", "properties": { - "templateFile": "cdk-integ-lambda-nodejs-dependencies.template.json", + "templateFile": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json", "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/62a8a9b8f735f3540fcf043627bef00e8bb6c89ad27fc7266438bc9b99094847.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/f7953c63483df6838ddff1bc0911cff50e0f0158eaea55d2ef8b0bf49c4c64a6.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ - "cdk-integ-lambda-nodejs-dependencies.assets" + "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets" ], "lookupRole": { "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", @@ -31,79 +31,33 @@ } }, "dependencies": [ - "cdk-integ-lambda-nodejs-dependencies.assets" + "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets" ], "metadata": { - "/cdk-integ-lambda-nodejs-dependencies/external/ServiceRole/Resource": [ + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/SdkCallee": [ { - "type": "aws:cdk:logicalId", - "data": "externalServiceRole85A00A90" - } - ], - "/cdk-integ-lambda-nodejs-dependencies/external/Resource": [ - { - "type": "aws:cdk:logicalId", - "data": "external068F12D1" + "type": "aws:cdk:hasPhysicalName", + "data": { + "Ref": "SdkCallee1DA14178" + } } ], - "/cdk-integ-lambda-nodejs-dependencies/Exports/Output{\"Ref\":\"external068F12D1\"}": [ + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/SdkCallee/Resource": [ { "type": "aws:cdk:logicalId", - "data": "ExportsOutputRefexternal068F12D12C72A375" + "data": "SdkCallee1DA14178" } ], - "/cdk-integ-lambda-nodejs-dependencies/BootstrapVersion": [ + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", - "data": "BootstrapVersion" + "data": "externalsdkv3ServiceRole9C835365" } ], - "/cdk-integ-lambda-nodejs-dependencies/CheckBootstrapVersion": [ - { - "type": "aws:cdk:logicalId", - "data": "CheckBootstrapVersion" - } - ] - }, - "displayName": "cdk-integ-lambda-nodejs-dependencies" - }, - "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets": { - "type": "cdk:asset-manifest", - "properties": { - "file": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets.json", - "requiresBootstrapStackVersion": 6, - "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" - } - }, - "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3": { - "type": "aws:cloudformation:stack", - "environment": "aws://unknown-account/unknown-region", - "properties": { - "templateFile": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.template.json", - "terminationProtection": false, - "validateOnSynth": false, - "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", - "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e2c67274669b657e0b92ca460614bc7522787fe5c1e8c702173ec6e1f957e8e4.json", - "requiresBootstrapStackVersion": 6, - "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", - "additionalDependencies": [ - "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets" - ], - "lookupRole": { - "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", - "requiresBootstrapStackVersion": 8, - "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" - } - }, - "dependencies": [ - "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3.assets" - ], - "metadata": { - "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/Resource": [ + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/DefaultPolicy/Resource": [ { "type": "aws:cdk:logicalId", - "data": "externalsdkv3ServiceRole9C835365" + "data": "externalsdkv3ServiceRoleDefaultPolicy08CC919E" } ], "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/Resource": [ @@ -150,7 +104,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/17258cf37fa643ec69624a1bf186de44ef38375388ccb6973e51e8eb15ac1dd7.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/5a4d18be04ae91567829410b04f23d23b5093b65dd86c33dcd839962b0ada565.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -166,12 +120,32 @@ "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled.assets" ], "metadata": { + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/SdkCallee": [ + { + "type": "aws:cdk:hasPhysicalName", + "data": { + "Ref": "SdkCallee1DA14178" + } + } + ], + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/SdkCallee/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "SdkCallee1DA14178" + } + ], "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", "data": "bundlesdkServiceRoleAD25F2C9" } ], + "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "bundlesdkServiceRoleDefaultPolicy309683EE" + } + ], "/cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/Resource": [ { "type": "aws:cdk:logicalId", @@ -216,7 +190,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/29c0ae3d3f57ba2091777f6d28ef5843b1d6910f04d537c798c344ad1c6a056e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/8bca6889a7e6bcc727cad2db88eca35f5718b95af7357941f96def6b3340ef3a.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -229,28 +203,27 @@ } }, "dependencies": [ - "cdk-integ-lambda-nodejs-dependencies", "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled", "LambdaDependenciesDefaultTestDeployAssert259C940B.assets" ], "metadata": { - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/Default/Default": [ + "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default/Default": [ { "type": "aws:cdk:logicalId", - "data": "LambdaInvoke5050b1f640cc49956b59f2a71febe95c" + "data": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971" } ], - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/Invoke": [ + "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Invoke": [ { "type": "aws:cdk:logicalId", - "data": "LambdaInvoke5050b1f640cc49956b59f2a71febe95cInvokeB4FBC029" + "data": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971Invoke970717DE" } ], - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/AssertionResults": [ + "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/AssertionResults": [ { "type": "aws:cdk:logicalId", - "data": "AssertionResultsLambdaInvoke5050b1f640cc49956b59f2a71febe95c" + "data": "AssertionResultsLambdaInvoke7d0602e4b9f40ae057f935d874b5f971" } ], "/LambdaDependencies/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [ @@ -265,24 +238,6 @@ "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F" } ], - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default/Default": [ - { - "type": "aws:cdk:logicalId", - "data": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971" - } - ], - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Invoke": [ - { - "type": "aws:cdk:logicalId", - "data": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971Invoke970717DE" - } - ], - "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/AssertionResults": [ - { - "type": "aws:cdk:logicalId", - "data": "AssertionResultsLambdaInvoke7d0602e4b9f40ae057f935d874b5f971" - } - ], "/LambdaDependencies/DefaultTest/DeployAssert/LambdaInvokee35a5227846e334cb95a90bacfbfb877/Default/Default": [ { "type": "aws:cdk:logicalId", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/tree.json index c5da9c44b4e32..27a5bb698df2e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/tree.json @@ -4,145 +4,46 @@ "id": "App", "path": "", "children": { - "cdk-integ-lambda-nodejs-dependencies": { - "id": "cdk-integ-lambda-nodejs-dependencies", - "path": "cdk-integ-lambda-nodejs-dependencies", + "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3": { + "id": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", "children": { - "external": { - "id": "external", - "path": "cdk-integ-lambda-nodejs-dependencies/external", + "SdkCallee": { + "id": "SdkCallee", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/SdkCallee", "children": { - "ServiceRole": { - "id": "ServiceRole", - "path": "cdk-integ-lambda-nodejs-dependencies/external/ServiceRole", - "children": { - "ImportServiceRole": { - "id": "ImportServiceRole", - "path": "cdk-integ-lambda-nodejs-dependencies/external/ServiceRole/ImportServiceRole", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" - } - }, - "Resource": { - "id": "Resource", - "path": "cdk-integ-lambda-nodejs-dependencies/external/ServiceRole/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::IAM::Role", - "aws:cdk:cloudformation:props": { - "assumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } - } - ], - "Version": "2012-10-17" - }, - "managedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - ] - ] - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.CfnRole", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.Role", - "version": "0.0.0" - } - }, - "Code": { - "id": "Code", - "path": "cdk-integ-lambda-nodejs-dependencies/external/Code", - "children": { - "Stage": { - "id": "Stage", - "path": "cdk-integ-lambda-nodejs-dependencies/external/Code/Stage", - "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" - } - }, - "AssetBucket": { - "id": "AssetBucket", - "path": "cdk-integ-lambda-nodejs-dependencies/external/Code/AssetBucket", - "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3.BucketBase", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3_assets.Asset", - "version": "0.0.0" - } - }, "Resource": { "id": "Resource", - "path": "cdk-integ-lambda-nodejs-dependencies/external/Resource", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/SdkCallee/Resource", "attributes": { - "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:type": "AWS::DynamoDB::GlobalTable", "aws:cdk:cloudformation:props": { - "code": { - "s3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "s3Key": "c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1.zip" - }, - "environment": { - "variables": { - "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" + "attributeDefinitions": [ + { + "attributeName": "call", + "attributeType": "S" } - }, - "handler": "index.handler", - "role": { - "Fn::GetAtt": [ - "externalServiceRole85A00A90", - "Arn" - ] - }, - "runtime": "nodejs18.x" + ], + "billingMode": "PAY_PER_REQUEST", + "keySchema": [ + { + "attributeName": "call", + "keyType": "HASH" + } + ], + "replicas": [ + { + "region": { + "Ref": "AWS::Region" + } + } + ], + "tableName": "external-sdk-table" } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda_nodejs.NodejsFunction", - "version": "0.0.0" - } - }, - "Exports": { - "id": "Exports", - "path": "cdk-integ-lambda-nodejs-dependencies/Exports", - "children": { - "Output{\"Ref\":\"external068F12D1\"}": { - "id": "Output{\"Ref\":\"external068F12D1\"}", - "path": "cdk-integ-lambda-nodejs-dependencies/Exports/Output{\"Ref\":\"external068F12D1\"}", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -151,32 +52,6 @@ "version": "10.3.0" } }, - "BootstrapVersion": { - "id": "BootstrapVersion", - "path": "cdk-integ-lambda-nodejs-dependencies/BootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" - } - }, - "CheckBootstrapVersion": { - "id": "CheckBootstrapVersion", - "path": "cdk-integ-lambda-nodejs-dependencies/CheckBootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" - } - }, - "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3": { - "id": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", - "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3", - "children": { "external-sdk-v3": { "id": "external-sdk-v3", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3", @@ -189,8 +64,8 @@ "id": "ImportServiceRole", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/ImportServiceRole", "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -228,14 +103,71 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.CfnRole", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "dynamodb:BatchGetItem", + "dynamodb:BatchWriteItem", + "dynamodb:ConditionCheckItem", + "dynamodb:DeleteItem", + "dynamodb:DescribeTable", + "dynamodb:GetItem", + "dynamodb:GetRecords", + "dynamodb:GetShardIterator", + "dynamodb:PutItem", + "dynamodb:Query", + "dynamodb:Scan", + "dynamodb:UpdateItem" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "SdkCallee1DA14178", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "externalsdkv3ServiceRoleDefaultPolicy08CC919E", + "roles": [ + { + "Ref": "externalsdkv3ServiceRole9C835365" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.Role", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Code": { @@ -246,22 +178,22 @@ "id": "Stage", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/Code/Stage", "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssetBucket": { "id": "AssetBucket", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/external-sdk-v3/Code/AssetBucket", "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3.BucketBase", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3_assets.Asset", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -274,10 +206,13 @@ "s3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "s3Key": "f3b52c9ad5bbed49f33611a5c250aeacc78f264984e08b98abc221300022e69c.zip" + "s3Key": "c46b90b3424f50a27aa24f1460102bd87d1223bb01f7f6bf13bc50b977ec916e.zip" }, "environment": { "variables": { + "TABLE_NAME": { + "Ref": "SdkCallee1DA14178" + }, "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" } }, @@ -292,14 +227,14 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda_nodejs.NodejsFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Exports": { @@ -310,8 +245,8 @@ "id": "Output{\"Ref\":\"externalsdkv3B69F9D99\"}", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/Exports/Output{\"Ref\":\"externalsdkv3B69F9D99\"}", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -324,28 +259,72 @@ "id": "BootstrapVersion", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/BootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3/CheckBootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled": { "id": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled", "children": { + "SdkCallee": { + "id": "SdkCallee", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/SdkCallee", + "children": { + "Resource": { + "id": "Resource", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/SdkCallee/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DynamoDB::GlobalTable", + "aws:cdk:cloudformation:props": { + "attributeDefinitions": [ + { + "attributeName": "call", + "attributeType": "S" + } + ], + "billingMode": "PAY_PER_REQUEST", + "keySchema": [ + { + "attributeName": "call", + "keyType": "HASH" + } + ], + "replicas": [ + { + "region": { + "Ref": "AWS::Region" + } + } + ], + "tableName": "bundle-sdk-table" + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, "bundle-sdk": { "id": "bundle-sdk", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk", @@ -358,8 +337,8 @@ "id": "ImportServiceRole", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/ServiceRole/ImportServiceRole", "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -397,14 +376,71 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.CfnRole", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/ServiceRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/ServiceRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "dynamodb:BatchGetItem", + "dynamodb:BatchWriteItem", + "dynamodb:ConditionCheckItem", + "dynamodb:DeleteItem", + "dynamodb:DescribeTable", + "dynamodb:GetItem", + "dynamodb:GetRecords", + "dynamodb:GetShardIterator", + "dynamodb:PutItem", + "dynamodb:Query", + "dynamodb:Scan", + "dynamodb:UpdateItem" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "SdkCallee1DA14178", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "bundlesdkServiceRoleDefaultPolicy309683EE", + "roles": [ + { + "Ref": "bundlesdkServiceRoleAD25F2C9" + } + ] + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.Role", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Code": { @@ -415,22 +451,22 @@ "id": "Stage", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/Code/Stage", "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssetBucket": { "id": "AssetBucket", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/bundle-sdk/Code/AssetBucket", "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3.BucketBase", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3_assets.Asset", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -443,10 +479,13 @@ "s3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "s3Key": "f18e0ca318e68187e84c6f675953eae3b2bde151a45dc8d579b13c372355d928.zip" + "s3Key": "6490295a04c28034be33f0e7add2c643691996e66a6caff4f557a4664483de66.zip" }, "environment": { "variables": { + "TABLE_NAME": { + "Ref": "SdkCallee1DA14178" + }, "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1" } }, @@ -461,14 +500,14 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda_nodejs.NodejsFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Exports": { @@ -479,8 +518,8 @@ "id": "Output{\"Ref\":\"bundlesdk386047BD\"}", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/Exports/Output{\"Ref\":\"bundlesdk386047BD\"}", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -493,22 +532,22 @@ "id": "BootstrapVersion", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/BootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled/CheckBootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "LambdaDependencies": { @@ -531,17 +570,17 @@ "id": "DeployAssert", "path": "LambdaDependencies/DefaultTest/DeployAssert", "children": { - "LambdaInvoke5050b1f640cc49956b59f2a71febe95c": { - "id": "LambdaInvoke5050b1f640cc49956b59f2a71febe95c", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c", + "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971": { + "id": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971", "children": { "SdkProvider": { "id": "SdkProvider", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/SdkProvider", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/SdkProvider", "children": { "AssertionsProvider": { "id": "AssertionsProvider", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/SdkProvider/AssertionsProvider", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/SdkProvider/AssertionsProvider", "constructInfo": { "fqn": "constructs.Construct", "version": "10.3.0" @@ -555,36 +594,36 @@ }, "Default": { "id": "Default", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/Default", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default", "children": { "Default": { "id": "Default", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/Default/Default", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default/Default", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.CustomResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Invoke": { "id": "Invoke", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/Invoke", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Invoke", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssertionResults": { "id": "AssertionResults", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke5050b1f640cc49956b59f2a71febe95c/AssertionResults", + "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/AssertionResults", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -601,24 +640,24 @@ "id": "Staging", "path": "LambdaDependencies/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging", "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Role": { "id": "Role", "path": "LambdaDependencies/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Handler": { "id": "Handler", "path": "LambdaDependencies/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -627,68 +666,6 @@ "version": "10.3.0" } }, - "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971": { - "id": "LambdaInvoke7d0602e4b9f40ae057f935d874b5f971", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971", - "children": { - "SdkProvider": { - "id": "SdkProvider", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/SdkProvider", - "children": { - "AssertionsProvider": { - "id": "AssertionsProvider", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/SdkProvider/AssertionsProvider", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.3.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.AssertionsProvider", - "version": "0.0.0" - } - }, - "Default": { - "id": "Default", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default", - "children": { - "Default": { - "id": "Default", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Default/Default", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.CustomResource", - "version": "0.0.0" - } - }, - "Invoke": { - "id": "Invoke", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/Invoke", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" - } - }, - "AssertionResults": { - "id": "AssertionResults", - "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvoke7d0602e4b9f40ae057f935d874b5f971/AssertionResults", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.LambdaInvokeFunction", - "version": "0.0.0" - } - }, "LambdaInvokee35a5227846e334cb95a90bacfbfb877": { "id": "LambdaInvokee35a5227846e334cb95a90bacfbfb877", "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvokee35a5227846e334cb95a90bacfbfb877", @@ -719,30 +696,30 @@ "id": "Default", "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvokee35a5227846e334cb95a90bacfbfb877/Default/Default", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.CustomResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Invoke": { "id": "Invoke", "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvokee35a5227846e334cb95a90bacfbfb877/Invoke", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssertionResults": { "id": "AssertionResults", "path": "LambdaDependencies/DefaultTest/DeployAssert/LambdaInvokee35a5227846e334cb95a90bacfbfb877/AssertionResults", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -755,22 +732,22 @@ "id": "BootstrapVersion", "path": "LambdaDependencies/DefaultTest/DeployAssert/BootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "LambdaDependencies/DefaultTest/DeployAssert/CheckBootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -795,8 +772,8 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.App", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.ts index f72f0fecd6f6e..c7efea725de9f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.ts @@ -1,45 +1,36 @@ /// !cdk-integ * import * as path from 'path'; -import { Runtime, IFunction } from 'aws-cdk-lib/aws-lambda'; -import { App, Stack, StackProps } from 'aws-cdk-lib'; +import { IFunction } from 'aws-cdk-lib/aws-lambda'; +import { App, RemovalPolicy, Stack, StackProps } from 'aws-cdk-lib'; import { ExpectedResult, IntegTest } from '@aws-cdk/integ-tests-alpha'; -import { Construct } from 'constructs'; import * as lambda from 'aws-cdk-lib/aws-lambda-nodejs'; +import * as dynamodb from 'aws-cdk-lib/aws-dynamodb'; +import { Construct } from 'constructs'; import { STANDARD_NODEJS_RUNTIME } from '../../config'; -class SdkV2TestStack extends Stack { +class SdkV3TestStack extends Stack { public lambdaFunction: IFunction constructor(scope: Construct, id: string, props?: StackProps) { super(scope, id, props); - // This function uses aws-sdk but it will not be included - this.lambdaFunction = new lambda.NodejsFunction(this, 'external', { - entry: path.join(__dirname, 'integ-handlers/dependencies.ts'), - runtime: STANDARD_NODEJS_RUNTIME, - bundling: { - minify: true, - // Will be installed, not bundled - // (delay is a zero dependency package and its version is fixed - // in the package.json to ensure a stable hash for this integ test) - nodeModules: ['delay'], - forceDockerBundling: true, - }, + const table = new dynamodb.TableV2(this, 'SdkCallee', { + tableName: 'external-sdk-table', + partitionKey: { name: 'call', type: dynamodb.AttributeType.STRING }, + removalPolicy: RemovalPolicy.DESTROY, }); - } -} - -class SdkV3TestStack extends Stack { - public lambdaFunction: IFunction - - constructor(scope: Construct, id: string, props?: StackProps) { - super(scope, id, props); // This function uses @aws-sdk/* but it will not be included this.lambdaFunction = new lambda.NodejsFunction(this, 'external-sdk-v3', { entry: path.join(__dirname, 'integ-handlers/dependencies-sdk-v3.ts'), - runtime: Runtime.NODEJS_18_X, + runtime: STANDARD_NODEJS_RUNTIME, + environment: { + TABLE_NAME: table.tableName, + }, }); + + // grant the lambda role read/write permissions to our table + table.grantReadWriteData(this.lambdaFunction); } } @@ -49,27 +40,38 @@ class SdkV3BundledStack extends Stack { constructor(scope: Construct, id: string, props?: StackProps) { super(scope, id, props); + const table = new dynamodb.TableV2(this, 'SdkCallee', { + tableName: 'bundle-sdk-table', + partitionKey: { name: 'call', type: dynamodb.AttributeType.STRING }, + removalPolicy: RemovalPolicy.DESTROY, + }); + // This function uses @aws-sdk/* but it will not be included this.lambdaFunction = new lambda.NodejsFunction(this, 'bundle-sdk', { entry: path.join(__dirname, 'integ-handlers/dependencies-sdk-v3.ts'), - runtime: Runtime.NODEJS_18_X, + runtime: STANDARD_NODEJS_RUNTIME, bundling: { bundleAwsSDK: true, }, + environment: { + TABLE_NAME: table.tableName, + }, }); + + // grant the lambda role read/write permissions to our table + table.grantReadWriteData(this.lambdaFunction); } } const app = new App(); -const sdkV2testCase = new SdkV2TestStack(app, 'cdk-integ-lambda-nodejs-dependencies'); const sdkV3testCase = new SdkV3TestStack(app, 'cdk-integ-lambda-nodejs-dependencies-for-sdk-v3'); const sdkV3BundledSdk = new SdkV3BundledStack(app, 'cdk-integ-lambda-nodejs-dependencies-for-sdk-v3-bundled'); const integ = new IntegTest(app, 'LambdaDependencies', { - testCases: [sdkV2testCase, sdkV3testCase, sdkV3BundledSdk], + testCases: [sdkV3testCase, sdkV3BundledSdk], }); -for (const testCase of [sdkV2testCase, sdkV3testCase, sdkV3BundledSdk]) { +for (const testCase of [sdkV3testCase, sdkV3BundledSdk]) { const response = integ.assertions.invokeFunction({ functionName: testCase.lambdaFunction.functionName, }); @@ -80,5 +82,3 @@ for (const testCase of [sdkV2testCase, sdkV3testCase, sdkV3BundledSdk]) { Payload: 'null', })); } - -app.synth(); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.assets.json index 9d6f9cd305a32..a1893540f588b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.assets.json @@ -14,7 +14,7 @@ } } }, - "c2fe281e058ea480def02a361e0682b20073691f58e0b7c6e020fbcb5500ce85": { + "c9e516ede2e46803f902e4f951a9e9011c7fb81d109bf7d1024e49e0cb95d97a": { "source": { "path": "LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "c2fe281e058ea480def02a361e0682b20073691f58e0b7c6e020fbcb5500ce85.json", + "objectKey": "c9e516ede2e46803f902e4f951a9e9011c7fb81d109bf7d1024e49e0cb95d97a.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.template.json index bbd9216074c9b..3df36343266e2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/LambdaNodeJsLatestIntegDefaultTestDeployAssertD40B5C28.template.json @@ -27,7 +27,7 @@ } }, "flattenResponse": "false", - "salt": "1713373833322" + "salt": "1715125103656" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/index.js new file mode 100644 index 0000000000000..7f67ac8edbdc4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/index.js @@ -0,0 +1 @@ +"use strict";var d=Object.create;var n=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var m=(o,a)=>{for(var e in a)n(o,e,{get:a[e],enumerable:!0})},t=(o,a,e,r)=>{if(a&&typeof a=="object"||typeof a=="function")for(let l of i(a))!g.call(o,l)&&l!==e&&n(o,l,{get:()=>a[l],enumerable:!(r=f(a,l))||r.enumerable});return o};var p=(o,a,e)=>(e=o!=null?d(y(o)):{},t(a||!o||!o.__esModule?n(e,"default",{value:o,enumerable:!0}):e,o)),s=o=>t(n({},"__esModule",{value:!0}),o);var u={};m(u,{handler:()=>h});module.exports=s(u);var c=p(require("delay"));async function h(){await(0,c.default)(5),console.log("log after delay")}0&&(module.exports={handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/.yarn-integrity b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/.yarn-integrity similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/.yarn-integrity rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/.yarn-integrity diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/index.d.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/index.d.ts similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/index.d.ts rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/index.d.ts diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/index.js similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/index.js rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/index.js diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/license b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/license similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/license rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/license diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/package.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/package.json similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/package.json rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/package.json diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/readme.md b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/readme.md similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/node_modules/delay/readme.md rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/node_modules/delay/readme.md diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/package.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/package.json similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/package.json rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/package.json diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/yarn.lock b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/yarn.lock similarity index 100% rename from packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.dependencies.js.snapshot/asset.c7937690d1d588b8d91f5f71328142498813c7e04ad7f0da1bb807f0e7ee29a1/yarn.lock rename to packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24/yarn.lock diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/index.js deleted file mode 100644 index 8128555922952..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/index.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict";var HL=Object.create;var Ja=Object.defineProperty;var $L=Object.getOwnPropertyDescriptor;var KL=Object.getOwnPropertyNames;var VL=Object.getPrototypeOf,XL=Object.prototype.hasOwnProperty;var je=(e,t)=>()=>(e&&(t=e(e=0)),t);var m=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ni=(e,t)=>{for(var n in t)Ja(e,n,{get:t[n],enumerable:!0})},KS=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of KL(t))!XL.call(e,o)&&o!==n&&Ja(e,o,{get:()=>t[o],enumerable:!(r=$L(t,o))||r.enumerable});return e};var Er=(e,t,n)=>(n=e!=null?HL(VL(e)):{},KS(t||!e||!e.__esModule?Ja(n,"default",{value:e,enumerable:!0}):n,e)),J=e=>KS(Ja({},"__esModule",{value:!0}),e);var te={};Ni(te,{__addDisposableResource:()=>pb,__assign:()=>Qa,__asyncDelegator:()=>sb,__asyncGenerator:()=>ob,__asyncValues:()=>ib,__await:()=>Pr,__awaiter:()=>QS,__classPrivateFieldGet:()=>lb,__classPrivateFieldIn:()=>mb,__classPrivateFieldSet:()=>ub,__createBinding:()=>ec,__decorate:()=>WS,__disposeResources:()=>fb,__esDecorate:()=>WL,__exportStar:()=>eb,__extends:()=>VS,__generator:()=>ZS,__importDefault:()=>db,__importStar:()=>cb,__makeTemplateObject:()=>ab,__metadata:()=>JS,__param:()=>YS,__propKey:()=>JL,__read:()=>jm,__rest:()=>XS,__runInitializers:()=>YL,__setFunctionName:()=>QL,__spread:()=>tb,__spreadArray:()=>rb,__spreadArrays:()=>nb,__values:()=>Za,default:()=>tj});function VS(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Lm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function XS(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o=0;i--)(a=e[i])&&(s=(o<3?a(s):o>3?a(t,n,s):a(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function YS(e,t){return function(n,r){t(n,r,e)}}function WL(e,t,n,r,o,s){function a(G){if(G!==void 0&&typeof G!="function")throw new TypeError("Function expected");return G}for(var i=r.kind,u=i==="getter"?"get":i==="setter"?"set":"value",l=!t&&e?r.static?e:e.prototype:null,c=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),y,g=!1,C=n.length-1;C>=0;C--){var P={};for(var A in r)P[A]=A==="access"?{}:r[A];for(var A in r.access)P.access[A]=r.access[A];P.addInitializer=function(G){if(g)throw new TypeError("Cannot add initializers after decoration has completed");s.push(a(G||null))};var v=(0,n[C])(i==="accessor"?{get:c.get,set:c.set}:c[u],P);if(i==="accessor"){if(v===void 0)continue;if(v===null||typeof v!="object")throw new TypeError("Object expected");(y=a(v.get))&&(c.get=y),(y=a(v.set))&&(c.set=y),(y=a(v.init))&&o.unshift(y)}else(y=a(v))&&(i==="field"?o.unshift(y):c[u]=y)}l&&Object.defineProperty(l,r.name,c),g=!0}function YL(e,t,n){for(var r=arguments.length>2,o=0;o0&&s[s.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function jm(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,s=[],a;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)s.push(o.value)}catch(i){a={error:i}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return s}function tb(){for(var e=[],t=0;t1||i(g,C)})})}function i(g,C){try{u(r[g](C))}catch(P){y(s[0][3],P)}}function u(g){g.value instanceof Pr?Promise.resolve(g.value.v).then(l,c):y(s[0][2],g)}function l(g){i("next",g)}function c(g){i("throw",g)}function y(g,C){g(C),s.shift(),s.length&&i(s[0][0],s[0][1])}}function sb(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,s){t[o]=e[o]?function(a){return(n=!n)?{value:Pr(e[o](a)),done:!1}:s?s(a):a}:s}}function ib(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof Za=="function"?Za(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(s){n[s]=e[s]&&function(a){return new Promise(function(i,u){a=e[s](a),o(i,u,a.done,a.value)})}}function o(s,a,i,u){Promise.resolve(u).then(function(l){s({value:l,done:i})},a)}}function ab(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function cb(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)n!=="default"&&Object.prototype.hasOwnProperty.call(e,n)&&ec(t,e,n);return ZL(t,e),t}function db(e){return e&&e.__esModule?e:{default:e}}function lb(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)}function ub(e,t,n,r,o){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?o.call(e,n):o?o.value=n:t.set(e,n),n}function mb(e,t){if(t===null||typeof t!="object"&&typeof t!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof e=="function"?t===e:e.has(t)}function pb(e,t,n){if(t!=null){if(typeof t!="object"&&typeof t!="function")throw new TypeError("Object expected.");var r;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose]}if(typeof r!="function")throw new TypeError("Object not disposable.");e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}function fb(e){function t(r){e.error=e.hasError?new ej(r,e.error,"An error was suppressed during disposal."):r,e.hasError=!0}function n(){for(;e.stack.length;){var r=e.stack.pop();try{var o=r.dispose&&r.dispose.call(r.value);if(r.async)return Promise.resolve(o).then(n,function(s){return t(s),n()})}catch(s){t(s)}}if(e.hasError)throw e.error}return n()}var Lm,Qa,ec,ZL,ej,tj,ne=je(()=>{Lm=function(e,t){return Lm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(n[o]=r[o])},Lm(e,t)};Qa=function(){return Qa=Object.assign||function(t){for(var n,r=1,o=arguments.length;r{var tc=Object.defineProperty,nj=Object.getOwnPropertyDescriptor,rj=Object.getOwnPropertyNames,oj=Object.prototype.hasOwnProperty,nc=(e,t)=>tc(e,"name",{value:t,configurable:!0}),sj=(e,t)=>{for(var n in t)tc(e,n,{get:t[n],enumerable:!0})},ij=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of rj(t))!oj.call(e,o)&&o!==n&&tc(e,o,{get:()=>t[o],enumerable:!(r=nj(t,o))||r.enumerable});return e},aj=e=>ij(tc({},"__esModule",{value:!0}),e),yb={};sj(yb,{AlgorithmId:()=>Cb,EndpointURLScheme:()=>_b,FieldPosition:()=>Sb,HttpApiKeyAuthLocation:()=>hb,HttpAuthLocation:()=>gb,IniSectionType:()=>bb,RequestHandlerProtocol:()=>Eb,SMITHY_CONTEXT_KEY:()=>mj,getDefaultClientConfiguration:()=>lj,resolveDefaultRuntimeConfig:()=>uj});Pb.exports=aj(yb);var gb=(e=>(e.HEADER="header",e.QUERY="query",e))(gb||{}),hb=(e=>(e.HEADER="header",e.QUERY="query",e))(hb||{}),_b=(e=>(e.HTTP="http",e.HTTPS="https",e))(_b||{}),Cb=(e=>(e.MD5="md5",e.CRC32="crc32",e.CRC32C="crc32c",e.SHA1="sha1",e.SHA256="sha256",e))(Cb||{}),cj=nc(e=>{let t=[];return e.sha256!==void 0&&t.push({algorithmId:()=>"sha256",checksumConstructor:()=>e.sha256}),e.md5!=null&&t.push({algorithmId:()=>"md5",checksumConstructor:()=>e.md5}),{_checksumAlgorithms:t,addChecksumAlgorithm(n){this._checksumAlgorithms.push(n)},checksumAlgorithms(){return this._checksumAlgorithms}}},"getChecksumConfiguration"),dj=nc(e=>{let t={};return e.checksumAlgorithms().forEach(n=>{t[n.algorithmId()]=n.checksumConstructor()}),t},"resolveChecksumRuntimeConfig"),lj=nc(e=>({...cj(e)}),"getDefaultClientConfiguration"),uj=nc(e=>({...dj(e)}),"resolveDefaultRuntimeConfig"),Sb=(e=>(e[e.HEADER=0]="HEADER",e[e.TRAILER=1]="TRAILER",e))(Sb||{}),mj="__smithy_context",bb=(e=>(e.PROFILE="profile",e.SSO_SESSION="sso-session",e.SERVICES="services",e))(bb||{}),Eb=(e=>(e.HTTP_0_9="http/0.9",e.HTTP_1_0="http/1.0",e.TDS_8_0="tds/8.0",e))(Eb||{})});var Ne=m((wbe,Rb)=>{var rc=Object.defineProperty,pj=Object.getOwnPropertyDescriptor,fj=Object.getOwnPropertyNames,yj=Object.prototype.hasOwnProperty,wn=(e,t)=>rc(e,"name",{value:t,configurable:!0}),gj=(e,t)=>{for(var n in t)rc(e,n,{get:t[n],enumerable:!0})},hj=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of fj(t))!yj.call(e,o)&&o!==n&&rc(e,o,{get:()=>t[o],enumerable:!(r=pj(t,o))||r.enumerable});return e},_j=e=>hj(rc({},"__esModule",{value:!0}),e),vb={};gj(vb,{Field:()=>Ej,Fields:()=>Pj,HttpRequest:()=>vj,HttpResponse:()=>wj,getHttpHandlerExtensionConfiguration:()=>Cj,isValidHostname:()=>Ib,resolveHttpHandlerRuntimeConfig:()=>Sj});Rb.exports=_j(vb);var Cj=wn(e=>{let t=e.httpHandler;return{setHttpHandler(n){t=n},httpHandler(){return t},updateHttpClientConfig(n,r){t.updateHttpClientConfig(n,r)},httpHandlerConfigs(){return t.httpHandlerConfigs()}}},"getHttpHandlerExtensionConfiguration"),Sj=wn(e=>({httpHandler:e.httpHandler()}),"resolveHttpHandlerRuntimeConfig"),bj=w(),wb=class{constructor({name:t,kind:n=bj.FieldPosition.HEADER,values:r=[]}){this.name=t,this.kind=n,this.values=r}add(t){this.values.push(t)}set(t){this.values=t}remove(t){this.values=this.values.filter(n=>n!==t)}toString(){return this.values.map(t=>t.includes(",")||t.includes(" ")?`"${t}"`:t).join(", ")}get(){return this.values}};wn(wb,"Field");var Ej=wb,xb=class{constructor({fields:t=[],encoding:n="utf-8"}){this.entries={},t.forEach(this.setField.bind(this)),this.encoding=n}setField(t){this.entries[t.name.toLowerCase()]=t}getField(t){return this.entries[t.toLowerCase()]}removeField(t){delete this.entries[t.toLowerCase()]}getByType(t){return Object.values(this.entries).filter(n=>n.kind===t)}};wn(xb,"Fields");var Pj=xb,kb=class Ab{constructor(t){this.method=t.method||"GET",this.hostname=t.hostname||"localhost",this.port=t.port,this.query=t.query||{},this.headers=t.headers||{},this.body=t.body,this.protocol=t.protocol?t.protocol.slice(-1)!==":"?`${t.protocol}:`:t.protocol:"https:",this.path=t.path?t.path.charAt(0)!=="/"?`/${t.path}`:t.path:"/",this.username=t.username,this.password=t.password,this.fragment=t.fragment}static isInstance(t){if(!t)return!1;let n=t;return"method"in n&&"protocol"in n&&"hostname"in n&&"path"in n&&typeof n.query=="object"&&typeof n.headers=="object"}clone(){let t=new Ab({...this,headers:{...this.headers}});return t.query&&(t.query=Ob(t.query)),t}};wn(kb,"HttpRequest");var vj=kb;function Ob(e){return Object.keys(e).reduce((t,n)=>{let r=e[n];return{...t,[n]:Array.isArray(r)?[...r]:r}},{})}wn(Ob,"cloneQuery");var Nb=class{constructor(t){this.statusCode=t.statusCode,this.reason=t.reason,this.headers=t.headers||{},this.body=t.body}static isInstance(t){if(!t)return!1;let n=t;return typeof n.statusCode=="number"&&typeof n.headers=="object"}};wn(Nb,"HttpResponse");var wj=Nb;function Ib(e){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(e)}wn(Ib,"isValidHostname")});var Bb=m(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.getAddExpectContinuePlugin=Zt.addExpectContinueMiddlewareOptions=Zt.addExpectContinueMiddleware=void 0;var xj=Ne();function Tb(e){return t=>async n=>{let{request:r}=n;return xj.HttpRequest.isInstance(r)&&r.body&&e.runtime==="node"&&(r.headers={...r.headers,Expect:"100-continue"}),t({...n,request:r})}}Zt.addExpectContinueMiddleware=Tb;Zt.addExpectContinueMiddlewareOptions={step:"build",tags:["SET_EXPECT_HEADER","EXPECT_HEADER"],name:"addExpectContinueMiddleware",override:!0};var kj=e=>({applyToStack:t=>{t.add(Tb(e),Zt.addExpectContinueMiddlewareOptions)}});Zt.getAddExpectContinuePlugin=kj});var Ii=m(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.getHostHeaderPlugin=ft.hostHeaderMiddlewareOptions=ft.hostHeaderMiddleware=ft.resolveHostHeaderConfig=void 0;var Aj=Ne();function Oj(e){return e}ft.resolveHostHeaderConfig=Oj;var Nj=e=>t=>async n=>{if(!Aj.HttpRequest.isInstance(n.request))return t(n);let{request:r}=n,{handlerProtocol:o=""}=e.requestHandler.metadata||{};if(o.indexOf("h2")>=0&&!r.headers[":authority"])delete r.headers.host,r.headers[":authority"]="";else if(!r.headers.host){let s=r.hostname;r.port!=null&&(s+=`:${r.port}`),r.headers.host=s}return t(n)};ft.hostHeaderMiddleware=Nj;ft.hostHeaderMiddlewareOptions={name:"hostHeaderMiddleware",step:"build",priority:"low",tags:["HOST"],override:!0};var Ij=e=>({applyToStack:t=>{t.add((0,ft.hostHeaderMiddleware)(e),ft.hostHeaderMiddlewareOptions)}});ft.getHostHeaderPlugin=Ij});var qb=m(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.getLoggerPlugin=Nt.loggerMiddlewareOptions=Nt.loggerMiddleware=void 0;var Rj=()=>(e,t)=>async n=>{var r,o;try{let s=await e(n),{clientName:a,commandName:i,logger:u,dynamoDbDocumentClientOptions:l={}}=t,{overrideInputFilterSensitiveLog:c,overrideOutputFilterSensitiveLog:y}=l,g=c??t.inputFilterSensitiveLog,C=y??t.outputFilterSensitiveLog,{$metadata:P,...A}=s.output;return(r=u==null?void 0:u.info)===null||r===void 0||r.call(u,{clientName:a,commandName:i,input:g(n.input),output:C(A),metadata:P}),s}catch(s){let{clientName:a,commandName:i,logger:u,dynamoDbDocumentClientOptions:l={}}=t,{overrideInputFilterSensitiveLog:c}=l,y=c??t.inputFilterSensitiveLog;throw(o=u==null?void 0:u.error)===null||o===void 0||o.call(u,{clientName:a,commandName:i,input:y(n.input),error:s,metadata:s.$metadata}),s}};Nt.loggerMiddleware=Rj;Nt.loggerMiddlewareOptions={name:"loggerMiddleware",tags:["LOGGER"],step:"initialize",override:!0};var Tj=e=>({applyToStack:t=>{t.add((0,Nt.loggerMiddleware)(),Nt.loggerMiddlewareOptions)}});Nt.getLoggerPlugin=Tj});var Ri=m(Um=>{"use strict";Object.defineProperty(Um,"__esModule",{value:!0});var Bj=(ne(),J(te));Bj.__exportStar(qb(),Um)});var Ti=m(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.getRecursionDetectionPlugin=It.addRecursionDetectionMiddlewareOptions=It.recursionDetectionMiddleware=void 0;var qj=Ne(),Db="X-Amzn-Trace-Id",Dj="AWS_LAMBDA_FUNCTION_NAME",Mj="_X_AMZN_TRACE_ID",Fj=e=>t=>async n=>{let{request:r}=n;if(!qj.HttpRequest.isInstance(r)||e.runtime!=="node"||r.headers.hasOwnProperty(Db))return t(n);let o=process.env[Dj],s=process.env[Mj],a=i=>typeof i=="string"&&i.length>0;return a(o)&&a(s)&&(r.headers[Db]=s),t({...n,request:r})};It.recursionDetectionMiddleware=Fj;It.addRecursionDetectionMiddlewareOptions={step:"build",tags:["RECURSION_DETECTION"],name:"recursionDetectionMiddleware",override:!0,priority:"low"};var Lj=e=>({applyToStack:t=>{t.add((0,It.recursionDetectionMiddleware)(e),It.addRecursionDetectionMiddlewareOptions)}});It.getRecursionDetectionPlugin=Lj});var Ub=m((Ibe,jb)=>{var oc=Object.defineProperty,jj=Object.getOwnPropertyDescriptor,Uj=Object.getOwnPropertyNames,zj=Object.prototype.hasOwnProperty,yt=(e,t)=>oc(e,"name",{value:t,configurable:!0}),Gj=(e,t)=>{for(var n in t)oc(e,n,{get:t[n],enumerable:!0})},Hj=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Uj(t))!zj.call(e,o)&&o!==n&&oc(e,o,{get:()=>t[o],enumerable:!(r=jj(t,o))||r.enumerable});return e},$j=e=>Hj(oc({},"__esModule",{value:!0}),e),Lb={};Gj(Lb,{constructStack:()=>zm});jb.exports=$j(Lb);var ir=yt((e,t)=>{let n=[];if(e&&n.push(e),t)for(let r of t)n.push(r);return n},"getAllAliases"),xn=yt((e,t)=>`${e||"anonymous"}${t&&t.length>0?` (a.k.a. ${t.join(",")})`:""}`,"getMiddlewareNameWithAliases"),zm=yt(()=>{let e=[],t=[],n=!1,r=new Set,o=yt(y=>y.sort((g,C)=>Mb[C.step]-Mb[g.step]||Fb[C.priority||"normal"]-Fb[g.priority||"normal"]),"sort"),s=yt(y=>{let g=!1,C=yt(P=>{let A=ir(P.name,P.aliases);if(A.includes(y)){g=!0;for(let v of A)r.delete(v);return!1}return!0},"filterCb");return e=e.filter(C),t=t.filter(C),g},"removeByName"),a=yt(y=>{let g=!1,C=yt(P=>{if(P.middleware===y){g=!0;for(let A of ir(P.name,P.aliases))r.delete(A);return!1}return!0},"filterCb");return e=e.filter(C),t=t.filter(C),g},"removeByReference"),i=yt(y=>{var g;return e.forEach(C=>{y.add(C.middleware,{...C})}),t.forEach(C=>{y.addRelativeTo(C.middleware,{...C})}),(g=y.identifyOnResolve)==null||g.call(y,c.identifyOnResolve()),y},"cloneTo"),u=yt(y=>{let g=[];return y.before.forEach(C=>{C.before.length===0&&C.after.length===0?g.push(C):g.push(...u(C))}),g.push(y),y.after.reverse().forEach(C=>{C.before.length===0&&C.after.length===0?g.push(C):g.push(...u(C))}),g},"expandRelativeMiddlewareList"),l=yt((y=!1)=>{let g=[],C=[],P={};return e.forEach(v=>{let G={...v,before:[],after:[]};for(let Y of ir(G.name,G.aliases))P[Y]=G;g.push(G)}),t.forEach(v=>{let G={...v,before:[],after:[]};for(let Y of ir(G.name,G.aliases))P[Y]=G;C.push(G)}),C.forEach(v=>{if(v.toMiddleware){let G=P[v.toMiddleware];if(G===void 0){if(y)return;throw new Error(`${v.toMiddleware} is not found when adding ${xn(v.name,v.aliases)} middleware ${v.relation} ${v.toMiddleware}`)}v.relation==="after"&&G.after.push(v),v.relation==="before"&&G.before.push(v)}}),o(g).map(u).reduce((v,G)=>(v.push(...G),v),[])},"getMiddlewareList"),c={add:(y,g={})=>{let{name:C,override:P,aliases:A}=g,v={step:"initialize",priority:"normal",middleware:y,...g},G=ir(C,A);if(G.length>0){if(G.some(Y=>r.has(Y))){if(!P)throw new Error(`Duplicate middleware name '${xn(C,A)}'`);for(let Y of G){let Le=e.findIndex(pt=>{var vn;return pt.name===Y||((vn=pt.aliases)==null?void 0:vn.some(sr=>sr===Y))});if(Le===-1)continue;let Ae=e[Le];if(Ae.step!==v.step||v.priority!==Ae.priority)throw new Error(`"${xn(Ae.name,Ae.aliases)}" middleware with ${Ae.priority} priority in ${Ae.step} step cannot be overridden by "${xn(C,A)}" middleware with ${v.priority} priority in ${v.step} step.`);e.splice(Le,1)}}for(let Y of G)r.add(Y)}e.push(v)},addRelativeTo:(y,g)=>{let{name:C,override:P,aliases:A}=g,v={middleware:y,...g},G=ir(C,A);if(G.length>0){if(G.some(Y=>r.has(Y))){if(!P)throw new Error(`Duplicate middleware name '${xn(C,A)}'`);for(let Y of G){let Le=t.findIndex(pt=>{var vn;return pt.name===Y||((vn=pt.aliases)==null?void 0:vn.some(sr=>sr===Y))});if(Le===-1)continue;let Ae=t[Le];if(Ae.toMiddleware!==v.toMiddleware||Ae.relation!==v.relation)throw new Error(`"${xn(Ae.name,Ae.aliases)}" middleware ${Ae.relation} "${Ae.toMiddleware}" middleware cannot be overridden by "${xn(C,A)}" middleware ${v.relation} "${v.toMiddleware}" middleware.`);t.splice(Le,1)}}for(let Y of G)r.add(Y)}t.push(v)},clone:()=>i(zm()),use:y=>{y.applyToStack(c)},remove:y=>typeof y=="string"?s(y):a(y),removeByTag:y=>{let g=!1,C=yt(P=>{let{tags:A,name:v,aliases:G}=P;if(A&&A.includes(y)){let Y=ir(v,G);for(let Le of Y)r.delete(Le);return g=!0,!1}return!0},"filterCb");return e=e.filter(C),t=t.filter(C),g},concat:y=>{var g;let C=i(zm());return C.use(y),C.identifyOnResolve(n||C.identifyOnResolve()||(((g=y.identifyOnResolve)==null?void 0:g.call(y))??!1)),C},applyToStack:i,identify:()=>l(!0).map(y=>{let g=y.step??y.relation+" "+y.toMiddleware;return xn(y.name,y.aliases)+" - "+g}),identifyOnResolve(y){return typeof y=="boolean"&&(n=y),n},resolve:(y,g)=>{for(let C of l().map(P=>P.middleware).reverse())y=C(y,g);return n&&console.log(c.identify()),y}};return c},"constructStack"),Mb={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},Fb={high:3,normal:2,low:1}});var ic=m((Rbe,Gb)=>{var sc=Object.defineProperty,Kj=Object.getOwnPropertyDescriptor,Vj=Object.getOwnPropertyNames,Xj=Object.prototype.hasOwnProperty,Wj=(e,t)=>sc(e,"name",{value:t,configurable:!0}),Yj=(e,t)=>{for(var n in t)sc(e,n,{get:t[n],enumerable:!0})},Jj=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Vj(t))!Xj.call(e,o)&&o!==n&&sc(e,o,{get:()=>t[o],enumerable:!(r=Kj(t,o))||r.enumerable});return e},Qj=e=>Jj(sc({},"__esModule",{value:!0}),e),zb={};Yj(zb,{isArrayBuffer:()=>Zj});Gb.exports=Qj(zb);var Zj=Wj(e=>typeof ArrayBuffer=="function"&&e instanceof ArrayBuffer||Object.prototype.toString.call(e)==="[object ArrayBuffer]","isArrayBuffer")});var vr=m((Tbe,Kb)=>{var ac=Object.defineProperty,eU=Object.getOwnPropertyDescriptor,tU=Object.getOwnPropertyNames,nU=Object.prototype.hasOwnProperty,Hb=(e,t)=>ac(e,"name",{value:t,configurable:!0}),rU=(e,t)=>{for(var n in t)ac(e,n,{get:t[n],enumerable:!0})},oU=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of tU(t))!nU.call(e,o)&&o!==n&&ac(e,o,{get:()=>t[o],enumerable:!(r=eU(t,o))||r.enumerable});return e},sU=e=>oU(ac({},"__esModule",{value:!0}),e),$b={};rU($b,{fromArrayBuffer:()=>aU,fromString:()=>cU});Kb.exports=sU($b);var iU=ic(),Gm=require("buffer"),aU=Hb((e,t=0,n=e.byteLength-t)=>{if(!(0,iU.isArrayBuffer)(e))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof e} (${e})`);return Gm.Buffer.from(e,t,n)},"fromArrayBuffer"),cU=Hb((e,t)=>{if(typeof e!="string")throw new TypeError(`The "input" argument must be of type string. Received type ${typeof e} (${e})`);return t?Gm.Buffer.from(e,t):Gm.Buffer.from(e)},"fromString")});var Vb=m(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});cc.fromBase64=void 0;var dU=vr(),lU=/^[A-Za-z0-9+/]*={0,2}$/,uU=e=>{if(e.length*3%4!==0)throw new TypeError("Incorrect padding on base64 string.");if(!lU.exec(e))throw new TypeError("Invalid base64 string.");let t=(0,dU.fromString)(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)};cc.fromBase64=uU});var st=m((qbe,Jb)=>{var dc=Object.defineProperty,mU=Object.getOwnPropertyDescriptor,pU=Object.getOwnPropertyNames,fU=Object.prototype.hasOwnProperty,Hm=(e,t)=>dc(e,"name",{value:t,configurable:!0}),yU=(e,t)=>{for(var n in t)dc(e,n,{get:t[n],enumerable:!0})},gU=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of pU(t))!fU.call(e,o)&&o!==n&&dc(e,o,{get:()=>t[o],enumerable:!(r=mU(t,o))||r.enumerable});return e},hU=e=>gU(dc({},"__esModule",{value:!0}),e),Xb={};yU(Xb,{fromUtf8:()=>Yb,toUint8Array:()=>_U,toUtf8:()=>CU});Jb.exports=hU(Xb);var Wb=vr(),Yb=Hm(e=>{let t=(0,Wb.fromString)(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},"fromUtf8"),_U=Hm(e=>typeof e=="string"?Yb(e):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(e),"toUint8Array"),CU=Hm(e=>{if(typeof e=="string")return e;if(typeof e!="object"||typeof e.byteOffset!="number"||typeof e.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return(0,Wb.fromArrayBuffer)(e.buffer,e.byteOffset,e.byteLength).toString("utf8")},"toUtf8")});var Qb=m(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.toBase64=void 0;var SU=vr(),bU=st(),EU=e=>{let t;if(typeof e=="string"?t=(0,bU.fromUtf8)(e):t=e,typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return(0,SU.fromArrayBuffer)(t.buffer,t.byteOffset,t.byteLength).toString("base64")};lc.toBase64=EU});var wr=m((Mbe,uc)=>{var Zb=Object.defineProperty,PU=Object.getOwnPropertyDescriptor,vU=Object.getOwnPropertyNames,wU=Object.prototype.hasOwnProperty,$m=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of vU(t))!wU.call(e,o)&&o!==n&&Zb(e,o,{get:()=>t[o],enumerable:!(r=PU(t,o))||r.enumerable});return e},eE=(e,t,n)=>($m(e,t,"default"),n&&$m(n,t,"default")),xU=e=>$m(Zb({},"__esModule",{value:!0}),e),Km={};uc.exports=xU(Km);eE(Km,Vb(),uc.exports);eE(Km,Qb(),uc.exports)});var tE=m(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});mc.getAwsChunkedEncodingStream=void 0;var kU=require("stream"),AU=(e,t)=>{let{base64Encoder:n,bodyLengthChecker:r,checksumAlgorithmFn:o,checksumLocationName:s,streamHasher:a}=t,i=n!==void 0&&o!==void 0&&s!==void 0&&a!==void 0,u=i?a(o,e):void 0,l=new kU.Readable({read:()=>{}});return e.on("data",c=>{let y=r(c)||0;l.push(`${y.toString(16)}\r -`),l.push(c),l.push(`\r -`)}),e.on("end",async()=>{if(l.push(`0\r -`),i){let c=n(await u);l.push(`${s}:${c}\r -`),l.push(`\r -`)}l.push(null)}),l};mc.getAwsChunkedEncodingStream=AU});var Xm=m((Lbe,oE)=>{var pc=Object.defineProperty,OU=Object.getOwnPropertyDescriptor,NU=Object.getOwnPropertyNames,IU=Object.prototype.hasOwnProperty,Vm=(e,t)=>pc(e,"name",{value:t,configurable:!0}),RU=(e,t)=>{for(var n in t)pc(e,n,{get:t[n],enumerable:!0})},TU=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of NU(t))!IU.call(e,o)&&o!==n&&pc(e,o,{get:()=>t[o],enumerable:!(r=OU(t,o))||r.enumerable});return e},BU=e=>TU(pc({},"__esModule",{value:!0}),e),nE={};RU(nE,{escapeUri:()=>rE,escapeUriPath:()=>DU});oE.exports=BU(nE);var rE=Vm(e=>encodeURIComponent(e).replace(/[!'()*]/g,qU),"escapeUri"),qU=Vm(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,"hexEncode"),DU=Vm(e=>e.split("/").map(rE).join("/"),"escapeUriPath")});var cE=m((jbe,aE)=>{var fc=Object.defineProperty,MU=Object.getOwnPropertyDescriptor,FU=Object.getOwnPropertyNames,LU=Object.prototype.hasOwnProperty,jU=(e,t)=>fc(e,"name",{value:t,configurable:!0}),UU=(e,t)=>{for(var n in t)fc(e,n,{get:t[n],enumerable:!0})},zU=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of FU(t))!LU.call(e,o)&&o!==n&&fc(e,o,{get:()=>t[o],enumerable:!(r=MU(t,o))||r.enumerable});return e},GU=e=>zU(fc({},"__esModule",{value:!0}),e),sE={};UU(sE,{buildQueryString:()=>iE});aE.exports=GU(sE);var Wm=Xm();function iE(e){let t=[];for(let n of Object.keys(e).sort()){let r=e[n];if(n=(0,Wm.escapeUri)(n),Array.isArray(r))for(let o=0,s=r.length;o{var HU=Object.create,Bi=Object.defineProperty,$U=Object.getOwnPropertyDescriptor,KU=Object.getOwnPropertyNames,VU=Object.getPrototypeOf,XU=Object.prototype.hasOwnProperty,ze=(e,t)=>Bi(e,"name",{value:t,configurable:!0}),WU=(e,t)=>{for(var n in t)Bi(e,n,{get:t[n],enumerable:!0})},uE=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of KU(t))!XU.call(e,o)&&o!==n&&Bi(e,o,{get:()=>t[o],enumerable:!(r=$U(t,o))||r.enumerable});return e},YU=(e,t,n)=>(n=e!=null?HU(VU(e)):{},uE(t||!e||!e.__esModule?Bi(n,"default",{value:e,enumerable:!0}):n,e)),JU=e=>uE(Bi({},"__esModule",{value:!0}),e),mE={};WU(mE,{DEFAULT_REQUEST_TIMEOUT:()=>nz,NodeHttp2Handler:()=>az,NodeHttpHandler:()=>rz,streamCollector:()=>dz});vE.exports=JU(mE);var pE=Ne(),fE=cE(),Ym=require("http"),Jm=require("https"),QU=["ECONNRESET","EPIPE","ETIMEDOUT"],yE=ze(e=>{let t={};for(let n of Object.keys(e)){let r=e[n];t[n]=Array.isArray(r)?r.join(","):r}return t},"getTransformedHeaders"),ZU=ze((e,t,n=0)=>{if(!n)return;let r=setTimeout(()=>{e.destroy(),t(Object.assign(new Error(`Socket timed out without establishing a connection within ${n} ms`),{name:"TimeoutError"}))},n);e.on("socket",o=>{o.connecting?o.on("connect",()=>{clearTimeout(r)}):clearTimeout(r)})},"setConnectionTimeout"),ez=ze((e,{keepAlive:t,keepAliveMsecs:n})=>{t===!0&&e.on("socket",r=>{r.setKeepAlive(t,n||0)})},"setSocketKeepAlive"),tz=ze((e,t,n=0)=>{e.setTimeout(n,()=>{e.destroy(),t(Object.assign(new Error(`Connection timed out after ${n} ms`),{name:"TimeoutError"}))})},"setSocketTimeout"),gE=require("stream"),dE=1e3;async function Zm(e,t,n=dE){let r=t.headers??{},o=r.Expect||r.expect,s=-1,a=!1;o==="100-continue"&&await Promise.race([new Promise(i=>{s=Number(setTimeout(i,Math.max(dE,n)))}),new Promise(i=>{e.on("continue",()=>{clearTimeout(s),i()}),e.on("error",()=>{a=!0,clearTimeout(s),i()})})]),a||hE(e,t.body)}ze(Zm,"writeRequestBody");function hE(e,t){if(t instanceof gE.Readable){t.pipe(e);return}if(t){if(Buffer.isBuffer(t)||typeof t=="string"){e.end(t);return}let n=t;if(typeof n=="object"&&n.buffer&&typeof n.byteOffset=="number"&&typeof n.byteLength=="number"){e.end(Buffer.from(n.buffer,n.byteOffset,n.byteLength));return}e.end(Buffer.from(t));return}e.end()}ze(hE,"writeBody");var nz=0,_E=class Qm{constructor(t){this.socketWarningTimestamp=0,this.metadata={handlerProtocol:"http/1.1"},this.configProvider=new Promise((n,r)=>{typeof t=="function"?t().then(o=>{n(this.resolveDefaultConfig(o))}).catch(r):n(this.resolveDefaultConfig(t))})}static create(t){return typeof(t==null?void 0:t.handle)=="function"?t:new Qm(t)}static checkSocketUsage(t,n){var r,o;let{sockets:s,requests:a,maxSockets:i}=t;if(typeof i!="number"||i===1/0||Date.now()-15e3=i&&y>=2*i)return console.warn("@smithy/node-http-handler:WARN",`socket usage at capacity=${c} and ${y} additional requests are enqueued.`,"See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html","or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config."),Date.now()}return n}resolveDefaultConfig(t){let{requestTimeout:n,connectionTimeout:r,socketTimeout:o,httpAgent:s,httpsAgent:a}=t||{},i=!0,u=50;return{connectionTimeout:r,requestTimeout:n??o,httpAgent:s instanceof Ym.Agent||typeof(s==null?void 0:s.destroy)=="function"?s:new Ym.Agent({keepAlive:i,maxSockets:u,...s}),httpsAgent:a instanceof Jm.Agent||typeof(a==null?void 0:a.destroy)=="function"?a:new Jm.Agent({keepAlive:i,maxSockets:u,...a})}}destroy(){var t,n,r,o;(n=(t=this.config)==null?void 0:t.httpAgent)==null||n.destroy(),(o=(r=this.config)==null?void 0:r.httpsAgent)==null||o.destroy()}async handle(t,{abortSignal:n}={}){this.config||(this.config=await this.configProvider);let r;return new Promise((o,s)=>{let a,i=ze(async Y=>{await a,clearTimeout(r),o(Y)},"resolve"),u=ze(async Y=>{await a,s(Y)},"reject");if(!this.config)throw new Error("Node HTTP request handler config is not resolved");if(n!=null&&n.aborted){let Y=new Error("Request aborted");Y.name="AbortError",u(Y);return}let l=t.protocol==="https:",c=l?this.config.httpsAgent:this.config.httpAgent;r=setTimeout(()=>{this.socketWarningTimestamp=Qm.checkSocketUsage(c,this.socketWarningTimestamp)},this.config.socketAcquisitionWarningTimeout??(this.config.requestTimeout??2e3)+(this.config.connectionTimeout??1e3));let y=(0,fE.buildQueryString)(t.query||{}),g;if(t.username!=null||t.password!=null){let Y=t.username??"",Le=t.password??"";g=`${Y}:${Le}`}let C=t.path;y&&(C+=`?${y}`),t.fragment&&(C+=`#${t.fragment}`);let P={headers:t.headers,host:t.hostname,method:t.method,path:C,port:t.port,agent:c,auth:g},v=(l?Jm.request:Ym.request)(P,Y=>{let Le=new pE.HttpResponse({statusCode:Y.statusCode||-1,reason:Y.statusMessage,headers:yE(Y.headers),body:Y});i({response:Le})});v.on("error",Y=>{QU.includes(Y.code)?u(Object.assign(Y,{name:"TimeoutError"})):u(Y)}),ZU(v,u,this.config.connectionTimeout),tz(v,u,this.config.requestTimeout),n&&(n.onabort=()=>{v.abort();let Y=new Error("Request aborted");Y.name="AbortError",u(Y)});let G=P.agent;typeof G=="object"&&"keepAlive"in G&&ez(v,{keepAlive:G.keepAlive,keepAliveMsecs:G.keepAliveMsecs}),a=Zm(v,t,this.config.requestTimeout).catch(s)})}updateHttpClientConfig(t,n){this.config=void 0,this.configProvider=this.configProvider.then(r=>({...r,[t]:n}))}httpHandlerConfigs(){return this.config??{}}};ze(_E,"NodeHttpHandler");var rz=_E,lE=require("http2"),oz=YU(require("http2")),CE=class{constructor(t){this.sessions=[],this.sessions=t??[]}poll(){if(this.sessions.length>0)return this.sessions.shift()}offerLast(t){this.sessions.push(t)}contains(t){return this.sessions.includes(t)}remove(t){this.sessions=this.sessions.filter(n=>n!==t)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}destroy(t){for(let n of this.sessions)n===t&&(n.destroyed||n.destroy())}};ze(CE,"NodeHttp2ConnectionPool");var sz=CE,SE=class{constructor(t){if(this.sessionCache=new Map,this.config=t,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrency must be greater than zero.")}lease(t,n){let r=this.getUrlString(t),o=this.sessionCache.get(r);if(o){let u=o.poll();if(u&&!this.config.disableConcurrency)return u}let s=oz.default.connect(r);this.config.maxConcurrency&&s.settings({maxConcurrentStreams:this.config.maxConcurrency},u=>{if(u)throw new Error("Fail to set maxConcurrentStreams to "+this.config.maxConcurrency+"when creating new session for "+t.destination.toString())}),s.unref();let a=ze(()=>{s.destroy(),this.deleteSession(r,s)},"destroySessionCb");s.on("goaway",a),s.on("error",a),s.on("frameError",a),s.on("close",()=>this.deleteSession(r,s)),n.requestTimeout&&s.setTimeout(n.requestTimeout,a);let i=this.sessionCache.get(r)||new sz;return i.offerLast(s),this.sessionCache.set(r,i),s}deleteSession(t,n){let r=this.sessionCache.get(t);r&&r.contains(n)&&(r.remove(n),this.sessionCache.set(t,r))}release(t,n){var r;let o=this.getUrlString(t);(r=this.sessionCache.get(o))==null||r.offerLast(n)}destroy(){for(let[t,n]of this.sessionCache){for(let r of n)r.destroyed||r.destroy(),n.remove(r);this.sessionCache.delete(t)}}setMaxConcurrentStreams(t){if(this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrentStreams must be greater than zero.");this.config.maxConcurrency=t}setDisableConcurrentStreams(t){this.config.disableConcurrency=t}getUrlString(t){return t.destination.toString()}};ze(SE,"NodeHttp2ConnectionManager");var iz=SE,bE=class EE{constructor(t){this.metadata={handlerProtocol:"h2"},this.connectionManager=new iz({}),this.configProvider=new Promise((n,r)=>{typeof t=="function"?t().then(o=>{n(o||{})}).catch(r):n(t||{})})}static create(t){return typeof(t==null?void 0:t.handle)=="function"?t:new EE(t)}destroy(){this.connectionManager.destroy()}async handle(t,{abortSignal:n}={}){this.config||(this.config=await this.configProvider,this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams||!1),this.config.maxConcurrentStreams&&this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams));let{requestTimeout:r,disableConcurrentStreams:o}=this.config;return new Promise((s,a)=>{var i;let u=!1,l,c=ze(async Oe=>{await l,s(Oe)},"resolve"),y=ze(async Oe=>{await l,a(Oe)},"reject");if(n!=null&&n.aborted){u=!0;let Oe=new Error("Request aborted");Oe.name="AbortError",y(Oe);return}let{hostname:g,method:C,port:P,protocol:A,query:v}=t,G="";if(t.username!=null||t.password!=null){let Oe=t.username??"",Oi=t.password??"";G=`${Oe}:${Oi}@`}let Y=`${A}//${G}${g}${P?`:${P}`:""}`,Le={destination:new URL(Y)},Ae=this.connectionManager.lease(Le,{requestTimeout:(i=this.config)==null?void 0:i.sessionTimeout,disableConcurrentStreams:o||!1}),pt=ze(Oe=>{o&&this.destroySession(Ae),u=!0,y(Oe)},"rejectWithDestroy"),vn=(0,fE.buildQueryString)(v||{}),sr=t.path;vn&&(sr+=`?${vn}`),t.fragment&&(sr+=`#${t.fragment}`);let Et=Ae.request({...t.headers,[lE.constants.HTTP2_HEADER_PATH]:sr,[lE.constants.HTTP2_HEADER_METHOD]:C});Ae.ref(),Et.on("response",Oe=>{let Oi=new pE.HttpResponse({statusCode:Oe[":status"]||-1,headers:yE(Oe),body:Et});u=!0,c({response:Oi}),o&&(Ae.close(),this.connectionManager.deleteSession(Y,Ae))}),r&&Et.setTimeout(r,()=>{Et.close();let Oe=new Error(`Stream timed out because of no activity for ${r} ms`);Oe.name="TimeoutError",pt(Oe)}),n&&(n.onabort=()=>{Et.close();let Oe=new Error("Request aborted");Oe.name="AbortError",pt(Oe)}),Et.on("frameError",(Oe,Oi,GL)=>{pt(new Error(`Frame type id ${Oe} in stream id ${GL} has failed with code ${Oi}.`))}),Et.on("error",pt),Et.on("aborted",()=>{pt(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${Et.rstCode}.`))}),Et.on("close",()=>{Ae.unref(),o&&Ae.destroy(),u||pt(new Error("Unexpected error: http2 request did not get a response"))}),l=Zm(Et,t,r)})}updateHttpClientConfig(t,n){this.config=void 0,this.configProvider=this.configProvider.then(r=>({...r,[t]:n}))}httpHandlerConfigs(){return this.config??{}}destroySession(t){t.destroyed||t.destroy()}};ze(bE,"NodeHttp2Handler");var az=bE,PE=class extends gE.Writable{constructor(){super(...arguments),this.bufferedBytes=[]}_write(t,n,r){this.bufferedBytes.push(t),r()}};ze(PE,"Collector");var cz=PE,dz=ze(e=>new Promise((t,n)=>{let r=new cz;e.pipe(r),e.on("error",o=>{r.end(),n(o)}),r.on("error",n),r.on("finish",function(){let o=new Uint8Array(Buffer.concat(this.bufferedBytes));t(o)})}),"streamCollector")});var xE=m(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});yc.sdkStreamMixin=void 0;var lz=xr(),uz=vr(),ep=require("stream"),mz=require("util"),wE="The stream has already been transformed.",pz=e=>{var t,n;if(!(e instanceof ep.Readable)){let s=((n=(t=e==null?void 0:e.__proto__)===null||t===void 0?void 0:t.constructor)===null||n===void 0?void 0:n.name)||e;throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${s}`)}let r=!1,o=async()=>{if(r)throw new Error(wE);return r=!0,await(0,lz.streamCollector)(e)};return Object.assign(e,{transformToByteArray:o,transformToString:async s=>{let a=await o();return s===void 0||Buffer.isEncoding(s)?(0,uz.fromArrayBuffer)(a.buffer,a.byteOffset,a.byteLength).toString(s):new mz.TextDecoder(s).decode(a)},transformToWebStream:()=>{if(r)throw new Error(wE);if(e.readableFlowing!==null)throw new Error("The stream has been consumed by other callbacks.");if(typeof ep.Readable.toWeb!="function")throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");return r=!0,ep.Readable.toWeb(e)}})};yc.sdkStreamMixin=pz});var op=m((Kbe,_c)=>{var gc=Object.defineProperty,fz=Object.getOwnPropertyDescriptor,yz=Object.getOwnPropertyNames,gz=Object.prototype.hasOwnProperty,rp=(e,t)=>gc(e,"name",{value:t,configurable:!0}),hz=(e,t)=>{for(var n in t)gc(e,n,{get:t[n],enumerable:!0})},tp=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of yz(t))!gz.call(e,o)&&o!==n&&gc(e,o,{get:()=>t[o],enumerable:!(r=fz(t,o))||r.enumerable});return e},kE=(e,t,n)=>(tp(e,t,"default"),n&&tp(n,t,"default")),_z=e=>tp(gc({},"__esModule",{value:!0}),e),hc={};hz(hc,{Uint8ArrayBlobAdapter:()=>np});_c.exports=_z(hc);var AE=wr(),OE=st();function NE(e,t="utf-8"){return t==="base64"?(0,AE.toBase64)(e):(0,OE.toUtf8)(e)}rp(NE,"transformToString");function IE(e,t){return t==="base64"?np.mutate((0,AE.fromBase64)(e)):np.mutate((0,OE.fromUtf8)(e))}rp(IE,"transformFromString");var RE=class TE extends Uint8Array{static fromString(t,n="utf-8"){switch(typeof t){case"string":return IE(t,n);default:throw new Error(`Unsupported conversion from ${typeof t} to Uint8ArrayBlobAdapter.`)}}static mutate(t){return Object.setPrototypeOf(t,TE.prototype),t}transformToString(t="utf-8"){return NE(this,t)}};rp(RE,"Uint8ArrayBlobAdapter");var np=RE;kE(hc,tE(),_c.exports);kE(hc,xE(),_c.exports)});var b=m((Jbe,rP)=>{var Pc=Object.defineProperty,Cz=Object.getOwnPropertyDescriptor,Sz=Object.getOwnPropertyNames,bz=Object.prototype.hasOwnProperty,z=(e,t)=>Pc(e,"name",{value:t,configurable:!0}),Ez=(e,t)=>{for(var n in t)Pc(e,n,{get:t[n],enumerable:!0})},Pz=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Sz(t))!bz.call(e,o)&&o!==n&&Pc(e,o,{get:()=>t[o],enumerable:!(r=Cz(t,o))||r.enumerable});return e},vz=e=>Pz(Pc({},"__esModule",{value:!0}),e),qE={};Ez(qE,{Client:()=>xz,Command:()=>jE,LazyJsonString:()=>E3,NoOpLogger:()=>wz,SENSITIVE_STRING:()=>Oz,ServiceException:()=>l3,StringWrapper:()=>Li,_json:()=>up,collectBody:()=>kz,convertMap:()=>P3,createAggregatedClient:()=>Nz,dateToUtcString:()=>VE,decorateServiceException:()=>YE,emitWarningIfUnsupportedVersion:()=>f3,expectBoolean:()=>Rz,expectByte:()=>lp,expectFloat32:()=>Sc,expectInt:()=>Bz,expectInt32:()=>cp,expectLong:()=>Mi,expectNonNull:()=>Dz,expectNumber:()=>Di,expectObject:()=>zE,expectShort:()=>dp,expectString:()=>Mz,expectUnion:()=>Fz,extendedEncodeURIComponent:()=>Ec,getArrayIfSingleItem:()=>b3,getDefaultClientConfiguration:()=>C3,getDefaultExtensionConfiguration:()=>QE,getValueFromTextNode:()=>ZE,handleFloat:()=>Uz,limitedParseDouble:()=>fp,limitedParseFloat:()=>zz,limitedParseFloat32:()=>Gz,loadConfigsForDefaultMode:()=>p3,logger:()=>Fi,map:()=>gp,parseBoolean:()=>Iz,parseEpochTimestamp:()=>t3,parseRfc3339DateTime:()=>Xz,parseRfc3339DateTimeWithOffset:()=>Yz,parseRfc7231DateTime:()=>e3,resolveDefaultRuntimeConfig:()=>S3,resolvedPath:()=>A3,serializeFloat:()=>O3,splitEvery:()=>nP,strictParseByte:()=>KE,strictParseDouble:()=>pp,strictParseFloat:()=>Lz,strictParseFloat32:()=>GE,strictParseInt:()=>Hz,strictParseInt32:()=>$z,strictParseLong:()=>$E,strictParseShort:()=>kr,take:()=>v3,throwDefaultError:()=>JE,withBaseException:()=>u3});rP.exports=vz(qE);var DE=class{trace(){}debug(){}info(){}warn(){}error(){}};z(DE,"NoOpLogger");var wz=DE,ME=Ub(),FE=class{constructor(t){this.middlewareStack=(0,ME.constructStack)(),this.config=t}send(t,n,r){let o=typeof n!="function"?n:void 0,s=typeof n=="function"?n:r,a=t.resolveMiddleware(this.middlewareStack,this.config,o);if(s)a(t).then(i=>s(null,i.output),i=>s(i)).catch(()=>{});else return a(t).then(i=>i.output)}destroy(){this.config.requestHandler.destroy&&this.config.requestHandler.destroy()}};z(FE,"Client");var xz=FE,sp=op(),kz=z(async(e=new Uint8Array,t)=>{if(e instanceof Uint8Array)return sp.Uint8ArrayBlobAdapter.mutate(e);if(!e)return sp.Uint8ArrayBlobAdapter.mutate(new Uint8Array);let n=t.streamCollector(e);return sp.Uint8ArrayBlobAdapter.mutate(await n)},"collectBody"),ap=w(),LE=class{constructor(){this.middlewareStack=(0,ME.constructStack)()}static classBuilder(){return new Az}resolveMiddlewareWithContext(t,n,r,{middlewareFn:o,clientName:s,commandName:a,inputFilterSensitiveLog:i,outputFilterSensitiveLog:u,smithyContext:l,additionalContext:c,CommandCtor:y}){for(let v of o.bind(this)(y,t,n,r))this.middlewareStack.use(v);let g=t.concat(this.middlewareStack),{logger:C}=n,P={logger:C,clientName:s,commandName:a,inputFilterSensitiveLog:i,outputFilterSensitiveLog:u,[ap.SMITHY_CONTEXT_KEY]:{...l},...c},{requestHandler:A}=n;return g.resolve(v=>A.handle(v.request,r||{}),P)}};z(LE,"Command");var jE=LE,UE=class{constructor(){this._init=()=>{},this._ep={},this._middlewareFn=()=>[],this._commandName="",this._clientName="",this._additionalContext={},this._smithyContext={},this._inputFilterSensitiveLog=t=>t,this._outputFilterSensitiveLog=t=>t,this._serializer=null,this._deserializer=null}init(t){this._init=t}ep(t){return this._ep=t,this}m(t){return this._middlewareFn=t,this}s(t,n,r={}){return this._smithyContext={service:t,operation:n,...r},this}c(t={}){return this._additionalContext=t,this}n(t,n){return this._clientName=t,this._commandName=n,this}f(t=r=>r,n=r=>r){return this._inputFilterSensitiveLog=t,this._outputFilterSensitiveLog=n,this}ser(t){return this._serializer=t,this}de(t){return this._deserializer=t,this}build(){var t;let n=this,r;return r=(t=class extends jE{constructor(...[o]){super(),this.serialize=n._serializer,this.deserialize=n._deserializer,this.input=o??{},n._init(this)}static getEndpointParameterInstructions(){return n._ep}resolveMiddleware(o,s,a){return this.resolveMiddlewareWithContext(o,s,a,{CommandCtor:r,middlewareFn:n._middlewareFn,clientName:n._clientName,commandName:n._commandName,inputFilterSensitiveLog:n._inputFilterSensitiveLog,outputFilterSensitiveLog:n._outputFilterSensitiveLog,smithyContext:n._smithyContext,additionalContext:n._additionalContext})}},z(t,"CommandRef"),t)}};z(UE,"ClassBuilder");var Az=UE,Oz="***SensitiveInformation***",Nz=z((e,t)=>{for(let n of Object.keys(e)){let r=e[n],o=z(async function(a,i,u){let l=new r(a);if(typeof i=="function")this.send(l,i);else if(typeof u=="function"){if(typeof i!="object")throw new Error(`Expected http options but got ${typeof i}`);this.send(l,i||{},u)}else return this.send(l,i)},"methodImpl"),s=(n[0].toLowerCase()+n.slice(1)).replace(/Command$/,"");t.prototype[s]=o}},"createAggregatedClient"),Iz=z(e=>{switch(e){case"true":return!0;case"false":return!1;default:throw new Error(`Unable to parse boolean value "${e}"`)}},"parseBoolean"),Rz=z(e=>{if(e!=null){if(typeof e=="number"){if((e===0||e===1)&&Fi.warn(bc(`Expected boolean, got ${typeof e}: ${e}`)),e===0)return!1;if(e===1)return!0}if(typeof e=="string"){let t=e.toLowerCase();if((t==="false"||t==="true")&&Fi.warn(bc(`Expected boolean, got ${typeof e}: ${e}`)),t==="false")return!1;if(t==="true")return!0}if(typeof e=="boolean")return e;throw new TypeError(`Expected boolean, got ${typeof e}: ${e}`)}},"expectBoolean"),Di=z(e=>{if(e!=null){if(typeof e=="string"){let t=parseFloat(e);if(!Number.isNaN(t))return String(t)!==String(e)&&Fi.warn(bc(`Expected number but observed string: ${e}`)),t}if(typeof e=="number")return e;throw new TypeError(`Expected number, got ${typeof e}: ${e}`)}},"expectNumber"),Tz=Math.ceil(2**127*(2-2**-23)),Sc=z(e=>{let t=Di(e);if(t!==void 0&&!Number.isNaN(t)&&t!==1/0&&t!==-1/0&&Math.abs(t)>Tz)throw new TypeError(`Expected 32-bit float, got ${e}`);return t},"expectFloat32"),Mi=z(e=>{if(e!=null){if(Number.isInteger(e)&&!Number.isNaN(e))return e;throw new TypeError(`Expected integer, got ${typeof e}: ${e}`)}},"expectLong"),Bz=Mi,cp=z(e=>mp(e,32),"expectInt32"),dp=z(e=>mp(e,16),"expectShort"),lp=z(e=>mp(e,8),"expectByte"),mp=z((e,t)=>{let n=Mi(e);if(n!==void 0&&qz(n,t)!==n)throw new TypeError(`Expected ${t}-bit integer, got ${e}`);return n},"expectSizedInt"),qz=z((e,t)=>{switch(t){case 32:return Int32Array.of(e)[0];case 16:return Int16Array.of(e)[0];case 8:return Int8Array.of(e)[0]}},"castInt"),Dz=z((e,t)=>{if(e==null)throw t?new TypeError(`Expected a non-null value for ${t}`):new TypeError("Expected a non-null value");return e},"expectNonNull"),zE=z(e=>{if(e==null)return;if(typeof e=="object"&&!Array.isArray(e))return e;let t=Array.isArray(e)?"array":typeof e;throw new TypeError(`Expected object, got ${t}: ${e}`)},"expectObject"),Mz=z(e=>{if(e!=null){if(typeof e=="string")return e;if(["boolean","number","bigint"].includes(typeof e))return Fi.warn(bc(`Expected string, got ${typeof e}: ${e}`)),String(e);throw new TypeError(`Expected string, got ${typeof e}: ${e}`)}},"expectString"),Fz=z(e=>{if(e==null)return;let t=zE(e),n=Object.entries(t).filter(([,r])=>r!=null).map(([r])=>r);if(n.length===0)throw new TypeError("Unions must have exactly one non-null member. None were found.");if(n.length>1)throw new TypeError(`Unions must have exactly one non-null member. Keys ${n} were not null.`);return t},"expectUnion"),pp=z(e=>Di(typeof e=="string"?Or(e):e),"strictParseDouble"),Lz=pp,GE=z(e=>Sc(typeof e=="string"?Or(e):e),"strictParseFloat32"),jz=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,Or=z(e=>{let t=e.match(jz);if(t===null||t[0].length!==e.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(e)},"parseNumber"),fp=z(e=>typeof e=="string"?HE(e):Di(e),"limitedParseDouble"),Uz=fp,zz=fp,Gz=z(e=>typeof e=="string"?HE(e):Sc(e),"limitedParseFloat32"),HE=z(e=>{switch(e){case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-1/0;default:throw new Error(`Unable to parse float value: ${e}`)}},"parseFloatString"),$E=z(e=>Mi(typeof e=="string"?Or(e):e),"strictParseLong"),Hz=$E,$z=z(e=>cp(typeof e=="string"?Or(e):e),"strictParseInt32"),kr=z(e=>dp(typeof e=="string"?Or(e):e),"strictParseShort"),KE=z(e=>lp(typeof e=="string"?Or(e):e),"strictParseByte"),bc=z(e=>String(new TypeError(e).stack||e).split(` -`).slice(0,5).filter(t=>!t.includes("stackTraceWarning")).join(` -`),"stackTraceWarning"),Fi={warn:console.warn},Kz=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],yp=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function VE(e){let t=e.getUTCFullYear(),n=e.getUTCMonth(),r=e.getUTCDay(),o=e.getUTCDate(),s=e.getUTCHours(),a=e.getUTCMinutes(),i=e.getUTCSeconds(),u=o<10?`0${o}`:`${o}`,l=s<10?`0${s}`:`${s}`,c=a<10?`0${a}`:`${a}`,y=i<10?`0${i}`:`${i}`;return`${Kz[r]}, ${u} ${yp[n]} ${t} ${l}:${c}:${y} GMT`}z(VE,"dateToUtcString");var Vz=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),Xz=z(e=>{if(e==null)return;if(typeof e!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let t=Vz.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");let[n,r,o,s,a,i,u,l]=t,c=kr(Ar(r)),y=Rt(o,"month",1,12),g=Rt(s,"day",1,31);return qi(c,y,g,{hours:a,minutes:i,seconds:u,fractionalMilliseconds:l})},"parseRfc3339DateTime"),Wz=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),Yz=z(e=>{if(e==null)return;if(typeof e!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let t=Wz.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");let[n,r,o,s,a,i,u,l,c]=t,y=kr(Ar(r)),g=Rt(o,"month",1,12),C=Rt(s,"day",1,31),P=qi(y,g,C,{hours:a,minutes:i,seconds:u,fractionalMilliseconds:l});return c.toUpperCase()!="Z"&&P.setTime(P.getTime()-d3(c)),P},"parseRfc3339DateTimeWithOffset"),Jz=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),Qz=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),Zz=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),e3=z(e=>{if(e==null)return;if(typeof e!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let t=Jz.exec(e);if(t){let[n,r,o,s,a,i,u,l]=t;return qi(kr(Ar(s)),ip(o),Rt(r,"day",1,31),{hours:a,minutes:i,seconds:u,fractionalMilliseconds:l})}if(t=Qz.exec(e),t){let[n,r,o,s,a,i,u,l]=t;return o3(qi(n3(s),ip(o),Rt(r,"day",1,31),{hours:a,minutes:i,seconds:u,fractionalMilliseconds:l}))}if(t=Zz.exec(e),t){let[n,r,o,s,a,i,u,l]=t;return qi(kr(Ar(l)),ip(r),Rt(o.trimLeft(),"day",1,31),{hours:s,minutes:a,seconds:i,fractionalMilliseconds:u})}throw new TypeError("Invalid RFC-7231 date-time value")},"parseRfc7231DateTime"),t3=z(e=>{if(e==null)return;let t;if(typeof e=="number")t=e;else if(typeof e=="string")t=pp(e);else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(t)||t===1/0||t===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(t*1e3))},"parseEpochTimestamp"),qi=z((e,t,n,r)=>{let o=t-1;return i3(e,o,n),new Date(Date.UTC(e,o,n,Rt(r.hours,"hour",0,23),Rt(r.minutes,"minute",0,59),Rt(r.seconds,"seconds",0,60),c3(r.fractionalMilliseconds)))},"buildDate"),n3=z(e=>{let t=new Date().getUTCFullYear(),n=Math.floor(t/100)*100+kr(Ar(e));return ne.getTime()-new Date().getTime()>r3?new Date(Date.UTC(e.getUTCFullYear()-100,e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds())):e,"adjustRfc850Year"),ip=z(e=>{let t=yp.indexOf(e);if(t<0)throw new TypeError(`Invalid month: ${e}`);return t+1},"parseMonthByShortName"),s3=[31,28,31,30,31,30,31,31,30,31,30,31],i3=z((e,t,n)=>{let r=s3[t];if(t===1&&a3(e)&&(r=29),n>r)throw new TypeError(`Invalid day for ${yp[t]} in ${e}: ${n}`)},"validateDayOfMonth"),a3=z(e=>e%4===0&&(e%100!==0||e%400===0),"isLeapYear"),Rt=z((e,t,n,r)=>{let o=KE(Ar(e));if(or)throw new TypeError(`${t} must be between ${n} and ${r}, inclusive`);return o},"parseDateValue"),c3=z(e=>e==null?0:GE("0."+e)*1e3,"parseMilliseconds"),d3=z(e=>{let t=e[0],n=1;if(t=="+")n=1;else if(t=="-")n=-1;else throw new TypeError(`Offset direction, ${t}, must be "+" or "-"`);let r=Number(e.substring(1,3)),o=Number(e.substring(4,6));return n*(r*60+o)*60*1e3},"parseOffsetToMilliseconds"),Ar=z(e=>{let t=0;for(;t{Object.entries(t).filter(([,r])=>r!==void 0).forEach(([r,o])=>{(e[r]==null||e[r]==="")&&(e[r]=o)});let n=e.message||e.Message||"UnknownError";return e.message=n,delete e.Message,e},"decorateServiceException"),JE=z(({output:e,parsedBody:t,exceptionCtor:n,errorCode:r})=>{let o=m3(e),s=o.httpStatusCode?o.httpStatusCode+"":void 0,a=new n({name:(t==null?void 0:t.code)||(t==null?void 0:t.Code)||r||s||"UnknownError",$fault:"client",$metadata:o});throw YE(a,t)},"throwDefaultError"),u3=z(e=>({output:t,parsedBody:n,errorCode:r})=>{JE({output:t,parsedBody:n,exceptionCtor:e,errorCode:r})},"withBaseException"),m3=z(e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),"deserializeMetadata"),p3=z(e=>{switch(e){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:3e4};default:return{}}},"loadConfigsForDefaultMode"),BE=!1,f3=z(e=>{e&&!BE&&parseInt(e.substring(1,e.indexOf(".")))<14&&(BE=!0)},"emitWarningIfUnsupportedVersion"),y3=z(e=>{let t=[];for(let n in ap.AlgorithmId){let r=ap.AlgorithmId[n];e[r]!==void 0&&t.push({algorithmId:()=>r,checksumConstructor:()=>e[r]})}return{_checksumAlgorithms:t,addChecksumAlgorithm(n){this._checksumAlgorithms.push(n)},checksumAlgorithms(){return this._checksumAlgorithms}}},"getChecksumConfiguration"),g3=z(e=>{let t={};return e.checksumAlgorithms().forEach(n=>{t[n.algorithmId()]=n.checksumConstructor()}),t},"resolveChecksumRuntimeConfig"),h3=z(e=>{let t=e.retryStrategy;return{setRetryStrategy(n){t=n},retryStrategy(){return t}}},"getRetryConfiguration"),_3=z(e=>{let t={};return t.retryStrategy=e.retryStrategy(),t},"resolveRetryRuntimeConfig"),QE=z(e=>({...y3(e),...h3(e)}),"getDefaultExtensionConfiguration"),C3=QE,S3=z(e=>({...g3(e),..._3(e)}),"resolveDefaultRuntimeConfig");function Ec(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}z(Ec,"extendedEncodeURIComponent");var b3=z(e=>Array.isArray(e)?e:[e],"getArrayIfSingleItem"),ZE=z(e=>{let t="#text";for(let n in e)e.hasOwnProperty(n)&&e[n][t]!==void 0?e[n]=e[n][t]:typeof e[n]=="object"&&e[n]!==null&&(e[n]=ZE(e[n]));return e},"getValueFromTextNode"),Li=z(function(){let e=Object.getPrototypeOf(this).constructor,t=Function.bind.apply(String,[null,...arguments]),n=new t;return Object.setPrototypeOf(n,e.prototype),n},"StringWrapper");Li.prototype=Object.create(String.prototype,{constructor:{value:Li,enumerable:!1,writable:!0,configurable:!0}});Object.setPrototypeOf(Li,String);var eP=class Cc extends Li{deserializeJSON(){return JSON.parse(super.toString())}toJSON(){return super.toString()}static fromObject(t){return t instanceof Cc?t:t instanceof String||typeof t=="string"?new Cc(t):new Cc(JSON.stringify(t))}};z(eP,"LazyJsonString");var E3=eP;function gp(e,t,n){let r,o,s;if(typeof t>"u"&&typeof n>"u")r={},s=e;else{if(r=e,typeof t=="function")return o=t,s=n,w3(r,o,s);s=t}for(let a of Object.keys(s)){if(!Array.isArray(s[a])){r[a]=s[a];continue}tP(r,null,s,a)}return r}z(gp,"map");var P3=z(e=>{let t={};for(let[n,r]of Object.entries(e||{}))t[n]=[,r];return t},"convertMap"),v3=z((e,t)=>{let n={};for(let r in t)tP(n,e,t,r);return n},"take"),w3=z((e,t,n)=>gp(e,Object.entries(n).reduce((r,[o,s])=>(Array.isArray(s)?r[o]=s:typeof s=="function"?r[o]=[t,s()]:r[o]=[t,s],r),{})),"mapWithFilter"),tP=z((e,t,n,r)=>{if(t!==null){let a=n[r];typeof a=="function"&&(a=[,a]);let[i=x3,u=k3,l=r]=a;(typeof i=="function"&&i(t[l])||typeof i!="function"&&i)&&(e[r]=u(t[l]));return}let[o,s]=n[r];if(typeof s=="function"){let a,i=o===void 0&&(a=s())!=null,u=typeof o=="function"&&!!o(void 0)||typeof o!="function"&&!!o;i?e[r]=a:u&&(e[r]=s())}else{let a=o===void 0&&s!=null,i=typeof o=="function"&&!!o(s)||typeof o!="function"&&!!o;(a||i)&&(e[r]=s)}},"applyInstruction"),x3=z(e=>e!=null,"nonNullish"),k3=z(e=>e,"pass"),A3=z((e,t,n,r,o,s)=>{if(t!=null&&t[n]!==void 0){let a=r();if(a.length<=0)throw new Error("Empty value provided for input HTTP label: "+n+".");e=e.replace(o,s?a.split("/").map(i=>Ec(i)).join("/"):Ec(a))}else throw new Error("No value provided for input HTTP label: "+n+".");return e},"resolvedPath"),O3=z(e=>{if(e!==e)return"NaN";switch(e){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return e}},"serializeFloat"),up=z(e=>{if(e==null)return{};if(Array.isArray(e))return e.filter(t=>t!=null).map(up);if(typeof e=="object"){let t={};for(let n of Object.keys(e))e[n]!=null&&(t[n]=up(e[n]));return t}return e},"_json");function nP(e,t,n){if(n<=0||!Number.isInteger(n))throw new Error("Invalid number of delimiters ("+n+") for splitEvery.");let r=e.split(t);if(n===1)return r;let o=[],s="";for(let a=0;a{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.getCheckContentLengthHeaderPlugin=en.checkContentLengthHeaderMiddlewareOptions=en.checkContentLengthHeader=void 0;var N3=Ne(),I3=b(),R3="content-length";function oP(){return(e,t)=>async n=>{var r;let{request:o}=n;if(N3.HttpRequest.isInstance(o)&&!o.headers[R3]){let s="Are you using a Stream of unknown length as the Body of a PutObject request? Consider using Upload instead from @aws-sdk/lib-storage.";typeof((r=t==null?void 0:t.logger)===null||r===void 0?void 0:r.warn)=="function"&&!(t.logger instanceof I3.NoOpLogger)?t.logger.warn(s):console.warn(s)}return e({...n})}}en.checkContentLengthHeader=oP;en.checkContentLengthHeaderMiddlewareOptions={step:"finalizeRequest",tags:["CHECK_CONTENT_LENGTH_HEADER"],name:"getCheckContentLengthHeaderPlugin",override:!0};var T3=e=>({applyToStack:t=>{t.add(oP(),en.checkContentLengthHeaderMiddlewareOptions)}});en.getCheckContentLengthHeaderPlugin=T3});var iP=m(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.resolveS3Config=void 0;var B3=e=>{var t,n,r;return{...e,forcePathStyle:(t=e.forcePathStyle)!==null&&t!==void 0?t:!1,useAccelerateEndpoint:(n=e.useAccelerateEndpoint)!==null&&n!==void 0?n:!1,disableMultiregionAccessPoints:(r=e.disableMultiregionAccessPoints)!==null&&r!==void 0?r:!1}};vc.resolveS3Config=B3});var cP=m(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.getThrow200ExceptionsPlugin=Tt.throw200ExceptionsMiddlewareOptions=Tt.throw200ExceptionsMiddleware=void 0;var q3=Ne(),D3=e=>t=>async n=>{let r=await t(n),{response:o}=r;if(!q3.HttpResponse.isInstance(o))return r;let{statusCode:s,body:a}=o;if(s<200||s>=300)return r;let i=await aP(a,e),u=await M3(i,e);if(i.length===0){let l=new Error("S3 aborted request");throw l.name="InternalError",l}return u&&u.match("")&&(o.statusCode=400),o.body=i,r};Tt.throw200ExceptionsMiddleware=D3;var aP=(e=new Uint8Array,t)=>e instanceof Uint8Array?Promise.resolve(e):t.streamCollector(e)||Promise.resolve(new Uint8Array),M3=(e,t)=>aP(e,t).then(n=>t.utf8Encoder(n));Tt.throw200ExceptionsMiddlewareOptions={relation:"after",toMiddleware:"deserializerMiddleware",tags:["THROW_200_EXCEPTIONS","S3"],name:"throw200ExceptionsMiddleware",override:!0};var F3=e=>({applyToStack:t=>{t.addRelativeTo((0,Tt.throw200ExceptionsMiddleware)(e),Tt.throw200ExceptionsMiddlewareOptions)}});Tt.getThrow200ExceptionsPlugin=F3});var hp=m(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.build=kn.parse=kn.validate=void 0;var L3=e=>typeof e=="string"&&e.indexOf("arn:")===0&&e.split(":").length>=6;kn.validate=L3;var j3=e=>{let t=e.split(":");if(t.length<6||t[0]!=="arn")throw new Error("Malformed ARN");let[,n,r,o,s,...a]=t;return{partition:n,service:r,region:o,accountId:s,resource:a.join(":")}};kn.parse=j3;var U3=e=>{let{partition:t="aws",service:n,region:r,accountId:o,resource:s}=e;if([n,r,o,s].some(a=>typeof a!="string"))throw new Error("Input ARN object is invalid");return`arn:${t}:${n}:${r}:${o}:${s}`};kn.build=U3});var lP=m(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.getValidateBucketNamePlugin=tn.validateBucketNameMiddlewareOptions=tn.validateBucketNameMiddleware=void 0;var z3=hp();function dP(){return e=>async t=>{let{input:{Bucket:n}}=t;if(typeof n=="string"&&!(0,z3.validate)(n)&&n.indexOf("/")>=0){let r=new Error(`Bucket name shouldn't contain '/', received '${n}'`);throw r.name="InvalidBucketName",r}return e({...t})}}tn.validateBucketNameMiddleware=dP;tn.validateBucketNameMiddlewareOptions={step:"initialize",tags:["VALIDATE_BUCKET_NAME"],name:"validateBucketNameMiddleware",override:!0};var G3=e=>({applyToStack:t=>{t.add(dP(),tn.validateBucketNameMiddlewareOptions)}});tn.getValidateBucketNamePlugin=G3});var Ir=m(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});var wc=(ne(),J(te));wc.__exportStar(sP(),Nr);wc.__exportStar(iP(),Nr);wc.__exportStar(cP(),Nr);wc.__exportStar(lP(),Nr)});var xe=m((sEe,_P)=>{var xc=Object.defineProperty,H3=Object.getOwnPropertyDescriptor,$3=Object.getOwnPropertyNames,K3=Object.prototype.hasOwnProperty,ar=(e,t)=>xc(e,"name",{value:t,configurable:!0}),V3=(e,t)=>{for(var n in t)xc(e,n,{get:t[n],enumerable:!0})},X3=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of $3(t))!K3.call(e,o)&&o!==n&&xc(e,o,{get:()=>t[o],enumerable:!(r=H3(t,o))||r.enumerable});return e},W3=e=>X3(xc({},"__esModule",{value:!0}),e),uP={};V3(uP,{CredentialsProviderError:()=>Y3,ProviderError:()=>kc,TokenProviderError:()=>J3,chain:()=>Q3,fromStatic:()=>Z3,memoize:()=>eG});_P.exports=W3(uP);var mP=class pP extends Error{constructor(t,n=!0){super(t),this.tryNextLink=n,this.name="ProviderError",Object.setPrototypeOf(this,pP.prototype)}static from(t,n=!0){return Object.assign(new this(t.message,n),t)}};ar(mP,"ProviderError");var kc=mP,fP=class yP extends kc{constructor(t,n=!0){super(t,n),this.tryNextLink=n,this.name="CredentialsProviderError",Object.setPrototypeOf(this,yP.prototype)}};ar(fP,"CredentialsProviderError");var Y3=fP,gP=class hP extends kc{constructor(t,n=!0){super(t,n),this.tryNextLink=n,this.name="TokenProviderError",Object.setPrototypeOf(this,hP.prototype)}};ar(gP,"TokenProviderError");var J3=gP,Q3=ar((...e)=>async()=>{if(e.length===0)throw new kc("No providers in chain");let t;for(let n of e)try{return await n()}catch(r){if(t=r,r!=null&&r.tryNextLink)continue;throw r}throw t},"chain"),Z3=ar(e=>()=>Promise.resolve(e),"fromStatic"),eG=ar((e,t,n)=>{let r,o,s,a=!1,i=ar(async()=>{o||(o=e());try{r=await o,s=!0,a=!1}finally{o=void 0}return r},"coalesceProvider");return t===void 0?async u=>((!s||u!=null&&u.forceRefresh)&&(r=await i()),r):async u=>((!s||u!=null&&u.forceRefresh)&&(r=await i()),a?r:n&&!n(r)?(a=!0,r):(t(r)&&await i(),r))},"memoize")});var Rr=m((iEe,EP)=>{var Ac=Object.defineProperty,tG=Object.getOwnPropertyDescriptor,nG=Object.getOwnPropertyNames,rG=Object.prototype.hasOwnProperty,SP=(e,t)=>Ac(e,"name",{value:t,configurable:!0}),oG=(e,t)=>{for(var n in t)Ac(e,n,{get:t[n],enumerable:!0})},sG=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of nG(t))!rG.call(e,o)&&o!==n&&Ac(e,o,{get:()=>t[o],enumerable:!(r=tG(t,o))||r.enumerable});return e},iG=e=>sG(Ac({},"__esModule",{value:!0}),e),bP={};oG(bP,{getSmithyContext:()=>aG,normalizeProvider:()=>cG});EP.exports=iG(bP);var CP=w(),aG=SP(e=>e[CP.SMITHY_CONTEXT_KEY]||(e[CP.SMITHY_CONTEXT_KEY]={}),"getSmithyContext"),cG=SP(e=>{if(typeof e=="function")return e;let t=Promise.resolve(e);return()=>t},"normalizeProvider")});var Cp=m((aEe,AP)=>{var Oc=Object.defineProperty,dG=Object.getOwnPropertyDescriptor,lG=Object.getOwnPropertyNames,uG=Object.prototype.hasOwnProperty,PP=(e,t)=>Oc(e,"name",{value:t,configurable:!0}),mG=(e,t)=>{for(var n in t)Oc(e,n,{get:t[n],enumerable:!0})},pG=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of lG(t))!uG.call(e,o)&&o!==n&&Oc(e,o,{get:()=>t[o],enumerable:!(r=dG(t,o))||r.enumerable});return e},fG=e=>pG(Oc({},"__esModule",{value:!0}),e),vP={};mG(vP,{fromHex:()=>xP,toHex:()=>kP});AP.exports=fG(vP);var wP={},_p={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();t.length===1&&(t=`0${t}`),wP[e]=t,_p[t]=e}function xP(e){if(e.length%2!==0)throw new Error("Hex encoded strings must have an even number length");let t=new Uint8Array(e.length/2);for(let n=0;n{var Bc=Object.defineProperty,yG=Object.getOwnPropertyDescriptor,gG=Object.getOwnPropertyNames,hG=Object.prototype.hasOwnProperty,Te=(e,t)=>Bc(e,"name",{value:t,configurable:!0}),_G=(e,t)=>{for(var n in t)Bc(e,n,{get:t[n],enumerable:!0})},CG=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of gG(t))!hG.call(e,o)&&o!==n&&Bc(e,o,{get:()=>t[o],enumerable:!(r=yG(t,o))||r.enumerable});return e},SG=e=>CG(Bc({},"__esModule",{value:!0}),e),TP={};_G(TP,{SignatureV4:()=>VG,clearCredentialCache:()=>MG,createScope:()=>Rc,getCanonicalHeaders:()=>Pp,getCanonicalQuery:()=>UP,getPayloadHash:()=>Tc,getSigningKey:()=>jP,moveHeadersToQuery:()=>KP,prepareRequest:()=>wp});XP.exports=SG(TP);var OP=Rr(),Sp=st(),bG="X-Amz-Algorithm",EG="X-Amz-Credential",BP="X-Amz-Date",PG="X-Amz-SignedHeaders",vG="X-Amz-Expires",qP="X-Amz-Signature",DP="X-Amz-Security-Token",MP="authorization",FP=BP.toLowerCase(),wG="date",xG=[MP,FP,wG],kG=qP.toLowerCase(),Ep="x-amz-content-sha256",AG=DP.toLowerCase(),OG={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},NG=/^proxy-/,IG=/^sec-/,bp="AWS4-HMAC-SHA256",RG="AWS4-HMAC-SHA256-PAYLOAD",TG="UNSIGNED-PAYLOAD",BG=50,LP="aws4_request",qG=60*60*24*7,An=Cp(),DG=st(),Tr={},Ic=[],Rc=Te((e,t,n)=>`${e}/${t}/${n}/${LP}`,"createScope"),jP=Te(async(e,t,n,r,o)=>{let s=await NP(e,t.secretAccessKey,t.accessKeyId),a=`${n}:${r}:${o}:${(0,An.toHex)(s)}:${t.sessionToken}`;if(a in Tr)return Tr[a];for(Ic.push(a);Ic.length>BG;)delete Tr[Ic.shift()];let i=`AWS4${t.secretAccessKey}`;for(let u of[n,r,o,LP])i=await NP(e,i,u);return Tr[a]=i},"getSigningKey"),MG=Te(()=>{Ic.length=0,Object.keys(Tr).forEach(e=>{delete Tr[e]})},"clearCredentialCache"),NP=Te((e,t,n)=>{let r=new e(t);return r.update((0,DG.toUint8Array)(n)),r.digest()},"hmac"),Pp=Te(({headers:e},t,n)=>{let r={};for(let o of Object.keys(e).sort()){if(e[o]==null)continue;let s=o.toLowerCase();(s in OG||t!=null&&t.has(s)||NG.test(s)||IG.test(s))&&(!n||n&&!n.has(s))||(r[s]=e[o].trim().replace(/\s+/g," "))}return r},"getCanonicalHeaders"),ji=Xm(),UP=Te(({query:e={}})=>{let t=[],n={};for(let r of Object.keys(e).sort()){if(r.toLowerCase()===kG)continue;t.push(r);let o=e[r];typeof o=="string"?n[r]=`${(0,ji.escapeUri)(r)}=${(0,ji.escapeUri)(o)}`:Array.isArray(o)&&(n[r]=o.slice(0).reduce((s,a)=>s.concat([`${(0,ji.escapeUri)(r)}=${(0,ji.escapeUri)(a)}`]),[]).sort().join("&"))}return t.map(r=>n[r]).filter(r=>r).join("&")},"getCanonicalQuery"),FG=ic(),LG=st(),Tc=Te(async({headers:e,body:t},n)=>{for(let r of Object.keys(e))if(r.toLowerCase()===Ep)return e[r];if(t==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof t=="string"||ArrayBuffer.isView(t)||(0,FG.isArrayBuffer)(t)){let r=new n;return r.update((0,LG.toUint8Array)(t)),(0,An.toHex)(await r.digest())}return TG},"getPayloadHash"),IP=st(),zP=class{format(t){let n=[];for(let s of Object.keys(t)){let a=(0,IP.fromUtf8)(s);n.push(Uint8Array.from([a.byteLength]),a,this.formatHeaderValue(t[s]))}let r=new Uint8Array(n.reduce((s,a)=>s+a.byteLength,0)),o=0;for(let s of n)r.set(s,o),o+=s.byteLength;return r}formatHeaderValue(t){switch(t.type){case"boolean":return Uint8Array.from([t.value?0:1]);case"byte":return Uint8Array.from([2,t.value]);case"short":let n=new DataView(new ArrayBuffer(3));return n.setUint8(0,3),n.setInt16(1,t.value,!1),new Uint8Array(n.buffer);case"integer":let r=new DataView(new ArrayBuffer(5));return r.setUint8(0,4),r.setInt32(1,t.value,!1),new Uint8Array(r.buffer);case"long":let o=new Uint8Array(9);return o[0]=5,o.set(t.value.bytes,1),o;case"binary":let s=new DataView(new ArrayBuffer(3+t.value.byteLength));s.setUint8(0,6),s.setUint16(1,t.value.byteLength,!1);let a=new Uint8Array(s.buffer);return a.set(t.value,3),a;case"string":let i=(0,IP.fromUtf8)(t.value),u=new DataView(new ArrayBuffer(3+i.byteLength));u.setUint8(0,7),u.setUint16(1,i.byteLength,!1);let l=new Uint8Array(u.buffer);return l.set(i,3),l;case"timestamp":let c=new Uint8Array(9);return c[0]=8,c.set(zG.fromNumber(t.value.valueOf()).bytes,1),c;case"uuid":if(!UG.test(t.value))throw new Error(`Invalid UUID received: ${t.value}`);let y=new Uint8Array(17);return y[0]=9,y.set((0,An.fromHex)(t.value.replace(/\-/g,"")),1),y}}};Te(zP,"HeaderFormatter");var jG=zP,UG=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/,GP=class HP{constructor(t){if(this.bytes=t,t.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(t){if(t>9223372036854776e3||t<-9223372036854776e3)throw new Error(`${t} is too large (or, if negative, too small) to represent as an Int64`);let n=new Uint8Array(8);for(let r=7,o=Math.abs(Math.round(t));r>-1&&o>0;r--,o/=256)n[r]=o;return t<0&&vp(n),new HP(n)}valueOf(){let t=this.bytes.slice(0),n=t[0]&128;return n&&vp(t),parseInt((0,An.toHex)(t),16)*(n?-1:1)}toString(){return String(this.valueOf())}};Te(GP,"Int64");var zG=GP;function vp(e){for(let t=0;t<8;t++)e[t]^=255;for(let t=7;t>-1&&(e[t]++,e[t]===0);t--);}Te(vp,"negate");var GG=Te((e,t)=>{e=e.toLowerCase();for(let n of Object.keys(t))if(e===n.toLowerCase())return!0;return!1},"hasHeader"),$P=Te(({headers:e,query:t,...n})=>({...n,headers:{...e},query:t?HG(t):void 0}),"cloneRequest"),HG=Te(e=>Object.keys(e).reduce((t,n)=>{let r=e[n];return{...t,[n]:Array.isArray(r)?[...r]:r}},{}),"cloneQuery"),KP=Te((e,t={})=>{var n;let{headers:r,query:o={}}=typeof e.clone=="function"?e.clone():$P(e);for(let s of Object.keys(r)){let a=s.toLowerCase();a.slice(0,6)==="x-amz-"&&!((n=t.unhoistableHeaders)!=null&&n.has(a))&&(o[s]=r[s],delete r[s])}return{...e,headers:r,query:o}},"moveHeadersToQuery"),wp=Te(e=>{e=typeof e.clone=="function"?e.clone():$P(e);for(let t of Object.keys(e.headers))xG.indexOf(t.toLowerCase())>-1&&delete e.headers[t];return e},"prepareRequest"),$G=Te(e=>KG(e).toISOString().replace(/\.\d{3}Z$/,"Z"),"iso8601"),KG=Te(e=>typeof e=="number"?new Date(e*1e3):typeof e=="string"?Number(e)?new Date(Number(e)*1e3):new Date(e):e,"toDate"),VP=class{constructor({applyChecksum:t,credentials:n,region:r,service:o,sha256:s,uriEscapePath:a=!0}){this.headerFormatter=new jG,this.service=o,this.sha256=s,this.uriEscapePath=a,this.applyChecksum=typeof t=="boolean"?t:!0,this.regionProvider=(0,OP.normalizeProvider)(r),this.credentialProvider=(0,OP.normalizeProvider)(n)}async presign(t,n={}){let{signingDate:r=new Date,expiresIn:o=3600,unsignableHeaders:s,unhoistableHeaders:a,signableHeaders:i,signingRegion:u,signingService:l}=n,c=await this.credentialProvider();this.validateResolvedCredentials(c);let y=u??await this.regionProvider(),{longDate:g,shortDate:C}=Nc(r);if(o>qG)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");let P=Rc(C,y,l??this.service),A=KP(wp(t),{unhoistableHeaders:a});c.sessionToken&&(A.query[DP]=c.sessionToken),A.query[bG]=bp,A.query[EG]=`${c.accessKeyId}/${P}`,A.query[BP]=g,A.query[vG]=o.toString(10);let v=Pp(A,s,i);return A.query[PG]=RP(v),A.query[qP]=await this.getSignature(g,P,this.getSigningKey(c,y,C,l),this.createCanonicalRequest(A,v,await Tc(t,this.sha256))),A}async sign(t,n){return typeof t=="string"?this.signString(t,n):t.headers&&t.payload?this.signEvent(t,n):t.message?this.signMessage(t,n):this.signRequest(t,n)}async signEvent({headers:t,payload:n},{signingDate:r=new Date,priorSignature:o,signingRegion:s,signingService:a}){let i=s??await this.regionProvider(),{shortDate:u,longDate:l}=Nc(r),c=Rc(u,i,a??this.service),y=await Tc({headers:{},body:n},this.sha256),g=new this.sha256;g.update(t);let C=(0,An.toHex)(await g.digest()),P=[RG,l,c,o,C,y].join(` -`);return this.signString(P,{signingDate:r,signingRegion:i,signingService:a})}async signMessage(t,{signingDate:n=new Date,signingRegion:r,signingService:o}){return this.signEvent({headers:this.headerFormatter.format(t.message.headers),payload:t.message.body},{signingDate:n,signingRegion:r,signingService:o,priorSignature:t.priorSignature}).then(a=>({message:t.message,signature:a}))}async signString(t,{signingDate:n=new Date,signingRegion:r,signingService:o}={}){let s=await this.credentialProvider();this.validateResolvedCredentials(s);let a=r??await this.regionProvider(),{shortDate:i}=Nc(n),u=new this.sha256(await this.getSigningKey(s,a,i,o));return u.update((0,Sp.toUint8Array)(t)),(0,An.toHex)(await u.digest())}async signRequest(t,{signingDate:n=new Date,signableHeaders:r,unsignableHeaders:o,signingRegion:s,signingService:a}={}){let i=await this.credentialProvider();this.validateResolvedCredentials(i);let u=s??await this.regionProvider(),l=wp(t),{longDate:c,shortDate:y}=Nc(n),g=Rc(y,u,a??this.service);l.headers[FP]=c,i.sessionToken&&(l.headers[AG]=i.sessionToken);let C=await Tc(l,this.sha256);!GG(Ep,l.headers)&&this.applyChecksum&&(l.headers[Ep]=C);let P=Pp(l,o,r),A=await this.getSignature(c,g,this.getSigningKey(i,u,y,a),this.createCanonicalRequest(l,P,C));return l.headers[MP]=`${bp} Credential=${i.accessKeyId}/${g}, SignedHeaders=${RP(P)}, Signature=${A}`,l}createCanonicalRequest(t,n,r){let o=Object.keys(n).sort();return`${t.method} -${this.getCanonicalPath(t)} -${UP(t)} -${o.map(s=>`${s}:${n[s]}`).join(` -`)} - -${o.join(";")} -${r}`}async createStringToSign(t,n,r){let o=new this.sha256;o.update((0,Sp.toUint8Array)(r));let s=await o.digest();return`${bp} -${t} -${n} -${(0,An.toHex)(s)}`}getCanonicalPath({path:t}){if(this.uriEscapePath){let n=[];for(let s of t.split("/"))(s==null?void 0:s.length)!==0&&s!=="."&&(s===".."?n.pop():n.push(s));let r=`${t!=null&&t.startsWith("/")?"/":""}${n.join("/")}${n.length>0&&(t!=null&&t.endsWith("/"))?"/":""}`;return(0,ji.escapeUri)(r).replace(/%2F/g,"/")}return t}async getSignature(t,n,r,o){let s=await this.createStringToSign(t,n,o),a=new this.sha256(await r);return a.update((0,Sp.toUint8Array)(s)),(0,An.toHex)(await a.digest())}getSigningKey(t,n,r,o){return jP(this.sha256,t,r,n,o||this.service)}validateResolvedCredentials(t){if(typeof t!="object"||typeof t.accessKeyId!="string"||typeof t.secretAccessKey!="string")throw new Error("Resolved credential object is not valid")}};Te(VP,"SignatureV4");var VG=VP,Nc=Te(e=>{let t=$G(e).replace(/[\-:]/g,"");return{longDate:t,shortDate:t.slice(0,8)}},"formatDate"),RP=Te(e=>Object.keys(e).sort().join(";"),"getCanonicalHeaderList")});var YP=m(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.resolveSigV4AuthConfig=qr.resolveAwsAuthConfig=void 0;var XG=xe(),kp=xp(),Br=Rr(),WG=3e5,YG=e=>{let t=e.credentials?WP(e.credentials):e.credentialDefaultProvider(e),{signingEscapePath:n=!0,systemClockOffset:r=e.systemClockOffset||0,sha256:o}=e,s;return e.signer?s=(0,Br.normalizeProvider)(e.signer):e.regionInfoProvider?s=()=>(0,Br.normalizeProvider)(e.region)().then(async a=>[await e.regionInfoProvider(a,{useFipsEndpoint:await e.useFipsEndpoint(),useDualstackEndpoint:await e.useDualstackEndpoint()})||{},a]).then(([a,i])=>{let{signingRegion:u,signingService:l}=a;e.signingRegion=e.signingRegion||u||i,e.signingName=e.signingName||l||e.serviceId;let c={...e,credentials:t,region:e.signingRegion,service:e.signingName,sha256:o,uriEscapePath:n},y=e.signerConstructor||kp.SignatureV4;return new y(c)}):s=async a=>{a=Object.assign({},{name:"sigv4",signingName:e.signingName||e.defaultSigningName,signingRegion:await(0,Br.normalizeProvider)(e.region)(),properties:{}},a);let i=a.signingRegion,u=a.signingName;e.signingRegion=e.signingRegion||i,e.signingName=e.signingName||u||e.serviceId;let l={...e,credentials:t,region:e.signingRegion,service:e.signingName,sha256:o,uriEscapePath:n},c=e.signerConstructor||kp.SignatureV4;return new c(l)},{...e,systemClockOffset:r,signingEscapePath:n,credentials:t,signer:s}};qr.resolveAwsAuthConfig=YG;var JG=e=>{let t=e.credentials?WP(e.credentials):e.credentialDefaultProvider(e),{signingEscapePath:n=!0,systemClockOffset:r=e.systemClockOffset||0,sha256:o}=e,s;return e.signer?s=(0,Br.normalizeProvider)(e.signer):s=(0,Br.normalizeProvider)(new kp.SignatureV4({credentials:t,region:e.region,service:e.signingName,sha256:o,uriEscapePath:n})),{...e,systemClockOffset:r,signingEscapePath:n,credentials:t,signer:s}};qr.resolveSigV4AuthConfig=JG;var WP=e=>typeof e=="function"?(0,XG.memoize)(e,t=>t.expiration!==void 0&&t.expiration.getTime()-Date.now()t.expiration!==void 0):(0,Br.normalizeProvider)(e)});var Ap=m(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.getSkewCorrectedDate=void 0;var QG=e=>new Date(Date.now()+e);qc.getSkewCorrectedDate=QG});var JP=m(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});Dc.isClockSkewed=void 0;var ZG=Ap(),e2=(e,t)=>Math.abs((0,ZG.getSkewCorrectedDate)(t).getTime()-e)>=3e5;Dc.isClockSkewed=e2});var QP=m(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.getUpdatedSystemClockOffset=void 0;var t2=JP(),n2=(e,t)=>{let n=Date.parse(e);return(0,t2.isClockSkewed)(n,t)?n-Date.now():t};Mc.getUpdatedSystemClockOffset=n2});var n0=m(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.getSigV4AuthPlugin=dt.getAwsAuthPlugin=dt.awsAuthMiddlewareOptions=dt.awsAuthMiddleware=void 0;var t0=Ne(),r2=Ap(),ZP=QP(),o2=e=>(t,n)=>async function(r){var o,s,a,i;if(!t0.HttpRequest.isInstance(r.request))return t(r);let u=(a=(s=(o=n.endpointV2)===null||o===void 0?void 0:o.properties)===null||s===void 0?void 0:s.authSchemes)===null||a===void 0?void 0:a[0],l=(u==null?void 0:u.name)==="sigv4a"?(i=u==null?void 0:u.signingRegionSet)===null||i===void 0?void 0:i.join(","):void 0,c=await e.signer(u),y=await t({...r,request:await c.sign(r.request,{signingDate:(0,r2.getSkewCorrectedDate)(e.systemClockOffset),signingRegion:l||n.signing_region,signingService:n.signing_service})}).catch(C=>{var P;let A=(P=C.ServerTime)!==null&&P!==void 0?P:e0(C.$response);throw A&&(e.systemClockOffset=(0,ZP.getUpdatedSystemClockOffset)(A,e.systemClockOffset)),C}),g=e0(y.response);return g&&(e.systemClockOffset=(0,ZP.getUpdatedSystemClockOffset)(g,e.systemClockOffset)),y};dt.awsAuthMiddleware=o2;var e0=e=>{var t,n,r;return t0.HttpResponse.isInstance(e)?(n=(t=e.headers)===null||t===void 0?void 0:t.date)!==null&&n!==void 0?n:(r=e.headers)===null||r===void 0?void 0:r.Date:void 0};dt.awsAuthMiddlewareOptions={name:"awsAuthMiddleware",tags:["SIGNATURE","AWSAUTH"],relation:"after",toMiddleware:"retryMiddleware",override:!0};var s2=e=>({applyToStack:t=>{t.addRelativeTo((0,dt.awsAuthMiddleware)(e),dt.awsAuthMiddlewareOptions)}});dt.getAwsAuthPlugin=s2;dt.getSigV4AuthPlugin=dt.getAwsAuthPlugin});var nn=m(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});var r0=(ne(),J(te));r0.__exportStar(YP(),Fc);r0.__exportStar(n0(),Fc)});var o0=m(Lc=>{"use strict";Object.defineProperty(Lc,"__esModule",{value:!0});Lc.resolveUserAgentConfig=void 0;function i2(e){return{...e,customUserAgent:typeof e.customUserAgent=="string"?[[e.customUserAgent]]:e.customUserAgent}}Lc.resolveUserAgentConfig=i2});var s0=m((_Ee,a2)=>{a2.exports={partitions:[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"aws-global":{description:"AWS Standard global region"},"ca-central-1":{description:"Canada (Central)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"AWS China global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"AWS GovCloud (US) global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"c2s.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!1,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"AWS ISO (US) global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"sc2s.sgov.gov",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!1,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"AWS ISOB (US) global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"cloud.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!1,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"csp.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!1,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{}}],version:"1.1"}});var Op=m(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.getUserAgentPrefix=Pt.useDefaultPartitionInfo=Pt.setPartitionInfo=Pt.partition=void 0;var c2=(ne(),J(te)),i0=c2.__importDefault(s0()),a0=i0.default,c0="",d2=e=>{let{partitions:t}=a0;for(let r of t){let{regions:o,outputs:s}=r;for(let[a,i]of Object.entries(o))if(a===e)return{...s,...i}}for(let r of t){let{regionRegex:o,outputs:s}=r;if(new RegExp(o).test(e))return{...s}}let n=t.find(r=>r.id==="aws");if(!n)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...n.outputs}};Pt.partition=d2;var l2=(e,t="")=>{a0=e,c0=t};Pt.setPartitionInfo=l2;var u2=()=>{(0,Pt.setPartitionInfo)(i0.default,"")};Pt.useDefaultPartitionInfo=u2;var m2=()=>c0;Pt.getUserAgentPrefix=m2});var Uc=m(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.isIpAddress=void 0;var p2=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),f2=e=>p2.test(e)||e.startsWith("[")&&e.endsWith("]");jc.isIpAddress=f2});var d0=m(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});zc.debugId=void 0;zc.debugId="endpoints"});var l0=m(Gc=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});Gc.toDebugString=void 0;function Np(e){return typeof e!="object"||e==null?e:"ref"in e?`$${Np(e.ref)}`:"fn"in e?`${e.fn}(${(e.argv||[]).map(Np).join(", ")})`:JSON.stringify(e,null,2)}Gc.toDebugString=Np});var Ui=m(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var u0=(ne(),J(te));u0.__exportStar(d0(),Hc);u0.__exportStar(l0(),Hc)});var m0=m($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.EndpointError=void 0;var Ip=class extends Error{constructor(t){super(t),this.name="EndpointError"}};$c.EndpointError=Ip});var f0=m(p0=>{"use strict";Object.defineProperty(p0,"__esModule",{value:!0})});var g0=m(y0=>{"use strict";Object.defineProperty(y0,"__esModule",{value:!0})});var _0=m(h0=>{"use strict";Object.defineProperty(h0,"__esModule",{value:!0})});var S0=m(C0=>{"use strict";Object.defineProperty(C0,"__esModule",{value:!0})});var E0=m(b0=>{"use strict";Object.defineProperty(b0,"__esModule",{value:!0})});var gt=m(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});var Dr=(ne(),J(te));Dr.__exportStar(m0(),On);Dr.__exportStar(f0(),On);Dr.__exportStar(g0(),On);Dr.__exportStar(_0(),On);Dr.__exportStar(S0(),On);Dr.__exportStar(E0(),On)});var Rp=m(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.isValidHostLabel=void 0;var y2=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),g2=(e,t=!1)=>{if(!t)return y2.test(e);let n=e.split(".");for(let r of n)if(!(0,zi.isValidHostLabel)(r))return!1;return!0};zi.isValidHostLabel=g2});var P0=m(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.isVirtualHostableS3Bucket=void 0;var h2=Uc(),_2=Rp(),C2=(e,t=!1)=>{if(t){for(let n of e.split("."))if(!(0,Gi.isVirtualHostableS3Bucket)(n))return!1;return!0}return!(!(0,_2.isValidHostLabel)(e)||e.length<3||e.length>63||e!==e.toLowerCase()||(0,h2.isIpAddress)(e))};Gi.isVirtualHostableS3Bucket=C2});var v0=m(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.parseArn=void 0;var S2=e=>{let t=e.split(":");if(t.length<6)return null;let[n,r,o,s,a,...i]=t;return n!=="arn"||r===""||o===""||i[0]===""?null:{partition:r,service:o,region:s,accountId:a,resourceId:i[0].includes("/")?i[0].split("/"):i}};Kc.parseArn=S2});var w0=m(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});var Tp=(ne(),J(te));Tp.__exportStar(P0(),Hi);Tp.__exportStar(v0(),Hi);Tp.__exportStar(Op(),Hi)});var x0=m(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.booleanEquals=void 0;var b2=(e,t)=>e===t;Vc.booleanEquals=b2});var A0=m(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.getAttrPathList=void 0;var k0=gt(),E2=e=>{let t=e.split("."),n=[];for(let r of t){let o=r.indexOf("[");if(o!==-1){if(r.indexOf("]")!==r.length-1)throw new k0.EndpointError(`Path: '${e}' does not end with ']'`);let s=r.slice(o+1,-1);if(Number.isNaN(parseInt(s)))throw new k0.EndpointError(`Invalid array index: '${s}' in path: '${e}'`);o!==0&&n.push(r.slice(0,o)),n.push(s)}else n.push(r)}return n};Xc.getAttrPathList=E2});var O0=m(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.getAttr=void 0;var P2=gt(),v2=A0(),w2=(e,t)=>(0,v2.getAttrPathList)(t).reduce((n,r)=>{if(typeof n!="object")throw new P2.EndpointError(`Index '${r}' in '${t}' not found in '${JSON.stringify(e)}'`);return Array.isArray(n)?n[parseInt(r)]:n[r]},e);Wc.getAttr=w2});var N0=m(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.isSet=void 0;var x2=e=>e!=null;Yc.isSet=x2});var I0=m(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.not=void 0;var k2=e=>!e;Jc.not=k2});var T0=m(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0})});var B0=m(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.HttpAuthLocation=void 0;var A2=w();Object.defineProperty(Qc,"HttpAuthLocation",{enumerable:!0,get:function(){return A2.HttpAuthLocation}})});var D0=m(q0=>{"use strict";Object.defineProperty(q0,"__esModule",{value:!0})});var F0=m(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0})});var j0=m(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0})});var z0=m(U0=>{"use strict";Object.defineProperty(U0,"__esModule",{value:!0})});var H0=m(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0})});var K0=m($0=>{"use strict";Object.defineProperty($0,"__esModule",{value:!0})});var X0=m(V0=>{"use strict";Object.defineProperty(V0,"__esModule",{value:!0})});var W0=m($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.HostAddressType=void 0;var O2;(function(e){e.AAAA="AAAA",e.A="A"})(O2=$i.HostAddressType||($i.HostAddressType={}))});var J0=m(Y0=>{"use strict";Object.defineProperty(Y0,"__esModule",{value:!0})});var Q0=m(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});Zc.EndpointURLScheme=void 0;var N2=w();Object.defineProperty(Zc,"EndpointURLScheme",{enumerable:!0,get:function(){return N2.EndpointURLScheme}})});var ev=m(Z0=>{"use strict";Object.defineProperty(Z0,"__esModule",{value:!0})});var nv=m(tv=>{"use strict";Object.defineProperty(tv,"__esModule",{value:!0})});var ov=m(rv=>{"use strict";Object.defineProperty(rv,"__esModule",{value:!0})});var iv=m(sv=>{"use strict";Object.defineProperty(sv,"__esModule",{value:!0})});var cv=m(av=>{"use strict";Object.defineProperty(av,"__esModule",{value:!0})});var lv=m(dv=>{"use strict";Object.defineProperty(dv,"__esModule",{value:!0})});var mv=m(uv=>{"use strict";Object.defineProperty(uv,"__esModule",{value:!0})});var fv=m(pv=>{"use strict";Object.defineProperty(pv,"__esModule",{value:!0})});var yv=m(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});var Ki=(ne(),J(te));Ki.__exportStar(iv(),cr);Ki.__exportStar(cv(),cr);Ki.__exportStar(lv(),cr);Ki.__exportStar(mv(),cr);Ki.__exportStar(fv(),cr)});var hv=m(gv=>{"use strict";Object.defineProperty(gv,"__esModule",{value:!0})});var Cv=m(_v=>{"use strict";Object.defineProperty(_v,"__esModule",{value:!0})});var bv=m(Sv=>{"use strict";Object.defineProperty(Sv,"__esModule",{value:!0})});var Pv=m(Ev=>{"use strict";Object.defineProperty(Ev,"__esModule",{value:!0})});var wv=m(vv=>{"use strict";Object.defineProperty(vv,"__esModule",{value:!0})});var kv=m(xv=>{"use strict";Object.defineProperty(xv,"__esModule",{value:!0})});var Ov=m(Av=>{"use strict";Object.defineProperty(Av,"__esModule",{value:!0})});var Iv=m(Nv=>{"use strict";Object.defineProperty(Nv,"__esModule",{value:!0})});var Tv=m(Rv=>{"use strict";Object.defineProperty(Rv,"__esModule",{value:!0})});var qv=m(Bv=>{"use strict";Object.defineProperty(Bv,"__esModule",{value:!0})});var Mv=m(Dv=>{"use strict";Object.defineProperty(Dv,"__esModule",{value:!0})});var Lv=m(Fv=>{"use strict";Object.defineProperty(Fv,"__esModule",{value:!0})});var jv=m(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});ed.RequestHandlerProtocol=void 0;var I2=w();Object.defineProperty(ed,"RequestHandlerProtocol",{enumerable:!0,get:function(){return I2.RequestHandlerProtocol}})});var zv=m(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0})});var Hv=m(Gv=>{"use strict";Object.defineProperty(Gv,"__esModule",{value:!0})});var Kv=m($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0})});var Vv=m(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});var pe=(ne(),J(te));pe.__exportStar(T0(),ue);pe.__exportStar(B0(),ue);pe.__exportStar(D0(),ue);pe.__exportStar(F0(),ue);pe.__exportStar(j0(),ue);pe.__exportStar(z0(),ue);pe.__exportStar(H0(),ue);pe.__exportStar(K0(),ue);pe.__exportStar(X0(),ue);pe.__exportStar(W0(),ue);pe.__exportStar(J0(),ue);pe.__exportStar(Q0(),ue);pe.__exportStar(ev(),ue);pe.__exportStar(nv(),ue);pe.__exportStar(ov(),ue);pe.__exportStar(yv(),ue);pe.__exportStar(hv(),ue);pe.__exportStar(Cv(),ue);pe.__exportStar(bv(),ue);pe.__exportStar(Pv(),ue);pe.__exportStar(wv(),ue);pe.__exportStar(kv(),ue);pe.__exportStar(Ov(),ue);pe.__exportStar(Iv(),ue);pe.__exportStar(Tv(),ue);pe.__exportStar(qv(),ue);pe.__exportStar(Mv(),ue);pe.__exportStar(Lv(),ue);pe.__exportStar(jv(),ue);pe.__exportStar(zv(),ue);pe.__exportStar(Hv(),ue);pe.__exportStar(Kv(),ue)});var Xv=m(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});td.parseURL=void 0;var qp=Vv(),R2=Uc(),Bp={[qp.EndpointURLScheme.HTTP]:80,[qp.EndpointURLScheme.HTTPS]:443},T2=e=>{let t=(()=>{try{if(e instanceof URL)return e;if(typeof e=="object"&&"hostname"in e){let{hostname:g,port:C,protocol:P="",path:A="",query:v={}}=e,G=new URL(`${P}//${g}${C?`:${C}`:""}${A}`);return G.search=Object.entries(v).map(([Y,Le])=>`${Y}=${Le}`).join("&"),G}return new URL(e)}catch{return null}})();if(!t)return console.error(`Unable to parse ${JSON.stringify(e)} as a whatwg URL.`),null;let n=t.href,{host:r,hostname:o,pathname:s,protocol:a,search:i}=t;if(i)return null;let u=a.slice(0,-1);if(!Object.values(qp.EndpointURLScheme).includes(u))return null;let l=(0,R2.isIpAddress)(o),c=n.includes(`${r}:${Bp[u]}`)||typeof e=="string"&&e.includes(`${r}:${Bp[u]}`),y=`${r}${c?`:${Bp[u]}`:""}`;return{scheme:u,authority:y,path:s,normalizedPath:s.endsWith("/")?s:`${s}/`,isIp:l}};td.parseURL=T2});var Wv=m(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});nd.stringEquals=void 0;var B2=(e,t)=>e===t;nd.stringEquals=B2});var Yv=m(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});rd.substring=void 0;var q2=(e,t,n,r)=>t>=n||e.length{"use strict";Object.defineProperty(od,"__esModule",{value:!0});od.uriEncode=void 0;var D2=e=>encodeURIComponent(e).replace(/[!*'()]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`);od.uriEncode=D2});var Dp=m(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.aws=void 0;var Bt=(ne(),J(te));lt.aws=Bt.__importStar(w0());Bt.__exportStar(x0(),lt);Bt.__exportStar(O0(),lt);Bt.__exportStar(N0(),lt);Bt.__exportStar(Rp(),lt);Bt.__exportStar(I0(),lt);Bt.__exportStar(Xv(),lt);Bt.__exportStar(Wv(),lt);Bt.__exportStar(Yv(),lt);Bt.__exportStar(Jv(),lt)});var Mp=m(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});sd.evaluateTemplate=void 0;var M2=Dp(),F2=(e,t)=>{let n=[],r={...t.endpointParams,...t.referenceRecord},o=0;for(;o{"use strict";Object.defineProperty(id,"__esModule",{value:!0});id.getReferenceValue=void 0;var L2=({ref:e},t)=>({...t.endpointParams,...t.referenceRecord})[e];id.getReferenceValue=L2});var Vi=m(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});ad.evaluateExpression=void 0;var j2=gt(),U2=Fp(),z2=Mp(),G2=Qv(),H2=(e,t,n)=>{if(typeof e=="string")return(0,z2.evaluateTemplate)(e,n);if(e.fn)return(0,U2.callFunction)(e,n);if(e.ref)return(0,G2.getReferenceValue)(e,n);throw new j2.EndpointError(`'${t}': ${String(e)} is not a string, function or reference.`)};ad.evaluateExpression=H2});var Fp=m(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.callFunction=void 0;var $2=(ne(),J(te)),K2=$2.__importStar(Dp()),V2=Vi(),X2=({fn:e,argv:t},n)=>{let r=t.map(o=>["boolean","number"].includes(typeof o)?o:(0,V2.evaluateExpression)(o,"arg",n));return e.split(".").reduce((o,s)=>o[s],K2)(...r)};cd.callFunction=X2});var Zv=m(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.evaluateCondition=void 0;var Lp=Ui(),W2=gt(),Y2=Fp(),J2=({assign:e,...t},n)=>{var r,o;if(e&&e in n.referenceRecord)throw new W2.EndpointError(`'${e}' is already defined in Reference Record.`);let s=(0,Y2.callFunction)(t,n);return(o=(r=n.logger)===null||r===void 0?void 0:r.debug)===null||o===void 0||o.call(r,Lp.debugId,`evaluateCondition: ${(0,Lp.toDebugString)(t)} = ${(0,Lp.toDebugString)(s)}`),{result:s===""?!0:!!s,...e!=null&&{toAssign:{name:e,value:s}}}};dd.evaluateCondition=J2});var ud=m(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});ld.evaluateConditions=void 0;var ew=Ui(),Q2=Zv(),Z2=(e=[],t)=>{var n,r;let o={};for(let s of e){let{result:a,toAssign:i}=(0,Q2.evaluateCondition)(s,{...t,referenceRecord:{...t.referenceRecord,...o}});if(!a)return{result:a};i&&(o[i.name]=i.value,(r=(n=t.logger)===null||n===void 0?void 0:n.debug)===null||r===void 0||r.call(n,ew.debugId,`assign: ${i.name} := ${(0,ew.toDebugString)(i.value)}`))}return{result:!0,referenceRecord:o}};ld.evaluateConditions=Z2});var tw=m(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.getEndpointHeaders=void 0;var eH=gt(),tH=Vi(),nH=(e,t)=>Object.entries(e).reduce((n,[r,o])=>({...n,[r]:o.map(s=>{let a=(0,tH.evaluateExpression)(s,"Header value entry",t);if(typeof a!="string")throw new eH.EndpointError(`Header '${r}' value '${a}' is not a string`);return a})}),{});md.getEndpointHeaders=nH});var rw=m(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.getEndpointProperty=void 0;var nw=gt(),rH=Mp(),oH=jp(),sH=(e,t)=>{if(Array.isArray(e))return e.map(n=>(0,Xi.getEndpointProperty)(n,t));switch(typeof e){case"string":return(0,rH.evaluateTemplate)(e,t);case"object":if(e===null)throw new nw.EndpointError(`Unexpected endpoint property: ${e}`);return(0,oH.getEndpointProperties)(e,t);case"boolean":return e;default:throw new nw.EndpointError(`Unexpected endpoint property type: ${typeof e}`)}};Xi.getEndpointProperty=sH});var jp=m(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.getEndpointProperties=void 0;var iH=rw(),aH=(e,t)=>Object.entries(e).reduce((n,[r,o])=>({...n,[r]:(0,iH.getEndpointProperty)(o,t)}),{});pd.getEndpointProperties=aH});var ow=m(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.getEndpointUrl=void 0;var cH=gt(),dH=Vi(),lH=(e,t)=>{let n=(0,dH.evaluateExpression)(e,"Endpoint URL",t);if(typeof n=="string")try{return new URL(n)}catch(r){throw console.error(`Failed to construct URL with ${n}`,r),r}throw new cH.EndpointError(`Endpoint URL must be a string, got ${typeof n}`)};fd.getEndpointUrl=lH});var iw=m(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});yd.evaluateEndpointRule=void 0;var sw=Ui(),uH=ud(),mH=tw(),pH=jp(),fH=ow(),yH=(e,t)=>{var n,r;let{conditions:o,endpoint:s}=e,{result:a,referenceRecord:i}=(0,uH.evaluateConditions)(o,t);if(!a)return;let u={...t,referenceRecord:{...t.referenceRecord,...i}},{url:l,properties:c,headers:y}=s;return(r=(n=t.logger)===null||n===void 0?void 0:n.debug)===null||r===void 0||r.call(n,sw.debugId,`Resolving endpoint from template: ${(0,sw.toDebugString)(s)}`),{...y!=null&&{headers:(0,mH.getEndpointHeaders)(y,u)},...c!=null&&{properties:(0,pH.getEndpointProperties)(c,u)},url:(0,fH.getEndpointUrl)(l,u)}};yd.evaluateEndpointRule=yH});var aw=m(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});gd.evaluateErrorRule=void 0;var gH=gt(),hH=ud(),_H=Vi(),CH=(e,t)=>{let{conditions:n,error:r}=e,{result:o,referenceRecord:s}=(0,hH.evaluateConditions)(n,t);if(o)throw new gH.EndpointError((0,_H.evaluateExpression)(r,"Error",{...t,referenceRecord:{...t.referenceRecord,...s}}))};gd.evaluateErrorRule=CH});var cw=m(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.evaluateTreeRule=void 0;var SH=ud(),bH=Up(),EH=(e,t)=>{let{conditions:n,rules:r}=e,{result:o,referenceRecord:s}=(0,SH.evaluateConditions)(n,t);if(o)return(0,bH.evaluateRules)(r,{...t,referenceRecord:{...t.referenceRecord,...s}})};hd.evaluateTreeRule=EH});var Up=m(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.evaluateRules=void 0;var dw=gt(),PH=iw(),vH=aw(),wH=cw(),xH=(e,t)=>{for(let n of e)if(n.type==="endpoint"){let r=(0,PH.evaluateEndpointRule)(n,t);if(r)return r}else if(n.type==="error")(0,vH.evaluateErrorRule)(n,t);else if(n.type==="tree"){let r=(0,wH.evaluateTreeRule)(n,t);if(r)return r}else throw new dw.EndpointError(`Unknown endpoint rule: ${n}`);throw new dw.EndpointError("Rules evaluation failed")};_d.evaluateRules=xH});var lw=m(zp=>{"use strict";Object.defineProperty(zp,"__esModule",{value:!0});var kH=(ne(),J(te));kH.__exportStar(Up(),zp)});var uw=m(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.resolveEndpoint=void 0;var Cd=Ui(),AH=gt(),OH=lw(),NH=(e,t)=>{var n,r,o,s,a,i;let{endpointParams:u,logger:l}=t,{parameters:c,rules:y}=e;(r=(n=t.logger)===null||n===void 0?void 0:n.debug)===null||r===void 0||r.call(n,`${Cd.debugId} Initial EndpointParams: ${(0,Cd.toDebugString)(u)}`);let g=Object.entries(c).filter(([,A])=>A.default!=null).map(([A,v])=>[A,v.default]);if(g.length>0)for(let[A,v]of g)u[A]=(o=u[A])!==null&&o!==void 0?o:v;let C=Object.entries(c).filter(([,A])=>A.required).map(([A])=>A);for(let A of C)if(u[A]==null)throw new AH.EndpointError(`Missing required parameter: '${A}'`);let P=(0,OH.evaluateRules)(y,{endpointParams:u,logger:l,referenceRecord:{}});if(!((s=t.endpointParams)===null||s===void 0)&&s.Endpoint)try{let A=new URL(t.endpointParams.Endpoint),{protocol:v,port:G}=A;P.url.protocol=v,P.url.port=G}catch{}return(i=(a=t.logger)===null||a===void 0?void 0:a.debug)===null||i===void 0||i.call(a,`${Cd.debugId} Resolved endpoint: ${(0,Cd.toDebugString)(P)}`),P};Sd.resolveEndpoint=NH});var Fr=m(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});var bd=(ne(),J(te));bd.__exportStar(Op(),Mr);bd.__exportStar(Uc(),Mr);bd.__exportStar(uw(),Mr);bd.__exportStar(gt(),Mr)});var mw=m(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.UA_ESCAPE_CHAR=Qe.UA_VALUE_ESCAPE_REGEX=Qe.UA_NAME_ESCAPE_REGEX=Qe.UA_NAME_SEPARATOR=Qe.SPACE=Qe.X_AMZ_USER_AGENT=Qe.USER_AGENT=void 0;Qe.USER_AGENT="user-agent";Qe.X_AMZ_USER_AGENT="x-amz-user-agent";Qe.SPACE=" ";Qe.UA_NAME_SEPARATOR="/";Qe.UA_NAME_ESCAPE_REGEX=/[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;Qe.UA_VALUE_ESCAPE_REGEX=/[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;Qe.UA_ESCAPE_CHAR="-"});var pw=m(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.getUserAgentPlugin=qt.getUserAgentMiddlewareOptions=qt.userAgentMiddleware=void 0;var IH=Fr(),RH=Ne(),it=mw(),TH=e=>(t,n)=>async r=>{var o,s;let{request:a}=r;if(!RH.HttpRequest.isInstance(a))return t(r);let{headers:i}=a,u=((o=n==null?void 0:n.userAgent)===null||o===void 0?void 0:o.map(Gp))||[],l=(await e.defaultUserAgentProvider()).map(Gp),c=((s=e==null?void 0:e.customUserAgent)===null||s===void 0?void 0:s.map(Gp))||[],y=(0,IH.getUserAgentPrefix)(),g=(y?[y]:[]).concat([...l,...u,...c]).join(it.SPACE),C=[...l.filter(P=>P.startsWith("aws-sdk-")),...c].join(it.SPACE);return e.runtime!=="browser"?(C&&(i[it.X_AMZ_USER_AGENT]=i[it.X_AMZ_USER_AGENT]?`${i[it.USER_AGENT]} ${C}`:C),i[it.USER_AGENT]=g):i[it.X_AMZ_USER_AGENT]=g,t({...r,request:a})};qt.userAgentMiddleware=TH;var Gp=e=>{var t;let n=e[0].split(it.UA_NAME_SEPARATOR).map(i=>i.replace(it.UA_NAME_ESCAPE_REGEX,it.UA_ESCAPE_CHAR)).join(it.UA_NAME_SEPARATOR),r=(t=e[1])===null||t===void 0?void 0:t.replace(it.UA_VALUE_ESCAPE_REGEX,it.UA_ESCAPE_CHAR),o=n.indexOf(it.UA_NAME_SEPARATOR),s=n.substring(0,o),a=n.substring(o+1);return s==="api"&&(a=a.toLowerCase()),[s,a,r].filter(i=>i&&i.length>0).reduce((i,u,l)=>{switch(l){case 0:return u;case 1:return`${i}/${u}`;default:return`${i}#${u}`}},"")};qt.getUserAgentMiddlewareOptions={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0};var BH=e=>({applyToStack:t=>{t.add((0,qt.userAgentMiddleware)(e),qt.getUserAgentMiddlewareOptions)}});qt.getUserAgentPlugin=BH});var Wi=m(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var fw=(ne(),J(te));fw.__exportStar(o0(),Ed);fw.__exportStar(pw(),Ed)});var vd=m((WPe,_w)=>{var Pd=Object.defineProperty,qH=Object.getOwnPropertyDescriptor,DH=Object.getOwnPropertyNames,MH=Object.prototype.hasOwnProperty,yw=(e,t)=>Pd(e,"name",{value:t,configurable:!0}),FH=(e,t)=>{for(var n in t)Pd(e,n,{get:t[n],enumerable:!0})},LH=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of DH(t))!MH.call(e,o)&&o!==n&&Pd(e,o,{get:()=>t[o],enumerable:!(r=qH(t,o))||r.enumerable});return e},jH=e=>LH(Pd({},"__esModule",{value:!0}),e),gw={};FH(gw,{SelectorType:()=>hw,booleanSelector:()=>UH,numberSelector:()=>zH});_w.exports=jH(gw);var UH=yw((e,t,n)=>{if(t in e){if(e[t]==="true")return!0;if(e[t]==="false")return!1;throw new Error(`Cannot load ${n} "${t}". Expected "true" or "false", got ${e[t]}.`)}},"booleanSelector"),zH=yw((e,t,n)=>{if(!(t in e))return;let r=parseInt(e[t],10);if(Number.isNaN(r))throw new TypeError(`Cannot load ${n} '${t}'. Expected number, got '${e[t]}'.`);return r},"numberSelector"),hw=(e=>(e.ENV="env",e.CONFIG="shared config entry",e))(hw||{})});var Dt=m((YPe,Ow)=>{var xd=Object.defineProperty,GH=Object.getOwnPropertyDescriptor,HH=Object.getOwnPropertyNames,$H=Object.prototype.hasOwnProperty,vt=(e,t)=>xd(e,"name",{value:t,configurable:!0}),KH=(e,t)=>{for(var n in t)xd(e,n,{get:t[n],enumerable:!0})},VH=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of HH(t))!$H.call(e,o)&&o!==n&&xd(e,o,{get:()=>t[o],enumerable:!(r=GH(t,o))||r.enumerable});return e},XH=e=>VH(xd({},"__esModule",{value:!0}),e),bw={};KH(bw,{CONFIG_USE_DUALSTACK_ENDPOINT:()=>Pw,CONFIG_USE_FIPS_ENDPOINT:()=>ww,DEFAULT_USE_DUALSTACK_ENDPOINT:()=>WH,DEFAULT_USE_FIPS_ENDPOINT:()=>JH,ENV_USE_DUALSTACK_ENDPOINT:()=>Ew,ENV_USE_FIPS_ENDPOINT:()=>vw,NODE_REGION_CONFIG_FILE_OPTIONS:()=>r$,NODE_REGION_CONFIG_OPTIONS:()=>n$,NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS:()=>YH,NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS:()=>QH,REGION_ENV_NAME:()=>xw,REGION_INI_NAME:()=>kw,getRegionInfo:()=>c$,resolveCustomEndpointsConfig:()=>ZH,resolveEndpointsConfig:()=>t$,resolveRegionConfig:()=>o$});Ow.exports=XH(bw);var Nn=vd(),Ew="AWS_USE_DUALSTACK_ENDPOINT",Pw="use_dualstack_endpoint",WH=!1,YH={environmentVariableSelector:e=>(0,Nn.booleanSelector)(e,Ew,Nn.SelectorType.ENV),configFileSelector:e=>(0,Nn.booleanSelector)(e,Pw,Nn.SelectorType.CONFIG),default:!1},vw="AWS_USE_FIPS_ENDPOINT",ww="use_fips_endpoint",JH=!1,QH={environmentVariableSelector:e=>(0,Nn.booleanSelector)(e,vw,Nn.SelectorType.ENV),configFileSelector:e=>(0,Nn.booleanSelector)(e,ww,Nn.SelectorType.CONFIG),default:!1},wd=Rr(),ZH=vt(e=>{let{endpoint:t,urlParser:n}=e;return{...e,tls:e.tls??!0,endpoint:(0,wd.normalizeProvider)(typeof t=="string"?n(t):t),isCustomEndpoint:!0,useDualstackEndpoint:(0,wd.normalizeProvider)(e.useDualstackEndpoint??!1)}},"resolveCustomEndpointsConfig"),e$=vt(async e=>{let{tls:t=!0}=e,n=await e.region();if(!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(n))throw new Error("Invalid region in client config");let o=await e.useDualstackEndpoint(),s=await e.useFipsEndpoint(),{hostname:a}=await e.regionInfoProvider(n,{useDualstackEndpoint:o,useFipsEndpoint:s})??{};if(!a)throw new Error("Cannot resolve hostname from client config");return e.urlParser(`${t?"https:":"http:"}//${a}`)},"getEndpointFromRegion"),t$=vt(e=>{let t=(0,wd.normalizeProvider)(e.useDualstackEndpoint??!1),{endpoint:n,useFipsEndpoint:r,urlParser:o}=e;return{...e,tls:e.tls??!0,endpoint:n?(0,wd.normalizeProvider)(typeof n=="string"?o(n):n):()=>e$({...e,useDualstackEndpoint:t,useFipsEndpoint:r}),isCustomEndpoint:!!n,useDualstackEndpoint:t}},"resolveEndpointsConfig"),xw="AWS_REGION",kw="region",n$={environmentVariableSelector:e=>e[xw],configFileSelector:e=>e[kw],default:()=>{throw new Error("Region is missing")}},r$={preferredFile:"credentials"},Aw=vt(e=>typeof e=="string"&&(e.startsWith("fips-")||e.endsWith("-fips")),"isFipsRegion"),Cw=vt(e=>Aw(e)?["fips-aws-global","aws-fips"].includes(e)?"us-east-1":e.replace(/fips-(dkr-|prod-)?|-fips/,""):e,"getRealRegion"),o$=vt(e=>{let{region:t,useFipsEndpoint:n}=e;if(!t)throw new Error("Region is missing");return{...e,region:async()=>{if(typeof t=="string")return Cw(t);let r=await t();return Cw(r)},useFipsEndpoint:async()=>{let r=typeof t=="string"?t:await t();return Aw(r)?!0:typeof n!="function"?Promise.resolve(!!n):n()}}},"resolveRegionConfig"),Sw=vt((e=[],{useFipsEndpoint:t,useDualstackEndpoint:n})=>{var r;return(r=e.find(({tags:o})=>t===o.includes("fips")&&n===o.includes("dualstack")))==null?void 0:r.hostname},"getHostnameFromVariants"),s$=vt((e,{regionHostname:t,partitionHostname:n})=>t||(n?n.replace("{region}",e):void 0),"getResolvedHostname"),i$=vt((e,{partitionHash:t})=>Object.keys(t||{}).find(n=>t[n].regions.includes(e))??"aws","getResolvedPartition"),a$=vt((e,{signingRegion:t,regionRegex:n,useFipsEndpoint:r})=>{if(t)return t;if(r){let o=n.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),s=e.match(o);if(s)return s[0].slice(1,-1)}},"getResolvedSigningRegion"),c$=vt((e,{useFipsEndpoint:t=!1,useDualstackEndpoint:n=!1,signingService:r,regionHash:o,partitionHash:s})=>{var a,i,u,l,c;let y=i$(e,{partitionHash:s}),g=e in o?e:((a=s[y])==null?void 0:a.endpoint)??e,C={useFipsEndpoint:t,useDualstackEndpoint:n},P=Sw((i=o[g])==null?void 0:i.variants,C),A=Sw((u=s[y])==null?void 0:u.variants,C),v=s$(g,{regionHostname:P,partitionHostname:A});if(v===void 0)throw new Error(`Endpoint resolution failed for: ${{resolvedRegion:g,useFipsEndpoint:t,useDualstackEndpoint:n}}`);let G=a$(v,{signingRegion:(l=o[g])==null?void 0:l.signingRegion,regionRegex:s[y].regionRegex,useFipsEndpoint:t});return{partition:y,signingService:r,hostname:v,...G&&{signingRegion:G},...((c=o[g])==null?void 0:c.signingService)&&{signingService:o[g].signingService}}},"getRegionInfo")});var Rw=m((JPe,Iw)=>{var kd=Object.defineProperty,d$=Object.getOwnPropertyDescriptor,l$=Object.getOwnPropertyNames,u$=Object.prototype.hasOwnProperty,m$=(e,t)=>kd(e,"name",{value:t,configurable:!0}),p$=(e,t)=>{for(var n in t)kd(e,n,{get:t[n],enumerable:!0})},f$=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of l$(t))!u$.call(e,o)&&o!==n&&kd(e,o,{get:()=>t[o],enumerable:!(r=d$(t,o))||r.enumerable});return e},y$=e=>f$(kd({},"__esModule",{value:!0}),e),Nw={};p$(Nw,{resolveEventStreamSerdeConfig:()=>g$});Iw.exports=y$(Nw);var g$=m$(e=>({...e,eventStreamMarshaller:e.eventStreamSerdeProvider(e)}),"resolveEventStreamSerdeConfig")});var Yi=m((QPe,Mw)=>{var Ad=Object.defineProperty,h$=Object.getOwnPropertyDescriptor,_$=Object.getOwnPropertyNames,C$=Object.prototype.hasOwnProperty,Bw=(e,t)=>Ad(e,"name",{value:t,configurable:!0}),S$=(e,t)=>{for(var n in t)Ad(e,n,{get:t[n],enumerable:!0})},b$=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of _$(t))!C$.call(e,o)&&o!==n&&Ad(e,o,{get:()=>t[o],enumerable:!(r=h$(t,o))||r.enumerable});return e},E$=e=>b$(Ad({},"__esModule",{value:!0}),e),qw={};S$(qw,{contentLengthMiddleware:()=>Hp,contentLengthMiddlewareOptions:()=>Dw,getContentLengthPlugin:()=>v$});Mw.exports=E$(qw);var P$=Ne(),Tw="content-length";function Hp(e){return t=>async n=>{let r=n.request;if(P$.HttpRequest.isInstance(r)){let{body:o,headers:s}=r;if(o&&Object.keys(s).map(a=>a.toLowerCase()).indexOf(Tw)===-1)try{let a=e(o);r.headers={...r.headers,[Tw]:String(a)}}catch{}}return t({...n,request:r})}}Bw(Hp,"contentLengthMiddleware");var Dw={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},v$=Bw(e=>({applyToStack:t=>{t.add(Hp(e.bodyLengthChecker),Dw)}}),"getContentLengthPlugin")});var Ji=m(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.getHomeDir=void 0;var w$=require("os"),x$=require("path"),$p={},k$=()=>process&&process.geteuid?`${process.geteuid()}`:"DEFAULT",A$=()=>{let{HOME:e,USERPROFILE:t,HOMEPATH:n,HOMEDRIVE:r=`C:${x$.sep}`}=process.env;if(e)return e;if(t)return t;if(n)return`${r}${n}`;let o=k$();return $p[o]||($p[o]=(0,w$.homedir)()),$p[o]};Od.getHomeDir=A$});var Kp=m(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});Nd.getSSOTokenFilepath=void 0;var O$=require("crypto"),N$=require("path"),I$=Ji(),R$=e=>{let n=(0,O$.createHash)("sha1").update(e).digest("hex");return(0,N$.join)((0,I$.getHomeDir)(),".aws","sso","cache",`${n}.json`)};Nd.getSSOTokenFilepath=R$});var Fw=m(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.getSSOTokenFromFile=void 0;var T$=require("fs"),B$=Kp(),{readFile:q$}=T$.promises,D$=async e=>{let t=(0,B$.getSSOTokenFilepath)(e),n=await q$(t,"utf8");return JSON.parse(n)};Id.getSSOTokenFromFile=D$});var Xp=m(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.slurpFile=void 0;var M$=require("fs"),{readFile:F$}=M$.promises,Vp={},L$=(e,t)=>((!Vp[e]||t!=null&&t.ignoreCache)&&(Vp[e]=F$(e,"utf8")),Vp[e]);Rd.slurpFile=L$});var wt=m((r0e,Zi)=>{var Bd=Object.defineProperty,j$=Object.getOwnPropertyDescriptor,U$=Object.getOwnPropertyNames,z$=Object.prototype.hasOwnProperty,ht=(e,t)=>Bd(e,"name",{value:t,configurable:!0}),G$=(e,t)=>{for(var n in t)Bd(e,n,{get:t[n],enumerable:!0})},Wp=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of U$(t))!z$.call(e,o)&&o!==n&&Bd(e,o,{get:()=>t[o],enumerable:!(r=j$(t,o))||r.enumerable});return e},Jp=(e,t,n)=>(Wp(e,t,"default"),n&&Wp(n,t,"default")),H$=e=>Wp(Bd({},"__esModule",{value:!0}),e),Qi={};G$(Qi,{CONFIG_PREFIX_SEPARATOR:()=>dr,DEFAULT_PROFILE:()=>zw,ENV_PROFILE:()=>Uw,getProfileName:()=>$$,loadSharedConfigFiles:()=>$w,loadSsoSessionData:()=>rK,parseKnownFiles:()=>sK});Zi.exports=H$(Qi);Jp(Qi,Ji(),Zi.exports);var Uw="AWS_PROFILE",zw="default",$$=ht(e=>e.profile||process.env[Uw]||zw,"getProfileName");Jp(Qi,Kp(),Zi.exports);Jp(Qi,Fw(),Zi.exports);var Td=w(),K$=ht(e=>Object.entries(e).filter(([t])=>{let n=t.indexOf(dr);return n===-1?!1:Object.values(Td.IniSectionType).includes(t.substring(0,n))}).reduce((t,[n,r])=>{let o=n.indexOf(dr),s=n.substring(0,o)===Td.IniSectionType.PROFILE?n.substring(o+1):n;return t[s]=r,t},{...e.default&&{default:e.default}}),"getConfigData"),Gw=require("path"),V$=Ji(),X$="AWS_CONFIG_FILE",Hw=ht(()=>process.env[X$]||(0,Gw.join)((0,V$.getHomeDir)(),".aws","config"),"getConfigFilepath"),W$=Ji(),Y$="AWS_SHARED_CREDENTIALS_FILE",J$=ht(()=>process.env[Y$]||(0,Gw.join)((0,W$.getHomeDir)(),".aws","credentials"),"getCredentialsFilepath"),Q$=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,Z$=["__proto__","profile __proto__"],Yp=ht(e=>{let t={},n,r;for(let o of e.split(/\r?\n/)){let s=o.split(/(^|\s)[;#]/)[0].trim();if(s[0]==="["&&s[s.length-1]==="]"){n=void 0,r=void 0;let i=s.substring(1,s.length-1),u=Q$.exec(i);if(u){let[,l,,c]=u;Object.values(Td.IniSectionType).includes(l)&&(n=[l,c].join(dr))}else n=i;if(Z$.includes(i))throw new Error(`Found invalid profile name "${i}"`)}else if(n){let i=s.indexOf("=");if(![0,-1].includes(i)){let[u,l]=[s.substring(0,i).trim(),s.substring(i+1).trim()];if(l==="")r=u;else{r&&o.trimStart()===o&&(r=void 0),t[n]=t[n]||{};let c=r?[r,u].join(dr):u;t[n][c]=l}}}}return t},"parseIni"),Lw=Xp(),jw=ht(()=>({}),"swallowError"),dr=".",$w=ht(async(e={})=>{let{filepath:t=J$(),configFilepath:n=Hw()}=e,r=await Promise.all([(0,Lw.slurpFile)(n,{ignoreCache:e.ignoreCache}).then(Yp).then(K$).catch(jw),(0,Lw.slurpFile)(t,{ignoreCache:e.ignoreCache}).then(Yp).catch(jw)]);return{configFile:r[0],credentialsFile:r[1]}},"loadSharedConfigFiles"),eK=ht(e=>Object.entries(e).filter(([t])=>t.startsWith(Td.IniSectionType.SSO_SESSION+dr)).reduce((t,[n,r])=>({...t,[n.substring(n.indexOf(dr)+1)]:r}),{}),"getSsoSessionData"),tK=Xp(),nK=ht(()=>({}),"swallowError"),rK=ht(async(e={})=>(0,tK.slurpFile)(e.configFilepath??Hw()).then(Yp).then(eK).catch(nK),"loadSsoSessionData"),oK=ht((...e)=>{let t={};for(let n of e)for(let[r,o]of Object.entries(n))t[r]!==void 0?Object.assign(t[r],o):t[r]=o;return t},"mergeConfigFiles"),sK=ht(async e=>{let t=await $w(e);return oK(t.configFile,t.credentialsFile)},"parseKnownFiles")});var rn=m((o0e,Xw)=>{var qd=Object.defineProperty,iK=Object.getOwnPropertyDescriptor,aK=Object.getOwnPropertyNames,cK=Object.prototype.hasOwnProperty,ta=(e,t)=>qd(e,"name",{value:t,configurable:!0}),dK=(e,t)=>{for(var n in t)qd(e,n,{get:t[n],enumerable:!0})},lK=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of aK(t))!cK.call(e,o)&&o!==n&&qd(e,o,{get:()=>t[o],enumerable:!(r=iK(t,o))||r.enumerable});return e},uK=e=>lK(qd({},"__esModule",{value:!0}),e),Vw={};dK(Vw,{loadConfig:()=>gK});Xw.exports=uK(Vw);var ea=xe(),mK=ta(e=>async()=>{try{let t=e(process.env);if(t===void 0)throw new Error;return t}catch(t){throw new ea.CredentialsProviderError(t.message||`Cannot load config from environment variables with getter: ${e}`)}},"fromEnv"),Kw=wt(),pK=ta((e,{preferredFile:t="config",...n}={})=>async()=>{let r=(0,Kw.getProfileName)(n),{configFile:o,credentialsFile:s}=await(0,Kw.loadSharedConfigFiles)(n),a=s[r]||{},i=o[r]||{},u=t==="config"?{...a,...i}:{...i,...a};try{let c=e(u,t==="config"?o:s);if(c===void 0)throw new Error;return c}catch(l){throw new ea.CredentialsProviderError(l.message||`Cannot load config for profile ${r} in SDK configuration files with getter: ${e}`)}},"fromSharedConfigFiles"),fK=ta(e=>typeof e=="function","isFunction"),yK=ta(e=>fK(e)?async()=>await e():(0,ea.fromStatic)(e),"fromStatic"),gK=ta(({environmentVariableSelector:e,configFileSelector:t,default:n},r={})=>(0,ea.memoize)((0,ea.chain)(mK(e),pK(t,r),yK(n))),"loadConfig")});var Qw=m(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});Dd.getEndpointUrlConfig=void 0;var Ww=wt(),Yw="AWS_ENDPOINT_URL",Jw="endpoint_url",hK=e=>({environmentVariableSelector:t=>{let n=e.split(" ").map(s=>s.toUpperCase()),r=t[[Yw,...n].join("_")];if(r)return r;let o=t[Yw];if(o)return o},configFileSelector:(t,n)=>{if(n&&t.services){let o=n[["services",t.services].join(Ww.CONFIG_PREFIX_SEPARATOR)];if(o){let s=e.split(" ").map(i=>i.toLowerCase()),a=o[[s.join("_"),Jw].join(Ww.CONFIG_PREFIX_SEPARATOR)];if(a)return a}}let r=t[Jw];if(r)return r},default:void 0});Dd.getEndpointUrlConfig=hK});var Zw=m(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});Md.getEndpointFromConfig=void 0;var _K=rn(),CK=Qw(),SK=async e=>(0,_K.loadConfig)((0,CK.getEndpointUrlConfig)(e))();Md.getEndpointFromConfig=SK});var rx=m((a0e,nx)=>{var Fd=Object.defineProperty,bK=Object.getOwnPropertyDescriptor,EK=Object.getOwnPropertyNames,PK=Object.prototype.hasOwnProperty,vK=(e,t)=>Fd(e,"name",{value:t,configurable:!0}),wK=(e,t)=>{for(var n in t)Fd(e,n,{get:t[n],enumerable:!0})},xK=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of EK(t))!PK.call(e,o)&&o!==n&&Fd(e,o,{get:()=>t[o],enumerable:!(r=bK(t,o))||r.enumerable});return e},kK=e=>xK(Fd({},"__esModule",{value:!0}),e),ex={};wK(ex,{parseQueryString:()=>tx});nx.exports=kK(ex);function tx(e){let t={};if(e=e.replace(/^\?/,""),e)for(let n of e.split("&")){let[r,o=null]=n.split("=");r=decodeURIComponent(r),o&&(o=decodeURIComponent(o)),r in t?Array.isArray(t[r])?t[r].push(o):t[r]=[t[r],o]:t[r]=o}return t}vK(tx,"parseQueryString")});var lr=m((c0e,ix)=>{var Ld=Object.defineProperty,AK=Object.getOwnPropertyDescriptor,OK=Object.getOwnPropertyNames,NK=Object.prototype.hasOwnProperty,IK=(e,t)=>Ld(e,"name",{value:t,configurable:!0}),RK=(e,t)=>{for(var n in t)Ld(e,n,{get:t[n],enumerable:!0})},TK=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of OK(t))!NK.call(e,o)&&o!==n&&Ld(e,o,{get:()=>t[o],enumerable:!(r=AK(t,o))||r.enumerable});return e},BK=e=>TK(Ld({},"__esModule",{value:!0}),e),ox={};RK(ox,{parseUrl:()=>sx});ix.exports=BK(ox);var qK=rx(),sx=IK(e=>{if(typeof e=="string")return sx(new URL(e));let{hostname:t,pathname:n,port:r,protocol:o,search:s}=e,a;return s&&(a=(0,qK.parseQueryString)(s)),{hostname:t,port:r?parseInt(r):void 0,protocol:o,path:n,query:a}},"parseUrl")});var k=m((d0e,px)=>{var jd=Object.defineProperty,DK=Object.getOwnPropertyDescriptor,MK=Object.getOwnPropertyNames,FK=Object.prototype.hasOwnProperty,Qp=(e,t)=>jd(e,"name",{value:t,configurable:!0}),LK=(e,t)=>{for(var n in t)jd(e,n,{get:t[n],enumerable:!0})},jK=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of MK(t))!FK.call(e,o)&&o!==n&&jd(e,o,{get:()=>t[o],enumerable:!(r=DK(t,o))||r.enumerable});return e},UK=e=>jK(jd({},"__esModule",{value:!0}),e),ax={};LK(ax,{deserializerMiddleware:()=>cx,deserializerMiddlewareOption:()=>lx,getSerdePlugin:()=>mx,serializerMiddleware:()=>dx,serializerMiddlewareOption:()=>ux});px.exports=UK(ax);var cx=Qp((e,t)=>(n,r)=>async o=>{let{response:s}=await n(o);try{let a=await t(s,e);return{response:s,output:a}}catch(a){if(Object.defineProperty(a,"$response",{value:s}),!("$metadata"in a)){let i="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";a.message+=` - `+i,typeof a.$responseBodyText<"u"&&a.$response&&(a.$response.body=a.$responseBodyText)}throw a}},"deserializerMiddleware"),dx=Qp((e,t)=>(n,r)=>async o=>{var s;let a=(s=r.endpointV2)!=null&&s.url&&e.urlParser?async()=>e.urlParser(r.endpointV2.url):e.endpoint;if(!a)throw new Error("No valid endpoint provider available.");let i=await t(o.input,{...e,endpoint:a});return n({...o,request:i})},"serializerMiddleware"),lx={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},ux={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};function mx(e,t,n){return{applyToStack:r=>{r.add(cx(e,n),lx),r.add(dx(e,t),ux)}}}Qp(mx,"getSerdePlugin")});var x=m((l0e,Sx)=>{var zd=Object.defineProperty,zK=Object.getOwnPropertyDescriptor,GK=Object.getOwnPropertyNames,HK=Object.prototype.hasOwnProperty,xt=(e,t)=>zd(e,"name",{value:t,configurable:!0}),$K=(e,t)=>{for(var n in t)zd(e,n,{get:t[n],enumerable:!0})},KK=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of GK(t))!HK.call(e,o)&&o!==n&&zd(e,o,{get:()=>t[o],enumerable:!(r=zK(t,o))||r.enumerable});return e},VK=e=>KK(zd({},"__esModule",{value:!0}),e),yx={};$K(yx,{endpointMiddleware:()=>_x,endpointMiddlewareOptions:()=>Cx,getEndpointFromInstructions:()=>gx,getEndpointPlugin:()=>r6,resolveEndpointConfig:()=>o6,resolveParams:()=>hx,toEndpointV1:()=>Zp});Sx.exports=VK(yx);var XK=xt(async e=>{let t=(e==null?void 0:e.Bucket)||"";if(typeof e.Bucket=="string"&&(e.Bucket=t.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"))),ZK(t)){if(e.ForcePathStyle===!0)throw new Error("Path-style addressing cannot be used with ARN buckets")}else(!QK(t)||t.indexOf(".")!==-1&&!String(e.Endpoint).startsWith("http:")||t.toLowerCase()!==t||t.length<3)&&(e.ForcePathStyle=!0);return e.DisableMultiRegionAccessPoints&&(e.disableMultiRegionAccessPoints=!0,e.DisableMRAP=!0),e},"resolveParamsForS3"),WK=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,YK=/(\d+\.){3}\d+/,JK=/\.\./,QK=xt(e=>WK.test(e)&&!YK.test(e)&&!JK.test(e),"isDnsCompatibleBucketName"),ZK=xt(e=>{let[t,n,r,,,o]=e.split(":"),s=t==="arn"&&e.split(":").length>=6,a=!!(s&&n&&r&&o);if(s&&!a)throw new Error(`Invalid ARN: ${e} was an invalid ARN.`);return a},"isArnBucketName"),e6=xt((e,t,n)=>{let r=xt(async()=>{let o=n[e]??n[t];return typeof o=="function"?o():o},"configProvider");return e==="credentialScope"||t==="CredentialScope"?async()=>{let o=typeof n.credentials=="function"?await n.credentials():n.credentials;return(o==null?void 0:o.credentialScope)??(o==null?void 0:o.CredentialScope)}:e==="endpoint"||t==="endpoint"?async()=>{let o=await r();if(o&&typeof o=="object"){if("url"in o)return o.url.href;if("hostname"in o){let{protocol:s,hostname:a,port:i,path:u}=o;return`${s}//${a}${i?":"+i:""}${u}`}}return o}:r},"createConfigValueProvider"),t6=Zw(),fx=lr(),Zp=xt(e=>typeof e=="object"?"url"in e?(0,fx.parseUrl)(e.url):e:(0,fx.parseUrl)(e),"toEndpointV1"),gx=xt(async(e,t,n,r)=>{if(!n.endpoint){let a=await(0,t6.getEndpointFromConfig)(n.serviceId||"");a&&(n.endpoint=()=>Promise.resolve(Zp(a)))}let o=await hx(e,t,n);if(typeof n.endpointProvider!="function")throw new Error("config.endpointProvider is not set.");return n.endpointProvider(o,r)},"getEndpointFromInstructions"),hx=xt(async(e,t,n)=>{var r;let o={},s=((r=t==null?void 0:t.getEndpointParameterInstructions)==null?void 0:r.call(t))||{};for(let[a,i]of Object.entries(s))switch(i.type){case"staticContextParams":o[a]=i.value;break;case"contextParams":o[a]=e[i.name];break;case"clientContextParams":case"builtInParams":o[a]=await e6(i.name,a,n)();break;default:throw new Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(i))}return Object.keys(s).length===0&&Object.assign(o,n),String(n.serviceId).toLowerCase()==="s3"&&await XK(o),o},"resolveParams"),Ud=Rr(),_x=xt(({config:e,instructions:t})=>(n,r)=>async o=>{var s,a,i;let u=await gx(o.input,{getEndpointParameterInstructions(){return t}},{...e},r);r.endpointV2=u,r.authSchemes=(s=u.properties)==null?void 0:s.authSchemes;let l=(a=r.authSchemes)==null?void 0:a[0];if(l){r.signing_region=l.signingRegion,r.signing_service=l.signingName;let c=(0,Ud.getSmithyContext)(r),y=(i=c==null?void 0:c.selectedHttpAuthScheme)==null?void 0:i.httpAuthOption;y&&(y.signingProperties=Object.assign(y.signingProperties||{},{signing_region:l.signingRegion,signingRegion:l.signingRegion,signing_service:l.signingName,signingName:l.signingName,signingRegionSet:l.signingRegionSet},l.properties))}return n({...o})},"endpointMiddleware"),n6=k(),Cx={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:n6.serializerMiddlewareOption.name},r6=xt((e,t)=>({applyToStack:n=>{n.addRelativeTo(_x({config:e,instructions:t}),Cx)}}),"getEndpointPlugin"),o6=xt(e=>{let t=e.tls??!0,{endpoint:n}=e,r=n!=null?async()=>Zp(await(0,Ud.normalizeProvider)(n)()):void 0;return{...e,endpoint:r,tls:t,isCustomEndpoint:!!n,useDualstackEndpoint:(0,Ud.normalizeProvider)(e.useDualstackEndpoint??!1),useFipsEndpoint:(0,Ud.normalizeProvider)(e.useFipsEndpoint??!1)}},"resolveEndpointConfig")});function na(){return Gd>Hd.length-16&&(bx.default.randomFillSync(Hd),Gd=0),Hd.slice(Gd,Gd+=16)}var bx,Hd,Gd,ef=je(()=>{bx=Er(require("crypto")),Hd=new Uint8Array(256),Gd=Hd.length});var Ex,Px=je(()=>{Ex=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function s6(e){return typeof e=="string"&&Ex.test(e)}var In,ra=je(()=>{Px();In=s6});function ur(e,t=0){return Ve[e[t+0]]+Ve[e[t+1]]+Ve[e[t+2]]+Ve[e[t+3]]+"-"+Ve[e[t+4]]+Ve[e[t+5]]+"-"+Ve[e[t+6]]+Ve[e[t+7]]+"-"+Ve[e[t+8]]+Ve[e[t+9]]+"-"+Ve[e[t+10]]+Ve[e[t+11]]+Ve[e[t+12]]+Ve[e[t+13]]+Ve[e[t+14]]+Ve[e[t+15]]}function i6(e,t=0){let n=ur(e,t);if(!In(n))throw TypeError("Stringified UUID is invalid");return n}var Ve,vx,oa=je(()=>{ra();Ve=[];for(let e=0;e<256;++e)Ve.push((e+256).toString(16).slice(1));vx=i6});function a6(e,t,n){let r=t&&n||0,o=t||new Array(16);e=e||{};let s=e.node||wx,a=e.clockseq!==void 0?e.clockseq:tf;if(s==null||a==null){let g=e.random||(e.rng||na)();s==null&&(s=wx=[g[0]|1,g[1],g[2],g[3],g[4],g[5]]),a==null&&(a=tf=(g[6]<<8|g[7])&16383)}let i=e.msecs!==void 0?e.msecs:Date.now(),u=e.nsecs!==void 0?e.nsecs:rf+1,l=i-nf+(u-rf)/1e4;if(l<0&&e.clockseq===void 0&&(a=a+1&16383),(l<0||i>nf)&&e.nsecs===void 0&&(u=0),u>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");nf=i,rf=u,tf=a,i+=122192928e5;let c=((i&268435455)*1e4+u)%4294967296;o[r++]=c>>>24&255,o[r++]=c>>>16&255,o[r++]=c>>>8&255,o[r++]=c&255;let y=i/4294967296*1e4&268435455;o[r++]=y>>>8&255,o[r++]=y&255,o[r++]=y>>>24&15|16,o[r++]=y>>>16&255,o[r++]=a>>>8|128,o[r++]=a&255;for(let g=0;g<6;++g)o[r+g]=s[g];return t||ur(o)}var wx,tf,nf,rf,xx,kx=je(()=>{ef();oa();nf=0,rf=0;xx=a6});function c6(e){if(!In(e))throw TypeError("Invalid UUID");let t,n=new Uint8Array(16);return n[0]=(t=parseInt(e.slice(0,8),16))>>>24,n[1]=t>>>16&255,n[2]=t>>>8&255,n[3]=t&255,n[4]=(t=parseInt(e.slice(9,13),16))>>>8,n[5]=t&255,n[6]=(t=parseInt(e.slice(14,18),16))>>>8,n[7]=t&255,n[8]=(t=parseInt(e.slice(19,23),16))>>>8,n[9]=t&255,n[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,n[11]=t/4294967296&255,n[12]=t>>>24&255,n[13]=t>>>16&255,n[14]=t>>>8&255,n[15]=t&255,n}var $d,of=je(()=>{ra();$d=c6});function d6(e){e=unescape(encodeURIComponent(e));let t=[];for(let n=0;n{oa();of();l6="6ba7b810-9dad-11d1-80b4-00c04fd430c8",u6="6ba7b811-9dad-11d1-80b4-00c04fd430c8"});function m6(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),Ax.default.createHash("md5").update(e).digest()}var Ax,Ox,Nx=je(()=>{Ax=Er(require("crypto"));Ox=m6});var p6,Ix,Rx=je(()=>{sf();Nx();p6=sa("v3",48,Ox),Ix=p6});var Tx,af,Bx=je(()=>{Tx=Er(require("crypto")),af={randomUUID:Tx.default.randomUUID}});function f6(e,t,n){if(af.randomUUID&&!t&&!e)return af.randomUUID();e=e||{};let r=e.random||(e.rng||na)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,t){n=n||0;for(let o=0;o<16;++o)t[n+o]=r[o];return t}return ur(r)}var qx,Dx=je(()=>{Bx();ef();oa();qx=f6});function y6(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),Mx.default.createHash("sha1").update(e).digest()}var Mx,Fx,Lx=je(()=>{Mx=Er(require("crypto"));Fx=y6});var g6,jx,Ux=je(()=>{sf();Lx();g6=sa("v5",80,Fx),jx=g6});var zx,Gx=je(()=>{zx="00000000-0000-0000-0000-000000000000"});function h6(e){if(!In(e))throw TypeError("Invalid UUID");return parseInt(e.slice(14,15),16)}var Hx,$x=je(()=>{ra();Hx=h6});var Kx={};Ni(Kx,{NIL:()=>zx,parse:()=>$d,stringify:()=>vx,v1:()=>xx,v3:()=>Ix,v4:()=>qx,v5:()=>jx,validate:()=>In,version:()=>Hx});var Vx=je(()=>{kx();Rx();Dx();Ux();Gx();$x();ra();oa();of()});var cf=m((Y0e,Jx)=>{var Kd=Object.defineProperty,_6=Object.getOwnPropertyDescriptor,C6=Object.getOwnPropertyNames,S6=Object.prototype.hasOwnProperty,Lr=(e,t)=>Kd(e,"name",{value:t,configurable:!0}),b6=(e,t)=>{for(var n in t)Kd(e,n,{get:t[n],enumerable:!0})},E6=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of C6(t))!S6.call(e,o)&&o!==n&&Kd(e,o,{get:()=>t[o],enumerable:!(r=_6(t,o))||r.enumerable});return e},P6=e=>E6(Kd({},"__esModule",{value:!0}),e),Xx={};b6(Xx,{isClockSkewCorrectedError:()=>Wx,isClockSkewError:()=>N6,isRetryableByTrait:()=>O6,isServerError:()=>R6,isThrottlingError:()=>I6,isTransientError:()=>Yx});Jx.exports=P6(Xx);var v6=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],w6=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],x6=["TimeoutError","RequestTimeout","RequestTimeoutException"],k6=[500,502,503,504],A6=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],O6=Lr(e=>e.$retryable!==void 0,"isRetryableByTrait"),N6=Lr(e=>v6.includes(e.name),"isClockSkewError"),Wx=Lr(e=>{var t;return(t=e.$metadata)==null?void 0:t.clockSkewCorrected},"isClockSkewCorrectedError"),I6=Lr(e=>{var t,n;return((t=e.$metadata)==null?void 0:t.httpStatusCode)===429||w6.includes(e.name)||((n=e.$retryable)==null?void 0:n.throttling)==!0},"isThrottlingError"),Yx=Lr(e=>{var t;return Wx(e)||x6.includes(e.name)||A6.includes((e==null?void 0:e.code)||"")||k6.includes(((t=e.$metadata)==null?void 0:t.httpStatusCode)||0)},"isTransientError"),R6=Lr(e=>{var t;if(((t=e.$metadata)==null?void 0:t.httpStatusCode)!==void 0){let n=e.$metadata.httpStatusCode;return 500<=n&&n<=599&&!Yx(e)}return!1},"isServerError")});var jr=m((tve,lk)=>{var Vd=Object.defineProperty,T6=Object.getOwnPropertyDescriptor,B6=Object.getOwnPropertyNames,q6=Object.prototype.hasOwnProperty,kt=(e,t)=>Vd(e,"name",{value:t,configurable:!0}),D6=(e,t)=>{for(var n in t)Vd(e,n,{get:t[n],enumerable:!0})},M6=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of B6(t))!q6.call(e,o)&&o!==n&&Vd(e,o,{get:()=>t[o],enumerable:!(r=T6(t,o))||r.enumerable});return e},F6=e=>M6(Vd({},"__esModule",{value:!0}),e),Zx={};D6(Zx,{AdaptiveRetryStrategy:()=>H6,ConfiguredRetryStrategy:()=>$6,DEFAULT_MAX_ATTEMPTS:()=>df,DEFAULT_RETRY_DELAY_BASE:()=>ia,DEFAULT_RETRY_MODE:()=>L6,DefaultRateLimiter:()=>nk,INITIAL_RETRY_TOKENS:()=>lf,INVOCATION_ID_HEADER:()=>U6,MAXIMUM_RETRY_DELAY:()=>uf,NO_RETRY_INCREMENT:()=>ik,REQUEST_HEADER:()=>z6,RETRY_COST:()=>ok,RETRY_MODES:()=>ek,StandardRetryStrategy:()=>mf,THROTTLING_RETRY_DELAY_BASE:()=>rk,TIMEOUT_RETRY_COST:()=>sk});lk.exports=F6(Zx);var ek=(e=>(e.STANDARD="standard",e.ADAPTIVE="adaptive",e))(ek||{}),df=3,L6="standard",j6=cf(),tk=class{constructor(t){this.currentCapacity=0,this.enabled=!1,this.lastMaxRate=0,this.measuredTxRate=0,this.requestCount=0,this.lastTimestamp=0,this.timeWindow=0,this.beta=(t==null?void 0:t.beta)??.7,this.minCapacity=(t==null?void 0:t.minCapacity)??1,this.minFillRate=(t==null?void 0:t.minFillRate)??.5,this.scaleConstant=(t==null?void 0:t.scaleConstant)??.4,this.smooth=(t==null?void 0:t.smooth)??.8;let n=this.getCurrentTimeInSeconds();this.lastThrottleTime=n,this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}getCurrentTimeInSeconds(){return Date.now()/1e3}async getSendToken(){return this.acquireTokenBucket(1)}async acquireTokenBucket(t){if(this.enabled){if(this.refillTokenBucket(),t>this.currentCapacity){let n=(t-this.currentCapacity)/this.fillRate*1e3;await new Promise(r=>setTimeout(r,n))}this.currentCapacity=this.currentCapacity-t}}refillTokenBucket(){let t=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=t;return}let n=(t-this.lastTimestamp)*this.fillRate;this.currentCapacity=Math.min(this.maxCapacity,this.currentCapacity+n),this.lastTimestamp=t}updateClientSendingRate(t){let n;if(this.updateMeasuredRate(),(0,j6.isThrottlingError)(t)){let o=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=o,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),n=this.cubicThrottle(o),this.enableTokenBucket()}else this.calculateTimeWindow(),n=this.cubicSuccess(this.getCurrentTimeInSeconds());let r=Math.min(n,2*this.measuredTxRate);this.updateTokenBucketRate(r)}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))}cubicThrottle(t){return this.getPrecise(t*this.beta)}cubicSuccess(t){return this.getPrecise(this.scaleConstant*Math.pow(t-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(t){this.refillTokenBucket(),this.fillRate=Math.max(t,this.minFillRate),this.maxCapacity=Math.max(t,this.minCapacity),this.currentCapacity=Math.min(this.currentCapacity,this.maxCapacity)}updateMeasuredRate(){let t=this.getCurrentTimeInSeconds(),n=Math.floor(t*2)/2;if(this.requestCount++,n>this.lastTxRateBucket){let r=this.requestCount/(n-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(r*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=n}}getPrecise(t){return parseFloat(t.toFixed(8))}};kt(tk,"DefaultRateLimiter");var nk=tk,ia=100,uf=20*1e3,rk=500,lf=500,ok=5,sk=10,ik=1,U6="amz-sdk-invocation-id",z6="amz-sdk-request",G6=kt(()=>{let e=ia;return{computeNextBackoffDelay:kt(r=>Math.floor(Math.min(uf,Math.random()*2**r*e)),"computeNextBackoffDelay"),setDelayBase:kt(r=>{e=r},"setDelayBase")}},"getDefaultRetryBackoffStrategy"),Qx=kt(({retryDelay:e,retryCount:t,retryCost:n})=>({getRetryCount:kt(()=>t,"getRetryCount"),getRetryDelay:kt(()=>Math.min(uf,e),"getRetryDelay"),getRetryCost:kt(()=>n,"getRetryCost")}),"createDefaultRetryToken"),ak=class{constructor(t){this.maxAttempts=t,this.mode="standard",this.capacity=lf,this.retryBackoffStrategy=G6(),this.maxAttemptsProvider=typeof t=="function"?t:async()=>t}async acquireInitialRetryToken(t){return Qx({retryDelay:ia,retryCount:0})}async refreshRetryTokenForRetry(t,n){let r=await this.getMaxAttempts();if(this.shouldRetry(t,n,r)){let o=n.errorType;this.retryBackoffStrategy.setDelayBase(o==="THROTTLING"?rk:ia);let s=this.retryBackoffStrategy.computeNextBackoffDelay(t.getRetryCount()),a=n.retryAfterHint?Math.max(n.retryAfterHint.getTime()-Date.now()||0,s):s,i=this.getCapacityCost(o);return this.capacity-=i,Qx({retryDelay:a,retryCount:t.getRetryCount()+1,retryCost:i})}throw new Error("No retry token available")}recordSuccess(t){this.capacity=Math.max(lf,this.capacity+(t.getRetryCost()??ik))}getCapacity(){return this.capacity}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch{return console.warn(`Max attempts provider could not resolve. Using default of ${df}`),df}}shouldRetry(t,n,r){return t.getRetryCount()+1=this.getCapacityCost(n.errorType)&&this.isRetryableError(n.errorType)}getCapacityCost(t){return t==="TRANSIENT"?sk:ok}isRetryableError(t){return t==="THROTTLING"||t==="TRANSIENT"}};kt(ak,"StandardRetryStrategy");var mf=ak,ck=class{constructor(t,n){this.maxAttemptsProvider=t,this.mode="adaptive";let{rateLimiter:r}=n??{};this.rateLimiter=r??new nk,this.standardRetryStrategy=new mf(t)}async acquireInitialRetryToken(t){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(t)}async refreshRetryTokenForRetry(t,n){return this.rateLimiter.updateClientSendingRate(n),this.standardRetryStrategy.refreshRetryTokenForRetry(t,n)}recordSuccess(t){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(t)}};kt(ck,"AdaptiveRetryStrategy");var H6=ck,dk=class extends mf{constructor(t,n=ia){super(typeof t=="function"?t:async()=>t),typeof n=="number"?this.computeNextBackoffDelay=()=>n:this.computeNextBackoffDelay=n}async refreshRetryTokenForRetry(t,n){let r=await super.refreshRetryTokenForRetry(t,n);return r.getRetryDelay=()=>this.computeNextBackoffDelay(r.getRetryCount()),r}};kt(dk,"ConfiguredRetryStrategy");var $6=dk});var uk=m(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.isStreamingPayload=void 0;var K6=require("stream"),V6=e=>(e==null?void 0:e.body)instanceof K6.Readable||typeof ReadableStream<"u"&&(e==null?void 0:e.body)instanceof ReadableStream;Xd.isStreamingPayload=V6});var on=m((sve,Ak)=>{var Wd=Object.defineProperty,X6=Object.getOwnPropertyDescriptor,W6=Object.getOwnPropertyNames,Y6=Object.prototype.hasOwnProperty,Be=(e,t)=>Wd(e,"name",{value:t,configurable:!0}),J6=(e,t)=>{for(var n in t)Wd(e,n,{get:t[n],enumerable:!0})},Q6=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of W6(t))!Y6.call(e,o)&&o!==n&&Wd(e,o,{get:()=>t[o],enumerable:!(r=X6(t,o))||r.enumerable});return e},Z6=e=>Q6(Wd({},"__esModule",{value:!0}),e),pk={};J6(pk,{AdaptiveRetryStrategy:()=>nV,CONFIG_MAX_ATTEMPTS:()=>ff,CONFIG_RETRY_MODE:()=>Ek,ENV_MAX_ATTEMPTS:()=>pf,ENV_RETRY_MODE:()=>bk,NODE_MAX_ATTEMPT_CONFIG_OPTIONS:()=>rV,NODE_RETRY_MODE_CONFIG_OPTIONS:()=>sV,StandardRetryStrategy:()=>Ck,defaultDelayDecider:()=>yk,defaultRetryDecider:()=>gk,getOmitRetryHeadersPlugin:()=>iV,getRetryAfterHint:()=>kk,getRetryPlugin:()=>mV,omitRetryHeadersMiddleware:()=>Pk,omitRetryHeadersMiddlewareOptions:()=>vk,resolveRetryConfig:()=>oV,retryMiddleware:()=>wk,retryMiddlewareOptions:()=>xk});Ak.exports=Z6(pk);var Ur=Ne(),fk=(Vx(),J(Kx)),ve=jr(),eV=Be((e,t)=>{let n=e,r=(t==null?void 0:t.noRetryIncrement)??ve.NO_RETRY_INCREMENT,o=(t==null?void 0:t.retryCost)??ve.RETRY_COST,s=(t==null?void 0:t.timeoutRetryCost)??ve.TIMEOUT_RETRY_COST,a=e,i=Be(y=>y.name==="TimeoutError"?s:o,"getCapacityAmount"),u=Be(y=>i(y)<=a,"hasRetryTokens");return Object.freeze({hasRetryTokens:u,retrieveRetryTokens:Be(y=>{if(!u(y))throw new Error("No retry token available");let g=i(y);return a-=g,g},"retrieveRetryTokens"),releaseRetryTokens:Be(y=>{a+=y??r,a=Math.min(a,n)},"releaseRetryTokens")})},"getDefaultRetryQuota"),yk=Be((e,t)=>Math.floor(Math.min(ve.MAXIMUM_RETRY_DELAY,Math.random()*2**t*e)),"defaultDelayDecider"),Rn=cf(),gk=Be(e=>e?(0,Rn.isRetryableByTrait)(e)||(0,Rn.isClockSkewError)(e)||(0,Rn.isThrottlingError)(e)||(0,Rn.isTransientError)(e):!1,"defaultRetryDecider"),hk=Be(e=>e instanceof Error?e:e instanceof Object?Object.assign(new Error,e):typeof e=="string"?new Error(e):new Error(`AWS SDK error wrapper for ${e}`),"asSdkError"),_k=class{constructor(t,n){this.maxAttemptsProvider=t,this.mode=ve.RETRY_MODES.STANDARD,this.retryDecider=(n==null?void 0:n.retryDecider)??gk,this.delayDecider=(n==null?void 0:n.delayDecider)??yk,this.retryQuota=(n==null?void 0:n.retryQuota)??eV(ve.INITIAL_RETRY_TOKENS)}shouldRetry(t,n,r){return nsetTimeout(P,C));continue}throw c.$metadata||(c.$metadata={}),c.$metadata.attempts=s,c.$metadata.totalRetryDelay=a,c}}};Be(_k,"StandardRetryStrategy");var Ck=_k,tV=Be(e=>{if(!Ur.HttpResponse.isInstance(e))return;let t=Object.keys(e.headers).find(s=>s.toLowerCase()==="retry-after");if(!t)return;let n=e.headers[t],r=Number(n);return Number.isNaN(r)?new Date(n).getTime()-Date.now():r*1e3},"getDelayFromRetryAfterHeader"),Sk=class extends Ck{constructor(t,n){let{rateLimiter:r,...o}=n??{};super(t,o),this.rateLimiter=r??new ve.DefaultRateLimiter,this.mode=ve.RETRY_MODES.ADAPTIVE}async retry(t,n){return super.retry(t,n,{beforeRequest:async()=>this.rateLimiter.getSendToken(),afterRequest:r=>{this.rateLimiter.updateClientSendingRate(r)}})}};Be(Sk,"AdaptiveRetryStrategy");var nV=Sk,mk=Rr(),pf="AWS_MAX_ATTEMPTS",ff="max_attempts",rV={environmentVariableSelector:e=>{let t=e[pf];if(!t)return;let n=parseInt(t);if(Number.isNaN(n))throw new Error(`Environment variable ${pf} mast be a number, got "${t}"`);return n},configFileSelector:e=>{let t=e[ff];if(!t)return;let n=parseInt(t);if(Number.isNaN(n))throw new Error(`Shared config file entry ${ff} mast be a number, got "${t}"`);return n},default:ve.DEFAULT_MAX_ATTEMPTS},oV=Be(e=>{let{retryStrategy:t}=e,n=(0,mk.normalizeProvider)(e.maxAttempts??ve.DEFAULT_MAX_ATTEMPTS);return{...e,maxAttempts:n,retryStrategy:async()=>t||(await(0,mk.normalizeProvider)(e.retryMode)()===ve.RETRY_MODES.ADAPTIVE?new ve.AdaptiveRetryStrategy(n):new ve.StandardRetryStrategy(n))}},"resolveRetryConfig"),bk="AWS_RETRY_MODE",Ek="retry_mode",sV={environmentVariableSelector:e=>e[bk],configFileSelector:e=>e[Ek],default:ve.DEFAULT_RETRY_MODE},Pk=Be(()=>e=>async t=>{let{request:n}=t;return Ur.HttpRequest.isInstance(n)&&(delete n.headers[ve.INVOCATION_ID_HEADER],delete n.headers[ve.REQUEST_HEADER]),e(t)},"omitRetryHeadersMiddleware"),vk={name:"omitRetryHeadersMiddleware",tags:["RETRY","HEADERS","OMIT_RETRY_HEADERS"],relation:"before",toMiddleware:"awsAuthMiddleware",override:!0},iV=Be(e=>({applyToStack:t=>{t.addRelativeTo(Pk(),vk)}}),"getOmitRetryHeadersPlugin"),aV=b(),cV=uk(),wk=Be(e=>(t,n)=>async r=>{var o;let s=await e.retryStrategy(),a=await e.maxAttempts();if(dV(s)){s=s;let i=await s.acquireInitialRetryToken(n.partition_id),u=new Error,l=0,c=0,{request:y}=r,g=Ur.HttpRequest.isInstance(y);for(g&&(y.headers[ve.INVOCATION_ID_HEADER]=(0,fk.v4)());;)try{g&&(y.headers[ve.REQUEST_HEADER]=`attempt=${l+1}; max=${a}`);let{response:C,output:P}=await t(r);return s.recordSuccess(i),P.$metadata.attempts=l+1,P.$metadata.totalRetryDelay=c,{response:C,output:P}}catch(C){let P=lV(C);if(u=hk(C),g&&(0,cV.isStreamingPayload)(y))throw(o=n.logger instanceof aV.NoOpLogger?console:n.logger)==null||o.warn("An error was encountered in a non-retryable streaming request."),u;try{i=await s.refreshRetryTokenForRetry(i,P)}catch{throw u.$metadata||(u.$metadata={}),u.$metadata.attempts=l+1,u.$metadata.totalRetryDelay=c,u}l=i.getRetryCount();let A=i.getRetryDelay();c+=A,await new Promise(v=>setTimeout(v,A))}}else return s=s,s!=null&&s.mode&&(n.userAgent=[...n.userAgent||[],["cfg/retry-mode",s.mode]]),s.retry(t,r)},"retryMiddleware"),dV=Be(e=>typeof e.acquireInitialRetryToken<"u"&&typeof e.refreshRetryTokenForRetry<"u"&&typeof e.recordSuccess<"u","isRetryStrategyV2"),lV=Be(e=>{let t={error:e,errorType:uV(e)},n=kk(e.$response);return n&&(t.retryAfterHint=n),t},"getRetryErrorInfo"),uV=Be(e=>(0,Rn.isThrottlingError)(e)?"THROTTLING":(0,Rn.isTransientError)(e)?"TRANSIENT":(0,Rn.isServerError)(e)?"SERVER_ERROR":"CLIENT_ERROR","getRetryErrorType"),xk={name:"retryMiddleware",tags:["RETRY"],step:"finalizeRequest",priority:"high",override:!0},mV=Be(e=>({applyToStack:t=>{t.add(wk(e),xk)}}),"getRetryPlugin"),kk=Be(e=>{if(!Ur.HttpResponse.isInstance(e))return;let t=Object.keys(e.headers).find(s=>s.toLowerCase()==="retry-after");if(!t)return;let n=e.headers[t],r=Number(n);return Number.isNaN(r)?new Date(n):new Date(r*1e3)},"getRetryAfterHint")});var Ok=m(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.resolveClientEndpointParameters=void 0;var pV=e=>({...e,useFipsEndpoint:e.useFipsEndpoint??!1,useDualstackEndpoint:e.useDualstackEndpoint??!1,forcePathStyle:e.forcePathStyle??!1,useAccelerateEndpoint:e.useAccelerateEndpoint??!1,useGlobalEndpoint:e.useGlobalEndpoint??!1,disableMultiregionAccessPoints:e.disableMultiregionAccessPoints??!1,defaultSigningName:"s3"});Yd.resolveClientEndpointParameters=pV});var Nk=m((ave,fV)=>{fV.exports={name:"@aws-sdk/client-s3",description:"AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native",version:"3.421.0",scripts:{build:"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'","build:cjs":"tsc -p tsconfig.cjs.json","build:docs":"typedoc","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 s3",test:"yarn test:unit","test:e2e":"ts-mocha test/**/*.ispec.ts && karma start karma.conf.js","test:unit":"ts-mocha test/**/*.spec.ts"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha1-browser":"3.0.0","@aws-crypto/sha256-browser":"3.0.0","@aws-crypto/sha256-js":"3.0.0","@aws-sdk/client-sts":"3.421.0","@aws-sdk/credential-provider-node":"3.421.0","@aws-sdk/middleware-bucket-endpoint":"3.418.0","@aws-sdk/middleware-expect-continue":"3.418.0","@aws-sdk/middleware-flexible-checksums":"3.418.0","@aws-sdk/middleware-host-header":"3.418.0","@aws-sdk/middleware-location-constraint":"3.418.0","@aws-sdk/middleware-logger":"3.418.0","@aws-sdk/middleware-recursion-detection":"3.418.0","@aws-sdk/middleware-sdk-s3":"3.418.0","@aws-sdk/middleware-signing":"3.418.0","@aws-sdk/middleware-ssec":"3.418.0","@aws-sdk/middleware-user-agent":"3.418.0","@aws-sdk/region-config-resolver":"3.418.0","@aws-sdk/signature-v4-multi-region":"3.418.0","@aws-sdk/types":"3.418.0","@aws-sdk/util-endpoints":"3.418.0","@aws-sdk/util-user-agent-browser":"3.418.0","@aws-sdk/util-user-agent-node":"3.418.0","@aws-sdk/xml-builder":"3.310.0","@smithy/config-resolver":"^2.0.10","@smithy/eventstream-serde-browser":"^2.0.9","@smithy/eventstream-serde-config-resolver":"^2.0.9","@smithy/eventstream-serde-node":"^2.0.9","@smithy/fetch-http-handler":"^2.1.5","@smithy/hash-blob-browser":"^2.0.9","@smithy/hash-node":"^2.0.9","@smithy/hash-stream-node":"^2.0.9","@smithy/invalid-dependency":"^2.0.9","@smithy/md5-js":"^2.0.9","@smithy/middleware-content-length":"^2.0.11","@smithy/middleware-endpoint":"^2.0.9","@smithy/middleware-retry":"^2.0.12","@smithy/middleware-serde":"^2.0.9","@smithy/middleware-stack":"^2.0.2","@smithy/node-config-provider":"^2.0.12","@smithy/node-http-handler":"^2.1.5","@smithy/protocol-http":"^3.0.5","@smithy/smithy-client":"^2.1.6","@smithy/types":"^2.3.3","@smithy/url-parser":"^2.0.9","@smithy/util-base64":"^2.0.0","@smithy/util-body-length-browser":"^2.0.0","@smithy/util-body-length-node":"^2.1.0","@smithy/util-defaults-mode-browser":"^2.0.10","@smithy/util-defaults-mode-node":"^2.0.12","@smithy/util-retry":"^2.0.2","@smithy/util-stream":"^2.0.12","@smithy/util-utf8":"^2.0.0","@smithy/util-waiter":"^2.0.9","fast-xml-parser":"4.2.5",tslib:"^2.5.0"},devDependencies:{"@smithy/service-client-documentation-generator":"^2.0.0","@tsconfig/node14":"1.0.3","@types/chai":"^4.2.11","@types/mocha":"^8.0.4","@types/node":"^14.14.31",concurrently:"7.0.0","downlevel-dts":"0.10.1",rimraf:"3.0.2",typedoc:"0.23.23",typescript:"~4.9.5"},engines:{node:">=14.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-s3",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-s3"}}});var Ik=m(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});Jd.resolveStsAuthConfig=void 0;var yV=nn(),gV=(e,{stsClientCtor:t})=>(0,yV.resolveAwsAuthConfig)({...e,stsClientCtor:t});Jd.resolveStsAuthConfig=gV});var Rk=m(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.resolveClientEndpointParameters=void 0;var hV=e=>({...e,useDualstackEndpoint:e.useDualstackEndpoint??!1,useFipsEndpoint:e.useFipsEndpoint??!1,useGlobalEndpoint:e.useGlobalEndpoint??!1,defaultSigningName:"sts"});Qd.resolveClientEndpointParameters=hV});var Tk=m((lve,_V)=>{_V.exports={name:"@aws-sdk/client-sts",description:"AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",version:"3.421.0",scripts:{build:"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'","build:cjs":"tsc -p tsconfig.cjs.json","build:docs":"typedoc","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 sts",test:"yarn test:unit","test:unit":"jest"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"3.0.0","@aws-crypto/sha256-js":"3.0.0","@aws-sdk/credential-provider-node":"3.421.0","@aws-sdk/middleware-host-header":"3.418.0","@aws-sdk/middleware-logger":"3.418.0","@aws-sdk/middleware-recursion-detection":"3.418.0","@aws-sdk/middleware-sdk-sts":"3.418.0","@aws-sdk/middleware-signing":"3.418.0","@aws-sdk/middleware-user-agent":"3.418.0","@aws-sdk/region-config-resolver":"3.418.0","@aws-sdk/types":"3.418.0","@aws-sdk/util-endpoints":"3.418.0","@aws-sdk/util-user-agent-browser":"3.418.0","@aws-sdk/util-user-agent-node":"3.418.0","@smithy/config-resolver":"^2.0.10","@smithy/fetch-http-handler":"^2.1.5","@smithy/hash-node":"^2.0.9","@smithy/invalid-dependency":"^2.0.9","@smithy/middleware-content-length":"^2.0.11","@smithy/middleware-endpoint":"^2.0.9","@smithy/middleware-retry":"^2.0.12","@smithy/middleware-serde":"^2.0.9","@smithy/middleware-stack":"^2.0.2","@smithy/node-config-provider":"^2.0.12","@smithy/node-http-handler":"^2.1.5","@smithy/protocol-http":"^3.0.5","@smithy/smithy-client":"^2.1.6","@smithy/types":"^2.3.3","@smithy/url-parser":"^2.0.9","@smithy/util-base64":"^2.0.0","@smithy/util-body-length-browser":"^2.0.0","@smithy/util-body-length-node":"^2.1.0","@smithy/util-defaults-mode-browser":"^2.0.10","@smithy/util-defaults-mode-node":"^2.0.12","@smithy/util-retry":"^2.0.2","@smithy/util-utf8":"^2.0.0","fast-xml-parser":"4.2.5",tslib:"^2.5.0"},devDependencies:{"@smithy/service-client-documentation-generator":"^2.0.0","@tsconfig/node14":"1.0.3","@types/node":"^14.14.31",concurrently:"7.0.0","downlevel-dts":"0.10.1",rimraf:"3.0.2",typedoc:"0.23.23",typescript:"~4.9.5"},engines:{node:">=14.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-sts",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-sts"}}});var Zd=m(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.STSServiceException=zr.__ServiceException=void 0;var Bk=b();Object.defineProperty(zr,"__ServiceException",{enumerable:!0,get:function(){return Bk.ServiceException}});var yf=class e extends Bk.ServiceException{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};zr.STSServiceException=yf});var Bn=m(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.GetSessionTokenResponseFilterSensitiveLog=ae.GetFederationTokenResponseFilterSensitiveLog=ae.AssumeRoleWithWebIdentityResponseFilterSensitiveLog=ae.AssumeRoleWithWebIdentityRequestFilterSensitiveLog=ae.AssumeRoleWithSAMLResponseFilterSensitiveLog=ae.AssumeRoleWithSAMLRequestFilterSensitiveLog=ae.AssumeRoleResponseFilterSensitiveLog=ae.CredentialsFilterSensitiveLog=ae.InvalidAuthorizationMessageException=ae.IDPCommunicationErrorException=ae.InvalidIdentityTokenException=ae.IDPRejectedClaimException=ae.RegionDisabledException=ae.PackedPolicyTooLargeException=ae.MalformedPolicyDocumentException=ae.ExpiredTokenException=void 0;var vf=b(),Tn=Zd(),gf=class e extends Tn.STSServiceException{constructor(t){super({name:"ExpiredTokenException",$fault:"client",...t}),this.name="ExpiredTokenException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.ExpiredTokenException=gf;var hf=class e extends Tn.STSServiceException{constructor(t){super({name:"MalformedPolicyDocumentException",$fault:"client",...t}),this.name="MalformedPolicyDocumentException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.MalformedPolicyDocumentException=hf;var _f=class e extends Tn.STSServiceException{constructor(t){super({name:"PackedPolicyTooLargeException",$fault:"client",...t}),this.name="PackedPolicyTooLargeException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.PackedPolicyTooLargeException=_f;var Cf=class e extends Tn.STSServiceException{constructor(t){super({name:"RegionDisabledException",$fault:"client",...t}),this.name="RegionDisabledException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.RegionDisabledException=Cf;var Sf=class e extends Tn.STSServiceException{constructor(t){super({name:"IDPRejectedClaimException",$fault:"client",...t}),this.name="IDPRejectedClaimException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.IDPRejectedClaimException=Sf;var bf=class e extends Tn.STSServiceException{constructor(t){super({name:"InvalidIdentityTokenException",$fault:"client",...t}),this.name="InvalidIdentityTokenException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.InvalidIdentityTokenException=bf;var Ef=class e extends Tn.STSServiceException{constructor(t){super({name:"IDPCommunicationErrorException",$fault:"client",...t}),this.name="IDPCommunicationErrorException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.IDPCommunicationErrorException=Ef;var Pf=class e extends Tn.STSServiceException{constructor(t){super({name:"InvalidAuthorizationMessageException",$fault:"client",...t}),this.name="InvalidAuthorizationMessageException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};ae.InvalidAuthorizationMessageException=Pf;var CV=e=>({...e,...e.SecretAccessKey&&{SecretAccessKey:vf.SENSITIVE_STRING}});ae.CredentialsFilterSensitiveLog=CV;var SV=e=>({...e,...e.Credentials&&{Credentials:(0,ae.CredentialsFilterSensitiveLog)(e.Credentials)}});ae.AssumeRoleResponseFilterSensitiveLog=SV;var bV=e=>({...e,...e.SAMLAssertion&&{SAMLAssertion:vf.SENSITIVE_STRING}});ae.AssumeRoleWithSAMLRequestFilterSensitiveLog=bV;var EV=e=>({...e,...e.Credentials&&{Credentials:(0,ae.CredentialsFilterSensitiveLog)(e.Credentials)}});ae.AssumeRoleWithSAMLResponseFilterSensitiveLog=EV;var PV=e=>({...e,...e.WebIdentityToken&&{WebIdentityToken:vf.SENSITIVE_STRING}});ae.AssumeRoleWithWebIdentityRequestFilterSensitiveLog=PV;var vV=e=>({...e,...e.Credentials&&{Credentials:(0,ae.CredentialsFilterSensitiveLog)(e.Credentials)}});ae.AssumeRoleWithWebIdentityResponseFilterSensitiveLog=vV;var wV=e=>({...e,...e.Credentials&&{Credentials:(0,ae.CredentialsFilterSensitiveLog)(e.Credentials)}});ae.GetFederationTokenResponseFilterSensitiveLog=wV;var xV=e=>({...e,...e.Credentials&&{Credentials:(0,ae.CredentialsFilterSensitiveLog)(e.Credentials)}});ae.GetSessionTokenResponseFilterSensitiveLog=xV});var el=m(sn=>{"use strict";var qk=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",kV=qk+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",Dk="["+qk+"]["+kV+"]*",AV=new RegExp("^"+Dk+"$"),OV=function(e,t){let n=[],r=t.exec(e);for(;r;){let o=[];o.startIndex=t.lastIndex-r[0].length;let s=r.length;for(let a=0;a"u")};sn.isExist=function(e){return typeof e<"u"};sn.isEmptyObject=function(e){return Object.keys(e).length===0};sn.merge=function(e,t,n){if(t){let r=Object.keys(t),o=r.length;for(let s=0;s{"use strict";var wf=el(),IV={allowBooleanAttributes:!1,unpairedTags:[]};Uk.validate=function(e,t){t=Object.assign({},IV,t);let n=[],r=!1,o=!1;e[0]==="\uFEFF"&&(e=e.substr(1));for(let s=0;s"&&e[s]!==" "&&e[s]!==" "&&e[s]!==` -`&&e[s]!=="\r";s++)u+=e[s];if(u=u.trim(),u[u.length-1]==="/"&&(u=u.substring(0,u.length-1),s--),!LV(u)){let y;return u.trim().length===0?y="Invalid space after '<'.":y="Tag '"+u+"' is an invalid name.",qe("InvalidTag",y,at(e,s))}let l=BV(e,s);if(l===!1)return qe("InvalidAttr","Attributes for '"+u+"' have open quote.",at(e,s));let c=l.value;if(s=l.index,c[c.length-1]==="/"){let y=s-c.length;c=c.substring(0,c.length-1);let g=jk(c,t);if(g===!0)r=!0;else return qe(g.err.code,g.err.msg,at(e,y+g.err.line))}else if(i)if(l.tagClosed){if(c.trim().length>0)return qe("InvalidTag","Closing tag '"+u+"' can't have attributes or invalid starting.",at(e,a));{let y=n.pop();if(u!==y.tagName){let g=at(e,y.tagStartPos);return qe("InvalidTag","Expected closing tag '"+y.tagName+"' (opened in line "+g.line+", col "+g.col+") instead of closing tag '"+u+"'.",at(e,a))}n.length==0&&(o=!0)}}else return qe("InvalidTag","Closing tag '"+u+"' doesn't have proper closing.",at(e,s));else{let y=jk(c,t);if(y!==!0)return qe(y.err.code,y.err.msg,at(e,s-c.length+y.err.line));if(o===!0)return qe("InvalidXml","Multiple possible root nodes found.",at(e,s));t.unpairedTags.indexOf(u)!==-1||n.push({tagName:u,tagStartPos:a}),r=!0}for(s++;s0)return qe("InvalidXml","Invalid '"+JSON.stringify(n.map(s=>s.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return qe("InvalidXml","Start tag expected.",1);return!0};function Mk(e){return e===" "||e===" "||e===` -`||e==="\r"}function Fk(e,t){let n=t;for(;t5&&r==="xml")return qe("InvalidXml","XML declaration allowed only at the start of the document.",at(e,t));if(e[t]=="?"&&e[t+1]==">"){t++;break}else continue}return t}function Lk(e,t){if(e.length>t+5&&e[t+1]==="-"&&e[t+2]==="-"){for(t+=3;t"){t+=2;break}}else if(e.length>t+8&&e[t+1]==="D"&&e[t+2]==="O"&&e[t+3]==="C"&&e[t+4]==="T"&&e[t+5]==="Y"&&e[t+6]==="P"&&e[t+7]==="E"){let n=1;for(t+=8;t"&&(n--,n===0))break}else if(e.length>t+9&&e[t+1]==="["&&e[t+2]==="C"&&e[t+3]==="D"&&e[t+4]==="A"&&e[t+5]==="T"&&e[t+6]==="A"&&e[t+7]==="["){for(t+=8;t"){t+=2;break}}return t}var RV='"',TV="'";function BV(e,t){let n="",r="",o=!1;for(;t"&&r===""){o=!0;break}n+=e[t]}return r!==""?!1:{value:n,index:t,tagClosed:o}}var qV=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function jk(e,t){let n=wf.getAllMatches(e,qV),r={};for(let o=0;o{var zk={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(e,t){return t},attributeValueProcessor:function(e,t){return t},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(e,t,n){return e}},jV=function(e){return Object.assign({},zk,e)};kf.buildOptions=jV;kf.defaultOptions=zk});var $k=m((gve,Hk)=>{"use strict";var Af=class{constructor(t){this.tagname=t,this.child=[],this[":@"]={}}add(t,n){t==="__proto__"&&(t="#__proto__"),this.child.push({[t]:n})}addChild(t){t.tagname==="__proto__"&&(t.tagname="#__proto__"),t[":@"]&&Object.keys(t[":@"]).length>0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}};Hk.exports=Af});var Vk=m((hve,Kk)=>{var UV=el();function zV(e,t){let n={};if(e[t+3]==="O"&&e[t+4]==="C"&&e[t+5]==="T"&&e[t+6]==="Y"&&e[t+7]==="P"&&e[t+8]==="E"){t=t+9;let r=1,o=!1,s=!1,a="";for(;t"){if(s?e[t-1]==="-"&&e[t-2]==="-"&&(s=!1,r--):r--,r===0)break}else e[t]==="["?o=!0:a+=e[t];if(r!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:n,i:t}}function GV(e,t){let n="";for(;t{var YV=/^[-+]?0x[a-fA-F0-9]+$/,JV=/^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/;!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt);!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);var QV={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function ZV(e,t={}){if(t=Object.assign({},QV,t),!e||typeof e!="string")return e;let n=e.trim();if(t.skipLike!==void 0&&t.skipLike.test(n))return e;if(t.hex&&YV.test(n))return Number.parseInt(n,16);{let r=JV.exec(n);if(r){let o=r[1],s=r[2],a=e8(r[3]),i=r[4]||r[6];if(!t.leadingZeros&&s.length>0&&o&&n[2]!==".")return e;if(!t.leadingZeros&&s.length>0&&!o&&n[1]!==".")return e;{let u=Number(n),l=""+u;return l.search(/[eE]/)!==-1||i?t.eNotation?u:e:n.indexOf(".")!==-1?l==="0"&&a===""||l===a||o&&l==="-"+a?u:e:s?a===l||o+a===l?u:e:n===l||n===o+l?u:e}}else return e}}function e8(e){return e&&e.indexOf(".")!==-1&&(e=e.replace(/0+$/,""),e==="."?e="0":e[0]==="."?e="0"+e:e[e.length-1]==="."&&(e=e.substr(0,e.length-1))),e}Xk.exports=ZV});var Jk=m((Sve,Yk)=>{"use strict";var Rf=el(),ca=$k(),t8=Vk(),n8=Wk(),Cve="<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,Rf.nameRegexp),Of=class{constructor(t){this.options=t,this.currentNode=null,this.tagsNodeStack=[],this.docTypeEntities={},this.lastEntities={apos:{regex:/&(apos|#39|#x27);/g,val:"'"},gt:{regex:/&(gt|#62|#x3E);/g,val:">"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"\xA2"},pound:{regex:/&(pound|#163);/g,val:"\xA3"},yen:{regex:/&(yen|#165);/g,val:"\xA5"},euro:{regex:/&(euro|#8364);/g,val:"\u20AC"},copyright:{regex:/&(copy|#169);/g,val:"\xA9"},reg:{regex:/&(reg|#174);/g,val:"\xAE"},inr:{regex:/&(inr|#8377);/g,val:"\u20B9"}},this.addExternalEntities=r8,this.parseXml=c8,this.parseTextData=o8,this.resolveNameSpace=s8,this.buildAttributesMap=a8,this.isItStopNode=m8,this.replaceEntitiesValue=l8,this.readStopNodeData=f8,this.saveTextToParentTag=u8,this.addChild=d8}};function r8(e){let t=Object.keys(e);for(let n=0;n0)){a||(e=this.replaceEntitiesValue(e));let i=this.options.tagValueProcessor(t,e,n,o,s);return i==null?e:typeof i!=typeof e||i!==e?i:this.options.trimValues?If(e,this.options.parseTagValue,this.options.numberParseOptions):e.trim()===e?If(e,this.options.parseTagValue,this.options.numberParseOptions):e}}function s8(e){if(this.options.removeNSPrefix){let t=e.split(":"),n=e.charAt(0)==="/"?"/":"";if(t[0]==="xmlns")return"";t.length===2&&(e=n+t[1])}return e}var i8=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function a8(e,t,n){if(!this.options.ignoreAttributes&&typeof e=="string"){let r=Rf.getAllMatches(e,i8),o=r.length,s={};for(let a=0;a",s,"Closing Tag is not closed."),u=e.substring(s+2,i).trim();if(this.options.removeNSPrefix){let y=u.indexOf(":");y!==-1&&(u=u.substr(y+1))}this.options.transformTagName&&(u=this.options.transformTagName(u)),n&&(r=this.saveTextToParentTag(r,n,o));let l=o.substring(o.lastIndexOf(".")+1);if(u&&this.options.unpairedTags.indexOf(u)!==-1)throw new Error(`Unpaired tag can not be used as closing tag: `);let c=0;l&&this.options.unpairedTags.indexOf(l)!==-1?(c=o.lastIndexOf(".",o.lastIndexOf(".")-1),this.tagsNodeStack.pop()):c=o.lastIndexOf("."),o=o.substring(0,c),n=this.tagsNodeStack.pop(),r="",s=i}else if(e[s+1]==="?"){let i=Nf(e,s,!1,"?>");if(!i)throw new Error("Pi Tag is not closed.");if(r=this.saveTextToParentTag(r,n,o),!(this.options.ignoreDeclaration&&i.tagName==="?xml"||this.options.ignorePiTags)){let u=new ca(i.tagName);u.add(this.options.textNodeName,""),i.tagName!==i.tagExp&&i.attrExpPresent&&(u[":@"]=this.buildAttributesMap(i.tagExp,o,i.tagName)),this.addChild(n,u,o)}s=i.closeIndex+1}else if(e.substr(s+1,3)==="!--"){let i=mr(e,"-->",s+4,"Comment is not closed.");if(this.options.commentPropName){let u=e.substring(s+4,i-2);r=this.saveTextToParentTag(r,n,o),n.add(this.options.commentPropName,[{[this.options.textNodeName]:u}])}s=i}else if(e.substr(s+1,2)==="!D"){let i=t8(e,s);this.docTypeEntities=i.entities,s=i.i}else if(e.substr(s+1,2)==="!["){let i=mr(e,"]]>",s,"CDATA is not closed.")-2,u=e.substring(s+9,i);if(r=this.saveTextToParentTag(r,n,o),this.options.cdataPropName)n.add(this.options.cdataPropName,[{[this.options.textNodeName]:u}]);else{let l=this.parseTextData(u,n.tagname,o,!0,!1,!0);l==null&&(l=""),n.add(this.options.textNodeName,l)}s=i+2}else{let i=Nf(e,s,this.options.removeNSPrefix),u=i.tagName,l=i.tagExp,c=i.attrExpPresent,y=i.closeIndex;this.options.transformTagName&&(u=this.options.transformTagName(u)),n&&r&&n.tagname!=="!xml"&&(r=this.saveTextToParentTag(r,n,o,!1));let g=n;if(g&&this.options.unpairedTags.indexOf(g.tagname)!==-1&&(n=this.tagsNodeStack.pop(),o=o.substring(0,o.lastIndexOf("."))),u!==t.tagname&&(o+=o?"."+u:u),this.isItStopNode(this.options.stopNodes,o,u)){let C="";if(l.length>0&&l.lastIndexOf("/")===l.length-1)s=i.closeIndex;else if(this.options.unpairedTags.indexOf(u)!==-1)s=i.closeIndex;else{let A=this.readStopNodeData(e,u,y+1);if(!A)throw new Error(`Unexpected end of ${u}`);s=A.i,C=A.tagContent}let P=new ca(u);u!==l&&c&&(P[":@"]=this.buildAttributesMap(l,o,u)),C&&(C=this.parseTextData(C,u,o,!0,c,!0,!0)),o=o.substr(0,o.lastIndexOf(".")),P.add(this.options.textNodeName,C),this.addChild(n,P,o)}else{if(l.length>0&&l.lastIndexOf("/")===l.length-1){u[u.length-1]==="/"?(u=u.substr(0,u.length-1),l=u):l=l.substr(0,l.length-1),this.options.transformTagName&&(u=this.options.transformTagName(u));let C=new ca(u);u!==l&&c&&(C[":@"]=this.buildAttributesMap(l,o,u)),this.addChild(n,C,o),o=o.substr(0,o.lastIndexOf("."))}else{let C=new ca(u);this.tagsNodeStack.push(n),u!==l&&c&&(C[":@"]=this.buildAttributesMap(l,o,u)),this.addChild(n,C,o),n=C}r="",s=y}}else r+=e[s];return t.child};function d8(e,t,n){let r=this.options.updateTag(t.tagname,n,t[":@"]);r===!1||(typeof r=="string"&&(t.tagname=r),e.addChild(t))}var l8=function(e){if(this.options.processEntities){for(let t in this.docTypeEntities){let n=this.docTypeEntities[t];e=e.replace(n.regx,n.val)}for(let t in this.lastEntities){let n=this.lastEntities[t];e=e.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let t in this.htmlEntities){let n=this.htmlEntities[t];e=e.replace(n.regex,n.val)}e=e.replace(this.ampEntity.regex,this.ampEntity.val)}return e};function u8(e,t,n,r){return e&&(r===void 0&&(r=Object.keys(t.child).length===0),e=this.parseTextData(e,t.tagname,n,!1,t[":@"]?Object.keys(t[":@"]).length!==0:!1,r),e!==void 0&&e!==""&&t.add(this.options.textNodeName,e),e=""),e}function m8(e,t,n){let r="*."+n;for(let o in e){let s=e[o];if(r===s||t===s)return!0}return!1}function p8(e,t,n=">"){let r,o="";for(let s=t;s",n,`${t} is not closed`);if(e.substring(n+2,s).trim()===t&&(o--,o===0))return{tagContent:e.substring(r,n),i:s};n=s}else if(e[n+1]==="?")n=mr(e,"?>",n+1,"StopNode is not closed.");else if(e.substr(n+1,3)==="!--")n=mr(e,"-->",n+3,"StopNode is not closed.");else if(e.substr(n+1,2)==="![")n=mr(e,"]]>",n,"StopNode is not closed.")-2;else{let s=Nf(e,n,">");s&&((s&&s.tagName)===t&&s.tagExp[s.tagExp.length-1]!=="/"&&o++,n=s.closeIndex)}}function If(e,t,n){if(t&&typeof e=="string"){let r=e.trim();return r==="true"?!0:r==="false"?!1:n8(e,n)}else return Rf.isExist(e)?e:""}Yk.exports=Of});var eA=m(Zk=>{"use strict";function y8(e,t){return Qk(e,t)}function Qk(e,t,n){let r,o={};for(let s=0;s0&&(o[t.textNodeName]=r):r!==void 0&&(o[t.textNodeName]=r),o}function g8(e){let t=Object.keys(e);for(let n=0;n{var{buildOptions:C8}=Gk(),S8=Jk(),{prettify:b8}=eA(),E8=xf(),Tf=class{constructor(t){this.externalEntities={},this.options=C8(t)}parse(t,n){if(typeof t!="string")if(t.toString)t=t.toString();else throw new Error("XML data is accepted in String or Bytes[] form.");if(n){n===!0&&(n={});let s=E8.validate(t,n);if(s!==!0)throw Error(`${s.err.msg}:${s.err.line}:${s.err.col}`)}let r=new S8(this.options);r.addExternalEntities(this.externalEntities);let o=r.parseXml(t);return this.options.preserveOrder||o===void 0?o:b8(o,this.options)}addEntity(t,n){if(n.indexOf("&")!==-1)throw new Error("Entity value can't have '&'");if(t.indexOf("&")!==-1||t.indexOf(";")!==-1)throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for ' '");if(n==="&")throw new Error("An entity with value '&' is not permitted");this.externalEntities[t]=n}};tA.exports=Tf});var aA=m((Pve,iA)=>{var P8=` -`;function v8(e,t){let n="";return t.format&&t.indentBy.length>0&&(n=P8),oA(e,t,"",n)}function oA(e,t,n,r){let o="",s=!1;for(let a=0;a`,s=!1;continue}else if(u===t.commentPropName){o+=r+``,s=!0;continue}else if(u[0]==="?"){let P=rA(i[":@"],t),A=u==="?xml"?"":r,v=i[u][0][t.textNodeName];v=v.length!==0?" "+v:"",o+=A+`<${u}${v}${P}?>`,s=!0;continue}let c=r;c!==""&&(c+=t.indentBy);let y=rA(i[":@"],t),g=r+`<${u}${y}`,C=oA(i[u],t,l,c);t.unpairedTags.indexOf(u)!==-1?t.suppressUnpairedNode?o+=g+">":o+=g+"/>":(!C||C.length===0)&&t.suppressEmptyNode?o+=g+"/>":C&&C.endsWith(">")?o+=g+`>${C}${r}`:(o+=g+">",C&&r!==""&&(C.includes("/>")||C.includes("`),s=!0}return o}function w8(e){let t=Object.keys(e);for(let n=0;n0&&t.processEntities)for(let n=0;n{"use strict";var k8=aA(),A8={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(e,t){return t},attributeValueProcessor:function(e,t){return t},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function qn(e){this.options=Object.assign({},A8,e),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=I8),this.processTextOrObjNode=O8,this.options.format?(this.indentate=N8,this.tagEndChar=`> -`,this.newLine=` -`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}qn.prototype.build=function(e){return this.options.preserveOrder?k8(e,this.options):(Array.isArray(e)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(e={[this.options.arrayNodeName]:e}),this.j2x(e,0).val)};qn.prototype.j2x=function(e,t){let n="",r="";for(let o in e)if(!(typeof e[o]>"u"))if(e[o]===null)o[0]==="?"?r+=this.indentate(t)+"<"+o+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+o+"/"+this.tagEndChar;else if(e[o]instanceof Date)r+=this.buildTextValNode(e[o],o,"",t);else if(typeof e[o]!="object"){let s=this.isAttribute(o);if(s)n+=this.buildAttrPairStr(s,""+e[o]);else if(o===this.options.textNodeName){let a=this.options.tagValueProcessor(o,""+e[o]);r+=this.replaceEntitiesValue(a)}else r+=this.buildTextValNode(e[o],o,"",t)}else if(Array.isArray(e[o])){let s=e[o].length,a="";for(let i=0;i"u"||(u===null?o[0]==="?"?r+=this.indentate(t)+"<"+o+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+o+"/"+this.tagEndChar:typeof u=="object"?this.options.oneListGroup?a+=this.j2x(u,t+1).val:a+=this.processTextOrObjNode(u,o,t):a+=this.buildTextValNode(u,o,"",t))}this.options.oneListGroup&&(a=this.buildObjectNode(a,o,"",t)),r+=a}else if(this.options.attributesGroupName&&o===this.options.attributesGroupName){let s=Object.keys(e[o]),a=s.length;for(let i=0;i"+e+o:this.options.commentPropName!==!1&&t===this.options.commentPropName&&s.length===0?this.indentate(r)+``+this.newLine:this.indentate(r)+"<"+t+n+s+this.tagEndChar+e+this.indentate(r)+o}};qn.prototype.closeTag=function(e){let t="";return this.options.unpairedTags.indexOf(e)!==-1?this.options.suppressUnpairedNode||(t="/"):this.options.suppressEmptyNode?t="/":t=`>`+this.newLine;if(this.options.commentPropName!==!1&&t===this.options.commentPropName)return this.indentate(r)+``+this.newLine;if(t[0]==="?")return this.indentate(r)+"<"+t+n+"?"+this.tagEndChar;{let o=this.options.tagValueProcessor(t,e);return o=this.replaceEntitiesValue(o),o===""?this.indentate(r)+"<"+t+n+this.closeTag(t)+this.tagEndChar:this.indentate(r)+"<"+t+n+">"+o+"0&&this.options.processEntities)for(let t=0;t{"use strict";var R8=xf(),T8=nA(),B8=dA();lA.exports={XMLParser:T8,XMLValidator:R8,XMLBuilder:B8}});var cn=m(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.de_GetSessionTokenCommand=me.de_GetFederationTokenCommand=me.de_GetCallerIdentityCommand=me.de_GetAccessKeyInfoCommand=me.de_DecodeAuthorizationMessageCommand=me.de_AssumeRoleWithWebIdentityCommand=me.de_AssumeRoleWithSAMLCommand=me.de_AssumeRoleCommand=me.se_GetSessionTokenCommand=me.se_GetFederationTokenCommand=me.se_GetCallerIdentityCommand=me.se_GetAccessKeyInfoCommand=me.se_DecodeAuthorizationMessageCommand=me.se_AssumeRoleWithWebIdentityCommand=me.se_AssumeRoleWithSAMLCommand=me.se_AssumeRoleCommand=void 0;var q8=Ne(),W=b(),D8=Bf(),Dn=Bn(),M8=Zd(),F8=async(e,t)=>{let n=Ln,r;return r=Un({...lX(e,t),Action:"AssumeRole",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_AssumeRoleCommand=F8;var L8=async(e,t)=>{let n=Ln,r;return r=Un({...uX(e,t),Action:"AssumeRoleWithSAML",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_AssumeRoleWithSAMLCommand=L8;var j8=async(e,t)=>{let n=Ln,r;return r=Un({...mX(e,t),Action:"AssumeRoleWithWebIdentity",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_AssumeRoleWithWebIdentityCommand=j8;var U8=async(e,t)=>{let n=Ln,r;return r=Un({...pX(e,t),Action:"DecodeAuthorizationMessage",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_DecodeAuthorizationMessageCommand=U8;var z8=async(e,t)=>{let n=Ln,r;return r=Un({...fX(e,t),Action:"GetAccessKeyInfo",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_GetAccessKeyInfoCommand=z8;var G8=async(e,t)=>{let n=Ln,r;return r=Un({...yX(e,t),Action:"GetCallerIdentity",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_GetCallerIdentityCommand=G8;var H8=async(e,t)=>{let n=Ln,r;return r=Un({...gX(e,t),Action:"GetFederationToken",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_GetFederationTokenCommand=H8;var $8=async(e,t)=>{let n=Ln,r;return r=Un({...hX(e,t),Action:"GetSessionToken",Version:"2011-06-15"}),Fn(t,n,"/",void 0,r)};me.se_GetSessionTokenCommand=$8;var K8=async(e,t)=>{if(e.statusCode>=300)return V8(e,t);let n=await an(e.body,t),r={};return r=PX(n.AssumeRoleResult,t),{$metadata:Ze(e),...r}};me.de_AssumeRoleCommand=K8;var V8=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"ExpiredTokenException":case"com.amazonaws.sts#ExpiredTokenException":throw await qf(n,t);case"MalformedPolicyDocument":case"com.amazonaws.sts#MalformedPolicyDocumentException":throw await tl(n,t);case"PackedPolicyTooLarge":case"com.amazonaws.sts#PackedPolicyTooLargeException":throw await nl(n,t);case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await da(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},X8=async(e,t)=>{if(e.statusCode>=300)return W8(e,t);let n=await an(e.body,t),r={};return r=vX(n.AssumeRoleWithSAMLResult,t),{$metadata:Ze(e),...r}};me.de_AssumeRoleWithSAMLCommand=X8;var W8=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"ExpiredTokenException":case"com.amazonaws.sts#ExpiredTokenException":throw await qf(n,t);case"IDPRejectedClaim":case"com.amazonaws.sts#IDPRejectedClaimException":throw await uA(n,t);case"InvalidIdentityToken":case"com.amazonaws.sts#InvalidIdentityTokenException":throw await mA(n,t);case"MalformedPolicyDocument":case"com.amazonaws.sts#MalformedPolicyDocumentException":throw await tl(n,t);case"PackedPolicyTooLarge":case"com.amazonaws.sts#PackedPolicyTooLargeException":throw await nl(n,t);case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await da(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},Y8=async(e,t)=>{if(e.statusCode>=300)return J8(e,t);let n=await an(e.body,t),r={};return r=wX(n.AssumeRoleWithWebIdentityResult,t),{$metadata:Ze(e),...r}};me.de_AssumeRoleWithWebIdentityCommand=Y8;var J8=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"ExpiredTokenException":case"com.amazonaws.sts#ExpiredTokenException":throw await qf(n,t);case"IDPCommunicationError":case"com.amazonaws.sts#IDPCommunicationErrorException":throw await cX(n,t);case"IDPRejectedClaim":case"com.amazonaws.sts#IDPRejectedClaimException":throw await uA(n,t);case"InvalidIdentityToken":case"com.amazonaws.sts#InvalidIdentityTokenException":throw await mA(n,t);case"MalformedPolicyDocument":case"com.amazonaws.sts#MalformedPolicyDocumentException":throw await tl(n,t);case"PackedPolicyTooLarge":case"com.amazonaws.sts#PackedPolicyTooLargeException":throw await nl(n,t);case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await da(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},Q8=async(e,t)=>{if(e.statusCode>=300)return Z8(e,t);let n=await an(e.body,t),r={};return r=xX(n.DecodeAuthorizationMessageResult,t),{$metadata:Ze(e),...r}};me.de_DecodeAuthorizationMessageCommand=Q8;var Z8=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"InvalidAuthorizationMessageException":case"com.amazonaws.sts#InvalidAuthorizationMessageException":throw await dX(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},eX=async(e,t)=>{if(e.statusCode>=300)return tX(e,t);let n=await an(e.body,t),r={};return r=OX(n.GetAccessKeyInfoResult,t),{$metadata:Ze(e),...r}};me.de_GetAccessKeyInfoCommand=eX;var tX=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body),o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})},nX=async(e,t)=>{if(e.statusCode>=300)return rX(e,t);let n=await an(e.body,t),r={};return r=NX(n.GetCallerIdentityResult,t),{$metadata:Ze(e),...r}};me.de_GetCallerIdentityCommand=nX;var rX=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body),o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})},oX=async(e,t)=>{if(e.statusCode>=300)return sX(e,t);let n=await an(e.body,t),r={};return r=IX(n.GetFederationTokenResult,t),{$metadata:Ze(e),...r}};me.de_GetFederationTokenCommand=oX;var sX=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"MalformedPolicyDocument":case"com.amazonaws.sts#MalformedPolicyDocumentException":throw await tl(n,t);case"PackedPolicyTooLarge":case"com.amazonaws.sts#PackedPolicyTooLargeException":throw await nl(n,t);case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await da(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},iX=async(e,t)=>{if(e.statusCode>=300)return aX(e,t);let n=await an(e.body,t),r={};return r=RX(n.GetSessionTokenResult,t),{$metadata:Ze(e),...r}};me.de_GetSessionTokenCommand=iX;var aX=async(e,t)=>{let n={...e,body:await jn(e.body,t)},r=zn(e,n.body);switch(r){case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await da(n,t);default:let o=n.body;return Mn({output:e,parsedBody:o.Error,errorCode:r})}},qf=async(e,t)=>{let n=e.body,r=kX(n.Error,t),o=new Dn.ExpiredTokenException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},cX=async(e,t)=>{let n=e.body,r=TX(n.Error,t),o=new Dn.IDPCommunicationErrorException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},uA=async(e,t)=>{let n=e.body,r=BX(n.Error,t),o=new Dn.IDPRejectedClaimException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},dX=async(e,t)=>{let n=e.body,r=qX(n.Error,t),o=new Dn.InvalidAuthorizationMessageException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},mA=async(e,t)=>{let n=e.body,r=DX(n.Error,t),o=new Dn.InvalidIdentityTokenException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},tl=async(e,t)=>{let n=e.body,r=MX(n.Error,t),o=new Dn.MalformedPolicyDocumentException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},nl=async(e,t)=>{let n=e.body,r=FX(n.Error,t),o=new Dn.PackedPolicyTooLargeException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},da=async(e,t)=>{let n=e.body,r=LX(n.Error,t),o=new Dn.RegionDisabledException({$metadata:Ze(e),...r});return(0,W.decorateServiceException)(o,n)},lX=(e,t)=>{var r,o,s,a;let n={};if(e.RoleArn!=null&&(n.RoleArn=e.RoleArn),e.RoleSessionName!=null&&(n.RoleSessionName=e.RoleSessionName),e.PolicyArns!=null){let i=rl(e.PolicyArns,t);((r=e.PolicyArns)==null?void 0:r.length)===0&&(n.PolicyArns=[]),Object.entries(i).forEach(([u,l])=>{let c=`PolicyArns.${u}`;n[c]=l})}if(e.Policy!=null&&(n.Policy=e.Policy),e.DurationSeconds!=null&&(n.DurationSeconds=e.DurationSeconds),e.Tags!=null){let i=pA(e.Tags,t);((o=e.Tags)==null?void 0:o.length)===0&&(n.Tags=[]),Object.entries(i).forEach(([u,l])=>{let c=`Tags.${u}`;n[c]=l})}if(e.TransitiveTagKeys!=null){let i=EX(e.TransitiveTagKeys,t);((s=e.TransitiveTagKeys)==null?void 0:s.length)===0&&(n.TransitiveTagKeys=[]),Object.entries(i).forEach(([u,l])=>{let c=`TransitiveTagKeys.${u}`;n[c]=l})}if(e.ExternalId!=null&&(n.ExternalId=e.ExternalId),e.SerialNumber!=null&&(n.SerialNumber=e.SerialNumber),e.TokenCode!=null&&(n.TokenCode=e.TokenCode),e.SourceIdentity!=null&&(n.SourceIdentity=e.SourceIdentity),e.ProvidedContexts!=null){let i=SX(e.ProvidedContexts,t);((a=e.ProvidedContexts)==null?void 0:a.length)===0&&(n.ProvidedContexts=[]),Object.entries(i).forEach(([u,l])=>{let c=`ProvidedContexts.${u}`;n[c]=l})}return n},uX=(e,t)=>{var r;let n={};if(e.RoleArn!=null&&(n.RoleArn=e.RoleArn),e.PrincipalArn!=null&&(n.PrincipalArn=e.PrincipalArn),e.SAMLAssertion!=null&&(n.SAMLAssertion=e.SAMLAssertion),e.PolicyArns!=null){let o=rl(e.PolicyArns,t);((r=e.PolicyArns)==null?void 0:r.length)===0&&(n.PolicyArns=[]),Object.entries(o).forEach(([s,a])=>{let i=`PolicyArns.${s}`;n[i]=a})}return e.Policy!=null&&(n.Policy=e.Policy),e.DurationSeconds!=null&&(n.DurationSeconds=e.DurationSeconds),n},mX=(e,t)=>{var r;let n={};if(e.RoleArn!=null&&(n.RoleArn=e.RoleArn),e.RoleSessionName!=null&&(n.RoleSessionName=e.RoleSessionName),e.WebIdentityToken!=null&&(n.WebIdentityToken=e.WebIdentityToken),e.ProviderId!=null&&(n.ProviderId=e.ProviderId),e.PolicyArns!=null){let o=rl(e.PolicyArns,t);((r=e.PolicyArns)==null?void 0:r.length)===0&&(n.PolicyArns=[]),Object.entries(o).forEach(([s,a])=>{let i=`PolicyArns.${s}`;n[i]=a})}return e.Policy!=null&&(n.Policy=e.Policy),e.DurationSeconds!=null&&(n.DurationSeconds=e.DurationSeconds),n},pX=(e,t)=>{let n={};return e.EncodedMessage!=null&&(n.EncodedMessage=e.EncodedMessage),n},fX=(e,t)=>{let n={};return e.AccessKeyId!=null&&(n.AccessKeyId=e.AccessKeyId),n},yX=(e,t)=>({}),gX=(e,t)=>{var r,o;let n={};if(e.Name!=null&&(n.Name=e.Name),e.Policy!=null&&(n.Policy=e.Policy),e.PolicyArns!=null){let s=rl(e.PolicyArns,t);((r=e.PolicyArns)==null?void 0:r.length)===0&&(n.PolicyArns=[]),Object.entries(s).forEach(([a,i])=>{let u=`PolicyArns.${a}`;n[u]=i})}if(e.DurationSeconds!=null&&(n.DurationSeconds=e.DurationSeconds),e.Tags!=null){let s=pA(e.Tags,t);((o=e.Tags)==null?void 0:o.length)===0&&(n.Tags=[]),Object.entries(s).forEach(([a,i])=>{let u=`Tags.${a}`;n[u]=i})}return n},hX=(e,t)=>{let n={};return e.DurationSeconds!=null&&(n.DurationSeconds=e.DurationSeconds),e.SerialNumber!=null&&(n.SerialNumber=e.SerialNumber),e.TokenCode!=null&&(n.TokenCode=e.TokenCode),n},rl=(e,t)=>{let n={},r=1;for(let o of e){if(o===null)continue;let s=_X(o,t);Object.entries(s).forEach(([a,i])=>{n[`member.${r}.${a}`]=i}),r++}return n},_X=(e,t)=>{let n={};return e.arn!=null&&(n.arn=e.arn),n},CX=(e,t)=>{let n={};return e.ProviderArn!=null&&(n.ProviderArn=e.ProviderArn),e.ContextAssertion!=null&&(n.ContextAssertion=e.ContextAssertion),n},SX=(e,t)=>{let n={},r=1;for(let o of e){if(o===null)continue;let s=CX(o,t);Object.entries(s).forEach(([a,i])=>{n[`member.${r}.${a}`]=i}),r++}return n},bX=(e,t)=>{let n={};return e.Key!=null&&(n.Key=e.Key),e.Value!=null&&(n.Value=e.Value),n},EX=(e,t)=>{let n={},r=1;for(let o of e)o!==null&&(n[`member.${r}`]=o,r++);return n},pA=(e,t)=>{let n={},r=1;for(let o of e){if(o===null)continue;let s=bX(o,t);Object.entries(s).forEach(([a,i])=>{n[`member.${r}.${a}`]=i}),r++}return n},Df=(e,t)=>{let n={};return e.AssumedRoleId!==void 0&&(n.AssumedRoleId=(0,W.expectString)(e.AssumedRoleId)),e.Arn!==void 0&&(n.Arn=(0,W.expectString)(e.Arn)),n},PX=(e,t)=>{let n={};return e.Credentials!==void 0&&(n.Credentials=la(e.Credentials,t)),e.AssumedRoleUser!==void 0&&(n.AssumedRoleUser=Df(e.AssumedRoleUser,t)),e.PackedPolicySize!==void 0&&(n.PackedPolicySize=(0,W.strictParseInt32)(e.PackedPolicySize)),e.SourceIdentity!==void 0&&(n.SourceIdentity=(0,W.expectString)(e.SourceIdentity)),n},vX=(e,t)=>{let n={};return e.Credentials!==void 0&&(n.Credentials=la(e.Credentials,t)),e.AssumedRoleUser!==void 0&&(n.AssumedRoleUser=Df(e.AssumedRoleUser,t)),e.PackedPolicySize!==void 0&&(n.PackedPolicySize=(0,W.strictParseInt32)(e.PackedPolicySize)),e.Subject!==void 0&&(n.Subject=(0,W.expectString)(e.Subject)),e.SubjectType!==void 0&&(n.SubjectType=(0,W.expectString)(e.SubjectType)),e.Issuer!==void 0&&(n.Issuer=(0,W.expectString)(e.Issuer)),e.Audience!==void 0&&(n.Audience=(0,W.expectString)(e.Audience)),e.NameQualifier!==void 0&&(n.NameQualifier=(0,W.expectString)(e.NameQualifier)),e.SourceIdentity!==void 0&&(n.SourceIdentity=(0,W.expectString)(e.SourceIdentity)),n},wX=(e,t)=>{let n={};return e.Credentials!==void 0&&(n.Credentials=la(e.Credentials,t)),e.SubjectFromWebIdentityToken!==void 0&&(n.SubjectFromWebIdentityToken=(0,W.expectString)(e.SubjectFromWebIdentityToken)),e.AssumedRoleUser!==void 0&&(n.AssumedRoleUser=Df(e.AssumedRoleUser,t)),e.PackedPolicySize!==void 0&&(n.PackedPolicySize=(0,W.strictParseInt32)(e.PackedPolicySize)),e.Provider!==void 0&&(n.Provider=(0,W.expectString)(e.Provider)),e.Audience!==void 0&&(n.Audience=(0,W.expectString)(e.Audience)),e.SourceIdentity!==void 0&&(n.SourceIdentity=(0,W.expectString)(e.SourceIdentity)),n},la=(e,t)=>{let n={};return e.AccessKeyId!==void 0&&(n.AccessKeyId=(0,W.expectString)(e.AccessKeyId)),e.SecretAccessKey!==void 0&&(n.SecretAccessKey=(0,W.expectString)(e.SecretAccessKey)),e.SessionToken!==void 0&&(n.SessionToken=(0,W.expectString)(e.SessionToken)),e.Expiration!==void 0&&(n.Expiration=(0,W.expectNonNull)((0,W.parseRfc3339DateTimeWithOffset)(e.Expiration))),n},xX=(e,t)=>{let n={};return e.DecodedMessage!==void 0&&(n.DecodedMessage=(0,W.expectString)(e.DecodedMessage)),n},kX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},AX=(e,t)=>{let n={};return e.FederatedUserId!==void 0&&(n.FederatedUserId=(0,W.expectString)(e.FederatedUserId)),e.Arn!==void 0&&(n.Arn=(0,W.expectString)(e.Arn)),n},OX=(e,t)=>{let n={};return e.Account!==void 0&&(n.Account=(0,W.expectString)(e.Account)),n},NX=(e,t)=>{let n={};return e.UserId!==void 0&&(n.UserId=(0,W.expectString)(e.UserId)),e.Account!==void 0&&(n.Account=(0,W.expectString)(e.Account)),e.Arn!==void 0&&(n.Arn=(0,W.expectString)(e.Arn)),n},IX=(e,t)=>{let n={};return e.Credentials!==void 0&&(n.Credentials=la(e.Credentials,t)),e.FederatedUser!==void 0&&(n.FederatedUser=AX(e.FederatedUser,t)),e.PackedPolicySize!==void 0&&(n.PackedPolicySize=(0,W.strictParseInt32)(e.PackedPolicySize)),n},RX=(e,t)=>{let n={};return e.Credentials!==void 0&&(n.Credentials=la(e.Credentials,t)),n},TX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},BX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},qX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},DX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},MX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},FX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},LX=(e,t)=>{let n={};return e.message!==void 0&&(n.message=(0,W.expectString)(e.message)),n},Ze=e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),jX=(e,t)=>(0,W.collectBody)(e,t).then(n=>t.utf8Encoder(n)),Mn=(0,W.withBaseException)(M8.STSServiceException),Fn=async(e,t,n,r,o)=>{let{hostname:s,protocol:a="https",port:i,path:u}=await e.endpoint(),l={protocol:a,hostname:s,port:i,method:"POST",path:u.endsWith("/")?u.slice(0,-1)+n:u+n,headers:t};return r!==void 0&&(l.hostname=r),o!==void 0&&(l.body=o),new q8.HttpRequest(l)},Ln={"content-type":"application/x-www-form-urlencoded"},an=(e,t)=>jX(e,t).then(n=>{if(n.length){let r=new D8.XMLParser({attributeNamePrefix:"",htmlEntities:!0,ignoreAttributes:!1,ignoreDeclaration:!0,parseTagValue:!1,trimValues:!1,tagValueProcessor:(u,l)=>l.trim()===""&&l.includes(` -`)?"":void 0});r.addEntity("#xD","\r"),r.addEntity("#10",` -`);let o=r.parse(n),s="#text",a=Object.keys(o)[0],i=o[a];return i[s]&&(i[a]=i[s],delete i[s]),(0,W.getValueFromTextNode)(i)}return{}}),jn=async(e,t)=>{let n=await an(e,t);return n.Error&&(n.Error.message=n.Error.message??n.Error.Message),n},Un=e=>Object.entries(e).map(([t,n])=>(0,W.extendedEncodeURIComponent)(t)+"="+(0,W.extendedEncodeURIComponent)(n)).join("&"),zn=(e,t)=>{var n;if(((n=t.Error)==null?void 0:n.Code)!==void 0)return t.Error.Code;if(e.statusCode==404)return"NotFound"}});var ol=m(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.AssumeRoleCommand=Gr.$Command=void 0;var UX=nn(),zX=x(),GX=k(),yA=b();Object.defineProperty(Gr,"$Command",{enumerable:!0,get:function(){return yA.Command}});var HX=w(),$X=Bn(),fA=cn(),Mf=class e extends yA.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,GX.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,zX.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,UX.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"AssumeRoleCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:$X.AssumeRoleResponseFilterSensitiveLog,[HX.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"AssumeRole"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,fA.se_AssumeRoleCommand)(t,n)}deserialize(t,n){return(0,fA.de_AssumeRoleCommand)(t,n)}};Gr.AssumeRoleCommand=Mf});var sl=m(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.AssumeRoleWithWebIdentityCommand=Hr.$Command=void 0;var KX=x(),VX=k(),_A=b();Object.defineProperty(Hr,"$Command",{enumerable:!0,get:function(){return _A.Command}});var XX=w(),gA=Bn(),hA=cn(),Ff=class e extends _A.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,VX.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,KX.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"AssumeRoleWithWebIdentityCommand",inputFilterSensitiveLog:gA.AssumeRoleWithWebIdentityRequestFilterSensitiveLog,outputFilterSensitiveLog:gA.AssumeRoleWithWebIdentityResponseFilterSensitiveLog,[XX.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"AssumeRoleWithWebIdentity"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,hA.se_AssumeRoleWithWebIdentityCommand)(t,n)}deserialize(t,n){return(0,hA.de_AssumeRoleWithWebIdentityCommand)(t,n)}};Hr.AssumeRoleWithWebIdentityCommand=Ff});var Lf=m(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.decorateDefaultCredentialProvider=Mt.getDefaultRoleAssumerWithWebIdentity=Mt.getDefaultRoleAssumer=void 0;var WX=ol(),YX=sl(),CA="us-east-1",SA=e=>typeof e!="function"?e===void 0?CA:e:async()=>{try{return await e()}catch{return CA}},JX=(e,t)=>{let n,r;return async(o,s)=>{if(r=o,!n){let{logger:i,region:u,requestHandler:l}=e;n=new t({logger:i,credentialDefaultProvider:()=>async()=>r,region:SA(u||e.region),...l?{requestHandler:l}:{}})}let{Credentials:a}=await n.send(new WX.AssumeRoleCommand(s));if(!a||!a.AccessKeyId||!a.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRole call with role ${s.RoleArn}`);return{accessKeyId:a.AccessKeyId,secretAccessKey:a.SecretAccessKey,sessionToken:a.SessionToken,expiration:a.Expiration}}};Mt.getDefaultRoleAssumer=JX;var QX=(e,t)=>{let n;return async r=>{if(!n){let{logger:s,region:a,requestHandler:i}=e;n=new t({logger:s,region:SA(a||e.region),...i?{requestHandler:i}:{}})}let{Credentials:o}=await n.send(new YX.AssumeRoleWithWebIdentityCommand(r));if(!o||!o.AccessKeyId||!o.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${r.RoleArn}`);return{accessKeyId:o.AccessKeyId,secretAccessKey:o.SecretAccessKey,sessionToken:o.SessionToken,expiration:o.Expiration}}};Mt.getDefaultRoleAssumerWithWebIdentity=QX;var ZX=e=>t=>e({roleAssumer:(0,Mt.getDefaultRoleAssumer)(t,t.stsClientCtor),roleAssumerWithWebIdentity:(0,Mt.getDefaultRoleAssumerWithWebIdentity)(t,t.stsClientCtor),...t});Mt.decorateDefaultCredentialProvider=ZX});var bA=m(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.fromEnv=et.ENV_EXPIRATION=et.ENV_SESSION=et.ENV_SECRET=et.ENV_KEY=void 0;var e4=xe();et.ENV_KEY="AWS_ACCESS_KEY_ID";et.ENV_SECRET="AWS_SECRET_ACCESS_KEY";et.ENV_SESSION="AWS_SESSION_TOKEN";et.ENV_EXPIRATION="AWS_CREDENTIAL_EXPIRATION";var t4=()=>async()=>{let e=process.env[et.ENV_KEY],t=process.env[et.ENV_SECRET],n=process.env[et.ENV_SESSION],r=process.env[et.ENV_EXPIRATION];if(e&&t)return{accessKeyId:e,secretAccessKey:t,...n&&{sessionToken:n},...r&&{expiration:new Date(r)}};throw new e4.CredentialsProviderError("Unable to find environment variable credentials.")};et.fromEnv=t4});var Uf=m(jf=>{"use strict";Object.defineProperty(jf,"__esModule",{value:!0});var n4=(ne(),J(te));n4.__exportStar(bA(),jf)});var dl=m((Rve,DA)=>{var cl=Object.defineProperty,r4=Object.getOwnPropertyDescriptor,o4=Object.getOwnPropertyNames,s4=Object.prototype.hasOwnProperty,De=(e,t)=>cl(e,"name",{value:t,configurable:!0}),i4=(e,t)=>{for(var n in t)cl(e,n,{get:t[n],enumerable:!0})},a4=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of o4(t))!s4.call(e,o)&&o!==n&&cl(e,o,{get:()=>t[o],enumerable:!(r=r4(t,o))||r.enumerable});return e},c4=e=>a4(cl({},"__esModule",{value:!0}),e),wA={};i4(wA,{DEFAULT_MAX_RETRIES:()=>OA,DEFAULT_TIMEOUT:()=>AA,ENV_CMDS_AUTH_TOKEN:()=>Hf,ENV_CMDS_FULL_URI:()=>il,ENV_CMDS_RELATIVE_URI:()=>al,Endpoint:()=>RA,fromContainerMetadata:()=>m4,fromInstanceMetadata:()=>T4,getInstanceMetadataEndpoint:()=>BA,httpRequest:()=>$r,providerConfigFromInit:()=>$f});DA.exports=c4(wA);var d4=require("url"),Ft=xe(),l4=require("buffer"),u4=require("http");function $r(e){return new Promise((t,n)=>{var r;let o=(0,u4.request)({method:"GET",...e,hostname:(r=e.hostname)==null?void 0:r.replace(/^\[(.+)\]$/,"$1")});o.on("error",s=>{n(Object.assign(new Ft.ProviderError("Unable to connect to instance metadata service"),s)),o.destroy()}),o.on("timeout",()=>{n(new Ft.ProviderError("TimeoutError from instance metadata service")),o.destroy()}),o.on("response",s=>{let{statusCode:a=400}=s;(a<200||300<=a)&&(n(Object.assign(new Ft.ProviderError("Error response received from instance metadata service"),{statusCode:a})),o.destroy());let i=[];s.on("data",u=>{i.push(u)}),s.on("end",()=>{t(l4.Buffer.concat(i)),o.destroy()})}),o.end()})}De($r,"httpRequest");var xA=De(e=>!!e&&typeof e=="object"&&typeof e.AccessKeyId=="string"&&typeof e.SecretAccessKey=="string"&&typeof e.Token=="string"&&typeof e.Expiration=="string","isImdsCredentials"),kA=De(e=>({accessKeyId:e.AccessKeyId,secretAccessKey:e.SecretAccessKey,sessionToken:e.Token,expiration:new Date(e.Expiration)}),"fromImdsCredentials"),AA=1e3,OA=0,$f=De(({maxRetries:e=OA,timeout:t=AA})=>({maxRetries:e,timeout:t}),"providerConfigFromInit"),Gf=De((e,t)=>{let n=e();for(let r=0;r{let{timeout:t,maxRetries:n}=$f(e);return()=>Gf(async()=>{let r=await h4(),o=JSON.parse(await p4(t,r));if(!xA(o))throw new Ft.CredentialsProviderError("Invalid response received from instance metadata service.");return kA(o)},n)},"fromContainerMetadata"),p4=De(async(e,t)=>(process.env[Hf]&&(t.headers={...t.headers,Authorization:process.env[Hf]}),(await $r({...t,timeout:e})).toString()),"requestFromEcsImds"),f4="169.254.170.2",y4={localhost:!0,"127.0.0.1":!0},g4={"http:":!0,"https:":!0},h4=De(async()=>{if(process.env[al])return{hostname:f4,path:process.env[al]};if(process.env[il]){let e=(0,d4.parse)(process.env[il]);if(!e.hostname||!(e.hostname in y4))throw new Ft.CredentialsProviderError(`${e.hostname} is not a valid container metadata service hostname`,!1);if(!e.protocol||!(e.protocol in g4))throw new Ft.CredentialsProviderError(`${e.protocol} is not a valid container metadata service protocol`,!1);return{...e,port:e.port?parseInt(e.port,10):void 0}}throw new Ft.CredentialsProviderError(`The container metadata credential provider cannot be used unless the ${al} or ${il} environment variable is set`,!1)},"getCmdsUri"),NA=class IA extends Ft.CredentialsProviderError{constructor(t,n=!0){super(t,n),this.tryNextLink=n,this.name="InstanceMetadataV1FallbackError",Object.setPrototypeOf(this,IA.prototype)}};De(NA,"InstanceMetadataV1FallbackError");var _4=NA,Kf=rn(),C4=lr(),RA=(e=>(e.IPv4="http://169.254.169.254",e.IPv6="http://[fd00:ec2::254]",e))(RA||{}),S4="AWS_EC2_METADATA_SERVICE_ENDPOINT",b4="ec2_metadata_service_endpoint",E4={environmentVariableSelector:e=>e[S4],configFileSelector:e=>e[b4],default:void 0},TA=(e=>(e.IPv4="IPv4",e.IPv6="IPv6",e))(TA||{}),P4="AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE",v4="ec2_metadata_service_endpoint_mode",w4={environmentVariableSelector:e=>e[P4],configFileSelector:e=>e[v4],default:"IPv4"},BA=De(async()=>(0,C4.parseUrl)(await x4()||await k4()),"getInstanceMetadataEndpoint"),x4=De(async()=>(0,Kf.loadConfig)(E4)(),"getFromEndpointConfig"),k4=De(async()=>{let e=await(0,Kf.loadConfig)(w4)();switch(e){case"IPv4":return"http://169.254.169.254";case"IPv6":return"http://[fd00:ec2::254]";default:throw new Error(`Unsupported endpoint mode: ${e}. Select from ${Object.values(TA)}`)}},"getFromEndpointModeConfig"),A4=5*60,O4=5*60,N4="https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html",EA=De((e,t)=>{let n=A4+Math.floor(Math.random()*O4),r=new Date(Date.now()+n*1e3);t.warn(`Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(r)}. -For more information, please visit: `+N4);let o=e.originalExpiration??e.expiration;return{...e,...o?{originalExpiration:o}:{},expiration:r}},"getExtendedInstanceMetadataCredentials"),I4=De((e,t={})=>{let n=(t==null?void 0:t.logger)||console,r;return async()=>{let o;try{o=await e(),o.expiration&&o.expiration.getTime()I4(B4(e),{logger:e.logger}),"fromInstanceMetadata"),B4=De(e=>{let t=!1,{logger:n,profile:r}=e,{timeout:o,maxRetries:s}=$f(e),a=De(async(i,u)=>{var l;if(t||((l=u.headers)==null?void 0:l[vA])==null){let g=!1,C=!1,P=await(0,Kf.loadConfig)({environmentVariableSelector:A=>{let v=A[zf];if(C=!!v&&v!=="false",v===void 0)throw new Ft.CredentialsProviderError(`${zf} not set in env, checking config file next.`);return C},configFileSelector:A=>{let v=A[PA];return g=!!v&&v!=="false",g},default:!1},{profile:r})();if(e.ec2MetadataV1Disabled||P){let A=[];throw e.ec2MetadataV1Disabled&&A.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"),g&&A.push(`config file profile (${PA})`),C&&A.push(`process environment variable (${zf})`),new _4(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${A.join(", ")}].`)}}let y=(await Gf(async()=>{let g;try{g=await D4(u)}catch(C){throw C.statusCode===401&&(t=!1),C}return g},i)).trim();return Gf(async()=>{let g;try{g=await M4(y,u)}catch(C){throw C.statusCode===401&&(t=!1),C}return g},i)},"getCredentials");return async()=>{let i=await BA();if(t)return n==null||n.debug("AWS SDK Instance Metadata","using v1 fallback (no token fetch)"),a(s,{...i,timeout:o});{let u;try{u=(await q4({...i,timeout:o})).toString()}catch(l){if((l==null?void 0:l.statusCode)===400)throw Object.assign(l,{message:"EC2 Metadata token request returned error"});return(l.message==="TimeoutError"||[403,404,405].includes(l.statusCode))&&(t=!0),n==null||n.debug("AWS SDK Instance Metadata","using v1 fallback (initial)"),a(s,{...i,timeout:o})}return a(s,{...i,headers:{[vA]:u},timeout:o})}}},"getInstanceImdsProvider"),q4=De(async e=>$r({...e,path:R4,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),"getMetadataToken"),D4=De(async e=>(await $r({...e,path:qA})).toString(),"getProfile"),M4=De(async(e,t)=>{let n=JSON.parse((await $r({...t,path:qA+e})).toString());if(!xA(n))throw new Ft.CredentialsProviderError("Invalid response received from instance metadata service.");return kA(n)},"getCredentialsFromProfile")});var FA=m(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});ll.resolveCredentialSource=void 0;var F4=Uf(),MA=dl(),L4=xe(),j4=(e,t)=>{let n={EcsContainer:MA.fromContainerMetadata,Ec2InstanceMetadata:MA.fromInstanceMetadata,Environment:F4.fromEnv};if(e in n)return n[e]();throw new L4.CredentialsProviderError(`Unsupported credential source in profile ${t}. Got ${e}, expected EcsContainer or Ec2InstanceMetadata or Environment.`)};ll.resolveCredentialSource=j4});var LA=m(Kr=>{"use strict";Object.defineProperty(Kr,"__esModule",{value:!0});Kr.resolveAssumeRoleCredentials=Kr.isAssumeRoleProfile=void 0;var Vf=xe(),U4=wt(),z4=FA(),G4=Xf(),H4=e=>!!e&&typeof e=="object"&&typeof e.role_arn=="string"&&["undefined","string"].indexOf(typeof e.role_session_name)>-1&&["undefined","string"].indexOf(typeof e.external_id)>-1&&["undefined","string"].indexOf(typeof e.mfa_serial)>-1&&($4(e)||K4(e));Kr.isAssumeRoleProfile=H4;var $4=e=>typeof e.source_profile=="string"&&typeof e.credential_source>"u",K4=e=>typeof e.credential_source=="string"&&typeof e.source_profile>"u",V4=async(e,t,n,r={})=>{let o=t[e];if(!n.roleAssumer)throw new Vf.CredentialsProviderError(`Profile ${e} requires a role to be assumed, but no role assumption callback was provided.`,!1);let{source_profile:s}=o;if(s&&s in r)throw new Vf.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${(0,U4.getProfileName)(n)}. Profiles visited: `+Object.keys(r).join(", "),!1);let a=s?(0,G4.resolveProfileData)(s,t,n,{...r,[s]:!0}):(0,z4.resolveCredentialSource)(o.credential_source,e)(),i={RoleArn:o.role_arn,RoleSessionName:o.role_session_name||`aws-sdk-js-${Date.now()}`,ExternalId:o.external_id,DurationSeconds:parseInt(o.duration_seconds||"3600",10)},{mfa_serial:u}=o;if(u){if(!n.mfaCodeProvider)throw new Vf.CredentialsProviderError(`Profile ${e} requires multi-factor authentication, but no MFA code callback was provided.`,!1);i.SerialNumber=u,i.TokenCode=await n.mfaCodeProvider(u)}let l=await a;return n.roleAssumer(l,i)};Kr.resolveAssumeRoleCredentials=V4});var jA=m(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.getValidatedProcessCredentials=void 0;var X4=(e,t)=>{if(t.Version!==1)throw Error(`Profile ${e} credential_process did not return Version 1.`);if(t.AccessKeyId===void 0||t.SecretAccessKey===void 0)throw Error(`Profile ${e} credential_process returned invalid credentials.`);if(t.Expiration){let n=new Date;if(new Date(t.Expiration){"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.resolveProcessCredentials=void 0;var Wf=xe(),W4=require("child_process"),Y4=require("util"),J4=jA(),Q4=async(e,t)=>{let n=t[e];if(t[e]){let r=n.credential_process;if(r!==void 0){let o=(0,Y4.promisify)(W4.exec);try{let{stdout:s}=await o(r),a;try{a=JSON.parse(s.trim())}catch{throw Error(`Profile ${e} credential_process returned invalid JSON.`)}return(0,J4.getValidatedProcessCredentials)(e,a)}catch(s){throw new Wf.CredentialsProviderError(s.message)}}else throw new Wf.CredentialsProviderError(`Profile ${e} did not contain credential_process.`)}else throw new Wf.CredentialsProviderError(`Profile ${e} could not be found in shared credentials file.`)};ml.resolveProcessCredentials=Q4});var GA=m(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});pl.fromProcess=void 0;var zA=wt(),Z4=UA(),eW=(e={})=>async()=>{let t=await(0,zA.parseKnownFiles)(e);return(0,Z4.resolveProcessCredentials)((0,zA.getProfileName)(e),t)};pl.fromProcess=eW});var Jf=m(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var tW=(ne(),J(te));tW.__exportStar(GA(),Yf)});var HA=m(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.resolveProcessCredentials=Vr.isProcessProfile=void 0;var nW=Jf(),rW=e=>!!e&&typeof e=="object"&&typeof e.credential_process=="string";Vr.isProcessProfile=rW;var oW=async(e,t)=>(0,nW.fromProcess)({...e,profile:t})();Vr.resolveProcessCredentials=oW});var Qf=m(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});fl.isSsoProfile=void 0;var sW=e=>e&&(typeof e.sso_start_url=="string"||typeof e.sso_account_id=="string"||typeof e.sso_session=="string"||typeof e.sso_region=="string"||typeof e.sso_role_name=="string");fl.isSsoProfile=sW});var $A=m(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});yl.resolveClientEndpointParameters=void 0;var iW=e=>({...e,useDualstackEndpoint:e.useDualstackEndpoint??!1,useFipsEndpoint:e.useFipsEndpoint??!1,defaultSigningName:"awsssoportal"});yl.resolveClientEndpointParameters=iW});var KA=m((zve,aW)=>{aW.exports={name:"@aws-sdk/client-sso",description:"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",version:"3.421.0",scripts:{build:"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'","build:cjs":"tsc -p tsconfig.cjs.json","build:docs":"typedoc","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:!1,dependencies:{"@aws-crypto/sha256-browser":"3.0.0","@aws-crypto/sha256-js":"3.0.0","@aws-sdk/middleware-host-header":"3.418.0","@aws-sdk/middleware-logger":"3.418.0","@aws-sdk/middleware-recursion-detection":"3.418.0","@aws-sdk/middleware-user-agent":"3.418.0","@aws-sdk/region-config-resolver":"3.418.0","@aws-sdk/types":"3.418.0","@aws-sdk/util-endpoints":"3.418.0","@aws-sdk/util-user-agent-browser":"3.418.0","@aws-sdk/util-user-agent-node":"3.418.0","@smithy/config-resolver":"^2.0.10","@smithy/fetch-http-handler":"^2.1.5","@smithy/hash-node":"^2.0.9","@smithy/invalid-dependency":"^2.0.9","@smithy/middleware-content-length":"^2.0.11","@smithy/middleware-endpoint":"^2.0.9","@smithy/middleware-retry":"^2.0.12","@smithy/middleware-serde":"^2.0.9","@smithy/middleware-stack":"^2.0.2","@smithy/node-config-provider":"^2.0.12","@smithy/node-http-handler":"^2.1.5","@smithy/protocol-http":"^3.0.5","@smithy/smithy-client":"^2.1.6","@smithy/types":"^2.3.3","@smithy/url-parser":"^2.0.9","@smithy/util-base64":"^2.0.0","@smithy/util-body-length-browser":"^2.0.0","@smithy/util-body-length-node":"^2.1.0","@smithy/util-defaults-mode-browser":"^2.0.10","@smithy/util-defaults-mode-node":"^2.0.12","@smithy/util-retry":"^2.0.2","@smithy/util-utf8":"^2.0.0",tslib:"^2.5.0"},devDependencies:{"@smithy/service-client-documentation-generator":"^2.0.0","@tsconfig/node14":"1.0.3","@types/node":"^14.14.31",concurrently:"7.0.0","downlevel-dts":"0.10.1",rimraf:"3.0.2",typedoc:"0.23.23",typescript:"~4.9.5"},engines:{node:">=14.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"}}});var XA=m((gl,VA)=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});gl.isCrtAvailable=void 0;var cW=()=>{try{return typeof require=="function"&&typeof VA<"u"&&require("aws-crt")?["md/crt-avail"]:null}catch{return null}};gl.isCrtAvailable=cW});var ua=m(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.defaultUserAgent=Lt.UA_APP_ID_INI_NAME=Lt.UA_APP_ID_ENV_NAME=void 0;var dW=rn(),WA=require("os"),Zf=require("process"),lW=XA();Lt.UA_APP_ID_ENV_NAME="AWS_SDK_UA_APP_ID";Lt.UA_APP_ID_INI_NAME="sdk-ua-app-id";var uW=({serviceId:e,clientVersion:t})=>{let n=[["aws-sdk-js",t],["ua","2.0"],[`os/${(0,WA.platform)()}`,(0,WA.release)()],["lang/js"],["md/nodejs",`${Zf.versions.node}`]],r=(0,lW.isCrtAvailable)();r&&n.push(r),e&&n.push([`api/${e}`,t]),Zf.env.AWS_EXECUTION_ENV&&n.push([`exec-env/${Zf.env.AWS_EXECUTION_ENV}`]);let o=(0,dW.loadConfig)({environmentVariableSelector:a=>a[Lt.UA_APP_ID_ENV_NAME],configFileSelector:a=>a[Lt.UA_APP_ID_INI_NAME],default:void 0})(),s;return async()=>{if(!s){let a=await o;s=a?[...n,[`app/${a}`]]:[...n]}return s}};Lt.defaultUserAgent=uW});var ma=m(($ve,eO)=>{var hl=Object.defineProperty,mW=Object.getOwnPropertyDescriptor,pW=Object.getOwnPropertyNames,fW=Object.prototype.hasOwnProperty,JA=(e,t)=>hl(e,"name",{value:t,configurable:!0}),yW=(e,t)=>{for(var n in t)hl(e,n,{get:t[n],enumerable:!0})},gW=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of pW(t))!fW.call(e,o)&&o!==n&&hl(e,o,{get:()=>t[o],enumerable:!(r=mW(t,o))||r.enumerable});return e},hW=e=>gW(hl({},"__esModule",{value:!0}),e),QA={};yW(QA,{Hash:()=>SW});eO.exports=hW(QA);var ey=vr(),_W=st(),CW=require("buffer"),YA=require("crypto"),ZA=class{constructor(t,n){this.algorithmIdentifier=t,this.secret=n,this.reset()}update(t,n){this.hash.update((0,_W.toUint8Array)(ty(t,n)))}digest(){return Promise.resolve(this.hash.digest())}reset(){this.hash=this.secret?(0,YA.createHmac)(this.algorithmIdentifier,ty(this.secret)):(0,YA.createHash)(this.algorithmIdentifier)}};JA(ZA,"Hash");var SW=ZA;function ty(e,t){return CW.Buffer.isBuffer(e)?e:typeof e=="string"?(0,ey.fromString)(e,t):ArrayBuffer.isView(e)?(0,ey.fromArrayBuffer)(e.buffer,e.byteOffset,e.byteLength):(0,ey.fromArrayBuffer)(e)}JA(ty,"castSourceData")});var pa=m((Kve,rO)=>{var _l=Object.defineProperty,bW=Object.getOwnPropertyDescriptor,EW=Object.getOwnPropertyNames,PW=Object.prototype.hasOwnProperty,vW=(e,t)=>_l(e,"name",{value:t,configurable:!0}),wW=(e,t)=>{for(var n in t)_l(e,n,{get:t[n],enumerable:!0})},xW=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of EW(t))!PW.call(e,o)&&o!==n&&_l(e,o,{get:()=>t[o],enumerable:!(r=bW(t,o))||r.enumerable});return e},kW=e=>xW(_l({},"__esModule",{value:!0}),e),nO={};wW(nO,{calculateBodyLength:()=>AW});rO.exports=kW(nO);var tO=require("fs"),AW=vW(e=>{if(!e)return 0;if(typeof e=="string")return Buffer.byteLength(e);if(typeof e.byteLength=="number")return e.byteLength;if(typeof e.size=="number")return e.size;if(typeof e.start=="number"&&typeof e.end=="number")return e.end+1-e.start;if(typeof e.path=="string"||Buffer.isBuffer(e.path))return(0,tO.lstatSync)(e.path).size;if(typeof e.fd=="number")return(0,tO.fstatSync)(e.fd).size;throw new Error(`Body Length computation failed for ${e}`)},"calculateBodyLength")});var gO=m(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});Cl.ruleSet=void 0;var pO="required",ln="fn",un="argv",Wr="ref",oO="isSet",dn="tree",Xr="error",fa="endpoint",ny="PartitionResult",sO={[pO]:!1,type:"String"},iO={[pO]:!0,default:!1,type:"Boolean"},aO={[Wr]:"Endpoint"},fO={[ln]:"booleanEquals",[un]:[{[Wr]:"UseFIPS"},!0]},yO={[ln]:"booleanEquals",[un]:[{[Wr]:"UseDualStack"},!0]},jt={},cO={[ln]:"booleanEquals",[un]:[!0,{[ln]:"getAttr",[un]:[{[Wr]:ny},"supportsFIPS"]}]},dO={[ln]:"booleanEquals",[un]:[!0,{[ln]:"getAttr",[un]:[{[Wr]:ny},"supportsDualStack"]}]},lO=[fO],uO=[yO],mO=[{[Wr]:"Region"}],OW={version:"1.0",parameters:{Region:sO,UseDualStack:iO,UseFIPS:iO,Endpoint:sO},rules:[{conditions:[{[ln]:oO,[un]:[aO]}],type:dn,rules:[{conditions:lO,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:Xr},{conditions:uO,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:Xr},{endpoint:{url:aO,properties:jt,headers:jt},type:fa}]},{conditions:[{[ln]:oO,[un]:mO}],type:dn,rules:[{conditions:[{[ln]:"aws.partition",[un]:mO,assign:ny}],type:dn,rules:[{conditions:[fO,yO],type:dn,rules:[{conditions:[cO,dO],type:dn,rules:[{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:jt,headers:jt},type:fa}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:Xr}]},{conditions:lO,type:dn,rules:[{conditions:[cO],type:dn,rules:[{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}",properties:jt,headers:jt},type:fa}]},{error:"FIPS is enabled but this partition does not support FIPS",type:Xr}]},{conditions:uO,type:dn,rules:[{conditions:[dO],type:dn,rules:[{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:jt,headers:jt},type:fa}]},{error:"DualStack is enabled but this partition does not support DualStack",type:Xr}]},{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dnsSuffix}",properties:jt,headers:jt},type:fa}]}]},{error:"Invalid Configuration: Missing Region",type:Xr}]};Cl.ruleSet=OW});var hO=m(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});Sl.defaultEndpointResolver=void 0;var NW=Fr(),IW=gO(),RW=(e,t={})=>(0,NW.resolveEndpoint)(IW.ruleSet,{endpointParams:e,logger:t.logger});Sl.defaultEndpointResolver=RW});var SO=m(bl=>{"use strict";Object.defineProperty(bl,"__esModule",{value:!0});bl.getRuntimeConfig=void 0;var TW=b(),BW=lr(),_O=wr(),CO=st(),qW=hO(),DW=e=>({apiVersion:"2019-06-10",base64Decoder:(e==null?void 0:e.base64Decoder)??_O.fromBase64,base64Encoder:(e==null?void 0:e.base64Encoder)??_O.toBase64,disableHostPrefix:(e==null?void 0:e.disableHostPrefix)??!1,endpointProvider:(e==null?void 0:e.endpointProvider)??qW.defaultEndpointResolver,extensions:(e==null?void 0:e.extensions)??[],logger:(e==null?void 0:e.logger)??new TW.NoOpLogger,serviceId:(e==null?void 0:e.serviceId)??"SSO",urlParser:(e==null?void 0:e.urlParser)??BW.parseUrl,utf8Decoder:(e==null?void 0:e.utf8Decoder)??CO.fromUtf8,utf8Encoder:(e==null?void 0:e.utf8Encoder)??CO.toUtf8});bl.getRuntimeConfig=DW});var ga=m((Yve,xO)=>{var MW=Object.create,ya=Object.defineProperty,FW=Object.getOwnPropertyDescriptor,LW=Object.getOwnPropertyNames,jW=Object.getPrototypeOf,UW=Object.prototype.hasOwnProperty,ry=(e,t)=>ya(e,"name",{value:t,configurable:!0}),zW=(e,t)=>{for(var n in t)ya(e,n,{get:t[n],enumerable:!0})},vO=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of LW(t))!UW.call(e,o)&&o!==n&&ya(e,o,{get:()=>t[o],enumerable:!(r=FW(t,o))||r.enumerable});return e},GW=(e,t,n)=>(n=e!=null?MW(jW(e)):{},vO(t||!e||!e.__esModule?ya(n,"default",{value:e,enumerable:!0}):n,e)),HW=e=>vO(ya({},"__esModule",{value:!0}),e),wO={};zW(wO,{resolveDefaultsModeConfig:()=>e5});xO.exports=HW(wO);var $W=Dt(),bO=rn(),KW=xe(),VW="AWS_EXECUTION_ENV",EO="AWS_REGION",PO="AWS_DEFAULT_REGION",XW="AWS_EC2_METADATA_DISABLED",WW=["in-region","cross-region","mobile","standard","legacy"],YW="/latest/meta-data/placement/region",JW="AWS_DEFAULTS_MODE",QW="defaults_mode",ZW={environmentVariableSelector:e=>e[JW],configFileSelector:e=>e[QW],default:"legacy"},e5=ry(({region:e=(0,bO.loadConfig)($W.NODE_REGION_CONFIG_OPTIONS),defaultsMode:t=(0,bO.loadConfig)(ZW)}={})=>(0,KW.memoize)(async()=>{let n=typeof t=="function"?await t():t;switch(n==null?void 0:n.toLowerCase()){case"auto":return t5(e);case"in-region":case"cross-region":case"mobile":case"standard":case"legacy":return Promise.resolve(n==null?void 0:n.toLocaleLowerCase());case void 0:return Promise.resolve("legacy");default:throw new Error(`Invalid parameter for "defaultsMode", expect ${WW.join(", ")}, got ${n}`)}}),"resolveDefaultsModeConfig"),t5=ry(async e=>{if(e){let t=typeof e=="function"?await e():e,n=await n5();return n?t===n?"in-region":"cross-region":"standard"}return"standard"},"resolveNodeDefaultsModeAuto"),n5=ry(async()=>{if(process.env[VW]&&(process.env[EO]||process.env[PO]))return process.env[EO]??process.env[PO];if(!process.env[XW])try{let{getInstanceMetadataEndpoint:e,httpRequest:t}=await Promise.resolve().then(()=>GW(dl())),n=await e();return(await t({...n,path:YW})).toString()}catch{}},"inferPhysicalRegion")});var OO=m(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});Pl.getRuntimeConfig=void 0;var r5=(ne(),J(te)),o5=r5.__importDefault(KA()),s5=ua(),El=Dt(),i5=ma(),kO=on(),ha=rn(),AO=xr(),a5=pa(),c5=jr(),d5=SO(),l5=b(),u5=ga(),m5=b(),p5=e=>{(0,m5.emitWarningIfUnsupportedVersion)(process.version);let t=(0,u5.resolveDefaultsModeConfig)(e),n=()=>t().then(l5.loadConfigsForDefaultMode),r=(0,d5.getRuntimeConfig)(e);return{...r,...e,runtime:"node",defaultsMode:t,bodyLengthChecker:(e==null?void 0:e.bodyLengthChecker)??a5.calculateBodyLength,defaultUserAgentProvider:(e==null?void 0:e.defaultUserAgentProvider)??(0,s5.defaultUserAgent)({serviceId:r.serviceId,clientVersion:o5.default.version}),maxAttempts:(e==null?void 0:e.maxAttempts)??(0,ha.loadConfig)(kO.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),region:(e==null?void 0:e.region)??(0,ha.loadConfig)(El.NODE_REGION_CONFIG_OPTIONS,El.NODE_REGION_CONFIG_FILE_OPTIONS),requestHandler:(e==null?void 0:e.requestHandler)??new AO.NodeHttpHandler(n),retryMode:(e==null?void 0:e.retryMode)??(0,ha.loadConfig)({...kO.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await n()).retryMode||c5.DEFAULT_RETRY_MODE}),sha256:(e==null?void 0:e.sha256)??i5.Hash.bind(null,"sha256"),streamCollector:(e==null?void 0:e.streamCollector)??AO.streamCollector,useDualstackEndpoint:(e==null?void 0:e.useDualstackEndpoint)??(0,ha.loadConfig)(El.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),useFipsEndpoint:(e==null?void 0:e.useFipsEndpoint)??(0,ha.loadConfig)(El.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)}};Pl.getRuntimeConfig=p5});var NO=m(Yr=>{"use strict";Object.defineProperty(Yr,"__esModule",{value:!0});Yr.resolveAwsRegionExtensionConfiguration=Yr.getAwsRegionExtensionConfiguration=void 0;var f5=e=>{let t=async()=>{if(e.region===void 0)throw new Error("Region is missing from runtimeConfig");let n=e.region;return typeof n=="string"?n:n()};return{setRegion(n){t=n},region(){return t}}};Yr.getAwsRegionExtensionConfiguration=f5;var y5=e=>({region:e.region()});Yr.resolveAwsRegionExtensionConfiguration=y5});var IO=m(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.NODE_REGION_CONFIG_FILE_OPTIONS=_t.NODE_REGION_CONFIG_OPTIONS=_t.REGION_INI_NAME=_t.REGION_ENV_NAME=void 0;_t.REGION_ENV_NAME="AWS_REGION";_t.REGION_INI_NAME="region";_t.NODE_REGION_CONFIG_OPTIONS={environmentVariableSelector:e=>e[_t.REGION_ENV_NAME],configFileSelector:e=>e[_t.REGION_INI_NAME],default:()=>{throw new Error("Region is missing")}};_t.NODE_REGION_CONFIG_FILE_OPTIONS={preferredFile:"credentials"}});var oy=m(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});vl.isFipsRegion=void 0;var g5=e=>typeof e=="string"&&(e.startsWith("fips-")||e.endsWith("-fips"));vl.isFipsRegion=g5});var RO=m(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});wl.getRealRegion=void 0;var h5=oy(),_5=e=>(0,h5.isFipsRegion)(e)?["fips-aws-global","aws-fips"].includes(e)?"us-east-1":e.replace(/fips-(dkr-|prod-)?|-fips/,""):e;wl.getRealRegion=_5});var BO=m(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});xl.resolveRegionConfig=void 0;var TO=RO(),C5=oy(),S5=e=>{let{region:t,useFipsEndpoint:n}=e;if(!t)throw new Error("Region is missing");return{...e,region:async()=>{if(typeof t=="string")return(0,TO.getRealRegion)(t);let r=await t();return(0,TO.getRealRegion)(r)},useFipsEndpoint:async()=>{let r=typeof t=="string"?t:await t();return(0,C5.isFipsRegion)(r)?!0:typeof n!="function"?Promise.resolve(!!n):n()}}};xl.resolveRegionConfig=S5});var DO=m(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var qO=(ne(),J(te));qO.__exportStar(IO(),kl);qO.__exportStar(BO(),kl)});var Ol=m(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var MO=(ne(),J(te));MO.__exportStar(NO(),Al);MO.__exportStar(DO(),Al)});var UO=m(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.resolveRuntimeExtensions=void 0;var FO=Ol(),LO=Ne(),jO=b(),sy=e=>e,b5=(e,t)=>{let n={...sy((0,FO.getAwsRegionExtensionConfiguration)(e)),...sy((0,jO.getDefaultExtensionConfiguration)(e)),...sy((0,LO.getHttpHandlerExtensionConfiguration)(e))};return t.forEach(r=>r.configure(n)),{...e,...(0,FO.resolveAwsRegionExtensionConfiguration)(n),...(0,jO.resolveDefaultRuntimeConfig)(n),...(0,LO.resolveHttpHandlerRuntimeConfig)(n)}};Nl.resolveRuntimeExtensions=b5});var _a=m(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});Jr.SSOClient=Jr.__Client=void 0;var zO=Ii(),E5=Ri(),P5=Ti(),GO=Wi(),v5=Dt(),w5=Yi(),x5=x(),HO=on(),$O=b();Object.defineProperty(Jr,"__Client",{enumerable:!0,get:function(){return $O.Client}});var k5=$A(),A5=OO(),O5=UO(),iy=class extends $O.Client{constructor(...[t]){let n=(0,A5.getRuntimeConfig)(t||{}),r=(0,k5.resolveClientEndpointParameters)(n),o=(0,v5.resolveRegionConfig)(r),s=(0,x5.resolveEndpointConfig)(o),a=(0,HO.resolveRetryConfig)(s),i=(0,zO.resolveHostHeaderConfig)(a),u=(0,GO.resolveUserAgentConfig)(i),l=(0,O5.resolveRuntimeExtensions)(u,(t==null?void 0:t.extensions)||[]);super(l),this.config=l,this.middlewareStack.use((0,HO.getRetryPlugin)(this.config)),this.middlewareStack.use((0,w5.getContentLengthPlugin)(this.config)),this.middlewareStack.use((0,zO.getHostHeaderPlugin)(this.config)),this.middlewareStack.use((0,E5.getLoggerPlugin)(this.config)),this.middlewareStack.use((0,P5.getRecursionDetectionPlugin)(this.config)),this.middlewareStack.use((0,GO.getUserAgentPlugin)(this.config))}destroy(){super.destroy()}};Jr.SSOClient=iy});var Il=m(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.SSOServiceException=Qr.__ServiceException=void 0;var KO=b();Object.defineProperty(Qr,"__ServiceException",{enumerable:!0,get:function(){return KO.ServiceException}});var ay=class e extends KO.ServiceException{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};Qr.SSOServiceException=ay});var pr=m(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.LogoutRequestFilterSensitiveLog=we.ListAccountsRequestFilterSensitiveLog=we.ListAccountRolesRequestFilterSensitiveLog=we.GetRoleCredentialsResponseFilterSensitiveLog=we.RoleCredentialsFilterSensitiveLog=we.GetRoleCredentialsRequestFilterSensitiveLog=we.UnauthorizedException=we.TooManyRequestsException=we.ResourceNotFoundException=we.InvalidRequestException=void 0;var Zr=b(),Rl=Il(),cy=class e extends Rl.SSOServiceException{constructor(t){super({name:"InvalidRequestException",$fault:"client",...t}),this.name="InvalidRequestException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};we.InvalidRequestException=cy;var dy=class e extends Rl.SSOServiceException{constructor(t){super({name:"ResourceNotFoundException",$fault:"client",...t}),this.name="ResourceNotFoundException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};we.ResourceNotFoundException=dy;var ly=class e extends Rl.SSOServiceException{constructor(t){super({name:"TooManyRequestsException",$fault:"client",...t}),this.name="TooManyRequestsException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};we.TooManyRequestsException=ly;var uy=class e extends Rl.SSOServiceException{constructor(t){super({name:"UnauthorizedException",$fault:"client",...t}),this.name="UnauthorizedException",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};we.UnauthorizedException=uy;var N5=e=>({...e,...e.accessToken&&{accessToken:Zr.SENSITIVE_STRING}});we.GetRoleCredentialsRequestFilterSensitiveLog=N5;var I5=e=>({...e,...e.secretAccessKey&&{secretAccessKey:Zr.SENSITIVE_STRING},...e.sessionToken&&{sessionToken:Zr.SENSITIVE_STRING}});we.RoleCredentialsFilterSensitiveLog=I5;var R5=e=>({...e,...e.roleCredentials&&{roleCredentials:(0,we.RoleCredentialsFilterSensitiveLog)(e.roleCredentials)}});we.GetRoleCredentialsResponseFilterSensitiveLog=R5;var T5=e=>({...e,...e.accessToken&&{accessToken:Zr.SENSITIVE_STRING}});we.ListAccountRolesRequestFilterSensitiveLog=T5;var B5=e=>({...e,...e.accessToken&&{accessToken:Zr.SENSITIVE_STRING}});we.ListAccountsRequestFilterSensitiveLog=B5;var q5=e=>({...e,...e.accessToken&&{accessToken:Zr.SENSITIVE_STRING}});we.LogoutRequestFilterSensitiveLog=q5});var Ca=m(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.de_LogoutCommand=Ge.de_ListAccountsCommand=Ge.de_ListAccountRolesCommand=Ge.de_GetRoleCredentialsCommand=Ge.se_LogoutCommand=Ge.se_ListAccountsCommand=Ge.se_ListAccountRolesCommand=Ge.se_GetRoleCredentialsCommand=void 0;var Tl=Ne(),Q=b(),Bl=pr(),D5=Il(),M5=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,Q.map)({},Ll,{"x-amz-sso_bearer_token":e.accessToken}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/federation/credentials`,u=(0,Q.map)({role_name:[,(0,Q.expectNonNull)(e.roleName,"roleName")],account_id:[,(0,Q.expectNonNull)(e.accountId,"accountId")]}),l;return new Tl.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};Ge.se_GetRoleCredentialsCommand=M5;var F5=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,Q.map)({},Ll,{"x-amz-sso_bearer_token":e.accessToken}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/assignment/roles`,u=(0,Q.map)({next_token:[,e.nextToken],max_result:[()=>e.maxResults!==void 0,()=>e.maxResults.toString()],account_id:[,(0,Q.expectNonNull)(e.accountId,"accountId")]}),l;return new Tl.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};Ge.se_ListAccountRolesCommand=F5;var L5=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,Q.map)({},Ll,{"x-amz-sso_bearer_token":e.accessToken}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/assignment/accounts`,u=(0,Q.map)({next_token:[,e.nextToken],max_result:[()=>e.maxResults!==void 0,()=>e.maxResults.toString()]}),l;return new Tl.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};Ge.se_ListAccountsCommand=L5;var j5=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,Q.map)({},Ll,{"x-amz-sso_bearer_token":e.accessToken}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/logout`,u;return new Tl.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,body:u})};Ge.se_LogoutCommand=j5;var U5=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return z5(e,t);let n=(0,Q.map)({$metadata:Gn(e)}),r=(0,Q.expectNonNull)((0,Q.expectObject)(await jl(e.body,t)),"body"),o=(0,Q.take)(r,{roleCredentials:Q._json});return Object.assign(n,o),n};Ge.de_GetRoleCredentialsCommand=U5;var z5=async(e,t)=>{let n={...e,body:await Ul(e.body,t)},r=zl(e,n.body);switch(r){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await Dl(n,t);case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":throw await my(n,t);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await Ml(n,t);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await Fl(n,t);default:let o=n.body;return ql({output:e,parsedBody:o,errorCode:r})}},G5=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return H5(e,t);let n=(0,Q.map)({$metadata:Gn(e)}),r=(0,Q.expectNonNull)((0,Q.expectObject)(await jl(e.body,t)),"body"),o=(0,Q.take)(r,{nextToken:Q.expectString,roleList:Q._json});return Object.assign(n,o),n};Ge.de_ListAccountRolesCommand=G5;var H5=async(e,t)=>{let n={...e,body:await Ul(e.body,t)},r=zl(e,n.body);switch(r){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await Dl(n,t);case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":throw await my(n,t);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await Ml(n,t);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await Fl(n,t);default:let o=n.body;return ql({output:e,parsedBody:o,errorCode:r})}},$5=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return K5(e,t);let n=(0,Q.map)({$metadata:Gn(e)}),r=(0,Q.expectNonNull)((0,Q.expectObject)(await jl(e.body,t)),"body"),o=(0,Q.take)(r,{accountList:Q._json,nextToken:Q.expectString});return Object.assign(n,o),n};Ge.de_ListAccountsCommand=$5;var K5=async(e,t)=>{let n={...e,body:await Ul(e.body,t)},r=zl(e,n.body);switch(r){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await Dl(n,t);case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":throw await my(n,t);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await Ml(n,t);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await Fl(n,t);default:let o=n.body;return ql({output:e,parsedBody:o,errorCode:r})}},V5=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return X5(e,t);let n=(0,Q.map)({$metadata:Gn(e)});return await(0,Q.collectBody)(e.body,t),n};Ge.de_LogoutCommand=V5;var X5=async(e,t)=>{let n={...e,body:await Ul(e.body,t)},r=zl(e,n.body);switch(r){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await Dl(n,t);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await Ml(n,t);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await Fl(n,t);default:let o=n.body;return ql({output:e,parsedBody:o,errorCode:r})}},ql=(0,Q.withBaseException)(D5.SSOServiceException),Dl=async(e,t)=>{let n=(0,Q.map)({}),r=e.body,o=(0,Q.take)(r,{message:Q.expectString});Object.assign(n,o);let s=new Bl.InvalidRequestException({$metadata:Gn(e),...n});return(0,Q.decorateServiceException)(s,e.body)},my=async(e,t)=>{let n=(0,Q.map)({}),r=e.body,o=(0,Q.take)(r,{message:Q.expectString});Object.assign(n,o);let s=new Bl.ResourceNotFoundException({$metadata:Gn(e),...n});return(0,Q.decorateServiceException)(s,e.body)},Ml=async(e,t)=>{let n=(0,Q.map)({}),r=e.body,o=(0,Q.take)(r,{message:Q.expectString});Object.assign(n,o);let s=new Bl.TooManyRequestsException({$metadata:Gn(e),...n});return(0,Q.decorateServiceException)(s,e.body)},Fl=async(e,t)=>{let n=(0,Q.map)({}),r=e.body,o=(0,Q.take)(r,{message:Q.expectString});Object.assign(n,o);let s=new Bl.UnauthorizedException({$metadata:Gn(e),...n});return(0,Q.decorateServiceException)(s,e.body)},Gn=e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),W5=(e,t)=>(0,Q.collectBody)(e,t).then(n=>t.utf8Encoder(n)),Ll=e=>e!=null&&e!==""&&(!Object.getOwnPropertyNames(e).includes("length")||e.length!=0)&&(!Object.getOwnPropertyNames(e).includes("size")||e.size!=0),jl=(e,t)=>W5(e,t).then(n=>n.length?JSON.parse(n):{}),Ul=async(e,t)=>{let n=await jl(e,t);return n.message=n.message??n.Message,n},zl=(e,t)=>{let n=(s,a)=>Object.keys(s).find(i=>i.toLowerCase()===a.toLowerCase()),r=s=>{let a=s;return typeof a=="number"&&(a=a.toString()),a.indexOf(",")>=0&&(a=a.split(",")[0]),a.indexOf(":")>=0&&(a=a.split(":")[0]),a.indexOf("#")>=0&&(a=a.split("#")[1]),a},o=n(e.headers,"x-amzn-errortype");if(o!==void 0)return r(e.headers[o]);if(t.code!==void 0)return r(t.code);if(t.__type!==void 0)return r(t.__type)}});var fy=m(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});eo.GetRoleCredentialsCommand=eo.$Command=void 0;var Y5=x(),J5=k(),WO=b();Object.defineProperty(eo,"$Command",{enumerable:!0,get:function(){return WO.Command}});var Q5=w(),VO=pr(),XO=Ca(),py=class e extends WO.Command{static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,J5.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Y5.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOClient",commandName:"GetRoleCredentialsCommand",inputFilterSensitiveLog:VO.GetRoleCredentialsRequestFilterSensitiveLog,outputFilterSensitiveLog:VO.GetRoleCredentialsResponseFilterSensitiveLog,[Q5.SMITHY_CONTEXT_KEY]:{service:"SWBPortalService",operation:"GetRoleCredentials"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,XO.se_GetRoleCredentialsCommand)(t,n)}deserialize(t,n){return(0,XO.de_GetRoleCredentialsCommand)(t,n)}};eo.GetRoleCredentialsCommand=py});var Gl=m(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.ListAccountRolesCommand=to.$Command=void 0;var Z5=x(),e9=k(),JO=b();Object.defineProperty(to,"$Command",{enumerable:!0,get:function(){return JO.Command}});var t9=w(),n9=pr(),YO=Ca(),yy=class e extends JO.Command{static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,e9.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Z5.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOClient",commandName:"ListAccountRolesCommand",inputFilterSensitiveLog:n9.ListAccountRolesRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[t9.SMITHY_CONTEXT_KEY]:{service:"SWBPortalService",operation:"ListAccountRoles"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,YO.se_ListAccountRolesCommand)(t,n)}deserialize(t,n){return(0,YO.de_ListAccountRolesCommand)(t,n)}};to.ListAccountRolesCommand=yy});var Hl=m(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});no.ListAccountsCommand=no.$Command=void 0;var r9=x(),o9=k(),ZO=b();Object.defineProperty(no,"$Command",{enumerable:!0,get:function(){return ZO.Command}});var s9=w(),i9=pr(),QO=Ca(),gy=class e extends ZO.Command{static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,o9.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,r9.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOClient",commandName:"ListAccountsCommand",inputFilterSensitiveLog:i9.ListAccountsRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[s9.SMITHY_CONTEXT_KEY]:{service:"SWBPortalService",operation:"ListAccounts"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,QO.se_ListAccountsCommand)(t,n)}deserialize(t,n){return(0,QO.de_ListAccountsCommand)(t,n)}};no.ListAccountsCommand=gy});var _y=m(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});ro.LogoutCommand=ro.$Command=void 0;var a9=x(),c9=k(),tN=b();Object.defineProperty(ro,"$Command",{enumerable:!0,get:function(){return tN.Command}});var d9=w(),l9=pr(),eN=Ca(),hy=class e extends tN.Command{static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,c9.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,a9.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOClient",commandName:"LogoutCommand",inputFilterSensitiveLog:l9.LogoutRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[d9.SMITHY_CONTEXT_KEY]:{service:"SWBPortalService",operation:"Logout"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,eN.se_LogoutCommand)(t,n)}deserialize(t,n){return(0,eN.de_LogoutCommand)(t,n)}};ro.LogoutCommand=hy});var nN=m(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});Kl.SSO=void 0;var u9=b(),m9=fy(),p9=Gl(),f9=Hl(),y9=_y(),g9=_a(),h9={GetRoleCredentialsCommand:m9.GetRoleCredentialsCommand,ListAccountRolesCommand:p9.ListAccountRolesCommand,ListAccountsCommand:f9.ListAccountsCommand,LogoutCommand:y9.LogoutCommand},$l=class extends g9.SSOClient{};Kl.SSO=$l;(0,u9.createAggregatedClient)(h9,$l)});var rN=m(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});var Vl=(ne(),J(te));Vl.__exportStar(fy(),oo);Vl.__exportStar(Gl(),oo);Vl.__exportStar(Hl(),oo);Vl.__exportStar(_y(),oo)});var sN=m(oN=>{"use strict";Object.defineProperty(oN,"__esModule",{value:!0})});var iN=m(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.paginateListAccountRoles=void 0;var _9=Gl(),C9=_a(),S9=async(e,t,...n)=>await e.send(new _9.ListAccountRolesCommand(t),...n);async function*b9(e,t,...n){let r=e.startingToken||void 0,o=!0,s;for(;o;){if(t.nextToken=r,t.maxResults=e.pageSize,e.client instanceof C9.SSOClient)s=await S9(e.client,t,...n);else throw new Error("Invalid client, expected SSO | SSOClient");yield s;let a=r;r=s.nextToken,o=!!(r&&(!e.stopOnSameToken||r!==a))}return void 0}Xl.paginateListAccountRoles=b9});var aN=m(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});Wl.paginateListAccounts=void 0;var E9=Hl(),P9=_a(),v9=async(e,t,...n)=>await e.send(new E9.ListAccountsCommand(t),...n);async function*w9(e,t,...n){let r=e.startingToken||void 0,o=!0,s;for(;o;){if(t.nextToken=r,t.maxResults=e.pageSize,e.client instanceof P9.SSOClient)s=await v9(e.client,t,...n);else throw new Error("Invalid client, expected SSO | SSOClient");yield s;let a=r;r=s.nextToken,o=!!(r&&(!e.stopOnSameToken||r!==a))}return void 0}Wl.paginateListAccounts=w9});var cN=m(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});var Cy=(ne(),J(te));Cy.__exportStar(sN(),Sa);Cy.__exportStar(iN(),Sa);Cy.__exportStar(aN(),Sa)});var dN=m(Sy=>{"use strict";Object.defineProperty(Sy,"__esModule",{value:!0});var x9=(ne(),J(te));x9.__exportStar(pr(),Sy)});var lN=m(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.SSOServiceException=void 0;var ba=(ne(),J(te));ba.__exportStar(_a(),mn);ba.__exportStar(nN(),mn);ba.__exportStar(rN(),mn);ba.__exportStar(cN(),mn);ba.__exportStar(dN(),mn);var k9=Il();Object.defineProperty(mn,"SSOServiceException",{enumerable:!0,get:function(){return k9.SSOServiceException}})});var Ql=m(he=>{"use strict";Object.defineProperty(he,"__esModule",{value:!0});he.UnsupportedGrantTypeException=he.UnauthorizedClientException=he.SlowDownException=he.SSOOIDCClient=he.InvalidScopeException=he.InvalidRequestException=he.InvalidClientException=he.InternalServerException=he.ExpiredTokenException=he.CreateTokenCommand=he.AuthorizationPendingException=he.AccessDeniedException=void 0;var uN=Ii(),A9=Ri(),O9=Ti(),mN=Wi(),N9=Dt(),I9=Yi(),R9=x(),pN=on(),T9=b(),B9=e=>{var t,n;return{...e,useDualstackEndpoint:(t=e.useDualstackEndpoint)!==null&&t!==void 0?t:!1,useFipsEndpoint:(n=e.useFipsEndpoint)!==null&&n!==void 0?n:!1,defaultSigningName:"awsssooidc"}},q9={version:"3.387.0"},D9=ua(),Yl=Dt(),M9=ma(),fN=on(),Ea=rn(),yN=xr(),F9=pa(),L9=jr(),j9=b(),U9=lr(),gN=wr(),hN=st(),z9=Fr(),wN="required",pn="fn",fn="argv",so="ref",by="PartitionResult",Ut="tree",Pa="error",va="endpoint",_N={[wN]:!1,type:"String"},CN={[wN]:!0,default:!1,type:"Boolean"},xN={[so]:"Endpoint"},kN={[pn]:"booleanEquals",[fn]:[{[so]:"UseFIPS"},!0]},AN={[pn]:"booleanEquals",[fn]:[{[so]:"UseDualStack"},!0]},zt={},SN={[pn]:"booleanEquals",[fn]:[!0,{[pn]:"getAttr",[fn]:[{[so]:by},"supportsFIPS"]}]},bN={[pn]:"booleanEquals",[fn]:[!0,{[pn]:"getAttr",[fn]:[{[so]:by},"supportsDualStack"]}]},EN=[xN],PN=[kN],vN=[AN],G9={version:"1.0",parameters:{Region:_N,UseDualStack:CN,UseFIPS:CN,Endpoint:_N},rules:[{conditions:[{[pn]:"aws.partition",[fn]:[{[so]:"Region"}],assign:by}],type:Ut,rules:[{conditions:[{[pn]:"isSet",[fn]:EN},{[pn]:"parseURL",[fn]:EN,assign:"url"}],type:Ut,rules:[{conditions:PN,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:Pa},{type:Ut,rules:[{conditions:vN,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:Pa},{endpoint:{url:xN,properties:zt,headers:zt},type:va}]}]},{conditions:[kN,AN],type:Ut,rules:[{conditions:[SN,bN],type:Ut,rules:[{endpoint:{url:"https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:zt,headers:zt},type:va}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:Pa}]},{conditions:PN,type:Ut,rules:[{conditions:[SN],type:Ut,rules:[{type:Ut,rules:[{endpoint:{url:"https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}",properties:zt,headers:zt},type:va}]}]},{error:"FIPS is enabled but this partition does not support FIPS",type:Pa}]},{conditions:vN,type:Ut,rules:[{conditions:[bN],type:Ut,rules:[{endpoint:{url:"https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:zt,headers:zt},type:va}]},{error:"DualStack is enabled but this partition does not support DualStack",type:Pa}]},{endpoint:{url:"https://oidc.{Region}.{PartitionResult#dnsSuffix}",properties:zt,headers:zt},type:va}]}]},H9=G9,$9=(e,t={})=>(0,z9.resolveEndpoint)(H9,{endpointParams:e,logger:t.logger}),K9=e=>{var t,n,r,o,s,a,i,u,l;return{apiVersion:"2019-06-10",base64Decoder:(t=e==null?void 0:e.base64Decoder)!==null&&t!==void 0?t:gN.fromBase64,base64Encoder:(n=e==null?void 0:e.base64Encoder)!==null&&n!==void 0?n:gN.toBase64,disableHostPrefix:(r=e==null?void 0:e.disableHostPrefix)!==null&&r!==void 0?r:!1,endpointProvider:(o=e==null?void 0:e.endpointProvider)!==null&&o!==void 0?o:$9,logger:(s=e==null?void 0:e.logger)!==null&&s!==void 0?s:new j9.NoOpLogger,serviceId:(a=e==null?void 0:e.serviceId)!==null&&a!==void 0?a:"SSO OIDC",urlParser:(i=e==null?void 0:e.urlParser)!==null&&i!==void 0?i:U9.parseUrl,utf8Decoder:(u=e==null?void 0:e.utf8Decoder)!==null&&u!==void 0?u:hN.fromUtf8,utf8Encoder:(l=e==null?void 0:e.utf8Encoder)!==null&&l!==void 0?l:hN.toUtf8}},V9=b(),X9=ga(),W9=b(),Y9=e=>{var t,n,r,o,s,a,i,u,l,c;(0,W9.emitWarningIfUnsupportedVersion)(process.version);let y=(0,X9.resolveDefaultsModeConfig)(e),g=()=>y().then(V9.loadConfigsForDefaultMode),C=K9(e);return{...C,...e,runtime:"node",defaultsMode:y,bodyLengthChecker:(t=e==null?void 0:e.bodyLengthChecker)!==null&&t!==void 0?t:F9.calculateBodyLength,defaultUserAgentProvider:(n=e==null?void 0:e.defaultUserAgentProvider)!==null&&n!==void 0?n:(0,D9.defaultUserAgent)({serviceId:C.serviceId,clientVersion:q9.version}),maxAttempts:(r=e==null?void 0:e.maxAttempts)!==null&&r!==void 0?r:(0,Ea.loadConfig)(fN.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),region:(o=e==null?void 0:e.region)!==null&&o!==void 0?o:(0,Ea.loadConfig)(Yl.NODE_REGION_CONFIG_OPTIONS,Yl.NODE_REGION_CONFIG_FILE_OPTIONS),requestHandler:(s=e==null?void 0:e.requestHandler)!==null&&s!==void 0?s:new yN.NodeHttpHandler(g),retryMode:(a=e==null?void 0:e.retryMode)!==null&&a!==void 0?a:(0,Ea.loadConfig)({...fN.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await g()).retryMode||L9.DEFAULT_RETRY_MODE}),sha256:(i=e==null?void 0:e.sha256)!==null&&i!==void 0?i:M9.Hash.bind(null,"sha256"),streamCollector:(u=e==null?void 0:e.streamCollector)!==null&&u!==void 0?u:yN.streamCollector,useDualstackEndpoint:(l=e==null?void 0:e.useDualstackEndpoint)!==null&&l!==void 0?l:(0,Ea.loadConfig)(Yl.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),useFipsEndpoint:(c=e==null?void 0:e.useFipsEndpoint)!==null&&c!==void 0?c:(0,Ea.loadConfig)(Yl.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)}},ON=class extends T9.Client{constructor(...[e]){let t=Y9(e||{}),n=B9(t),r=(0,N9.resolveRegionConfig)(n),o=(0,R9.resolveEndpointConfig)(r),s=(0,pN.resolveRetryConfig)(o),a=(0,uN.resolveHostHeaderConfig)(s),i=(0,mN.resolveUserAgentConfig)(a);super(i),this.config=i,this.middlewareStack.use((0,pN.getRetryPlugin)(this.config)),this.middlewareStack.use((0,I9.getContentLengthPlugin)(this.config)),this.middlewareStack.use((0,uN.getHostHeaderPlugin)(this.config)),this.middlewareStack.use((0,A9.getLoggerPlugin)(this.config)),this.middlewareStack.use((0,O9.getRecursionDetectionPlugin)(this.config)),this.middlewareStack.use((0,mN.getUserAgentPlugin)(this.config))}destroy(){super.destroy()}};he.SSOOIDCClient=ON;var J9=b(),Q9=x(),Z9=k(),eY=b(),Ey=Ne(),R=b(),tY=b(),ut=class NN extends tY.ServiceException{constructor(t){super(t),Object.setPrototypeOf(this,NN.prototype)}},IN=class RN extends ut{constructor(t){super({name:"AccessDeniedException",$fault:"client",...t}),this.name="AccessDeniedException",this.$fault="client",Object.setPrototypeOf(this,RN.prototype),this.error=t.error,this.error_description=t.error_description}};he.AccessDeniedException=IN;var TN=class BN extends ut{constructor(t){super({name:"AuthorizationPendingException",$fault:"client",...t}),this.name="AuthorizationPendingException",this.$fault="client",Object.setPrototypeOf(this,BN.prototype),this.error=t.error,this.error_description=t.error_description}};he.AuthorizationPendingException=TN;var qN=class DN extends ut{constructor(t){super({name:"ExpiredTokenException",$fault:"client",...t}),this.name="ExpiredTokenException",this.$fault="client",Object.setPrototypeOf(this,DN.prototype),this.error=t.error,this.error_description=t.error_description}};he.ExpiredTokenException=qN;var MN=class FN extends ut{constructor(t){super({name:"InternalServerException",$fault:"server",...t}),this.name="InternalServerException",this.$fault="server",Object.setPrototypeOf(this,FN.prototype),this.error=t.error,this.error_description=t.error_description}};he.InternalServerException=MN;var LN=class jN extends ut{constructor(t){super({name:"InvalidClientException",$fault:"client",...t}),this.name="InvalidClientException",this.$fault="client",Object.setPrototypeOf(this,jN.prototype),this.error=t.error,this.error_description=t.error_description}};he.InvalidClientException=LN;var nY=class UN extends ut{constructor(t){super({name:"InvalidGrantException",$fault:"client",...t}),this.name="InvalidGrantException",this.$fault="client",Object.setPrototypeOf(this,UN.prototype),this.error=t.error,this.error_description=t.error_description}},zN=class GN extends ut{constructor(t){super({name:"InvalidRequestException",$fault:"client",...t}),this.name="InvalidRequestException",this.$fault="client",Object.setPrototypeOf(this,GN.prototype),this.error=t.error,this.error_description=t.error_description}};he.InvalidRequestException=zN;var HN=class $N extends ut{constructor(t){super({name:"InvalidScopeException",$fault:"client",...t}),this.name="InvalidScopeException",this.$fault="client",Object.setPrototypeOf(this,$N.prototype),this.error=t.error,this.error_description=t.error_description}};he.InvalidScopeException=HN;var KN=class VN extends ut{constructor(t){super({name:"SlowDownException",$fault:"client",...t}),this.name="SlowDownException",this.$fault="client",Object.setPrototypeOf(this,VN.prototype),this.error=t.error,this.error_description=t.error_description}};he.SlowDownException=KN;var XN=class WN extends ut{constructor(t){super({name:"UnauthorizedClientException",$fault:"client",...t}),this.name="UnauthorizedClientException",this.$fault="client",Object.setPrototypeOf(this,WN.prototype),this.error=t.error,this.error_description=t.error_description}};he.UnauthorizedClientException=XN;var YN=class JN extends ut{constructor(t){super({name:"UnsupportedGrantTypeException",$fault:"client",...t}),this.name="UnsupportedGrantTypeException",this.$fault="client",Object.setPrototypeOf(this,JN.prototype),this.error=t.error,this.error_description=t.error_description}};he.UnsupportedGrantTypeException=YN;var rY=class QN extends ut{constructor(t){super({name:"InvalidClientMetadataException",$fault:"client",...t}),this.name="InvalidClientMetadataException",this.$fault="client",Object.setPrototypeOf(this,QN.prototype),this.error=t.error,this.error_description=t.error_description}},oY=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={"content-type":"application/json"},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/token`,u;return u=JSON.stringify((0,R.take)(e,{clientId:[],clientSecret:[],code:[],deviceCode:[],grantType:[],redirectUri:[],refreshToken:[],scope:l=>(0,R._json)(l)})),new Ey.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,body:u})},sY=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={"content-type":"application/json"},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/client/register`,u;return u=JSON.stringify((0,R.take)(e,{clientName:[],clientType:[],scopes:l=>(0,R._json)(l)})),new Ey.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,body:u})},iY=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={"content-type":"application/json"},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/device_authorization`,u;return u=JSON.stringify((0,R.take)(e,{clientId:[],clientSecret:[],startUrl:[]})),new Ey.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,body:u})},aY=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return cY(e,t);let n=(0,R.map)({$metadata:rt(e)}),r=(0,R.expectNonNull)((0,R.expectObject)(await Jl(e.body,t)),"body"),o=(0,R.take)(r,{accessToken:R.expectString,expiresIn:R.expectInt32,idToken:R.expectString,refreshToken:R.expectString,tokenType:R.expectString});return Object.assign(n,o),n},cY=async(e,t)=>{let n={...e,body:await xy(e.body,t)},r=ky(e,n.body);switch(r){case"AccessDeniedException":case"com.amazonaws.ssooidc#AccessDeniedException":throw await pY(n,t);case"AuthorizationPendingException":case"com.amazonaws.ssooidc#AuthorizationPendingException":throw await fY(n,t);case"ExpiredTokenException":case"com.amazonaws.ssooidc#ExpiredTokenException":throw await yY(n,t);case"InternalServerException":case"com.amazonaws.ssooidc#InternalServerException":throw await vy(n,t);case"InvalidClientException":case"com.amazonaws.ssooidc#InvalidClientException":throw await ZN(n,t);case"InvalidGrantException":case"com.amazonaws.ssooidc#InvalidGrantException":throw await hY(n,t);case"InvalidRequestException":case"com.amazonaws.ssooidc#InvalidRequestException":throw await wy(n,t);case"InvalidScopeException":case"com.amazonaws.ssooidc#InvalidScopeException":throw await eI(n,t);case"SlowDownException":case"com.amazonaws.ssooidc#SlowDownException":throw await tI(n,t);case"UnauthorizedClientException":case"com.amazonaws.ssooidc#UnauthorizedClientException":throw await nI(n,t);case"UnsupportedGrantTypeException":case"com.amazonaws.ssooidc#UnsupportedGrantTypeException":throw await _Y(n,t);default:let o=n.body;return Py({output:e,parsedBody:o,errorCode:r})}},dY=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return lY(e,t);let n=(0,R.map)({$metadata:rt(e)}),r=(0,R.expectNonNull)((0,R.expectObject)(await Jl(e.body,t)),"body"),o=(0,R.take)(r,{authorizationEndpoint:R.expectString,clientId:R.expectString,clientIdIssuedAt:R.expectLong,clientSecret:R.expectString,clientSecretExpiresAt:R.expectLong,tokenEndpoint:R.expectString});return Object.assign(n,o),n},lY=async(e,t)=>{let n={...e,body:await xy(e.body,t)},r=ky(e,n.body);switch(r){case"InternalServerException":case"com.amazonaws.ssooidc#InternalServerException":throw await vy(n,t);case"InvalidClientMetadataException":case"com.amazonaws.ssooidc#InvalidClientMetadataException":throw await gY(n,t);case"InvalidRequestException":case"com.amazonaws.ssooidc#InvalidRequestException":throw await wy(n,t);case"InvalidScopeException":case"com.amazonaws.ssooidc#InvalidScopeException":throw await eI(n,t);default:let o=n.body;return Py({output:e,parsedBody:o,errorCode:r})}},uY=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return mY(e,t);let n=(0,R.map)({$metadata:rt(e)}),r=(0,R.expectNonNull)((0,R.expectObject)(await Jl(e.body,t)),"body"),o=(0,R.take)(r,{deviceCode:R.expectString,expiresIn:R.expectInt32,interval:R.expectInt32,userCode:R.expectString,verificationUri:R.expectString,verificationUriComplete:R.expectString});return Object.assign(n,o),n},mY=async(e,t)=>{let n={...e,body:await xy(e.body,t)},r=ky(e,n.body);switch(r){case"InternalServerException":case"com.amazonaws.ssooidc#InternalServerException":throw await vy(n,t);case"InvalidClientException":case"com.amazonaws.ssooidc#InvalidClientException":throw await ZN(n,t);case"InvalidRequestException":case"com.amazonaws.ssooidc#InvalidRequestException":throw await wy(n,t);case"SlowDownException":case"com.amazonaws.ssooidc#SlowDownException":throw await tI(n,t);case"UnauthorizedClientException":case"com.amazonaws.ssooidc#UnauthorizedClientException":throw await nI(n,t);default:let o=n.body;return Py({output:e,parsedBody:o,errorCode:r})}},Py=(0,R.withBaseException)(ut),pY=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new IN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},fY=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new TN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},yY=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new qN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},vy=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new MN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},ZN=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new LN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},gY=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new rY({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},hY=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new nY({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},wy=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new zN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},eI=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new HN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},tI=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new KN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},nI=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new XN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},_Y=async(e,t)=>{let n=(0,R.map)({}),r=e.body,o=(0,R.take)(r,{error:R.expectString,error_description:R.expectString});Object.assign(n,o);let s=new YN({$metadata:rt(e),...n});return(0,R.decorateServiceException)(s,e.body)},rt=e=>{var t,n;return{httpStatusCode:e.statusCode,requestId:(n=(t=e.headers["x-amzn-requestid"])!==null&&t!==void 0?t:e.headers["x-amzn-request-id"])!==null&&n!==void 0?n:e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}},CY=(e,t)=>(0,R.collectBody)(e,t).then(n=>t.utf8Encoder(n)),Jl=(e,t)=>CY(e,t).then(n=>n.length?JSON.parse(n):{}),xy=async(e,t)=>{var n;let r=await Jl(e,t);return r.message=(n=r.message)!==null&&n!==void 0?n:r.Message,r},ky=(e,t)=>{let n=(s,a)=>Object.keys(s).find(i=>i.toLowerCase()===a.toLowerCase()),r=s=>{let a=s;return typeof a=="number"&&(a=a.toString()),a.indexOf(",")>=0&&(a=a.split(",")[0]),a.indexOf(":")>=0&&(a=a.split(":")[0]),a.indexOf("#")>=0&&(a=a.split("#")[1]),a},o=n(e.headers,"x-amzn-errortype");if(o!==void 0)return r(e.headers[o]);if(t.code!==void 0)return r(t.code);if(t.__type!==void 0)return r(t.__type)},rI=class oI extends eY.Command{constructor(t){super(),this.input=t}static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Z9.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Q9.getEndpointPlugin)(n,oI.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOOIDCClient",commandName:"CreateTokenCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return oY(t,n)}deserialize(t,n){return aY(t,n)}};he.CreateTokenCommand=rI;var SY=x(),bY=k(),EY=b(),PY=class sI extends EY.Command{constructor(t){super(),this.input=t}static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}resolveMiddleware(t,n,r){this.middlewareStack.use((0,bY.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,SY.getEndpointPlugin)(n,sI.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOOIDCClient",commandName:"RegisterClientCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return sY(t,n)}deserialize(t,n){return dY(t,n)}},vY=x(),wY=k(),xY=b(),kY=class iI extends xY.Command{constructor(t){super(),this.input=t}static getEndpointParameterInstructions(){return{UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}resolveMiddleware(t,n,r){this.middlewareStack.use((0,wY.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,vY.getEndpointPlugin)(n,iI.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"SSOOIDCClient",commandName:"StartDeviceAuthorizationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return iY(t,n)}deserialize(t,n){return uY(t,n)}},AY={CreateTokenCommand:rI,RegisterClientCommand:PY,StartDeviceAuthorizationCommand:kY},OY=class extends ON{};(0,J9.createAggregatedClient)(AY,OY)});var Zl=m(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.REFRESH_MESSAGE=io.EXPIRE_WINDOW_MS=void 0;io.EXPIRE_WINDOW_MS=5*60*1e3;io.REFRESH_MESSAGE="To refresh this SSO session run 'aws sso login' with the corresponding profile."});var aI=m(eu=>{"use strict";Object.defineProperty(eu,"__esModule",{value:!0});eu.getSsoOidcClient=void 0;var NY=Ql(),Ay={},IY=e=>{if(Ay[e])return Ay[e];let t=new NY.SSOOIDCClient({region:e});return Ay[e]=t,t};eu.getSsoOidcClient=IY});var cI=m(tu=>{"use strict";Object.defineProperty(tu,"__esModule",{value:!0});tu.getNewSsoOidcToken=void 0;var RY=Ql(),TY=aI(),BY=(e,t)=>(0,TY.getSsoOidcClient)(t).send(new RY.CreateTokenCommand({clientId:e.clientId,clientSecret:e.clientSecret,refreshToken:e.refreshToken,grantType:"refresh_token"}));tu.getNewSsoOidcToken=BY});var dI=m(nu=>{"use strict";Object.defineProperty(nu,"__esModule",{value:!0});nu.validateTokenExpiry=void 0;var qY=xe(),DY=Zl(),MY=e=>{if(e.expiration&&e.expiration.getTime(){"use strict";Object.defineProperty(ru,"__esModule",{value:!0});ru.validateTokenKey=void 0;var FY=xe(),LY=Zl(),jY=(e,t,n=!1)=>{if(typeof t>"u")throw new FY.TokenProviderError(`Value not present for '${e}' in SSO Token${n?". Cannot refresh":""}. ${LY.REFRESH_MESSAGE}`,!1)};ru.validateTokenKey=jY});var uI=m(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});ou.writeSSOTokenToFile=void 0;var UY=wt(),zY=require("fs"),{writeFile:GY}=zY.promises,HY=(e,t)=>{let n=(0,UY.getSSOTokenFilepath)(e),r=JSON.stringify(t,null,2);return GY(n,r)};ou.writeSSOTokenToFile=HY});var Oy=m(iu=>{"use strict";Object.defineProperty(iu,"__esModule",{value:!0});iu.fromSso=void 0;var wa=xe(),su=wt(),mI=Zl(),$Y=cI(),pI=dI(),fr=lI(),KY=uI(),fI=new Date(0),VY=(e={})=>async()=>{let t=await(0,su.parseKnownFiles)(e),n=(0,su.getProfileName)(e),r=t[n];if(r){if(!r.sso_session)throw new wa.TokenProviderError(`Profile '${n}' is missing required property 'sso_session'.`)}else throw new wa.TokenProviderError(`Profile '${n}' could not be found in shared credentials file.`,!1);let o=r.sso_session,a=(await(0,su.loadSsoSessionData)(e))[o];if(!a)throw new wa.TokenProviderError(`Sso session '${o}' could not be found in shared credentials file.`,!1);for(let C of["sso_start_url","sso_region"])if(!a[C])throw new wa.TokenProviderError(`Sso session '${o}' is missing required property '${C}'.`,!1);let i=a.sso_start_url,u=a.sso_region,l;try{l=await(0,su.getSSOTokenFromFile)(o)}catch{throw new wa.TokenProviderError(`The SSO session token associated with profile=${n} was not found or is invalid. ${mI.REFRESH_MESSAGE}`,!1)}(0,fr.validateTokenKey)("accessToken",l.accessToken),(0,fr.validateTokenKey)("expiresAt",l.expiresAt);let{accessToken:c,expiresAt:y}=l,g={token:c,expiration:new Date(y)};if(g.expiration.getTime()-Date.now()>mI.EXPIRE_WINDOW_MS)return g;if(Date.now()-fI.getTime()<30*1e3)return(0,pI.validateTokenExpiry)(g),g;(0,fr.validateTokenKey)("clientId",l.clientId,!0),(0,fr.validateTokenKey)("clientSecret",l.clientSecret,!0),(0,fr.validateTokenKey)("refreshToken",l.refreshToken,!0);try{fI.setTime(Date.now());let C=await(0,$Y.getNewSsoOidcToken)(l,u);(0,fr.validateTokenKey)("accessToken",C.accessToken),(0,fr.validateTokenKey)("expiresIn",C.expiresIn);let P=new Date(Date.now()+C.expiresIn*1e3);try{await(0,KY.writeSSOTokenToFile)(o,{...l,accessToken:C.accessToken,expiresAt:P.toISOString(),refreshToken:C.refreshToken})}catch{}return{token:C.accessToken,expiration:P}}catch{return(0,pI.validateTokenExpiry)(g),g}};iu.fromSso=VY});var yI=m(au=>{"use strict";Object.defineProperty(au,"__esModule",{value:!0});au.fromStatic=void 0;var XY=xe(),WY=({token:e})=>async()=>{if(!e||!e.token)throw new XY.TokenProviderError("Please pass a valid token to fromStatic",!1);return e};au.fromStatic=WY});var gI=m(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});cu.nodeProvider=void 0;var Ny=xe(),YY=Oy(),JY=(e={})=>(0,Ny.memoize)((0,Ny.chain)((0,YY.fromSso)(e),async()=>{throw new Ny.TokenProviderError("Could not load token from any providers",!1)}),t=>t.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5,t=>t.expiration!==void 0);cu.nodeProvider=JY});var hI=m(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});var du=(ne(),J(te));du.__exportStar(Ql(),ao);du.__exportStar(Oy(),ao);du.__exportStar(yI(),ao);du.__exportStar(gI(),ao)});var CI=m(lu=>{"use strict";Object.defineProperty(lu,"__esModule",{value:!0});lu.resolveSSOCredentials=void 0;var _I=lN(),QY=hI(),xa=xe(),ZY=wt(),ka=!1,e7=async({ssoStartUrl:e,ssoSession:t,ssoAccountId:n,ssoRegion:r,ssoRoleName:o,ssoClient:s,profile:a})=>{let i,u="To refresh this SSO session run aws sso login with the corresponding profile.";if(t)try{let v=await(0,QY.fromSso)({profile:a})();i={accessToken:v.token,expiresAt:new Date(v.expiration).toISOString()}}catch(v){throw new xa.CredentialsProviderError(v.message,ka)}else try{i=await(0,ZY.getSSOTokenFromFile)(e)}catch{throw new xa.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${u}`,ka)}if(new Date(i.expiresAt).getTime()-Date.now()<=0)throw new xa.CredentialsProviderError(`The SSO session associated with this profile has expired. ${u}`,ka);let{accessToken:l}=i,c=s||new _I.SSOClient({region:r}),y;try{y=await c.send(new _I.GetRoleCredentialsCommand({accountId:n,roleName:o,accessToken:l}))}catch(v){throw xa.CredentialsProviderError.from(v,ka)}let{roleCredentials:{accessKeyId:g,secretAccessKey:C,sessionToken:P,expiration:A}={}}=y;if(!g||!C||!P||!A)throw new xa.CredentialsProviderError("SSO returns an invalid temporary credential.",ka);return{accessKeyId:g,secretAccessKey:C,sessionToken:P,expiration:new Date(A)}};lu.resolveSSOCredentials=e7});var Iy=m(uu=>{"use strict";Object.defineProperty(uu,"__esModule",{value:!0});uu.validateSsoProfile=void 0;var t7=xe(),n7=e=>{let{sso_start_url:t,sso_account_id:n,sso_region:r,sso_role_name:o}=e;if(!t||!n||!r||!o)throw new t7.CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(e).join(", ")} -Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,!1);return e};uu.validateSsoProfile=n7});var bI=m(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});mu.fromSSO=void 0;var Aa=xe(),Ry=wt(),r7=Qf(),SI=CI(),o7=Iy(),s7=(e={})=>async()=>{let{ssoStartUrl:t,ssoAccountId:n,ssoRegion:r,ssoRoleName:o,ssoClient:s,ssoSession:a}=e,i=(0,Ry.getProfileName)(e);if(!t&&!n&&!r&&!o&&!a){let l=(await(0,Ry.parseKnownFiles)(e))[i];if(!l)throw new Aa.CredentialsProviderError(`Profile ${i} was not found.`);if(!(0,r7.isSsoProfile)(l))throw new Aa.CredentialsProviderError(`Profile ${i} is not configured with SSO credentials.`);if(l!=null&&l.sso_session){let v=(await(0,Ry.loadSsoSessionData)(e))[l.sso_session],G=` configurations in profile ${i} and sso-session ${l.sso_session}`;if(r&&r!==v.sso_region)throw new Aa.CredentialsProviderError("Conflicting SSO region"+G,!1);if(t&&t!==v.sso_start_url)throw new Aa.CredentialsProviderError("Conflicting SSO start_url"+G,!1);l.sso_region=v.sso_region,l.sso_start_url=v.sso_start_url}let{sso_start_url:c,sso_account_id:y,sso_region:g,sso_role_name:C,sso_session:P}=(0,o7.validateSsoProfile)(l);return(0,SI.resolveSSOCredentials)({ssoStartUrl:c,ssoSession:P,ssoAccountId:y,ssoRegion:g,ssoRoleName:C,ssoClient:s,profile:i})}else{if(!t||!n||!r||!o)throw new Aa.CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"');return(0,SI.resolveSSOCredentials)({ssoStartUrl:t,ssoSession:a,ssoAccountId:n,ssoRegion:r,ssoRoleName:o,ssoClient:s,profile:i})}};mu.fromSSO=s7});var PI=m(EI=>{"use strict";Object.defineProperty(EI,"__esModule",{value:!0})});var fu=m(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});var pu=(ne(),J(te));pu.__exportStar(bI(),co);pu.__exportStar(Qf(),co);pu.__exportStar(PI(),co);pu.__exportStar(Iy(),co)});var wI=m(lo=>{"use strict";Object.defineProperty(lo,"__esModule",{value:!0});lo.resolveSsoCredentials=lo.isSsoProfile=void 0;var vI=fu(),i7=fu();Object.defineProperty(lo,"isSsoProfile",{enumerable:!0,get:function(){return i7.isSsoProfile}});var a7=e=>{let{sso_start_url:t,sso_account_id:n,sso_session:r,sso_region:o,sso_role_name:s}=(0,vI.validateSsoProfile)(e);return(0,vI.fromSSO)({ssoStartUrl:t,ssoAccountId:n,ssoSession:r,ssoRegion:o,ssoRoleName:s})()};lo.resolveSsoCredentials=a7});var xI=m(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.resolveStaticCredentials=uo.isStaticCredsProfile=void 0;var c7=e=>!!e&&typeof e=="object"&&typeof e.aws_access_key_id=="string"&&typeof e.aws_secret_access_key=="string"&&["undefined","string"].indexOf(typeof e.aws_session_token)>-1;uo.isStaticCredsProfile=c7;var d7=e=>Promise.resolve({accessKeyId:e.aws_access_key_id,secretAccessKey:e.aws_secret_access_key,sessionToken:e.aws_session_token});uo.resolveStaticCredentials=d7});var Ty=m(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.fromWebToken=void 0;var l7=xe(),u7=e=>()=>{let{roleArn:t,roleSessionName:n,webIdentityToken:r,providerId:o,policyArns:s,policy:a,durationSeconds:i,roleAssumerWithWebIdentity:u}=e;if(!u)throw new l7.CredentialsProviderError(`Role Arn '${t}' needs to be assumed with web identity, but no role assumption callback was provided.`,!1);return u({RoleArn:t,RoleSessionName:n??`aws-sdk-js-session-${Date.now()}`,WebIdentityToken:r,ProviderId:o,PolicyArns:s,Policy:a,DurationSeconds:i})};yu.fromWebToken=u7});var kI=m(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.fromTokenFile=void 0;var m7=xe(),p7=require("fs"),f7=Ty(),y7="AWS_WEB_IDENTITY_TOKEN_FILE",g7="AWS_ROLE_ARN",h7="AWS_ROLE_SESSION_NAME",_7=(e={})=>async()=>{var t,n,r;let o=(t=e==null?void 0:e.webIdentityTokenFile)!==null&&t!==void 0?t:process.env[y7],s=(n=e==null?void 0:e.roleArn)!==null&&n!==void 0?n:process.env[g7],a=(r=e==null?void 0:e.roleSessionName)!==null&&r!==void 0?r:process.env[h7];if(!o||!s)throw new m7.CredentialsProviderError("Web identity configuration not specified");return(0,f7.fromWebToken)({...e,webIdentityToken:(0,p7.readFileSync)(o,{encoding:"ascii"}),roleArn:s,roleSessionName:a})()};gu.fromTokenFile=_7});var By=m(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});var AI=(ne(),J(te));AI.__exportStar(kI(),hu);AI.__exportStar(Ty(),hu)});var OI=m(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.resolveWebIdentityCredentials=mo.isWebIdentityProfile=void 0;var C7=By(),S7=e=>!!e&&typeof e=="object"&&typeof e.web_identity_token_file=="string"&&typeof e.role_arn=="string"&&["undefined","string"].indexOf(typeof e.role_session_name)>-1;mo.isWebIdentityProfile=S7;var b7=async(e,t)=>(0,C7.fromTokenFile)({webIdentityTokenFile:e.web_identity_token_file,roleArn:e.role_arn,roleSessionName:e.role_session_name,roleAssumerWithWebIdentity:t.roleAssumerWithWebIdentity})();mo.resolveWebIdentityCredentials=b7});var Xf=m(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.resolveProfileData=void 0;var E7=xe(),NI=LA(),II=HA(),RI=wI(),_u=xI(),TI=OI(),P7=async(e,t,n,r={})=>{let o=t[e];if(Object.keys(r).length>0&&(0,_u.isStaticCredsProfile)(o))return(0,_u.resolveStaticCredentials)(o);if((0,NI.isAssumeRoleProfile)(o))return(0,NI.resolveAssumeRoleCredentials)(e,t,n,r);if((0,_u.isStaticCredsProfile)(o))return(0,_u.resolveStaticCredentials)(o);if((0,TI.isWebIdentityProfile)(o))return(0,TI.resolveWebIdentityCredentials)(o,n);if((0,II.isProcessProfile)(o))return(0,II.resolveProcessCredentials)(n,e);if((0,RI.isSsoProfile)(o))return(0,RI.resolveSsoCredentials)(o);throw new E7.CredentialsProviderError(`Profile ${e} could not be found or parsed in shared credentials file.`)};Cu.resolveProfileData=P7});var qI=m(Su=>{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.fromIni=void 0;var BI=wt(),v7=Xf(),w7=(e={})=>async()=>{let t=await(0,BI.parseKnownFiles)(e);return(0,v7.resolveProfileData)((0,BI.getProfileName)(e),t,e)};Su.fromIni=w7});var DI=m(qy=>{"use strict";Object.defineProperty(qy,"__esModule",{value:!0});var x7=(ne(),J(te));x7.__exportStar(qI(),qy)});var MI=m(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.remoteProvider=yr.ENV_IMDS_DISABLED=void 0;var bu=dl(),k7=xe();yr.ENV_IMDS_DISABLED="AWS_EC2_METADATA_DISABLED";var A7=e=>process.env[bu.ENV_CMDS_RELATIVE_URI]||process.env[bu.ENV_CMDS_FULL_URI]?(0,bu.fromContainerMetadata)(e):process.env[yr.ENV_IMDS_DISABLED]?async()=>{throw new k7.CredentialsProviderError("EC2 Instance Metadata Service access disabled")}:(0,bu.fromInstanceMetadata)(e);yr.remoteProvider=A7});var FI=m(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.defaultProvider=void 0;var O7=Uf(),N7=DI(),I7=Jf(),R7=fu(),T7=By(),Dy=xe(),B7=wt(),q7=MI(),D7=(e={})=>(0,Dy.memoize)((0,Dy.chain)(...e.profile||process.env[B7.ENV_PROFILE]?[]:[(0,O7.fromEnv)()],(0,R7.fromSSO)(e),(0,N7.fromIni)(e),(0,I7.fromProcess)(e),(0,T7.fromTokenFile)(e),(0,q7.remoteProvider)(e),async()=>{throw new Dy.CredentialsProviderError("Could not load credentials from any providers",!1)}),t=>t.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5,t=>t.expiration!==void 0);Eu.defaultProvider=D7});var Fy=m(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});var M7=(ne(),J(te));M7.__exportStar(FI(),My)});var iR=m(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.ruleSet=void 0;var YI="required",se="type",fe="fn",ye="argv",Hn="ref",LI=!1,F7=!0,gr="booleanEquals",Gt="tree",Xe="stringEquals",JI="sigv4",QI="sts",ZI="us-east-1",Ee="endpoint",jI="https://sts.{Region}.{PartitionResult#dnsSuffix}",po="error",jy="getAttr",UI={[YI]:!1,[se]:"String"},Ly={[YI]:!0,default:!1,[se]:"Boolean"},eR={[Hn]:"Endpoint"},zI={[fe]:"isSet",[ye]:[{[Hn]:"Region"}]},We={[Hn]:"Region"},GI={[fe]:"aws.partition",[ye]:[We],assign:"PartitionResult"},tR={[Hn]:"UseFIPS"},nR={[Hn]:"UseDualStack"},tt={url:"https://sts.amazonaws.com",properties:{authSchemes:[{name:JI,signingName:QI,signingRegion:ZI}]},headers:{}},mt={},HI={conditions:[{[fe]:Xe,[ye]:[We,"aws-global"]}],[Ee]:tt,[se]:Ee},rR={[fe]:gr,[ye]:[tR,!0]},oR={[fe]:gr,[ye]:[nR,!0]},$I={[fe]:gr,[ye]:[!0,{[fe]:jy,[ye]:[{[Hn]:"PartitionResult"},"supportsFIPS"]}]},sR={[Hn]:"PartitionResult"},KI={[fe]:gr,[ye]:[!0,{[fe]:jy,[ye]:[sR,"supportsDualStack"]}]},VI=[{[fe]:"isSet",[ye]:[eR]}],XI=[rR],WI=[oR],L7={version:"1.0",parameters:{Region:UI,UseDualStack:Ly,UseFIPS:Ly,Endpoint:UI,UseGlobalEndpoint:Ly},rules:[{conditions:[{[fe]:gr,[ye]:[{[Hn]:"UseGlobalEndpoint"},F7]},{[fe]:"not",[ye]:VI},zI,GI,{[fe]:gr,[ye]:[tR,LI]},{[fe]:gr,[ye]:[nR,LI]}],[se]:Gt,rules:[{conditions:[{[fe]:Xe,[ye]:[We,"ap-northeast-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"ap-south-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"ap-southeast-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"ap-southeast-2"]}],endpoint:tt,[se]:Ee},HI,{conditions:[{[fe]:Xe,[ye]:[We,"ca-central-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"eu-central-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"eu-north-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"eu-west-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"eu-west-2"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"eu-west-3"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"sa-east-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,ZI]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"us-east-2"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"us-west-1"]}],endpoint:tt,[se]:Ee},{conditions:[{[fe]:Xe,[ye]:[We,"us-west-2"]}],endpoint:tt,[se]:Ee},{endpoint:{url:jI,properties:{authSchemes:[{name:JI,signingName:QI,signingRegion:"{Region}"}]},headers:mt},[se]:Ee}]},{conditions:VI,[se]:Gt,rules:[{conditions:XI,error:"Invalid Configuration: FIPS and custom endpoint are not supported",[se]:po},{conditions:WI,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",[se]:po},{endpoint:{url:eR,properties:mt,headers:mt},[se]:Ee}]},{conditions:[zI],[se]:Gt,rules:[{conditions:[GI],[se]:Gt,rules:[{conditions:[rR,oR],[se]:Gt,rules:[{conditions:[$I,KI],[se]:Gt,rules:[{endpoint:{url:"https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:mt,headers:mt},[se]:Ee}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",[se]:po}]},{conditions:XI,[se]:Gt,rules:[{conditions:[$I],[se]:Gt,rules:[{conditions:[{[fe]:Xe,[ye]:["aws-us-gov",{[fe]:jy,[ye]:[sR,"name"]}]}],endpoint:{url:"https://sts.{Region}.amazonaws.com",properties:mt,headers:mt},[se]:Ee},{endpoint:{url:"https://sts-fips.{Region}.{PartitionResult#dnsSuffix}",properties:mt,headers:mt},[se]:Ee}]},{error:"FIPS is enabled but this partition does not support FIPS",[se]:po}]},{conditions:WI,[se]:Gt,rules:[{conditions:[KI],[se]:Gt,rules:[{endpoint:{url:"https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:mt,headers:mt},[se]:Ee}]},{error:"DualStack is enabled but this partition does not support DualStack",[se]:po}]},HI,{endpoint:{url:jI,properties:mt,headers:mt},[se]:Ee}]}]},{error:"Invalid Configuration: Missing Region",[se]:po}]};Pu.ruleSet=L7});var aR=m(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.defaultEndpointResolver=void 0;var j7=Fr(),U7=iR(),z7=(e,t={})=>(0,j7.resolveEndpoint)(U7.ruleSet,{endpointParams:e,logger:t.logger});vu.defaultEndpointResolver=z7});var lR=m(wu=>{"use strict";Object.defineProperty(wu,"__esModule",{value:!0});wu.getRuntimeConfig=void 0;var G7=b(),H7=lr(),cR=wr(),dR=st(),$7=aR(),K7=e=>({apiVersion:"2011-06-15",base64Decoder:(e==null?void 0:e.base64Decoder)??cR.fromBase64,base64Encoder:(e==null?void 0:e.base64Encoder)??cR.toBase64,disableHostPrefix:(e==null?void 0:e.disableHostPrefix)??!1,endpointProvider:(e==null?void 0:e.endpointProvider)??$7.defaultEndpointResolver,extensions:(e==null?void 0:e.extensions)??[],logger:(e==null?void 0:e.logger)??new G7.NoOpLogger,serviceId:(e==null?void 0:e.serviceId)??"STS",urlParser:(e==null?void 0:e.urlParser)??H7.parseUrl,utf8Decoder:(e==null?void 0:e.utf8Decoder)??dR.fromUtf8,utf8Encoder:(e==null?void 0:e.utf8Encoder)??dR.toUtf8});wu.getRuntimeConfig=K7});var pR=m(ku=>{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});ku.getRuntimeConfig=void 0;var V7=(ne(),J(te)),X7=V7.__importDefault(Tk()),W7=Lf(),Y7=Fy(),J7=ua(),xu=Dt(),Q7=ma(),uR=on(),Oa=rn(),mR=xr(),Z7=pa(),eJ=jr(),tJ=lR(),nJ=b(),rJ=ga(),oJ=b(),sJ=e=>{(0,oJ.emitWarningIfUnsupportedVersion)(process.version);let t=(0,rJ.resolveDefaultsModeConfig)(e),n=()=>t().then(nJ.loadConfigsForDefaultMode),r=(0,tJ.getRuntimeConfig)(e);return{...r,...e,runtime:"node",defaultsMode:t,bodyLengthChecker:(e==null?void 0:e.bodyLengthChecker)??Z7.calculateBodyLength,credentialDefaultProvider:(e==null?void 0:e.credentialDefaultProvider)??(0,W7.decorateDefaultCredentialProvider)(Y7.defaultProvider),defaultUserAgentProvider:(e==null?void 0:e.defaultUserAgentProvider)??(0,J7.defaultUserAgent)({serviceId:r.serviceId,clientVersion:X7.default.version}),maxAttempts:(e==null?void 0:e.maxAttempts)??(0,Oa.loadConfig)(uR.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),region:(e==null?void 0:e.region)??(0,Oa.loadConfig)(xu.NODE_REGION_CONFIG_OPTIONS,xu.NODE_REGION_CONFIG_FILE_OPTIONS),requestHandler:(e==null?void 0:e.requestHandler)??new mR.NodeHttpHandler(n),retryMode:(e==null?void 0:e.retryMode)??(0,Oa.loadConfig)({...uR.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await n()).retryMode||eJ.DEFAULT_RETRY_MODE}),sha256:(e==null?void 0:e.sha256)??Q7.Hash.bind(null,"sha256"),streamCollector:(e==null?void 0:e.streamCollector)??mR.streamCollector,useDualstackEndpoint:(e==null?void 0:e.useDualstackEndpoint)??(0,Oa.loadConfig)(xu.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),useFipsEndpoint:(e==null?void 0:e.useFipsEndpoint)??(0,Oa.loadConfig)(xu.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)}};ku.getRuntimeConfig=sJ});var hR=m(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.resolveRuntimeExtensions=void 0;var fR=Ol(),yR=Ne(),gR=b(),Uy=e=>e,iJ=(e,t)=>{let n={...Uy((0,fR.getAwsRegionExtensionConfiguration)(e)),...Uy((0,gR.getDefaultExtensionConfiguration)(e)),...Uy((0,yR.getHttpHandlerExtensionConfiguration)(e))};return t.forEach(r=>r.configure(n)),{...e,...(0,fR.resolveAwsRegionExtensionConfiguration)(n),...(0,gR.resolveDefaultRuntimeConfig)(n),...(0,yR.resolveHttpHandlerRuntimeConfig)(n)}};Au.resolveRuntimeExtensions=iJ});var Ou=m(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.STSClient=fo.__Client=void 0;var _R=Ii(),aJ=Ri(),cJ=Ti(),dJ=Ik(),CR=Wi(),lJ=Dt(),uJ=Yi(),mJ=x(),SR=on(),bR=b();Object.defineProperty(fo,"__Client",{enumerable:!0,get:function(){return bR.Client}});var pJ=Rk(),fJ=pR(),yJ=hR(),zy=class e extends bR.Client{constructor(...[t]){let n=(0,fJ.getRuntimeConfig)(t||{}),r=(0,pJ.resolveClientEndpointParameters)(n),o=(0,lJ.resolveRegionConfig)(r),s=(0,mJ.resolveEndpointConfig)(o),a=(0,SR.resolveRetryConfig)(s),i=(0,_R.resolveHostHeaderConfig)(a),u=(0,dJ.resolveStsAuthConfig)(i,{stsClientCtor:e}),l=(0,CR.resolveUserAgentConfig)(u),c=(0,yJ.resolveRuntimeExtensions)(l,(t==null?void 0:t.extensions)||[]);super(c),this.config=c,this.middlewareStack.use((0,SR.getRetryPlugin)(this.config)),this.middlewareStack.use((0,uJ.getContentLengthPlugin)(this.config)),this.middlewareStack.use((0,_R.getHostHeaderPlugin)(this.config)),this.middlewareStack.use((0,aJ.getLoggerPlugin)(this.config)),this.middlewareStack.use((0,cJ.getRecursionDetectionPlugin)(this.config)),this.middlewareStack.use((0,CR.getUserAgentPlugin)(this.config))}destroy(){super.destroy()}};fo.STSClient=zy});var Hy=m(yo=>{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});yo.AssumeRoleWithSAMLCommand=yo.$Command=void 0;var gJ=x(),hJ=k(),vR=b();Object.defineProperty(yo,"$Command",{enumerable:!0,get:function(){return vR.Command}});var _J=w(),ER=Bn(),PR=cn(),Gy=class e extends vR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,hJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,gJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"AssumeRoleWithSAMLCommand",inputFilterSensitiveLog:ER.AssumeRoleWithSAMLRequestFilterSensitiveLog,outputFilterSensitiveLog:ER.AssumeRoleWithSAMLResponseFilterSensitiveLog,[_J.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"AssumeRoleWithSAML"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,PR.se_AssumeRoleWithSAMLCommand)(t,n)}deserialize(t,n){return(0,PR.de_AssumeRoleWithSAMLCommand)(t,n)}};yo.AssumeRoleWithSAMLCommand=Gy});var Ky=m(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.DecodeAuthorizationMessageCommand=go.$Command=void 0;var CJ=nn(),SJ=x(),bJ=k(),xR=b();Object.defineProperty(go,"$Command",{enumerable:!0,get:function(){return xR.Command}});var EJ=w(),wR=cn(),$y=class e extends xR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,bJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,SJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,CJ.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"DecodeAuthorizationMessageCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[EJ.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"DecodeAuthorizationMessage"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,wR.se_DecodeAuthorizationMessageCommand)(t,n)}deserialize(t,n){return(0,wR.de_DecodeAuthorizationMessageCommand)(t,n)}};go.DecodeAuthorizationMessageCommand=$y});var Xy=m(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.GetAccessKeyInfoCommand=ho.$Command=void 0;var PJ=nn(),vJ=x(),wJ=k(),AR=b();Object.defineProperty(ho,"$Command",{enumerable:!0,get:function(){return AR.Command}});var xJ=w(),kR=cn(),Vy=class e extends AR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,wJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,vJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,PJ.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"GetAccessKeyInfoCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[xJ.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"GetAccessKeyInfo"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,kR.se_GetAccessKeyInfoCommand)(t,n)}deserialize(t,n){return(0,kR.de_GetAccessKeyInfoCommand)(t,n)}};ho.GetAccessKeyInfoCommand=Vy});var Yy=m(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});_o.GetCallerIdentityCommand=_o.$Command=void 0;var kJ=nn(),AJ=x(),OJ=k(),NR=b();Object.defineProperty(_o,"$Command",{enumerable:!0,get:function(){return NR.Command}});var NJ=w(),OR=cn(),Wy=class e extends NR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,OJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,AJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,kJ.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"GetCallerIdentityCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[NJ.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"GetCallerIdentity"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,OR.se_GetCallerIdentityCommand)(t,n)}deserialize(t,n){return(0,OR.de_GetCallerIdentityCommand)(t,n)}};_o.GetCallerIdentityCommand=Wy});var Qy=m(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.GetFederationTokenCommand=Co.$Command=void 0;var IJ=nn(),RJ=x(),TJ=k(),RR=b();Object.defineProperty(Co,"$Command",{enumerable:!0,get:function(){return RR.Command}});var BJ=w(),qJ=Bn(),IR=cn(),Jy=class e extends RR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,TJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,RJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,IJ.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"GetFederationTokenCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:qJ.GetFederationTokenResponseFilterSensitiveLog,[BJ.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"GetFederationToken"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,IR.se_GetFederationTokenCommand)(t,n)}deserialize(t,n){return(0,IR.de_GetFederationTokenCommand)(t,n)}};Co.GetFederationTokenCommand=Jy});var eg=m(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.GetSessionTokenCommand=So.$Command=void 0;var DJ=nn(),MJ=x(),FJ=k(),BR=b();Object.defineProperty(So,"$Command",{enumerable:!0,get:function(){return BR.Command}});var LJ=w(),jJ=Bn(),TR=cn(),Zy=class e extends BR.Command{static getEndpointParameterInstructions(){return{UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,FJ.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,MJ.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,DJ.getAwsAuthPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"STSClient",commandName:"GetSessionTokenCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:jJ.GetSessionTokenResponseFilterSensitiveLog,[LJ.SMITHY_CONTEXT_KEY]:{service:"AWSSecurityTokenServiceV20110615",operation:"GetSessionToken"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,TR.se_GetSessionTokenCommand)(t,n)}deserialize(t,n){return(0,TR.de_GetSessionTokenCommand)(t,n)}};So.GetSessionTokenCommand=Zy});var qR=m(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.STS=void 0;var UJ=b(),zJ=ol(),GJ=Hy(),HJ=sl(),$J=Ky(),KJ=Xy(),VJ=Yy(),XJ=Qy(),WJ=eg(),YJ=Ou(),JJ={AssumeRoleCommand:zJ.AssumeRoleCommand,AssumeRoleWithSAMLCommand:GJ.AssumeRoleWithSAMLCommand,AssumeRoleWithWebIdentityCommand:HJ.AssumeRoleWithWebIdentityCommand,DecodeAuthorizationMessageCommand:$J.DecodeAuthorizationMessageCommand,GetAccessKeyInfoCommand:KJ.GetAccessKeyInfoCommand,GetCallerIdentityCommand:VJ.GetCallerIdentityCommand,GetFederationTokenCommand:XJ.GetFederationTokenCommand,GetSessionTokenCommand:WJ.GetSessionTokenCommand},Nu=class extends YJ.STSClient{};Iu.STS=Nu;(0,UJ.createAggregatedClient)(JJ,Nu)});var DR=m(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});var $n=(ne(),J(te));$n.__exportStar(ol(),Ht);$n.__exportStar(Hy(),Ht);$n.__exportStar(sl(),Ht);$n.__exportStar(Ky(),Ht);$n.__exportStar(Xy(),Ht);$n.__exportStar(Yy(),Ht);$n.__exportStar(Qy(),Ht);$n.__exportStar(eg(),Ht)});var MR=m(tg=>{"use strict";Object.defineProperty(tg,"__esModule",{value:!0});var QJ=(ne(),J(te));QJ.__exportStar(Bn(),tg)});var UR=m($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.decorateDefaultCredentialProvider=$t.getDefaultRoleAssumerWithWebIdentity=$t.getDefaultRoleAssumer=void 0;var FR=Lf(),LR=Ou(),jR=(e,t)=>t?class extends e{constructor(r){super(r);for(let o of t)this.middlewareStack.use(o)}}:e,ZJ=(e={},t)=>(0,FR.getDefaultRoleAssumer)(e,jR(LR.STSClient,t));$t.getDefaultRoleAssumer=ZJ;var eQ=(e={},t)=>(0,FR.getDefaultRoleAssumerWithWebIdentity)(e,jR(LR.STSClient,t));$t.getDefaultRoleAssumerWithWebIdentity=eQ;var tQ=e=>t=>e({roleAssumer:(0,$t.getDefaultRoleAssumer)(t),roleAssumerWithWebIdentity:(0,$t.getDefaultRoleAssumerWithWebIdentity)(t),...t});$t.decorateDefaultCredentialProvider=tQ});var zR=m(yn=>{"use strict";Object.defineProperty(yn,"__esModule",{value:!0});yn.STSServiceException=void 0;var Na=(ne(),J(te));Na.__exportStar(Ou(),yn);Na.__exportStar(qR(),yn);Na.__exportStar(DR(),yn);Na.__exportStar(MR(),yn);Na.__exportStar(UR(),yn);var nQ=Zd();Object.defineProperty(yn,"STSServiceException",{enumerable:!0,get:function(){return nQ.STSServiceException}})});var GR=m(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS=Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME=Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME=void 0;var Ru=vd();Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME="AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS";Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME="s3_disable_multiregion_access_points";Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS={environmentVariableSelector:e=>(0,Ru.booleanSelector)(e,Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME,Ru.SelectorType.ENV),configFileSelector:e=>(0,Ru.booleanSelector)(e,Kt.NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME,Ru.SelectorType.CONFIG),default:!1}});var HR=m(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.NODE_USE_ARN_REGION_CONFIG_OPTIONS=Vt.NODE_USE_ARN_REGION_INI_NAME=Vt.NODE_USE_ARN_REGION_ENV_NAME=void 0;var Tu=vd();Vt.NODE_USE_ARN_REGION_ENV_NAME="AWS_S3_USE_ARN_REGION";Vt.NODE_USE_ARN_REGION_INI_NAME="s3_use_arn_region";Vt.NODE_USE_ARN_REGION_CONFIG_OPTIONS={environmentVariableSelector:e=>(0,Tu.booleanSelector)(e,Vt.NODE_USE_ARN_REGION_ENV_NAME,Tu.SelectorType.ENV),configFileSelector:e=>(0,Tu.booleanSelector)(e,Vt.NODE_USE_ARN_REGION_INI_NAME,Tu.SelectorType.CONFIG),default:!1}});var og=m(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.validateMrapAlias=ee.validateNoFIPS=ee.validateNoDualstack=ee.getArnResources=ee.validateCustomEndpoint=ee.validateDNSHostLabel=ee.validateAccountId=ee.validateRegionalClient=ee.validateRegion=ee.validatePartition=ee.validateOutpostService=ee.validateS3Service=ee.validateService=ee.validateArnEndpointOptions=ee.getSuffixForArnEndpoint=ee.getSuffix=ee.isDnsCompatibleBucketName=ee.isBucketNameOptions=ee.S3_HOSTNAME_PATTERN=ee.DOT_PATTERN=void 0;var rQ=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,oQ=/(\d+\.){3}\d+/,sQ=/\.\./;ee.DOT_PATTERN=/\./;ee.S3_HOSTNAME_PATTERN=/^(.+\.)?s3(-fips)?(\.dualstack)?[.-]([a-z0-9-]+)\./;var $R=/^s3(-external-1)?\.amazonaws\.com$/,rg="amazonaws.com",iQ=e=>typeof e.bucketName=="string";ee.isBucketNameOptions=iQ;var aQ=e=>rQ.test(e)&&!oQ.test(e)&&!sQ.test(e);ee.isDnsCompatibleBucketName=aQ;var KR=e=>{let t=e.match(ee.S3_HOSTNAME_PATTERN);return[t[4],e.replace(new RegExp(`^${t[0]}`),"")]},cQ=e=>$R.test(e)?["us-east-1",rg]:KR(e);ee.getSuffix=cQ;var dQ=e=>$R.test(e)?[e.replace(`.${rg}`,""),rg]:KR(e);ee.getSuffixForArnEndpoint=dQ;var lQ=e=>{if(e.pathStyleEndpoint)throw new Error("Path-style S3 endpoint is not supported when bucket is an ARN");if(e.accelerateEndpoint)throw new Error("Accelerate endpoint is not supported when bucket is an ARN");if(!e.tlsCompatible)throw new Error("HTTPS is required when bucket is an ARN")};ee.validateArnEndpointOptions=lQ;var uQ=e=>{if(e!=="s3"&&e!=="s3-outposts"&&e!=="s3-object-lambda")throw new Error("Expect 's3' or 's3-outposts' or 's3-object-lambda' in ARN service component")};ee.validateService=uQ;var mQ=e=>{if(e!=="s3")throw new Error("Expect 's3' in Accesspoint ARN service component")};ee.validateS3Service=mQ;var pQ=e=>{if(e!=="s3-outposts")throw new Error("Expect 's3-posts' in Outpost ARN service component")};ee.validateOutpostService=pQ;var fQ=(e,t)=>{if(e!==t.clientPartition)throw new Error(`Partition in ARN is incompatible, got "${e}" but expected "${t.clientPartition}"`)};ee.validatePartition=fQ;var yQ=(e,t)=>{if(e==="")throw new Error("ARN region is empty");if(t.useFipsEndpoint)if(t.allowFipsRegion){if(!ng(e,t.clientRegion))throw new Error(`Client FIPS region ${t.clientRegion} doesn't match region ${e} in ARN`)}else throw new Error("FIPS region is not supported");if(!t.useArnRegion&&!ng(e,t.clientRegion||"")&&!ng(e,t.clientSigningRegion||""))throw new Error(`Region in ARN is incompatible, got ${e} but expected ${t.clientRegion}`)};ee.validateRegion=yQ;var gQ=e=>{if(["s3-external-1","aws-global"].includes(e))throw new Error(`Client region ${e} is not regional`)};ee.validateRegionalClient=gQ;var ng=(e,t)=>e===t,hQ=e=>{if(!/[0-9]{12}/.exec(e))throw new Error("Access point ARN accountID does not match regex '[0-9]{12}'")};ee.validateAccountId=hQ;var _Q=(e,t={tlsCompatible:!0})=>{if(e.length>=64||!/^[a-z0-9][a-z0-9.-]*[a-z0-9]$/.test(e)||/(\d+\.){3}\d+/.test(e)||/[.-]{2}/.test(e)||t!=null&&t.tlsCompatible&&ee.DOT_PATTERN.test(e))throw new Error(`Invalid DNS label ${e}`)};ee.validateDNSHostLabel=_Q;var CQ=e=>{if(e.isCustomEndpoint){if(e.dualstackEndpoint)throw new Error("Dualstack endpoint is not supported with custom endpoint");if(e.accelerateEndpoint)throw new Error("Accelerate endpoint is not supported with custom endpoint")}};ee.validateCustomEndpoint=CQ;var SQ=e=>{let t=e.includes(":")?":":"/",[n,...r]=e.split(t);if(n==="accesspoint"){if(r.length!==1||r[0]==="")throw new Error(`Access Point ARN should have one resource accesspoint${t}{accesspointname}`);return{accesspointName:r[0]}}else if(n==="outpost"){if(!r[0]||r[1]!=="accesspoint"||!r[2]||r.length!==3)throw new Error(`Outpost ARN should have resource outpost${t}{outpostId}${t}accesspoint${t}{accesspointName}`);let[o,s,a]=r;return{outpostId:o,accesspointName:a}}else throw new Error(`ARN resource should begin with 'accesspoint${t}' or 'outpost${t}'`)};ee.getArnResources=SQ;var bQ=e=>{if(e)throw new Error("Dualstack endpoint is not supported with Outpost or Multi-region Access Point ARN.")};ee.validateNoDualstack=bQ;var EQ=e=>{if(e)throw new Error("FIPS region is not supported with Outpost.")};ee.validateNoFIPS=EQ;var PQ=e=>{try{e.split(".").forEach(t=>{(0,ee.validateDNSHostLabel)(t)})}catch{throw new Error(`"${e}" is not a DNS compatible name.`)}};ee.validateMrapAlias=PQ});var sg=m(Bu=>{"use strict";Object.defineProperty(Bu,"__esModule",{value:!0});Bu.bucketHostname=void 0;var ge=og(),vQ=e=>((0,ge.validateCustomEndpoint)(e),(0,ge.isBucketNameOptions)(e)?wQ(e):xQ(e));Bu.bucketHostname=vQ;var wQ=({accelerateEndpoint:e=!1,clientRegion:t,baseHostname:n,bucketName:r,dualstackEndpoint:o=!1,fipsEndpoint:s=!1,pathStyleEndpoint:a=!1,tlsCompatible:i=!0,isCustomEndpoint:u=!1})=>{let[l,c]=u?[t,n]:(0,ge.getSuffix)(n);return a||!(0,ge.isDnsCompatibleBucketName)(r)||i&&ge.DOT_PATTERN.test(r)?{bucketEndpoint:!1,hostname:o?`s3.dualstack.${l}.${c}`:n}:(e?n=`s3-accelerate${o?".dualstack":""}.${c}`:o&&(n=`s3.dualstack.${l}.${c}`),{bucketEndpoint:!0,hostname:`${r}.${n}`})},xQ=e=>{let{isCustomEndpoint:t,baseHostname:n,clientRegion:r}=e,o=t?n:(0,ge.getSuffixForArnEndpoint)(n)[1],{pathStyleEndpoint:s,accelerateEndpoint:a=!1,fipsEndpoint:i=!1,tlsCompatible:u=!0,bucketName:l,clientPartition:c="aws"}=e;(0,ge.validateArnEndpointOptions)({pathStyleEndpoint:s,accelerateEndpoint:a,tlsCompatible:u});let{service:y,partition:g,accountId:C,region:P,resource:A}=l;(0,ge.validateService)(y),(0,ge.validatePartition)(g,{clientPartition:c}),(0,ge.validateAccountId)(C);let{accesspointName:v,outpostId:G}=(0,ge.getArnResources)(A);return y==="s3-object-lambda"?kQ({...e,tlsCompatible:u,bucketName:l,accesspointName:v,hostnameSuffix:o}):P===""?AQ({...e,clientRegion:r,mrapAlias:v,hostnameSuffix:o}):G?OQ({...e,clientRegion:r,outpostId:G,accesspointName:v,hostnameSuffix:o}):NQ({...e,clientRegion:r,accesspointName:v,hostnameSuffix:o})},kQ=({dualstackEndpoint:e=!1,fipsEndpoint:t=!1,tlsCompatible:n=!0,useArnRegion:r,clientRegion:o,clientSigningRegion:s=o,accesspointName:a,bucketName:i,hostnameSuffix:u})=>{let{accountId:l,region:c,service:y}=i;(0,ge.validateRegionalClient)(o),(0,ge.validateRegion)(c,{useArnRegion:r,clientRegion:o,clientSigningRegion:s,allowFipsRegion:!0,useFipsEndpoint:t}),(0,ge.validateNoDualstack)(e);let g=`${a}-${l}`;(0,ge.validateDNSHostLabel)(g,{tlsCompatible:n});let C=r?c:o,P=r?c:s;return{bucketEndpoint:!0,hostname:`${g}.${y}${t?"-fips":""}.${C}.${u}`,signingRegion:P,signingService:y}},AQ=({disableMultiregionAccessPoints:e,dualstackEndpoint:t=!1,isCustomEndpoint:n,mrapAlias:r,hostnameSuffix:o})=>{if(e===!0)throw new Error("SDK is attempting to use a MRAP ARN. Please enable to feature.");return(0,ge.validateMrapAlias)(r),(0,ge.validateNoDualstack)(t),{bucketEndpoint:!0,hostname:`${r}${n?"":".accesspoint.s3-global"}.${o}`,signingRegion:"*"}},OQ=({useArnRegion:e,clientRegion:t,clientSigningRegion:n=t,bucketName:r,outpostId:o,dualstackEndpoint:s=!1,fipsEndpoint:a=!1,tlsCompatible:i=!0,accesspointName:u,isCustomEndpoint:l,hostnameSuffix:c})=>{(0,ge.validateRegionalClient)(t),(0,ge.validateRegion)(r.region,{useArnRegion:e,clientRegion:t,clientSigningRegion:n,useFipsEndpoint:a});let y=`${u}-${r.accountId}`;(0,ge.validateDNSHostLabel)(y,{tlsCompatible:i});let g=e?r.region:t,C=e?r.region:n;return(0,ge.validateOutpostService)(r.service),(0,ge.validateDNSHostLabel)(o,{tlsCompatible:i}),(0,ge.validateNoDualstack)(s),(0,ge.validateNoFIPS)(a),{bucketEndpoint:!0,hostname:`${`${y}.${o}`}${l?"":`.s3-outposts.${g}`}.${c}`,signingRegion:C,signingService:"s3-outposts"}},NQ=({useArnRegion:e,clientRegion:t,clientSigningRegion:n=t,bucketName:r,dualstackEndpoint:o=!1,fipsEndpoint:s=!1,tlsCompatible:a=!0,accesspointName:i,isCustomEndpoint:u,hostnameSuffix:l})=>{(0,ge.validateRegionalClient)(t),(0,ge.validateRegion)(r.region,{useArnRegion:e,clientRegion:t,clientSigningRegion:n,allowFipsRegion:!0,useFipsEndpoint:s});let c=`${i}-${r.accountId}`;(0,ge.validateDNSHostLabel)(c,{tlsCompatible:a});let y=e?r.region:t,g=e?r.region:n;return(0,ge.validateS3Service)(r.service),{bucketEndpoint:!0,hostname:`${c}${u?"":`.s3-accesspoint${s?"-fips":""}${o?".dualstack":""}.${y}`}.${l}`,signingRegion:g}}});var WR=m(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.getBucketEndpointPlugin=Xt.bucketEndpointMiddlewareOptions=Xt.bucketEndpointMiddleware=void 0;var VR=hp(),IQ=Ne(),XR=sg(),RQ=e=>(t,n)=>async r=>{let{Bucket:o}=r.input,s=e.bucketEndpoint,a=r.request;if(IQ.HttpRequest.isInstance(a)){if(e.bucketEndpoint)a.hostname=o;else if((0,VR.validate)(o)){let i=(0,VR.parse)(o),u=await e.region(),l=await e.useDualstackEndpoint(),c=await e.useFipsEndpoint(),{partition:y,signingRegion:g=u}=await e.regionInfoProvider(u,{useDualstackEndpoint:l,useFipsEndpoint:c})||{},C=await e.useArnRegion(),{hostname:P,bucketEndpoint:A,signingRegion:v,signingService:G}=(0,XR.bucketHostname)({bucketName:i,baseHostname:a.hostname,accelerateEndpoint:e.useAccelerateEndpoint,dualstackEndpoint:l,fipsEndpoint:c,pathStyleEndpoint:e.forcePathStyle,tlsCompatible:a.protocol==="https:",useArnRegion:C,clientPartition:y,clientSigningRegion:g,clientRegion:u,isCustomEndpoint:e.isCustomEndpoint,disableMultiregionAccessPoints:await e.disableMultiregionAccessPoints()});v&&v!==g&&(n.signing_region=v),G&&G!=="s3"&&(n.signing_service=G),a.hostname=P,s=A}else{let i=await e.region(),u=await e.useDualstackEndpoint(),l=await e.useFipsEndpoint(),{hostname:c,bucketEndpoint:y}=(0,XR.bucketHostname)({bucketName:o,clientRegion:i,baseHostname:a.hostname,accelerateEndpoint:e.useAccelerateEndpoint,dualstackEndpoint:u,fipsEndpoint:l,pathStyleEndpoint:e.forcePathStyle,tlsCompatible:a.protocol==="https:",isCustomEndpoint:e.isCustomEndpoint});a.hostname=c,s=y}s&&(a.path=a.path.replace(/^(\/)?[^\/]+/,""),a.path===""&&(a.path="/"))}return t({...r,request:a})};Xt.bucketEndpointMiddleware=RQ;Xt.bucketEndpointMiddlewareOptions={tags:["BUCKET_ENDPOINT"],name:"bucketEndpointMiddleware",relation:"before",toMiddleware:"hostHeaderMiddleware",override:!0};var TQ=e=>({applyToStack:t=>{t.addRelativeTo((0,Xt.bucketEndpointMiddleware)(e),Xt.bucketEndpointMiddlewareOptions)}});Xt.getBucketEndpointPlugin=TQ});var YR=m(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});qu.resolveBucketEndpointConfig=void 0;function BQ(e){let{bucketEndpoint:t=!1,forcePathStyle:n=!1,useAccelerateEndpoint:r=!1,useArnRegion:o=!1,disableMultiregionAccessPoints:s=!1}=e;return{...e,bucketEndpoint:t,forcePathStyle:n,useAccelerateEndpoint:r,useArnRegion:typeof o=="function"?o:()=>Promise.resolve(o),disableMultiregionAccessPoints:typeof s=="function"?s:()=>Promise.resolve(s)}}qu.resolveBucketEndpointConfig=BQ});var JR=m(Se=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.validateNoFIPS=Se.validateNoDualstack=Se.validateDNSHostLabel=Se.validateRegion=Se.validateAccountId=Se.validatePartition=Se.validateOutpostService=Se.getSuffixForArnEndpoint=Se.getArnResources=void 0;var Ia=(ne(),J(te));Ia.__exportStar(GR(),Se);Ia.__exportStar(HR(),Se);Ia.__exportStar(WR(),Se);Ia.__exportStar(sg(),Se);Ia.__exportStar(YR(),Se);var gn=og();Object.defineProperty(Se,"getArnResources",{enumerable:!0,get:function(){return gn.getArnResources}});Object.defineProperty(Se,"getSuffixForArnEndpoint",{enumerable:!0,get:function(){return gn.getSuffixForArnEndpoint}});Object.defineProperty(Se,"validateOutpostService",{enumerable:!0,get:function(){return gn.validateOutpostService}});Object.defineProperty(Se,"validatePartition",{enumerable:!0,get:function(){return gn.validatePartition}});Object.defineProperty(Se,"validateAccountId",{enumerable:!0,get:function(){return gn.validateAccountId}});Object.defineProperty(Se,"validateRegion",{enumerable:!0,get:function(){return gn.validateRegion}});Object.defineProperty(Se,"validateDNSHostLabel",{enumerable:!0,get:function(){return gn.validateDNSHostLabel}});Object.defineProperty(Se,"validateNoDualstack",{enumerable:!0,get:function(){return gn.validateNoDualstack}});Object.defineProperty(Se,"validateNoFIPS",{enumerable:!0,get:function(){return gn.validateNoFIPS}})});var dg={};Ni(dg,{__assign:()=>ag,__asyncDelegator:()=>VQ,__asyncGenerator:()=>KQ,__asyncValues:()=>XQ,__await:()=>Ra,__awaiter:()=>jQ,__classPrivateFieldGet:()=>QQ,__classPrivateFieldSet:()=>ZQ,__createBinding:()=>zQ,__decorate:()=>MQ,__exportStar:()=>GQ,__extends:()=>qQ,__generator:()=>UQ,__importDefault:()=>JQ,__importStar:()=>YQ,__makeTemplateObject:()=>WQ,__metadata:()=>LQ,__param:()=>FQ,__read:()=>QR,__rest:()=>DQ,__spread:()=>HQ,__spreadArrays:()=>$Q,__values:()=>cg});function qQ(e,t){ig(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function DQ(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o=0;i--)(a=e[i])&&(s=(o<3?a(s):o>3?a(t,n,s):a(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function FQ(e,t){return function(n,r){t(n,r,e)}}function LQ(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}function jQ(e,t,n,r){function o(s){return s instanceof n?s:new n(function(a){a(s)})}return new(n||(n=Promise))(function(s,a){function i(c){try{l(r.next(c))}catch(y){a(y)}}function u(c){try{l(r.throw(c))}catch(y){a(y)}}function l(c){c.done?s(c.value):o(c.value).then(i,u)}l((r=r.apply(e,t||[])).next())})}function UQ(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},r,o,s,a;return a={next:i(0),throw:i(1),return:i(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function i(l){return function(c){return u([l,c])}}function u(l){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,o&&(s=l[0]&2?o.return:l[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,l[1])).done)return s;switch(o=0,s&&(l=[l[0]&2,s.value]),l[0]){case 0:case 1:s=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,o=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(s=n.trys,!(s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function QR(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,s=[],a;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)s.push(o.value)}catch(i){a={error:i}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return s}function HQ(){for(var e=[],t=0;t1||i(g,C)})})}function i(g,C){try{u(r[g](C))}catch(P){y(s[0][3],P)}}function u(g){g.value instanceof Ra?Promise.resolve(g.value.v).then(l,c):y(s[0][2],g)}function l(g){i("next",g)}function c(g){i("throw",g)}function y(g,C){g(C),s.shift(),s.length&&i(s[0][0],s[0][1])}}function VQ(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,s){t[o]=e[o]?function(a){return(n=!n)?{value:Ra(e[o](a)),done:o==="return"}:s?s(a):a}:s}}function XQ(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof cg=="function"?cg(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(s){n[s]=e[s]&&function(a){return new Promise(function(i,u){a=e[s](a),o(i,u,a.done,a.value)})}}function o(s,a,i,u){Promise.resolve(u).then(function(l){s({value:l,done:i})},a)}}function WQ(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function YQ(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function JQ(e){return e&&e.__esModule?e:{default:e}}function QQ(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function ZQ(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}var ig,ag,lg=je(()=>{ig=function(e,t){return ig=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var o in r)r.hasOwnProperty(o)&&(n[o]=r[o])},ig(e,t)};ag=function(){return ag=Object.assign||function(t){for(var n,r=1,o=arguments.length;r{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.toUtf8=bo.fromUtf8=void 0;var eZ=e=>{let t=[];for(let n=0,r=e.length;n>6|192,o&63|128);else if(n+1>18|240,s>>12&63|128,s>>6&63|128,s&63|128)}else t.push(o>>12|224,o>>6&63|128,o&63|128)}return Uint8Array.from(t)};bo.fromUtf8=eZ;var tZ=e=>{let t="";for(let n=0,r=e.length;ni.toString(16)).join("%");t+=decodeURIComponent(a)}else t+=String.fromCharCode((o&15)<<12|(e[++n]&63)<<6|e[++n]&63)}return t};bo.toUtf8=tZ});var eT=m(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});Eo.toUtf8=Eo.fromUtf8=void 0;function nZ(e){return new TextEncoder().encode(e)}Eo.fromUtf8=nZ;function rZ(e){return new TextDecoder("utf-8").decode(e)}Eo.toUtf8=rZ});var rT=m(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.toUtf8=Po.fromUtf8=void 0;var tT=ZR(),nT=eT(),oZ=e=>typeof TextEncoder=="function"?(0,nT.fromUtf8)(e):(0,tT.fromUtf8)(e);Po.fromUtf8=oZ;var sZ=e=>typeof TextDecoder=="function"?(0,nT.toUtf8)(e):(0,tT.toUtf8)(e);Po.toUtf8=sZ});var oT=m(Du=>{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});Du.convertToBuffer=void 0;var iZ=rT(),aZ=typeof Buffer<"u"&&Buffer.from?function(e){return Buffer.from(e,"utf8")}:iZ.fromUtf8;function cZ(e){return e instanceof Uint8Array?e:typeof e=="string"?aZ(e):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(e)}Du.convertToBuffer=cZ});var sT=m(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.isEmptyData=void 0;function dZ(e){return typeof e=="string"?e.length===0:e.byteLength===0}Mu.isEmptyData=dZ});var iT=m(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.numToUint8=void 0;function lZ(e){return new Uint8Array([(e&4278190080)>>24,(e&16711680)>>16,(e&65280)>>8,e&255])}Fu.numToUint8=lZ});var aT=m(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.uint32ArrayFrom=void 0;function uZ(e){if(!Uint32Array.from){for(var t=new Uint32Array(e.length),n=0;n{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.uint32ArrayFrom=Wt.numToUint8=Wt.isEmptyData=Wt.convertToBuffer=void 0;var mZ=oT();Object.defineProperty(Wt,"convertToBuffer",{enumerable:!0,get:function(){return mZ.convertToBuffer}});var pZ=sT();Object.defineProperty(Wt,"isEmptyData",{enumerable:!0,get:function(){return pZ.isEmptyData}});var fZ=iT();Object.defineProperty(Wt,"numToUint8",{enumerable:!0,get:function(){return fZ.numToUint8}});var yZ=aT();Object.defineProperty(Wt,"uint32ArrayFrom",{enumerable:!0,get:function(){return yZ.uint32ArrayFrom}})});var lT=m(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.AwsCrc32=void 0;var cT=(lg(),J(dg)),ug=Ta(),dT=Ba(),gZ=function(){function e(){this.crc32=new dT.Crc32}return e.prototype.update=function(t){(0,ug.isEmptyData)(t)||this.crc32.update((0,ug.convertToBuffer)(t))},e.prototype.digest=function(){return cT.__awaiter(this,void 0,void 0,function(){return cT.__generator(this,function(t){return[2,(0,ug.numToUint8)(this.crc32.digest())]})})},e.prototype.reset=function(){this.crc32=new dT.Crc32},e}();ju.AwsCrc32=gZ});var Ba=m(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.AwsCrc32=Kn.Crc32=Kn.crc32=void 0;var hZ=(lg(),J(dg)),_Z=Ta();function CZ(e){return new uT().update(e).digest()}Kn.crc32=CZ;var uT=function(){function e(){this.checksum=4294967295}return e.prototype.update=function(t){var n,r;try{for(var o=hZ.__values(t),s=o.next();!s.done;s=o.next()){var a=s.value;this.checksum=this.checksum>>>8^bZ[(this.checksum^a)&255]}}catch(i){n={error:i}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return this},e.prototype.digest=function(){return(this.checksum^4294967295)>>>0},e}();Kn.Crc32=uT;var SZ=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],bZ=(0,_Z.uint32ArrayFrom)(SZ),EZ=lT();Object.defineProperty(Kn,"AwsCrc32",{enumerable:!0,get:function(){return EZ.AwsCrc32}})});var xT=m((Lxe,wT)=>{var zu=Object.defineProperty,PZ=Object.getOwnPropertyDescriptor,vZ=Object.getOwnPropertyNames,wZ=Object.prototype.hasOwnProperty,hn=(e,t)=>zu(e,"name",{value:t,configurable:!0}),xZ=(e,t)=>{for(var n in t)zu(e,n,{get:t[n],enumerable:!0})},kZ=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of vZ(t))!wZ.call(e,o)&&o!==n&&zu(e,o,{get:()=>t[o],enumerable:!(r=PZ(t,o))||r.enumerable});return e},AZ=e=>kZ(zu({},"__esModule",{value:!0}),e),pT={};xZ(pT,{EventStreamCodec:()=>UZ,HeaderMarshaller:()=>hT,Int64:()=>Uu,MessageDecoderStream:()=>zZ,MessageEncoderStream:()=>GZ,SmithyMessageDecoderStream:()=>HZ,SmithyMessageEncoderStream:()=>$Z});wT.exports=AZ(pT);var OZ=Ba(),hr=Cp(),fT=class yT{constructor(t){if(this.bytes=t,t.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(t){if(t>9223372036854776e3||t<-9223372036854776e3)throw new Error(`${t} is too large (or, if negative, too small) to represent as an Int64`);let n=new Uint8Array(8);for(let r=7,o=Math.abs(Math.round(t));r>-1&&o>0;r--,o/=256)n[r]=o;return t<0&&mg(n),new yT(n)}valueOf(){let t=this.bytes.slice(0),n=t[0]&128;return n&&mg(t),parseInt((0,hr.toHex)(t),16)*(n?-1:1)}toString(){return String(this.valueOf())}};hn(fT,"Int64");var Uu=fT;function mg(e){for(let t=0;t<8;t++)e[t]^=255;for(let t=7;t>-1&&(e[t]++,e[t]===0);t--);}hn(mg,"negate");var gT=class{constructor(t,n){this.toUtf8=t,this.fromUtf8=n}format(t){let n=[];for(let s of Object.keys(t)){let a=this.fromUtf8(s);n.push(Uint8Array.from([a.byteLength]),a,this.formatHeaderValue(t[s]))}let r=new Uint8Array(n.reduce((s,a)=>s+a.byteLength,0)),o=0;for(let s of n)r.set(s,o),o+=s.byteLength;return r}formatHeaderValue(t){switch(t.type){case"boolean":return Uint8Array.from([t.value?0:1]);case"byte":return Uint8Array.from([2,t.value]);case"short":let n=new DataView(new ArrayBuffer(3));return n.setUint8(0,3),n.setInt16(1,t.value,!1),new Uint8Array(n.buffer);case"integer":let r=new DataView(new ArrayBuffer(5));return r.setUint8(0,4),r.setInt32(1,t.value,!1),new Uint8Array(r.buffer);case"long":let o=new Uint8Array(9);return o[0]=5,o.set(t.value.bytes,1),o;case"binary":let s=new DataView(new ArrayBuffer(3+t.value.byteLength));s.setUint8(0,6),s.setUint16(1,t.value.byteLength,!1);let a=new Uint8Array(s.buffer);return a.set(t.value,3),a;case"string":let i=this.fromUtf8(t.value),u=new DataView(new ArrayBuffer(3+i.byteLength));u.setUint8(0,7),u.setUint16(1,i.byteLength,!1);let l=new Uint8Array(u.buffer);return l.set(i,3),l;case"timestamp":let c=new Uint8Array(9);return c[0]=8,c.set(Uu.fromNumber(t.value.valueOf()).bytes,1),c;case"uuid":if(!FZ.test(t.value))throw new Error(`Invalid UUID received: ${t.value}`);let y=new Uint8Array(17);return y[0]=9,y.set((0,hr.fromHex)(t.value.replace(/\-/g,"")),1),y}}parse(t){let n={},r=0;for(;r{var Gu=Object.defineProperty,KZ=Object.getOwnPropertyDescriptor,VZ=Object.getOwnPropertyNames,XZ=Object.prototype.hasOwnProperty,vo=(e,t)=>Gu(e,"name",{value:t,configurable:!0}),WZ=(e,t)=>{for(var n in t)Gu(e,n,{get:t[n],enumerable:!0})},YZ=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of VZ(t))!XZ.call(e,o)&&o!==n&&Gu(e,o,{get:()=>t[o],enumerable:!(r=KZ(t,o))||r.enumerable});return e},JZ=e=>YZ(Gu({},"__esModule",{value:!0}),e),kT={};WZ(kT,{EventStreamMarshaller:()=>IT,eventStreamSerdeProvider:()=>QZ});RT.exports=JZ(kT);var qa=xT();function AT(e){let t=0,n=0,r=null,o=null,s=vo(i=>{if(typeof i!="number")throw new Error("Attempted to allocate an event message where size was not a number: "+i);t=i,n=4,r=new Uint8Array(i),new DataView(r.buffer).setUint32(0,i,!1)},"allocateMessage"),a=vo(async function*(){let i=e[Symbol.asyncIterator]();for(;;){let{value:u,done:l}=await i.next();if(l){if(t)if(t===n)yield r;else throw new Error("Truncated event message received.");else return;return}let c=u.length,y=0;for(;ynew IT(e),"eventStreamSerdeProvider")});var LT=m((Gxe,FT)=>{var Hu=Object.defineProperty,ZZ=Object.getOwnPropertyDescriptor,eee=Object.getOwnPropertyNames,tee=Object.prototype.hasOwnProperty,pg=(e,t)=>Hu(e,"name",{value:t,configurable:!0}),nee=(e,t)=>{for(var n in t)Hu(e,n,{get:t[n],enumerable:!0})},ree=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of eee(t))!tee.call(e,o)&&o!==n&&Hu(e,o,{get:()=>t[o],enumerable:!(r=ZZ(t,o))||r.enumerable});return e},oee=e=>ree(Hu({},"__esModule",{value:!0}),e),BT={};nee(BT,{EventStreamMarshaller:()=>MT,eventStreamSerdeProvider:()=>aee});FT.exports=oee(BT);var see=TT(),iee=require("stream");async function*qT(e){let t=!1,n=!1,r=new Array;for(e.on("error",o=>{if(t||(t=!0),o)throw o}),e.on("data",o=>{r.push(o)}),e.on("end",()=>{t=!0});!n;){let o=await new Promise(s=>setTimeout(()=>s(r.shift()),0));o&&(yield o),n=t&&r.length===0}}pg(qT,"readabletoIterable");var DT=class{constructor({utf8Encoder:t,utf8Decoder:n}){this.universalMarshaller=new see.EventStreamMarshaller({utf8Decoder:n,utf8Encoder:t})}deserialize(t,n){let r=typeof t[Symbol.asyncIterator]=="function"?t:qT(t);return this.universalMarshaller.deserialize(r,n)}serialize(t,n){return iee.Readable.from(this.universalMarshaller.serialize(t,n))}};pg(DT,"EventStreamMarshaller");var MT=DT,aee=pg(e=>new MT(e),"eventStreamSerdeProvider")});var HT=m(($xe,GT)=>{var $u=Object.defineProperty,cee=Object.getOwnPropertyDescriptor,dee=Object.getOwnPropertyNames,lee=Object.prototype.hasOwnProperty,Ku=(e,t)=>$u(e,"name",{value:t,configurable:!0}),uee=(e,t)=>{for(var n in t)$u(e,n,{get:t[n],enumerable:!0})},mee=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of dee(t))!lee.call(e,o)&&o!==n&&$u(e,o,{get:()=>t[o],enumerable:!(r=cee(t,o))||r.enumerable});return e},pee=e=>mee($u({},"__esModule",{value:!0}),e),jT={};uee(jT,{fileStreamHasher:()=>hee,readableStreamHasher:()=>Cee});GT.exports=pee(jT);var fee=require("fs"),yee=st(),gee=require("stream"),UT=class extends gee.Writable{constructor(t,n){super(n),this.hash=t}_write(t,n,r){try{this.hash.update((0,yee.toUint8Array)(t))}catch(o){return r(o)}r()}};Ku(UT,"HashCalculator");var zT=UT,hee=Ku((e,t)=>new Promise((n,r)=>{if(!_ee(t)){r(new Error("Unable to calculate hash for non-file streams."));return}let o=(0,fee.createReadStream)(t.path,{start:t.start,end:t.end}),s=new e,a=new zT(s);o.pipe(a),o.on("error",i=>{a.end(),r(i)}),a.on("error",r),a.on("finish",function(){s.digest().then(n).catch(r)})}),"fileStreamHasher"),_ee=Ku(e=>typeof e.path=="string","isReadStream"),Cee=Ku((e,t)=>{if(t.readableFlowing!==null)throw new Error("Unable to calculate hash for flowing readable stream");let n=new e,r=new zT(n);return t.pipe(r),new Promise((o,s)=>{t.on("error",a=>{r.end(),s(a)}),r.on("error",s),r.on("finish",()=>{n.digest().then(o).catch(s)})})},"readableStreamHasher")});var Xu=m(Vu=>{"use strict";Object.defineProperty(Vu,"__esModule",{value:!0});Vu.signatureV4CrtContainer=void 0;Vu.signatureV4CrtContainer={CrtSignerV4:null}});var $T=m(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.loadCrt=void 0;var See=Xu();function bee(){if(!See.signatureV4CrtContainer.CrtSignerV4)try{typeof require=="function"&&(require.call(null,"@aws-sdk/signature-v4-crt"),process.emitWarning(`The package @aws-sdk/signature-v4-crt has been loaded dynamically. -To avoid this warning, please explicitly import the package in your application with: - -import "@aws-sdk/signature-v4-crt"; // ESM -require("@aws-sdk/signature-v4-crt"); // CJS - -In a future version of the AWS SDK for JavaScript (v3), this warning -will become an error and dynamic loading will not be available. - -See https://github.com/aws/aws-sdk-js-v3/issues/5229. -`))}catch{}}Wu.loadCrt=bee});var KT=m(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});Yu.SignatureV4MultiRegion=void 0;var Eee=xp(),Pee=$T(),vee=Xu(),fg=class{constructor(t){this.sigv4Signer=new Eee.SignatureV4(t),this.signerOptions=t}async sign(t,n={}){if(n.signingRegion==="*"){if(this.signerOptions.runtime!=="node")throw new Error("This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js");return this.getSigv4aSigner().sign(t,n)}return this.sigv4Signer.sign(t,n)}async presign(t,n={}){if(n.signingRegion==="*"){if(this.signerOptions.runtime!=="node")throw new Error("This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js");return this.getSigv4aSigner().presign(t,n)}return this.sigv4Signer.presign(t,n)}getSigv4aSigner(){if(!this.sigv4aSigner){let t=null;try{if((0,Pee.loadCrt)(),t=vee.signatureV4CrtContainer.CrtSignerV4,typeof t!="function")throw new Error}catch(n){throw n.message=`${n.message} -Please check if you have installed "@aws-sdk/signature-v4-crt" package explicitly. -For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`,n}this.sigv4aSigner=new t({...this.signerOptions,signingAlgorithm:1})}return this.sigv4aSigner}};Yu.SignatureV4MultiRegion=fg});var XT=m(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});var VT=(ne(),J(te));VT.__exportStar(KT(),Ju);VT.__exportStar(Xu(),Ju)});var sq=m(rm=>{"use strict";Object.defineProperty(rm,"__esModule",{value:!0});rm.ruleSet=void 0;var Ug="required",h="type",S="conditions",O="fn",N="argv",oe="ref",Ye="assign",$="url",K="properties",Cn="authSchemes",Sn="disableDoubleEncoding",bn="signingName",Yn="signingRegion",V="headers",WT=!1,Yt=!0,Jt="isSet",j="tree",nt="booleanEquals",H="error",tm="aws.partition",ke="stringEquals",Re="getAttr",Ct="name",Da="substring",zB="hardwareType",GB="regionPrefix",YT="bucketAliasSuffix",Fg="outpostId",Cr="isValidHostLabel",Ot="not",HB="parseURL",zg="s3-outposts",U="endpoint",JT="aws.isVirtualHostableS3Bucket",xo="s3",$B="{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}",KB="{url#scheme}://{Bucket}.{url#authority}{url#path}",VB="https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}",QT="https://{Bucket}.s3.{partitionResult#dnsSuffix}",XB="aws.parseArn",WB="bucketArn",YB="arnType",nm="",Gg="s3-object-lambda",JB="accesspoint",Hg="accessPointName",ZT="{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}",eB="mrapPartition",tB="outpostType",nB="arnPrefix",QB="{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}",rB="https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",Lg="{url#scheme}://{url#authority}{url#path}",oB="https://s3.{partitionResult#dnsSuffix}",yg={[Ug]:!1,[h]:"String"},wo={[Ug]:!0,default:!1,[h]:"Boolean"},gg={[Ug]:!1,[h]:"Boolean"},At={[O]:nt,[N]:[{[oe]:"Accelerate"},!0]},Pe={[O]:nt,[N]:[{[oe]:"UseFIPS"},!0]},_e={[O]:nt,[N]:[{[oe]:"UseDualStack"},!0]},Ie={[O]:Jt,[N]:[{[oe]:"Endpoint"}]},ZB={[O]:tm,[N]:[{[oe]:"Region"}],[Ye]:"partitionResult"},sB={[O]:ke,[N]:[{[O]:Re,[N]:[{[oe]:"partitionResult"},Ct]},"aws-cn"]},eq={[O]:Jt,[N]:[{[oe]:"Bucket"}]},_n={[oe]:"Bucket"},iB={[oe]:zB},aB={[S]:[{[O]:Ot,[N]:[Ie]}],[H]:"Expected a endpoint to be specified but no endpoint was found",[h]:H},re={[O]:Ot,[N]:[Ie]},ot={[O]:HB,[N]:[{[oe]:"Endpoint"}],[Ye]:"url"},Qu={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:zg,[Yn]:"{Region}"}]},ce={},hg={[O]:nt,[N]:[{[oe]:"ForcePathStyle"},!1]},wee={[oe]:"ForcePathStyle"},Me={[O]:nt,[N]:[{[oe]:"Accelerate"},!1]},Ue={[O]:ke,[N]:[{[oe]:"Region"},"aws-global"]},He={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:xo,[Yn]:"us-east-1"}]},le={[O]:Ot,[N]:[Ue]},$e={[O]:nt,[N]:[{[oe]:"UseGlobalEndpoint"},!0]},cB={[$]:"https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}",[K]:{[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:xo,[Yn]:"{Region}"}]},[V]:{}},Fe={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:xo,[Yn]:"{Region}"}]},Ke={[O]:nt,[N]:[{[oe]:"UseGlobalEndpoint"},!1]},de={[O]:nt,[N]:[{[oe]:"UseDualStack"},!1]},dB={[$]:"https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},ie={[O]:nt,[N]:[{[oe]:"UseFIPS"},!1]},lB={[$]:"https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},uB={[$]:"https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},_g={[O]:nt,[N]:[{[O]:Re,[N]:[{[oe]:"url"},"isIp"]},!0]},tq={[oe]:"url"},Cg={[O]:nt,[N]:[{[O]:Re,[N]:[tq,"isIp"]},!1]},Sg={[$]:$B,[K]:Fe,[V]:{}},jg={[$]:KB,[K]:Fe,[V]:{}},mB={[U]:jg,[h]:U},bg={[$]:VB,[K]:Fe,[V]:{}},pB={[$]:"https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},Zu={[H]:"Invalid region: region was not a valid DNS name.",[h]:H},ct={[oe]:WB},nq={[oe]:YB},Eg={[O]:Re,[N]:[ct,"service"]},$g={[oe]:Hg},fB={[S]:[_e],[H]:"S3 Object Lambda does not support Dual-stack",[h]:H},yB={[S]:[At],[H]:"S3 Object Lambda does not support S3 Accelerate",[h]:H},gB={[S]:[{[O]:Jt,[N]:[{[oe]:"DisableAccessPoints"}]},{[O]:nt,[N]:[{[oe]:"DisableAccessPoints"},!0]}],[H]:"Access points are not supported for this operation",[h]:H},Pg={[S]:[{[O]:Jt,[N]:[{[oe]:"UseArnRegion"}]},{[O]:nt,[N]:[{[oe]:"UseArnRegion"},!1]},{[O]:Ot,[N]:[{[O]:ke,[N]:[{[O]:Re,[N]:[ct,"region"]},"{Region}"]}]}],[H]:"Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`",[h]:H},rq={[O]:Re,[N]:[{[oe]:"bucketPartition"},Ct]},oq={[O]:Re,[N]:[ct,"accountId"]},vg={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:Gg,[Yn]:"{bucketArn#region}"}]},hB={[H]:"Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`",[h]:H},wg={[H]:"Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`",[h]:H},xg={[H]:"Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)",[h]:H},kg={[H]:"Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`",[h]:H},_B={[H]:"Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.",[h]:H},CB={[H]:"Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided",[h]:H},Ma={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:xo,[Yn]:"{bucketArn#region}"}]},SB={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:zg,[Yn]:"{bucketArn#region}"}]},bB={[O]:XB,[N]:[_n]},EB={[$]:"https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:Fe,[V]:{}},PB={[$]:"https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:Fe,[V]:{}},vB={[$]:"https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:Fe,[V]:{}},Ag={[$]:QB,[K]:Fe,[V]:{}},wB={[$]:"https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:Fe,[V]:{}},xB={[oe]:"UseObjectLambdaEndpoint"},Og={[Cn]:[{[Sn]:!0,[Ct]:"sigv4",[bn]:Gg,[Yn]:"{Region}"}]},kB={[$]:"https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},AB={[$]:"https://s3-fips.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},OB={[$]:"https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},Ng={[$]:Lg,[K]:Fe,[V]:{}},NB={[$]:"https://s3.{Region}.{partitionResult#dnsSuffix}",[K]:Fe,[V]:{}},Ig=[{[oe]:"Region"}],xee=[{[oe]:"Endpoint"}],IB=[_n],RB=[{[O]:Cr,[N]:[{[oe]:Fg},!1]}],TB=[{[O]:ke,[N]:[{[oe]:GB},"beta"]}],Fa=[Ie,ot],BB=[eq],Xn=[ZB],qB=[{[O]:Cr,[N]:[{[oe]:"Region"},!1]}],Wn=[{[O]:ke,[N]:[{[oe]:"Region"},"us-east-1"]}],Rg=[{[O]:ke,[N]:[nq,JB]}],DB=[{[O]:Re,[N]:[ct,"resourceId[1]"],[Ye]:Hg},{[O]:Ot,[N]:[{[O]:ke,[N]:[$g,nm]}]}],kee=[ct,"resourceId[1]"],MB=[_e],Tg=[At],Bg=[{[O]:Ot,[N]:[{[O]:ke,[N]:[{[O]:Re,[N]:[ct,"region"]},nm]}]}],FB=[{[O]:Ot,[N]:[{[O]:Jt,[N]:[{[O]:Re,[N]:[ct,"resourceId[2]"]}]}]}],Aee=[ct,"resourceId[2]"],qg=[{[O]:tm,[N]:[{[O]:Re,[N]:[ct,"region"]}],[Ye]:"bucketPartition"}],LB=[{[O]:ke,[N]:[rq,{[O]:Re,[N]:[{[oe]:"partitionResult"},Ct]}]}],Dg=[{[O]:Cr,[N]:[{[O]:Re,[N]:[ct,"region"]},!0]}],Mg=[{[O]:Cr,[N]:[oq,!1]}],jB=[{[O]:Cr,[N]:[$g,!1]}],em=[Pe],UB=[{[O]:Cr,[N]:[{[oe]:"Region"},!0]}],Oee={version:"1.0",parameters:{Bucket:yg,Region:yg,UseFIPS:wo,UseDualStack:wo,Endpoint:yg,ForcePathStyle:wo,Accelerate:wo,UseGlobalEndpoint:wo,UseObjectLambdaEndpoint:gg,DisableAccessPoints:gg,DisableMultiRegionAccessPoints:wo,UseArnRegion:gg},rules:[{[S]:[{[O]:Jt,[N]:Ig}],[h]:j,rules:[{[S]:[At,Pe],error:"Accelerate cannot be used with FIPS",[h]:H},{[S]:[_e,Ie],error:"Cannot set dual-stack in combination with a custom endpoint.",[h]:H},{[S]:[Ie,Pe],error:"A custom endpoint cannot be combined with FIPS",[h]:H},{[S]:[Ie,At],error:"A custom endpoint cannot be combined with S3 Accelerate",[h]:H},{[S]:[Pe,ZB,sB],error:"Partition does not support FIPS",[h]:H},{[S]:[eq,{[O]:Da,[N]:[_n,49,50,Yt],[Ye]:zB},{[O]:Da,[N]:[_n,8,12,Yt],[Ye]:GB},{[O]:Da,[N]:[_n,0,7,Yt],[Ye]:YT},{[O]:Da,[N]:[_n,32,49,Yt],[Ye]:Fg},{[O]:tm,[N]:Ig,[Ye]:"regionPartition"},{[O]:ke,[N]:[{[oe]:YT},"--op-s3"]}],[h]:j,rules:[{[S]:RB,[h]:j,rules:[{[S]:[{[O]:ke,[N]:[iB,"e"]}],[h]:j,rules:[{[S]:TB,[h]:j,rules:[aB,{[S]:Fa,endpoint:{[$]:"https://{Bucket}.ec2.{url#authority}",[K]:Qu,[V]:ce},[h]:U}]},{endpoint:{[$]:"https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}",[K]:Qu,[V]:ce},[h]:U}]},{[S]:[{[O]:ke,[N]:[iB,"o"]}],[h]:j,rules:[{[S]:TB,[h]:j,rules:[aB,{[S]:Fa,endpoint:{[$]:"https://{Bucket}.op-{outpostId}.{url#authority}",[K]:Qu,[V]:ce},[h]:U}]},{endpoint:{[$]:"https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}",[K]:Qu,[V]:ce},[h]:U}]},{error:'Unrecognized hardware type: "Expected hardware type o or e but got {hardwareType}"',[h]:H}]},{error:"Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.",[h]:H}]},{[S]:BB,[h]:j,rules:[{[S]:[Ie,{[O]:Ot,[N]:[{[O]:Jt,[N]:[{[O]:HB,[N]:xee}]}]}],error:"Custom endpoint `{Endpoint}` was not a valid URI",[h]:H},{[S]:[hg,{[O]:JT,[N]:[_n,WT]}],[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:qB,[h]:j,rules:[{[S]:[At,sB],error:"S3 Accelerate cannot be used in this region",[h]:H},{[S]:[_e,Pe,Me,re,Ue],endpoint:{[$]:"https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[_e,Pe,Me,re,le,$e],[h]:j,rules:[{endpoint:cB,[h]:U}]},{[S]:[_e,Pe,Me,re,le,Ke],endpoint:cB,[h]:U},{[S]:[de,Pe,Me,re,Ue],endpoint:{[$]:"https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[de,Pe,Me,re,le,$e],[h]:j,rules:[{endpoint:dB,[h]:U}]},{[S]:[de,Pe,Me,re,le,Ke],endpoint:dB,[h]:U},{[S]:[_e,ie,At,re,Ue],endpoint:{[$]:"https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[_e,ie,At,re,le,$e],[h]:j,rules:[{endpoint:lB,[h]:U}]},{[S]:[_e,ie,At,re,le,Ke],endpoint:lB,[h]:U},{[S]:[_e,ie,Me,re,Ue],endpoint:{[$]:"https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[_e,ie,Me,re,le,$e],[h]:j,rules:[{endpoint:uB,[h]:U}]},{[S]:[_e,ie,Me,re,le,Ke],endpoint:uB,[h]:U},{[S]:[de,ie,Me,Ie,ot,_g,Ue],endpoint:{[$]:$B,[K]:He,[V]:ce},[h]:U},{[S]:[de,ie,Me,Ie,ot,Cg,Ue],endpoint:{[$]:KB,[K]:He,[V]:ce},[h]:U},{[S]:[de,ie,Me,Ie,ot,_g,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:Sg,[h]:U},{endpoint:Sg,[h]:U}]},{[S]:[de,ie,Me,Ie,ot,Cg,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:jg,[h]:U},mB]},{[S]:[de,ie,Me,Ie,ot,_g,le,Ke],endpoint:Sg,[h]:U},{[S]:[de,ie,Me,Ie,ot,Cg,le,Ke],endpoint:jg,[h]:U},{[S]:[de,ie,At,re,Ue],endpoint:{[$]:VB,[K]:He,[V]:ce},[h]:U},{[S]:[de,ie,At,re,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:bg,[h]:U},{endpoint:bg,[h]:U}]},{[S]:[de,ie,At,re,le,Ke],endpoint:bg,[h]:U},{[S]:[de,ie,Me,re,Ue],endpoint:{[$]:QT,[K]:He,[V]:ce},[h]:U},{[S]:[de,ie,Me,re,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:{[$]:QT,[K]:Fe,[V]:ce},[h]:U},{endpoint:pB,[h]:U}]},{[S]:[de,ie,Me,re,le,Ke],endpoint:pB,[h]:U}]},Zu]}]},{[S]:[Ie,ot,{[O]:ke,[N]:[{[O]:Re,[N]:[tq,"scheme"]},"http"]},{[O]:JT,[N]:[_n,Yt]},hg,ie,de,Me],[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:qB,[h]:j,rules:[mB]},Zu]}]},{[S]:[hg,{[O]:XB,[N]:IB,[Ye]:WB}],[h]:j,rules:[{[S]:[{[O]:Re,[N]:[ct,"resourceId[0]"],[Ye]:YB},{[O]:Ot,[N]:[{[O]:ke,[N]:[nq,nm]}]}],[h]:j,rules:[{[S]:[{[O]:ke,[N]:[Eg,Gg]}],[h]:j,rules:[{[S]:Rg,[h]:j,rules:[{[S]:DB,[h]:j,rules:[fB,yB,{[S]:Bg,[h]:j,rules:[gB,{[S]:FB,[h]:j,rules:[Pg,{[S]:qg,[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:LB,[h]:j,rules:[{[S]:Dg,[h]:j,rules:[{[S]:[{[O]:ke,[N]:[oq,nm]}],error:"Invalid ARN: Missing account id",[h]:H},{[S]:Mg,[h]:j,rules:[{[S]:jB,[h]:j,rules:[{[S]:Fa,endpoint:{[$]:ZT,[K]:vg,[V]:ce},[h]:U},{[S]:em,endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:vg,[V]:ce},[h]:U},{endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:vg,[V]:ce},[h]:U}]},hB]},wg]},xg]},kg]}]}]},_B]},{error:"Invalid ARN: bucket ARN is missing a region",[h]:H}]},CB]},{error:"Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`",[h]:H}]},{[S]:Rg,[h]:j,rules:[{[S]:DB,[h]:j,rules:[{[S]:Bg,[h]:j,rules:[{[S]:Rg,[h]:j,rules:[{[S]:Bg,[h]:j,rules:[gB,{[S]:FB,[h]:j,rules:[Pg,{[S]:qg,[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:[{[O]:ke,[N]:[rq,"{partitionResult#name}"]}],[h]:j,rules:[{[S]:Dg,[h]:j,rules:[{[S]:[{[O]:ke,[N]:[Eg,xo]}],[h]:j,rules:[{[S]:Mg,[h]:j,rules:[{[S]:jB,[h]:j,rules:[{[S]:Tg,error:"Access Points do not support S3 Accelerate",[h]:H},{[S]:[Pe,_e],endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:Ma,[V]:ce},[h]:U},{[S]:[Pe,de],endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:Ma,[V]:ce},[h]:U},{[S]:[ie,_e],endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:Ma,[V]:ce},[h]:U},{[S]:[ie,de,Ie,ot],endpoint:{[$]:ZT,[K]:Ma,[V]:ce},[h]:U},{[S]:[ie,de],endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:Ma,[V]:ce},[h]:U}]},hB]},wg]},{error:"Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}",[h]:H}]},xg]},kg]}]}]},_B]}]}]},{[S]:[{[O]:Cr,[N]:[$g,Yt]}],[h]:j,rules:[{[S]:MB,error:"S3 MRAP does not support dual-stack",[h]:H},{[S]:em,error:"S3 MRAP does not support FIPS",[h]:H},{[S]:Tg,error:"S3 MRAP does not support S3 Accelerate",[h]:H},{[S]:[{[O]:nt,[N]:[{[oe]:"DisableMultiRegionAccessPoints"},Yt]}],error:"Invalid configuration: Multi-Region Access Point ARNs are disabled.",[h]:H},{[S]:[{[O]:tm,[N]:Ig,[Ye]:eB}],[h]:j,rules:[{[S]:[{[O]:ke,[N]:[{[O]:Re,[N]:[{[oe]:eB},Ct]},{[O]:Re,[N]:[ct,"partition"]}]}],[h]:j,rules:[{endpoint:{[$]:"https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}",[K]:{[Cn]:[{[Sn]:Yt,name:"sigv4a",[bn]:xo,signingRegionSet:["*"]}]},[V]:ce},[h]:U}]},{error:"Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`",[h]:H}]}]},{error:"Invalid Access Point Name",[h]:H}]},CB]},{[S]:[{[O]:ke,[N]:[Eg,zg]}],[h]:j,rules:[{[S]:MB,error:"S3 Outposts does not support Dual-stack",[h]:H},{[S]:em,error:"S3 Outposts does not support FIPS",[h]:H},{[S]:Tg,error:"S3 Outposts does not support S3 Accelerate",[h]:H},{[S]:[{[O]:Jt,[N]:[{[O]:Re,[N]:[ct,"resourceId[4]"]}]}],error:"Invalid Arn: Outpost Access Point ARN contains sub resources",[h]:H},{[S]:[{[O]:Re,[N]:kee,[Ye]:Fg}],[h]:j,rules:[{[S]:RB,[h]:j,rules:[Pg,{[S]:qg,[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:LB,[h]:j,rules:[{[S]:Dg,[h]:j,rules:[{[S]:Mg,[h]:j,rules:[{[S]:[{[O]:Re,[N]:Aee,[Ye]:tB}],[h]:j,rules:[{[S]:[{[O]:Re,[N]:[ct,"resourceId[3]"],[Ye]:Hg}],[h]:j,rules:[{[S]:[{[O]:ke,[N]:[{[oe]:tB},JB]}],[h]:j,rules:[{[S]:Fa,endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}",[K]:SB,[V]:ce},[h]:U},{endpoint:{[$]:"https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}",[K]:SB,[V]:ce},[h]:U}]},{error:"Expected an outpost type `accesspoint`, found {outpostType}",[h]:H}]},{error:"Invalid ARN: expected an access point name",[h]:H}]},{error:"Invalid ARN: Expected a 4-component resource",[h]:H}]},wg]},xg]},kg]}]}]},{error:"Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`",[h]:H}]},{error:"Invalid ARN: The Outpost Id was not set",[h]:H}]},{error:"Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})",[h]:H}]},{error:"Invalid ARN: No ARN type specified",[h]:H}]},{[S]:[{[O]:Da,[N]:[_n,0,4,WT],[Ye]:nB},{[O]:ke,[N]:[{[oe]:nB},"arn:"]},{[O]:Ot,[N]:[{[O]:Jt,[N]:[bB]}]}],error:"Invalid ARN: `{Bucket}` was not a valid ARN",[h]:H},{[S]:[{[O]:nt,[N]:[wee,Yt]},bB],error:"Path-style addressing cannot be used with ARN buckets",[h]:H},{[S]:[{[O]:"uriEncode",[N]:IB,[Ye]:"uri_encoded_bucket"}],[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:[Me],[h]:j,rules:[{[S]:[_e,re,Pe,Ue],endpoint:{[$]:"https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:He,[V]:ce},[h]:U},{[S]:[_e,re,Pe,le,$e],[h]:j,rules:[{endpoint:EB,[h]:U}]},{[S]:[_e,re,Pe,le,Ke],endpoint:EB,[h]:U},{[S]:[de,re,Pe,Ue],endpoint:{[$]:"https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:He,[V]:ce},[h]:U},{[S]:[de,re,Pe,le,$e],[h]:j,rules:[{endpoint:PB,[h]:U}]},{[S]:[de,re,Pe,le,Ke],endpoint:PB,[h]:U},{[S]:[_e,re,ie,Ue],endpoint:{[$]:"https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}",[K]:He,[V]:ce},[h]:U},{[S]:[_e,re,ie,le,$e],[h]:j,rules:[{endpoint:vB,[h]:U}]},{[S]:[_e,re,ie,le,Ke],endpoint:vB,[h]:U},{[S]:[de,Ie,ot,ie,Ue],endpoint:{[$]:QB,[K]:He,[V]:ce},[h]:U},{[S]:[de,Ie,ot,ie,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:Ag,[h]:U},{endpoint:Ag,[h]:U}]},{[S]:[de,Ie,ot,ie,le,Ke],endpoint:Ag,[h]:U},{[S]:[de,re,ie,Ue],endpoint:{[$]:rB,[K]:He,[V]:ce},[h]:U},{[S]:[de,re,ie,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:{[$]:rB,[K]:Fe,[V]:ce},[h]:U},{endpoint:wB,[h]:U}]},{[S]:[de,re,ie,le,Ke],endpoint:wB,[h]:U}]},{error:"Path-style addressing cannot be used with S3 Accelerate",[h]:H}]}]}]},{[S]:[{[O]:Jt,[N]:[xB]},{[O]:nt,[N]:[xB,Yt]}],[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:UB,[h]:j,rules:[fB,yB,{[S]:Fa,endpoint:{[$]:Lg,[K]:Og,[V]:ce},[h]:U},{[S]:em,endpoint:{[$]:"https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}",[K]:Og,[V]:ce},[h]:U},{endpoint:{[$]:"https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}",[K]:Og,[V]:ce},[h]:U}]},Zu]}]},{[S]:[{[O]:Ot,[N]:BB}],[h]:j,rules:[{[S]:Xn,[h]:j,rules:[{[S]:UB,[h]:j,rules:[{[S]:[Pe,_e,re,Ue],endpoint:{[$]:"https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[Pe,_e,re,le,$e],[h]:j,rules:[{endpoint:kB,[h]:U}]},{[S]:[Pe,_e,re,le,Ke],endpoint:kB,[h]:U},{[S]:[Pe,de,re,Ue],endpoint:{[$]:"https://s3-fips.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[Pe,de,re,le,$e],[h]:j,rules:[{endpoint:AB,[h]:U}]},{[S]:[Pe,de,re,le,Ke],endpoint:AB,[h]:U},{[S]:[ie,_e,re,Ue],endpoint:{[$]:"https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}",[K]:He,[V]:ce},[h]:U},{[S]:[ie,_e,re,le,$e],[h]:j,rules:[{endpoint:OB,[h]:U}]},{[S]:[ie,_e,re,le,Ke],endpoint:OB,[h]:U},{[S]:[ie,de,Ie,ot,Ue],endpoint:{[$]:Lg,[K]:He,[V]:ce},[h]:U},{[S]:[ie,de,Ie,ot,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:Ng,[h]:U},{endpoint:Ng,[h]:U}]},{[S]:[ie,de,Ie,ot,le,Ke],endpoint:Ng,[h]:U},{[S]:[ie,de,re,Ue],endpoint:{[$]:oB,[K]:He,[V]:ce},[h]:U},{[S]:[ie,de,re,le,$e],[h]:j,rules:[{[S]:Wn,endpoint:{[$]:oB,[K]:Fe,[V]:ce},[h]:U},{endpoint:NB,[h]:U}]},{[S]:[ie,de,re,le,Ke],endpoint:NB,[h]:U}]},Zu]}]}]},{error:"A region must be set when sending requests to S3.",[h]:H}]};rm.ruleSet=Oee});var iq=m(om=>{"use strict";Object.defineProperty(om,"__esModule",{value:!0});om.defaultEndpointResolver=void 0;var Nee=Fr(),Iee=sq(),Ree=(e,t={})=>(0,Nee.resolveEndpoint)(Iee.ruleSet,{endpointParams:e,logger:t.logger});om.defaultEndpointResolver=Ree});var lq=m(sm=>{"use strict";Object.defineProperty(sm,"__esModule",{value:!0});sm.getRuntimeConfig=void 0;var Tee=XT(),Bee=b(),qee=lr(),aq=wr(),cq=op(),dq=st(),Dee=iq(),Mee=e=>({apiVersion:"2006-03-01",base64Decoder:(e==null?void 0:e.base64Decoder)??aq.fromBase64,base64Encoder:(e==null?void 0:e.base64Encoder)??aq.toBase64,disableHostPrefix:(e==null?void 0:e.disableHostPrefix)??!1,endpointProvider:(e==null?void 0:e.endpointProvider)??Dee.defaultEndpointResolver,extensions:(e==null?void 0:e.extensions)??[],getAwsChunkedEncodingStream:(e==null?void 0:e.getAwsChunkedEncodingStream)??cq.getAwsChunkedEncodingStream,logger:(e==null?void 0:e.logger)??new Bee.NoOpLogger,sdkStreamMixin:(e==null?void 0:e.sdkStreamMixin)??cq.sdkStreamMixin,serviceId:(e==null?void 0:e.serviceId)??"S3",signerConstructor:(e==null?void 0:e.signerConstructor)??Tee.SignatureV4MultiRegion,signingEscapePath:(e==null?void 0:e.signingEscapePath)??!1,urlParser:(e==null?void 0:e.urlParser)??qee.parseUrl,useArnRegion:(e==null?void 0:e.useArnRegion)??!1,utf8Decoder:(e==null?void 0:e.utf8Decoder)??dq.fromUtf8,utf8Encoder:(e==null?void 0:e.utf8Encoder)??dq.toUtf8});sm.getRuntimeConfig=Mee});var pq=m(am=>{"use strict";Object.defineProperty(am,"__esModule",{value:!0});am.getRuntimeConfig=void 0;var Fee=(ne(),J(te)),Lee=Fee.__importDefault(Nk()),jee=zR(),Uee=Fy(),zee=JR(),Gee=ua(),im=Dt(),Hee=LT(),Kg=ma(),$ee=HT(),uq=on(),ko=rn(),mq=xr(),Kee=pa(),Vee=jr(),Xee=lq(),Wee=b(),Yee=ga(),Jee=b(),Qee=e=>{(0,Jee.emitWarningIfUnsupportedVersion)(process.version);let t=(0,Yee.resolveDefaultsModeConfig)(e),n=()=>t().then(Wee.loadConfigsForDefaultMode),r=(0,Xee.getRuntimeConfig)(e);return{...r,...e,runtime:"node",defaultsMode:t,bodyLengthChecker:(e==null?void 0:e.bodyLengthChecker)??Kee.calculateBodyLength,credentialDefaultProvider:(e==null?void 0:e.credentialDefaultProvider)??(0,jee.decorateDefaultCredentialProvider)(Uee.defaultProvider),defaultUserAgentProvider:(e==null?void 0:e.defaultUserAgentProvider)??(0,Gee.defaultUserAgent)({serviceId:r.serviceId,clientVersion:Lee.default.version}),eventStreamSerdeProvider:(e==null?void 0:e.eventStreamSerdeProvider)??Hee.eventStreamSerdeProvider,maxAttempts:(e==null?void 0:e.maxAttempts)??(0,ko.loadConfig)(uq.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),md5:(e==null?void 0:e.md5)??Kg.Hash.bind(null,"md5"),region:(e==null?void 0:e.region)??(0,ko.loadConfig)(im.NODE_REGION_CONFIG_OPTIONS,im.NODE_REGION_CONFIG_FILE_OPTIONS),requestHandler:(e==null?void 0:e.requestHandler)??new mq.NodeHttpHandler(n),retryMode:(e==null?void 0:e.retryMode)??(0,ko.loadConfig)({...uq.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await n()).retryMode||Vee.DEFAULT_RETRY_MODE}),sha1:(e==null?void 0:e.sha1)??Kg.Hash.bind(null,"sha1"),sha256:(e==null?void 0:e.sha256)??Kg.Hash.bind(null,"sha256"),streamCollector:(e==null?void 0:e.streamCollector)??mq.streamCollector,streamHasher:(e==null?void 0:e.streamHasher)??$ee.readableStreamHasher,useArnRegion:(e==null?void 0:e.useArnRegion)??(0,ko.loadConfig)(zee.NODE_USE_ARN_REGION_CONFIG_OPTIONS),useDualstackEndpoint:(e==null?void 0:e.useDualstackEndpoint)??(0,ko.loadConfig)(im.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),useFipsEndpoint:(e==null?void 0:e.useFipsEndpoint)??(0,ko.loadConfig)(im.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)}};am.getRuntimeConfig=Qee});var hq=m(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.resolveRuntimeExtensions=void 0;var fq=Ol(),yq=Ne(),gq=b(),Vg=e=>e,Zee=(e,t)=>{let n={...Vg((0,fq.getAwsRegionExtensionConfiguration)(e)),...Vg((0,gq.getDefaultExtensionConfiguration)(e)),...Vg((0,yq.getHttpHandlerExtensionConfiguration)(e))};return t.forEach(r=>r.configure(n)),{...e,...(0,fq.resolveAwsRegionExtensionConfiguration)(n),...(0,gq.resolveDefaultRuntimeConfig)(n),...(0,yq.resolveHttpHandlerRuntimeConfig)(n)}};cm.resolveRuntimeExtensions=Zee});var La=m(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.S3Client=Ao.__Client=void 0;var ete=Bb(),_q=Ii(),tte=Ri(),nte=Ti(),Cq=Ir(),Sq=nn(),bq=Wi(),rte=Dt(),ote=Rw(),ste=Yi(),ite=x(),Eq=on(),Pq=b();Object.defineProperty(Ao,"__Client",{enumerable:!0,get:function(){return Pq.Client}});var ate=Ok(),cte=pq(),dte=hq(),Xg=class extends Pq.Client{constructor(...[t]){let n=(0,cte.getRuntimeConfig)(t||{}),r=(0,ate.resolveClientEndpointParameters)(n),o=(0,rte.resolveRegionConfig)(r),s=(0,ite.resolveEndpointConfig)(o),a=(0,Eq.resolveRetryConfig)(s),i=(0,_q.resolveHostHeaderConfig)(a),u=(0,Sq.resolveAwsAuthConfig)(i),l=(0,Cq.resolveS3Config)(u),c=(0,bq.resolveUserAgentConfig)(l),y=(0,ote.resolveEventStreamSerdeConfig)(c),g=(0,dte.resolveRuntimeExtensions)(y,(t==null?void 0:t.extensions)||[]);super(g),this.config=g,this.middlewareStack.use((0,Eq.getRetryPlugin)(this.config)),this.middlewareStack.use((0,ste.getContentLengthPlugin)(this.config)),this.middlewareStack.use((0,_q.getHostHeaderPlugin)(this.config)),this.middlewareStack.use((0,tte.getLoggerPlugin)(this.config)),this.middlewareStack.use((0,nte.getRecursionDetectionPlugin)(this.config)),this.middlewareStack.use((0,Sq.getAwsAuthPlugin)(this.config)),this.middlewareStack.use((0,Cq.getValidateBucketNamePlugin)(this.config)),this.middlewareStack.use((0,ete.getAddExpectContinuePlugin)(this.config)),this.middlewareStack.use((0,bq.getUserAgentPlugin)(this.config))}destroy(){super.destroy()}};Ao.S3Client=Xg});var vq=m(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});dm.escapeAttribute=void 0;function lte(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""")}dm.escapeAttribute=lte});var wq=m(lm=>{"use strict";Object.defineProperty(lm,"__esModule",{value:!0});lm.escapeElement=void 0;function ute(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\r/g," ").replace(/\n/g," ").replace(/\u0085/g,"…").replace(/\u2028/,"
")}lm.escapeElement=ute});var Yg=m(um=>{"use strict";Object.defineProperty(um,"__esModule",{value:!0});um.XmlText=void 0;var mte=wq(),Wg=class{constructor(t){this.value=t}toString(){return(0,mte.escapeElement)(""+this.value)}};um.XmlText=Wg});var xq=m(mm=>{"use strict";Object.defineProperty(mm,"__esModule",{value:!0});mm.XmlNode=void 0;var pte=vq(),fte=Yg(),Jg=class e{static of(t,n,r){let o=new e(t);return n!==void 0&&o.addChildNode(new fte.XmlText(n)),r!==void 0&&o.withName(r),o}constructor(t,n=[]){this.name=t,this.children=n,this.attributes={}}withName(t){return this.name=t,this}addAttribute(t,n){return this.attributes[t]=n,this}addChildNode(t){return this.children.push(t),this}removeAttribute(t){return delete this.attributes[t],this}toString(){let t=!!this.children.length,n=`<${this.name}`,r=this.attributes;for(let o of Object.keys(r)){let s=r[o];typeof s<"u"&&s!==null&&(n+=` ${o}="${(0,pte.escapeAttribute)(""+s)}"`)}return n+=t?`>${this.children.map(o=>o.toString()).join("")}`:"/>"}};mm.XmlNode=Jg});var Aq=m(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});var kq=(ne(),J(te));kq.__exportStar(xq(),pm);kq.__exportStar(Yg(),pm)});var ja=m(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.S3ServiceException=Oo.__ServiceException=void 0;var Oq=b();Object.defineProperty(Oo,"__ServiceException",{enumerable:!0,get:function(){return Oq.ServiceException}});var Qg=class e extends Oq.ServiceException{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};Oo.S3ServiceException=Qg});var Je=m(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.ReplicationStatus=_.Protocol=_.BucketVersioningStatus=_.MFADeleteStatus=_.Payer=_.ReplicationRuleStatus=_.SseKmsEncryptedObjectsStatus=_.ReplicaModificationsStatus=_.ReplicationRuleFilter=_.ExistingObjectReplicationStatus=_.ReplicationTimeStatus=_.MetricsStatus=_.DeleteMarkerReplicationStatus=_.FilterRuleName=_.Event=_.MetricsFilter=_.BucketLogsPermission=_.ExpirationStatus=_.TransitionStorageClass=_.LifecycleRuleFilter=_.InventoryFrequency=_.InventoryOptionalField=_.InventoryIncludedObjectVersions=_.InventoryFormat=_.IntelligentTieringAccessTier=_.IntelligentTieringStatus=_.StorageClassAnalysisSchemaVersion=_.AnalyticsS3ExportFileFormat=_.AnalyticsFilter=_.ObjectOwnership=_.BucketLocationConstraint=_.BucketCannedACL=_.BucketAlreadyOwnedByYou=_.BucketAlreadyExists=_.ObjectNotInActiveTierError=_.TaggingDirective=_.StorageClass=_.ObjectLockMode=_.ObjectLockLegalHoldStatus=_.MetadataDirective=_.ChecksumAlgorithm=_.ObjectCannedACL=_.ServerSideEncryption=_.OwnerOverride=_.Permission=_.Type=_.BucketAccelerateStatus=_.NoSuchUpload=_.RequestPayer=_.RequestCharged=void 0;_.PutObjectRequestFilterSensitiveLog=_.PutObjectOutputFilterSensitiveLog=_.PutBucketInventoryConfigurationRequestFilterSensitiveLog=_.PutBucketEncryptionRequestFilterSensitiveLog=_.ListPartsRequestFilterSensitiveLog=_.ListBucketInventoryConfigurationsOutputFilterSensitiveLog=_.HeadObjectRequestFilterSensitiveLog=_.HeadObjectOutputFilterSensitiveLog=_.GetObjectTorrentOutputFilterSensitiveLog=_.GetObjectAttributesRequestFilterSensitiveLog=_.GetObjectRequestFilterSensitiveLog=_.GetObjectOutputFilterSensitiveLog=_.GetBucketInventoryConfigurationOutputFilterSensitiveLog=_.InventoryConfigurationFilterSensitiveLog=_.InventoryDestinationFilterSensitiveLog=_.InventoryS3BucketDestinationFilterSensitiveLog=_.InventoryEncryptionFilterSensitiveLog=_.SSEKMSFilterSensitiveLog=_.GetBucketEncryptionOutputFilterSensitiveLog=_.ServerSideEncryptionConfigurationFilterSensitiveLog=_.ServerSideEncryptionRuleFilterSensitiveLog=_.ServerSideEncryptionByDefaultFilterSensitiveLog=_.CreateMultipartUploadRequestFilterSensitiveLog=_.CreateMultipartUploadOutputFilterSensitiveLog=_.CopyObjectRequestFilterSensitiveLog=_.CopyObjectOutputFilterSensitiveLog=_.CompleteMultipartUploadRequestFilterSensitiveLog=_.CompleteMultipartUploadOutputFilterSensitiveLog=_.MFADelete=_.ObjectVersionStorageClass=_.NoSuchBucket=_.OptionalObjectAttributes=_.ObjectStorageClass=_.EncodingType=_.ArchiveStatus=_.NotFound=_.ObjectLockRetentionMode=_.ObjectLockEnabled=_.ObjectAttributes=_.NoSuchKey=_.InvalidObjectState=_.ChecksumMode=void 0;var Ce=b(),Jn=ja();_.RequestCharged={requester:"requester"};_.RequestPayer={requester:"requester"};var Zg=class e extends Jn.S3ServiceException{constructor(t){super({name:"NoSuchUpload",$fault:"client",...t}),this.name="NoSuchUpload",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.NoSuchUpload=Zg;_.BucketAccelerateStatus={Enabled:"Enabled",Suspended:"Suspended"};_.Type={AmazonCustomerByEmail:"AmazonCustomerByEmail",CanonicalUser:"CanonicalUser",Group:"Group"};_.Permission={FULL_CONTROL:"FULL_CONTROL",READ:"READ",READ_ACP:"READ_ACP",WRITE:"WRITE",WRITE_ACP:"WRITE_ACP"};_.OwnerOverride={Destination:"Destination"};_.ServerSideEncryption={AES256:"AES256",aws_kms:"aws:kms",aws_kms_dsse:"aws:kms:dsse"};_.ObjectCannedACL={authenticated_read:"authenticated-read",aws_exec_read:"aws-exec-read",bucket_owner_full_control:"bucket-owner-full-control",bucket_owner_read:"bucket-owner-read",private:"private",public_read:"public-read",public_read_write:"public-read-write"};_.ChecksumAlgorithm={CRC32:"CRC32",CRC32C:"CRC32C",SHA1:"SHA1",SHA256:"SHA256"};_.MetadataDirective={COPY:"COPY",REPLACE:"REPLACE"};_.ObjectLockLegalHoldStatus={OFF:"OFF",ON:"ON"};_.ObjectLockMode={COMPLIANCE:"COMPLIANCE",GOVERNANCE:"GOVERNANCE"};_.StorageClass={DEEP_ARCHIVE:"DEEP_ARCHIVE",GLACIER:"GLACIER",GLACIER_IR:"GLACIER_IR",INTELLIGENT_TIERING:"INTELLIGENT_TIERING",ONEZONE_IA:"ONEZONE_IA",OUTPOSTS:"OUTPOSTS",REDUCED_REDUNDANCY:"REDUCED_REDUNDANCY",SNOW:"SNOW",STANDARD:"STANDARD",STANDARD_IA:"STANDARD_IA"};_.TaggingDirective={COPY:"COPY",REPLACE:"REPLACE"};var eh=class e extends Jn.S3ServiceException{constructor(t){super({name:"ObjectNotInActiveTierError",$fault:"client",...t}),this.name="ObjectNotInActiveTierError",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.ObjectNotInActiveTierError=eh;var th=class e extends Jn.S3ServiceException{constructor(t){super({name:"BucketAlreadyExists",$fault:"client",...t}),this.name="BucketAlreadyExists",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.BucketAlreadyExists=th;var nh=class e extends Jn.S3ServiceException{constructor(t){super({name:"BucketAlreadyOwnedByYou",$fault:"client",...t}),this.name="BucketAlreadyOwnedByYou",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.BucketAlreadyOwnedByYou=nh;_.BucketCannedACL={authenticated_read:"authenticated-read",private:"private",public_read:"public-read",public_read_write:"public-read-write"};_.BucketLocationConstraint={EU:"EU",af_south_1:"af-south-1",ap_east_1:"ap-east-1",ap_northeast_1:"ap-northeast-1",ap_northeast_2:"ap-northeast-2",ap_northeast_3:"ap-northeast-3",ap_south_1:"ap-south-1",ap_south_2:"ap-south-2",ap_southeast_1:"ap-southeast-1",ap_southeast_2:"ap-southeast-2",ap_southeast_3:"ap-southeast-3",ca_central_1:"ca-central-1",cn_north_1:"cn-north-1",cn_northwest_1:"cn-northwest-1",eu_central_1:"eu-central-1",eu_north_1:"eu-north-1",eu_south_1:"eu-south-1",eu_south_2:"eu-south-2",eu_west_1:"eu-west-1",eu_west_2:"eu-west-2",eu_west_3:"eu-west-3",me_south_1:"me-south-1",sa_east_1:"sa-east-1",us_east_2:"us-east-2",us_gov_east_1:"us-gov-east-1",us_gov_west_1:"us-gov-west-1",us_west_1:"us-west-1",us_west_2:"us-west-2"};_.ObjectOwnership={BucketOwnerEnforced:"BucketOwnerEnforced",BucketOwnerPreferred:"BucketOwnerPreferred",ObjectWriter:"ObjectWriter"};var yte;(function(e){e.visit=(t,n)=>t.Prefix!==void 0?n.Prefix(t.Prefix):t.Tag!==void 0?n.Tag(t.Tag):t.And!==void 0?n.And(t.And):n._(t.$unknown[0],t.$unknown[1])})(yte=_.AnalyticsFilter||(_.AnalyticsFilter={}));_.AnalyticsS3ExportFileFormat={CSV:"CSV"};_.StorageClassAnalysisSchemaVersion={V_1:"V_1"};_.IntelligentTieringStatus={Disabled:"Disabled",Enabled:"Enabled"};_.IntelligentTieringAccessTier={ARCHIVE_ACCESS:"ARCHIVE_ACCESS",DEEP_ARCHIVE_ACCESS:"DEEP_ARCHIVE_ACCESS"};_.InventoryFormat={CSV:"CSV",ORC:"ORC",Parquet:"Parquet"};_.InventoryIncludedObjectVersions={All:"All",Current:"Current"};_.InventoryOptionalField={BucketKeyStatus:"BucketKeyStatus",ChecksumAlgorithm:"ChecksumAlgorithm",ETag:"ETag",EncryptionStatus:"EncryptionStatus",IntelligentTieringAccessTier:"IntelligentTieringAccessTier",IsMultipartUploaded:"IsMultipartUploaded",LastModifiedDate:"LastModifiedDate",ObjectAccessControlList:"ObjectAccessControlList",ObjectLockLegalHoldStatus:"ObjectLockLegalHoldStatus",ObjectLockMode:"ObjectLockMode",ObjectLockRetainUntilDate:"ObjectLockRetainUntilDate",ObjectOwner:"ObjectOwner",ReplicationStatus:"ReplicationStatus",Size:"Size",StorageClass:"StorageClass"};_.InventoryFrequency={Daily:"Daily",Weekly:"Weekly"};var gte;(function(e){e.visit=(t,n)=>t.Prefix!==void 0?n.Prefix(t.Prefix):t.Tag!==void 0?n.Tag(t.Tag):t.ObjectSizeGreaterThan!==void 0?n.ObjectSizeGreaterThan(t.ObjectSizeGreaterThan):t.ObjectSizeLessThan!==void 0?n.ObjectSizeLessThan(t.ObjectSizeLessThan):t.And!==void 0?n.And(t.And):n._(t.$unknown[0],t.$unknown[1])})(gte=_.LifecycleRuleFilter||(_.LifecycleRuleFilter={}));_.TransitionStorageClass={DEEP_ARCHIVE:"DEEP_ARCHIVE",GLACIER:"GLACIER",GLACIER_IR:"GLACIER_IR",INTELLIGENT_TIERING:"INTELLIGENT_TIERING",ONEZONE_IA:"ONEZONE_IA",STANDARD_IA:"STANDARD_IA"};_.ExpirationStatus={Disabled:"Disabled",Enabled:"Enabled"};_.BucketLogsPermission={FULL_CONTROL:"FULL_CONTROL",READ:"READ",WRITE:"WRITE"};var hte;(function(e){e.visit=(t,n)=>t.Prefix!==void 0?n.Prefix(t.Prefix):t.Tag!==void 0?n.Tag(t.Tag):t.AccessPointArn!==void 0?n.AccessPointArn(t.AccessPointArn):t.And!==void 0?n.And(t.And):n._(t.$unknown[0],t.$unknown[1])})(hte=_.MetricsFilter||(_.MetricsFilter={}));_.Event={s3_IntelligentTiering:"s3:IntelligentTiering",s3_LifecycleExpiration_:"s3:LifecycleExpiration:*",s3_LifecycleExpiration_Delete:"s3:LifecycleExpiration:Delete",s3_LifecycleExpiration_DeleteMarkerCreated:"s3:LifecycleExpiration:DeleteMarkerCreated",s3_LifecycleTransition:"s3:LifecycleTransition",s3_ObjectAcl_Put:"s3:ObjectAcl:Put",s3_ObjectCreated_:"s3:ObjectCreated:*",s3_ObjectCreated_CompleteMultipartUpload:"s3:ObjectCreated:CompleteMultipartUpload",s3_ObjectCreated_Copy:"s3:ObjectCreated:Copy",s3_ObjectCreated_Post:"s3:ObjectCreated:Post",s3_ObjectCreated_Put:"s3:ObjectCreated:Put",s3_ObjectRemoved_:"s3:ObjectRemoved:*",s3_ObjectRemoved_Delete:"s3:ObjectRemoved:Delete",s3_ObjectRemoved_DeleteMarkerCreated:"s3:ObjectRemoved:DeleteMarkerCreated",s3_ObjectRestore_:"s3:ObjectRestore:*",s3_ObjectRestore_Completed:"s3:ObjectRestore:Completed",s3_ObjectRestore_Delete:"s3:ObjectRestore:Delete",s3_ObjectRestore_Post:"s3:ObjectRestore:Post",s3_ObjectTagging_:"s3:ObjectTagging:*",s3_ObjectTagging_Delete:"s3:ObjectTagging:Delete",s3_ObjectTagging_Put:"s3:ObjectTagging:Put",s3_ReducedRedundancyLostObject:"s3:ReducedRedundancyLostObject",s3_Replication_:"s3:Replication:*",s3_Replication_OperationFailedReplication:"s3:Replication:OperationFailedReplication",s3_Replication_OperationMissedThreshold:"s3:Replication:OperationMissedThreshold",s3_Replication_OperationNotTracked:"s3:Replication:OperationNotTracked",s3_Replication_OperationReplicatedAfterThreshold:"s3:Replication:OperationReplicatedAfterThreshold"};_.FilterRuleName={prefix:"prefix",suffix:"suffix"};_.DeleteMarkerReplicationStatus={Disabled:"Disabled",Enabled:"Enabled"};_.MetricsStatus={Disabled:"Disabled",Enabled:"Enabled"};_.ReplicationTimeStatus={Disabled:"Disabled",Enabled:"Enabled"};_.ExistingObjectReplicationStatus={Disabled:"Disabled",Enabled:"Enabled"};var _te;(function(e){e.visit=(t,n)=>t.Prefix!==void 0?n.Prefix(t.Prefix):t.Tag!==void 0?n.Tag(t.Tag):t.And!==void 0?n.And(t.And):n._(t.$unknown[0],t.$unknown[1])})(_te=_.ReplicationRuleFilter||(_.ReplicationRuleFilter={}));_.ReplicaModificationsStatus={Disabled:"Disabled",Enabled:"Enabled"};_.SseKmsEncryptedObjectsStatus={Disabled:"Disabled",Enabled:"Enabled"};_.ReplicationRuleStatus={Disabled:"Disabled",Enabled:"Enabled"};_.Payer={BucketOwner:"BucketOwner",Requester:"Requester"};_.MFADeleteStatus={Disabled:"Disabled",Enabled:"Enabled"};_.BucketVersioningStatus={Enabled:"Enabled",Suspended:"Suspended"};_.Protocol={http:"http",https:"https"};_.ReplicationStatus={COMPLETE:"COMPLETE",COMPLETED:"COMPLETED",FAILED:"FAILED",PENDING:"PENDING",REPLICA:"REPLICA"};_.ChecksumMode={ENABLED:"ENABLED"};var rh=class e extends Jn.S3ServiceException{constructor(t){super({name:"InvalidObjectState",$fault:"client",...t}),this.name="InvalidObjectState",this.$fault="client",Object.setPrototypeOf(this,e.prototype),this.StorageClass=t.StorageClass,this.AccessTier=t.AccessTier}};_.InvalidObjectState=rh;var oh=class e extends Jn.S3ServiceException{constructor(t){super({name:"NoSuchKey",$fault:"client",...t}),this.name="NoSuchKey",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.NoSuchKey=oh;_.ObjectAttributes={CHECKSUM:"Checksum",ETAG:"ETag",OBJECT_PARTS:"ObjectParts",OBJECT_SIZE:"ObjectSize",STORAGE_CLASS:"StorageClass"};_.ObjectLockEnabled={Enabled:"Enabled"};_.ObjectLockRetentionMode={COMPLIANCE:"COMPLIANCE",GOVERNANCE:"GOVERNANCE"};var sh=class e extends Jn.S3ServiceException{constructor(t){super({name:"NotFound",$fault:"client",...t}),this.name="NotFound",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.NotFound=sh;_.ArchiveStatus={ARCHIVE_ACCESS:"ARCHIVE_ACCESS",DEEP_ARCHIVE_ACCESS:"DEEP_ARCHIVE_ACCESS"};_.EncodingType={url:"url"};_.ObjectStorageClass={DEEP_ARCHIVE:"DEEP_ARCHIVE",GLACIER:"GLACIER",GLACIER_IR:"GLACIER_IR",INTELLIGENT_TIERING:"INTELLIGENT_TIERING",ONEZONE_IA:"ONEZONE_IA",OUTPOSTS:"OUTPOSTS",REDUCED_REDUNDANCY:"REDUCED_REDUNDANCY",SNOW:"SNOW",STANDARD:"STANDARD",STANDARD_IA:"STANDARD_IA"};_.OptionalObjectAttributes={RESTORE_STATUS:"RestoreStatus"};var ih=class e extends Jn.S3ServiceException{constructor(t){super({name:"NoSuchBucket",$fault:"client",...t}),this.name="NoSuchBucket",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};_.NoSuchBucket=ih;_.ObjectVersionStorageClass={STANDARD:"STANDARD"};_.MFADelete={Disabled:"Disabled",Enabled:"Enabled"};var Cte=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING}});_.CompleteMultipartUploadOutputFilterSensitiveLog=Cte;var Ste=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING}});_.CompleteMultipartUploadRequestFilterSensitiveLog=Ste;var bte=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING}});_.CopyObjectOutputFilterSensitiveLog=bte;var Ete=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING},...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING},...e.CopySourceSSECustomerKey&&{CopySourceSSECustomerKey:Ce.SENSITIVE_STRING}});_.CopyObjectRequestFilterSensitiveLog=Ete;var Pte=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING}});_.CreateMultipartUploadOutputFilterSensitiveLog=Pte;var vte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING},...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING}});_.CreateMultipartUploadRequestFilterSensitiveLog=vte;var wte=e=>({...e,...e.KMSMasterKeyID&&{KMSMasterKeyID:Ce.SENSITIVE_STRING}});_.ServerSideEncryptionByDefaultFilterSensitiveLog=wte;var xte=e=>({...e,...e.ApplyServerSideEncryptionByDefault&&{ApplyServerSideEncryptionByDefault:(0,_.ServerSideEncryptionByDefaultFilterSensitiveLog)(e.ApplyServerSideEncryptionByDefault)}});_.ServerSideEncryptionRuleFilterSensitiveLog=xte;var kte=e=>({...e,...e.Rules&&{Rules:e.Rules.map(t=>(0,_.ServerSideEncryptionRuleFilterSensitiveLog)(t))}});_.ServerSideEncryptionConfigurationFilterSensitiveLog=kte;var Ate=e=>({...e,...e.ServerSideEncryptionConfiguration&&{ServerSideEncryptionConfiguration:(0,_.ServerSideEncryptionConfigurationFilterSensitiveLog)(e.ServerSideEncryptionConfiguration)}});_.GetBucketEncryptionOutputFilterSensitiveLog=Ate;var Ote=e=>({...e,...e.KeyId&&{KeyId:Ce.SENSITIVE_STRING}});_.SSEKMSFilterSensitiveLog=Ote;var Nte=e=>({...e,...e.SSEKMS&&{SSEKMS:(0,_.SSEKMSFilterSensitiveLog)(e.SSEKMS)}});_.InventoryEncryptionFilterSensitiveLog=Nte;var Ite=e=>({...e,...e.Encryption&&{Encryption:(0,_.InventoryEncryptionFilterSensitiveLog)(e.Encryption)}});_.InventoryS3BucketDestinationFilterSensitiveLog=Ite;var Rte=e=>({...e,...e.S3BucketDestination&&{S3BucketDestination:(0,_.InventoryS3BucketDestinationFilterSensitiveLog)(e.S3BucketDestination)}});_.InventoryDestinationFilterSensitiveLog=Rte;var Tte=e=>({...e,...e.Destination&&{Destination:(0,_.InventoryDestinationFilterSensitiveLog)(e.Destination)}});_.InventoryConfigurationFilterSensitiveLog=Tte;var Bte=e=>({...e,...e.InventoryConfiguration&&{InventoryConfiguration:(0,_.InventoryConfigurationFilterSensitiveLog)(e.InventoryConfiguration)}});_.GetBucketInventoryConfigurationOutputFilterSensitiveLog=Bte;var qte=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING}});_.GetObjectOutputFilterSensitiveLog=qte;var Dte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING}});_.GetObjectRequestFilterSensitiveLog=Dte;var Mte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING}});_.GetObjectAttributesRequestFilterSensitiveLog=Mte;var Fte=e=>({...e});_.GetObjectTorrentOutputFilterSensitiveLog=Fte;var Lte=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING}});_.HeadObjectOutputFilterSensitiveLog=Lte;var jte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING}});_.HeadObjectRequestFilterSensitiveLog=jte;var Ute=e=>({...e,...e.InventoryConfigurationList&&{InventoryConfigurationList:e.InventoryConfigurationList.map(t=>(0,_.InventoryConfigurationFilterSensitiveLog)(t))}});_.ListBucketInventoryConfigurationsOutputFilterSensitiveLog=Ute;var zte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING}});_.ListPartsRequestFilterSensitiveLog=zte;var Gte=e=>({...e,...e.ServerSideEncryptionConfiguration&&{ServerSideEncryptionConfiguration:(0,_.ServerSideEncryptionConfigurationFilterSensitiveLog)(e.ServerSideEncryptionConfiguration)}});_.PutBucketEncryptionRequestFilterSensitiveLog=Gte;var Hte=e=>({...e,...e.InventoryConfiguration&&{InventoryConfiguration:(0,_.InventoryConfigurationFilterSensitiveLog)(e.InventoryConfiguration)}});_.PutBucketInventoryConfigurationRequestFilterSensitiveLog=Hte;var $te=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING}});_.PutObjectOutputFilterSensitiveLog=$te;var Kte=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Ce.SENSITIVE_STRING},...e.SSEKMSKeyId&&{SSEKMSKeyId:Ce.SENSITIVE_STRING},...e.SSEKMSEncryptionContext&&{SSEKMSEncryptionContext:Ce.SENSITIVE_STRING}});_.PutObjectRequestFilterSensitiveLog=Kte});var Zn=m(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.WriteGetObjectResponseRequestFilterSensitiveLog=X.UploadPartCopyRequestFilterSensitiveLog=X.UploadPartCopyOutputFilterSensitiveLog=X.UploadPartRequestFilterSensitiveLog=X.UploadPartOutputFilterSensitiveLog=X.SelectObjectContentRequestFilterSensitiveLog=X.SelectObjectContentOutputFilterSensitiveLog=X.SelectObjectContentEventStreamFilterSensitiveLog=X.RestoreObjectRequestFilterSensitiveLog=X.RestoreRequestFilterSensitiveLog=X.OutputLocationFilterSensitiveLog=X.S3LocationFilterSensitiveLog=X.EncryptionFilterSensitiveLog=X.SelectObjectContentEventStream=X.RestoreRequestType=X.QuoteFields=X.JSONType=X.FileHeaderInfo=X.CompressionType=X.ExpressionType=X.Tier=X.ObjectAlreadyInActiveTierError=void 0;var Qn=b(),Vte=ja(),ah=class e extends Vte.S3ServiceException{constructor(t){super({name:"ObjectAlreadyInActiveTierError",$fault:"client",...t}),this.name="ObjectAlreadyInActiveTierError",this.$fault="client",Object.setPrototypeOf(this,e.prototype)}};X.ObjectAlreadyInActiveTierError=ah;X.Tier={Bulk:"Bulk",Expedited:"Expedited",Standard:"Standard"};X.ExpressionType={SQL:"SQL"};X.CompressionType={BZIP2:"BZIP2",GZIP:"GZIP",NONE:"NONE"};X.FileHeaderInfo={IGNORE:"IGNORE",NONE:"NONE",USE:"USE"};X.JSONType={DOCUMENT:"DOCUMENT",LINES:"LINES"};X.QuoteFields={ALWAYS:"ALWAYS",ASNEEDED:"ASNEEDED"};X.RestoreRequestType={SELECT:"SELECT"};var Xte;(function(e){e.visit=(t,n)=>t.Records!==void 0?n.Records(t.Records):t.Stats!==void 0?n.Stats(t.Stats):t.Progress!==void 0?n.Progress(t.Progress):t.Cont!==void 0?n.Cont(t.Cont):t.End!==void 0?n.End(t.End):n._(t.$unknown[0],t.$unknown[1])})(Xte=X.SelectObjectContentEventStream||(X.SelectObjectContentEventStream={}));var Wte=e=>({...e,...e.KMSKeyId&&{KMSKeyId:Qn.SENSITIVE_STRING}});X.EncryptionFilterSensitiveLog=Wte;var Yte=e=>({...e,...e.Encryption&&{Encryption:(0,X.EncryptionFilterSensitiveLog)(e.Encryption)}});X.S3LocationFilterSensitiveLog=Yte;var Jte=e=>({...e,...e.S3&&{S3:(0,X.S3LocationFilterSensitiveLog)(e.S3)}});X.OutputLocationFilterSensitiveLog=Jte;var Qte=e=>({...e,...e.OutputLocation&&{OutputLocation:(0,X.OutputLocationFilterSensitiveLog)(e.OutputLocation)}});X.RestoreRequestFilterSensitiveLog=Qte;var Zte=e=>({...e,...e.RestoreRequest&&{RestoreRequest:(0,X.RestoreRequestFilterSensitiveLog)(e.RestoreRequest)}});X.RestoreObjectRequestFilterSensitiveLog=Zte;var ene=e=>{if(e.Records!==void 0)return{Records:e.Records};if(e.Stats!==void 0)return{Stats:e.Stats};if(e.Progress!==void 0)return{Progress:e.Progress};if(e.Cont!==void 0)return{Cont:e.Cont};if(e.End!==void 0)return{End:e.End};if(e.$unknown!==void 0)return{[e.$unknown[0]]:"UNKNOWN"}};X.SelectObjectContentEventStreamFilterSensitiveLog=ene;var tne=e=>({...e,...e.Payload&&{Payload:"STREAMING_CONTENT"}});X.SelectObjectContentOutputFilterSensitiveLog=tne;var nne=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Qn.SENSITIVE_STRING}});X.SelectObjectContentRequestFilterSensitiveLog=nne;var rne=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Qn.SENSITIVE_STRING}});X.UploadPartOutputFilterSensitiveLog=rne;var one=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Qn.SENSITIVE_STRING}});X.UploadPartRequestFilterSensitiveLog=one;var sne=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Qn.SENSITIVE_STRING}});X.UploadPartCopyOutputFilterSensitiveLog=sne;var ine=e=>({...e,...e.SSECustomerKey&&{SSECustomerKey:Qn.SENSITIVE_STRING},...e.CopySourceSSECustomerKey&&{CopySourceSSECustomerKey:Qn.SENSITIVE_STRING}});X.UploadPartCopyRequestFilterSensitiveLog=ine;var ane=e=>({...e,...e.SSEKMSKeyId&&{SSEKMSKeyId:Qn.SENSITIVE_STRING}});X.WriteGetObjectResponseRequestFilterSensitiveLog=ane});var q=m(p=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.se_GetObjectTorrentCommand=p.se_GetObjectTaggingCommand=p.se_GetObjectRetentionCommand=p.se_GetObjectLockConfigurationCommand=p.se_GetObjectLegalHoldCommand=p.se_GetObjectAttributesCommand=p.se_GetObjectAclCommand=p.se_GetObjectCommand=p.se_GetBucketWebsiteCommand=p.se_GetBucketVersioningCommand=p.se_GetBucketTaggingCommand=p.se_GetBucketRequestPaymentCommand=p.se_GetBucketReplicationCommand=p.se_GetBucketPolicyStatusCommand=p.se_GetBucketPolicyCommand=p.se_GetBucketOwnershipControlsCommand=p.se_GetBucketNotificationConfigurationCommand=p.se_GetBucketMetricsConfigurationCommand=p.se_GetBucketLoggingCommand=p.se_GetBucketLocationCommand=p.se_GetBucketLifecycleConfigurationCommand=p.se_GetBucketInventoryConfigurationCommand=p.se_GetBucketIntelligentTieringConfigurationCommand=p.se_GetBucketEncryptionCommand=p.se_GetBucketCorsCommand=p.se_GetBucketAnalyticsConfigurationCommand=p.se_GetBucketAclCommand=p.se_GetBucketAccelerateConfigurationCommand=p.se_DeletePublicAccessBlockCommand=p.se_DeleteObjectTaggingCommand=p.se_DeleteObjectsCommand=p.se_DeleteObjectCommand=p.se_DeleteBucketWebsiteCommand=p.se_DeleteBucketTaggingCommand=p.se_DeleteBucketReplicationCommand=p.se_DeleteBucketPolicyCommand=p.se_DeleteBucketOwnershipControlsCommand=p.se_DeleteBucketMetricsConfigurationCommand=p.se_DeleteBucketLifecycleCommand=p.se_DeleteBucketInventoryConfigurationCommand=p.se_DeleteBucketIntelligentTieringConfigurationCommand=p.se_DeleteBucketEncryptionCommand=p.se_DeleteBucketCorsCommand=p.se_DeleteBucketAnalyticsConfigurationCommand=p.se_DeleteBucketCommand=p.se_CreateMultipartUploadCommand=p.se_CreateBucketCommand=p.se_CopyObjectCommand=p.se_CompleteMultipartUploadCommand=p.se_AbortMultipartUploadCommand=void 0;p.de_DeleteBucketAnalyticsConfigurationCommand=p.de_DeleteBucketCommand=p.de_CreateMultipartUploadCommand=p.de_CreateBucketCommand=p.de_CopyObjectCommand=p.de_CompleteMultipartUploadCommand=p.de_AbortMultipartUploadCommand=p.se_WriteGetObjectResponseCommand=p.se_UploadPartCopyCommand=p.se_UploadPartCommand=p.se_SelectObjectContentCommand=p.se_RestoreObjectCommand=p.se_PutPublicAccessBlockCommand=p.se_PutObjectTaggingCommand=p.se_PutObjectRetentionCommand=p.se_PutObjectLockConfigurationCommand=p.se_PutObjectLegalHoldCommand=p.se_PutObjectAclCommand=p.se_PutObjectCommand=p.se_PutBucketWebsiteCommand=p.se_PutBucketVersioningCommand=p.se_PutBucketTaggingCommand=p.se_PutBucketRequestPaymentCommand=p.se_PutBucketReplicationCommand=p.se_PutBucketPolicyCommand=p.se_PutBucketOwnershipControlsCommand=p.se_PutBucketNotificationConfigurationCommand=p.se_PutBucketMetricsConfigurationCommand=p.se_PutBucketLoggingCommand=p.se_PutBucketLifecycleConfigurationCommand=p.se_PutBucketInventoryConfigurationCommand=p.se_PutBucketIntelligentTieringConfigurationCommand=p.se_PutBucketEncryptionCommand=p.se_PutBucketCorsCommand=p.se_PutBucketAnalyticsConfigurationCommand=p.se_PutBucketAclCommand=p.se_PutBucketAccelerateConfigurationCommand=p.se_ListPartsCommand=p.se_ListObjectVersionsCommand=p.se_ListObjectsV2Command=p.se_ListObjectsCommand=p.se_ListMultipartUploadsCommand=p.se_ListBucketsCommand=p.se_ListBucketMetricsConfigurationsCommand=p.se_ListBucketInventoryConfigurationsCommand=p.se_ListBucketIntelligentTieringConfigurationsCommand=p.se_ListBucketAnalyticsConfigurationsCommand=p.se_HeadObjectCommand=p.se_HeadBucketCommand=p.se_GetPublicAccessBlockCommand=void 0;p.de_ListBucketMetricsConfigurationsCommand=p.de_ListBucketInventoryConfigurationsCommand=p.de_ListBucketIntelligentTieringConfigurationsCommand=p.de_ListBucketAnalyticsConfigurationsCommand=p.de_HeadObjectCommand=p.de_HeadBucketCommand=p.de_GetPublicAccessBlockCommand=p.de_GetObjectTorrentCommand=p.de_GetObjectTaggingCommand=p.de_GetObjectRetentionCommand=p.de_GetObjectLockConfigurationCommand=p.de_GetObjectLegalHoldCommand=p.de_GetObjectAttributesCommand=p.de_GetObjectAclCommand=p.de_GetObjectCommand=p.de_GetBucketWebsiteCommand=p.de_GetBucketVersioningCommand=p.de_GetBucketTaggingCommand=p.de_GetBucketRequestPaymentCommand=p.de_GetBucketReplicationCommand=p.de_GetBucketPolicyStatusCommand=p.de_GetBucketPolicyCommand=p.de_GetBucketOwnershipControlsCommand=p.de_GetBucketNotificationConfigurationCommand=p.de_GetBucketMetricsConfigurationCommand=p.de_GetBucketLoggingCommand=p.de_GetBucketLocationCommand=p.de_GetBucketLifecycleConfigurationCommand=p.de_GetBucketInventoryConfigurationCommand=p.de_GetBucketIntelligentTieringConfigurationCommand=p.de_GetBucketEncryptionCommand=p.de_GetBucketCorsCommand=p.de_GetBucketAnalyticsConfigurationCommand=p.de_GetBucketAclCommand=p.de_GetBucketAccelerateConfigurationCommand=p.de_DeletePublicAccessBlockCommand=p.de_DeleteObjectTaggingCommand=p.de_DeleteObjectsCommand=p.de_DeleteObjectCommand=p.de_DeleteBucketWebsiteCommand=p.de_DeleteBucketTaggingCommand=p.de_DeleteBucketReplicationCommand=p.de_DeleteBucketPolicyCommand=p.de_DeleteBucketOwnershipControlsCommand=p.de_DeleteBucketMetricsConfigurationCommand=p.de_DeleteBucketLifecycleCommand=p.de_DeleteBucketInventoryConfigurationCommand=p.de_DeleteBucketIntelligentTieringConfigurationCommand=p.de_DeleteBucketEncryptionCommand=p.de_DeleteBucketCorsCommand=void 0;p.de_WriteGetObjectResponseCommand=p.de_UploadPartCopyCommand=p.de_UploadPartCommand=p.de_SelectObjectContentCommand=p.de_RestoreObjectCommand=p.de_PutPublicAccessBlockCommand=p.de_PutObjectTaggingCommand=p.de_PutObjectRetentionCommand=p.de_PutObjectLockConfigurationCommand=p.de_PutObjectLegalHoldCommand=p.de_PutObjectAclCommand=p.de_PutObjectCommand=p.de_PutBucketWebsiteCommand=p.de_PutBucketVersioningCommand=p.de_PutBucketTaggingCommand=p.de_PutBucketRequestPaymentCommand=p.de_PutBucketReplicationCommand=p.de_PutBucketPolicyCommand=p.de_PutBucketOwnershipControlsCommand=p.de_PutBucketNotificationConfigurationCommand=p.de_PutBucketMetricsConfigurationCommand=p.de_PutBucketLoggingCommand=p.de_PutBucketLifecycleConfigurationCommand=p.de_PutBucketInventoryConfigurationCommand=p.de_PutBucketIntelligentTieringConfigurationCommand=p.de_PutBucketEncryptionCommand=p.de_PutBucketCorsCommand=p.de_PutBucketAnalyticsConfigurationCommand=p.de_PutBucketAclCommand=p.de_PutBucketAccelerateConfigurationCommand=p.de_ListPartsCommand=p.de_ListObjectVersionsCommand=p.de_ListObjectsV2Command=p.de_ListObjectsCommand=p.de_ListMultipartUploadsCommand=p.de_ListBucketsCommand=void 0;var f=Aq(),B=Ne(),d=b(),cne=Bf(),St=Je(),dne=Zn(),lne=ja(),une=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"AbortMultipartUpload"],uploadId:[,(0,d.expectNonNull)(e.UploadId,"UploadId")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_AbortMultipartUploadCommand=une;var mne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-checksum-crc32":e.ChecksumCRC32,"x-amz-checksum-crc32c":e.ChecksumCRC32C,"x-amz-checksum-sha1":e.ChecksumSHA1,"x-amz-checksum-sha256":e.ChecksumSHA256,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"CompleteMultipartUpload"],uploadId:[,(0,d.expectNonNull)(e.UploadId,"UploadId")]}),l;e.MultipartUpload!==void 0&&(l=Bq(e.MultipartUpload,t));let c;return e.MultipartUpload!==void 0&&(c=Bq(e.MultipartUpload,t),c=c.withName("CompleteMultipartUpload"),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_CompleteMultipartUploadCommand=mne;var pne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-acl":e.ACL,"cache-control":e.CacheControl,"x-amz-checksum-algorithm":e.ChecksumAlgorithm,"content-disposition":e.ContentDisposition,"content-encoding":e.ContentEncoding,"content-language":e.ContentLanguage,"content-type":e.ContentType,"x-amz-copy-source":e.CopySource,"x-amz-copy-source-if-match":e.CopySourceIfMatch,"x-amz-copy-source-if-modified-since":[()=>E(e.CopySourceIfModifiedSince),()=>(0,d.dateToUtcString)(e.CopySourceIfModifiedSince).toString()],"x-amz-copy-source-if-none-match":e.CopySourceIfNoneMatch,"x-amz-copy-source-if-unmodified-since":[()=>E(e.CopySourceIfUnmodifiedSince),()=>(0,d.dateToUtcString)(e.CopySourceIfUnmodifiedSince).toString()],expires:[()=>E(e.Expires),()=>(0,d.dateToUtcString)(e.Expires).toString()],"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-metadata-directive":e.MetadataDirective,"x-amz-tagging-directive":e.TaggingDirective,"x-amz-server-side-encryption":e.ServerSideEncryption,"x-amz-storage-class":e.StorageClass,"x-amz-website-redirect-location":e.WebsiteRedirectLocation,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-server-side-encryption-aws-kms-key-id":e.SSEKMSKeyId,"x-amz-server-side-encryption-context":e.SSEKMSEncryptionContext,"x-amz-server-side-encryption-bucket-key-enabled":[()=>E(e.BucketKeyEnabled),()=>e.BucketKeyEnabled.toString()],"x-amz-copy-source-server-side-encryption-customer-algorithm":e.CopySourceSSECustomerAlgorithm,"x-amz-copy-source-server-side-encryption-customer-key":e.CopySourceSSECustomerKey,"x-amz-copy-source-server-side-encryption-customer-key-md5":e.CopySourceSSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-tagging":e.Tagging,"x-amz-object-lock-mode":e.ObjectLockMode,"x-amz-object-lock-retain-until-date":[()=>E(e.ObjectLockRetainUntilDate),()=>(e.ObjectLockRetainUntilDate.toISOString().split(".")[0]+"Z").toString()],"x-amz-object-lock-legal-hold":e.ObjectLockLegalHoldStatus,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-source-expected-bucket-owner":e.ExpectedSourceBucketOwner,...e.Metadata!==void 0&&Object.keys(e.Metadata).reduce((c,y)=>(c[`x-amz-meta-${y.toLowerCase()}`]=e.Metadata[y],c),{})}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"CopyObject"]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_CopyObjectCommand=pne;var fne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-acl":e.ACL,"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write":e.GrantWrite,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-bucket-object-lock-enabled":[()=>E(e.ObjectLockEnabledForBucket),()=>e.ObjectLockEnabledForBucket.toString()],"x-amz-object-ownership":e.ObjectOwnership}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u;e.CreateBucketConfiguration!==void 0&&(u=Dq(e.CreateBucketConfiguration,t));let l;return e.CreateBucketConfiguration!==void 0&&(l=Dq(e.CreateBucketConfiguration,t),u='',l.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),u+=l.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,body:u})};p.se_CreateBucketCommand=fne;var yne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-acl":e.ACL,"cache-control":e.CacheControl,"content-disposition":e.ContentDisposition,"content-encoding":e.ContentEncoding,"content-language":e.ContentLanguage,"content-type":e.ContentType,expires:[()=>E(e.Expires),()=>(0,d.dateToUtcString)(e.Expires).toString()],"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-server-side-encryption":e.ServerSideEncryption,"x-amz-storage-class":e.StorageClass,"x-amz-website-redirect-location":e.WebsiteRedirectLocation,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-server-side-encryption-aws-kms-key-id":e.SSEKMSKeyId,"x-amz-server-side-encryption-context":e.SSEKMSEncryptionContext,"x-amz-server-side-encryption-bucket-key-enabled":[()=>E(e.BucketKeyEnabled),()=>e.BucketKeyEnabled.toString()],"x-amz-request-payer":e.RequestPayer,"x-amz-tagging":e.Tagging,"x-amz-object-lock-mode":e.ObjectLockMode,"x-amz-object-lock-retain-until-date":[()=>E(e.ObjectLockRetainUntilDate),()=>(e.ObjectLockRetainUntilDate.toISOString().split(".")[0]+"Z").toString()],"x-amz-object-lock-legal-hold":e.ObjectLockLegalHoldStatus,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-checksum-algorithm":e.ChecksumAlgorithm,...e.Metadata!==void 0&&Object.keys(e.Metadata).reduce((c,y)=>(c[`x-amz-meta-${y.toLowerCase()}`]=e.Metadata[y],c),{})}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({uploads:[,""],"x-id":[,"CreateMultipartUpload"]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_CreateMultipartUploadCommand=yne;var gne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,body:u})};p.se_DeleteBucketCommand=gne;var hne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({analytics:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketAnalyticsConfigurationCommand=hne;var _ne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({cors:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketCorsCommand=_ne;var Cne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({encryption:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketEncryptionCommand=Cne;var Sne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"intelligent-tiering":[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketIntelligentTieringConfigurationCommand=Sne;var bne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({inventory:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketInventoryConfigurationCommand=bne;var Ene=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({lifecycle:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketLifecycleCommand=Ene;var Pne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({metrics:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketMetricsConfigurationCommand=Pne;var vne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({ownershipControls:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketOwnershipControlsCommand=vne;var wne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({policy:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketPolicyCommand=wne;var xne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({replication:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketReplicationCommand=xne;var kne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({tagging:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketTaggingCommand=kne;var Ane=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({website:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteBucketWebsiteCommand=Ane;var One=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-mfa":e.MFA,"x-amz-request-payer":e.RequestPayer,"x-amz-bypass-governance-retention":[()=>E(e.BypassGovernanceRetention),()=>e.BypassGovernanceRetention.toString()],"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"DeleteObject"],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteObjectCommand=One;var Nne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-mfa":e.MFA,"x-amz-request-payer":e.RequestPayer,"x-amz-bypass-governance-retention":[()=>E(e.BypassGovernanceRetention),()=>e.BypassGovernanceRetention.toString()],"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({delete:[,""],"x-id":[,"DeleteObjects"]}),l;e.Delete!==void 0&&(l=Mq(e.Delete,t));let c;return e.Delete!==void 0&&(c=Mq(e.Delete,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_DeleteObjectsCommand=Nne;var Ine=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({tagging:[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeleteObjectTaggingCommand=Ine;var Rne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({publicAccessBlock:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"DELETE",headers:a,path:i,query:u,body:l})};p.se_DeletePublicAccessBlockCommand=Rne;var Tne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-request-payer":e.RequestPayer}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({accelerate:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketAccelerateConfigurationCommand=Tne;var Bne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({acl:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketAclCommand=Bne;var qne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({analytics:[,""],"x-id":[,"GetBucketAnalyticsConfiguration"],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketAnalyticsConfigurationCommand=qne;var Dne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({cors:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketCorsCommand=Dne;var Mne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({encryption:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketEncryptionCommand=Mne;var Fne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"intelligent-tiering":[,""],"x-id":[,"GetBucketIntelligentTieringConfiguration"],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketIntelligentTieringConfigurationCommand=Fne;var Lne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({inventory:[,""],"x-id":[,"GetBucketInventoryConfiguration"],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketInventoryConfigurationCommand=Lne;var jne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({lifecycle:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketLifecycleConfigurationCommand=jne;var Une=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({location:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketLocationCommand=Une;var zne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({logging:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketLoggingCommand=zne;var Gne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({metrics:[,""],"x-id":[,"GetBucketMetricsConfiguration"],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketMetricsConfigurationCommand=Gne;var Hne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({notification:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketNotificationConfigurationCommand=Hne;var $ne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({ownershipControls:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketOwnershipControlsCommand=$ne;var Kne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({policy:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketPolicyCommand=Kne;var Vne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({policyStatus:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketPolicyStatusCommand=Vne;var Xne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({replication:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketReplicationCommand=Xne;var Wne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({requestPayment:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketRequestPaymentCommand=Wne;var Yne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({tagging:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketTaggingCommand=Yne;var Jne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({versioning:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketVersioningCommand=Jne;var Qne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({website:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetBucketWebsiteCommand=Qne;var Zne=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"if-match":e.IfMatch,"if-modified-since":[()=>E(e.IfModifiedSince),()=>(0,d.dateToUtcString)(e.IfModifiedSince).toString()],"if-none-match":e.IfNoneMatch,"if-unmodified-since":[()=>E(e.IfUnmodifiedSince),()=>(0,d.dateToUtcString)(e.IfUnmodifiedSince).toString()],range:e.Range,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-checksum-mode":e.ChecksumMode}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"GetObject"],"response-cache-control":[,e.ResponseCacheControl],"response-content-disposition":[,e.ResponseContentDisposition],"response-content-encoding":[,e.ResponseContentEncoding],"response-content-language":[,e.ResponseContentLanguage],"response-content-type":[,e.ResponseContentType],"response-expires":[()=>e.ResponseExpires!==void 0,()=>(0,d.dateToUtcString)(e.ResponseExpires).toString()],versionId:[,e.VersionId],partNumber:[()=>e.PartNumber!==void 0,()=>e.PartNumber.toString()]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectCommand=Zne;var ere=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({acl:[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectAclCommand=ere;var tre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-max-parts":[()=>E(e.MaxParts),()=>e.MaxParts.toString()],"x-amz-part-number-marker":e.PartNumberMarker,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-object-attributes":[()=>E(e.ObjectAttributes),()=>(e.ObjectAttributes||[]).map(c=>c).join(", ")]}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({attributes:[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectAttributesCommand=tre;var nre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"legal-hold":[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectLegalHoldCommand=nre;var rre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"object-lock":[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectLockConfigurationCommand=rre;var ore=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({retention:[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectRetentionCommand=ore;var sre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-request-payer":e.RequestPayer}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({tagging:[,""],versionId:[,e.VersionId]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectTaggingCommand=sre;var ire=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({torrent:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetObjectTorrentCommand=ire;var are=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({publicAccessBlock:[,""]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_GetPublicAccessBlockCommand=are;var cre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"HEAD",headers:a,path:i,body:u})};p.se_HeadBucketCommand=cre;var dre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"if-match":e.IfMatch,"if-modified-since":[()=>E(e.IfModifiedSince),()=>(0,d.dateToUtcString)(e.IfModifiedSince).toString()],"if-none-match":e.IfNoneMatch,"if-unmodified-since":[()=>E(e.IfUnmodifiedSince),()=>(0,d.dateToUtcString)(e.IfUnmodifiedSince).toString()],range:e.Range,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-checksum-mode":e.ChecksumMode}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({versionId:[,e.VersionId],partNumber:[()=>e.PartNumber!==void 0,()=>e.PartNumber.toString()]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"HEAD",headers:a,path:i,query:u,body:l})};p.se_HeadObjectCommand=dre;var lre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({analytics:[,""],"x-id":[,"ListBucketAnalyticsConfigurations"],"continuation-token":[,e.ContinuationToken]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListBucketAnalyticsConfigurationsCommand=lre;var ure=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"intelligent-tiering":[,""],"x-id":[,"ListBucketIntelligentTieringConfigurations"],"continuation-token":[,e.ContinuationToken]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListBucketIntelligentTieringConfigurationsCommand=ure;var mre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({inventory:[,""],"x-id":[,"ListBucketInventoryConfigurations"],"continuation-token":[,e.ContinuationToken]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListBucketInventoryConfigurationsCommand=mre;var pre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({metrics:[,""],"x-id":[,"ListBucketMetricsConfigurations"],"continuation-token":[,e.ContinuationToken]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListBucketMetricsConfigurationsCommand=pre;var fre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={"content-type":"application/xml"},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`,u;return u="",new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,body:u})};p.se_ListBucketsCommand=fre;var yre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-request-payer":e.RequestPayer}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({uploads:[,""],delimiter:[,e.Delimiter],"encoding-type":[,e.EncodingType],"key-marker":[,e.KeyMarker],"max-uploads":[()=>e.MaxUploads!==void 0,()=>e.MaxUploads.toString()],prefix:[,e.Prefix],"upload-id-marker":[,e.UploadIdMarker]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListMultipartUploadsCommand=yre;var gre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-optional-object-attributes":[()=>E(e.OptionalObjectAttributes),()=>(e.OptionalObjectAttributes||[]).map(c=>c).join(", ")]}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({delimiter:[,e.Delimiter],"encoding-type":[,e.EncodingType],marker:[,e.Marker],"max-keys":[()=>e.MaxKeys!==void 0,()=>e.MaxKeys.toString()],prefix:[,e.Prefix]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListObjectsCommand=gre;var hre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-optional-object-attributes":[()=>E(e.OptionalObjectAttributes),()=>(e.OptionalObjectAttributes||[]).map(c=>c).join(", ")]}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"list-type":[,"2"],delimiter:[,e.Delimiter],"encoding-type":[,e.EncodingType],"max-keys":[()=>e.MaxKeys!==void 0,()=>e.MaxKeys.toString()],prefix:[,e.Prefix],"continuation-token":[,e.ContinuationToken],"fetch-owner":[()=>e.FetchOwner!==void 0,()=>e.FetchOwner.toString()],"start-after":[,e.StartAfter]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListObjectsV2Command=hre;var _re=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-request-payer":e.RequestPayer,"x-amz-optional-object-attributes":[()=>E(e.OptionalObjectAttributes),()=>(e.OptionalObjectAttributes||[]).map(c=>c).join(", ")]}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({versions:[,""],delimiter:[,e.Delimiter],"encoding-type":[,e.EncodingType],"key-marker":[,e.KeyMarker],"max-keys":[()=>e.MaxKeys!==void 0,()=>e.MaxKeys.toString()],prefix:[,e.Prefix],"version-id-marker":[,e.VersionIdMarker]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListObjectVersionsCommand=_re;var Cre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"ListParts"],"max-parts":[()=>e.MaxParts!==void 0,()=>e.MaxParts.toString()],"part-number-marker":[,e.PartNumberMarker],uploadId:[,(0,d.expectNonNull)(e.UploadId,"UploadId")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"GET",headers:a,path:i,query:u,body:l})};p.se_ListPartsCommand=Cre;var Sre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({accelerate:[,""]}),l;e.AccelerateConfiguration!==void 0&&(l=Nq(e.AccelerateConfiguration,t));let c;return e.AccelerateConfiguration!==void 0&&(c=Nq(e.AccelerateConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketAccelerateConfigurationCommand=Sre;var bre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-acl":e.ACL,"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write":e.GrantWrite,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({acl:[,""]}),l;e.AccessControlPolicy!==void 0&&(l=fm(e.AccessControlPolicy,t));let c;return e.AccessControlPolicy!==void 0&&(c=fm(e.AccessControlPolicy,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketAclCommand=bre;var Ere=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({analytics:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;e.AnalyticsConfiguration!==void 0&&(l=Iq(e.AnalyticsConfiguration,t));let c;return e.AnalyticsConfiguration!==void 0&&(c=Iq(e.AnalyticsConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketAnalyticsConfigurationCommand=Ere;var Pre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({cors:[,""]}),l;e.CORSConfiguration!==void 0&&(l=qq(e.CORSConfiguration,t));let c;return e.CORSConfiguration!==void 0&&(c=qq(e.CORSConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketCorsCommand=Pre;var vre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({encryption:[,""]}),l;e.ServerSideEncryptionConfiguration!==void 0&&(l=Yq(e.ServerSideEncryptionConfiguration,t));let c;return e.ServerSideEncryptionConfiguration!==void 0&&(c=Yq(e.ServerSideEncryptionConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketEncryptionCommand=vre;var wre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a={"content-type":"application/xml"},i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"intelligent-tiering":[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;e.IntelligentTieringConfiguration!==void 0&&(l=Fq(e.IntelligentTieringConfiguration,t));let c;return e.IntelligentTieringConfiguration!==void 0&&(c=Fq(e.IntelligentTieringConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketIntelligentTieringConfigurationCommand=wre;var xre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({inventory:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;e.InventoryConfiguration!==void 0&&(l=Lq(e.InventoryConfiguration,t));let c;return e.InventoryConfiguration!==void 0&&(c=Lq(e.InventoryConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketInventoryConfigurationCommand=xre;var kre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({lifecycle:[,""]}),l;e.LifecycleConfiguration!==void 0&&(l=Rq(e.LifecycleConfiguration,t));let c;return e.LifecycleConfiguration!==void 0&&(c=Rq(e.LifecycleConfiguration,t),c=c.withName("LifecycleConfiguration"),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketLifecycleConfigurationCommand=kre;var Are=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({logging:[,""]}),l;e.BucketLoggingStatus!==void 0&&(l=Tq(e.BucketLoggingStatus,t));let c;return e.BucketLoggingStatus!==void 0&&(c=Tq(e.BucketLoggingStatus,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketLoggingCommand=Are;var Ore=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({metrics:[,""],id:[,(0,d.expectNonNull)(e.Id,"Id")]}),l;e.MetricsConfiguration!==void 0&&(l=jq(e.MetricsConfiguration,t));let c;return e.MetricsConfiguration!==void 0&&(c=jq(e.MetricsConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketMetricsConfigurationCommand=Ore;var Nre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-skip-destination-validation":[()=>E(e.SkipDestinationValidation),()=>e.SkipDestinationValidation.toString()]}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({notification:[,""]}),l;e.NotificationConfiguration!==void 0&&(l=Uq(e.NotificationConfiguration,t));let c;return e.NotificationConfiguration!==void 0&&(c=Uq(e.NotificationConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketNotificationConfigurationCommand=Nre;var Ire=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({ownershipControls:[,""]}),l;e.OwnershipControls!==void 0&&(l=$q(e.OwnershipControls,t));let c;return e.OwnershipControls!==void 0&&(c=$q(e.OwnershipControls,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketOwnershipControlsCommand=Ire;var Rre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"text/plain","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-confirm-remove-self-bucket-access":[()=>E(e.ConfirmRemoveSelfBucketAccess),()=>e.ConfirmRemoveSelfBucketAccess.toString()],"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({policy:[,""]}),l;e.Policy!==void 0&&(l=e.Policy);let c;return e.Policy!==void 0&&(c=e.Policy,l=c),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketPolicyCommand=Rre;var Tre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-bucket-object-lock-token":e.Token,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({replication:[,""]}),l;e.ReplicationConfiguration!==void 0&&(l=Vq(e.ReplicationConfiguration,t));let c;return e.ReplicationConfiguration!==void 0&&(c=Vq(e.ReplicationConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketReplicationCommand=Tre;var Bre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({requestPayment:[,""]}),l;e.RequestPaymentConfiguration!==void 0&&(l=Xq(e.RequestPaymentConfiguration,t));let c;return e.RequestPaymentConfiguration!==void 0&&(c=Xq(e.RequestPaymentConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketRequestPaymentCommand=Bre;var qre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({tagging:[,""]}),l;e.Tagging!==void 0&&(l=Ua(e.Tagging,t));let c;return e.Tagging!==void 0&&(c=Ua(e.Tagging,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketTaggingCommand=qre;var Dre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-mfa":e.MFA,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({versioning:[,""]}),l;e.VersioningConfiguration!==void 0&&(l=Jq(e.VersioningConfiguration,t));let c;return e.VersioningConfiguration!==void 0&&(c=Jq(e.VersioningConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketVersioningCommand=Dre;var Mre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({website:[,""]}),l;e.WebsiteConfiguration!==void 0&&(l=Qq(e.WebsiteConfiguration,t));let c;return e.WebsiteConfiguration!==void 0&&(c=Qq(e.WebsiteConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutBucketWebsiteCommand=Mre;var Fre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":e.ContentType||"application/octet-stream","x-amz-acl":e.ACL,"cache-control":e.CacheControl,"content-disposition":e.ContentDisposition,"content-encoding":e.ContentEncoding,"content-language":e.ContentLanguage,"content-length":[()=>E(e.ContentLength),()=>e.ContentLength.toString()],"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-checksum-crc32":e.ChecksumCRC32,"x-amz-checksum-crc32c":e.ChecksumCRC32C,"x-amz-checksum-sha1":e.ChecksumSHA1,"x-amz-checksum-sha256":e.ChecksumSHA256,expires:[()=>E(e.Expires),()=>(0,d.dateToUtcString)(e.Expires).toString()],"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-server-side-encryption":e.ServerSideEncryption,"x-amz-storage-class":e.StorageClass,"x-amz-website-redirect-location":e.WebsiteRedirectLocation,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-server-side-encryption-aws-kms-key-id":e.SSEKMSKeyId,"x-amz-server-side-encryption-context":e.SSEKMSEncryptionContext,"x-amz-server-side-encryption-bucket-key-enabled":[()=>E(e.BucketKeyEnabled),()=>e.BucketKeyEnabled.toString()],"x-amz-request-payer":e.RequestPayer,"x-amz-tagging":e.Tagging,"x-amz-object-lock-mode":e.ObjectLockMode,"x-amz-object-lock-retain-until-date":[()=>E(e.ObjectLockRetainUntilDate),()=>(e.ObjectLockRetainUntilDate.toISOString().split(".")[0]+"Z").toString()],"x-amz-object-lock-legal-hold":e.ObjectLockLegalHoldStatus,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,...e.Metadata!==void 0&&Object.keys(e.Metadata).reduce((y,g)=>(y[`x-amz-meta-${g.toLowerCase()}`]=e.Metadata[g],y),{})}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"PutObject"]}),l;e.Body!==void 0&&(l=e.Body);let c;return e.Body!==void 0&&(c=e.Body,l=c),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectCommand=Fre;var Lre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-acl":e.ACL,"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-grant-full-control":e.GrantFullControl,"x-amz-grant-read":e.GrantRead,"x-amz-grant-read-acp":e.GrantReadACP,"x-amz-grant-write":e.GrantWrite,"x-amz-grant-write-acp":e.GrantWriteACP,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({acl:[,""],versionId:[,e.VersionId]}),l;e.AccessControlPolicy!==void 0&&(l=fm(e.AccessControlPolicy,t));let c;return e.AccessControlPolicy!==void 0&&(c=fm(e.AccessControlPolicy,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectAclCommand=Lre;var jre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-request-payer":e.RequestPayer,"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"legal-hold":[,""],versionId:[,e.VersionId]}),l;e.LegalHold!==void 0&&(l=Gq(e.LegalHold,t));let c;return e.LegalHold!==void 0&&(c=Gq(e.LegalHold,t),c=c.withName("LegalHold"),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectLegalHoldCommand=jre;var Ure=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-request-payer":e.RequestPayer,"x-amz-bucket-object-lock-token":e.Token,"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({"object-lock":[,""]}),l;e.ObjectLockConfiguration!==void 0&&(l=zq(e.ObjectLockConfiguration,t));let c;return e.ObjectLockConfiguration!==void 0&&(c=zq(e.ObjectLockConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectLockConfigurationCommand=Ure;var zre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-request-payer":e.RequestPayer,"x-amz-bypass-governance-retention":[()=>E(e.BypassGovernanceRetention),()=>e.BypassGovernanceRetention.toString()],"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({retention:[,""],versionId:[,e.VersionId]}),l;e.Retention!==void 0&&(l=Hq(e.Retention,t));let c;return e.Retention!==void 0&&(c=Hq(e.Retention,t),c=c.withName("Retention"),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectRetentionCommand=zre;var Gre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-request-payer":e.RequestPayer}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({tagging:[,""],versionId:[,e.VersionId]}),l;e.Tagging!==void 0&&(l=Ua(e.Tagging,t));let c;return e.Tagging!==void 0&&(c=Ua(e.Tagging,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutObjectTaggingCommand=Gre;var Hre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1);let u=(0,d.map)({publicAccessBlock:[,""]}),l;e.PublicAccessBlockConfiguration!==void 0&&(l=Kq(e.PublicAccessBlockConfiguration,t));let c;return e.PublicAccessBlockConfiguration!==void 0&&(c=Kq(e.PublicAccessBlockConfiguration,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_PutPublicAccessBlockCommand=Hre;var $re=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-request-payer":e.RequestPayer,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({restore:[,""],"x-id":[,"RestoreObject"],versionId:[,e.VersionId]}),l;e.RestoreRequest!==void 0&&(l=Wq(e.RestoreRequest,t));let c;return e.RestoreRequest!==void 0&&(c=Wq(e.RestoreRequest,t),l='',c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),l+=c.toString()),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_RestoreObjectCommand=$re;var Kre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/xml","x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({select:[,""],"select-type":[,"2"],"x-id":[,"SelectObjectContent"]}),l;l='';let c=new f.XmlNode("SelectObjectContentRequest");if(c.addAttribute("xmlns","http://s3.amazonaws.com/doc/2006-03-01/"),e.Expression!==void 0){let y=f.XmlNode.of("Expression",e.Expression).withName("Expression");c.addChildNode(y)}if(e.ExpressionType!==void 0){let y=f.XmlNode.of("ExpressionType",e.ExpressionType).withName("ExpressionType");c.addChildNode(y)}if(e.InputSerialization!==void 0){let y=rD(e.InputSerialization,t).withName("InputSerialization");c.addChildNode(y)}if(e.OutputSerialization!==void 0){let y=oD(e.OutputSerialization,t).withName("OutputSerialization");c.addChildNode(y)}if(e.RequestProgress!==void 0){let y=Jce(e.RequestProgress,t).withName("RequestProgress");c.addChildNode(y)}if(e.ScanRange!==void 0){let y=nde(e.ScanRange,t).withName("ScanRange");c.addChildNode(y)}return l+=c.toString(),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_SelectObjectContentCommand=Kre;var Vre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"content-type":"application/octet-stream","content-length":[()=>E(e.ContentLength),()=>e.ContentLength.toString()],"content-md5":e.ContentMD5,"x-amz-sdk-checksum-algorithm":e.ChecksumAlgorithm,"x-amz-checksum-crc32":e.ChecksumCRC32,"x-amz-checksum-crc32c":e.ChecksumCRC32C,"x-amz-checksum-sha1":e.ChecksumSHA1,"x-amz-checksum-sha256":e.ChecksumSHA256,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"UploadPart"],partNumber:[(0,d.expectNonNull)(e.PartNumber,"PartNumber")!=null,()=>e.PartNumber.toString()],uploadId:[,(0,d.expectNonNull)(e.UploadId,"UploadId")]}),l;e.Body!==void 0&&(l=e.Body);let c;return e.Body!==void 0&&(c=e.Body,l=c),new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_UploadPartCommand=Vre;var Xre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-copy-source":e.CopySource,"x-amz-copy-source-if-match":e.CopySourceIfMatch,"x-amz-copy-source-if-modified-since":[()=>E(e.CopySourceIfModifiedSince),()=>(0,d.dateToUtcString)(e.CopySourceIfModifiedSince).toString()],"x-amz-copy-source-if-none-match":e.CopySourceIfNoneMatch,"x-amz-copy-source-if-unmodified-since":[()=>E(e.CopySourceIfUnmodifiedSince),()=>(0,d.dateToUtcString)(e.CopySourceIfUnmodifiedSince).toString()],"x-amz-copy-source-range":e.CopySourceRange,"x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-server-side-encryption-customer-key":e.SSECustomerKey,"x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-copy-source-server-side-encryption-customer-algorithm":e.CopySourceSSECustomerAlgorithm,"x-amz-copy-source-server-side-encryption-customer-key":e.CopySourceSSECustomerKey,"x-amz-copy-source-server-side-encryption-customer-key-md5":e.CopySourceSSECustomerKeyMD5,"x-amz-request-payer":e.RequestPayer,"x-amz-expected-bucket-owner":e.ExpectedBucketOwner,"x-amz-source-expected-bucket-owner":e.ExpectedSourceBucketOwner}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/{Key+}`;i=(0,d.resolvedPath)(i,e,"Bucket",()=>e.Bucket,"{Bucket}",!1),i=(0,d.resolvedPath)(i,e,"Key",()=>e.Key,"{Key+}",!0);let u=(0,d.map)({"x-id":[,"UploadPartCopy"],partNumber:[(0,d.expectNonNull)(e.PartNumber,"PartNumber")!=null,()=>e.PartNumber.toString()],uploadId:[,(0,d.expectNonNull)(e.UploadId,"UploadId")]}),l;return new B.HttpRequest({protocol:r,hostname:n,port:o,method:"PUT",headers:a,path:i,query:u,body:l})};p.se_UploadPartCopyCommand=Xre;var Wre=async(e,t)=>{let{hostname:n,protocol:r="https",port:o,path:s}=await t.endpoint(),a=(0,d.map)({},E,{"x-amz-content-sha256":"UNSIGNED-PAYLOAD","content-type":"application/octet-stream","x-amz-request-route":e.RequestRoute,"x-amz-request-token":e.RequestToken,"x-amz-fwd-status":[()=>E(e.StatusCode),()=>e.StatusCode.toString()],"x-amz-fwd-error-code":e.ErrorCode,"x-amz-fwd-error-message":e.ErrorMessage,"x-amz-fwd-header-accept-ranges":e.AcceptRanges,"x-amz-fwd-header-cache-control":e.CacheControl,"x-amz-fwd-header-content-disposition":e.ContentDisposition,"x-amz-fwd-header-content-encoding":e.ContentEncoding,"x-amz-fwd-header-content-language":e.ContentLanguage,"content-length":[()=>E(e.ContentLength),()=>e.ContentLength.toString()],"x-amz-fwd-header-content-range":e.ContentRange,"x-amz-fwd-header-content-type":e.ContentType,"x-amz-fwd-header-x-amz-checksum-crc32":e.ChecksumCRC32,"x-amz-fwd-header-x-amz-checksum-crc32c":e.ChecksumCRC32C,"x-amz-fwd-header-x-amz-checksum-sha1":e.ChecksumSHA1,"x-amz-fwd-header-x-amz-checksum-sha256":e.ChecksumSHA256,"x-amz-fwd-header-x-amz-delete-marker":[()=>E(e.DeleteMarker),()=>e.DeleteMarker.toString()],"x-amz-fwd-header-etag":e.ETag,"x-amz-fwd-header-expires":[()=>E(e.Expires),()=>(0,d.dateToUtcString)(e.Expires).toString()],"x-amz-fwd-header-x-amz-expiration":e.Expiration,"x-amz-fwd-header-last-modified":[()=>E(e.LastModified),()=>(0,d.dateToUtcString)(e.LastModified).toString()],"x-amz-fwd-header-x-amz-missing-meta":[()=>E(e.MissingMeta),()=>e.MissingMeta.toString()],"x-amz-fwd-header-x-amz-object-lock-mode":e.ObjectLockMode,"x-amz-fwd-header-x-amz-object-lock-legal-hold":e.ObjectLockLegalHoldStatus,"x-amz-fwd-header-x-amz-object-lock-retain-until-date":[()=>E(e.ObjectLockRetainUntilDate),()=>(e.ObjectLockRetainUntilDate.toISOString().split(".")[0]+"Z").toString()],"x-amz-fwd-header-x-amz-mp-parts-count":[()=>E(e.PartsCount),()=>e.PartsCount.toString()],"x-amz-fwd-header-x-amz-replication-status":e.ReplicationStatus,"x-amz-fwd-header-x-amz-request-charged":e.RequestCharged,"x-amz-fwd-header-x-amz-restore":e.Restore,"x-amz-fwd-header-x-amz-server-side-encryption":e.ServerSideEncryption,"x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm":e.SSECustomerAlgorithm,"x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id":e.SSEKMSKeyId,"x-amz-fwd-header-x-amz-server-side-encryption-customer-key-md5":e.SSECustomerKeyMD5,"x-amz-fwd-header-x-amz-storage-class":e.StorageClass,"x-amz-fwd-header-x-amz-tagging-count":[()=>E(e.TagCount),()=>e.TagCount.toString()],"x-amz-fwd-header-x-amz-version-id":e.VersionId,"x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled":[()=>E(e.BucketKeyEnabled),()=>e.BucketKeyEnabled.toString()],...e.Metadata!==void 0&&Object.keys(e.Metadata).reduce((g,C)=>(g[`x-amz-meta-${C.toLowerCase()}`]=e.Metadata[C],g),{})}),i=`${s!=null&&s.endsWith("/")?s.slice(0,-1):s||""}/WriteGetObjectResponse`,u=(0,d.map)({"x-id":[,"WriteGetObjectResponse"]}),l;e.Body!==void 0&&(l=e.Body);let c;e.Body!==void 0&&(c=e.Body,l=c);let{hostname:y}=await t.endpoint();if(t.disableHostPrefix!==!0){if(y="{RequestRoute}."+y,e.RequestRoute===void 0)throw new Error("Empty value provided for input host prefix: RequestRoute.");if(y=y.replace("{RequestRoute}",e.RequestRoute),!(0,B.isValidHostname)(y))throw new Error("ValidationError: prefixed hostname must be hostname compatible.")}return new B.HttpRequest({protocol:r,hostname:y,port:o,method:"POST",headers:a,path:i,query:u,body:l})};p.se_WriteGetObjectResponseCommand=Wre;var Yre=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Jre(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_AbortMultipartUploadCommand=Yre;var Jre=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchUpload":case"com.amazonaws.s3#NoSuchUpload":throw await Pae(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Qre=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Zre(e,t);let n=(0,d.map)({$metadata:I(e),Expiration:[,e.headers["x-amz-expiration"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],VersionId:[,e.headers["x-amz-version-id"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(r.Bucket)),r.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(r.ChecksumCRC32)),r.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(r.ChecksumCRC32C)),r.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(r.ChecksumSHA1)),r.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(r.ChecksumSHA256)),r.ETag!==void 0&&(n.ETag=(0,d.expectString)(r.ETag)),r.Key!==void 0&&(n.Key=(0,d.expectString)(r.Key)),r.Location!==void 0&&(n.Location=(0,d.expectString)(r.Location)),n};p.de_CompleteMultipartUploadCommand=Qre;var Zre=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},eoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return toe(e,t);let n=(0,d.map)({$metadata:I(e),Expiration:[,e.headers["x-amz-expiration"]],CopySourceVersionId:[,e.headers["x-amz-copy-source-version-id"]],VersionId:[,e.headers["x-amz-version-id"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],SSEKMSEncryptionContext:[,e.headers["x-amz-server-side-encryption-context"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectObject)(await Z(e.body,t));return n.CopyObjectResult=Fde(r,t),n};p.de_CopyObjectCommand=eoe;var toe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"ObjectNotInActiveTierError":case"com.amazonaws.s3#ObjectNotInActiveTierError":throw await wae(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},noe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return roe(e,t);let n=(0,d.map)({$metadata:I(e),Location:[,e.headers.location]});return await(0,d.collectBody)(e.body,t),n};p.de_CreateBucketCommand=noe;var roe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"BucketAlreadyExists":case"com.amazonaws.s3#BucketAlreadyExists":throw await Sae(n,t);case"BucketAlreadyOwnedByYou":case"com.amazonaws.s3#BucketAlreadyOwnedByYou":throw await bae(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},ooe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return soe(e,t);let n=(0,d.map)({$metadata:I(e),AbortDate:[()=>e.headers["x-amz-abort-date"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers["x-amz-abort-date"]))],AbortRuleId:[,e.headers["x-amz-abort-rule-id"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],SSEKMSEncryptionContext:[,e.headers["x-amz-server-side-encryption-context"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]],ChecksumAlgorithm:[,e.headers["x-amz-checksum-algorithm"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(r.Bucket)),r.Key!==void 0&&(n.Key=(0,d.expectString)(r.Key)),r.UploadId!==void 0&&(n.UploadId=(0,d.expectString)(r.UploadId)),n};p.de_CreateMultipartUploadCommand=ooe;var soe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},ioe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return aoe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketCommand=ioe;var aoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},coe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return doe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketAnalyticsConfigurationCommand=coe;var doe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},loe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return uoe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketCorsCommand=loe;var uoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},moe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return poe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketEncryptionCommand=moe;var poe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},foe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return yoe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketIntelligentTieringConfigurationCommand=foe;var yoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},goe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return hoe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketInventoryConfigurationCommand=goe;var hoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},_oe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Coe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketLifecycleCommand=_oe;var Coe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Soe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return boe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketMetricsConfigurationCommand=Soe;var boe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Eoe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Poe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketOwnershipControlsCommand=Eoe;var Poe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},voe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return woe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketPolicyCommand=voe;var woe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},xoe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return koe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketReplicationCommand=xoe;var koe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Aoe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Ooe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketTaggingCommand=Aoe;var Ooe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Noe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Ioe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteBucketWebsiteCommand=Noe;var Ioe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Roe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Toe(e,t);let n=(0,d.map)({$metadata:I(e),DeleteMarker:[()=>e.headers["x-amz-delete-marker"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-delete-marker"])],VersionId:[,e.headers["x-amz-version-id"]],RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteObjectCommand=Roe;var Toe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Boe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return qoe(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Deleted===""?n.Deleted=[]:r.Deleted!==void 0&&(n.Deleted=Hde((0,d.getArrayIfSingleItem)(r.Deleted),t)),r.Error===""?n.Errors=[]:r.Error!==void 0&&(n.Errors=Zde((0,d.getArrayIfSingleItem)(r.Error),t)),n};p.de_DeleteObjectsCommand=Boe;var qoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Doe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Moe(e,t);let n=(0,d.map)({$metadata:I(e),VersionId:[,e.headers["x-amz-version-id"]]});return await(0,d.collectBody)(e.body,t),n};p.de_DeleteObjectTaggingCommand=Doe;var Moe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Foe=async(e,t)=>{if(e.statusCode!==204&&e.statusCode>=300)return Loe(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_DeletePublicAccessBlockCommand=Foe;var Loe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},joe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Uoe(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Status!==void 0&&(n.Status=(0,d.expectString)(r.Status)),n};p.de_GetBucketAccelerateConfigurationCommand=joe;var Uoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},zoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Goe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.AccessControlList===""?n.Grants=[]:r.AccessControlList!==void 0&&r.AccessControlList.Grant!==void 0&&(n.Grants=dD((0,d.getArrayIfSingleItem)(r.AccessControlList.Grant),t)),r.Owner!==void 0&&(n.Owner=er(r.Owner,t)),n};p.de_GetBucketAclCommand=zoe;var Goe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Hoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return $oe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.AnalyticsConfiguration=iD(r,t),n};p.de_GetBucketAnalyticsConfigurationCommand=Hoe;var $oe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Koe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Voe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.CORSRule===""?n.CORSRules=[]:r.CORSRule!==void 0&&(n.CORSRules=Ude((0,d.getArrayIfSingleItem)(r.CORSRule),t)),n};p.de_GetBucketCorsCommand=Koe;var Voe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Xoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Woe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.ServerSideEncryptionConfiguration=pue(r,t),n};p.de_GetBucketEncryptionCommand=Xoe;var Woe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Yoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Joe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.IntelligentTieringConfiguration=uD(r,t),n};p.de_GetBucketIntelligentTieringConfigurationCommand=Yoe;var Joe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Qoe=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Zoe(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.InventoryConfiguration=mD(r,t),n};p.de_GetBucketInventoryConfigurationCommand=Qoe;var Zoe=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},ese=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return tse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Rule===""?n.Rules=[]:r.Rule!==void 0&&(n.Rules=vle((0,d.getArrayIfSingleItem)(r.Rule),t)),n};p.de_GetBucketLifecycleConfigurationCommand=ese;var tse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},nse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return rse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.LocationConstraint!==void 0&&(n.LocationConstraint=(0,d.expectString)(r.LocationConstraint)),n};p.de_GetBucketLocationCommand=nse;var rse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},ose=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return sse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.LoggingEnabled!==void 0&&(n.LoggingEnabled=wle(r.LoggingEnabled,t)),n};p.de_GetBucketLoggingCommand=ose;var sse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},ise=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return ase(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.MetricsConfiguration=pD(r,t),n};p.de_GetBucketMetricsConfigurationCommand=ise;var ase=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},cse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return dse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.EventBridgeConfiguration!==void 0&&(n.EventBridgeConfiguration=ele(r.EventBridgeConfiguration,t)),r.CloudFunctionConfiguration===""?n.LambdaFunctionConfigurations=[]:r.CloudFunctionConfiguration!==void 0&&(n.LambdaFunctionConfigurations=Cle((0,d.getArrayIfSingleItem)(r.CloudFunctionConfiguration),t)),r.QueueConfiguration===""?n.QueueConfigurations=[]:r.QueueConfiguration!==void 0&&(n.QueueConfigurations=Zle((0,d.getArrayIfSingleItem)(r.QueueConfiguration),t)),r.TopicConfiguration===""?n.TopicConfigurations=[]:r.TopicConfiguration!==void 0&&(n.TopicConfigurations=Aue((0,d.getArrayIfSingleItem)(r.TopicConfiguration),t)),n};p.de_GetBucketNotificationConfigurationCommand=cse;var dse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},lse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return use(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.OwnershipControls=Gle(r,t),n};p.de_GetBucketOwnershipControlsCommand=lse;var use=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},mse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return pse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=await hD(e.body,t);return n.Policy=(0,d.expectString)(r),n};p.de_GetBucketPolicyCommand=mse;var pse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},fse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return yse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.PolicyStatus=Wle(r,t),n};p.de_GetBucketPolicyStatusCommand=fse;var yse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},gse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return hse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.ReplicationConfiguration=rue(r,t),n};p.de_GetBucketReplicationCommand=gse;var hse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},_se=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Cse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Payer!==void 0&&(n.Payer=(0,d.expectString)(r.Payer)),n};p.de_GetBucketRequestPaymentCommand=_se;var Cse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Sse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return bse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.TagSet===""?n.TagSet=[]:r.TagSet!==void 0&&r.TagSet.Tag!==void 0&&(n.TagSet=Sr((0,d.getArrayIfSingleItem)(r.TagSet.Tag),t)),n};p.de_GetBucketTaggingCommand=Sse;var bse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Ese=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Pse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.MfaDelete!==void 0&&(n.MFADelete=(0,d.expectString)(r.MfaDelete)),r.Status!==void 0&&(n.Status=(0,d.expectString)(r.Status)),n};p.de_GetBucketVersioningCommand=Ese;var Pse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},vse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return wse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.ErrorDocument!==void 0&&(n.ErrorDocument=Qde(r.ErrorDocument,t)),r.IndexDocument!==void 0&&(n.IndexDocument=ale(r.IndexDocument,t)),r.RedirectAllRequestsTo!==void 0&&(n.RedirectAllRequestsTo=tue(r.RedirectAllRequestsTo,t)),r.RoutingRules===""?n.RoutingRules=[]:r.RoutingRules!==void 0&&r.RoutingRules.RoutingRule!==void 0&&(n.RoutingRules=lue((0,d.getArrayIfSingleItem)(r.RoutingRules.RoutingRule),t)),n};p.de_GetBucketWebsiteCommand=vse;var wse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},xse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return kse(e,t);let n=(0,d.map)({$metadata:I(e),DeleteMarker:[()=>e.headers["x-amz-delete-marker"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-delete-marker"])],AcceptRanges:[,e.headers["accept-ranges"]],Expiration:[,e.headers["x-amz-expiration"]],Restore:[,e.headers["x-amz-restore"]],LastModified:[()=>e.headers["last-modified"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers["last-modified"]))],ContentLength:[()=>e.headers["content-length"]!==void 0,()=>(0,d.strictParseLong)(e.headers["content-length"])],ETag:[,e.headers.etag],ChecksumCRC32:[,e.headers["x-amz-checksum-crc32"]],ChecksumCRC32C:[,e.headers["x-amz-checksum-crc32c"]],ChecksumSHA1:[,e.headers["x-amz-checksum-sha1"]],ChecksumSHA256:[,e.headers["x-amz-checksum-sha256"]],MissingMeta:[()=>e.headers["x-amz-missing-meta"]!==void 0,()=>(0,d.strictParseInt32)(e.headers["x-amz-missing-meta"])],VersionId:[,e.headers["x-amz-version-id"]],CacheControl:[,e.headers["cache-control"]],ContentDisposition:[,e.headers["content-disposition"]],ContentEncoding:[,e.headers["content-encoding"]],ContentLanguage:[,e.headers["content-language"]],ContentRange:[,e.headers["content-range"]],ContentType:[,e.headers["content-type"]],Expires:[()=>e.headers.expires!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers.expires))],WebsiteRedirectLocation:[,e.headers["x-amz-website-redirect-location"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],StorageClass:[,e.headers["x-amz-storage-class"]],RequestCharged:[,e.headers["x-amz-request-charged"]],ReplicationStatus:[,e.headers["x-amz-replication-status"]],PartsCount:[()=>e.headers["x-amz-mp-parts-count"]!==void 0,()=>(0,d.strictParseInt32)(e.headers["x-amz-mp-parts-count"])],TagCount:[()=>e.headers["x-amz-tagging-count"]!==void 0,()=>(0,d.strictParseInt32)(e.headers["x-amz-tagging-count"])],ObjectLockMode:[,e.headers["x-amz-object-lock-mode"]],ObjectLockRetainUntilDate:[()=>e.headers["x-amz-object-lock-retain-until-date"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.headers["x-amz-object-lock-retain-until-date"]))],ObjectLockLegalHoldStatus:[,e.headers["x-amz-object-lock-legal-hold"]],Metadata:[,Object.keys(e.headers).filter(o=>o.startsWith("x-amz-meta-")).reduce((o,s)=>(o[s.substring(11)]=e.headers[s],o),{})]}),r=e.body;return t.sdkStreamMixin(r),n.Body=r,n};p.de_GetObjectCommand=xse;var kse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"InvalidObjectState":case"com.amazonaws.s3#InvalidObjectState":throw await Eae(n,t);case"NoSuchKey":case"com.amazonaws.s3#NoSuchKey":throw await ym(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Ase=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Ose(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.AccessControlList===""?n.Grants=[]:r.AccessControlList!==void 0&&r.AccessControlList.Grant!==void 0&&(n.Grants=dD((0,d.getArrayIfSingleItem)(r.AccessControlList.Grant),t)),r.Owner!==void 0&&(n.Owner=er(r.Owner,t)),n};p.de_GetObjectAclCommand=Ase;var Ose=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchKey":case"com.amazonaws.s3#NoSuchKey":throw await ym(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Nse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Ise(e,t);let n=(0,d.map)({$metadata:I(e),DeleteMarker:[()=>e.headers["x-amz-delete-marker"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-delete-marker"])],LastModified:[()=>e.headers["last-modified"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers["last-modified"]))],VersionId:[,e.headers["x-amz-version-id"]],RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Checksum!==void 0&&(n.Checksum=Bde(r.Checksum,t)),r.ETag!==void 0&&(n.ETag=(0,d.expectString)(r.ETag)),r.ObjectParts!==void 0&&(n.ObjectParts=sle(r.ObjectParts,t)),r.ObjectSize!==void 0&&(n.ObjectSize=(0,d.strictParseLong)(r.ObjectSize)),r.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(r.StorageClass)),n};p.de_GetObjectAttributesCommand=Nse;var Ise=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchKey":case"com.amazonaws.s3#NoSuchKey":throw await ym(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Rse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Tse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.LegalHold=Mle(r,t),n};p.de_GetObjectLegalHoldCommand=Rse;var Tse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Bse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return qse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.ObjectLockConfiguration=Dle(r,t),n};p.de_GetObjectLockConfigurationCommand=Bse;var qse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Dse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Mse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.Retention=Fle(r,t),n};p.de_GetObjectRetentionCommand=Dse;var Mse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Fse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Lse(e,t);let n=(0,d.map)({$metadata:I(e),VersionId:[,e.headers["x-amz-version-id"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.TagSet===""?n.TagSet=[]:r.TagSet!==void 0&&r.TagSet.Tag!==void 0&&(n.TagSet=Sr((0,d.getArrayIfSingleItem)(r.TagSet.Tag),t)),n};p.de_GetObjectTaggingCommand=Fse;var Lse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},jse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Use(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=e.body;return t.sdkStreamMixin(r),n.Body=r,n};p.de_GetObjectTorrentCommand=jse;var Use=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},zse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Gse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectObject)(await Z(e.body,t));return n.PublicAccessBlockConfiguration=Jle(r,t),n};p.de_GetPublicAccessBlockCommand=zse;var Gse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Hse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return $se(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_HeadBucketCommand=Hse;var $se=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NotFound":case"com.amazonaws.s3#NotFound":throw await eD(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Kse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Vse(e,t);let n=(0,d.map)({$metadata:I(e),DeleteMarker:[()=>e.headers["x-amz-delete-marker"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-delete-marker"])],AcceptRanges:[,e.headers["accept-ranges"]],Expiration:[,e.headers["x-amz-expiration"]],Restore:[,e.headers["x-amz-restore"]],ArchiveStatus:[,e.headers["x-amz-archive-status"]],LastModified:[()=>e.headers["last-modified"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers["last-modified"]))],ContentLength:[()=>e.headers["content-length"]!==void 0,()=>(0,d.strictParseLong)(e.headers["content-length"])],ChecksumCRC32:[,e.headers["x-amz-checksum-crc32"]],ChecksumCRC32C:[,e.headers["x-amz-checksum-crc32c"]],ChecksumSHA1:[,e.headers["x-amz-checksum-sha1"]],ChecksumSHA256:[,e.headers["x-amz-checksum-sha256"]],ETag:[,e.headers.etag],MissingMeta:[()=>e.headers["x-amz-missing-meta"]!==void 0,()=>(0,d.strictParseInt32)(e.headers["x-amz-missing-meta"])],VersionId:[,e.headers["x-amz-version-id"]],CacheControl:[,e.headers["cache-control"]],ContentDisposition:[,e.headers["content-disposition"]],ContentEncoding:[,e.headers["content-encoding"]],ContentLanguage:[,e.headers["content-language"]],ContentType:[,e.headers["content-type"]],Expires:[()=>e.headers.expires!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers.expires))],WebsiteRedirectLocation:[,e.headers["x-amz-website-redirect-location"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],StorageClass:[,e.headers["x-amz-storage-class"]],RequestCharged:[,e.headers["x-amz-request-charged"]],ReplicationStatus:[,e.headers["x-amz-replication-status"]],PartsCount:[()=>e.headers["x-amz-mp-parts-count"]!==void 0,()=>(0,d.strictParseInt32)(e.headers["x-amz-mp-parts-count"])],ObjectLockMode:[,e.headers["x-amz-object-lock-mode"]],ObjectLockRetainUntilDate:[()=>e.headers["x-amz-object-lock-retain-until-date"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.headers["x-amz-object-lock-retain-until-date"]))],ObjectLockLegalHoldStatus:[,e.headers["x-amz-object-lock-legal-hold"]],Metadata:[,Object.keys(e.headers).filter(r=>r.startsWith("x-amz-meta-")).reduce((r,o)=>(r[o.substring(11)]=e.headers[o],r),{})]});return await(0,d.collectBody)(e.body,t),n};p.de_HeadObjectCommand=Kse;var Vse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NotFound":case"com.amazonaws.s3#NotFound":throw await eD(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},Xse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Wse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.AnalyticsConfiguration===""?n.AnalyticsConfigurationList=[]:r.AnalyticsConfiguration!==void 0&&(n.AnalyticsConfigurationList=Ade((0,d.getArrayIfSingleItem)(r.AnalyticsConfiguration),t)),r.ContinuationToken!==void 0&&(n.ContinuationToken=(0,d.expectString)(r.ContinuationToken)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.NextContinuationToken!==void 0&&(n.NextContinuationToken=(0,d.expectString)(r.NextContinuationToken)),n};p.de_ListBucketAnalyticsConfigurationsCommand=Xse;var Wse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Yse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Jse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.ContinuationToken!==void 0&&(n.ContinuationToken=(0,d.expectString)(r.ContinuationToken)),r.IntelligentTieringConfiguration===""?n.IntelligentTieringConfigurationList=[]:r.IntelligentTieringConfiguration!==void 0&&(n.IntelligentTieringConfigurationList=dle((0,d.getArrayIfSingleItem)(r.IntelligentTieringConfiguration),t)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.NextContinuationToken!==void 0&&(n.NextContinuationToken=(0,d.expectString)(r.NextContinuationToken)),n};p.de_ListBucketIntelligentTieringConfigurationsCommand=Yse;var Jse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Qse=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Zse(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.ContinuationToken!==void 0&&(n.ContinuationToken=(0,d.expectString)(r.ContinuationToken)),r.InventoryConfiguration===""?n.InventoryConfigurationList=[]:r.InventoryConfiguration!==void 0&&(n.InventoryConfigurationList=ule((0,d.getArrayIfSingleItem)(r.InventoryConfiguration),t)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.NextContinuationToken!==void 0&&(n.NextContinuationToken=(0,d.expectString)(r.NextContinuationToken)),n};p.de_ListBucketInventoryConfigurationsCommand=Qse;var Zse=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},eie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return tie(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.ContinuationToken!==void 0&&(n.ContinuationToken=(0,d.expectString)(r.ContinuationToken)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.MetricsConfiguration===""?n.MetricsConfigurationList=[]:r.MetricsConfiguration!==void 0&&(n.MetricsConfigurationList=Ale((0,d.getArrayIfSingleItem)(r.MetricsConfiguration),t)),r.NextContinuationToken!==void 0&&(n.NextContinuationToken=(0,d.expectString)(r.NextContinuationToken)),n};p.de_ListBucketMetricsConfigurationsCommand=eie;var tie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},nie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return rie(e,t);let n=(0,d.map)({$metadata:I(e)}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Buckets===""?n.Buckets=[]:r.Buckets!==void 0&&r.Buckets.Bucket!==void 0&&(n.Buckets=Tde((0,d.getArrayIfSingleItem)(r.Buckets.Bucket),t)),r.Owner!==void 0&&(n.Owner=er(r.Owner,t)),n};p.de_ListBucketsCommand=nie;var rie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},oie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return sie(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(r.Bucket)),r.CommonPrefixes===""?n.CommonPrefixes=[]:r.CommonPrefixes!==void 0&&(n.CommonPrefixes=gm((0,d.getArrayIfSingleItem)(r.CommonPrefixes),t)),r.Delimiter!==void 0&&(n.Delimiter=(0,d.expectString)(r.Delimiter)),r.EncodingType!==void 0&&(n.EncodingType=(0,d.expectString)(r.EncodingType)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.KeyMarker!==void 0&&(n.KeyMarker=(0,d.expectString)(r.KeyMarker)),r.MaxUploads!==void 0&&(n.MaxUploads=(0,d.strictParseInt32)(r.MaxUploads)),r.NextKeyMarker!==void 0&&(n.NextKeyMarker=(0,d.expectString)(r.NextKeyMarker)),r.NextUploadIdMarker!==void 0&&(n.NextUploadIdMarker=(0,d.expectString)(r.NextUploadIdMarker)),r.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(r.Prefix)),r.UploadIdMarker!==void 0&&(n.UploadIdMarker=(0,d.expectString)(r.UploadIdMarker)),r.Upload===""?n.Uploads=[]:r.Upload!==void 0&&(n.Uploads=Ile((0,d.getArrayIfSingleItem)(r.Upload),t)),n};p.de_ListMultipartUploadsCommand=oie;var sie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},iie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return aie(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.CommonPrefixes===""?n.CommonPrefixes=[]:r.CommonPrefixes!==void 0&&(n.CommonPrefixes=gm((0,d.getArrayIfSingleItem)(r.CommonPrefixes),t)),r.Contents===""?n.Contents=[]:r.Contents!==void 0&&(n.Contents=fD((0,d.getArrayIfSingleItem)(r.Contents),t)),r.Delimiter!==void 0&&(n.Delimiter=(0,d.expectString)(r.Delimiter)),r.EncodingType!==void 0&&(n.EncodingType=(0,d.expectString)(r.EncodingType)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.Marker!==void 0&&(n.Marker=(0,d.expectString)(r.Marker)),r.MaxKeys!==void 0&&(n.MaxKeys=(0,d.strictParseInt32)(r.MaxKeys)),r.Name!==void 0&&(n.Name=(0,d.expectString)(r.Name)),r.NextMarker!==void 0&&(n.NextMarker=(0,d.expectString)(r.NextMarker)),r.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(r.Prefix)),n};p.de_ListObjectsCommand=iie;var aie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchBucket":case"com.amazonaws.s3#NoSuchBucket":throw await Zq(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},cie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return die(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.CommonPrefixes===""?n.CommonPrefixes=[]:r.CommonPrefixes!==void 0&&(n.CommonPrefixes=gm((0,d.getArrayIfSingleItem)(r.CommonPrefixes),t)),r.Contents===""?n.Contents=[]:r.Contents!==void 0&&(n.Contents=fD((0,d.getArrayIfSingleItem)(r.Contents),t)),r.ContinuationToken!==void 0&&(n.ContinuationToken=(0,d.expectString)(r.ContinuationToken)),r.Delimiter!==void 0&&(n.Delimiter=(0,d.expectString)(r.Delimiter)),r.EncodingType!==void 0&&(n.EncodingType=(0,d.expectString)(r.EncodingType)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.KeyCount!==void 0&&(n.KeyCount=(0,d.strictParseInt32)(r.KeyCount)),r.MaxKeys!==void 0&&(n.MaxKeys=(0,d.strictParseInt32)(r.MaxKeys)),r.Name!==void 0&&(n.Name=(0,d.expectString)(r.Name)),r.NextContinuationToken!==void 0&&(n.NextContinuationToken=(0,d.expectString)(r.NextContinuationToken)),r.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(r.Prefix)),r.StartAfter!==void 0&&(n.StartAfter=(0,d.expectString)(r.StartAfter)),n};p.de_ListObjectsV2Command=cie;var die=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchBucket":case"com.amazonaws.s3#NoSuchBucket":throw await Zq(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},lie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return uie(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.CommonPrefixes===""?n.CommonPrefixes=[]:r.CommonPrefixes!==void 0&&(n.CommonPrefixes=gm((0,d.getArrayIfSingleItem)(r.CommonPrefixes),t)),r.DeleteMarker===""?n.DeleteMarkers=[]:r.DeleteMarker!==void 0&&(n.DeleteMarkers=Vde((0,d.getArrayIfSingleItem)(r.DeleteMarker),t)),r.Delimiter!==void 0&&(n.Delimiter=(0,d.expectString)(r.Delimiter)),r.EncodingType!==void 0&&(n.EncodingType=(0,d.expectString)(r.EncodingType)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.KeyMarker!==void 0&&(n.KeyMarker=(0,d.expectString)(r.KeyMarker)),r.MaxKeys!==void 0&&(n.MaxKeys=(0,d.strictParseInt32)(r.MaxKeys)),r.Name!==void 0&&(n.Name=(0,d.expectString)(r.Name)),r.NextKeyMarker!==void 0&&(n.NextKeyMarker=(0,d.expectString)(r.NextKeyMarker)),r.NextVersionIdMarker!==void 0&&(n.NextVersionIdMarker=(0,d.expectString)(r.NextVersionIdMarker)),r.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(r.Prefix)),r.VersionIdMarker!==void 0&&(n.VersionIdMarker=(0,d.expectString)(r.VersionIdMarker)),r.Version===""?n.Versions=[]:r.Version!==void 0&&(n.Versions=zle((0,d.getArrayIfSingleItem)(r.Version),t)),n};p.de_ListObjectVersionsCommand=lie;var uie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},mie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return pie(e,t);let n=(0,d.map)({$metadata:I(e),AbortDate:[()=>e.headers["x-amz-abort-date"]!==void 0,()=>(0,d.expectNonNull)((0,d.parseRfc7231DateTime)(e.headers["x-amz-abort-date"]))],AbortRuleId:[,e.headers["x-amz-abort-rule-id"]],RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectNonNull)((0,d.expectObject)(await Z(e.body,t)),"body");return r.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(r.Bucket)),r.ChecksumAlgorithm!==void 0&&(n.ChecksumAlgorithm=(0,d.expectString)(r.ChecksumAlgorithm)),r.Initiator!==void 0&&(n.Initiator=lD(r.Initiator,t)),r.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(r.IsTruncated)),r.Key!==void 0&&(n.Key=(0,d.expectString)(r.Key)),r.MaxParts!==void 0&&(n.MaxParts=(0,d.strictParseInt32)(r.MaxParts)),r.NextPartNumberMarker!==void 0&&(n.NextPartNumberMarker=(0,d.expectString)(r.NextPartNumberMarker)),r.Owner!==void 0&&(n.Owner=er(r.Owner,t)),r.PartNumberMarker!==void 0&&(n.PartNumberMarker=(0,d.expectString)(r.PartNumberMarker)),r.Part===""?n.Parts=[]:r.Part!==void 0&&(n.Parts=Vle((0,d.getArrayIfSingleItem)(r.Part),t)),r.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(r.StorageClass)),r.UploadId!==void 0&&(n.UploadId=(0,d.expectString)(r.UploadId)),n};p.de_ListPartsCommand=mie;var pie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},fie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return yie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketAccelerateConfigurationCommand=fie;var yie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},gie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return hie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketAclCommand=gie;var hie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},_ie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Cie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketAnalyticsConfigurationCommand=_ie;var Cie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Sie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return bie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketCorsCommand=Sie;var bie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Eie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Pie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketEncryptionCommand=Eie;var Pie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},vie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return wie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketIntelligentTieringConfigurationCommand=vie;var wie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},xie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return kie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketInventoryConfigurationCommand=xie;var kie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Aie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Oie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketLifecycleConfigurationCommand=Aie;var Oie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Nie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Iie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketLoggingCommand=Nie;var Iie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Rie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Tie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketMetricsConfigurationCommand=Rie;var Tie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Bie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return qie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketNotificationConfigurationCommand=Bie;var qie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Die=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Mie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketOwnershipControlsCommand=Die;var Mie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Fie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Lie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketPolicyCommand=Fie;var Lie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},jie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Uie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketReplicationCommand=jie;var Uie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},zie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Gie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketRequestPaymentCommand=zie;var Gie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Hie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return $ie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketTaggingCommand=Hie;var $ie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Kie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Vie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketVersioningCommand=Kie;var Vie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Xie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Wie(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutBucketWebsiteCommand=Xie;var Wie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Yie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Jie(e,t);let n=(0,d.map)({$metadata:I(e),Expiration:[,e.headers["x-amz-expiration"]],ETag:[,e.headers.etag],ChecksumCRC32:[,e.headers["x-amz-checksum-crc32"]],ChecksumCRC32C:[,e.headers["x-amz-checksum-crc32c"]],ChecksumSHA1:[,e.headers["x-amz-checksum-sha1"]],ChecksumSHA256:[,e.headers["x-amz-checksum-sha256"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],VersionId:[,e.headers["x-amz-version-id"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],SSEKMSEncryptionContext:[,e.headers["x-amz-server-side-encryption-context"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectCommand=Yie;var Jie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},Qie=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Zie(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectAclCommand=Qie;var Zie=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"NoSuchKey":case"com.amazonaws.s3#NoSuchKey":throw await ym(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},eae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return tae(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectLegalHoldCommand=eae;var tae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},nae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return rae(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectLockConfigurationCommand=nae;var rae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},oae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return sae(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectRetentionCommand=oae;var sae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},iae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return aae(e,t);let n=(0,d.map)({$metadata:I(e),VersionId:[,e.headers["x-amz-version-id"]]});return await(0,d.collectBody)(e.body,t),n};p.de_PutObjectTaggingCommand=iae;var aae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},cae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return dae(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_PutPublicAccessBlockCommand=cae;var dae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},lae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return uae(e,t);let n=(0,d.map)({$metadata:I(e),RequestCharged:[,e.headers["x-amz-request-charged"]],RestoreOutputPath:[,e.headers["x-amz-restore-output-path"]]});return await(0,d.collectBody)(e.body,t),n};p.de_RestoreObjectCommand=lae;var uae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body);switch(r){case"ObjectAlreadyInActiveTierError":case"com.amazonaws.s3#ObjectAlreadyInActiveTierError":throw await vae(n,t);default:let o=n.body;return D({output:e,parsedBody:o,errorCode:r})}},mae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return pae(e,t);let n=(0,d.map)({$metadata:I(e)}),r=e.body;return n.Payload=xae(r,t),n};p.de_SelectObjectContentCommand=mae;var pae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},fae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return yae(e,t);let n=(0,d.map)({$metadata:I(e),ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],ETag:[,e.headers.etag],ChecksumCRC32:[,e.headers["x-amz-checksum-crc32"]],ChecksumCRC32C:[,e.headers["x-amz-checksum-crc32c"]],ChecksumSHA1:[,e.headers["x-amz-checksum-sha1"]],ChecksumSHA256:[,e.headers["x-amz-checksum-sha256"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]]});return await(0,d.collectBody)(e.body,t),n};p.de_UploadPartCommand=fae;var yae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},gae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return hae(e,t);let n=(0,d.map)({$metadata:I(e),CopySourceVersionId:[,e.headers["x-amz-copy-source-version-id"]],ServerSideEncryption:[,e.headers["x-amz-server-side-encryption"]],SSECustomerAlgorithm:[,e.headers["x-amz-server-side-encryption-customer-algorithm"]],SSECustomerKeyMD5:[,e.headers["x-amz-server-side-encryption-customer-key-md5"]],SSEKMSKeyId:[,e.headers["x-amz-server-side-encryption-aws-kms-key-id"]],BucketKeyEnabled:[()=>e.headers["x-amz-server-side-encryption-bucket-key-enabled"]!==void 0,()=>(0,d.parseBoolean)(e.headers["x-amz-server-side-encryption-bucket-key-enabled"])],RequestCharged:[,e.headers["x-amz-request-charged"]]}),r=(0,d.expectObject)(await Z(e.body,t));return n.CopyPartResult=Lde(r,t),n};p.de_UploadPartCopyCommand=gae;var hae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},_ae=async(e,t)=>{if(e.statusCode!==200&&e.statusCode>=300)return Cae(e,t);let n=(0,d.map)({$metadata:I(e)});return await(0,d.collectBody)(e.body,t),n};p.de_WriteGetObjectResponseCommand=_ae;var Cae=async(e,t)=>{let n={...e,body:await M(e.body,t)},r=F(e,n.body),o=n.body;return D({output:e,parsedBody:o,errorCode:r})},D=(0,d.withBaseException)(lne.S3ServiceException),Sae=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.BucketAlreadyExists({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},bae=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.BucketAlreadyOwnedByYou({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},Eae=async(e,t)=>{let n=(0,d.map)({}),r=e.body;r.AccessTier!==void 0&&(n.AccessTier=(0,d.expectString)(r.AccessTier)),r.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(r.StorageClass));let o=new St.InvalidObjectState({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},Zq=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.NoSuchBucket({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},ym=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.NoSuchKey({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},Pae=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.NoSuchUpload({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},eD=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.NotFound({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},vae=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new dne.ObjectAlreadyInActiveTierError({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},wae=async(e,t)=>{let n=(0,d.map)({}),r=e.body,o=new St.ObjectNotInActiveTierError({$metadata:I(e),...n});return(0,d.decorateServiceException)(o,e.body)},xae=(e,t)=>t.eventStreamMarshaller.deserialize(e,async n=>n.Records!=null?{Records:await Nae(n.Records,t)}:n.Stats!=null?{Stats:await Iae(n.Stats,t)}:n.Progress!=null?{Progress:await Oae(n.Progress,t)}:n.Cont!=null?{Cont:await kae(n.Cont,t)}:n.End!=null?{End:await Aae(n.End,t)}:{$unknown:e}),kae=async(e,t)=>{let n={},r=await Z(e.body,t);return Object.assign(n,Mde(r,t)),n},Aae=async(e,t)=>{let n={},r=await Z(e.body,t);return Object.assign(n,Yde(r,t)),n},Oae=async(e,t)=>{let n={},r=await Z(e.body,t);return n.Details=Yle(r,t),n},Nae=async(e,t)=>{let n={};return n.Payload=e.body,n},Iae=async(e,t)=>{let n={},r=await Z(e.body,t);return n.Details=Sue(r,t),n},Rae=(e,t)=>{let n=new f.XmlNode("AbortIncompleteMultipartUpload");if(e.DaysAfterInitiation!=null){let r=f.XmlNode.of("DaysAfterInitiation",String(e.DaysAfterInitiation)).withName("DaysAfterInitiation");n.addChildNode(r)}return n},Nq=(e,t)=>{let n=new f.XmlNode("AccelerateConfiguration");if(e.Status!=null){let r=f.XmlNode.of("BucketAccelerateStatus",e.Status).withName("Status");n.addChildNode(r)}return n},fm=(e,t)=>{let n=new f.XmlNode("AccessControlPolicy");if(e.Grants!=null){let r=nD(e.Grants,t),o=new f.XmlNode("AccessControlList");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}if(e.Owner!=null){let r=Mce(e.Owner,t).withName("Owner");n.addChildNode(r)}return n},Tae=(e,t)=>{let n=new f.XmlNode("AccessControlTranslation");if(e.Owner!=null){let r=f.XmlNode.of("OwnerOverride",e.Owner).withName("Owner");n.addChildNode(r)}return n},Bae=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("AllowedHeader",n).withName("member")),qae=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("AllowedMethod",n).withName("member")),Dae=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("AllowedOrigin",n).withName("member")),Mae=(e,t)=>{let n=new f.XmlNode("AnalyticsAndOperator");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}return e.Tags!=null&&Io(e.Tags,t).map(o=>{o=o.withName("Tag"),n.addChildNode(o)}),n},Iq=(e,t)=>{let n=new f.XmlNode("AnalyticsConfiguration");if(e.Id!=null){let r=f.XmlNode.of("AnalyticsId",e.Id).withName("Id");n.addChildNode(r)}if(e.Filter!=null){let r=Lae(e.Filter,t).withName("Filter");n.addChildNode(r)}if(e.StorageClassAnalysis!=null){let r=ude(e.StorageClassAnalysis,t).withName("StorageClassAnalysis");n.addChildNode(r)}return n},Fae=(e,t)=>{let n=new f.XmlNode("AnalyticsExportDestination");if(e.S3BucketDestination!=null){let r=jae(e.S3BucketDestination,t).withName("S3BucketDestination");n.addChildNode(r)}return n},Lae=(e,t)=>{let n=new f.XmlNode("AnalyticsFilter");return St.AnalyticsFilter.visit(e,{Prefix:r=>{let o=f.XmlNode.of("Prefix",r).withName("Prefix");n.addChildNode(o)},Tag:r=>{let o=No(r,t).withName("Tag");n.addChildNode(o)},And:r=>{let o=Mae(r,t).withName("And");n.addChildNode(o)},_:(r,o)=>{if(!(o instanceof f.XmlNode||o instanceof f.XmlText))throw new Error("Unable to serialize unknown union members in XML.");n.addChildNode(new f.XmlNode(r).addChildNode(o))}}),n},jae=(e,t)=>{let n=new f.XmlNode("AnalyticsS3BucketDestination");if(e.Format!=null){let r=f.XmlNode.of("AnalyticsS3ExportFileFormat",e.Format).withName("Format");n.addChildNode(r)}if(e.BucketAccountId!=null){let r=f.XmlNode.of("AccountId",e.BucketAccountId).withName("BucketAccountId");n.addChildNode(r)}if(e.Bucket!=null){let r=f.XmlNode.of("BucketName",e.Bucket).withName("Bucket");n.addChildNode(r)}if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}return n},Rq=(e,t)=>{let n=new f.XmlNode("BucketLifecycleConfiguration");return e.Rules!=null&&vce(e.Rules,t).map(o=>{o=o.withName("Rule"),n.addChildNode(o)}),n},Tq=(e,t)=>{let n=new f.XmlNode("BucketLoggingStatus");if(e.LoggingEnabled!=null){let r=wce(e.LoggingEnabled,t).withName("LoggingEnabled");n.addChildNode(r)}return n},Bq=(e,t)=>{let n=new f.XmlNode("CompletedMultipartUpload");return e.Parts!=null&&zae(e.Parts,t).map(o=>{o=o.withName("Part"),n.addChildNode(o)}),n},Uae=(e,t)=>{let n=new f.XmlNode("CompletedPart");if(e.ETag!=null){let r=f.XmlNode.of("ETag",e.ETag).withName("ETag");n.addChildNode(r)}if(e.ChecksumCRC32!=null){let r=f.XmlNode.of("ChecksumCRC32",e.ChecksumCRC32).withName("ChecksumCRC32");n.addChildNode(r)}if(e.ChecksumCRC32C!=null){let r=f.XmlNode.of("ChecksumCRC32C",e.ChecksumCRC32C).withName("ChecksumCRC32C");n.addChildNode(r)}if(e.ChecksumSHA1!=null){let r=f.XmlNode.of("ChecksumSHA1",e.ChecksumSHA1).withName("ChecksumSHA1");n.addChildNode(r)}if(e.ChecksumSHA256!=null){let r=f.XmlNode.of("ChecksumSHA256",e.ChecksumSHA256).withName("ChecksumSHA256");n.addChildNode(r)}if(e.PartNumber!=null){let r=f.XmlNode.of("PartNumber",String(e.PartNumber)).withName("PartNumber");n.addChildNode(r)}return n},zae=(e,t)=>e.filter(n=>n!=null).map(n=>Uae(n,t).withName("member")),Gae=(e,t)=>{let n=new f.XmlNode("Condition");if(e.HttpErrorCodeReturnedEquals!=null){let r=f.XmlNode.of("HttpErrorCodeReturnedEquals",e.HttpErrorCodeReturnedEquals).withName("HttpErrorCodeReturnedEquals");n.addChildNode(r)}if(e.KeyPrefixEquals!=null){let r=f.XmlNode.of("KeyPrefixEquals",e.KeyPrefixEquals).withName("KeyPrefixEquals");n.addChildNode(r)}return n},qq=(e,t)=>{let n=new f.XmlNode("CORSConfiguration");return e.CORSRules!=null&&$ae(e.CORSRules,t).map(o=>{o=o.withName("CORSRule"),n.addChildNode(o)}),n},Hae=(e,t)=>{let n=new f.XmlNode("CORSRule");if(e.ID!=null){let r=f.XmlNode.of("ID",e.ID).withName("ID");n.addChildNode(r)}if(e.AllowedHeaders!=null&&Bae(e.AllowedHeaders,t).map(o=>{o=o.withName("AllowedHeader"),n.addChildNode(o)}),e.AllowedMethods!=null&&qae(e.AllowedMethods,t).map(o=>{o=o.withName("AllowedMethod"),n.addChildNode(o)}),e.AllowedOrigins!=null&&Dae(e.AllowedOrigins,t).map(o=>{o=o.withName("AllowedOrigin"),n.addChildNode(o)}),e.ExposeHeaders!=null&&nce(e.ExposeHeaders,t).map(o=>{o=o.withName("ExposeHeader"),n.addChildNode(o)}),e.MaxAgeSeconds!=null){let r=f.XmlNode.of("MaxAgeSeconds",String(e.MaxAgeSeconds)).withName("MaxAgeSeconds");n.addChildNode(r)}return n},$ae=(e,t)=>e.filter(n=>n!=null).map(n=>Hae(n,t).withName("member")),Dq=(e,t)=>{let n=new f.XmlNode("CreateBucketConfiguration");if(e.LocationConstraint!=null){let r=f.XmlNode.of("BucketLocationConstraint",e.LocationConstraint).withName("LocationConstraint");n.addChildNode(r)}return n},Kae=(e,t)=>{let n=new f.XmlNode("CSVInput");if(e.FileHeaderInfo!=null){let r=f.XmlNode.of("FileHeaderInfo",e.FileHeaderInfo).withName("FileHeaderInfo");n.addChildNode(r)}if(e.Comments!=null){let r=f.XmlNode.of("Comments",e.Comments).withName("Comments");n.addChildNode(r)}if(e.QuoteEscapeCharacter!=null){let r=f.XmlNode.of("QuoteEscapeCharacter",e.QuoteEscapeCharacter).withName("QuoteEscapeCharacter");n.addChildNode(r)}if(e.RecordDelimiter!=null){let r=f.XmlNode.of("RecordDelimiter",e.RecordDelimiter).withName("RecordDelimiter");n.addChildNode(r)}if(e.FieldDelimiter!=null){let r=f.XmlNode.of("FieldDelimiter",e.FieldDelimiter).withName("FieldDelimiter");n.addChildNode(r)}if(e.QuoteCharacter!=null){let r=f.XmlNode.of("QuoteCharacter",e.QuoteCharacter).withName("QuoteCharacter");n.addChildNode(r)}if(e.AllowQuotedRecordDelimiter!=null){let r=f.XmlNode.of("AllowQuotedRecordDelimiter",String(e.AllowQuotedRecordDelimiter)).withName("AllowQuotedRecordDelimiter");n.addChildNode(r)}return n},Vae=(e,t)=>{let n=new f.XmlNode("CSVOutput");if(e.QuoteFields!=null){let r=f.XmlNode.of("QuoteFields",e.QuoteFields).withName("QuoteFields");n.addChildNode(r)}if(e.QuoteEscapeCharacter!=null){let r=f.XmlNode.of("QuoteEscapeCharacter",e.QuoteEscapeCharacter).withName("QuoteEscapeCharacter");n.addChildNode(r)}if(e.RecordDelimiter!=null){let r=f.XmlNode.of("RecordDelimiter",e.RecordDelimiter).withName("RecordDelimiter");n.addChildNode(r)}if(e.FieldDelimiter!=null){let r=f.XmlNode.of("FieldDelimiter",e.FieldDelimiter).withName("FieldDelimiter");n.addChildNode(r)}if(e.QuoteCharacter!=null){let r=f.XmlNode.of("QuoteCharacter",e.QuoteCharacter).withName("QuoteCharacter");n.addChildNode(r)}return n},Xae=(e,t)=>{let n=new f.XmlNode("DefaultRetention");if(e.Mode!=null){let r=f.XmlNode.of("ObjectLockRetentionMode",e.Mode).withName("Mode");n.addChildNode(r)}if(e.Days!=null){let r=f.XmlNode.of("Days",String(e.Days)).withName("Days");n.addChildNode(r)}if(e.Years!=null){let r=f.XmlNode.of("Years",String(e.Years)).withName("Years");n.addChildNode(r)}return n},Mq=(e,t)=>{let n=new f.XmlNode("Delete");if(e.Objects!=null&&Bce(e.Objects,t).map(o=>{o=o.withName("Object"),n.addChildNode(o)}),e.Quiet!=null){let r=f.XmlNode.of("Quiet",String(e.Quiet)).withName("Quiet");n.addChildNode(r)}return n},Wae=(e,t)=>{let n=new f.XmlNode("DeleteMarkerReplication");if(e.Status!=null){let r=f.XmlNode.of("DeleteMarkerReplicationStatus",e.Status).withName("Status");n.addChildNode(r)}return n},Yae=(e,t)=>{let n=new f.XmlNode("Destination");if(e.Bucket!=null){let r=f.XmlNode.of("BucketName",e.Bucket).withName("Bucket");n.addChildNode(r)}if(e.Account!=null){let r=f.XmlNode.of("AccountId",e.Account).withName("Account");n.addChildNode(r)}if(e.StorageClass!=null){let r=f.XmlNode.of("StorageClass",e.StorageClass).withName("StorageClass");n.addChildNode(r)}if(e.AccessControlTranslation!=null){let r=Tae(e.AccessControlTranslation,t).withName("AccessControlTranslation");n.addChildNode(r)}if(e.EncryptionConfiguration!=null){let r=Qae(e.EncryptionConfiguration,t).withName("EncryptionConfiguration");n.addChildNode(r)}if(e.ReplicationTime!=null){let r=Yce(e.ReplicationTime,t).withName("ReplicationTime");n.addChildNode(r)}if(e.Metrics!=null){let r=kce(e.Metrics,t).withName("Metrics");n.addChildNode(r)}return n},Jae=(e,t)=>{let n=new f.XmlNode("Encryption");if(e.EncryptionType!=null){let r=f.XmlNode.of("ServerSideEncryption",e.EncryptionType).withName("EncryptionType");n.addChildNode(r)}if(e.KMSKeyId!=null){let r=f.XmlNode.of("SSEKMSKeyId",e.KMSKeyId).withName("KMSKeyId");n.addChildNode(r)}if(e.KMSContext!=null){let r=f.XmlNode.of("KMSContext",e.KMSContext).withName("KMSContext");n.addChildNode(r)}return n},Qae=(e,t)=>{let n=new f.XmlNode("EncryptionConfiguration");if(e.ReplicaKmsKeyID!=null){let r=f.XmlNode.of("ReplicaKmsKeyID",e.ReplicaKmsKeyID).withName("ReplicaKmsKeyID");n.addChildNode(r)}return n},Zae=(e,t)=>{let n=new f.XmlNode("ErrorDocument");if(e.Key!=null){let r=f.XmlNode.of("ObjectKey",e.Key).withName("Key");n.addChildNode(r)}return n},ece=(e,t)=>new f.XmlNode("EventBridgeConfiguration"),ch=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("Event",n).withName("member")),tce=(e,t)=>{let n=new f.XmlNode("ExistingObjectReplication");if(e.Status!=null){let r=f.XmlNode.of("ExistingObjectReplicationStatus",e.Status).withName("Status");n.addChildNode(r)}return n},nce=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("ExposeHeader",n).withName("member")),rce=(e,t)=>{let n=new f.XmlNode("FilterRule");if(e.Name!=null){let r=f.XmlNode.of("FilterRuleName",e.Name).withName("Name");n.addChildNode(r)}if(e.Value!=null){let r=f.XmlNode.of("FilterRuleValue",e.Value).withName("Value");n.addChildNode(r)}return n},oce=(e,t)=>e.filter(n=>n!=null).map(n=>rce(n,t).withName("member")),sce=(e,t)=>{let n=new f.XmlNode("GlacierJobParameters");if(e.Tier!=null){let r=f.XmlNode.of("Tier",e.Tier).withName("Tier");n.addChildNode(r)}return n},ice=(e,t)=>{let n=new f.XmlNode("Grant");if(e.Grantee!=null){let r=tD(e.Grantee,t).withName("Grantee");r.addAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance"),n.addChildNode(r)}if(e.Permission!=null){let r=f.XmlNode.of("Permission",e.Permission).withName("Permission");n.addChildNode(r)}return n},tD=(e,t)=>{let n=new f.XmlNode("Grantee");if(e.DisplayName!=null){let r=f.XmlNode.of("DisplayName",e.DisplayName).withName("DisplayName");n.addChildNode(r)}if(e.EmailAddress!=null){let r=f.XmlNode.of("EmailAddress",e.EmailAddress).withName("EmailAddress");n.addChildNode(r)}if(e.ID!=null){let r=f.XmlNode.of("ID",e.ID).withName("ID");n.addChildNode(r)}if(e.URI!=null){let r=f.XmlNode.of("URI",e.URI).withName("URI");n.addChildNode(r)}return e.Type!=null&&n.addAttribute("xsi:type",e.Type),n},nD=(e,t)=>e.filter(n=>n!=null).map(n=>ice(n,t).withName("Grant")),ace=(e,t)=>{let n=new f.XmlNode("IndexDocument");if(e.Suffix!=null){let r=f.XmlNode.of("Suffix",e.Suffix).withName("Suffix");n.addChildNode(r)}return n},rD=(e,t)=>{let n=new f.XmlNode("InputSerialization");if(e.CSV!=null){let r=Kae(e.CSV,t).withName("CSV");n.addChildNode(r)}if(e.CompressionType!=null){let r=f.XmlNode.of("CompressionType",e.CompressionType).withName("CompressionType");n.addChildNode(r)}if(e.JSON!=null){let r=gce(e.JSON,t).withName("JSON");n.addChildNode(r)}if(e.Parquet!=null){let r=jce(e.Parquet,t).withName("Parquet");n.addChildNode(r)}return n},cce=(e,t)=>{let n=new f.XmlNode("IntelligentTieringAndOperator");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}return e.Tags!=null&&Io(e.Tags,t).map(o=>{o=o.withName("Tag"),n.addChildNode(o)}),n},Fq=(e,t)=>{let n=new f.XmlNode("IntelligentTieringConfiguration");if(e.Id!=null){let r=f.XmlNode.of("IntelligentTieringId",e.Id).withName("Id");n.addChildNode(r)}if(e.Filter!=null){let r=dce(e.Filter,t).withName("Filter");n.addChildNode(r)}if(e.Status!=null){let r=f.XmlNode.of("IntelligentTieringStatus",e.Status).withName("Status");n.addChildNode(r)}return e.Tierings!=null&&gde(e.Tierings,t).map(o=>{o=o.withName("Tiering"),n.addChildNode(o)}),n},dce=(e,t)=>{let n=new f.XmlNode("IntelligentTieringFilter");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Tag!=null){let r=No(e.Tag,t).withName("Tag");n.addChildNode(r)}if(e.And!=null){let r=cce(e.And,t).withName("And");n.addChildNode(r)}return n},Lq=(e,t)=>{let n=new f.XmlNode("InventoryConfiguration");if(e.Destination!=null){let r=lce(e.Destination,t).withName("Destination");n.addChildNode(r)}if(e.IsEnabled!=null){let r=f.XmlNode.of("IsEnabled",String(e.IsEnabled)).withName("IsEnabled");n.addChildNode(r)}if(e.Filter!=null){let r=mce(e.Filter,t).withName("Filter");n.addChildNode(r)}if(e.Id!=null){let r=f.XmlNode.of("InventoryId",e.Id).withName("Id");n.addChildNode(r)}if(e.IncludedObjectVersions!=null){let r=f.XmlNode.of("InventoryIncludedObjectVersions",e.IncludedObjectVersions).withName("IncludedObjectVersions");n.addChildNode(r)}if(e.OptionalFields!=null){let r=pce(e.OptionalFields,t),o=new f.XmlNode("OptionalFields");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}if(e.Schedule!=null){let r=yce(e.Schedule,t).withName("Schedule");n.addChildNode(r)}return n},lce=(e,t)=>{let n=new f.XmlNode("InventoryDestination");if(e.S3BucketDestination!=null){let r=fce(e.S3BucketDestination,t).withName("S3BucketDestination");n.addChildNode(r)}return n},uce=(e,t)=>{let n=new f.XmlNode("InventoryEncryption");if(e.SSES3!=null){let r=lde(e.SSES3,t).withName("SSE-S3");n.addChildNode(r)}if(e.SSEKMS!=null){let r=cde(e.SSEKMS,t).withName("SSE-KMS");n.addChildNode(r)}return n},mce=(e,t)=>{let n=new f.XmlNode("InventoryFilter");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}return n},pce=(e,t)=>e.filter(n=>n!=null).map(n=>f.XmlNode.of("InventoryOptionalField",n).withName("Field")),fce=(e,t)=>{let n=new f.XmlNode("InventoryS3BucketDestination");if(e.AccountId!=null){let r=f.XmlNode.of("AccountId",e.AccountId).withName("AccountId");n.addChildNode(r)}if(e.Bucket!=null){let r=f.XmlNode.of("BucketName",e.Bucket).withName("Bucket");n.addChildNode(r)}if(e.Format!=null){let r=f.XmlNode.of("InventoryFormat",e.Format).withName("Format");n.addChildNode(r)}if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Encryption!=null){let r=uce(e.Encryption,t).withName("Encryption");n.addChildNode(r)}return n},yce=(e,t)=>{let n=new f.XmlNode("InventorySchedule");if(e.Frequency!=null){let r=f.XmlNode.of("InventoryFrequency",e.Frequency).withName("Frequency");n.addChildNode(r)}return n},gce=(e,t)=>{let n=new f.XmlNode("JSONInput");if(e.Type!=null){let r=f.XmlNode.of("JSONType",e.Type).withName("Type");n.addChildNode(r)}return n},hce=(e,t)=>{let n=new f.XmlNode("JSONOutput");if(e.RecordDelimiter!=null){let r=f.XmlNode.of("RecordDelimiter",e.RecordDelimiter).withName("RecordDelimiter");n.addChildNode(r)}return n},_ce=(e,t)=>{let n=new f.XmlNode("LambdaFunctionConfiguration");if(e.Id!=null){let r=f.XmlNode.of("NotificationId",e.Id).withName("Id");n.addChildNode(r)}if(e.LambdaFunctionArn!=null){let r=f.XmlNode.of("LambdaFunctionArn",e.LambdaFunctionArn).withName("CloudFunction");n.addChildNode(r)}if(e.Events!=null&&ch(e.Events,t).map(o=>{o=o.withName("Event"),n.addChildNode(o)}),e.Filter!=null){let r=dh(e.Filter,t).withName("Filter");n.addChildNode(r)}return n},Cce=(e,t)=>e.filter(n=>n!=null).map(n=>_ce(n,t).withName("member")),Sce=(e,t)=>{let n=new f.XmlNode("LifecycleExpiration");if(e.Date!=null){let r=f.XmlNode.of("Date",(e.Date.toISOString().split(".")[0]+"Z").toString()).withName("Date");n.addChildNode(r)}if(e.Days!=null){let r=f.XmlNode.of("Days",String(e.Days)).withName("Days");n.addChildNode(r)}if(e.ExpiredObjectDeleteMarker!=null){let r=f.XmlNode.of("ExpiredObjectDeleteMarker",String(e.ExpiredObjectDeleteMarker)).withName("ExpiredObjectDeleteMarker");n.addChildNode(r)}return n},bce=(e,t)=>{let n=new f.XmlNode("LifecycleRule");if(e.Expiration!=null){let r=Sce(e.Expiration,t).withName("Expiration");n.addChildNode(r)}if(e.ID!=null){let r=f.XmlNode.of("ID",e.ID).withName("ID");n.addChildNode(r)}if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Filter!=null){let r=Pce(e.Filter,t).withName("Filter");n.addChildNode(r)}if(e.Status!=null){let r=f.XmlNode.of("ExpirationStatus",e.Status).withName("Status");n.addChildNode(r)}if(e.Transitions!=null&&Sde(e.Transitions,t).map(o=>{o=o.withName("Transition"),n.addChildNode(o)}),e.NoncurrentVersionTransitions!=null&&Rce(e.NoncurrentVersionTransitions,t).map(o=>{o=o.withName("NoncurrentVersionTransition"),n.addChildNode(o)}),e.NoncurrentVersionExpiration!=null){let r=Nce(e.NoncurrentVersionExpiration,t).withName("NoncurrentVersionExpiration");n.addChildNode(r)}if(e.AbortIncompleteMultipartUpload!=null){let r=Rae(e.AbortIncompleteMultipartUpload,t).withName("AbortIncompleteMultipartUpload");n.addChildNode(r)}return n},Ece=(e,t)=>{let n=new f.XmlNode("LifecycleRuleAndOperator");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Tags!=null&&Io(e.Tags,t).map(o=>{o=o.withName("Tag"),n.addChildNode(o)}),e.ObjectSizeGreaterThan!=null){let r=f.XmlNode.of("ObjectSizeGreaterThanBytes",String(e.ObjectSizeGreaterThan)).withName("ObjectSizeGreaterThan");n.addChildNode(r)}if(e.ObjectSizeLessThan!=null){let r=f.XmlNode.of("ObjectSizeLessThanBytes",String(e.ObjectSizeLessThan)).withName("ObjectSizeLessThan");n.addChildNode(r)}return n},Pce=(e,t)=>{let n=new f.XmlNode("LifecycleRuleFilter");return St.LifecycleRuleFilter.visit(e,{Prefix:r=>{let o=f.XmlNode.of("Prefix",r).withName("Prefix");n.addChildNode(o)},Tag:r=>{let o=No(r,t).withName("Tag");n.addChildNode(o)},ObjectSizeGreaterThan:r=>{let o=f.XmlNode.of("ObjectSizeGreaterThanBytes",String(r)).withName("ObjectSizeGreaterThan");n.addChildNode(o)},ObjectSizeLessThan:r=>{let o=f.XmlNode.of("ObjectSizeLessThanBytes",String(r)).withName("ObjectSizeLessThan");n.addChildNode(o)},And:r=>{let o=Ece(r,t).withName("And");n.addChildNode(o)},_:(r,o)=>{if(!(o instanceof f.XmlNode||o instanceof f.XmlText))throw new Error("Unable to serialize unknown union members in XML.");n.addChildNode(new f.XmlNode(r).addChildNode(o))}}),n},vce=(e,t)=>e.filter(n=>n!=null).map(n=>bce(n,t).withName("member")),wce=(e,t)=>{let n=new f.XmlNode("LoggingEnabled");if(e.TargetBucket!=null){let r=f.XmlNode.of("TargetBucket",e.TargetBucket).withName("TargetBucket");n.addChildNode(r)}if(e.TargetGrants!=null){let r=fde(e.TargetGrants,t),o=new f.XmlNode("TargetGrants");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}if(e.TargetPrefix!=null){let r=f.XmlNode.of("TargetPrefix",e.TargetPrefix).withName("TargetPrefix");n.addChildNode(r)}return n},xce=(e,t)=>{let n=new f.XmlNode("MetadataEntry");if(e.Name!=null){let r=f.XmlNode.of("MetadataKey",e.Name).withName("Name");n.addChildNode(r)}if(e.Value!=null){let r=f.XmlNode.of("MetadataValue",e.Value).withName("Value");n.addChildNode(r)}return n},kce=(e,t)=>{let n=new f.XmlNode("Metrics");if(e.Status!=null){let r=f.XmlNode.of("MetricsStatus",e.Status).withName("Status");n.addChildNode(r)}if(e.EventThreshold!=null){let r=sD(e.EventThreshold,t).withName("EventThreshold");n.addChildNode(r)}return n},Ace=(e,t)=>{let n=new f.XmlNode("MetricsAndOperator");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Tags!=null&&Io(e.Tags,t).map(o=>{o=o.withName("Tag"),n.addChildNode(o)}),e.AccessPointArn!=null){let r=f.XmlNode.of("AccessPointArn",e.AccessPointArn).withName("AccessPointArn");n.addChildNode(r)}return n},jq=(e,t)=>{let n=new f.XmlNode("MetricsConfiguration");if(e.Id!=null){let r=f.XmlNode.of("MetricsId",e.Id).withName("Id");n.addChildNode(r)}if(e.Filter!=null){let r=Oce(e.Filter,t).withName("Filter");n.addChildNode(r)}return n},Oce=(e,t)=>{let n=new f.XmlNode("MetricsFilter");return St.MetricsFilter.visit(e,{Prefix:r=>{let o=f.XmlNode.of("Prefix",r).withName("Prefix");n.addChildNode(o)},Tag:r=>{let o=No(r,t).withName("Tag");n.addChildNode(o)},AccessPointArn:r=>{let o=f.XmlNode.of("AccessPointArn",r).withName("AccessPointArn");n.addChildNode(o)},And:r=>{let o=Ace(r,t).withName("And");n.addChildNode(o)},_:(r,o)=>{if(!(o instanceof f.XmlNode||o instanceof f.XmlText))throw new Error("Unable to serialize unknown union members in XML.");n.addChildNode(new f.XmlNode(r).addChildNode(o))}}),n},Nce=(e,t)=>{let n=new f.XmlNode("NoncurrentVersionExpiration");if(e.NoncurrentDays!=null){let r=f.XmlNode.of("Days",String(e.NoncurrentDays)).withName("NoncurrentDays");n.addChildNode(r)}if(e.NewerNoncurrentVersions!=null){let r=f.XmlNode.of("VersionCount",String(e.NewerNoncurrentVersions)).withName("NewerNoncurrentVersions");n.addChildNode(r)}return n},Ice=(e,t)=>{let n=new f.XmlNode("NoncurrentVersionTransition");if(e.NoncurrentDays!=null){let r=f.XmlNode.of("Days",String(e.NoncurrentDays)).withName("NoncurrentDays");n.addChildNode(r)}if(e.StorageClass!=null){let r=f.XmlNode.of("TransitionStorageClass",e.StorageClass).withName("StorageClass");n.addChildNode(r)}if(e.NewerNoncurrentVersions!=null){let r=f.XmlNode.of("VersionCount",String(e.NewerNoncurrentVersions)).withName("NewerNoncurrentVersions");n.addChildNode(r)}return n},Rce=(e,t)=>e.filter(n=>n!=null).map(n=>Ice(n,t).withName("member")),Uq=(e,t)=>{let n=new f.XmlNode("NotificationConfiguration");if(e.TopicConfigurations!=null&&_de(e.TopicConfigurations,t).map(o=>{o=o.withName("TopicConfiguration"),n.addChildNode(o)}),e.QueueConfigurations!=null&&zce(e.QueueConfigurations,t).map(o=>{o=o.withName("QueueConfiguration"),n.addChildNode(o)}),e.LambdaFunctionConfigurations!=null&&Cce(e.LambdaFunctionConfigurations,t).map(o=>{o=o.withName("CloudFunctionConfiguration"),n.addChildNode(o)}),e.EventBridgeConfiguration!=null){let r=ece(e.EventBridgeConfiguration,t).withName("EventBridgeConfiguration");n.addChildNode(r)}return n},dh=(e,t)=>{let n=new f.XmlNode("NotificationConfigurationFilter");if(e.Key!=null){let r=ede(e.Key,t).withName("S3Key");n.addChildNode(r)}return n},Tce=(e,t)=>{let n=new f.XmlNode("ObjectIdentifier");if(e.Key!=null){let r=f.XmlNode.of("ObjectKey",e.Key).withName("Key");n.addChildNode(r)}if(e.VersionId!=null){let r=f.XmlNode.of("ObjectVersionId",e.VersionId).withName("VersionId");n.addChildNode(r)}return n},Bce=(e,t)=>e.filter(n=>n!=null).map(n=>Tce(n,t).withName("member")),zq=(e,t)=>{let n=new f.XmlNode("ObjectLockConfiguration");if(e.ObjectLockEnabled!=null){let r=f.XmlNode.of("ObjectLockEnabled",e.ObjectLockEnabled).withName("ObjectLockEnabled");n.addChildNode(r)}if(e.Rule!=null){let r=qce(e.Rule,t).withName("Rule");n.addChildNode(r)}return n},Gq=(e,t)=>{let n=new f.XmlNode("ObjectLockLegalHold");if(e.Status!=null){let r=f.XmlNode.of("ObjectLockLegalHoldStatus",e.Status).withName("Status");n.addChildNode(r)}return n},Hq=(e,t)=>{let n=new f.XmlNode("ObjectLockRetention");if(e.Mode!=null){let r=f.XmlNode.of("ObjectLockRetentionMode",e.Mode).withName("Mode");n.addChildNode(r)}if(e.RetainUntilDate!=null){let r=f.XmlNode.of("Date",(e.RetainUntilDate.toISOString().split(".")[0]+"Z").toString()).withName("RetainUntilDate");n.addChildNode(r)}return n},qce=(e,t)=>{let n=new f.XmlNode("ObjectLockRule");if(e.DefaultRetention!=null){let r=Xae(e.DefaultRetention,t).withName("DefaultRetention");n.addChildNode(r)}return n},Dce=(e,t)=>{let n=new f.XmlNode("OutputLocation");if(e.S3!=null){let r=tde(e.S3,t).withName("S3");n.addChildNode(r)}return n},oD=(e,t)=>{let n=new f.XmlNode("OutputSerialization");if(e.CSV!=null){let r=Vae(e.CSV,t).withName("CSV");n.addChildNode(r)}if(e.JSON!=null){let r=hce(e.JSON,t).withName("JSON");n.addChildNode(r)}return n},Mce=(e,t)=>{let n=new f.XmlNode("Owner");if(e.DisplayName!=null){let r=f.XmlNode.of("DisplayName",e.DisplayName).withName("DisplayName");n.addChildNode(r)}if(e.ID!=null){let r=f.XmlNode.of("ID",e.ID).withName("ID");n.addChildNode(r)}return n},$q=(e,t)=>{let n=new f.XmlNode("OwnershipControls");return e.Rules!=null&&Lce(e.Rules,t).map(o=>{o=o.withName("Rule"),n.addChildNode(o)}),n},Fce=(e,t)=>{let n=new f.XmlNode("OwnershipControlsRule");if(e.ObjectOwnership!=null){let r=f.XmlNode.of("ObjectOwnership",e.ObjectOwnership).withName("ObjectOwnership");n.addChildNode(r)}return n},Lce=(e,t)=>e.filter(n=>n!=null).map(n=>Fce(n,t).withName("member")),jce=(e,t)=>new f.XmlNode("ParquetInput"),Kq=(e,t)=>{let n=new f.XmlNode("PublicAccessBlockConfiguration");if(e.BlockPublicAcls!=null){let r=f.XmlNode.of("Setting",String(e.BlockPublicAcls)).withName("BlockPublicAcls");n.addChildNode(r)}if(e.IgnorePublicAcls!=null){let r=f.XmlNode.of("Setting",String(e.IgnorePublicAcls)).withName("IgnorePublicAcls");n.addChildNode(r)}if(e.BlockPublicPolicy!=null){let r=f.XmlNode.of("Setting",String(e.BlockPublicPolicy)).withName("BlockPublicPolicy");n.addChildNode(r)}if(e.RestrictPublicBuckets!=null){let r=f.XmlNode.of("Setting",String(e.RestrictPublicBuckets)).withName("RestrictPublicBuckets");n.addChildNode(r)}return n},Uce=(e,t)=>{let n=new f.XmlNode("QueueConfiguration");if(e.Id!=null){let r=f.XmlNode.of("NotificationId",e.Id).withName("Id");n.addChildNode(r)}if(e.QueueArn!=null){let r=f.XmlNode.of("QueueArn",e.QueueArn).withName("Queue");n.addChildNode(r)}if(e.Events!=null&&ch(e.Events,t).map(o=>{o=o.withName("Event"),n.addChildNode(o)}),e.Filter!=null){let r=dh(e.Filter,t).withName("Filter");n.addChildNode(r)}return n},zce=(e,t)=>e.filter(n=>n!=null).map(n=>Uce(n,t).withName("member")),Gce=(e,t)=>{let n=new f.XmlNode("Redirect");if(e.HostName!=null){let r=f.XmlNode.of("HostName",e.HostName).withName("HostName");n.addChildNode(r)}if(e.HttpRedirectCode!=null){let r=f.XmlNode.of("HttpRedirectCode",e.HttpRedirectCode).withName("HttpRedirectCode");n.addChildNode(r)}if(e.Protocol!=null){let r=f.XmlNode.of("Protocol",e.Protocol).withName("Protocol");n.addChildNode(r)}if(e.ReplaceKeyPrefixWith!=null){let r=f.XmlNode.of("ReplaceKeyPrefixWith",e.ReplaceKeyPrefixWith).withName("ReplaceKeyPrefixWith");n.addChildNode(r)}if(e.ReplaceKeyWith!=null){let r=f.XmlNode.of("ReplaceKeyWith",e.ReplaceKeyWith).withName("ReplaceKeyWith");n.addChildNode(r)}return n},Hce=(e,t)=>{let n=new f.XmlNode("RedirectAllRequestsTo");if(e.HostName!=null){let r=f.XmlNode.of("HostName",e.HostName).withName("HostName");n.addChildNode(r)}if(e.Protocol!=null){let r=f.XmlNode.of("Protocol",e.Protocol).withName("Protocol");n.addChildNode(r)}return n},$ce=(e,t)=>{let n=new f.XmlNode("ReplicaModifications");if(e.Status!=null){let r=f.XmlNode.of("ReplicaModificationsStatus",e.Status).withName("Status");n.addChildNode(r)}return n},Vq=(e,t)=>{let n=new f.XmlNode("ReplicationConfiguration");if(e.Role!=null){let r=f.XmlNode.of("Role",e.Role).withName("Role");n.addChildNode(r)}return e.Rules!=null&&Wce(e.Rules,t).map(o=>{o=o.withName("Rule"),n.addChildNode(o)}),n},Kce=(e,t)=>{let n=new f.XmlNode("ReplicationRule");if(e.ID!=null){let r=f.XmlNode.of("ID",e.ID).withName("ID");n.addChildNode(r)}if(e.Priority!=null){let r=f.XmlNode.of("Priority",String(e.Priority)).withName("Priority");n.addChildNode(r)}if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Filter!=null){let r=Xce(e.Filter,t).withName("Filter");n.addChildNode(r)}if(e.Status!=null){let r=f.XmlNode.of("ReplicationRuleStatus",e.Status).withName("Status");n.addChildNode(r)}if(e.SourceSelectionCriteria!=null){let r=ade(e.SourceSelectionCriteria,t).withName("SourceSelectionCriteria");n.addChildNode(r)}if(e.ExistingObjectReplication!=null){let r=tce(e.ExistingObjectReplication,t).withName("ExistingObjectReplication");n.addChildNode(r)}if(e.Destination!=null){let r=Yae(e.Destination,t).withName("Destination");n.addChildNode(r)}if(e.DeleteMarkerReplication!=null){let r=Wae(e.DeleteMarkerReplication,t).withName("DeleteMarkerReplication");n.addChildNode(r)}return n},Vce=(e,t)=>{let n=new f.XmlNode("ReplicationRuleAndOperator");if(e.Prefix!=null){let r=f.XmlNode.of("Prefix",e.Prefix).withName("Prefix");n.addChildNode(r)}return e.Tags!=null&&Io(e.Tags,t).map(o=>{o=o.withName("Tag"),n.addChildNode(o)}),n},Xce=(e,t)=>{let n=new f.XmlNode("ReplicationRuleFilter");return St.ReplicationRuleFilter.visit(e,{Prefix:r=>{let o=f.XmlNode.of("Prefix",r).withName("Prefix");n.addChildNode(o)},Tag:r=>{let o=No(r,t).withName("Tag");n.addChildNode(o)},And:r=>{let o=Vce(r,t).withName("And");n.addChildNode(o)},_:(r,o)=>{if(!(o instanceof f.XmlNode||o instanceof f.XmlText))throw new Error("Unable to serialize unknown union members in XML.");n.addChildNode(new f.XmlNode(r).addChildNode(o))}}),n},Wce=(e,t)=>e.filter(n=>n!=null).map(n=>Kce(n,t).withName("member")),Yce=(e,t)=>{let n=new f.XmlNode("ReplicationTime");if(e.Status!=null){let r=f.XmlNode.of("ReplicationTimeStatus",e.Status).withName("Status");n.addChildNode(r)}if(e.Time!=null){let r=sD(e.Time,t).withName("Time");n.addChildNode(r)}return n},sD=(e,t)=>{let n=new f.XmlNode("ReplicationTimeValue");if(e.Minutes!=null){let r=f.XmlNode.of("Minutes",String(e.Minutes)).withName("Minutes");n.addChildNode(r)}return n},Xq=(e,t)=>{let n=new f.XmlNode("RequestPaymentConfiguration");if(e.Payer!=null){let r=f.XmlNode.of("Payer",e.Payer).withName("Payer");n.addChildNode(r)}return n},Jce=(e,t)=>{let n=new f.XmlNode("RequestProgress");if(e.Enabled!=null){let r=f.XmlNode.of("EnableRequestProgress",String(e.Enabled)).withName("Enabled");n.addChildNode(r)}return n},Wq=(e,t)=>{let n=new f.XmlNode("RestoreRequest");if(e.Days!=null){let r=f.XmlNode.of("Days",String(e.Days)).withName("Days");n.addChildNode(r)}if(e.GlacierJobParameters!=null){let r=sce(e.GlacierJobParameters,t).withName("GlacierJobParameters");n.addChildNode(r)}if(e.Type!=null){let r=f.XmlNode.of("RestoreRequestType",e.Type).withName("Type");n.addChildNode(r)}if(e.Tier!=null){let r=f.XmlNode.of("Tier",e.Tier).withName("Tier");n.addChildNode(r)}if(e.Description!=null){let r=f.XmlNode.of("Description",e.Description).withName("Description");n.addChildNode(r)}if(e.SelectParameters!=null){let r=rde(e.SelectParameters,t).withName("SelectParameters");n.addChildNode(r)}if(e.OutputLocation!=null){let r=Dce(e.OutputLocation,t).withName("OutputLocation");n.addChildNode(r)}return n},Qce=(e,t)=>{let n=new f.XmlNode("RoutingRule");if(e.Condition!=null){let r=Gae(e.Condition,t).withName("Condition");n.addChildNode(r)}if(e.Redirect!=null){let r=Gce(e.Redirect,t).withName("Redirect");n.addChildNode(r)}return n},Zce=(e,t)=>e.filter(n=>n!=null).map(n=>Qce(n,t).withName("RoutingRule")),ede=(e,t)=>{let n=new f.XmlNode("S3KeyFilter");return e.FilterRules!=null&&oce(e.FilterRules,t).map(o=>{o=o.withName("FilterRule"),n.addChildNode(o)}),n},tde=(e,t)=>{let n=new f.XmlNode("S3Location");if(e.BucketName!=null){let r=f.XmlNode.of("BucketName",e.BucketName).withName("BucketName");n.addChildNode(r)}if(e.Prefix!=null){let r=f.XmlNode.of("LocationPrefix",e.Prefix).withName("Prefix");n.addChildNode(r)}if(e.Encryption!=null){let r=Jae(e.Encryption,t).withName("Encryption");n.addChildNode(r)}if(e.CannedACL!=null){let r=f.XmlNode.of("ObjectCannedACL",e.CannedACL).withName("CannedACL");n.addChildNode(r)}if(e.AccessControlList!=null){let r=nD(e.AccessControlList,t),o=new f.XmlNode("AccessControlList");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}if(e.Tagging!=null){let r=Ua(e.Tagging,t).withName("Tagging");n.addChildNode(r)}if(e.UserMetadata!=null){let r=bde(e.UserMetadata,t),o=new f.XmlNode("UserMetadata");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}if(e.StorageClass!=null){let r=f.XmlNode.of("StorageClass",e.StorageClass).withName("StorageClass");n.addChildNode(r)}return n},nde=(e,t)=>{let n=new f.XmlNode("ScanRange");if(e.Start!=null){let r=f.XmlNode.of("Start",String(e.Start)).withName("Start");n.addChildNode(r)}if(e.End!=null){let r=f.XmlNode.of("End",String(e.End)).withName("End");n.addChildNode(r)}return n},rde=(e,t)=>{let n=new f.XmlNode("SelectParameters");if(e.InputSerialization!=null){let r=rD(e.InputSerialization,t).withName("InputSerialization");n.addChildNode(r)}if(e.ExpressionType!=null){let r=f.XmlNode.of("ExpressionType",e.ExpressionType).withName("ExpressionType");n.addChildNode(r)}if(e.Expression!=null){let r=f.XmlNode.of("Expression",e.Expression).withName("Expression");n.addChildNode(r)}if(e.OutputSerialization!=null){let r=oD(e.OutputSerialization,t).withName("OutputSerialization");n.addChildNode(r)}return n},ode=(e,t)=>{let n=new f.XmlNode("ServerSideEncryptionByDefault");if(e.SSEAlgorithm!=null){let r=f.XmlNode.of("ServerSideEncryption",e.SSEAlgorithm).withName("SSEAlgorithm");n.addChildNode(r)}if(e.KMSMasterKeyID!=null){let r=f.XmlNode.of("SSEKMSKeyId",e.KMSMasterKeyID).withName("KMSMasterKeyID");n.addChildNode(r)}return n},Yq=(e,t)=>{let n=new f.XmlNode("ServerSideEncryptionConfiguration");return e.Rules!=null&&ide(e.Rules,t).map(o=>{o=o.withName("Rule"),n.addChildNode(o)}),n},sde=(e,t)=>{let n=new f.XmlNode("ServerSideEncryptionRule");if(e.ApplyServerSideEncryptionByDefault!=null){let r=ode(e.ApplyServerSideEncryptionByDefault,t).withName("ApplyServerSideEncryptionByDefault");n.addChildNode(r)}if(e.BucketKeyEnabled!=null){let r=f.XmlNode.of("BucketKeyEnabled",String(e.BucketKeyEnabled)).withName("BucketKeyEnabled");n.addChildNode(r)}return n},ide=(e,t)=>e.filter(n=>n!=null).map(n=>sde(n,t).withName("member")),ade=(e,t)=>{let n=new f.XmlNode("SourceSelectionCriteria");if(e.SseKmsEncryptedObjects!=null){let r=dde(e.SseKmsEncryptedObjects,t).withName("SseKmsEncryptedObjects");n.addChildNode(r)}if(e.ReplicaModifications!=null){let r=$ce(e.ReplicaModifications,t).withName("ReplicaModifications");n.addChildNode(r)}return n},cde=(e,t)=>{let n=new f.XmlNode("SSE-KMS");if(e.KeyId!=null){let r=f.XmlNode.of("SSEKMSKeyId",e.KeyId).withName("KeyId");n.addChildNode(r)}return n},dde=(e,t)=>{let n=new f.XmlNode("SseKmsEncryptedObjects");if(e.Status!=null){let r=f.XmlNode.of("SseKmsEncryptedObjectsStatus",e.Status).withName("Status");n.addChildNode(r)}return n},lde=(e,t)=>new f.XmlNode("SSE-S3"),ude=(e,t)=>{let n=new f.XmlNode("StorageClassAnalysis");if(e.DataExport!=null){let r=mde(e.DataExport,t).withName("DataExport");n.addChildNode(r)}return n},mde=(e,t)=>{let n=new f.XmlNode("StorageClassAnalysisDataExport");if(e.OutputSchemaVersion!=null){let r=f.XmlNode.of("StorageClassAnalysisSchemaVersion",e.OutputSchemaVersion).withName("OutputSchemaVersion");n.addChildNode(r)}if(e.Destination!=null){let r=Fae(e.Destination,t).withName("Destination");n.addChildNode(r)}return n},No=(e,t)=>{let n=new f.XmlNode("Tag");if(e.Key!=null){let r=f.XmlNode.of("ObjectKey",e.Key).withName("Key");n.addChildNode(r)}if(e.Value!=null){let r=f.XmlNode.of("Value",e.Value).withName("Value");n.addChildNode(r)}return n},Ua=(e,t)=>{let n=new f.XmlNode("Tagging");if(e.TagSet!=null){let r=Io(e.TagSet,t),o=new f.XmlNode("TagSet");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}return n},Io=(e,t)=>e.filter(n=>n!=null).map(n=>No(n,t).withName("Tag")),pde=(e,t)=>{let n=new f.XmlNode("TargetGrant");if(e.Grantee!=null){let r=tD(e.Grantee,t).withName("Grantee");r.addAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance"),n.addChildNode(r)}if(e.Permission!=null){let r=f.XmlNode.of("BucketLogsPermission",e.Permission).withName("Permission");n.addChildNode(r)}return n},fde=(e,t)=>e.filter(n=>n!=null).map(n=>pde(n,t).withName("Grant")),yde=(e,t)=>{let n=new f.XmlNode("Tiering");if(e.Days!=null){let r=f.XmlNode.of("IntelligentTieringDays",String(e.Days)).withName("Days");n.addChildNode(r)}if(e.AccessTier!=null){let r=f.XmlNode.of("IntelligentTieringAccessTier",e.AccessTier).withName("AccessTier");n.addChildNode(r)}return n},gde=(e,t)=>e.filter(n=>n!=null).map(n=>yde(n,t).withName("member")),hde=(e,t)=>{let n=new f.XmlNode("TopicConfiguration");if(e.Id!=null){let r=f.XmlNode.of("NotificationId",e.Id).withName("Id");n.addChildNode(r)}if(e.TopicArn!=null){let r=f.XmlNode.of("TopicArn",e.TopicArn).withName("Topic");n.addChildNode(r)}if(e.Events!=null&&ch(e.Events,t).map(o=>{o=o.withName("Event"),n.addChildNode(o)}),e.Filter!=null){let r=dh(e.Filter,t).withName("Filter");n.addChildNode(r)}return n},_de=(e,t)=>e.filter(n=>n!=null).map(n=>hde(n,t).withName("member")),Cde=(e,t)=>{let n=new f.XmlNode("Transition");if(e.Date!=null){let r=f.XmlNode.of("Date",(e.Date.toISOString().split(".")[0]+"Z").toString()).withName("Date");n.addChildNode(r)}if(e.Days!=null){let r=f.XmlNode.of("Days",String(e.Days)).withName("Days");n.addChildNode(r)}if(e.StorageClass!=null){let r=f.XmlNode.of("TransitionStorageClass",e.StorageClass).withName("StorageClass");n.addChildNode(r)}return n},Sde=(e,t)=>e.filter(n=>n!=null).map(n=>Cde(n,t).withName("member")),bde=(e,t)=>e.filter(n=>n!=null).map(n=>xce(n,t).withName("MetadataEntry")),Jq=(e,t)=>{let n=new f.XmlNode("VersioningConfiguration");if(e.MFADelete!=null){let r=f.XmlNode.of("MFADelete",e.MFADelete).withName("MfaDelete");n.addChildNode(r)}if(e.Status!=null){let r=f.XmlNode.of("BucketVersioningStatus",e.Status).withName("Status");n.addChildNode(r)}return n},Qq=(e,t)=>{let n=new f.XmlNode("WebsiteConfiguration");if(e.ErrorDocument!=null){let r=Zae(e.ErrorDocument,t).withName("ErrorDocument");n.addChildNode(r)}if(e.IndexDocument!=null){let r=ace(e.IndexDocument,t).withName("IndexDocument");n.addChildNode(r)}if(e.RedirectAllRequestsTo!=null){let r=Hce(e.RedirectAllRequestsTo,t).withName("RedirectAllRequestsTo");n.addChildNode(r)}if(e.RoutingRules!=null){let r=Zce(e.RoutingRules,t),o=new f.XmlNode("RoutingRules");r.map(s=>{o.addChildNode(s)}),n.addChildNode(o)}return n},Ede=(e,t)=>{let n={};return e.DaysAfterInitiation!==void 0&&(n.DaysAfterInitiation=(0,d.strictParseInt32)(e.DaysAfterInitiation)),n},Pde=(e,t)=>{let n={};return e.Owner!==void 0&&(n.Owner=(0,d.expectString)(e.Owner)),n},vde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),wde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),xde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),kde=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag===""?n.Tags=[]:e.Tag!==void 0&&(n.Tags=Sr((0,d.getArrayIfSingleItem)(e.Tag),t)),n},iD=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.Filter===""||e.Filter!==void 0&&(n.Filter=Nde((0,d.expectUnion)(e.Filter),t)),e.StorageClassAnalysis!==void 0&&(n.StorageClassAnalysis=bue(e.StorageClassAnalysis,t)),n},Ade=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>iD(n,t)),Ode=(e,t)=>{let n={};return e.S3BucketDestination!==void 0&&(n.S3BucketDestination=Ide(e.S3BucketDestination,t)),n},Nde=(e,t)=>e.Prefix!==void 0?{Prefix:(0,d.expectString)(e.Prefix)}:e.Tag!==void 0?{Tag:Ro(e.Tag,t)}:e.And!==void 0?{And:kde(e.And,t)}:{$unknown:Object.entries(e)[0]},Ide=(e,t)=>{let n={};return e.Format!==void 0&&(n.Format=(0,d.expectString)(e.Format)),e.BucketAccountId!==void 0&&(n.BucketAccountId=(0,d.expectString)(e.BucketAccountId)),e.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(e.Bucket)),e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),n},Rde=(e,t)=>{let n={};return e.Name!==void 0&&(n.Name=(0,d.expectString)(e.Name)),e.CreationDate!==void 0&&(n.CreationDate=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.CreationDate))),n},Tde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Rde(n,t)),Bde=(e,t)=>{let n={};return e.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(e.ChecksumCRC32)),e.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(e.ChecksumCRC32C)),e.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(e.ChecksumSHA1)),e.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(e.ChecksumSHA256)),n},aD=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),qde=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),n},gm=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>qde(n,t)),Dde=(e,t)=>{let n={};return e.HttpErrorCodeReturnedEquals!==void 0&&(n.HttpErrorCodeReturnedEquals=(0,d.expectString)(e.HttpErrorCodeReturnedEquals)),e.KeyPrefixEquals!==void 0&&(n.KeyPrefixEquals=(0,d.expectString)(e.KeyPrefixEquals)),n},Mde=(e,t)=>({}),Fde=(e,t)=>{let n={};return e.ETag!==void 0&&(n.ETag=(0,d.expectString)(e.ETag)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),e.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(e.ChecksumCRC32)),e.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(e.ChecksumCRC32C)),e.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(e.ChecksumSHA1)),e.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(e.ChecksumSHA256)),n},Lde=(e,t)=>{let n={};return e.ETag!==void 0&&(n.ETag=(0,d.expectString)(e.ETag)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),e.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(e.ChecksumCRC32)),e.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(e.ChecksumCRC32C)),e.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(e.ChecksumSHA1)),e.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(e.ChecksumSHA256)),n},jde=(e,t)=>{let n={};return e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),e.AllowedHeader===""?n.AllowedHeaders=[]:e.AllowedHeader!==void 0&&(n.AllowedHeaders=vde((0,d.getArrayIfSingleItem)(e.AllowedHeader),t)),e.AllowedMethod===""?n.AllowedMethods=[]:e.AllowedMethod!==void 0&&(n.AllowedMethods=wde((0,d.getArrayIfSingleItem)(e.AllowedMethod),t)),e.AllowedOrigin===""?n.AllowedOrigins=[]:e.AllowedOrigin!==void 0&&(n.AllowedOrigins=xde((0,d.getArrayIfSingleItem)(e.AllowedOrigin),t)),e.ExposeHeader===""?n.ExposeHeaders=[]:e.ExposeHeader!==void 0&&(n.ExposeHeaders=nle((0,d.getArrayIfSingleItem)(e.ExposeHeader),t)),e.MaxAgeSeconds!==void 0&&(n.MaxAgeSeconds=(0,d.strictParseInt32)(e.MaxAgeSeconds)),n},Ude=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>jde(n,t)),zde=(e,t)=>{let n={};return e.Mode!==void 0&&(n.Mode=(0,d.expectString)(e.Mode)),e.Days!==void 0&&(n.Days=(0,d.strictParseInt32)(e.Days)),e.Years!==void 0&&(n.Years=(0,d.strictParseInt32)(e.Years)),n},Gde=(e,t)=>{let n={};return e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.VersionId!==void 0&&(n.VersionId=(0,d.expectString)(e.VersionId)),e.DeleteMarker!==void 0&&(n.DeleteMarker=(0,d.parseBoolean)(e.DeleteMarker)),e.DeleteMarkerVersionId!==void 0&&(n.DeleteMarkerVersionId=(0,d.expectString)(e.DeleteMarkerVersionId)),n},Hde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Gde(n,t)),$de=(e,t)=>{let n={};return e.Owner!==void 0&&(n.Owner=er(e.Owner,t)),e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.VersionId!==void 0&&(n.VersionId=(0,d.expectString)(e.VersionId)),e.IsLatest!==void 0&&(n.IsLatest=(0,d.parseBoolean)(e.IsLatest)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),n},Kde=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),n},Vde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>$de(n,t)),Xde=(e,t)=>{let n={};return e.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(e.Bucket)),e.Account!==void 0&&(n.Account=(0,d.expectString)(e.Account)),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),e.AccessControlTranslation!==void 0&&(n.AccessControlTranslation=Pde(e.AccessControlTranslation,t)),e.EncryptionConfiguration!==void 0&&(n.EncryptionConfiguration=Wde(e.EncryptionConfiguration,t)),e.ReplicationTime!==void 0&&(n.ReplicationTime=cue(e.ReplicationTime,t)),e.Metrics!==void 0&&(n.Metrics=xle(e.Metrics,t)),n},Wde=(e,t)=>{let n={};return e.ReplicaKmsKeyID!==void 0&&(n.ReplicaKmsKeyID=(0,d.expectString)(e.ReplicaKmsKeyID)),n},Yde=(e,t)=>({}),Jde=(e,t)=>{let n={};return e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.VersionId!==void 0&&(n.VersionId=(0,d.expectString)(e.VersionId)),e.Code!==void 0&&(n.Code=(0,d.expectString)(e.Code)),e.Message!==void 0&&(n.Message=(0,d.expectString)(e.Message)),n},Qde=(e,t)=>{let n={};return e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),n},Zde=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Jde(n,t)),ele=(e,t)=>({}),lh=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),tle=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),n},nle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),rle=(e,t)=>{let n={};return e.Name!==void 0&&(n.Name=(0,d.expectString)(e.Name)),e.Value!==void 0&&(n.Value=(0,d.expectString)(e.Value)),n},ole=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>rle(n,t)),sle=(e,t)=>{let n={};return e.PartsCount!==void 0&&(n.TotalPartsCount=(0,d.strictParseInt32)(e.PartsCount)),e.PartNumberMarker!==void 0&&(n.PartNumberMarker=(0,d.expectString)(e.PartNumberMarker)),e.NextPartNumberMarker!==void 0&&(n.NextPartNumberMarker=(0,d.expectString)(e.NextPartNumberMarker)),e.MaxParts!==void 0&&(n.MaxParts=(0,d.strictParseInt32)(e.MaxParts)),e.IsTruncated!==void 0&&(n.IsTruncated=(0,d.parseBoolean)(e.IsTruncated)),e.Part===""?n.Parts=[]:e.Part!==void 0&&(n.Parts=Xle((0,d.getArrayIfSingleItem)(e.Part),t)),n},ile=(e,t)=>{let n={};return e.Grantee!==void 0&&(n.Grantee=cD(e.Grantee,t)),e.Permission!==void 0&&(n.Permission=(0,d.expectString)(e.Permission)),n},cD=(e,t)=>{let n={};return e.DisplayName!==void 0&&(n.DisplayName=(0,d.expectString)(e.DisplayName)),e.EmailAddress!==void 0&&(n.EmailAddress=(0,d.expectString)(e.EmailAddress)),e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),e.URI!==void 0&&(n.URI=(0,d.expectString)(e.URI)),e["xsi:type"]!==void 0&&(n.Type=(0,d.expectString)(e["xsi:type"])),n},dD=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>ile(n,t)),ale=(e,t)=>{let n={};return e.Suffix!==void 0&&(n.Suffix=(0,d.expectString)(e.Suffix)),n},lD=(e,t)=>{let n={};return e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),e.DisplayName!==void 0&&(n.DisplayName=(0,d.expectString)(e.DisplayName)),n},cle=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag===""?n.Tags=[]:e.Tag!==void 0&&(n.Tags=Sr((0,d.getArrayIfSingleItem)(e.Tag),t)),n},uD=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.Filter!==void 0&&(n.Filter=lle(e.Filter,t)),e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),e.Tiering===""?n.Tierings=[]:e.Tiering!==void 0&&(n.Tierings=xue((0,d.getArrayIfSingleItem)(e.Tiering),t)),n},dle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>uD(n,t)),lle=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag!==void 0&&(n.Tag=Ro(e.Tag,t)),e.And!==void 0&&(n.And=cle(e.And,t)),n},mD=(e,t)=>{let n={};return e.Destination!==void 0&&(n.Destination=mle(e.Destination,t)),e.IsEnabled!==void 0&&(n.IsEnabled=(0,d.parseBoolean)(e.IsEnabled)),e.Filter!==void 0&&(n.Filter=fle(e.Filter,t)),e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.IncludedObjectVersions!==void 0&&(n.IncludedObjectVersions=(0,d.expectString)(e.IncludedObjectVersions)),e.OptionalFields===""?n.OptionalFields=[]:e.OptionalFields!==void 0&&e.OptionalFields.Field!==void 0&&(n.OptionalFields=yle((0,d.getArrayIfSingleItem)(e.OptionalFields.Field),t)),e.Schedule!==void 0&&(n.Schedule=hle(e.Schedule,t)),n},ule=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>mD(n,t)),mle=(e,t)=>{let n={};return e.S3BucketDestination!==void 0&&(n.S3BucketDestination=gle(e.S3BucketDestination,t)),n},ple=(e,t)=>{let n={};return e["SSE-S3"]!==void 0&&(n.SSES3=Cue(e["SSE-S3"],t)),e["SSE-KMS"]!==void 0&&(n.SSEKMS=hue(e["SSE-KMS"],t)),n},fle=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),n},yle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>(0,d.expectString)(n)),gle=(e,t)=>{let n={};return e.AccountId!==void 0&&(n.AccountId=(0,d.expectString)(e.AccountId)),e.Bucket!==void 0&&(n.Bucket=(0,d.expectString)(e.Bucket)),e.Format!==void 0&&(n.Format=(0,d.expectString)(e.Format)),e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Encryption!==void 0&&(n.Encryption=ple(e.Encryption,t)),n},hle=(e,t)=>{let n={};return e.Frequency!==void 0&&(n.Frequency=(0,d.expectString)(e.Frequency)),n},_le=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.CloudFunction!==void 0&&(n.LambdaFunctionArn=(0,d.expectString)(e.CloudFunction)),e.Event===""?n.Events=[]:e.Event!==void 0&&(n.Events=lh((0,d.getArrayIfSingleItem)(e.Event),t)),e.Filter!==void 0&&(n.Filter=uh(e.Filter,t)),n},Cle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>_le(n,t)),Sle=(e,t)=>{let n={};return e.Date!==void 0&&(n.Date=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.Date))),e.Days!==void 0&&(n.Days=(0,d.strictParseInt32)(e.Days)),e.ExpiredObjectDeleteMarker!==void 0&&(n.ExpiredObjectDeleteMarker=(0,d.parseBoolean)(e.ExpiredObjectDeleteMarker)),n},ble=(e,t)=>{let n={};return e.Expiration!==void 0&&(n.Expiration=Sle(e.Expiration,t)),e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Filter===""||e.Filter!==void 0&&(n.Filter=Ple((0,d.expectUnion)(e.Filter),t)),e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),e.Transition===""?n.Transitions=[]:e.Transition!==void 0&&(n.Transitions=Nue((0,d.getArrayIfSingleItem)(e.Transition),t)),e.NoncurrentVersionTransition===""?n.NoncurrentVersionTransitions=[]:e.NoncurrentVersionTransition!==void 0&&(n.NoncurrentVersionTransitions=Ble((0,d.getArrayIfSingleItem)(e.NoncurrentVersionTransition),t)),e.NoncurrentVersionExpiration!==void 0&&(n.NoncurrentVersionExpiration=Rle(e.NoncurrentVersionExpiration,t)),e.AbortIncompleteMultipartUpload!==void 0&&(n.AbortIncompleteMultipartUpload=Ede(e.AbortIncompleteMultipartUpload,t)),n},Ele=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag===""?n.Tags=[]:e.Tag!==void 0&&(n.Tags=Sr((0,d.getArrayIfSingleItem)(e.Tag),t)),e.ObjectSizeGreaterThan!==void 0&&(n.ObjectSizeGreaterThan=(0,d.strictParseLong)(e.ObjectSizeGreaterThan)),e.ObjectSizeLessThan!==void 0&&(n.ObjectSizeLessThan=(0,d.strictParseLong)(e.ObjectSizeLessThan)),n},Ple=(e,t)=>e.Prefix!==void 0?{Prefix:(0,d.expectString)(e.Prefix)}:e.Tag!==void 0?{Tag:Ro(e.Tag,t)}:e.ObjectSizeGreaterThan!==void 0?{ObjectSizeGreaterThan:(0,d.strictParseLong)(e.ObjectSizeGreaterThan)}:e.ObjectSizeLessThan!==void 0?{ObjectSizeLessThan:(0,d.strictParseLong)(e.ObjectSizeLessThan)}:e.And!==void 0?{And:Ele(e.And,t)}:{$unknown:Object.entries(e)[0]},vle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>ble(n,t)),wle=(e,t)=>{let n={};return e.TargetBucket!==void 0&&(n.TargetBucket=(0,d.expectString)(e.TargetBucket)),e.TargetGrants===""?n.TargetGrants=[]:e.TargetGrants!==void 0&&e.TargetGrants.Grant!==void 0&&(n.TargetGrants=vue((0,d.getArrayIfSingleItem)(e.TargetGrants.Grant),t)),e.TargetPrefix!==void 0&&(n.TargetPrefix=(0,d.expectString)(e.TargetPrefix)),n},xle=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),e.EventThreshold!==void 0&&(n.EventThreshold=yD(e.EventThreshold,t)),n},kle=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag===""?n.Tags=[]:e.Tag!==void 0&&(n.Tags=Sr((0,d.getArrayIfSingleItem)(e.Tag),t)),e.AccessPointArn!==void 0&&(n.AccessPointArn=(0,d.expectString)(e.AccessPointArn)),n},pD=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.Filter===""||e.Filter!==void 0&&(n.Filter=Ole((0,d.expectUnion)(e.Filter),t)),n},Ale=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>pD(n,t)),Ole=(e,t)=>e.Prefix!==void 0?{Prefix:(0,d.expectString)(e.Prefix)}:e.Tag!==void 0?{Tag:Ro(e.Tag,t)}:e.AccessPointArn!==void 0?{AccessPointArn:(0,d.expectString)(e.AccessPointArn)}:e.And!==void 0?{And:kle(e.And,t)}:{$unknown:Object.entries(e)[0]},Nle=(e,t)=>{let n={};return e.UploadId!==void 0&&(n.UploadId=(0,d.expectString)(e.UploadId)),e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.Initiated!==void 0&&(n.Initiated=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.Initiated))),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),e.Owner!==void 0&&(n.Owner=er(e.Owner,t)),e.Initiator!==void 0&&(n.Initiator=lD(e.Initiator,t)),e.ChecksumAlgorithm!==void 0&&(n.ChecksumAlgorithm=(0,d.expectString)(e.ChecksumAlgorithm)),n},Ile=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Nle(n,t)),Rle=(e,t)=>{let n={};return e.NoncurrentDays!==void 0&&(n.NoncurrentDays=(0,d.strictParseInt32)(e.NoncurrentDays)),e.NewerNoncurrentVersions!==void 0&&(n.NewerNoncurrentVersions=(0,d.strictParseInt32)(e.NewerNoncurrentVersions)),n},Tle=(e,t)=>{let n={};return e.NoncurrentDays!==void 0&&(n.NoncurrentDays=(0,d.strictParseInt32)(e.NoncurrentDays)),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),e.NewerNoncurrentVersions!==void 0&&(n.NewerNoncurrentVersions=(0,d.strictParseInt32)(e.NewerNoncurrentVersions)),n},Ble=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Tle(n,t)),uh=(e,t)=>{let n={};return e.S3Key!==void 0&&(n.Key=uue(e.S3Key,t)),n},qle=(e,t)=>{let n={};return e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),e.ETag!==void 0&&(n.ETag=(0,d.expectString)(e.ETag)),e.ChecksumAlgorithm===""?n.ChecksumAlgorithm=[]:e.ChecksumAlgorithm!==void 0&&(n.ChecksumAlgorithm=aD((0,d.getArrayIfSingleItem)(e.ChecksumAlgorithm),t)),e.Size!==void 0&&(n.Size=(0,d.strictParseLong)(e.Size)),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),e.Owner!==void 0&&(n.Owner=er(e.Owner,t)),e.RestoreStatus!==void 0&&(n.RestoreStatus=gD(e.RestoreStatus,t)),n},fD=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>qle(n,t)),Dle=(e,t)=>{let n={};return e.ObjectLockEnabled!==void 0&&(n.ObjectLockEnabled=(0,d.expectString)(e.ObjectLockEnabled)),e.Rule!==void 0&&(n.Rule=Lle(e.Rule,t)),n},Mle=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),n},Fle=(e,t)=>{let n={};return e.Mode!==void 0&&(n.Mode=(0,d.expectString)(e.Mode)),e.RetainUntilDate!==void 0&&(n.RetainUntilDate=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.RetainUntilDate))),n},Lle=(e,t)=>{let n={};return e.DefaultRetention!==void 0&&(n.DefaultRetention=zde(e.DefaultRetention,t)),n},jle=(e,t)=>{let n={};return e.PartNumber!==void 0&&(n.PartNumber=(0,d.strictParseInt32)(e.PartNumber)),e.Size!==void 0&&(n.Size=(0,d.strictParseLong)(e.Size)),e.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(e.ChecksumCRC32)),e.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(e.ChecksumCRC32C)),e.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(e.ChecksumSHA1)),e.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(e.ChecksumSHA256)),n},Ule=(e,t)=>{let n={};return e.ETag!==void 0&&(n.ETag=(0,d.expectString)(e.ETag)),e.ChecksumAlgorithm===""?n.ChecksumAlgorithm=[]:e.ChecksumAlgorithm!==void 0&&(n.ChecksumAlgorithm=aD((0,d.getArrayIfSingleItem)(e.ChecksumAlgorithm),t)),e.Size!==void 0&&(n.Size=(0,d.strictParseLong)(e.Size)),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.VersionId!==void 0&&(n.VersionId=(0,d.expectString)(e.VersionId)),e.IsLatest!==void 0&&(n.IsLatest=(0,d.parseBoolean)(e.IsLatest)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),e.Owner!==void 0&&(n.Owner=er(e.Owner,t)),e.RestoreStatus!==void 0&&(n.RestoreStatus=gD(e.RestoreStatus,t)),n},zle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Ule(n,t)),er=(e,t)=>{let n={};return e.DisplayName!==void 0&&(n.DisplayName=(0,d.expectString)(e.DisplayName)),e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),n},Gle=(e,t)=>{let n={};return e.Rule===""?n.Rules=[]:e.Rule!==void 0&&(n.Rules=$le((0,d.getArrayIfSingleItem)(e.Rule),t)),n},Hle=(e,t)=>{let n={};return e.ObjectOwnership!==void 0&&(n.ObjectOwnership=(0,d.expectString)(e.ObjectOwnership)),n},$le=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Hle(n,t)),Kle=(e,t)=>{let n={};return e.PartNumber!==void 0&&(n.PartNumber=(0,d.strictParseInt32)(e.PartNumber)),e.LastModified!==void 0&&(n.LastModified=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.LastModified))),e.ETag!==void 0&&(n.ETag=(0,d.expectString)(e.ETag)),e.Size!==void 0&&(n.Size=(0,d.strictParseLong)(e.Size)),e.ChecksumCRC32!==void 0&&(n.ChecksumCRC32=(0,d.expectString)(e.ChecksumCRC32)),e.ChecksumCRC32C!==void 0&&(n.ChecksumCRC32C=(0,d.expectString)(e.ChecksumCRC32C)),e.ChecksumSHA1!==void 0&&(n.ChecksumSHA1=(0,d.expectString)(e.ChecksumSHA1)),e.ChecksumSHA256!==void 0&&(n.ChecksumSHA256=(0,d.expectString)(e.ChecksumSHA256)),n},Vle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Kle(n,t)),Xle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>jle(n,t)),Wle=(e,t)=>{let n={};return e.IsPublic!==void 0&&(n.IsPublic=(0,d.parseBoolean)(e.IsPublic)),n},Yle=(e,t)=>{let n={};return e.BytesScanned!==void 0&&(n.BytesScanned=(0,d.strictParseLong)(e.BytesScanned)),e.BytesProcessed!==void 0&&(n.BytesProcessed=(0,d.strictParseLong)(e.BytesProcessed)),e.BytesReturned!==void 0&&(n.BytesReturned=(0,d.strictParseLong)(e.BytesReturned)),n},Jle=(e,t)=>{let n={};return e.BlockPublicAcls!==void 0&&(n.BlockPublicAcls=(0,d.parseBoolean)(e.BlockPublicAcls)),e.IgnorePublicAcls!==void 0&&(n.IgnorePublicAcls=(0,d.parseBoolean)(e.IgnorePublicAcls)),e.BlockPublicPolicy!==void 0&&(n.BlockPublicPolicy=(0,d.parseBoolean)(e.BlockPublicPolicy)),e.RestrictPublicBuckets!==void 0&&(n.RestrictPublicBuckets=(0,d.parseBoolean)(e.RestrictPublicBuckets)),n},Qle=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.Queue!==void 0&&(n.QueueArn=(0,d.expectString)(e.Queue)),e.Event===""?n.Events=[]:e.Event!==void 0&&(n.Events=lh((0,d.getArrayIfSingleItem)(e.Event),t)),e.Filter!==void 0&&(n.Filter=uh(e.Filter,t)),n},Zle=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Qle(n,t)),eue=(e,t)=>{let n={};return e.HostName!==void 0&&(n.HostName=(0,d.expectString)(e.HostName)),e.HttpRedirectCode!==void 0&&(n.HttpRedirectCode=(0,d.expectString)(e.HttpRedirectCode)),e.Protocol!==void 0&&(n.Protocol=(0,d.expectString)(e.Protocol)),e.ReplaceKeyPrefixWith!==void 0&&(n.ReplaceKeyPrefixWith=(0,d.expectString)(e.ReplaceKeyPrefixWith)),e.ReplaceKeyWith!==void 0&&(n.ReplaceKeyWith=(0,d.expectString)(e.ReplaceKeyWith)),n},tue=(e,t)=>{let n={};return e.HostName!==void 0&&(n.HostName=(0,d.expectString)(e.HostName)),e.Protocol!==void 0&&(n.Protocol=(0,d.expectString)(e.Protocol)),n},nue=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),n},rue=(e,t)=>{let n={};return e.Role!==void 0&&(n.Role=(0,d.expectString)(e.Role)),e.Rule===""?n.Rules=[]:e.Rule!==void 0&&(n.Rules=aue((0,d.getArrayIfSingleItem)(e.Rule),t)),n},oue=(e,t)=>{let n={};return e.ID!==void 0&&(n.ID=(0,d.expectString)(e.ID)),e.Priority!==void 0&&(n.Priority=(0,d.strictParseInt32)(e.Priority)),e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Filter===""||e.Filter!==void 0&&(n.Filter=iue((0,d.expectUnion)(e.Filter),t)),e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),e.SourceSelectionCriteria!==void 0&&(n.SourceSelectionCriteria=gue(e.SourceSelectionCriteria,t)),e.ExistingObjectReplication!==void 0&&(n.ExistingObjectReplication=tle(e.ExistingObjectReplication,t)),e.Destination!==void 0&&(n.Destination=Xde(e.Destination,t)),e.DeleteMarkerReplication!==void 0&&(n.DeleteMarkerReplication=Kde(e.DeleteMarkerReplication,t)),n},sue=(e,t)=>{let n={};return e.Prefix!==void 0&&(n.Prefix=(0,d.expectString)(e.Prefix)),e.Tag===""?n.Tags=[]:e.Tag!==void 0&&(n.Tags=Sr((0,d.getArrayIfSingleItem)(e.Tag),t)),n},iue=(e,t)=>e.Prefix!==void 0?{Prefix:(0,d.expectString)(e.Prefix)}:e.Tag!==void 0?{Tag:Ro(e.Tag,t)}:e.And!==void 0?{And:sue(e.And,t)}:{$unknown:Object.entries(e)[0]},aue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>oue(n,t)),cue=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),e.Time!==void 0&&(n.Time=yD(e.Time,t)),n},yD=(e,t)=>{let n={};return e.Minutes!==void 0&&(n.Minutes=(0,d.strictParseInt32)(e.Minutes)),n},gD=(e,t)=>{let n={};return e.IsRestoreInProgress!==void 0&&(n.IsRestoreInProgress=(0,d.parseBoolean)(e.IsRestoreInProgress)),e.RestoreExpiryDate!==void 0&&(n.RestoreExpiryDate=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.RestoreExpiryDate))),n},due=(e,t)=>{let n={};return e.Condition!==void 0&&(n.Condition=Dde(e.Condition,t)),e.Redirect!==void 0&&(n.Redirect=eue(e.Redirect,t)),n},lue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>due(n,t)),uue=(e,t)=>{let n={};return e.FilterRule===""?n.FilterRules=[]:e.FilterRule!==void 0&&(n.FilterRules=ole((0,d.getArrayIfSingleItem)(e.FilterRule),t)),n},mue=(e,t)=>{let n={};return e.SSEAlgorithm!==void 0&&(n.SSEAlgorithm=(0,d.expectString)(e.SSEAlgorithm)),e.KMSMasterKeyID!==void 0&&(n.KMSMasterKeyID=(0,d.expectString)(e.KMSMasterKeyID)),n},pue=(e,t)=>{let n={};return e.Rule===""?n.Rules=[]:e.Rule!==void 0&&(n.Rules=yue((0,d.getArrayIfSingleItem)(e.Rule),t)),n},fue=(e,t)=>{let n={};return e.ApplyServerSideEncryptionByDefault!==void 0&&(n.ApplyServerSideEncryptionByDefault=mue(e.ApplyServerSideEncryptionByDefault,t)),e.BucketKeyEnabled!==void 0&&(n.BucketKeyEnabled=(0,d.parseBoolean)(e.BucketKeyEnabled)),n},yue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>fue(n,t)),gue=(e,t)=>{let n={};return e.SseKmsEncryptedObjects!==void 0&&(n.SseKmsEncryptedObjects=_ue(e.SseKmsEncryptedObjects,t)),e.ReplicaModifications!==void 0&&(n.ReplicaModifications=nue(e.ReplicaModifications,t)),n},hue=(e,t)=>{let n={};return e.KeyId!==void 0&&(n.KeyId=(0,d.expectString)(e.KeyId)),n},_ue=(e,t)=>{let n={};return e.Status!==void 0&&(n.Status=(0,d.expectString)(e.Status)),n},Cue=(e,t)=>({}),Sue=(e,t)=>{let n={};return e.BytesScanned!==void 0&&(n.BytesScanned=(0,d.strictParseLong)(e.BytesScanned)),e.BytesProcessed!==void 0&&(n.BytesProcessed=(0,d.strictParseLong)(e.BytesProcessed)),e.BytesReturned!==void 0&&(n.BytesReturned=(0,d.strictParseLong)(e.BytesReturned)),n},bue=(e,t)=>{let n={};return e.DataExport!==void 0&&(n.DataExport=Eue(e.DataExport,t)),n},Eue=(e,t)=>{let n={};return e.OutputSchemaVersion!==void 0&&(n.OutputSchemaVersion=(0,d.expectString)(e.OutputSchemaVersion)),e.Destination!==void 0&&(n.Destination=Ode(e.Destination,t)),n},Ro=(e,t)=>{let n={};return e.Key!==void 0&&(n.Key=(0,d.expectString)(e.Key)),e.Value!==void 0&&(n.Value=(0,d.expectString)(e.Value)),n},Sr=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Ro(n,t)),Pue=(e,t)=>{let n={};return e.Grantee!==void 0&&(n.Grantee=cD(e.Grantee,t)),e.Permission!==void 0&&(n.Permission=(0,d.expectString)(e.Permission)),n},vue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Pue(n,t)),wue=(e,t)=>{let n={};return e.Days!==void 0&&(n.Days=(0,d.strictParseInt32)(e.Days)),e.AccessTier!==void 0&&(n.AccessTier=(0,d.expectString)(e.AccessTier)),n},xue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>wue(n,t)),kue=(e,t)=>{let n={};return e.Id!==void 0&&(n.Id=(0,d.expectString)(e.Id)),e.Topic!==void 0&&(n.TopicArn=(0,d.expectString)(e.Topic)),e.Event===""?n.Events=[]:e.Event!==void 0&&(n.Events=lh((0,d.getArrayIfSingleItem)(e.Event),t)),e.Filter!==void 0&&(n.Filter=uh(e.Filter,t)),n},Aue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>kue(n,t)),Oue=(e,t)=>{let n={};return e.Date!==void 0&&(n.Date=(0,d.expectNonNull)((0,d.parseRfc3339DateTimeWithOffset)(e.Date))),e.Days!==void 0&&(n.Days=(0,d.strictParseInt32)(e.Days)),e.StorageClass!==void 0&&(n.StorageClass=(0,d.expectString)(e.StorageClass)),n},Nue=(e,t)=>(e||[]).filter(n=>n!=null).map(n=>Oue(n,t)),I=e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),hD=(e,t)=>(0,d.collectBody)(e,t).then(n=>t.utf8Encoder(n)),E=e=>e!=null&&e!==""&&(!Object.getOwnPropertyNames(e).includes("length")||e.length!=0)&&(!Object.getOwnPropertyNames(e).includes("size")||e.size!=0),Z=(e,t)=>hD(e,t).then(n=>{if(n.length){let r=new cne.XMLParser({attributeNamePrefix:"",htmlEntities:!0,ignoreAttributes:!1,ignoreDeclaration:!0,parseTagValue:!1,trimValues:!1,tagValueProcessor:(u,l)=>l.trim()===""&&l.includes(` -`)?"":void 0});r.addEntity("#xD","\r"),r.addEntity("#10",` -`);let o=r.parse(n),s="#text",a=Object.keys(o)[0],i=o[a];return i[s]&&(i[a]=i[s],delete i[s]),(0,d.getValueFromTextNode)(i)}return{}}),M=async(e,t)=>{let n=await Z(e,t);return n.Error&&(n.Error.message=n.Error.message??n.Error.Message),n},F=(e,t)=>{if((t==null?void 0:t.Code)!==void 0)return t.Code;if(e.statusCode==404)return"NotFound"}});var ph=m(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.AbortMultipartUploadCommand=To.$Command=void 0;var Iue=x(),Rue=k(),CD=b();Object.defineProperty(To,"$Command",{enumerable:!0,get:function(){return CD.Command}});var Tue=w(),_D=q(),mh=class e extends CD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Rue.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Iue.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"AbortMultipartUploadCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Tue.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"AbortMultipartUpload"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,_D.se_AbortMultipartUploadCommand)(t,n)}deserialize(t,n){return(0,_D.de_AbortMultipartUploadCommand)(t,n)}};To.AbortMultipartUploadCommand=mh});var bt=m(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.getSsecPlugin=En.ssecMiddlewareOptions=En.ssecMiddleware=void 0;function SD(e){return t=>async n=>{let r={...n.input},o=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let s of o){let a=r[s.target];if(a){let i=ArrayBuffer.isView(a)?new Uint8Array(a.buffer,a.byteOffset,a.byteLength):typeof a=="string"?e.utf8Decoder(a):new Uint8Array(a),u=e.base64Encoder(i),l=new e.md5;l.update(i),r={...r,[s.target]:u,[s.hash]:e.base64Encoder(await l.digest())}}}return t({...n,input:r})}}En.ssecMiddleware=SD;En.ssecMiddlewareOptions={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0};var Bue=e=>({applyToStack:t=>{t.add(SD(e),En.ssecMiddlewareOptions)}});En.getSsecPlugin=Bue});var yh=m(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.CompleteMultipartUploadCommand=Bo.$Command=void 0;var que=Ir(),Due=bt(),Mue=x(),Fue=k(),PD=b();Object.defineProperty(Bo,"$Command",{enumerable:!0,get:function(){return PD.Command}});var Lue=w(),bD=Je(),ED=q(),fh=class e extends PD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Fue.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Mue.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,que.getThrow200ExceptionsPlugin)(n)),this.middlewareStack.use((0,Due.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"CompleteMultipartUploadCommand",inputFilterSensitiveLog:bD.CompleteMultipartUploadRequestFilterSensitiveLog,outputFilterSensitiveLog:bD.CompleteMultipartUploadOutputFilterSensitiveLog,[Lue.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"CompleteMultipartUpload"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,ED.se_CompleteMultipartUploadCommand)(t,n)}deserialize(t,n){return(0,ED.de_CompleteMultipartUploadCommand)(t,n)}};Bo.CompleteMultipartUploadCommand=fh});var hh=m(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.CopyObjectCommand=qo.$Command=void 0;var jue=Ir(),Uue=bt(),zue=x(),Gue=k(),xD=b();Object.defineProperty(qo,"$Command",{enumerable:!0,get:function(){return xD.Command}});var Hue=w(),vD=Je(),wD=q(),gh=class e extends xD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Gue.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,zue.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,jue.getThrow200ExceptionsPlugin)(n)),this.middlewareStack.use((0,Uue.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"CopyObjectCommand",inputFilterSensitiveLog:vD.CopyObjectRequestFilterSensitiveLog,outputFilterSensitiveLog:vD.CopyObjectOutputFilterSensitiveLog,[Hue.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"CopyObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,wD.se_CopyObjectCommand)(t,n)}deserialize(t,n){return(0,wD.de_CopyObjectCommand)(t,n)}};qo.CopyObjectCommand=gh});var AD=m(Pn=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.getLocationConstraintPlugin=Pn.locationConstraintMiddlewareOptions=Pn.locationConstraintMiddleware=void 0;function kD(e){return t=>async n=>{let{CreateBucketConfiguration:r}=n.input,o=await e.region();return(!r||!r.LocationConstraint)&&(n={...n,input:{...n.input,CreateBucketConfiguration:o==="us-east-1"?void 0:{LocationConstraint:o}}}),t(n)}}Pn.locationConstraintMiddleware=kD;Pn.locationConstraintMiddlewareOptions={step:"initialize",tags:["LOCATION_CONSTRAINT","CREATE_BUCKET_CONFIGURATION"],name:"locationConstraintMiddleware",override:!0};var $ue=e=>({applyToStack:t=>{t.add(kD(e),Pn.locationConstraintMiddlewareOptions)}});Pn.getLocationConstraintPlugin=$ue});var Ch=m(Do=>{"use strict";Object.defineProperty(Do,"__esModule",{value:!0});Do.CreateBucketCommand=Do.$Command=void 0;var Kue=AD(),Vue=x(),Xue=k(),ND=b();Object.defineProperty(Do,"$Command",{enumerable:!0,get:function(){return ND.Command}});var Wue=w(),OD=q(),_h=class e extends ND.Command{static getEndpointParameterInstructions(){return{DisableAccessPoints:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Xue.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Vue.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Kue.getLocationConstraintPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"CreateBucketCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Wue.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"CreateBucket"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,OD.se_CreateBucketCommand)(t,n)}deserialize(t,n){return(0,OD.de_CreateBucketCommand)(t,n)}};Do.CreateBucketCommand=_h});var bh=m(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.CreateMultipartUploadCommand=Mo.$Command=void 0;var Yue=bt(),Jue=x(),Que=k(),TD=b();Object.defineProperty(Mo,"$Command",{enumerable:!0,get:function(){return TD.Command}});var Zue=w(),ID=Je(),RD=q(),Sh=class e extends TD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Que.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Jue.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Yue.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"CreateMultipartUploadCommand",inputFilterSensitiveLog:ID.CreateMultipartUploadRequestFilterSensitiveLog,outputFilterSensitiveLog:ID.CreateMultipartUploadOutputFilterSensitiveLog,[Zue.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"CreateMultipartUpload"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,RD.se_CreateMultipartUploadCommand)(t,n)}deserialize(t,n){return(0,RD.de_CreateMultipartUploadCommand)(t,n)}};Mo.CreateMultipartUploadCommand=Sh});var Ph=m(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.DeleteBucketAnalyticsConfigurationCommand=Fo.$Command=void 0;var eme=x(),tme=k(),qD=b();Object.defineProperty(Fo,"$Command",{enumerable:!0,get:function(){return qD.Command}});var nme=w(),BD=q(),Eh=class e extends qD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,tme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,eme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketAnalyticsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[nme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketAnalyticsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,BD.se_DeleteBucketAnalyticsConfigurationCommand)(t,n)}deserialize(t,n){return(0,BD.de_DeleteBucketAnalyticsConfigurationCommand)(t,n)}};Fo.DeleteBucketAnalyticsConfigurationCommand=Eh});var wh=m(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});Lo.DeleteBucketCommand=Lo.$Command=void 0;var rme=x(),ome=k(),MD=b();Object.defineProperty(Lo,"$Command",{enumerable:!0,get:function(){return MD.Command}});var sme=w(),DD=q(),vh=class e extends MD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,ome.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,rme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[sme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucket"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,DD.se_DeleteBucketCommand)(t,n)}deserialize(t,n){return(0,DD.de_DeleteBucketCommand)(t,n)}};Lo.DeleteBucketCommand=vh});var kh=m(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.DeleteBucketCorsCommand=jo.$Command=void 0;var ime=x(),ame=k(),LD=b();Object.defineProperty(jo,"$Command",{enumerable:!0,get:function(){return LD.Command}});var cme=w(),FD=q(),xh=class e extends LD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,ame.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,ime.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketCorsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[cme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketCors"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,FD.se_DeleteBucketCorsCommand)(t,n)}deserialize(t,n){return(0,FD.de_DeleteBucketCorsCommand)(t,n)}};jo.DeleteBucketCorsCommand=xh});var Oh=m(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});Uo.DeleteBucketEncryptionCommand=Uo.$Command=void 0;var dme=x(),lme=k(),UD=b();Object.defineProperty(Uo,"$Command",{enumerable:!0,get:function(){return UD.Command}});var ume=w(),jD=q(),Ah=class e extends UD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,lme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,dme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketEncryptionCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[ume.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketEncryption"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,jD.se_DeleteBucketEncryptionCommand)(t,n)}deserialize(t,n){return(0,jD.de_DeleteBucketEncryptionCommand)(t,n)}};Uo.DeleteBucketEncryptionCommand=Ah});var Ih=m(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.DeleteBucketIntelligentTieringConfigurationCommand=zo.$Command=void 0;var mme=x(),pme=k(),GD=b();Object.defineProperty(zo,"$Command",{enumerable:!0,get:function(){return GD.Command}});var fme=w(),zD=q(),Nh=class e extends GD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,pme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,mme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketIntelligentTieringConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[fme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketIntelligentTieringConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,zD.se_DeleteBucketIntelligentTieringConfigurationCommand)(t,n)}deserialize(t,n){return(0,zD.de_DeleteBucketIntelligentTieringConfigurationCommand)(t,n)}};zo.DeleteBucketIntelligentTieringConfigurationCommand=Nh});var Th=m(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.DeleteBucketInventoryConfigurationCommand=Go.$Command=void 0;var yme=x(),gme=k(),$D=b();Object.defineProperty(Go,"$Command",{enumerable:!0,get:function(){return $D.Command}});var hme=w(),HD=q(),Rh=class e extends $D.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,gme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,yme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketInventoryConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[hme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketInventoryConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,HD.se_DeleteBucketInventoryConfigurationCommand)(t,n)}deserialize(t,n){return(0,HD.de_DeleteBucketInventoryConfigurationCommand)(t,n)}};Go.DeleteBucketInventoryConfigurationCommand=Rh});var qh=m(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});Ho.DeleteBucketLifecycleCommand=Ho.$Command=void 0;var _me=x(),Cme=k(),VD=b();Object.defineProperty(Ho,"$Command",{enumerable:!0,get:function(){return VD.Command}});var Sme=w(),KD=q(),Bh=class e extends VD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Cme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,_me.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketLifecycleCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Sme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketLifecycle"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,KD.se_DeleteBucketLifecycleCommand)(t,n)}deserialize(t,n){return(0,KD.de_DeleteBucketLifecycleCommand)(t,n)}};Ho.DeleteBucketLifecycleCommand=Bh});var Mh=m($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.DeleteBucketMetricsConfigurationCommand=$o.$Command=void 0;var bme=x(),Eme=k(),WD=b();Object.defineProperty($o,"$Command",{enumerable:!0,get:function(){return WD.Command}});var Pme=w(),XD=q(),Dh=class e extends WD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Eme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,bme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketMetricsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Pme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketMetricsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,XD.se_DeleteBucketMetricsConfigurationCommand)(t,n)}deserialize(t,n){return(0,XD.de_DeleteBucketMetricsConfigurationCommand)(t,n)}};$o.DeleteBucketMetricsConfigurationCommand=Dh});var Lh=m(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.DeleteBucketOwnershipControlsCommand=Ko.$Command=void 0;var vme=x(),wme=k(),JD=b();Object.defineProperty(Ko,"$Command",{enumerable:!0,get:function(){return JD.Command}});var xme=w(),YD=q(),Fh=class e extends JD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,wme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,vme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketOwnershipControlsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[xme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketOwnershipControls"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,YD.se_DeleteBucketOwnershipControlsCommand)(t,n)}deserialize(t,n){return(0,YD.de_DeleteBucketOwnershipControlsCommand)(t,n)}};Ko.DeleteBucketOwnershipControlsCommand=Fh});var Uh=m(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.DeleteBucketPolicyCommand=Vo.$Command=void 0;var kme=x(),Ame=k(),ZD=b();Object.defineProperty(Vo,"$Command",{enumerable:!0,get:function(){return ZD.Command}});var Ome=w(),QD=q(),jh=class e extends ZD.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Ame.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,kme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketPolicyCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Ome.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketPolicy"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,QD.se_DeleteBucketPolicyCommand)(t,n)}deserialize(t,n){return(0,QD.de_DeleteBucketPolicyCommand)(t,n)}};Vo.DeleteBucketPolicyCommand=jh});var Gh=m(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});Xo.DeleteBucketReplicationCommand=Xo.$Command=void 0;var Nme=x(),Ime=k(),t1=b();Object.defineProperty(Xo,"$Command",{enumerable:!0,get:function(){return t1.Command}});var Rme=w(),e1=q(),zh=class e extends t1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Ime.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Nme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketReplicationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Rme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketReplication"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,e1.se_DeleteBucketReplicationCommand)(t,n)}deserialize(t,n){return(0,e1.de_DeleteBucketReplicationCommand)(t,n)}};Xo.DeleteBucketReplicationCommand=zh});var $h=m(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.DeleteBucketTaggingCommand=Wo.$Command=void 0;var Tme=x(),Bme=k(),r1=b();Object.defineProperty(Wo,"$Command",{enumerable:!0,get:function(){return r1.Command}});var qme=w(),n1=q(),Hh=class e extends r1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Bme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Tme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[qme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,n1.se_DeleteBucketTaggingCommand)(t,n)}deserialize(t,n){return(0,n1.de_DeleteBucketTaggingCommand)(t,n)}};Wo.DeleteBucketTaggingCommand=Hh});var Vh=m(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.DeleteBucketWebsiteCommand=Yo.$Command=void 0;var Dme=x(),Mme=k(),s1=b();Object.defineProperty(Yo,"$Command",{enumerable:!0,get:function(){return s1.Command}});var Fme=w(),o1=q(),Kh=class e extends s1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Mme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Dme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteBucketWebsiteCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Fme.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteBucketWebsite"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,o1.se_DeleteBucketWebsiteCommand)(t,n)}deserialize(t,n){return(0,o1.de_DeleteBucketWebsiteCommand)(t,n)}};Yo.DeleteBucketWebsiteCommand=Kh});var Wh=m(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.DeleteObjectCommand=Jo.$Command=void 0;var Lme=x(),jme=k(),a1=b();Object.defineProperty(Jo,"$Command",{enumerable:!0,get:function(){return a1.Command}});var Ume=w(),i1=q(),Xh=class e extends a1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,jme.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Lme.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteObjectCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Ume.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,i1.se_DeleteObjectCommand)(t,n)}deserialize(t,n){return(0,i1.de_DeleteObjectCommand)(t,n)}};Jo.DeleteObjectCommand=Xh});var Qo=m(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.ChecksumLocation=tr.ChecksumAlgorithm=void 0;var zme;(function(e){e.MD5="MD5",e.CRC32="CRC32",e.CRC32C="CRC32C",e.SHA1="SHA1",e.SHA256="SHA256"})(zme=tr.ChecksumAlgorithm||(tr.ChecksumAlgorithm={}));var Gme;(function(e){e.HEADER="header",e.TRAILER="trailer"})(Gme=tr.ChecksumLocation||(tr.ChecksumLocation={}))});var Yh=m(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});Zo.PRIORITY_ORDER_ALGORITHMS=Zo.CLIENT_SUPPORTED_ALGORITHMS=void 0;var nr=Qo();Zo.CLIENT_SUPPORTED_ALGORITHMS=[nr.ChecksumAlgorithm.CRC32,nr.ChecksumAlgorithm.CRC32C,nr.ChecksumAlgorithm.SHA1,nr.ChecksumAlgorithm.SHA256];Zo.PRIORITY_ORDER_ALGORITHMS=[nr.ChecksumAlgorithm.CRC32,nr.ChecksumAlgorithm.CRC32C,nr.ChecksumAlgorithm.SHA1,nr.ChecksumAlgorithm.SHA256]});var d1=m(hm=>{"use strict";Object.defineProperty(hm,"__esModule",{value:!0});hm.getChecksumAlgorithmForRequest=void 0;var Hme=Qo(),c1=Yh(),$me=(e,{requestChecksumRequired:t,requestAlgorithmMember:n})=>{if(!n||!e[n])return t?Hme.ChecksumAlgorithm.MD5:void 0;let r=e[n];if(!c1.CLIENT_SUPPORTED_ALGORITHMS.includes(r))throw new Error(`The checksum algorithm "${r}" is not supported by the client. Select one of ${c1.CLIENT_SUPPORTED_ALGORITHMS}.`);return r};hm.getChecksumAlgorithmForRequest=$me});var Jh=m(_m=>{"use strict";Object.defineProperty(_m,"__esModule",{value:!0});_m.getChecksumLocationName=void 0;var Kme=Qo(),Vme=e=>e===Kme.ChecksumAlgorithm.MD5?"content-md5":`x-amz-checksum-${e.toLowerCase()}`;_m.getChecksumLocationName=Vme});var l1=m(Cm=>{"use strict";Object.defineProperty(Cm,"__esModule",{value:!0});Cm.hasHeader=void 0;var Xme=(e,t)=>{let n=e.toLowerCase();for(let r of Object.keys(t))if(n===r.toLowerCase())return!0;return!1};Cm.hasHeader=Xme});var bm=m(Sm=>{"use strict";Object.defineProperty(Sm,"__esModule",{value:!0});Sm.isStreaming=void 0;var Wme=ic(),Yme=e=>e!==void 0&&typeof e!="string"&&!ArrayBuffer.isView(e)&&!(0,Wme.isArrayBuffer)(e);Sm.isStreaming=Yme});var t_={};Ni(t_,{__assign:()=>Zh,__asyncDelegator:()=>dpe,__asyncGenerator:()=>cpe,__asyncValues:()=>lpe,__await:()=>za,__awaiter:()=>npe,__classPrivateFieldGet:()=>fpe,__classPrivateFieldSet:()=>ype,__createBinding:()=>ope,__decorate:()=>Zme,__exportStar:()=>spe,__extends:()=>Jme,__generator:()=>rpe,__importDefault:()=>ppe,__importStar:()=>mpe,__makeTemplateObject:()=>upe,__metadata:()=>tpe,__param:()=>epe,__read:()=>u1,__rest:()=>Qme,__spread:()=>ipe,__spreadArrays:()=>ape,__values:()=>e_});function Jme(e,t){Qh(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function Qme(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o=0;i--)(a=e[i])&&(s=(o<3?a(s):o>3?a(t,n,s):a(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function epe(e,t){return function(n,r){t(n,r,e)}}function tpe(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}function npe(e,t,n,r){function o(s){return s instanceof n?s:new n(function(a){a(s)})}return new(n||(n=Promise))(function(s,a){function i(c){try{l(r.next(c))}catch(y){a(y)}}function u(c){try{l(r.throw(c))}catch(y){a(y)}}function l(c){c.done?s(c.value):o(c.value).then(i,u)}l((r=r.apply(e,t||[])).next())})}function rpe(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},r,o,s,a;return a={next:i(0),throw:i(1),return:i(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function i(l){return function(c){return u([l,c])}}function u(l){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,o&&(s=l[0]&2?o.return:l[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,l[1])).done)return s;switch(o=0,s&&(l=[l[0]&2,s.value]),l[0]){case 0:case 1:s=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,o=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(s=n.trys,!(s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function u1(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,s=[],a;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)s.push(o.value)}catch(i){a={error:i}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return s}function ipe(){for(var e=[],t=0;t1||i(g,C)})})}function i(g,C){try{u(r[g](C))}catch(P){y(s[0][3],P)}}function u(g){g.value instanceof za?Promise.resolve(g.value.v).then(l,c):y(s[0][2],g)}function l(g){i("next",g)}function c(g){i("throw",g)}function y(g,C){g(C),s.shift(),s.length&&i(s[0][0],s[0][1])}}function dpe(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,s){t[o]=e[o]?function(a){return(n=!n)?{value:za(e[o](a)),done:o==="return"}:s?s(a):a}:s}}function lpe(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof e_=="function"?e_(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(s){n[s]=e[s]&&function(a){return new Promise(function(i,u){a=e[s](a),o(i,u,a.done,a.value)})}}function o(s,a,i,u){Promise.resolve(u).then(function(l){s({value:l,done:i})},a)}}function upe(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function mpe(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function ppe(e){return e&&e.__esModule?e:{default:e}}function fpe(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function ype(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}var Qh,Zh,n_=je(()=>{Qh=function(e,t){return Qh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var o in r)r.hasOwnProperty(o)&&(n[o]=r[o])},Qh(e,t)};Zh=function(){return Zh=Object.assign||function(t){for(var n,r=1,o=arguments.length;r{"use strict";Object.defineProperty(Em,"__esModule",{value:!0});Em.AwsCrc32c=void 0;var m1=(n_(),J(t_)),r_=Ta(),p1=o_(),gpe=function(){function e(){this.crc32c=new p1.Crc32c}return e.prototype.update=function(t){(0,r_.isEmptyData)(t)||this.crc32c.update((0,r_.convertToBuffer)(t))},e.prototype.digest=function(){return m1.__awaiter(this,void 0,void 0,function(){return m1.__generator(this,function(t){return[2,(0,r_.numToUint8)(this.crc32c.digest())]})})},e.prototype.reset=function(){this.crc32c=new p1.Crc32c},e}();Em.AwsCrc32c=gpe});var o_=m(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.AwsCrc32c=rr.Crc32c=rr.crc32c=void 0;var hpe=(n_(),J(t_)),_pe=Ta();function Cpe(e){return new y1().update(e).digest()}rr.crc32c=Cpe;var y1=function(){function e(){this.checksum=4294967295}return e.prototype.update=function(t){var n,r;try{for(var o=hpe.__values(t),s=o.next();!s.done;s=o.next()){var a=s.value;this.checksum=this.checksum>>>8^bpe[(this.checksum^a)&255]}}catch(i){n={error:i}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return this},e.prototype.digest=function(){return(this.checksum^4294967295)>>>0},e}();rr.Crc32c=y1;var Spe=[0,4067132163,3778769143,324072436,3348797215,904991772,648144872,3570033899,2329499855,2024987596,1809983544,2575936315,1296289744,3207089363,2893594407,1578318884,274646895,3795141740,4049975192,51262619,3619967088,632279923,922689671,3298075524,2592579488,1760304291,2075979607,2312596564,1562183871,2943781820,3156637768,1313733451,549293790,3537243613,3246849577,871202090,3878099393,357341890,102525238,4101499445,2858735121,1477399826,1264559846,3107202533,1845379342,2677391885,2361733625,2125378298,820201905,3263744690,3520608582,598981189,4151959214,85089709,373468761,3827903834,3124367742,1213305469,1526817161,2842354314,2107672161,2412447074,2627466902,1861252501,1098587580,3004210879,2688576843,1378610760,2262928035,1955203488,1742404180,2511436119,3416409459,969524848,714683780,3639785095,205050476,4266873199,3976438427,526918040,1361435347,2739821008,2954799652,1114974503,2529119692,1691668175,2005155131,2247081528,3690758684,697762079,986182379,3366744552,476452099,3993867776,4250756596,255256311,1640403810,2477592673,2164122517,1922457750,2791048317,1412925310,1197962378,3037525897,3944729517,427051182,170179418,4165941337,746937522,3740196785,3451792453,1070968646,1905808397,2213795598,2426610938,1657317369,3053634322,1147748369,1463399397,2773627110,4215344322,153784257,444234805,3893493558,1021025245,3467647198,3722505002,797665321,2197175160,1889384571,1674398607,2443626636,1164749927,3070701412,2757221520,1446797203,137323447,4198817972,3910406976,461344835,3484808360,1037989803,781091935,3705997148,2460548119,1623424788,1939049696,2180517859,1429367560,2807687179,3020495871,1180866812,410100952,3927582683,4182430767,186734380,3756733383,763408580,1053836080,3434856499,2722870694,1344288421,1131464017,2971354706,1708204729,2545590714,2229949006,1988219213,680717673,3673779818,3383336350,1002577565,4010310262,493091189,238226049,4233660802,2987750089,1082061258,1395524158,2705686845,1972364758,2279892693,2494862625,1725896226,952904198,3399985413,3656866545,731699698,4283874585,222117402,510512622,3959836397,3280807620,837199303,582374963,3504198960,68661723,4135334616,3844915500,390545967,1230274059,3141532936,2825850620,1510247935,2395924756,2091215383,1878366691,2644384480,3553878443,565732008,854102364,3229815391,340358836,3861050807,4117890627,119113024,1493875044,2875275879,3090270611,1247431312,2660249211,1828433272,2141937292,2378227087,3811616794,291187481,34330861,4032846830,615137029,3603020806,3314634738,939183345,1776939221,2609017814,2295496738,2058945313,2926798794,1545135305,1330124605,3173225534,4084100981,17165430,307568514,3762199681,888469610,3332340585,3587147933,665062302,2042050490,2346497209,2559330125,1793573966,3190661285,1279665062,1595330642,2910671697],bpe=(0,_pe.uint32ArrayFrom)(Spe),Epe=f1();Object.defineProperty(rr,"AwsCrc32c",{enumerable:!0,get:function(){return Epe.AwsCrc32c}})});var s_=m(Pm=>{"use strict";Object.defineProperty(Pm,"__esModule",{value:!0});Pm.selectChecksumAlgorithmFunction=void 0;var Ppe=Ba(),vpe=o_(),Ga=Qo(),wpe=(e,t)=>({[Ga.ChecksumAlgorithm.MD5]:t.md5,[Ga.ChecksumAlgorithm.CRC32]:Ppe.AwsCrc32,[Ga.ChecksumAlgorithm.CRC32C]:vpe.AwsCrc32c,[Ga.ChecksumAlgorithm.SHA1]:t.sha1,[Ga.ChecksumAlgorithm.SHA256]:t.sha256})[e];Pm.selectChecksumAlgorithmFunction=wpe});var i_=m(vm=>{"use strict";Object.defineProperty(vm,"__esModule",{value:!0});vm.stringHasher=void 0;var xpe=st(),kpe=(e,t)=>{let n=new e;return n.update((0,xpe.toUint8Array)(t||"")),n.digest()};vm.stringHasher=kpe});var a_=m(wm=>{"use strict";Object.defineProperty(wm,"__esModule",{value:!0});wm.flexibleChecksumsMiddleware=void 0;var Ape=Ne(),Ope=d1(),Npe=Jh(),Ipe=l1(),Rpe=bm(),Tpe=s_(),Bpe=i_(),qpe=(e,t)=>n=>async r=>{if(!Ape.HttpRequest.isInstance(r.request))return n(r);let{request:o}=r,{body:s,headers:a}=o,{base64Encoder:i,streamHasher:u}=e,{input:l,requestChecksumRequired:c,requestAlgorithmMember:y}=t,g=(0,Ope.getChecksumAlgorithmForRequest)(l,{requestChecksumRequired:c,requestAlgorithmMember:y}),C=s,P=a;if(g){let v=(0,Npe.getChecksumLocationName)(g),G=(0,Tpe.selectChecksumAlgorithmFunction)(g,e);if((0,Rpe.isStreaming)(s)){let{getAwsChunkedEncodingStream:Y,bodyLengthChecker:Le}=e;C=Y(s,{base64Encoder:i,bodyLengthChecker:Le,checksumLocationName:v,checksumAlgorithmFn:G,streamHasher:u}),P={...a,"content-encoding":a["content-encoding"]?`${a["content-encoding"]},aws-chunked`:"aws-chunked","transfer-encoding":"chunked","x-amz-decoded-content-length":a["content-length"],"x-amz-content-sha256":"STREAMING-UNSIGNED-PAYLOAD-TRAILER","x-amz-trailer":v},delete P["content-length"]}else if(!(0,Ipe.hasHeader)(v,a)){let Y=await(0,Bpe.stringHasher)(G,s);P={...a,[v]:i(Y)}}}return await n({...r,request:{...o,headers:P,body:C}})};wm.flexibleChecksumsMiddleware=qpe});var g1=m(xm=>{"use strict";Object.defineProperty(xm,"__esModule",{value:!0});xm.createReadStreamOnBuffer=void 0;var Dpe=require("stream");function Mpe(e){let t=new Dpe.Transform;return t.push(e),t.push(null),t}xm.createReadStreamOnBuffer=Mpe});var h1=m(km=>{"use strict";Object.defineProperty(km,"__esModule",{value:!0});km.getChecksum=void 0;var Fpe=bm(),Lpe=i_(),jpe=async(e,{streamHasher:t,checksumAlgorithmFn:n,base64Encoder:r})=>{let o=(0,Fpe.isStreaming)(e)?t(n,e):(0,Lpe.stringHasher)(n,e);return r(await o)};km.getChecksum=jpe});var C1=m(Am=>{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.getChecksumAlgorithmListForResponse=void 0;var _1=Yh(),Upe=(e=[])=>{let t=[];for(let n of _1.PRIORITY_ORDER_ALGORITHMS)!e.includes(n)||!_1.CLIENT_SUPPORTED_ALGORITHMS.includes(n)||t.push(n);return t};Am.getChecksumAlgorithmListForResponse=Upe});var S1=m(Om=>{"use strict";Object.defineProperty(Om,"__esModule",{value:!0});Om.validateChecksumFromResponse=void 0;var zpe=h1(),Gpe=C1(),Hpe=Jh(),$pe=s_(),Kpe=async(e,{config:t,responseAlgorithms:n})=>{let r=(0,Gpe.getChecksumAlgorithmListForResponse)(n),{body:o,headers:s}=e;for(let a of r){let i=(0,Hpe.getChecksumLocationName)(a),u=s[i];if(u){let l=(0,$pe.selectChecksumAlgorithmFunction)(a,t),{streamHasher:c,base64Encoder:y}=t,g=await(0,zpe.getChecksum)(o,{streamHasher:c,checksumAlgorithmFn:l,base64Encoder:y});if(g===u)break;throw new Error(`Checksum mismatch: expected "${g}" but received "${u}" in response header "${i}".`)}}};Om.validateChecksumFromResponse=Kpe});var E1=m(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});es.flexibleChecksumsResponseMiddleware=es.flexibleChecksumsResponseMiddlewareOptions=void 0;var Vpe=Ne(),Xpe=bm(),b1=g1(),Wpe=S1();es.flexibleChecksumsResponseMiddlewareOptions={name:"flexibleChecksumsResponseMiddleware",toMiddleware:"deserializerMiddleware",relation:"after",tags:["BODY_CHECKSUM"],override:!0};var Ype=(e,t)=>n=>async r=>{if(!Vpe.HttpRequest.isInstance(r.request))return n(r);let o=r.input,s=await n(r),a=s.response,i,{requestValidationModeMember:u,responseAlgorithms:l}=t;if(u&&o[u]==="ENABLED"){let c=(0,Xpe.isStreaming)(a.body);c&&(i=await e.streamCollector(a.body),a.body=(0,b1.createReadStreamOnBuffer)(i)),await(0,Wpe.validateChecksumFromResponse)(s.response,{config:e,responseAlgorithms:l}),c&&i&&(a.body=(0,b1.createReadStreamOnBuffer)(i))}return s};es.flexibleChecksumsResponseMiddleware=Ype});var v1=m(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.getFlexibleChecksumsPlugin=br.flexibleChecksumsMiddlewareOptions=void 0;var Jpe=a_(),P1=E1();br.flexibleChecksumsMiddlewareOptions={name:"flexibleChecksumsMiddleware",step:"build",tags:["BODY_CHECKSUM"],override:!0};var Qpe=(e,t)=>({applyToStack:n=>{n.add((0,Jpe.flexibleChecksumsMiddleware)(e,t),br.flexibleChecksumsMiddlewareOptions),n.addRelativeTo((0,P1.flexibleChecksumsResponseMiddleware)(e,t),P1.flexibleChecksumsResponseMiddlewareOptions)}});br.getFlexibleChecksumsPlugin=Qpe});var be=m(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});var c_=(ne(),J(te));c_.__exportStar(Qo(),Ha);c_.__exportStar(a_(),Ha);c_.__exportStar(v1(),Ha)});var l_=m(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.DeleteObjectsCommand=ts.$Command=void 0;var Zpe=be(),efe=x(),tfe=k(),x1=b();Object.defineProperty(ts,"$Command",{enumerable:!0,get:function(){return x1.Command}});var nfe=w(),w1=q(),d_=class e extends x1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,tfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,efe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Zpe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteObjectsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[nfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteObjects"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,w1.se_DeleteObjectsCommand)(t,n)}deserialize(t,n){return(0,w1.de_DeleteObjectsCommand)(t,n)}};ts.DeleteObjectsCommand=d_});var m_=m(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.DeleteObjectTaggingCommand=ns.$Command=void 0;var rfe=x(),ofe=k(),A1=b();Object.defineProperty(ns,"$Command",{enumerable:!0,get:function(){return A1.Command}});var sfe=w(),k1=q(),u_=class e extends A1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,ofe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,rfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeleteObjectTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[sfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeleteObjectTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,k1.se_DeleteObjectTaggingCommand)(t,n)}deserialize(t,n){return(0,k1.de_DeleteObjectTaggingCommand)(t,n)}};ns.DeleteObjectTaggingCommand=u_});var f_=m(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.DeletePublicAccessBlockCommand=rs.$Command=void 0;var ife=x(),afe=k(),N1=b();Object.defineProperty(rs,"$Command",{enumerable:!0,get:function(){return N1.Command}});var cfe=w(),O1=q(),p_=class e extends N1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,afe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,ife.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"DeletePublicAccessBlockCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[cfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"DeletePublicAccessBlock"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,O1.se_DeletePublicAccessBlockCommand)(t,n)}deserialize(t,n){return(0,O1.de_DeletePublicAccessBlockCommand)(t,n)}};rs.DeletePublicAccessBlockCommand=p_});var g_=m(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.GetBucketAccelerateConfigurationCommand=os.$Command=void 0;var dfe=x(),lfe=k(),R1=b();Object.defineProperty(os,"$Command",{enumerable:!0,get:function(){return R1.Command}});var ufe=w(),I1=q(),y_=class e extends R1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,lfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,dfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketAccelerateConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[ufe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketAccelerateConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,I1.se_GetBucketAccelerateConfigurationCommand)(t,n)}deserialize(t,n){return(0,I1.de_GetBucketAccelerateConfigurationCommand)(t,n)}};os.GetBucketAccelerateConfigurationCommand=y_});var __=m(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.GetBucketAclCommand=ss.$Command=void 0;var mfe=x(),pfe=k(),B1=b();Object.defineProperty(ss,"$Command",{enumerable:!0,get:function(){return B1.Command}});var ffe=w(),T1=q(),h_=class e extends B1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,pfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,mfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketAclCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[ffe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketAcl"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,T1.se_GetBucketAclCommand)(t,n)}deserialize(t,n){return(0,T1.de_GetBucketAclCommand)(t,n)}};ss.GetBucketAclCommand=h_});var S_=m(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});is.GetBucketAnalyticsConfigurationCommand=is.$Command=void 0;var yfe=x(),gfe=k(),D1=b();Object.defineProperty(is,"$Command",{enumerable:!0,get:function(){return D1.Command}});var hfe=w(),q1=q(),C_=class e extends D1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,gfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,yfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketAnalyticsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[hfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketAnalyticsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,q1.se_GetBucketAnalyticsConfigurationCommand)(t,n)}deserialize(t,n){return(0,q1.de_GetBucketAnalyticsConfigurationCommand)(t,n)}};is.GetBucketAnalyticsConfigurationCommand=C_});var E_=m(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});as.GetBucketCorsCommand=as.$Command=void 0;var _fe=x(),Cfe=k(),F1=b();Object.defineProperty(as,"$Command",{enumerable:!0,get:function(){return F1.Command}});var Sfe=w(),M1=q(),b_=class e extends F1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Cfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,_fe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketCorsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Sfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketCors"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,M1.se_GetBucketCorsCommand)(t,n)}deserialize(t,n){return(0,M1.de_GetBucketCorsCommand)(t,n)}};as.GetBucketCorsCommand=b_});var v_=m(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.GetBucketEncryptionCommand=cs.$Command=void 0;var bfe=x(),Efe=k(),j1=b();Object.defineProperty(cs,"$Command",{enumerable:!0,get:function(){return j1.Command}});var Pfe=w(),vfe=Je(),L1=q(),P_=class e extends j1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Efe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,bfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketEncryptionCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:vfe.GetBucketEncryptionOutputFilterSensitiveLog,[Pfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketEncryption"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,L1.se_GetBucketEncryptionCommand)(t,n)}deserialize(t,n){return(0,L1.de_GetBucketEncryptionCommand)(t,n)}};cs.GetBucketEncryptionCommand=P_});var x_=m(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.GetBucketIntelligentTieringConfigurationCommand=ds.$Command=void 0;var wfe=x(),xfe=k(),z1=b();Object.defineProperty(ds,"$Command",{enumerable:!0,get:function(){return z1.Command}});var kfe=w(),U1=q(),w_=class e extends z1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,xfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,wfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketIntelligentTieringConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[kfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketIntelligentTieringConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,U1.se_GetBucketIntelligentTieringConfigurationCommand)(t,n)}deserialize(t,n){return(0,U1.de_GetBucketIntelligentTieringConfigurationCommand)(t,n)}};ds.GetBucketIntelligentTieringConfigurationCommand=w_});var A_=m(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.GetBucketInventoryConfigurationCommand=ls.$Command=void 0;var Afe=x(),Ofe=k(),H1=b();Object.defineProperty(ls,"$Command",{enumerable:!0,get:function(){return H1.Command}});var Nfe=w(),Ife=Je(),G1=q(),k_=class e extends H1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Ofe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Afe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketInventoryConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:Ife.GetBucketInventoryConfigurationOutputFilterSensitiveLog,[Nfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketInventoryConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,G1.se_GetBucketInventoryConfigurationCommand)(t,n)}deserialize(t,n){return(0,G1.de_GetBucketInventoryConfigurationCommand)(t,n)}};ls.GetBucketInventoryConfigurationCommand=k_});var N_=m(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.GetBucketLifecycleConfigurationCommand=us.$Command=void 0;var Rfe=x(),Tfe=k(),K1=b();Object.defineProperty(us,"$Command",{enumerable:!0,get:function(){return K1.Command}});var Bfe=w(),$1=q(),O_=class e extends K1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Tfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Rfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketLifecycleConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Bfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketLifecycleConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,$1.se_GetBucketLifecycleConfigurationCommand)(t,n)}deserialize(t,n){return(0,$1.de_GetBucketLifecycleConfigurationCommand)(t,n)}};us.GetBucketLifecycleConfigurationCommand=O_});var R_=m(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.GetBucketLocationCommand=ms.$Command=void 0;var qfe=x(),Dfe=k(),X1=b();Object.defineProperty(ms,"$Command",{enumerable:!0,get:function(){return X1.Command}});var Mfe=w(),V1=q(),I_=class e extends X1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Dfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,qfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketLocationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Mfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketLocation"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,V1.se_GetBucketLocationCommand)(t,n)}deserialize(t,n){return(0,V1.de_GetBucketLocationCommand)(t,n)}};ms.GetBucketLocationCommand=I_});var B_=m(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.GetBucketLoggingCommand=ps.$Command=void 0;var Ffe=x(),Lfe=k(),Y1=b();Object.defineProperty(ps,"$Command",{enumerable:!0,get:function(){return Y1.Command}});var jfe=w(),W1=q(),T_=class e extends Y1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Lfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Ffe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketLoggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[jfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketLogging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,W1.se_GetBucketLoggingCommand)(t,n)}deserialize(t,n){return(0,W1.de_GetBucketLoggingCommand)(t,n)}};ps.GetBucketLoggingCommand=T_});var D_=m(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.GetBucketMetricsConfigurationCommand=fs.$Command=void 0;var Ufe=x(),zfe=k(),Q1=b();Object.defineProperty(fs,"$Command",{enumerable:!0,get:function(){return Q1.Command}});var Gfe=w(),J1=q(),q_=class e extends Q1.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,zfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Ufe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketMetricsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Gfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketMetricsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,J1.se_GetBucketMetricsConfigurationCommand)(t,n)}deserialize(t,n){return(0,J1.de_GetBucketMetricsConfigurationCommand)(t,n)}};fs.GetBucketMetricsConfigurationCommand=q_});var F_=m(ys=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});ys.GetBucketNotificationConfigurationCommand=ys.$Command=void 0;var Hfe=x(),$fe=k(),eM=b();Object.defineProperty(ys,"$Command",{enumerable:!0,get:function(){return eM.Command}});var Kfe=w(),Z1=q(),M_=class e extends eM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,$fe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Hfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketNotificationConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Kfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketNotificationConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,Z1.se_GetBucketNotificationConfigurationCommand)(t,n)}deserialize(t,n){return(0,Z1.de_GetBucketNotificationConfigurationCommand)(t,n)}};ys.GetBucketNotificationConfigurationCommand=M_});var j_=m(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.GetBucketOwnershipControlsCommand=gs.$Command=void 0;var Vfe=x(),Xfe=k(),nM=b();Object.defineProperty(gs,"$Command",{enumerable:!0,get:function(){return nM.Command}});var Wfe=w(),tM=q(),L_=class e extends nM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Xfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Vfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketOwnershipControlsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Wfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketOwnershipControls"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,tM.se_GetBucketOwnershipControlsCommand)(t,n)}deserialize(t,n){return(0,tM.de_GetBucketOwnershipControlsCommand)(t,n)}};gs.GetBucketOwnershipControlsCommand=L_});var z_=m(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.GetBucketPolicyCommand=hs.$Command=void 0;var Yfe=x(),Jfe=k(),oM=b();Object.defineProperty(hs,"$Command",{enumerable:!0,get:function(){return oM.Command}});var Qfe=w(),rM=q(),U_=class e extends oM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Jfe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Yfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketPolicyCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Qfe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketPolicy"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,rM.se_GetBucketPolicyCommand)(t,n)}deserialize(t,n){return(0,rM.de_GetBucketPolicyCommand)(t,n)}};hs.GetBucketPolicyCommand=U_});var H_=m(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});_s.GetBucketPolicyStatusCommand=_s.$Command=void 0;var Zfe=x(),eye=k(),iM=b();Object.defineProperty(_s,"$Command",{enumerable:!0,get:function(){return iM.Command}});var tye=w(),sM=q(),G_=class e extends iM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,eye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Zfe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketPolicyStatusCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[tye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketPolicyStatus"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,sM.se_GetBucketPolicyStatusCommand)(t,n)}deserialize(t,n){return(0,sM.de_GetBucketPolicyStatusCommand)(t,n)}};_s.GetBucketPolicyStatusCommand=G_});var K_=m(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.GetBucketReplicationCommand=Cs.$Command=void 0;var nye=x(),rye=k(),cM=b();Object.defineProperty(Cs,"$Command",{enumerable:!0,get:function(){return cM.Command}});var oye=w(),aM=q(),$_=class e extends cM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,rye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,nye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketReplicationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[oye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketReplication"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,aM.se_GetBucketReplicationCommand)(t,n)}deserialize(t,n){return(0,aM.de_GetBucketReplicationCommand)(t,n)}};Cs.GetBucketReplicationCommand=$_});var X_=m(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});Ss.GetBucketRequestPaymentCommand=Ss.$Command=void 0;var sye=x(),iye=k(),lM=b();Object.defineProperty(Ss,"$Command",{enumerable:!0,get:function(){return lM.Command}});var aye=w(),dM=q(),V_=class e extends lM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,iye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,sye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketRequestPaymentCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[aye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketRequestPayment"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,dM.se_GetBucketRequestPaymentCommand)(t,n)}deserialize(t,n){return(0,dM.de_GetBucketRequestPaymentCommand)(t,n)}};Ss.GetBucketRequestPaymentCommand=V_});var Y_=m(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});bs.GetBucketTaggingCommand=bs.$Command=void 0;var cye=x(),dye=k(),mM=b();Object.defineProperty(bs,"$Command",{enumerable:!0,get:function(){return mM.Command}});var lye=w(),uM=q(),W_=class e extends mM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,dye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,cye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[lye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,uM.se_GetBucketTaggingCommand)(t,n)}deserialize(t,n){return(0,uM.de_GetBucketTaggingCommand)(t,n)}};bs.GetBucketTaggingCommand=W_});var Q_=m(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.GetBucketVersioningCommand=Es.$Command=void 0;var uye=x(),mye=k(),fM=b();Object.defineProperty(Es,"$Command",{enumerable:!0,get:function(){return fM.Command}});var pye=w(),pM=q(),J_=class e extends fM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,mye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,uye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketVersioningCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[pye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketVersioning"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,pM.se_GetBucketVersioningCommand)(t,n)}deserialize(t,n){return(0,pM.de_GetBucketVersioningCommand)(t,n)}};Es.GetBucketVersioningCommand=J_});var eC=m(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});Ps.GetBucketWebsiteCommand=Ps.$Command=void 0;var fye=x(),yye=k(),gM=b();Object.defineProperty(Ps,"$Command",{enumerable:!0,get:function(){return gM.Command}});var gye=w(),yM=q(),Z_=class e extends gM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,yye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,fye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetBucketWebsiteCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[gye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetBucketWebsite"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,yM.se_GetBucketWebsiteCommand)(t,n)}deserialize(t,n){return(0,yM.de_GetBucketWebsiteCommand)(t,n)}};Ps.GetBucketWebsiteCommand=Z_});var nC=m(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.GetObjectAclCommand=vs.$Command=void 0;var hye=x(),_ye=k(),_M=b();Object.defineProperty(vs,"$Command",{enumerable:!0,get:function(){return _M.Command}});var Cye=w(),hM=q(),tC=class e extends _M.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,_ye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,hye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectAclCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Cye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectAcl"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,hM.se_GetObjectAclCommand)(t,n)}deserialize(t,n){return(0,hM.de_GetObjectAclCommand)(t,n)}};vs.GetObjectAclCommand=tC});var oC=m(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.GetObjectAttributesCommand=ws.$Command=void 0;var Sye=bt(),bye=x(),Eye=k(),SM=b();Object.defineProperty(ws,"$Command",{enumerable:!0,get:function(){return SM.Command}});var Pye=w(),vye=Je(),CM=q(),rC=class e extends SM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Eye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,bye.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Sye.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectAttributesCommand",inputFilterSensitiveLog:vye.GetObjectAttributesRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[Pye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectAttributes"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,CM.se_GetObjectAttributesCommand)(t,n)}deserialize(t,n){return(0,CM.de_GetObjectAttributesCommand)(t,n)}};ws.GetObjectAttributesCommand=rC});var iC=m(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});xs.GetObjectCommand=xs.$Command=void 0;var wye=be(),xye=bt(),kye=x(),Aye=k(),PM=b();Object.defineProperty(xs,"$Command",{enumerable:!0,get:function(){return PM.Command}});var Oye=w(),bM=Je(),EM=q(),sC=class e extends PM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Aye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,kye.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,xye.getSsecPlugin)(n)),this.middlewareStack.use((0,wye.getFlexibleChecksumsPlugin)(n,{input:this.input,requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC32","CRC32C","SHA256","SHA1"]}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectCommand",inputFilterSensitiveLog:bM.GetObjectRequestFilterSensitiveLog,outputFilterSensitiveLog:bM.GetObjectOutputFilterSensitiveLog,[Oye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,EM.se_GetObjectCommand)(t,n)}deserialize(t,n){return(0,EM.de_GetObjectCommand)(t,n)}};xs.GetObjectCommand=sC});var cC=m(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.GetObjectLegalHoldCommand=ks.$Command=void 0;var Nye=x(),Iye=k(),wM=b();Object.defineProperty(ks,"$Command",{enumerable:!0,get:function(){return wM.Command}});var Rye=w(),vM=q(),aC=class e extends wM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Iye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Nye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectLegalHoldCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Rye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectLegalHold"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,vM.se_GetObjectLegalHoldCommand)(t,n)}deserialize(t,n){return(0,vM.de_GetObjectLegalHoldCommand)(t,n)}};ks.GetObjectLegalHoldCommand=aC});var lC=m(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.GetObjectLockConfigurationCommand=As.$Command=void 0;var Tye=x(),Bye=k(),kM=b();Object.defineProperty(As,"$Command",{enumerable:!0,get:function(){return kM.Command}});var qye=w(),xM=q(),dC=class e extends kM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Bye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Tye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectLockConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[qye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectLockConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,xM.se_GetObjectLockConfigurationCommand)(t,n)}deserialize(t,n){return(0,xM.de_GetObjectLockConfigurationCommand)(t,n)}};As.GetObjectLockConfigurationCommand=dC});var mC=m(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.GetObjectRetentionCommand=Os.$Command=void 0;var Dye=x(),Mye=k(),OM=b();Object.defineProperty(Os,"$Command",{enumerable:!0,get:function(){return OM.Command}});var Fye=w(),AM=q(),uC=class e extends OM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Mye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Dye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectRetentionCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Fye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectRetention"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,AM.se_GetObjectRetentionCommand)(t,n)}deserialize(t,n){return(0,AM.de_GetObjectRetentionCommand)(t,n)}};Os.GetObjectRetentionCommand=uC});var fC=m(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.GetObjectTaggingCommand=Ns.$Command=void 0;var Lye=x(),jye=k(),IM=b();Object.defineProperty(Ns,"$Command",{enumerable:!0,get:function(){return IM.Command}});var Uye=w(),NM=q(),pC=class e extends IM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,jye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Lye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Uye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,NM.se_GetObjectTaggingCommand)(t,n)}deserialize(t,n){return(0,NM.de_GetObjectTaggingCommand)(t,n)}};Ns.GetObjectTaggingCommand=pC});var gC=m(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});Is.GetObjectTorrentCommand=Is.$Command=void 0;var zye=x(),Gye=k(),TM=b();Object.defineProperty(Is,"$Command",{enumerable:!0,get:function(){return TM.Command}});var Hye=w(),$ye=Je(),RM=q(),yC=class e extends TM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Gye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,zye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetObjectTorrentCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:$ye.GetObjectTorrentOutputFilterSensitiveLog,[Hye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetObjectTorrent"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,RM.se_GetObjectTorrentCommand)(t,n)}deserialize(t,n){return(0,RM.de_GetObjectTorrentCommand)(t,n)}};Is.GetObjectTorrentCommand=yC});var _C=m(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.GetPublicAccessBlockCommand=Rs.$Command=void 0;var Kye=x(),Vye=k(),qM=b();Object.defineProperty(Rs,"$Command",{enumerable:!0,get:function(){return qM.Command}});var Xye=w(),BM=q(),hC=class e extends qM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Vye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Kye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"GetPublicAccessBlockCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Xye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"GetPublicAccessBlock"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,BM.se_GetPublicAccessBlockCommand)(t,n)}deserialize(t,n){return(0,BM.de_GetPublicAccessBlockCommand)(t,n)}};Rs.GetPublicAccessBlockCommand=hC});var $a=m(Ts=>{"use strict";Object.defineProperty(Ts,"__esModule",{value:!0});Ts.HeadBucketCommand=Ts.$Command=void 0;var Wye=x(),Yye=k(),MM=b();Object.defineProperty(Ts,"$Command",{enumerable:!0,get:function(){return MM.Command}});var Jye=w(),DM=q(),CC=class e extends MM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Yye.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Wye.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"HeadBucketCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Jye.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"HeadBucket"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,DM.se_HeadBucketCommand)(t,n)}deserialize(t,n){return(0,DM.de_HeadBucketCommand)(t,n)}};Ts.HeadBucketCommand=CC});var Ka=m(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});Bs.HeadObjectCommand=Bs.$Command=void 0;var Qye=bt(),Zye=x(),ege=k(),jM=b();Object.defineProperty(Bs,"$Command",{enumerable:!0,get:function(){return jM.Command}});var tge=w(),FM=Je(),LM=q(),SC=class e extends jM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,ege.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Zye.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Qye.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"HeadObjectCommand",inputFilterSensitiveLog:FM.HeadObjectRequestFilterSensitiveLog,outputFilterSensitiveLog:FM.HeadObjectOutputFilterSensitiveLog,[tge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"HeadObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,LM.se_HeadObjectCommand)(t,n)}deserialize(t,n){return(0,LM.de_HeadObjectCommand)(t,n)}};Bs.HeadObjectCommand=SC});var EC=m(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});qs.ListBucketAnalyticsConfigurationsCommand=qs.$Command=void 0;var nge=x(),rge=k(),zM=b();Object.defineProperty(qs,"$Command",{enumerable:!0,get:function(){return zM.Command}});var oge=w(),UM=q(),bC=class e extends zM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,rge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,nge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListBucketAnalyticsConfigurationsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[oge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListBucketAnalyticsConfigurations"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,UM.se_ListBucketAnalyticsConfigurationsCommand)(t,n)}deserialize(t,n){return(0,UM.de_ListBucketAnalyticsConfigurationsCommand)(t,n)}};qs.ListBucketAnalyticsConfigurationsCommand=bC});var vC=m(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.ListBucketIntelligentTieringConfigurationsCommand=Ds.$Command=void 0;var sge=x(),ige=k(),HM=b();Object.defineProperty(Ds,"$Command",{enumerable:!0,get:function(){return HM.Command}});var age=w(),GM=q(),PC=class e extends HM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,ige.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,sge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListBucketIntelligentTieringConfigurationsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[age.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListBucketIntelligentTieringConfigurations"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,GM.se_ListBucketIntelligentTieringConfigurationsCommand)(t,n)}deserialize(t,n){return(0,GM.de_ListBucketIntelligentTieringConfigurationsCommand)(t,n)}};Ds.ListBucketIntelligentTieringConfigurationsCommand=PC});var xC=m(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});Ms.ListBucketInventoryConfigurationsCommand=Ms.$Command=void 0;var cge=x(),dge=k(),KM=b();Object.defineProperty(Ms,"$Command",{enumerable:!0,get:function(){return KM.Command}});var lge=w(),uge=Je(),$M=q(),wC=class e extends KM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,dge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,cge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListBucketInventoryConfigurationsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:uge.ListBucketInventoryConfigurationsOutputFilterSensitiveLog,[lge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListBucketInventoryConfigurations"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,$M.se_ListBucketInventoryConfigurationsCommand)(t,n)}deserialize(t,n){return(0,$M.de_ListBucketInventoryConfigurationsCommand)(t,n)}};Ms.ListBucketInventoryConfigurationsCommand=wC});var AC=m(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});Fs.ListBucketMetricsConfigurationsCommand=Fs.$Command=void 0;var mge=x(),pge=k(),XM=b();Object.defineProperty(Fs,"$Command",{enumerable:!0,get:function(){return XM.Command}});var fge=w(),VM=q(),kC=class e extends XM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,pge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,mge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListBucketMetricsConfigurationsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[fge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListBucketMetricsConfigurations"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,VM.se_ListBucketMetricsConfigurationsCommand)(t,n)}deserialize(t,n){return(0,VM.de_ListBucketMetricsConfigurationsCommand)(t,n)}};Fs.ListBucketMetricsConfigurationsCommand=kC});var NC=m(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.ListBucketsCommand=Ls.$Command=void 0;var yge=x(),gge=k(),YM=b();Object.defineProperty(Ls,"$Command",{enumerable:!0,get:function(){return YM.Command}});var hge=w(),WM=q(),OC=class e extends YM.Command{static getEndpointParameterInstructions(){return{ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,gge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,yge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListBucketsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[hge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListBuckets"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,WM.se_ListBucketsCommand)(t,n)}deserialize(t,n){return(0,WM.de_ListBucketsCommand)(t,n)}};Ls.ListBucketsCommand=OC});var RC=m(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});js.ListMultipartUploadsCommand=js.$Command=void 0;var _ge=x(),Cge=k(),QM=b();Object.defineProperty(js,"$Command",{enumerable:!0,get:function(){return QM.Command}});var Sge=w(),JM=q(),IC=class e extends QM.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Cge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,_ge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListMultipartUploadsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Sge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListMultipartUploads"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,JM.se_ListMultipartUploadsCommand)(t,n)}deserialize(t,n){return(0,JM.de_ListMultipartUploadsCommand)(t,n)}};js.ListMultipartUploadsCommand=IC});var BC=m(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.ListObjectsCommand=Us.$Command=void 0;var bge=x(),Ege=k(),eF=b();Object.defineProperty(Us,"$Command",{enumerable:!0,get:function(){return eF.Command}});var Pge=w(),ZM=q(),TC=class e extends eF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Ege.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,bge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListObjectsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Pge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListObjects"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,ZM.se_ListObjectsCommand)(t,n)}deserialize(t,n){return(0,ZM.de_ListObjectsCommand)(t,n)}};Us.ListObjectsCommand=TC});var Nm=m(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});zs.ListObjectsV2Command=zs.$Command=void 0;var vge=x(),wge=k(),nF=b();Object.defineProperty(zs,"$Command",{enumerable:!0,get:function(){return nF.Command}});var xge=w(),tF=q(),qC=class e extends nF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,wge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,vge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListObjectsV2Command",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[xge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListObjectsV2"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,tF.se_ListObjectsV2Command)(t,n)}deserialize(t,n){return(0,tF.de_ListObjectsV2Command)(t,n)}};zs.ListObjectsV2Command=qC});var MC=m(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.ListObjectVersionsCommand=Gs.$Command=void 0;var kge=x(),Age=k(),oF=b();Object.defineProperty(Gs,"$Command",{enumerable:!0,get:function(){return oF.Command}});var Oge=w(),rF=q(),DC=class e extends oF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Age.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,kge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListObjectVersionsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Oge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListObjectVersions"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,rF.se_ListObjectVersionsCommand)(t,n)}deserialize(t,n){return(0,rF.de_ListObjectVersionsCommand)(t,n)}};Gs.ListObjectVersionsCommand=DC});var Im=m(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});Hs.ListPartsCommand=Hs.$Command=void 0;var Nge=bt(),Ige=x(),Rge=k(),iF=b();Object.defineProperty(Hs,"$Command",{enumerable:!0,get:function(){return iF.Command}});var Tge=w(),Bge=Je(),sF=q(),FC=class e extends iF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Rge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Ige.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Nge.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"ListPartsCommand",inputFilterSensitiveLog:Bge.ListPartsRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[Tge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"ListParts"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,sF.se_ListPartsCommand)(t,n)}deserialize(t,n){return(0,sF.de_ListPartsCommand)(t,n)}};Hs.ListPartsCommand=FC});var jC=m($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.PutBucketAccelerateConfigurationCommand=$s.$Command=void 0;var qge=be(),Dge=x(),Mge=k(),cF=b();Object.defineProperty($s,"$Command",{enumerable:!0,get:function(){return cF.Command}});var Fge=w(),aF=q(),LC=class e extends cF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Mge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Dge.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,qge.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!1}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketAccelerateConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Fge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketAccelerateConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,aF.se_PutBucketAccelerateConfigurationCommand)(t,n)}deserialize(t,n){return(0,aF.de_PutBucketAccelerateConfigurationCommand)(t,n)}};$s.PutBucketAccelerateConfigurationCommand=LC});var zC=m(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.PutBucketAclCommand=Ks.$Command=void 0;var Lge=be(),jge=x(),Uge=k(),lF=b();Object.defineProperty(Ks,"$Command",{enumerable:!0,get:function(){return lF.Command}});var zge=w(),dF=q(),UC=class e extends lF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Uge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,jge.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Lge.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketAclCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[zge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketAcl"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,dF.se_PutBucketAclCommand)(t,n)}deserialize(t,n){return(0,dF.de_PutBucketAclCommand)(t,n)}};Ks.PutBucketAclCommand=UC});var HC=m(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Vs.PutBucketAnalyticsConfigurationCommand=Vs.$Command=void 0;var Gge=x(),Hge=k(),mF=b();Object.defineProperty(Vs,"$Command",{enumerable:!0,get:function(){return mF.Command}});var $ge=w(),uF=q(),GC=class e extends mF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Hge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Gge.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketAnalyticsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[$ge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketAnalyticsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,uF.se_PutBucketAnalyticsConfigurationCommand)(t,n)}deserialize(t,n){return(0,uF.de_PutBucketAnalyticsConfigurationCommand)(t,n)}};Vs.PutBucketAnalyticsConfigurationCommand=GC});var KC=m(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.PutBucketCorsCommand=Xs.$Command=void 0;var Kge=be(),Vge=x(),Xge=k(),fF=b();Object.defineProperty(Xs,"$Command",{enumerable:!0,get:function(){return fF.Command}});var Wge=w(),pF=q(),$C=class e extends fF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Xge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Vge.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Kge.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketCorsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Wge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketCors"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,pF.se_PutBucketCorsCommand)(t,n)}deserialize(t,n){return(0,pF.de_PutBucketCorsCommand)(t,n)}};Xs.PutBucketCorsCommand=$C});var XC=m(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});Ws.PutBucketEncryptionCommand=Ws.$Command=void 0;var Yge=be(),Jge=x(),Qge=k(),gF=b();Object.defineProperty(Ws,"$Command",{enumerable:!0,get:function(){return gF.Command}});var Zge=w(),ehe=Je(),yF=q(),VC=class e extends gF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Qge.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Jge.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Yge.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketEncryptionCommand",inputFilterSensitiveLog:ehe.PutBucketEncryptionRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[Zge.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketEncryption"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,yF.se_PutBucketEncryptionCommand)(t,n)}deserialize(t,n){return(0,yF.de_PutBucketEncryptionCommand)(t,n)}};Ws.PutBucketEncryptionCommand=VC});var YC=m(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});Ys.PutBucketIntelligentTieringConfigurationCommand=Ys.$Command=void 0;var the=x(),nhe=k(),_F=b();Object.defineProperty(Ys,"$Command",{enumerable:!0,get:function(){return _F.Command}});var rhe=w(),hF=q(),WC=class e extends _F.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,nhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,the.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketIntelligentTieringConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[rhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketIntelligentTieringConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,hF.se_PutBucketIntelligentTieringConfigurationCommand)(t,n)}deserialize(t,n){return(0,hF.de_PutBucketIntelligentTieringConfigurationCommand)(t,n)}};Ys.PutBucketIntelligentTieringConfigurationCommand=WC});var QC=m(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.PutBucketInventoryConfigurationCommand=Js.$Command=void 0;var ohe=x(),she=k(),SF=b();Object.defineProperty(Js,"$Command",{enumerable:!0,get:function(){return SF.Command}});var ihe=w(),ahe=Je(),CF=q(),JC=class e extends SF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,she.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,ohe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketInventoryConfigurationCommand",inputFilterSensitiveLog:ahe.PutBucketInventoryConfigurationRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[ihe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketInventoryConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,CF.se_PutBucketInventoryConfigurationCommand)(t,n)}deserialize(t,n){return(0,CF.de_PutBucketInventoryConfigurationCommand)(t,n)}};Js.PutBucketInventoryConfigurationCommand=JC});var eS=m(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.PutBucketLifecycleConfigurationCommand=Qs.$Command=void 0;var che=be(),dhe=x(),lhe=k(),EF=b();Object.defineProperty(Qs,"$Command",{enumerable:!0,get:function(){return EF.Command}});var uhe=w(),bF=q(),ZC=class e extends EF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,lhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,dhe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,che.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketLifecycleConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[uhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketLifecycleConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,bF.se_PutBucketLifecycleConfigurationCommand)(t,n)}deserialize(t,n){return(0,bF.de_PutBucketLifecycleConfigurationCommand)(t,n)}};Qs.PutBucketLifecycleConfigurationCommand=ZC});var nS=m(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.PutBucketLoggingCommand=Zs.$Command=void 0;var mhe=be(),phe=x(),fhe=k(),vF=b();Object.defineProperty(Zs,"$Command",{enumerable:!0,get:function(){return vF.Command}});var yhe=w(),PF=q(),tS=class e extends vF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,fhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,phe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,mhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketLoggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[yhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketLogging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,PF.se_PutBucketLoggingCommand)(t,n)}deserialize(t,n){return(0,PF.de_PutBucketLoggingCommand)(t,n)}};Zs.PutBucketLoggingCommand=tS});var oS=m(ei=>{"use strict";Object.defineProperty(ei,"__esModule",{value:!0});ei.PutBucketMetricsConfigurationCommand=ei.$Command=void 0;var ghe=x(),hhe=k(),xF=b();Object.defineProperty(ei,"$Command",{enumerable:!0,get:function(){return xF.Command}});var _he=w(),wF=q(),rS=class e extends xF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,hhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,ghe.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketMetricsConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[_he.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketMetricsConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,wF.se_PutBucketMetricsConfigurationCommand)(t,n)}deserialize(t,n){return(0,wF.de_PutBucketMetricsConfigurationCommand)(t,n)}};ei.PutBucketMetricsConfigurationCommand=rS});var iS=m(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.PutBucketNotificationConfigurationCommand=ti.$Command=void 0;var Che=x(),She=k(),AF=b();Object.defineProperty(ti,"$Command",{enumerable:!0,get:function(){return AF.Command}});var bhe=w(),kF=q(),sS=class e extends AF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,She.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Che.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketNotificationConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[bhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketNotificationConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,kF.se_PutBucketNotificationConfigurationCommand)(t,n)}deserialize(t,n){return(0,kF.de_PutBucketNotificationConfigurationCommand)(t,n)}};ti.PutBucketNotificationConfigurationCommand=sS});var cS=m(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.PutBucketOwnershipControlsCommand=ni.$Command=void 0;var Ehe=be(),Phe=x(),vhe=k(),NF=b();Object.defineProperty(ni,"$Command",{enumerable:!0,get:function(){return NF.Command}});var whe=w(),OF=q(),aS=class e extends NF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,vhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Phe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Ehe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketOwnershipControlsCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[whe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketOwnershipControls"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,OF.se_PutBucketOwnershipControlsCommand)(t,n)}deserialize(t,n){return(0,OF.de_PutBucketOwnershipControlsCommand)(t,n)}};ni.PutBucketOwnershipControlsCommand=aS});var lS=m(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.PutBucketPolicyCommand=ri.$Command=void 0;var xhe=be(),khe=x(),Ahe=k(),RF=b();Object.defineProperty(ri,"$Command",{enumerable:!0,get:function(){return RF.Command}});var Ohe=w(),IF=q(),dS=class e extends RF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Ahe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,khe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,xhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketPolicyCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Ohe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketPolicy"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,IF.se_PutBucketPolicyCommand)(t,n)}deserialize(t,n){return(0,IF.de_PutBucketPolicyCommand)(t,n)}};ri.PutBucketPolicyCommand=dS});var mS=m(oi=>{"use strict";Object.defineProperty(oi,"__esModule",{value:!0});oi.PutBucketReplicationCommand=oi.$Command=void 0;var Nhe=be(),Ihe=x(),Rhe=k(),BF=b();Object.defineProperty(oi,"$Command",{enumerable:!0,get:function(){return BF.Command}});var The=w(),TF=q(),uS=class e extends BF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Rhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Ihe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Nhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketReplicationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[The.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketReplication"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,TF.se_PutBucketReplicationCommand)(t,n)}deserialize(t,n){return(0,TF.de_PutBucketReplicationCommand)(t,n)}};oi.PutBucketReplicationCommand=uS});var fS=m(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.PutBucketRequestPaymentCommand=si.$Command=void 0;var Bhe=be(),qhe=x(),Dhe=k(),DF=b();Object.defineProperty(si,"$Command",{enumerable:!0,get:function(){return DF.Command}});var Mhe=w(),qF=q(),pS=class e extends DF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Dhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,qhe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Bhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketRequestPaymentCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Mhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketRequestPayment"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,qF.se_PutBucketRequestPaymentCommand)(t,n)}deserialize(t,n){return(0,qF.de_PutBucketRequestPaymentCommand)(t,n)}};si.PutBucketRequestPaymentCommand=pS});var gS=m(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.PutBucketTaggingCommand=ii.$Command=void 0;var Fhe=be(),Lhe=x(),jhe=k(),FF=b();Object.defineProperty(ii,"$Command",{enumerable:!0,get:function(){return FF.Command}});var Uhe=w(),MF=q(),yS=class e extends FF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,jhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Lhe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Fhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Uhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,MF.se_PutBucketTaggingCommand)(t,n)}deserialize(t,n){return(0,MF.de_PutBucketTaggingCommand)(t,n)}};ii.PutBucketTaggingCommand=yS});var _S=m(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.PutBucketVersioningCommand=ai.$Command=void 0;var zhe=be(),Ghe=x(),Hhe=k(),jF=b();Object.defineProperty(ai,"$Command",{enumerable:!0,get:function(){return jF.Command}});var $he=w(),LF=q(),hS=class e extends jF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Hhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Ghe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,zhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketVersioningCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[$he.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketVersioning"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,LF.se_PutBucketVersioningCommand)(t,n)}deserialize(t,n){return(0,LF.de_PutBucketVersioningCommand)(t,n)}};ai.PutBucketVersioningCommand=hS});var SS=m(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.PutBucketWebsiteCommand=ci.$Command=void 0;var Khe=be(),Vhe=x(),Xhe=k(),zF=b();Object.defineProperty(ci,"$Command",{enumerable:!0,get:function(){return zF.Command}});var Whe=w(),UF=q(),CS=class e extends zF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Xhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Vhe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Khe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutBucketWebsiteCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Whe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutBucketWebsite"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,UF.se_PutBucketWebsiteCommand)(t,n)}deserialize(t,n){return(0,UF.de_PutBucketWebsiteCommand)(t,n)}};ci.PutBucketWebsiteCommand=CS});var ES=m(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.PutObjectAclCommand=di.$Command=void 0;var Yhe=be(),Jhe=x(),Qhe=k(),HF=b();Object.defineProperty(di,"$Command",{enumerable:!0,get:function(){return HF.Command}});var Zhe=w(),GF=q(),bS=class e extends HF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,Qhe.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,Jhe.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,Yhe.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectAclCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[Zhe.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObjectAcl"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,GF.se_PutObjectAclCommand)(t,n)}deserialize(t,n){return(0,GF.de_PutObjectAclCommand)(t,n)}};di.PutObjectAclCommand=bS});var vS=m(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.PutObjectCommand=li.$Command=void 0;var e_e=be(),t_e=Ir(),n_e=bt(),r_e=x(),o_e=k(),VF=b();Object.defineProperty(li,"$Command",{enumerable:!0,get:function(){return VF.Command}});var s_e=w(),$F=Je(),KF=q(),PS=class e extends VF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,o_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,r_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,t_e.getCheckContentLengthHeaderPlugin)(n)),this.middlewareStack.use((0,n_e.getSsecPlugin)(n)),this.middlewareStack.use((0,e_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!1}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectCommand",inputFilterSensitiveLog:$F.PutObjectRequestFilterSensitiveLog,outputFilterSensitiveLog:$F.PutObjectOutputFilterSensitiveLog,[s_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,KF.se_PutObjectCommand)(t,n)}deserialize(t,n){return(0,KF.de_PutObjectCommand)(t,n)}};li.PutObjectCommand=PS});var xS=m(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.PutObjectLegalHoldCommand=ui.$Command=void 0;var i_e=be(),a_e=x(),c_e=k(),WF=b();Object.defineProperty(ui,"$Command",{enumerable:!0,get:function(){return WF.Command}});var d_e=w(),XF=q(),wS=class e extends WF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,c_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,a_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,i_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectLegalHoldCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[d_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObjectLegalHold"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,XF.se_PutObjectLegalHoldCommand)(t,n)}deserialize(t,n){return(0,XF.de_PutObjectLegalHoldCommand)(t,n)}};ui.PutObjectLegalHoldCommand=wS});var AS=m(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.PutObjectLockConfigurationCommand=mi.$Command=void 0;var l_e=be(),u_e=x(),m_e=k(),JF=b();Object.defineProperty(mi,"$Command",{enumerable:!0,get:function(){return JF.Command}});var p_e=w(),YF=q(),kS=class e extends JF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,m_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,u_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,l_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectLockConfigurationCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[p_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObjectLockConfiguration"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,YF.se_PutObjectLockConfigurationCommand)(t,n)}deserialize(t,n){return(0,YF.de_PutObjectLockConfigurationCommand)(t,n)}};mi.PutObjectLockConfigurationCommand=kS});var NS=m(pi=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});pi.PutObjectRetentionCommand=pi.$Command=void 0;var f_e=be(),y_e=x(),g_e=k(),ZF=b();Object.defineProperty(pi,"$Command",{enumerable:!0,get:function(){return ZF.Command}});var h_e=w(),QF=q(),OS=class e extends ZF.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,g_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,y_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,f_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectRetentionCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[h_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObjectRetention"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,QF.se_PutObjectRetentionCommand)(t,n)}deserialize(t,n){return(0,QF.de_PutObjectRetentionCommand)(t,n)}};pi.PutObjectRetentionCommand=OS});var RS=m(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.PutObjectTaggingCommand=fi.$Command=void 0;var __e=be(),C_e=x(),S_e=k(),tL=b();Object.defineProperty(fi,"$Command",{enumerable:!0,get:function(){return tL.Command}});var b_e=w(),eL=q(),IS=class e extends tL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,S_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,C_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,__e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutObjectTaggingCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[b_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutObjectTagging"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,eL.se_PutObjectTaggingCommand)(t,n)}deserialize(t,n){return(0,eL.de_PutObjectTaggingCommand)(t,n)}};fi.PutObjectTaggingCommand=IS});var BS=m(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.PutPublicAccessBlockCommand=yi.$Command=void 0;var E_e=be(),P_e=x(),v_e=k(),rL=b();Object.defineProperty(yi,"$Command",{enumerable:!0,get:function(){return rL.Command}});var w_e=w(),nL=q(),TS=class e extends rL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,v_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,P_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,E_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!0}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"PutPublicAccessBlockCommand",inputFilterSensitiveLog:c=>c,outputFilterSensitiveLog:c=>c,[w_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"PutPublicAccessBlock"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,nL.se_PutPublicAccessBlockCommand)(t,n)}deserialize(t,n){return(0,nL.de_PutPublicAccessBlockCommand)(t,n)}};yi.PutPublicAccessBlockCommand=TS});var DS=m(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.RestoreObjectCommand=gi.$Command=void 0;var x_e=be(),k_e=x(),A_e=k(),sL=b();Object.defineProperty(gi,"$Command",{enumerable:!0,get:function(){return sL.Command}});var O_e=w(),N_e=Zn(),oL=q(),qS=class e extends sL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,A_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,k_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,x_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!1}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"RestoreObjectCommand",inputFilterSensitiveLog:N_e.RestoreObjectRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[O_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"RestoreObject"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,oL.se_RestoreObjectCommand)(t,n)}deserialize(t,n){return(0,oL.de_RestoreObjectCommand)(t,n)}};gi.RestoreObjectCommand=qS});var FS=m(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});hi.SelectObjectContentCommand=hi.$Command=void 0;var I_e=bt(),R_e=x(),T_e=k(),cL=b();Object.defineProperty(hi,"$Command",{enumerable:!0,get:function(){return cL.Command}});var B_e=w(),iL=Zn(),aL=q(),MS=class e extends cL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,T_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,R_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,I_e.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"SelectObjectContentCommand",inputFilterSensitiveLog:iL.SelectObjectContentRequestFilterSensitiveLog,outputFilterSensitiveLog:iL.SelectObjectContentOutputFilterSensitiveLog,[B_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"SelectObjectContent"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,aL.se_SelectObjectContentCommand)(t,n)}deserialize(t,n){return(0,aL.de_SelectObjectContentCommand)(t,n)}};hi.SelectObjectContentCommand=MS});var jS=m(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.UploadPartCommand=_i.$Command=void 0;var q_e=be(),D_e=bt(),M_e=x(),F_e=k(),uL=b();Object.defineProperty(_i,"$Command",{enumerable:!0,get:function(){return uL.Command}});var L_e=w(),dL=Zn(),lL=q(),LS=class e extends uL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,F_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,M_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,D_e.getSsecPlugin)(n)),this.middlewareStack.use((0,q_e.getFlexibleChecksumsPlugin)(n,{input:this.input,requestAlgorithmMember:"ChecksumAlgorithm",requestChecksumRequired:!1}));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"UploadPartCommand",inputFilterSensitiveLog:dL.UploadPartRequestFilterSensitiveLog,outputFilterSensitiveLog:dL.UploadPartOutputFilterSensitiveLog,[L_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"UploadPart"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,lL.se_UploadPartCommand)(t,n)}deserialize(t,n){return(0,lL.de_UploadPartCommand)(t,n)}};_i.UploadPartCommand=LS});var zS=m(Ci=>{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});Ci.UploadPartCopyCommand=Ci.$Command=void 0;var j_e=Ir(),U_e=bt(),z_e=x(),G_e=k(),fL=b();Object.defineProperty(Ci,"$Command",{enumerable:!0,get:function(){return fL.Command}});var H_e=w(),mL=Zn(),pL=q(),US=class e extends fL.Command{static getEndpointParameterInstructions(){return{Bucket:{type:"contextParams",name:"Bucket"},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,G_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,z_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions())),this.middlewareStack.use((0,j_e.getThrow200ExceptionsPlugin)(n)),this.middlewareStack.use((0,U_e.getSsecPlugin)(n));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"UploadPartCopyCommand",inputFilterSensitiveLog:mL.UploadPartCopyRequestFilterSensitiveLog,outputFilterSensitiveLog:mL.UploadPartCopyOutputFilterSensitiveLog,[H_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"UploadPartCopy"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,pL.se_UploadPartCopyCommand)(t,n)}deserialize(t,n){return(0,pL.de_UploadPartCopyCommand)(t,n)}};Ci.UploadPartCopyCommand=US});var HS=m(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.WriteGetObjectResponseCommand=Si.$Command=void 0;var $_e=x(),K_e=k(),gL=b();Object.defineProperty(Si,"$Command",{enumerable:!0,get:function(){return gL.Command}});var V_e=w(),X_e=Zn(),yL=q(),GS=class e extends gL.Command{static getEndpointParameterInstructions(){return{UseObjectLambdaEndpoint:{type:"staticContextParams",value:!0},ForcePathStyle:{type:"clientContextParams",name:"forcePathStyle"},UseArnRegion:{type:"clientContextParams",name:"useArnRegion"},DisableMultiRegionAccessPoints:{type:"clientContextParams",name:"disableMultiregionAccessPoints"},Accelerate:{type:"clientContextParams",name:"useAccelerateEndpoint"},UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}}constructor(t){super(),this.input=t}resolveMiddleware(t,n,r){this.middlewareStack.use((0,K_e.getSerdePlugin)(n,this.serialize,this.deserialize)),this.middlewareStack.use((0,$_e.getEndpointPlugin)(n,e.getEndpointParameterInstructions()));let o=t.concat(this.middlewareStack),{logger:s}=n,u={logger:s,clientName:"S3Client",commandName:"WriteGetObjectResponseCommand",inputFilterSensitiveLog:X_e.WriteGetObjectResponseRequestFilterSensitiveLog,outputFilterSensitiveLog:c=>c,[V_e.SMITHY_CONTEXT_KEY]:{service:"AmazonS3",operation:"WriteGetObjectResponse"}},{requestHandler:l}=n;return o.resolve(c=>l.handle(c.request,r||{}),u)}serialize(t,n){return(0,yL.se_WriteGetObjectResponseCommand)(t,n)}deserialize(t,n){return(0,yL.de_WriteGetObjectResponseCommand)(t,n)}};Si.WriteGetObjectResponseCommand=GS});var hL=m(Tm=>{"use strict";Object.defineProperty(Tm,"__esModule",{value:!0});Tm.S3=void 0;var W_e=b(),Y_e=ph(),J_e=yh(),Q_e=hh(),Z_e=Ch(),eCe=bh(),tCe=Ph(),nCe=wh(),rCe=kh(),oCe=Oh(),sCe=Ih(),iCe=Th(),aCe=qh(),cCe=Mh(),dCe=Lh(),lCe=Uh(),uCe=Gh(),mCe=$h(),pCe=Vh(),fCe=Wh(),yCe=l_(),gCe=m_(),hCe=f_(),_Ce=g_(),CCe=__(),SCe=S_(),bCe=E_(),ECe=v_(),PCe=x_(),vCe=A_(),wCe=N_(),xCe=R_(),kCe=B_(),ACe=D_(),OCe=F_(),NCe=j_(),ICe=z_(),RCe=H_(),TCe=K_(),BCe=X_(),qCe=Y_(),DCe=Q_(),MCe=eC(),FCe=nC(),LCe=oC(),jCe=iC(),UCe=cC(),zCe=lC(),GCe=mC(),HCe=fC(),$Ce=gC(),KCe=_C(),VCe=$a(),XCe=Ka(),WCe=EC(),YCe=vC(),JCe=xC(),QCe=AC(),ZCe=NC(),eSe=RC(),tSe=BC(),nSe=Nm(),rSe=MC(),oSe=Im(),sSe=jC(),iSe=zC(),aSe=HC(),cSe=KC(),dSe=XC(),lSe=YC(),uSe=QC(),mSe=eS(),pSe=nS(),fSe=oS(),ySe=iS(),gSe=cS(),hSe=lS(),_Se=mS(),CSe=fS(),SSe=gS(),bSe=_S(),ESe=SS(),PSe=ES(),vSe=vS(),wSe=xS(),xSe=AS(),kSe=NS(),ASe=RS(),OSe=BS(),NSe=DS(),ISe=FS(),RSe=jS(),TSe=zS(),BSe=HS(),qSe=La(),DSe={AbortMultipartUploadCommand:Y_e.AbortMultipartUploadCommand,CompleteMultipartUploadCommand:J_e.CompleteMultipartUploadCommand,CopyObjectCommand:Q_e.CopyObjectCommand,CreateBucketCommand:Z_e.CreateBucketCommand,CreateMultipartUploadCommand:eCe.CreateMultipartUploadCommand,DeleteBucketCommand:nCe.DeleteBucketCommand,DeleteBucketAnalyticsConfigurationCommand:tCe.DeleteBucketAnalyticsConfigurationCommand,DeleteBucketCorsCommand:rCe.DeleteBucketCorsCommand,DeleteBucketEncryptionCommand:oCe.DeleteBucketEncryptionCommand,DeleteBucketIntelligentTieringConfigurationCommand:sCe.DeleteBucketIntelligentTieringConfigurationCommand,DeleteBucketInventoryConfigurationCommand:iCe.DeleteBucketInventoryConfigurationCommand,DeleteBucketLifecycleCommand:aCe.DeleteBucketLifecycleCommand,DeleteBucketMetricsConfigurationCommand:cCe.DeleteBucketMetricsConfigurationCommand,DeleteBucketOwnershipControlsCommand:dCe.DeleteBucketOwnershipControlsCommand,DeleteBucketPolicyCommand:lCe.DeleteBucketPolicyCommand,DeleteBucketReplicationCommand:uCe.DeleteBucketReplicationCommand,DeleteBucketTaggingCommand:mCe.DeleteBucketTaggingCommand,DeleteBucketWebsiteCommand:pCe.DeleteBucketWebsiteCommand,DeleteObjectCommand:fCe.DeleteObjectCommand,DeleteObjectsCommand:yCe.DeleteObjectsCommand,DeleteObjectTaggingCommand:gCe.DeleteObjectTaggingCommand,DeletePublicAccessBlockCommand:hCe.DeletePublicAccessBlockCommand,GetBucketAccelerateConfigurationCommand:_Ce.GetBucketAccelerateConfigurationCommand,GetBucketAclCommand:CCe.GetBucketAclCommand,GetBucketAnalyticsConfigurationCommand:SCe.GetBucketAnalyticsConfigurationCommand,GetBucketCorsCommand:bCe.GetBucketCorsCommand,GetBucketEncryptionCommand:ECe.GetBucketEncryptionCommand,GetBucketIntelligentTieringConfigurationCommand:PCe.GetBucketIntelligentTieringConfigurationCommand,GetBucketInventoryConfigurationCommand:vCe.GetBucketInventoryConfigurationCommand,GetBucketLifecycleConfigurationCommand:wCe.GetBucketLifecycleConfigurationCommand,GetBucketLocationCommand:xCe.GetBucketLocationCommand,GetBucketLoggingCommand:kCe.GetBucketLoggingCommand,GetBucketMetricsConfigurationCommand:ACe.GetBucketMetricsConfigurationCommand,GetBucketNotificationConfigurationCommand:OCe.GetBucketNotificationConfigurationCommand,GetBucketOwnershipControlsCommand:NCe.GetBucketOwnershipControlsCommand,GetBucketPolicyCommand:ICe.GetBucketPolicyCommand,GetBucketPolicyStatusCommand:RCe.GetBucketPolicyStatusCommand,GetBucketReplicationCommand:TCe.GetBucketReplicationCommand,GetBucketRequestPaymentCommand:BCe.GetBucketRequestPaymentCommand,GetBucketTaggingCommand:qCe.GetBucketTaggingCommand,GetBucketVersioningCommand:DCe.GetBucketVersioningCommand,GetBucketWebsiteCommand:MCe.GetBucketWebsiteCommand,GetObjectCommand:jCe.GetObjectCommand,GetObjectAclCommand:FCe.GetObjectAclCommand,GetObjectAttributesCommand:LCe.GetObjectAttributesCommand,GetObjectLegalHoldCommand:UCe.GetObjectLegalHoldCommand,GetObjectLockConfigurationCommand:zCe.GetObjectLockConfigurationCommand,GetObjectRetentionCommand:GCe.GetObjectRetentionCommand,GetObjectTaggingCommand:HCe.GetObjectTaggingCommand,GetObjectTorrentCommand:$Ce.GetObjectTorrentCommand,GetPublicAccessBlockCommand:KCe.GetPublicAccessBlockCommand,HeadBucketCommand:VCe.HeadBucketCommand,HeadObjectCommand:XCe.HeadObjectCommand,ListBucketAnalyticsConfigurationsCommand:WCe.ListBucketAnalyticsConfigurationsCommand,ListBucketIntelligentTieringConfigurationsCommand:YCe.ListBucketIntelligentTieringConfigurationsCommand,ListBucketInventoryConfigurationsCommand:JCe.ListBucketInventoryConfigurationsCommand,ListBucketMetricsConfigurationsCommand:QCe.ListBucketMetricsConfigurationsCommand,ListBucketsCommand:ZCe.ListBucketsCommand,ListMultipartUploadsCommand:eSe.ListMultipartUploadsCommand,ListObjectsCommand:tSe.ListObjectsCommand,ListObjectsV2Command:nSe.ListObjectsV2Command,ListObjectVersionsCommand:rSe.ListObjectVersionsCommand,ListPartsCommand:oSe.ListPartsCommand,PutBucketAccelerateConfigurationCommand:sSe.PutBucketAccelerateConfigurationCommand,PutBucketAclCommand:iSe.PutBucketAclCommand,PutBucketAnalyticsConfigurationCommand:aSe.PutBucketAnalyticsConfigurationCommand,PutBucketCorsCommand:cSe.PutBucketCorsCommand,PutBucketEncryptionCommand:dSe.PutBucketEncryptionCommand,PutBucketIntelligentTieringConfigurationCommand:lSe.PutBucketIntelligentTieringConfigurationCommand,PutBucketInventoryConfigurationCommand:uSe.PutBucketInventoryConfigurationCommand,PutBucketLifecycleConfigurationCommand:mSe.PutBucketLifecycleConfigurationCommand,PutBucketLoggingCommand:pSe.PutBucketLoggingCommand,PutBucketMetricsConfigurationCommand:fSe.PutBucketMetricsConfigurationCommand,PutBucketNotificationConfigurationCommand:ySe.PutBucketNotificationConfigurationCommand,PutBucketOwnershipControlsCommand:gSe.PutBucketOwnershipControlsCommand,PutBucketPolicyCommand:hSe.PutBucketPolicyCommand,PutBucketReplicationCommand:_Se.PutBucketReplicationCommand,PutBucketRequestPaymentCommand:CSe.PutBucketRequestPaymentCommand,PutBucketTaggingCommand:SSe.PutBucketTaggingCommand,PutBucketVersioningCommand:bSe.PutBucketVersioningCommand,PutBucketWebsiteCommand:ESe.PutBucketWebsiteCommand,PutObjectCommand:vSe.PutObjectCommand,PutObjectAclCommand:PSe.PutObjectAclCommand,PutObjectLegalHoldCommand:wSe.PutObjectLegalHoldCommand,PutObjectLockConfigurationCommand:xSe.PutObjectLockConfigurationCommand,PutObjectRetentionCommand:kSe.PutObjectRetentionCommand,PutObjectTaggingCommand:ASe.PutObjectTaggingCommand,PutPublicAccessBlockCommand:OSe.PutPublicAccessBlockCommand,RestoreObjectCommand:NSe.RestoreObjectCommand,SelectObjectContentCommand:ISe.SelectObjectContentCommand,UploadPartCommand:RSe.UploadPartCommand,UploadPartCopyCommand:TSe.UploadPartCopyCommand,WriteGetObjectResponseCommand:BSe.WriteGetObjectResponseCommand},Rm=class extends qSe.S3Client{};Tm.S3=Rm;(0,W_e.createAggregatedClient)(DSe,Rm)});var _L=m(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});var L=(ne(),J(te));L.__exportStar(ph(),T);L.__exportStar(yh(),T);L.__exportStar(hh(),T);L.__exportStar(Ch(),T);L.__exportStar(bh(),T);L.__exportStar(Ph(),T);L.__exportStar(wh(),T);L.__exportStar(kh(),T);L.__exportStar(Oh(),T);L.__exportStar(Ih(),T);L.__exportStar(Th(),T);L.__exportStar(qh(),T);L.__exportStar(Mh(),T);L.__exportStar(Lh(),T);L.__exportStar(Uh(),T);L.__exportStar(Gh(),T);L.__exportStar($h(),T);L.__exportStar(Vh(),T);L.__exportStar(Wh(),T);L.__exportStar(m_(),T);L.__exportStar(l_(),T);L.__exportStar(f_(),T);L.__exportStar(g_(),T);L.__exportStar(__(),T);L.__exportStar(S_(),T);L.__exportStar(E_(),T);L.__exportStar(v_(),T);L.__exportStar(x_(),T);L.__exportStar(A_(),T);L.__exportStar(N_(),T);L.__exportStar(R_(),T);L.__exportStar(B_(),T);L.__exportStar(D_(),T);L.__exportStar(F_(),T);L.__exportStar(j_(),T);L.__exportStar(z_(),T);L.__exportStar(H_(),T);L.__exportStar(K_(),T);L.__exportStar(X_(),T);L.__exportStar(Y_(),T);L.__exportStar(Q_(),T);L.__exportStar(eC(),T);L.__exportStar(nC(),T);L.__exportStar(oC(),T);L.__exportStar(iC(),T);L.__exportStar(cC(),T);L.__exportStar(lC(),T);L.__exportStar(mC(),T);L.__exportStar(fC(),T);L.__exportStar(gC(),T);L.__exportStar(_C(),T);L.__exportStar($a(),T);L.__exportStar(Ka(),T);L.__exportStar(EC(),T);L.__exportStar(vC(),T);L.__exportStar(xC(),T);L.__exportStar(AC(),T);L.__exportStar(NC(),T);L.__exportStar(RC(),T);L.__exportStar(MC(),T);L.__exportStar(BC(),T);L.__exportStar(Nm(),T);L.__exportStar(Im(),T);L.__exportStar(jC(),T);L.__exportStar(zC(),T);L.__exportStar(HC(),T);L.__exportStar(KC(),T);L.__exportStar(XC(),T);L.__exportStar(YC(),T);L.__exportStar(QC(),T);L.__exportStar(eS(),T);L.__exportStar(nS(),T);L.__exportStar(oS(),T);L.__exportStar(iS(),T);L.__exportStar(cS(),T);L.__exportStar(lS(),T);L.__exportStar(mS(),T);L.__exportStar(fS(),T);L.__exportStar(gS(),T);L.__exportStar(_S(),T);L.__exportStar(SS(),T);L.__exportStar(ES(),T);L.__exportStar(vS(),T);L.__exportStar(xS(),T);L.__exportStar(AS(),T);L.__exportStar(NS(),T);L.__exportStar(RS(),T);L.__exportStar(BS(),T);L.__exportStar(DS(),T);L.__exportStar(FS(),T);L.__exportStar(jS(),T);L.__exportStar(zS(),T);L.__exportStar(HS(),T)});var SL=m(CL=>{"use strict";Object.defineProperty(CL,"__esModule",{value:!0})});var bL=m(Bm=>{"use strict";Object.defineProperty(Bm,"__esModule",{value:!0});Bm.paginateListObjectsV2=void 0;var MSe=Nm(),FSe=La(),LSe=async(e,t,...n)=>await e.send(new MSe.ListObjectsV2Command(t),...n);async function*jSe(e,t,...n){let r=e.startingToken||void 0,o=!0,s;for(;o;){if(t.ContinuationToken=r,t.MaxKeys=e.pageSize,e.client instanceof FSe.S3Client)s=await LSe(e.client,t,...n);else throw new Error("Invalid client, expected S3 | S3Client");yield s;let a=r;r=s.NextContinuationToken,o=!!(r&&(!e.stopOnSameToken||r!==a))}return void 0}Bm.paginateListObjectsV2=jSe});var EL=m(qm=>{"use strict";Object.defineProperty(qm,"__esModule",{value:!0});qm.paginateListParts=void 0;var USe=Im(),zSe=La(),GSe=async(e,t,...n)=>await e.send(new USe.ListPartsCommand(t),...n);async function*HSe(e,t,...n){let r=e.startingToken||void 0,o=!0,s;for(;o;){if(t.PartNumberMarker=r,t.MaxParts=e.pageSize,e.client instanceof zSe.S3Client)s=await GSe(e.client,t,...n);else throw new Error("Invalid client, expected S3 | S3Client");yield s;let a=r;r=s.NextPartNumberMarker,o=!!(r&&(!e.stopOnSameToken||r!==a))}return void 0}qm.paginateListParts=HSe});var PL=m(Va=>{"use strict";Object.defineProperty(Va,"__esModule",{value:!0});var $S=(ne(),J(te));$S.__exportStar(SL(),Va);$S.__exportStar(bL(),Va);$S.__exportStar(EL(),Va)});var Xa=m((EOe,AL)=>{var Dm=Object.defineProperty,$Se=Object.getOwnPropertyDescriptor,KSe=Object.getOwnPropertyNames,VSe=Object.prototype.hasOwnProperty,or=(e,t)=>Dm(e,"name",{value:t,configurable:!0}),XSe=(e,t)=>{for(var n in t)Dm(e,n,{get:t[n],enumerable:!0})},WSe=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of KSe(t))!VSe.call(e,o)&&o!==n&&Dm(e,o,{get:()=>t[o],enumerable:!(r=$Se(t,o))||r.enumerable});return e},YSe=e=>WSe(Dm({},"__esModule",{value:!0}),e),wL={};XSe(wL,{WaiterState:()=>kL,checkExceptions:()=>QSe,createWaiter:()=>rbe,waiterServiceDefaults:()=>xL});AL.exports=YSe(wL);var JSe=or(e=>new Promise(t=>setTimeout(t,e*1e3)),"sleep"),xL={minDelay:2,maxDelay:120},kL=(e=>(e.ABORTED="ABORTED",e.FAILURE="FAILURE",e.SUCCESS="SUCCESS",e.RETRY="RETRY",e.TIMEOUT="TIMEOUT",e))(kL||{}),QSe=or(e=>{if(e.state==="ABORTED"){let t=new Error(`${JSON.stringify({...e,reason:"Request was aborted"})}`);throw t.name="AbortError",t}else if(e.state==="TIMEOUT"){let t=new Error(`${JSON.stringify({...e,reason:"Waiter has timed out"})}`);throw t.name="TimeoutError",t}else if(e.state!=="SUCCESS")throw new Error(`${JSON.stringify({result:e})}`);return e},"checkExceptions"),ZSe=or((e,t,n,r)=>{if(r>n)return t;let o=e*2**(r-1);return ebe(e,o)},"exponentialBackoffWithJitter"),ebe=or((e,t)=>e+Math.random()*(t-e),"randomInRange"),tbe=or(async({minDelay:e,maxDelay:t,maxWaitTime:n,abortController:r,client:o,abortSignal:s},a,i)=>{var u;let{state:l,reason:c}=await i(o,a);if(l!=="RETRY")return{state:l,reason:c};let y=1,g=Date.now()+n*1e3,C=Math.log(t/e)/Math.log(2)+1;for(;;){if((u=r==null?void 0:r.signal)!=null&&u.aborted||s!=null&&s.aborted)return{state:"ABORTED"};let P=ZSe(e,t,C,y);if(Date.now()+P*1e3>g)return{state:"TIMEOUT"};await JSe(P);let{state:A,reason:v}=await i(o,a);if(A!=="RETRY")return{state:A,reason:v};y+=1}},"runPolling"),nbe=or(e=>{if(e.maxWaitTime<1)throw new Error("WaiterConfiguration.maxWaitTime must be greater than 0");if(e.minDelay<1)throw new Error("WaiterConfiguration.minDelay must be greater than 0");if(e.maxDelay<1)throw new Error("WaiterConfiguration.maxDelay must be greater than 0");if(e.maxWaitTime<=e.minDelay)throw new Error(`WaiterConfiguration.maxWaitTime [${e.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${e.minDelay}] for this waiter`);if(e.maxDelaynew Promise(t=>{e.onabort=()=>t({state:"ABORTED"})}),"abortTimeout"),rbe=or(async(e,t,n)=>{let r={...xL,...e};nbe(r);let o=[tbe(r,t,n)];return e.abortController&&o.push(vL(e.abortController.signal)),e.abortSignal&&o.push(vL(e.abortSignal)),Promise.race(o)},"createWaiter")});var NL=m(Ei=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});Ei.waitUntilBucketExists=Ei.waitForBucketExists=void 0;var bi=Xa(),obe=$a(),OL=async(e,t)=>{let n;try{return n=await e.send(new obe.HeadBucketCommand(t)),{state:bi.WaiterState.SUCCESS,reason:n}}catch(r){if(n=r,r.name&&r.name=="NotFound")return{state:bi.WaiterState.RETRY,reason:n}}return{state:bi.WaiterState.RETRY,reason:n}},sbe=async(e,t)=>{let n={minDelay:5,maxDelay:120};return(0,bi.createWaiter)({...n,...e},t,OL)};Ei.waitForBucketExists=sbe;var ibe=async(e,t)=>{let n={minDelay:5,maxDelay:120},r=await(0,bi.createWaiter)({...n,...e},t,OL);return(0,bi.checkExceptions)(r)};Ei.waitUntilBucketExists=ibe});var RL=m(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.waitUntilBucketNotExists=Pi.waitForBucketNotExists=void 0;var Wa=Xa(),abe=$a(),IL=async(e,t)=>{let n;try{n=await e.send(new abe.HeadBucketCommand(t))}catch(r){if(n=r,r.name&&r.name=="NotFound")return{state:Wa.WaiterState.SUCCESS,reason:n}}return{state:Wa.WaiterState.RETRY,reason:n}},cbe=async(e,t)=>{let n={minDelay:5,maxDelay:120};return(0,Wa.createWaiter)({...n,...e},t,IL)};Pi.waitForBucketNotExists=cbe;var dbe=async(e,t)=>{let n={minDelay:5,maxDelay:120},r=await(0,Wa.createWaiter)({...n,...e},t,IL);return(0,Wa.checkExceptions)(r)};Pi.waitUntilBucketNotExists=dbe});var BL=m(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.waitUntilObjectExists=wi.waitForObjectExists=void 0;var vi=Xa(),lbe=Ka(),TL=async(e,t)=>{let n;try{return n=await e.send(new lbe.HeadObjectCommand(t)),{state:vi.WaiterState.SUCCESS,reason:n}}catch(r){if(n=r,r.name&&r.name=="NotFound")return{state:vi.WaiterState.RETRY,reason:n}}return{state:vi.WaiterState.RETRY,reason:n}},ube=async(e,t)=>{let n={minDelay:5,maxDelay:120};return(0,vi.createWaiter)({...n,...e},t,TL)};wi.waitForObjectExists=ube;var mbe=async(e,t)=>{let n={minDelay:5,maxDelay:120},r=await(0,vi.createWaiter)({...n,...e},t,TL);return(0,vi.checkExceptions)(r)};wi.waitUntilObjectExists=mbe});var DL=m(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.waitUntilObjectNotExists=xi.waitForObjectNotExists=void 0;var Ya=Xa(),pbe=Ka(),qL=async(e,t)=>{let n;try{n=await e.send(new pbe.HeadObjectCommand(t))}catch(r){if(n=r,r.name&&r.name=="NotFound")return{state:Ya.WaiterState.SUCCESS,reason:n}}return{state:Ya.WaiterState.RETRY,reason:n}},fbe=async(e,t)=>{let n={minDelay:5,maxDelay:120};return(0,Ya.createWaiter)({...n,...e},t,qL)};xi.waitForObjectNotExists=fbe;var ybe=async(e,t)=>{let n={minDelay:5,maxDelay:120},r=await(0,Ya.createWaiter)({...n,...e},t,qL);return(0,Ya.checkExceptions)(r)};xi.waitUntilObjectNotExists=ybe});var ML=m(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});var Mm=(ne(),J(te));Mm.__exportStar(NL(),ki);Mm.__exportStar(RL(),ki);Mm.__exportStar(BL(),ki);Mm.__exportStar(DL(),ki)});var LL=m(Fm=>{"use strict";Object.defineProperty(Fm,"__esModule",{value:!0});var FL=(ne(),J(te));FL.__exportStar(Je(),Fm);FL.__exportStar(Zn(),Fm)});var jL=m(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.S3ServiceException=void 0;var Ai=(ne(),J(te));Ai.__exportStar(La(),Qt);Ai.__exportStar(hL(),Qt);Ai.__exportStar(_L(),Qt);Ai.__exportStar(PL(),Qt);Ai.__exportStar(ML(),Qt);Ai.__exportStar(LL(),Qt);var gbe=ja();Object.defineProperty(Qt,"S3ServiceException",{enumerable:!0,get:function(){return gbe.S3ServiceException}})});var Cbe={};Ni(Cbe,{handler:()=>_be});module.exports=J(Cbe);var UL=Er(jL()),zL=Er(require("delay")),hbe=new UL.S3;async function _be(){console.log(hbe),await(0,zL.default)(5)}0&&(module.exports={handler}); -/*! Bundled license information: - -tslib/tslib.es6.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** *) - -tslib/tslib.es6.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** *) -*/ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.d.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.d.ts deleted file mode 100644 index d3d404b3241df..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.d.ts +++ /dev/null @@ -1,107 +0,0 @@ -declare namespace delay { - interface ClearablePromise extends Promise { - /** - Clears the delay and settles the promise. - */ - clear(): void; - } - - /** - Minimal subset of `AbortSignal` that delay will use if passed. - This avoids a dependency on dom.d.ts. - The dom.d.ts `AbortSignal` is compatible with this one. - */ - interface AbortSignal { - readonly aborted: boolean; - addEventListener( - type: 'abort', - listener: () => void, - options?: {once?: boolean} - ): void; - removeEventListener(type: 'abort', listener: () => void): void; - } - - interface Options { - /** - An optional AbortSignal to abort the delay. - If aborted, the Promise will be rejected with an AbortError. - */ - signal?: AbortSignal; - } -} - -type Delay = { - /** - Create a promise which resolves after the specified `milliseconds`. - - @param milliseconds - Milliseconds to delay the promise. - @returns A promise which resolves after the specified `milliseconds`. - */ - (milliseconds: number, options?: delay.Options): delay.ClearablePromise; - - /** - Create a promise which resolves after the specified `milliseconds`. - - @param milliseconds - Milliseconds to delay the promise. - @returns A promise which resolves after the specified `milliseconds`. - */ - ( - milliseconds: number, - options?: delay.Options & { - /** - Value to resolve in the returned promise. - */ - value: T; - } - ): delay.ClearablePromise; - - /** - Create a promise which resolves after a random amount of milliseconds between `minimum` and `maximum` has passed. - - Useful for tests and web scraping since they can have unpredictable performance. For example, if you have a test that asserts a method should not take longer than a certain amount of time, and then run it on a CI, it could take longer. So with `.range()`, you could give it a threshold instead. - - @param minimum - Minimum amount of milliseconds to delay the promise. - @param maximum - Maximum amount of milliseconds to delay the promise. - @returns A promise which resolves after a random amount of milliseconds between `maximum` and `maximum` has passed. - */ - range( - minimum: number, - maximum: number, - options?: delay.Options & { - /** - Value to resolve in the returned promise. - */ - value: T; - } - ): delay.ClearablePromise; - - // TODO: Allow providing value type after https://github.com/Microsoft/TypeScript/issues/5413 is resolved. - /** - Create a promise which rejects after the specified `milliseconds`. - - @param milliseconds - Milliseconds to delay the promise. - @returns A promise which rejects after the specified `milliseconds`. - */ - reject( - milliseconds: number, - options?: delay.Options & { - /** - Value to reject in the returned promise. - */ - value?: unknown; - } - ): delay.ClearablePromise; -}; - -declare const delay: Delay & { - // The types are intentionally loose to make it work with both Node.js and browser versions of these methods. - createWithTimers(timers: { - clearTimeout: (timeoutId: any) => void; - setTimeout: (callback: (...args: any[]) => void, milliseconds: number, ...args: any[]) => unknown; - }): Delay; - - // TODO: Remove this for the next major release. - default: typeof delay; -}; - -export = delay; diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.js deleted file mode 100644 index 7dd2309e1f3aa..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/index.js +++ /dev/null @@ -1,72 +0,0 @@ -'use strict'; - -// From https://github.com/sindresorhus/random-int/blob/c37741b56f76b9160b0b63dae4e9c64875128146/index.js#L13-L15 -const randomInteger = (minimum, maximum) => Math.floor((Math.random() * (maximum - minimum + 1)) + minimum); - -const createAbortError = () => { - const error = new Error('Delay aborted'); - error.name = 'AbortError'; - return error; -}; - -const createDelay = ({clearTimeout: defaultClear, setTimeout: set, willResolve}) => (ms, {value, signal} = {}) => { - if (signal && signal.aborted) { - return Promise.reject(createAbortError()); - } - - let timeoutId; - let settle; - let rejectFn; - const clear = defaultClear || clearTimeout; - - const signalListener = () => { - clear(timeoutId); - rejectFn(createAbortError()); - }; - - const cleanup = () => { - if (signal) { - signal.removeEventListener('abort', signalListener); - } - }; - - const delayPromise = new Promise((resolve, reject) => { - settle = () => { - cleanup(); - if (willResolve) { - resolve(value); - } else { - reject(value); - } - }; - - rejectFn = reject; - timeoutId = (set || setTimeout)(settle, ms); - }); - - if (signal) { - signal.addEventListener('abort', signalListener, {once: true}); - } - - delayPromise.clear = () => { - clear(timeoutId); - timeoutId = null; - settle(); - }; - - return delayPromise; -}; - -const createWithTimers = clearAndSet => { - const delay = createDelay({...clearAndSet, willResolve: true}); - delay.reject = createDelay({...clearAndSet, willResolve: false}); - delay.range = (minimum, maximum, options) => delay(randomInteger(minimum, maximum), options); - return delay; -}; - -const delay = createWithTimers(); -delay.createWithTimers = createWithTimers; - -module.exports = delay; -// TODO: Remove this for the next major release -module.exports.default = delay; diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/license b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/license deleted file mode 100644 index fa7ceba3eb4a9..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/license +++ /dev/null @@ -1,9 +0,0 @@ -MIT License - -Copyright (c) Sindre Sorhus (https://sindresorhus.com) - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/package.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/package.json deleted file mode 100644 index c5d45eacf6ff2..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "delay", - "version": "5.0.0", - "description": "Delay a promise a specified amount of time", - "license": "MIT", - "repository": "sindresorhus/delay", - "funding": "https://github.com/sponsors/sindresorhus", - "author": { - "name": "Sindre Sorhus", - "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" - }, - "engines": { - "node": ">=10" - }, - "scripts": { - "test": "xo && ava && tsd" - }, - "files": [ - "index.js", - "index.d.ts" - ], - "keywords": [ - "promise", - "resolve", - "delay", - "defer", - "wait", - "stall", - "timeout", - "settimeout", - "event", - "loop", - "next", - "tick", - "delay", - "async", - "await", - "promises", - "bluebird", - "threshold", - "range", - "random" - ], - "devDependencies": { - "abort-controller": "^3.0.0", - "ava": "1.4.1", - "currently-unhandled": "^0.4.1", - "in-range": "^1.0.0", - "time-span": "^3.0.0", - "tsd": "^0.7.1", - "xo": "^0.24.0" - } -} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/readme.md b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/readme.md deleted file mode 100644 index 18ecf2df75aea..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/node_modules/delay/readme.md +++ /dev/null @@ -1,173 +0,0 @@ -# delay - -> Delay a promise a specified amount of time - -*If you target [Node.js 15](https://medium.com/@nodejs/node-js-v15-0-0-is-here-deb00750f278) or later, you can do `await require('timers/promises').setTimeout(1000)` instead.* - -## Install - -``` -$ npm install delay -``` - -## Usage - -```js -const delay = require('delay'); - -(async () => { - bar(); - - await delay(100); - - // Executed 100 milliseconds later - baz(); -})(); -``` - -## API - -### delay(milliseconds, options?) - -Create a promise which resolves after the specified `milliseconds`. - -### delay.reject(milliseconds, options?) - -Create a promise which rejects after the specified `milliseconds`. - -### delay.range(minimum, maximum, options?) - -Create a promise which resolves after a random amount of milliseconds between `minimum` and `maximum` has passed. - -Useful for tests and web scraping since they can have unpredictable performance. For example, if you have a test that asserts a method should not take longer than a certain amount of time, and then run it on a CI, it could take longer. So with `.range()`, you could give it a threshold instead. - -#### milliseconds -#### mininum -#### maximum - -Type: `number` - -Milliseconds to delay the promise. - -#### options - -Type: `object` - -##### value - -Type: `unknown` - -Optional value to resolve or reject in the returned promise. - -##### signal - -Type: [`AbortSignal`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal) - -The returned promise will be rejected with an AbortError if the signal is aborted. AbortSignal is available in all modern browsers and there is a [ponyfill for Node.js](https://github.com/mysticatea/abort-controller). - -### delayPromise.clear() - -Clears the delay and settles the promise. - -### delay.createWithTimers({clearTimeout, setTimeout}) - -Creates a new `delay` instance using the provided functions for clearing and setting timeouts. Useful if you're about to stub timers globally, but you still want to use `delay` to manage your tests. - -## Advanced usage - -Passing a value: - -```js -const delay = require('delay'); - -(async() => { - const result = await delay(100, {value: '🦄'}); - - // Executed after 100 milliseconds - console.log(result); - //=> '🦄' -})(); -``` - -Using `delay.reject()`, which optionally accepts a value and rejects it `ms` later: - -```js -const delay = require('delay'); - -(async () => { - try { - await delay.reject(100, {value: new Error('🦄')}); - - console.log('This is never executed'); - } catch (error) { - // 100 milliseconds later - console.log(error); - //=> [Error: 🦄] - } -})(); -``` - -You can settle the delay early by calling `.clear()`: - -```js -const delay = require('delay'); - -(async () => { - const delayedPromise = delay(1000, {value: 'Done'}); - - setTimeout(() => { - delayedPromise.clear(); - }, 500); - - // 500 milliseconds later - console.log(await delayedPromise); - //=> 'Done' -})(); -``` - -You can abort the delay with an AbortSignal: - -```js -const delay = require('delay'); - -(async () => { - const abortController = new AbortController(); - - setTimeout(() => { - abortController.abort(); - }, 500); - - try { - await delay(1000, {signal: abortController.signal}); - } catch (error) { - // 500 milliseconds later - console.log(error.name) - //=> 'AbortError' - } -})(); -``` - -Create a new instance that is unaffected by libraries such as [lolex](https://github.com/sinonjs/lolex/): - -```js -const delay = require('delay'); - -const customDelay = delay.createWithTimers({clearTimeout, setTimeout}); - -(async() => { - const result = await customDelay(100, {value: '🦄'}); - - // Executed after 100 milliseconds - console.log(result); - //=> '🦄' -})(); -``` - -## Related - -- [delay-cli](https://github.com/sindresorhus/delay-cli) - CLI for this module -- [p-cancelable](https://github.com/sindresorhus/p-cancelable) - Create a promise that can be canceled -- [p-min-delay](https://github.com/sindresorhus/p-min-delay) - Delay a promise a minimum amount of time -- [p-immediate](https://github.com/sindresorhus/p-immediate) - Returns a promise resolved in the next event loop - think `setImmediate()` -- [p-timeout](https://github.com/sindresorhus/p-timeout) - Timeout a promise after a specified amount of time -- [More…](https://github.com/sindresorhus/promise-fun) diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/package.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/package.json deleted file mode 100644 index 4d496d170e3fd..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/package.json +++ /dev/null @@ -1 +0,0 @@ -{"dependencies":{"delay":"5.0.0"}} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/yarn.lock b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/yarn.lock deleted file mode 100644 index 1e82e94000a8c..0000000000000 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7/yarn.lock +++ /dev/null @@ -1,8 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -delay@5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" - integrity sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw== diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.assets.json index 2699447ebd3dc..35ba4846f9154 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.assets.json @@ -1,20 +1,20 @@ { "version": "36.0.0", "files": { - "965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7": { + "2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24": { "source": { - "path": "asset.965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7", + "path": "asset.2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24", "packaging": "zip" }, "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7.zip", + "objectKey": "2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "0256748b34fe724b3f321f0d460e6a853cb81d9c69c5233325c68438f6a36c40": { + "89e002f7094cdf08a814ddae0c129bf78e64bf63585498ff345c0c3798f3eb28": { "source": { "path": "cdk-integ-lambda-nodejs-latest.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "0256748b34fe724b3f321f0d460e6a853cb81d9c69c5233325c68438f6a36c40.json", + "objectKey": "89e002f7094cdf08a814ddae0c129bf78e64bf63585498ff345c0c3798f3eb28.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.template.json index c649d15499e9c..9ea3a8e4e0fff 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/cdk-integ-lambda-nodejs-latest.template.json @@ -38,7 +38,7 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7.zip" + "S3Key": "2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24.zip" }, "Environment": { "Variables": { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/manifest.json index e90f6a909a3ef..1b3bfd3d4abd6 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/manifest.json @@ -18,7 +18,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/0256748b34fe724b3f321f0d460e6a853cb81d9c69c5233325c68438f6a36c40.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/89e002f7094cdf08a814ddae0c129bf78e64bf63585498ff345c0c3798f3eb28.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -34,6 +34,12 @@ "cdk-integ-lambda-nodejs-latest.assets" ], "metadata": { + "/cdk-integ-lambda-nodejs-latest": [ + { + "type": "aws:cdk:warning", + "data": "Be aware that the NodeJS runtime of Node 16 will be deprecated by Lambda on June 12, 2024. Lambda runtimes Node 18 and higher include SDKv3 and not SDKv2. Updating your Lambda runtime will require bundling the SDK, or updating all SDK calls in your handler code to use SDKv3 (which is not a trivial update). Please account for this added complexity and update as soon as possible. [ack: aws-cdk-lib/aws-lambda-nodejs:runtimeUpdateSdkV2Breakage]" + } + ], "/cdk-integ-lambda-nodejs-latest/latest/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", @@ -84,7 +90,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/c2fe281e058ea480def02a361e0682b20073691f58e0b7c6e020fbcb5500ce85.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/c9e516ede2e46803f902e4f951a9e9011c7fb81d109bf7d1024e49e0cb95d97a.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/tree.json index 4daa21e4b6be2..681a519c99959 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-nodejs/test/integ.latest.js.snapshot/tree.json @@ -20,8 +20,8 @@ "id": "ImportServiceRole", "path": "cdk-integ-lambda-nodejs-latest/latest/ServiceRole/ImportServiceRole", "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -59,14 +59,14 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.CfnRole", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_iam.Role", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Code": { @@ -77,22 +77,22 @@ "id": "Stage", "path": "cdk-integ-lambda-nodejs-latest/latest/Code/Stage", "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssetBucket": { "id": "AssetBucket", "path": "cdk-integ-lambda-nodejs-latest/latest/Code/AssetBucket", "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3.BucketBase", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_s3_assets.Asset", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Resource": { @@ -105,7 +105,7 @@ "s3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "s3Key": "965224955600e6822d85d934a24a912edd776b1fb4dc2d2bd455fd31fc18efe7.zip" + "s3Key": "2729d9b4af60cbbbe3182f0002dec1747647eedd8de3761325aa38f7ddf73f24.zip" }, "environment": { "variables": { @@ -123,14 +123,14 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.aws_lambda_nodejs.NodejsFunction", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Exports": { @@ -141,8 +141,8 @@ "id": "Output{\"Ref\":\"latestFE0D80B6\"}", "path": "cdk-integ-lambda-nodejs-latest/Exports/Output{\"Ref\":\"latestFE0D80B6\"}", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -155,22 +155,22 @@ "id": "BootstrapVersion", "path": "cdk-integ-lambda-nodejs-latest/BootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "cdk-integ-lambda-nodejs-latest/CheckBootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "LambdaNodeJsLatestInteg": { @@ -223,30 +223,30 @@ "id": "Default", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/LambdaInvoked00748c118c58ddbf17c194faa46eda2/Default/Default", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.CustomResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Invoke": { "id": "Invoke", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/LambdaInvoked00748c118c58ddbf17c194faa46eda2/Invoke", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "AssertionResults": { "id": "AssertionResults", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/LambdaInvoked00748c118c58ddbf17c194faa46eda2/AssertionResults", "constructInfo": { - "fqn": "aws-cdk-lib.CfnOutput", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -263,24 +263,24 @@ "id": "Staging", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging", "constructInfo": { - "fqn": "aws-cdk-lib.AssetStaging", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Role": { "id": "Role", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "Handler": { "id": "Handler", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler", "constructInfo": { - "fqn": "aws-cdk-lib.CfnResource", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -293,22 +293,22 @@ "id": "BootstrapVersion", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/BootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "LambdaNodeJsLatestInteg/DefaultTest/DeployAssert/CheckBootstrapVersion", "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } }, @@ -333,8 +333,8 @@ } }, "constructInfo": { - "fqn": "aws-cdk-lib.App", - "version": "0.0.0" + "fqn": "constructs.Construct", + "version": "10.3.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-ca-certificate.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-ca-certificate.ts index 1dfdc825d6813..69fee94a80cde 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-ca-certificate.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-ca-certificate.ts @@ -15,7 +15,7 @@ new DatabaseInstance(stack, 'Instance', { }), instanceType: InstanceType.of(InstanceClass.T3, InstanceSize.MICRO), vpc, - caCertificate: CaCertificate.RDS_CA_RDS2048_G1, + caCertificate: CaCertificate.RDS_CA_RSA2048_G1, }); new integ.IntegTest(app, 'InstanceCACertificateTest', { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.assets.json index cf9ecfa597261..b2db8913fb2a3 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.assets.json @@ -1,7 +1,7 @@ { "version": "36.0.0", "files": { - "27d09999310ee1193509c78be177319a1946d9d28632d2362b5f6168fd2078f1": { + "239d9f5d8cff7634197e9978eaf8133a6904b71cd0f07fbb239f839c7ce32886": { "source": { "path": "aws-cdk-rds-instance-with-rds-parameter-group.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "27d09999310ee1193509c78be177319a1946d9d28632d2362b5f6168fd2078f1.json", + "objectKey": "239d9f5d8cff7634197e9978eaf8133a6904b71cd0f07fbb239f839c7ce32886.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.template.json index 08798fdefb756..4fb3b3c5d1aa0 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/aws-cdk-rds-instance-with-rds-parameter-group.template.json @@ -394,8 +394,9 @@ "ParameterGroup5E32DECB": { "Type": "AWS::RDS::DBParameterGroup", "Properties": { + "DBParameterGroupName": "name", "Description": "desc", - "Family": "postgres15", + "Family": "postgres16", "Parameters": {} }, "UpdateReplacePolicy": "Delete", @@ -481,7 +482,7 @@ }, "EnableIAMDatabaseAuthentication": true, "Engine": "postgres", - "EngineVersion": "15.2", + "EngineVersion": "16.2", "MasterUserPassword": { "Fn::Join": [ "", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/manifest.json index bbaf8c75314a2..5ab6b54ad58d9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/manifest.json @@ -18,7 +18,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/27d09999310ee1193509c78be177319a1946d9d28632d2362b5f6168fd2078f1.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/239d9f5d8cff7634197e9978eaf8133a6904b71cd0f07fbb239f839c7ce32886.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/tree.json index e2c109b5469fc..9ab09e1f659fd 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.js.snapshot/tree.json @@ -661,8 +661,9 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBParameterGroup", "aws:cdk:cloudformation:props": { + "dbParameterGroupName": "name", "description": "desc", - "family": "postgres15", + "family": "postgres16", "parameters": {} } }, @@ -834,7 +835,7 @@ }, "enableIamDatabaseAuthentication": true, "engine": "postgres", - "engineVersion": "15.2", + "engineVersion": "16.2", "masterUsername": { "Fn::Join": [ "", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.ts index 141fefb491cc1..83a9caefd940b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.instance-with-parameter-group.ts @@ -11,13 +11,14 @@ const stack = new cdk.Stack(app, 'aws-cdk-rds-instance-with-rds-parameter-group' const vpc = new ec2.Vpc(stack, 'VPC', { maxAzs: 2, restrictDefaultSecurityGroup: false }); const parameterGroup = new rds.ParameterGroup(stack, 'ParameterGroup', { - engine: rds.DatabaseInstanceEngine.postgres({ version: rds.PostgresEngineVersion.VER_15_2 }), + engine: rds.DatabaseInstanceEngine.postgres({ version: rds.PostgresEngineVersion.VER_16_2 }), description: 'desc', removalPolicy: cdk.RemovalPolicy.DESTROY, + name: 'name', }); new rds.DatabaseInstance(stack, 'Instance', { - engine: rds.DatabaseInstanceEngine.postgres({ version: rds.PostgresEngineVersion.VER_15_2 }), + engine: rds.DatabaseInstanceEngine.postgres({ version: rds.PostgresEngineVersion.VER_16_2 }), vpc, multiAz: false, publiclyAccessible: true, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3-notifications/test/sqs/integ.bucket-notifications.js.snapshot/sqs-bucket-notifications.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-s3-notifications/test/sqs/integ.bucket-notifications.js.snapshot/sqs-bucket-notifications.template.json index 1c5e5194391e6..fa8536c4037e4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3-notifications/test/sqs/integ.bucket-notifications.js.snapshot/sqs-bucket-notifications.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3-notifications/test/sqs/integ.bucket-notifications.js.snapshot/sqs-bucket-notifications.template.json @@ -325,6 +325,7 @@ "Managed": true }, "DependsOn": [ + "Bucket2Policy945B22E3", "MyQueuePolicy6BBEDDAC", "MyQueueE6CA6235" ] diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.assets.json index c1a1d66de37fd..0b2caef08b8cb 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.assets.json @@ -1,7 +1,7 @@ { "version": "36.0.0", "files": { - "e8c1260052c00a8b1063424232e950e1ca94727f321c62c61cc9ab83f0b31b7b": { + "baecfaa557432e2a3a97967fcd59a796a9fd3426035d03ec0122d8dc3dc96185": { "source": { "path": "aws-cdk-s3-notifications.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "e8c1260052c00a8b1063424232e950e1ca94727f321c62c61cc9ab83f0b31b7b.json", + "objectKey": "baecfaa557432e2a3a97967fcd59a796a9fd3426035d03ec0122d8dc3dc96185.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.template.json index af086c7449a66..5e4dce9b0244e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/aws-cdk-s3-notifications.template.json @@ -5,6 +5,53 @@ "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, + "MyEventBridgeBucketPolicy8F5346E3": { + "Type": "AWS::S3::BucketPolicy", + "Properties": { + "Bucket": { + "Ref": "MyEventBridgeBucket1ABD5C2A" + }, + "PolicyDocument": { + "Statement": [ + { + "Action": "s3:*", + "Condition": { + "Bool": { + "aws:SecureTransport": "false" + } + }, + "Effect": "Deny", + "Principal": { + "AWS": "*" + }, + "Resource": [ + { + "Fn::GetAtt": [ + "MyEventBridgeBucket1ABD5C2A", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "MyEventBridgeBucket1ABD5C2A", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + } + } + }, "MyEventBridgeBucketNotifications19C0453F": { "Type": "Custom::S3BucketNotifications", "Properties": { @@ -21,7 +68,10 @@ "EventBridgeConfiguration": {} }, "Managed": true - } + }, + "DependsOn": [ + "MyEventBridgeBucketPolicy8F5346E3" + ] }, "BucketNotificationsHandler050a0587b7544547bf325f094a3db834RoleB6FB88EC": { "Type": "AWS::IAM::Role", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/manifest.json index 5c8e54d43ce08..e3db84eee860e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/manifest.json @@ -18,7 +18,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e8c1260052c00a8b1063424232e950e1ca94727f321c62c61cc9ab83f0b31b7b.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/baecfaa557432e2a3a97967fcd59a796a9fd3426035d03ec0122d8dc3dc96185.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -40,6 +40,12 @@ "data": "MyEventBridgeBucket1ABD5C2A" } ], + "/aws-cdk-s3-notifications/MyEventBridgeBucket/Policy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyEventBridgeBucketPolicy8F5346E3" + } + ], "/aws-cdk-s3-notifications/MyEventBridgeBucket/Notifications/Resource": [ { "type": "aws:cdk:logicalId", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/tree.json index 7491cd134c058..01b8d8c23b5a5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.js.snapshot/tree.json @@ -24,6 +24,71 @@ "version": "0.0.0" } }, + "Policy": { + "id": "Policy", + "path": "aws-cdk-s3-notifications/MyEventBridgeBucket/Policy", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-s3-notifications/MyEventBridgeBucket/Policy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", + "aws:cdk:cloudformation:props": { + "bucket": { + "Ref": "MyEventBridgeBucket1ABD5C2A" + }, + "policyDocument": { + "Statement": [ + { + "Action": "s3:*", + "Condition": { + "Bool": { + "aws:SecureTransport": "false" + } + }, + "Effect": "Deny", + "Principal": { + "AWS": "*" + }, + "Resource": [ + { + "Fn::GetAtt": [ + "MyEventBridgeBucket1ABD5C2A", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "MyEventBridgeBucket1ABD5C2A", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_s3.BucketPolicy", + "version": "0.0.0" + } + }, "Notifications": { "id": "Notifications", "path": "aws-cdk-s3-notifications/MyEventBridgeBucket/Notifications", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.ts index 53b21dc556028..cc207cdb81a48 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-s3/test/integ.bucket.notifications.ts @@ -9,6 +9,7 @@ const stack = new cdk.Stack(app, 'aws-cdk-s3-notifications'); new s3.Bucket(stack, 'MyEventBridgeBucket', { eventBridgeEnabled: true, + enforceSSL: true, // Adding dummy bucket policy for testing that bucket policy is created before bucket notification removalPolicy: cdk.RemovalPolicy.DESTROY, }); diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js index c224a930b99cd..1f40563687ddf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js @@ -5,6 +5,7 @@ const codebuild = require("aws-cdk-lib/aws-codebuild"); const ec2 = require("aws-cdk-lib/aws-ec2"); const s3 = require("aws-cdk-lib/aws-s3"); const s3_assets = require("aws-cdk-lib/aws-s3-assets"); +const cx_api_1 = require("aws-cdk-lib/cx-api"); const aws_cdk_lib_1 = require("aws-cdk-lib"); const integ = require("@aws-cdk/integ-tests-alpha"); const pipelines = require("aws-cdk-lib/pipelines"); @@ -54,6 +55,7 @@ const app = new aws_cdk_lib_1.App({ postCliContext: { '@aws-cdk/core:newStyleStackSynthesis': '1', '@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2': false, + [cx_api_1.PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: true, }, }); const stack = new TestStack(app, 'PipelinesFileSystemLocations'); diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.assets.json b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.assets.json index 5c25af84e171e..8fc1a694a9b16 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.assets.json @@ -14,7 +14,7 @@ } } }, - "1b123a92aa295b46115d92a2582033029bb65daad18ad3d99fb99853f6c9cc11": { + "8863ba6387eea6452bfdb9d179eabffb6a7032fddaa200d0d5cf7ad337c6be46": { "source": { "path": "PipelinesFileSystemLocations.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "1b123a92aa295b46115d92a2582033029bb65daad18ad3d99fb99853f6c9cc11.json", + "objectKey": "8863ba6387eea6452bfdb9d179eabffb6a7032fddaa200d0d5cf7ad337c6be46.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.template.json b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.template.json index 8050b8850c0e3..28424cc90f2ee 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/PipelinesFileSystemLocations.template.json @@ -1504,22 +1504,6 @@ "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { - "AWS": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::", - { - "Ref": "AWS::AccountId" - }, - ":root" - ] - ] - }, "Service": "codebuild.amazonaws.com" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/manifest.json index b8ade4e475ef6..81796261f05a7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/manifest.json @@ -25,7 +25,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/1b123a92aa295b46115d92a2582033029bb65daad18ad3d99fb99853f6c9cc11.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/8863ba6387eea6452bfdb9d179eabffb6a7032fddaa200d0d5cf7ad337c6be46.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/tree.json index de7abc4041682..31fdc0d7496db 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.js.snapshot/tree.json @@ -2189,22 +2189,6 @@ "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { - "AWS": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::", - { - "Ref": "AWS::AccountId" - }, - ":root" - ] - ] - }, "Service": "codebuild.amazonaws.com" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.ts b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.ts index 99499134a6ff6..989c97d234a8a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-file-system-locations.ts @@ -3,6 +3,7 @@ import * as codebuild from 'aws-cdk-lib/aws-codebuild'; import * as ec2 from 'aws-cdk-lib/aws-ec2'; import * as s3 from 'aws-cdk-lib/aws-s3'; import * as s3_assets from 'aws-cdk-lib/aws-s3-assets'; +import { PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE } from 'aws-cdk-lib/cx-api'; import { App, Stack, StackProps, Stage, StageProps, Aws, RemovalPolicy, DefaultStackSynthesizer } from 'aws-cdk-lib'; import * as integ from '@aws-cdk/integ-tests-alpha'; import { Construct } from 'constructs'; @@ -61,6 +62,7 @@ const app = new App({ postCliContext: { '@aws-cdk/core:newStyleStackSynthesis': '1', '@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2': false, + [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: true, }, }); diff --git a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-vpc.ts b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-vpc.ts index 9d4baa745ee4b..9354ee94cb765 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-vpc.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/pipelines/test/integ.newpipeline-with-vpc.ts @@ -7,6 +7,7 @@ import * as sqs from 'aws-cdk-lib/aws-sqs'; import { App, Stack, StackProps, Stage, StageProps } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as pipelines from 'aws-cdk-lib/pipelines'; +import { PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE } from 'aws-cdk-lib/cx-api'; class PipelineStack extends Stack { constructor(scope: Construct, id: string, props?: StackProps) { @@ -50,6 +51,7 @@ const app = new App({ postCliContext: { '@aws-cdk/core:newStyleStackSynthesis': '1', '@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2': false, + [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: false, }, }); new PipelineStack(app, 'PipelineStack'); diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.assets.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.assets.json index bc529039d3f2a..d350b0f8b2887 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.assets.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.assets.json @@ -1,5 +1,5 @@ { - "version": "31.0.0", + "version": "36.0.0", "files": { "126d48fa0e32fbef5078b9d88658b35ad29d4291eb86675a64c75fa4f1338916": { "source": { @@ -14,7 +14,7 @@ } } }, - "be0577003620b4cc844de880dc7d01b90719400dea1cc12c03d93a3ac8e451a3": { + "3091b68a4482354b22fb86be9dfa04e7f07fd597c15825ad5b16b32f8fdaaf6a": { "source": { "path": "aws-cdk-sagemaker-model.template.json", "packaging": "file" @@ -22,7 +22,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "be0577003620b4cc844de880dc7d01b90719400dea1cc12c03d93a3ac8e451a3.json", + "objectKey": "3091b68a4482354b22fb86be9dfa04e7f07fd597c15825ad5b16b32f8fdaaf6a.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.template.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.template.json index 30d465357b949..51f06e115d3f8 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.template.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/aws-cdk-sagemaker-model.template.json @@ -18,9 +18,6 @@ "VPCPublicSubnet1SubnetB4246D30": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 0, @@ -44,21 +41,24 @@ "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PublicSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet1RouteTableFEE4B781": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PublicSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet1RouteTableAssociation0B0896DC": { @@ -75,12 +75,12 @@ "VPCPublicSubnet1DefaultRoute91CEF279": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPublicSubnet1RouteTableFEE4B781" - }, "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" } }, "DependsOn": [ @@ -102,15 +102,15 @@ "VPCPublicSubnet1NATGatewayE0556630": { "Type": "AWS::EC2::NatGateway", "Properties": { - "SubnetId": { - "Ref": "VPCPublicSubnet1SubnetB4246D30" - }, "AllocationId": { "Fn::GetAtt": [ "VPCPublicSubnet1EIP6AD938E8", "AllocationId" ] }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, "Tags": [ { "Key": "Name", @@ -126,9 +126,6 @@ "VPCPublicSubnet2Subnet74179F39": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 1, @@ -152,21 +149,24 @@ "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PublicSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet2RouteTable6F1A15F1": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PublicSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet2RouteTableAssociation5A808732": { @@ -183,12 +183,12 @@ "VPCPublicSubnet2DefaultRouteB7481BBA": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" - }, "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" } }, "DependsOn": [ @@ -210,15 +210,15 @@ "VPCPublicSubnet2NATGateway3C070193": { "Type": "AWS::EC2::NatGateway", "Properties": { - "SubnetId": { - "Ref": "VPCPublicSubnet2Subnet74179F39" - }, "AllocationId": { "Fn::GetAtt": [ "VPCPublicSubnet2EIP4947BC00", "AllocationId" ] }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, "Tags": [ { "Key": "Name", @@ -234,9 +234,6 @@ "VPCPrivateSubnet1Subnet8BCA10E0": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 0, @@ -260,21 +257,24 @@ "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet1RouteTableBE8A6027": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet1RouteTableAssociation347902D1": { @@ -291,21 +291,18 @@ "VPCPrivateSubnet1DefaultRouteAE1D6490": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" - }, "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": { "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" } } }, "VPCPrivateSubnet2SubnetCFCDAA7A": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 1, @@ -329,21 +326,24 @@ "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet2RouteTable0A19E10E": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet2RouteTableAssociation0C73D413": { @@ -360,12 +360,12 @@ "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" - }, "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": { "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" } } }, @@ -383,11 +383,11 @@ "VPCVPCGW99B986DC": { "Type": "AWS::EC2::VPCGatewayAttachment", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "InternetGatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" } } }, @@ -736,12 +736,6 @@ "InferencePipelineModel3564F141": { "Type": "AWS::SageMaker::Model", "Properties": { - "ExecutionRoleArn": { - "Fn::GetAtt": [ - "InferencePipelineModelRole6A99C5B3", - "Arn" - ] - }, "Containers": [ { "Image": { @@ -764,7 +758,13 @@ "Fn::Sub": "https://s3.${AWS::Region}.${AWS::URLSuffix}/cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/126d48fa0e32fbef5078b9d88658b35ad29d4291eb86675a64c75fa4f1338916.gz" } } - ] + ], + "ExecutionRoleArn": { + "Fn::GetAtt": [ + "InferencePipelineModelRole6A99C5B3", + "Arn" + ] + } }, "DependsOn": [ "InferencePipelineModelRoleDefaultPolicy2AF0CDCF", @@ -914,12 +914,21 @@ "ap-south-1": { "value": "763104351884" }, + "ap-south-2": { + "value": "772153158452" + }, "ap-southeast-1": { "value": "763104351884" }, "ap-southeast-2": { "value": "763104351884" }, + "ap-southeast-3": { + "value": "907027046896" + }, + "ap-southeast-4": { + "value": "457447274322" + }, "ca-central-1": { "value": "763104351884" }, @@ -932,9 +941,18 @@ "eu-central-1": { "value": "763104351884" }, + "eu-central-2": { + "value": "380420809688" + }, "eu-north-1": { "value": "763104351884" }, + "eu-south-1": { + "value": "692866216735" + }, + "eu-south-2": { + "value": "503227376785" + }, "eu-west-1": { "value": "763104351884" }, @@ -944,6 +962,9 @@ "eu-west-3": { "value": "763104351884" }, + "me-central-1": { + "value": "914824155844" + }, "me-south-1": { "value": "217643126080" }, diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/cdk.out b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/cdk.out index 7925065efbcc4..1f0068d32659a 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/cdk.out +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"31.0.0"} \ No newline at end of file +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integ.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integ.json index 0a2a221266bba..309d53f1b3e91 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integ.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "31.0.0", + "version": "36.0.0", "testCases": { "integtest-model/DefaultTest": { "stacks": [ diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integtestmodelDefaultTestDeployAssertCF40BD53.assets.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integtestmodelDefaultTestDeployAssertCF40BD53.assets.json index 9179afda64390..3dba4ef9b8bab 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integtestmodelDefaultTestDeployAssertCF40BD53.assets.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/integtestmodelDefaultTestDeployAssertCF40BD53.assets.json @@ -1,5 +1,5 @@ { - "version": "31.0.0", + "version": "36.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { "source": { diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/manifest.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/manifest.json index 328b75b8ca288..0991dc132bb8b 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "31.0.0", + "version": "36.0.0", "artifacts": { "aws-cdk-sagemaker-model.assets": { "type": "cdk:asset-manifest", @@ -14,10 +14,11 @@ "environment": "aws://unknown-account/unknown-region", "properties": { "templateFile": "aws-cdk-sagemaker-model.template.json", + "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/be0577003620b4cc844de880dc7d01b90719400dea1cc12c03d93a3ac8e451a3.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/3091b68a4482354b22fb86be9dfa04e7f07fd597c15825ad5b16b32f8fdaaf6a.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -248,33 +249,6 @@ "type": "aws:cdk:logicalId", "data": "CheckBootstrapVersion" } - ], - "HuggingFaceModelRole8CE687FE": [ - { - "type": "aws:cdk:logicalId", - "data": "HuggingFaceModelRole8CE687FE", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" - ] - } - ], - "HuggingFaceModelRoleDefaultPolicy365BBC22": [ - { - "type": "aws:cdk:logicalId", - "data": "HuggingFaceModelRoleDefaultPolicy365BBC22", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" - ] - } - ], - "HuggingFaceModelD53E0910": [ - { - "type": "aws:cdk:logicalId", - "data": "HuggingFaceModelD53E0910", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" - ] - } ] }, "displayName": "aws-cdk-sagemaker-model" @@ -292,6 +266,7 @@ "environment": "aws://unknown-account/unknown-region", "properties": { "templateFile": "integtestmodelDefaultTestDeployAssertCF40BD53.template.json", + "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/tree.json b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/tree.json index 843dc366a0797..660e3efff302b 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/test/integ.model.js.snapshot/tree.json @@ -97,9 +97,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 0, @@ -123,7 +120,10 @@ "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PublicSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -145,15 +145,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PublicSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -186,12 +186,12 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPublicSubnet1RouteTableFEE4B781" - }, "destinationCidrBlock": "0.0.0.0/0", "gatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" } } }, @@ -226,15 +226,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", "aws:cdk:cloudformation:props": { - "subnetId": { - "Ref": "VPCPublicSubnet1SubnetB4246D30" - }, "allocationId": { "Fn::GetAtt": [ "VPCPublicSubnet1EIP6AD938E8", "AllocationId" ] }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, "tags": [ { "key": "Name", @@ -264,9 +264,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 1, @@ -290,7 +287,10 @@ "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PublicSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -312,15 +312,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PublicSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -353,12 +353,12 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" - }, "destinationCidrBlock": "0.0.0.0/0", "gatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" } } }, @@ -393,15 +393,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", "aws:cdk:cloudformation:props": { - "subnetId": { - "Ref": "VPCPublicSubnet2Subnet74179F39" - }, "allocationId": { "Fn::GetAtt": [ "VPCPublicSubnet2EIP4947BC00", "AllocationId" ] }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, "tags": [ { "key": "Name", @@ -431,9 +431,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 0, @@ -457,7 +454,10 @@ "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -479,15 +479,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -520,12 +520,12 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" - }, "destinationCidrBlock": "0.0.0.0/0", "natGatewayId": { "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" } } }, @@ -550,9 +550,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 1, @@ -576,7 +573,10 @@ "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -598,15 +598,15 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", "value": "aws-cdk-sagemaker-model/VPC/PrivateSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { @@ -639,12 +639,12 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" - }, "destinationCidrBlock": "0.0.0.0/0", "natGatewayId": { "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" } } }, @@ -684,11 +684,11 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "internetGatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "vpcId": { + "Ref": "VPCB9E5F0B4" } } }, @@ -1169,13 +1169,13 @@ "version": "0.0.0" } }, - "ModelImage633a6e898c0256cb2deaf7e22053a66b": { - "id": "ModelImage633a6e898c0256cb2deaf7e22053a66b", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage633a6e898c0256cb2deaf7e22053a66b", + "ModelImage4351027d8888cb0133eeba7ae4ab91c5": { + "id": "ModelImage4351027d8888cb0133eeba7ae4ab91c5", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage4351027d8888cb0133eeba7ae4ab91c5", "children": { "Staging": { "id": "Staging", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage633a6e898c0256cb2deaf7e22053a66b/Staging", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage4351027d8888cb0133eeba7ae4ab91c5/Staging", "constructInfo": { "fqn": "aws-cdk-lib.AssetStaging", "version": "0.0.0" @@ -1183,7 +1183,7 @@ }, "Repository": { "id": "Repository", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage633a6e898c0256cb2deaf7e22053a66b/Repository", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelImage4351027d8888cb0133eeba7ae4ab91c5/Repository", "constructInfo": { "fqn": "aws-cdk-lib.aws_ecr.RepositoryBase", "version": "0.0.0" @@ -1195,13 +1195,13 @@ "version": "0.0.0" } }, - "ModelDatab5852dea925d702939eb0aa28d4cf14d": { - "id": "ModelDatab5852dea925d702939eb0aa28d4cf14d", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab5852dea925d702939eb0aa28d4cf14d", + "ModelDatab93b3e254f66541093e95be708719bbd": { + "id": "ModelDatab93b3e254f66541093e95be708719bbd", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab93b3e254f66541093e95be708719bbd", "children": { "Stage": { "id": "Stage", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab5852dea925d702939eb0aa28d4cf14d/Stage", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab93b3e254f66541093e95be708719bbd/Stage", "constructInfo": { "fqn": "aws-cdk-lib.AssetStaging", "version": "0.0.0" @@ -1209,7 +1209,7 @@ }, "AssetBucket": { "id": "AssetBucket", - "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab5852dea925d702939eb0aa28d4cf14d/AssetBucket", + "path": "aws-cdk-sagemaker-model/InferencePipelineModel/ModelDatab93b3e254f66541093e95be708719bbd/AssetBucket", "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.BucketBase", "version": "0.0.0" @@ -1227,12 +1227,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::SageMaker::Model", "aws:cdk:cloudformation:props": { - "executionRoleArn": { - "Fn::GetAtt": [ - "InferencePipelineModelRole6A99C5B3", - "Arn" - ] - }, "containers": [ { "image": { @@ -1255,7 +1249,13 @@ "Fn::Sub": "https://s3.${AWS::Region}.${AWS::URLSuffix}/cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/126d48fa0e32fbef5078b9d88658b35ad29d4291eb86675a64c75fa4f1338916.gz" } } - ] + ], + "executionRoleArn": { + "Fn::GetAtt": [ + "InferencePipelineModelRole6A99C5B3", + "Arn" + ] + } } }, "constructInfo": { @@ -1506,7 +1506,7 @@ "path": "integtest-model/DefaultTest/Default", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.3.0" } }, "DeployAssert": { @@ -1552,7 +1552,7 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.3.0" } } }, diff --git a/packages/@aws-cdk/cloudformation-diff/lib/diff-template.ts b/packages/@aws-cdk/cloudformation-diff/lib/diff-template.ts index 118df03c6ebc5..025a707b62386 100644 --- a/packages/@aws-cdk/cloudformation-diff/lib/diff-template.ts +++ b/packages/@aws-cdk/cloudformation-diff/lib/diff-template.ts @@ -55,7 +55,7 @@ export function fullDiff( normalize(newTemplate); const theDiff = diffTemplate(currentTemplate, newTemplate); if (changeSet) { - filterFalsePositives(theDiff, changeSet); + refineDiffWithChangeSet(theDiff, changeSet, newTemplate.Resources); addImportInformation(theDiff, changeSet); } else if (isImport) { makeAllResourceChangesImports(theDiff); @@ -143,13 +143,6 @@ function calculateTemplateDiff(currentTemplate: { [key: string]: any }, newTempl return new types.TemplateDiff(differences); } -/** - * Compare two CloudFormation resources and return semantic differences between them - */ -export function diffResource(oldValue: types.Resource, newValue: types.Resource): types.ResourceDifference { - return impl.diffResource(oldValue, newValue); -} - /** * Replace all references to the given logicalID on the given template, in-place * @@ -229,45 +222,103 @@ function makeAllResourceChangesImports(diff: types.TemplateDiff) { }); } -function filterFalsePositives(diff: types.TemplateDiff, changeSet: DescribeChangeSetOutput) { - const replacements = findResourceReplacements(changeSet); - diff.resources.forEachDifference((logicalId: string, change: types.ResourceDifference) => { - if (change.resourceType.includes('AWS::Serverless')) { - // CFN applies the SAM transform before creating the changeset, so the changeset contains no information about SAM resources - return; +function refineDiffWithChangeSet(diff: types.TemplateDiff, changeSet: DescribeChangeSetOutput, newTemplateResources: {[logicalId: string]: any}) { + const replacements = _findResourceReplacements(changeSet); + + _addChangeSetResourcesToDiff(replacements, newTemplateResources); + _enhanceChangeImpacts(replacements); + return; + + function _findResourceReplacements(_changeSet: DescribeChangeSetOutput): types.ResourceReplacements { + const _replacements: types.ResourceReplacements = {}; + for (const resourceChange of _changeSet.Changes ?? []) { + const propertiesReplaced: { [propName: string]: types.ChangeSetReplacement } = {}; + for (const propertyChange of resourceChange.ResourceChange?.Details ?? []) { + if (propertyChange.Target?.Attribute === 'Properties') { + const requiresReplacement = propertyChange.Target.RequiresRecreation === 'Always'; + if (requiresReplacement && propertyChange.Evaluation === 'Static') { + propertiesReplaced[propertyChange.Target.Name!] = 'Always'; + } else if (requiresReplacement && propertyChange.Evaluation === 'Dynamic') { + // If Evaluation is 'Dynamic', then this may cause replacement, or it may not. + // see 'Replacement': https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_ResourceChange.html + propertiesReplaced[propertyChange.Target.Name!] = 'Conditionally'; + } else { + propertiesReplaced[propertyChange.Target.Name!] = propertyChange.Target.RequiresRecreation as types.ChangeSetReplacement; + } + } + } + _replacements[resourceChange.ResourceChange?.LogicalResourceId!] = { + resourceReplaced: resourceChange.ResourceChange?.Replacement === 'True', + propertiesReplaced, + }; } - change.forEachDifference((type: 'Property' | 'Other', name: string, value: types.Difference | types.PropertyDifference) => { - if (type === 'Property') { - if (!replacements[logicalId]) { - (value as types.PropertyDifference).changeImpact = types.ResourceImpact.NO_CHANGE; - (value as types.PropertyDifference).isDifferent = false; - return; + + return _replacements; + } + + function _addChangeSetResourcesToDiff(_replacements: types.ResourceReplacements, _newTemplateResources: {[logicalId: string]: any}) { + const resourceDiffLogicalIds = diff.resources.logicalIds; + for (const logicalId of Object.keys(_replacements)) { + if (!(resourceDiffLogicalIds.includes(logicalId))) { + const noChangeResourceDiff = impl.diffResource(_newTemplateResources[logicalId], _newTemplateResources[logicalId]); + diff.resources.add(logicalId, noChangeResourceDiff); + } + + for (const propertyName of Object.keys(_replacements[logicalId].propertiesReplaced)) { + if (propertyName in diff.resources.get(logicalId).propertyUpdates) { + // If the property is already marked to be updated, then we don't need to do anything. + continue; } - switch (replacements[logicalId].propertiesReplaced[name]) { - case 'Always': - (value as types.PropertyDifference).changeImpact = types.ResourceImpact.WILL_REPLACE; - break; - case 'Never': - (value as types.PropertyDifference).changeImpact = types.ResourceImpact.WILL_UPDATE; - break; - case 'Conditionally': - (value as types.PropertyDifference).changeImpact = types.ResourceImpact.MAY_REPLACE; - break; - case undefined: + + const newProp = new types.PropertyDifference( + // these fields will be decided below + {}, {}, { changeImpact: undefined }, + ); + newProp.isDifferent = true; + diff.resources.get(logicalId).setPropertyChange(propertyName, newProp); + } + }; + } + + function _enhanceChangeImpacts(_replacements: types.ResourceReplacements) { + diff.resources.forEachDifference((logicalId: string, change: types.ResourceDifference) => { + if (change.resourceType.includes('AWS::Serverless')) { + // CFN applies the SAM transform before creating the changeset, so the changeset contains no information about SAM resources + return; + } + change.forEachDifference((type: 'Property' | 'Other', name: string, value: types.Difference | types.PropertyDifference) => { + if (type === 'Property') { + if (!_replacements[logicalId]) { (value as types.PropertyDifference).changeImpact = types.ResourceImpact.NO_CHANGE; (value as types.PropertyDifference).isDifferent = false; - break; + return; + } + switch (_replacements[logicalId].propertiesReplaced[name]) { + case 'Always': + (value as types.PropertyDifference).changeImpact = types.ResourceImpact.WILL_REPLACE; + break; + case 'Never': + (value as types.PropertyDifference).changeImpact = types.ResourceImpact.WILL_UPDATE; + break; + case 'Conditionally': + (value as types.PropertyDifference).changeImpact = types.ResourceImpact.MAY_REPLACE; + break; + case undefined: + (value as types.PropertyDifference).changeImpact = types.ResourceImpact.NO_CHANGE; + (value as types.PropertyDifference).isDifferent = false; + break; // otherwise, defer to the changeImpact from `diffTemplate` + } + } else if (type === 'Other') { + switch (name) { + case 'Metadata': + change.setOtherChange('Metadata', new types.Difference(value.newValue, value.newValue)); + break; + } } - } else if (type === 'Other') { - switch (name) { - case 'Metadata': - change.setOtherChange('Metadata', new types.Difference(value.newValue, value.newValue)); - break; - } - } + }); }); - }); + } } function findResourceImports(changeSet: DescribeChangeSetOutput): string[] { @@ -281,33 +332,6 @@ function findResourceImports(changeSet: DescribeChangeSetOutput): string[] { return importedResourceLogicalIds; } -function findResourceReplacements(changeSet: DescribeChangeSetOutput): types.ResourceReplacements { - const replacements: types.ResourceReplacements = {}; - for (const resourceChange of changeSet.Changes ?? []) { - const propertiesReplaced: { [propName: string]: types.ChangeSetReplacement } = {}; - for (const propertyChange of resourceChange.ResourceChange?.Details ?? []) { - if (propertyChange.Target?.Attribute === 'Properties') { - const requiresReplacement = propertyChange.Target.RequiresRecreation === 'Always'; - if (requiresReplacement && propertyChange.Evaluation === 'Static') { - propertiesReplaced[propertyChange.Target.Name!] = 'Always'; - } else if (requiresReplacement && propertyChange.Evaluation === 'Dynamic') { - // If Evaluation is 'Dynamic', then this may cause replacement, or it may not. - // see 'Replacement': https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_ResourceChange.html - propertiesReplaced[propertyChange.Target.Name!] = 'Conditionally'; - } else { - propertiesReplaced[propertyChange.Target.Name!] = propertyChange.Target.RequiresRecreation as types.ChangeSetReplacement; - } - } - } - replacements[resourceChange.ResourceChange?.LogicalResourceId!] = { - resourceReplaced: resourceChange.ResourceChange?.Replacement === 'True', - propertiesReplaced, - }; - } - - return replacements; -} - function normalize(template: any) { if (typeof template === 'object') { for (const key of (Object.keys(template ?? {}))) { diff --git a/packages/@aws-cdk/cloudformation-diff/lib/diff/types.ts b/packages/@aws-cdk/cloudformation-diff/lib/diff/types.ts index 4b65ef484e919..9d66476c62852 100644 --- a/packages/@aws-cdk/cloudformation-diff/lib/diff/types.ts +++ b/packages/@aws-cdk/cloudformation-diff/lib/diff/types.ts @@ -349,6 +349,10 @@ export class PropertyDifference extends Difference { export class DifferenceCollection> { constructor(private readonly diffs: { [logicalId: string]: T }) {} + public add(logicalId: string, diff: T): void { + this.diffs[logicalId] = diff; + } + public get changes(): { [logicalId: string]: T } { return onlyChanges(this.diffs); } diff --git a/packages/@aws-cdk/cloudformation-diff/test/diff-template.test.ts b/packages/@aws-cdk/cloudformation-diff/test/diff-template.test.ts index 318f27b6bbf30..5490d9051c22a 100644 --- a/packages/@aws-cdk/cloudformation-diff/test/diff-template.test.ts +++ b/packages/@aws-cdk/cloudformation-diff/test/diff-template.test.ts @@ -1,5 +1,6 @@ import * as fc from 'fast-check'; import { arbitraryTemplate } from './test-arbitraries'; +import { sqsQueue, sqsQueueWithAargs, ssmParam } from './util'; import { fullDiff, ResourceImpact } from '../lib/diff-template'; const POLICY_DOCUMENT = { foo: 'Bar' }; // Obviously a fake one! @@ -1231,4 +1232,336 @@ describe('changeset', () => { expect(differences.resources.differenceCount).toBe(1); expect(differences.resources.get('BucketResource').changeImpact === ResourceImpact.WILL_IMPORT); }); + + test('properties that only show up in changeset diff are included in fullDiff', () => { + // GIVEN + const currentTemplate = { + Parameters: { + SsmParameterValuetestbugreportC9: { + Type: 'AWS::SSM::Parameter::Value', + Default: 'goodJob', + }, + }, + Resources: { + mySsmParameter: ssmParam, + }, + }; + + // WHEN + const diffWithoutChangeSet = fullDiff(currentTemplate, currentTemplate); + const diffWithChangeSet = fullDiff(currentTemplate, currentTemplate, + { + Changes: [ + { + Type: 'Resource', + ResourceChange: { + Action: 'Modify', + LogicalResourceId: 'mySsmParameter', + PhysicalResourceId: 'mySsmParameterFromStack', + ResourceType: 'AWS::SSM::Parameter', + Replacement: 'False', + Scope: ['Properties'], + Details: [{ + Target: { Attribute: 'Properties', Name: 'Value', RequiresRecreation: 'Never' }, + Evaluation: 'Static', + ChangeSource: 'DirectModification', + }], + }, + }, + ], + Parameters: [{ + ParameterKey: 'SsmParameterValuetestbugreportC9', + ParameterValue: 'goodJob', + ResolvedValue: 'changedVal', + }], + }, + ); + + // THEN + expect(diffWithoutChangeSet.differenceCount).toBe(0); + expect(diffWithoutChangeSet.resources.changes).toEqual({}); + + expect(diffWithChangeSet.differenceCount).toBe(1); + expect(diffWithChangeSet.resources.changes).toEqual( + { + mySsmParameter: { + oldValue: ssmParam, + newValue: ssmParam, + resourceTypes: { + oldType: 'AWS::SSM::Parameter', + newType: 'AWS::SSM::Parameter', + }, + propertyDiffs: { + Name: { + oldValue: 'mySsmParameterFromStack', + newValue: 'mySsmParameterFromStack', + isDifferent: false, + changeImpact: 'NO_CHANGE', + }, + Type: { + oldValue: 'String', + newValue: 'String', + isDifferent: false, + changeImpact: 'NO_CHANGE', + }, + Value: { + oldValue: {}, + newValue: {}, + isDifferent: true, + changeImpact: 'WILL_UPDATE', // this is what changed! + }, + }, + otherDiffs: { + Type: { + oldValue: 'AWS::SSM::Parameter', + newValue: 'AWS::SSM::Parameter', + isDifferent: false, + }, + }, + isAddition: false, + isRemoval: false, + isImport: undefined, + }, + }, + ); + }); + + test('resources that only show up in changeset diff are included in fullDiff', () => { + // GIVEN + const currentTemplate = { + Parameters: { + SsmParameterValuetestbugreportC9: { + Type: 'AWS::SSM::Parameter::Value', + Default: 'goodJob', + }, + }, + Resources: { + Queue: { + Type: 'AWS::SQS::Queue', + Properties: { + QueueName: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + }, + }, + }, + }; + + // WHEN + const diffWithoutChangeSet = fullDiff(currentTemplate, currentTemplate); + const diffWithChangeSet = fullDiff(currentTemplate, currentTemplate, + { + Changes: [ + { + Type: 'Resource', + ResourceChange: { + PolicyAction: 'ReplaceAndDelete', + Action: 'Modify', + LogicalResourceId: 'Queue', + PhysicalResourceId: 'https://sqs.us-east-1.amazonaws.com/012345678901/hiii', + ResourceType: 'AWS::SQS::Queue', + Replacement: 'True', + Scope: ['Properties'], + Details: [{ + Target: { Attribute: 'Properties', Name: 'QueueName', RequiresRecreation: 'Always' }, + Evaluation: 'Static', + ChangeSource: 'DirectModification', + }], + }, + }, + ], + Parameters: [{ + ParameterKey: 'SsmParameterValuetestbugreportC9', + ParameterValue: 'goodJob', + ResolvedValue: 'changedVal', + }], + }, + ); + + // THEN + expect(diffWithoutChangeSet.differenceCount).toBe(0); + expect(diffWithoutChangeSet.resources.changes).toEqual({}); + + expect(diffWithChangeSet.differenceCount).toBe(1); + expect(diffWithChangeSet.resources.changes).toEqual( + { + Queue: { + oldValue: sqsQueue, + newValue: sqsQueue, + resourceTypes: { + oldType: 'AWS::SQS::Queue', + newType: 'AWS::SQS::Queue', + }, + propertyDiffs: { + QueueName: { + oldValue: {}, + newValue: {}, + isDifferent: true, + changeImpact: 'WILL_REPLACE', // this is what changed! + }, + }, + otherDiffs: { + Type: { + oldValue: 'AWS::SQS::Queue', + newValue: 'AWS::SQS::Queue', + isDifferent: false, + }, + }, + isAddition: false, + isRemoval: false, + isImport: undefined, + }, + }, + ); + }); + + test('a resource in the diff that is missing a property has the missing property added to the diff', () => { + // The idea is, we detect 1 change in the template diff -- and we detect another change in the changeset diff. + + // GIVEN + const currentTemplate = { + Parameters: { + SsmParameterValuetestbugreportC9: { + Type: 'AWS::SSM::Parameter::Value', + Default: 'goodJob', + }, + }, + Resources: { + Queue: sqsQueueWithAargs({ waitTime: 10 }), + }, + }; + + const newTemplate = { + Parameters: { + SsmParameterValuetestbugreportC9: { + Type: 'AWS::SSM::Parameter::Value', + Default: 'goodJob', + }, + }, + Resources: { + Queue: sqsQueueWithAargs({ waitTime: 20 }), + }, + }; + + // WHEN + const diffWithoutChangeSet = fullDiff(currentTemplate, newTemplate); + const diffWithChangeSet = fullDiff(currentTemplate, newTemplate, + { + Changes: [ + { + Type: 'Resource', + ResourceChange: { + PolicyAction: 'ReplaceAndDelete', + Action: 'Modify', + LogicalResourceId: 'Queue', + PhysicalResourceId: 'https://sqs.us-east-1.amazonaws.com/012345678901/newValueNEEEWWWEEERRRRR', + ResourceType: 'AWS::SQS::Queue', + Replacement: 'True', + Scope: [ + 'Properties', + ], + Details: [{ + Target: { Attribute: 'Properties', Name: 'QueueName', RequiresRecreation: 'Always' }, + Evaluation: 'Static', + ChangeSource: 'DirectModification', + }, + { + Target: { Attribute: 'Properties', Name: 'ReceiveMessageWaitTimeSeconds', RequiresRecreation: 'Never' }, + Evaluation: 'Static', + ChangeSource: 'DirectModification', + }], + }, + }, + ], + Parameters: [{ + ParameterKey: 'SsmParameterValuetestbugreportC9', + ParameterValue: 'goodJob', + ResolvedValue: 'changedddd', + }], + }, + ); + + // THEN + expect(diffWithoutChangeSet.differenceCount).toBe(1); + expect(diffWithoutChangeSet.resources.changes).toEqual( + { + Queue: { + oldValue: sqsQueueWithAargs({ waitTime: 10 }), + newValue: sqsQueueWithAargs({ waitTime: 20 }), + resourceTypes: { + oldType: 'AWS::SQS::Queue', + newType: 'AWS::SQS::Queue', + }, + propertyDiffs: { + QueueName: { + oldValue: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + newValue: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + isDifferent: false, + changeImpact: 'NO_CHANGE', + }, + ReceiveMessageWaitTimeSeconds: { + oldValue: 10, + newValue: 20, + isDifferent: true, + changeImpact: 'WILL_UPDATE', + }, + }, + otherDiffs: { + Type: { + oldValue: 'AWS::SQS::Queue', + newValue: 'AWS::SQS::Queue', + isDifferent: false, + }, + }, + isAddition: false, + isRemoval: false, + isImport: undefined, + }, + }, + ); + + expect(diffWithChangeSet.differenceCount).toBe(1); // this is the count of how many resources have changed + expect(diffWithChangeSet.resources.changes).toEqual( + { + Queue: { + oldValue: sqsQueueWithAargs({ waitTime: 10 }), + newValue: sqsQueueWithAargs({ waitTime: 20 }), + resourceTypes: { + oldType: 'AWS::SQS::Queue', + newType: 'AWS::SQS::Queue', + }, + propertyDiffs: { + QueueName: { + oldValue: { + }, + newValue: { + }, + isDifferent: true, + changeImpact: 'WILL_REPLACE', + }, + ReceiveMessageWaitTimeSeconds: { + oldValue: 10, + newValue: 20, + isDifferent: true, + changeImpact: 'WILL_UPDATE', + }, + }, + otherDiffs: { + Type: { + oldValue: 'AWS::SQS::Queue', + newValue: 'AWS::SQS::Queue', + isDifferent: false, + }, + }, + isAddition: false, + isRemoval: false, + isImport: undefined, + }, + }, + ); + }); }); diff --git a/packages/@aws-cdk/cloudformation-diff/test/util.ts b/packages/@aws-cdk/cloudformation-diff/test/util.ts index bce0b48b214eb..9c1bb4d4dfaed 100644 --- a/packages/@aws-cdk/cloudformation-diff/test/util.ts +++ b/packages/@aws-cdk/cloudformation-diff/test/util.ts @@ -73,3 +73,35 @@ export function largeSsoPermissionSet() { ), }); } + +export const ssmParam = { + Type: 'AWS::SSM::Parameter', + Properties: { + Name: 'mySsmParameterFromStack', + Type: 'String', + Value: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + }, +}; + +export const sqsQueue = { + Type: 'AWS::SQS::Queue', + Properties: { + QueueName: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + }, +}; + +export function sqsQueueWithAargs(args: { waitTime: number }) { + return { + Type: 'AWS::SQS::Queue', + Properties: { + QueueName: { + Ref: 'SsmParameterValuetestbugreportC9', + }, + ReceiveMessageWaitTimeSeconds: args.waitTime, + }, + }; +} diff --git a/packages/@aws-cdk/custom-resource-handlers/lib/aws-eks/cluster-resource-handler/cluster.ts b/packages/@aws-cdk/custom-resource-handlers/lib/aws-eks/cluster-resource-handler/cluster.ts index 70d31ed63f54e..fbe112f4b69ec 100644 --- a/packages/@aws-cdk/custom-resource-handlers/lib/aws-eks/cluster-resource-handler/cluster.ts +++ b/packages/@aws-cdk/custom-resource-handlers/lib/aws-eks/cluster-resource-handler/cluster.ts @@ -116,7 +116,7 @@ export class ClusterResourceHandler extends ResourceHandler { // if there is an update that requires replacement, go ahead and just create // a new cluster with the new config. The old cluster will automatically be // deleted by cloudformation upon success. - if (updates.replaceName || updates.replaceRole || updates.replaceVpc) { + if (updates.replaceName || updates.replaceRole ) { // if we are replacing this cluster and the cluster has an explicit // physical name, the creation of the new cluster will fail with "there is @@ -138,11 +138,12 @@ export class ClusterResourceHandler extends ResourceHandler { return this.updateClusterVersion(this.newProps.version); } - if (updates.updateLogging && updates.updateAccess) { - throw new Error('Cannot update logging and access at the same time'); + if ((updates.updateLogging && updates.updateAccess) || (updates.updateLogging && updates.updateVpc) || + (updates.updateVpc && updates.updateAccess)) { + throw new Error('Only one type of update - VpcConfigUpdate, LoggingUpdate or EndpointAccessUpdate can be allowed'); } - if (updates.updateLogging || updates.updateAccess) { + if (updates.updateLogging || updates.updateAccess || updates.updateVpc) { const config: EKS.UpdateClusterConfigCommandInput = { name: this.clusterName, }; @@ -150,15 +151,18 @@ export class ClusterResourceHandler extends ResourceHandler { config.logging = this.newProps.logging; }; if (updates.updateAccess) { - // Updating the cluster with securityGroupIds and subnetIds (as specified in the warning here: - // https://awscli.amazonaws.com/v2/documentation/api/latest/reference/eks/update-cluster-config.html) - // will fail, therefore we take only the access fields explicitly config.resourcesVpcConfig = { endpointPrivateAccess: this.newProps.resourcesVpcConfig?.endpointPrivateAccess, endpointPublicAccess: this.newProps.resourcesVpcConfig?.endpointPublicAccess, publicAccessCidrs: this.newProps.resourcesVpcConfig?.publicAccessCidrs, }; } + if (updates.updateVpc) { + config.resourcesVpcConfig = { + subnetIds: this.newProps.resourcesVpcConfig?.subnetIds, + securityGroupIds: this.newProps.resourcesVpcConfig?.securityGroupIds, + }; + } const updateResponse = await this.eks.updateClusterConfig(config); return { EksUpdateId: updateResponse.update?.id }; @@ -304,13 +308,13 @@ function parseProps(props: any): EKS.CreateClusterCommandInput { interface UpdateMap { replaceName: boolean; // name - replaceVpc: boolean; // resourcesVpcConfig.subnetIds and securityGroupIds replaceRole: boolean; // roleArn updateVersion: boolean; // version updateLogging: boolean; // logging updateEncryption: boolean; // encryption (cannot be updated) updateAccess: boolean; // resourcesVpcConfig.endpointPrivateAccess and endpointPublicAccess + updateVpc: boolean; // resourcesVpcConfig.subnetIds and securityGroupIds } function analyzeUpdate(oldProps: Partial, newProps: EKS.CreateClusterCommandInput): UpdateMap { @@ -327,7 +331,7 @@ function analyzeUpdate(oldProps: Partial, newProp return { replaceName: newProps.name !== oldProps.name, - replaceVpc: + updateVpc: JSON.stringify(newVpcProps.subnetIds?.sort()) !== JSON.stringify(oldVpcProps.subnetIds?.sort()) || JSON.stringify(newVpcProps.securityGroupIds?.sort()) !== JSON.stringify(oldVpcProps.securityGroupIds?.sort()), updateAccess: diff --git a/packages/@aws-cdk/custom-resource-handlers/test/aws-eks/cluster-resource-provider.test.ts b/packages/@aws-cdk/custom-resource-handlers/test/aws-eks/cluster-resource-provider.test.ts index dc8b010c76247..d78f6ad907513 100644 --- a/packages/@aws-cdk/custom-resource-handlers/test/aws-eks/cluster-resource-provider.test.ts +++ b/packages/@aws-cdk/custom-resource-handlers/test/aws-eks/cluster-resource-provider.test.ts @@ -272,34 +272,6 @@ describe('cluster resource provider', () => { }); }); - test('subnets or security groups requires a replacement', async () => { - const handler = new ClusterResourceHandler(mocks.client, mocks.newRequest('Update', { - ...mocks.MOCK_PROPS, - resourcesVpcConfig: { - subnetIds: ['subnet1', 'subnet2'], - securityGroupIds: ['sg1'], - }, - }, { - ...mocks.MOCK_PROPS, - resourcesVpcConfig: { - subnetIds: ['subnet1'], - securityGroupIds: ['sg2'], - }, - })); - const resp = await handler.onEvent(); - - expect(resp).toEqual({ PhysicalResourceId: 'MyResourceId-fakerequestid' }); - expect(mocks.actualRequest.createClusterRequest).toEqual({ - name: 'MyResourceId-fakerequestid', - roleArn: 'arn:of:role', - resourcesVpcConfig: - { - subnetIds: ['subnet1', 'subnet2'], - securityGroupIds: ['sg1'], - }, - }); - }); - test('change subnets or security groups order should not trigger an update', async () => { const handler = new ClusterResourceHandler(mocks.client, mocks.newRequest('Update', { ...mocks.MOCK_PROPS, @@ -551,6 +523,26 @@ describe('cluster resource provider', () => { expect(error.message).toEqual('Cannot remove cluster version configuration. Current version is 1.2'); }); + + test('subnets or security groups does not require a replacement', async () => { + const handler = new ClusterResourceHandler(mocks.client, mocks.newRequest('Update', { + ...mocks.MOCK_PROPS, + resourcesVpcConfig: { + subnetIds: ['subnet1', 'subnet2'], + securityGroupIds: ['sg1'], + }, + }, { + ...mocks.MOCK_PROPS, + resourcesVpcConfig: { + subnetIds: ['subnet1'], + securityGroupIds: ['sg2'], + }, + })); + const resp = await handler.onEvent(); + expect(resp).toEqual({ EksUpdateId: 'MockEksUpdateStatusId' }); + expect(mocks.actualRequest.createClusterRequest).toEqual(undefined); + }); + }); describe('logging or access change', () => { @@ -633,7 +625,7 @@ describe('cluster resource provider', () => { } catch (e) { error = e; } - expect(error.message).toEqual('Cannot update logging and access at the same time'); + expect(error.message).toEqual('Only one type of update - VpcConfigUpdate, LoggingUpdate or EndpointAccessUpdate can be allowed'); }); test('both logging and access defined and modify both of them', async () => { const handler = new ClusterResourceHandler(mocks.client, mocks.newRequest('Update', { @@ -671,7 +663,7 @@ describe('cluster resource provider', () => { } catch (e) { error = e; } - expect(error.message).toEqual('Cannot update logging and access at the same time'); + expect(error.message).toEqual('Only one type of update - VpcConfigUpdate, LoggingUpdate or EndpointAccessUpdate can be allowed'); }); test('Given logging enabled and unchanged, updating the only publicAccessCidrs is allowed ', async () => { const handler = new ClusterResourceHandler(mocks.client, mocks.newRequest('Update', { diff --git a/packages/aws-cdk-lib/README.md b/packages/aws-cdk-lib/README.md index 446cb1a118976..54a158fdc326d 100644 --- a/packages/aws-cdk-lib/README.md +++ b/packages/aws-cdk-lib/README.md @@ -268,7 +268,15 @@ In order to mimic strong references, a Custom Resource is also created in the co stack which marks the SSM parameters as being "imported". When a parameter has been successfully imported, the producing stack cannot update the value. -See the [adr](https://github.com/aws/aws-cdk/blob/main/packages/@aws-cdk/core/adr/cross-region-stack-references) +> [!NOTE] +> As a consequence of this feature being built on a Custom Resource, we are restricted to a +> CloudFormation response body size limitation of [4096 bytes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/crpg-ref-responses.html). +> To prevent deployment errors related to the Custom Resource Provider response body being too +> large, we recommend limiting the use of nested stacks and minimizing the length of stack names. +> Doing this will prevent SSM parameter names from becoming too long which will reduce the size of the +> response body. + +See the [adr](https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/core/adr/cross-region-stack-references.md) for more details on this feature. ### Removing automatic cross-stack references diff --git a/packages/aws-cdk-lib/aws-apigateway/lib/method.ts b/packages/aws-cdk-lib/aws-apigateway/lib/method.ts index 4c453350f0c34..98cf76c06d4a2 100644 --- a/packages/aws-cdk-lib/aws-apigateway/lib/method.ts +++ b/packages/aws-cdk-lib/aws-apigateway/lib/method.ts @@ -199,6 +199,14 @@ export class Method extends Resource { `which is different from what is required by the authorizer [${authorizer.authorizationType}]`); } + // When AuthorizationType is None, there shouldn't be any AuthorizationScope since AuthorizationScope should only + // be applied to COGNITO_USER_POOLS AuthorizationType. + const defaultScopes = options.authorizationScopes ?? defaultMethodOptions.authorizationScopes; + const authorizationScopes = authorizationTypeOption === AuthorizationType.COGNITO ? defaultScopes : undefined; + if (authorizationTypeOption !== AuthorizationType.COGNITO && defaultScopes) { + Annotations.of(this).addWarningV2('@aws-cdk/aws-apigateway:invalidAuthScope', '\'AuthorizationScopes\' can only be set when \'AuthorizationType\' sets \'COGNITO_USER_POOLS\'. Default to ignore the values set in \'AuthorizationScopes\'.'); + } + if (Authorizer.isAuthorizer(authorizer)) { authorizer._attachToApi(this.api); } @@ -223,7 +231,7 @@ export class Method extends Resource { methodResponses: Lazy.any({ produce: () => this.renderMethodResponses(this.methodResponses) }, { omitEmptyArray: true }), requestModels: this.renderRequestModels(options.requestModels), requestValidatorId: this.requestValidatorId(options), - authorizationScopes: options.authorizationScopes ?? defaultMethodOptions.authorizationScopes, + authorizationScopes: authorizationScopes, }; const resource = new CfnMethod(this, 'Resource', methodProps); diff --git a/packages/aws-cdk-lib/aws-apigateway/test/method.test.ts b/packages/aws-cdk-lib/aws-apigateway/test/method.test.ts index fbf92277a920d..ad599dd86f19d 100644 --- a/packages/aws-cdk-lib/aws-apigateway/test/method.test.ts +++ b/packages/aws-cdk-lib/aws-apigateway/test/method.test.ts @@ -714,6 +714,7 @@ describe('method', () => { resource: api.root, options: { apiKeyRequired: true, + authorizationType: apigw.AuthorizationType.COGNITO, authorizationScopes: ['AuthScope1', 'AuthScope2'], }, }); @@ -733,6 +734,7 @@ describe('method', () => { cloudWatchRole: false, deploy: false, defaultMethodOptions: { + authorizationType: apigw.AuthorizationType.COGNITO, authorizationScopes: ['DefaultAuth'], }, }); @@ -754,33 +756,35 @@ describe('method', () => { }); - test('Method options Auth Scopes is picked up', () => { + test.each([ + [apigw.AuthorizationType.IAM, undefined], + [apigw.AuthorizationType.NONE, undefined], + [apigw.AuthorizationType.CUSTOM, undefined], + [apigw.AuthorizationType.COGNITO, ['MethodAuthScope']], + ])('Test combination of authType and expected authScopes', (authType, scopes) => { // GIVEN const stack = new cdk.Stack(); const api = new apigw.RestApi(stack, 'test-api', { cloudWatchRole: false, deploy: false, - defaultMethodOptions: { - authorizationScopes: ['DefaultAuth'], - }, }); // WHEN new apigw.Method(stack, 'MethodAuthScopeUsed', { - httpMethod: 'POST', + httpMethod: 'OPTIONS', resource: api.root, options: { apiKeyRequired: true, + authorizationType: authType, authorizationScopes: ['MethodAuthScope'], }, }); // THEN - Template.fromStack(stack).hasResourceProperties('AWS::ApiGateway::Method', { - ApiKeyRequired: true, - AuthorizationScopes: ['MethodAuthScope'], - }); - + expect(() => Template.fromStack(stack).hasResourceProperties('AWS::ApiGateway::Method', { + AuthorizationScopes: scopes, + AuthorizationType: authType, + })); }); test('Auth Scopes absent', () => { diff --git a/packages/aws-cdk-lib/aws-appsync/README.md b/packages/aws-cdk-lib/aws-appsync/README.md index dfb8fca7ce144..a239a481e057a 100644 --- a/packages/aws-cdk-lib/aws-appsync/README.md +++ b/packages/aws-cdk-lib/aws-appsync/README.md @@ -1,6 +1,5 @@ # AWS AppSync Construct Library - The `aws-cdk-lib/aws-appsync` package contains constructs for building flexible APIs that use GraphQL. @@ -86,8 +85,6 @@ demoDS.createResolver('QueryGetDemosConsistentResolver', { }); ``` - - ### Aurora Serverless AppSync provides a data source for executing SQL commands against Amazon Aurora @@ -303,6 +300,7 @@ httpDs.createResolver('MutationCallStepFunctionResolver', { ``` ### EventBridge + Integrating AppSync with EventBridge enables developers to use EventBridge rules to route commands for GraphQL mutations that need to perform any one of a variety of asynchronous tasks. More broadly, it enables teams to expose an event bus as a part of a GraphQL schema. @@ -437,6 +435,7 @@ ds.createResolver('QueryGetTestsResolver', { ``` ## Merged APIs + AppSync supports [Merged APIs](https://docs.aws.amazon.com/appsync/latest/devguide/merged-api.html) which can be used to merge multiple source APIs into a single API. ```ts @@ -602,9 +601,9 @@ sources and resolvers, an `apiId` is sufficient. ## Private APIs -By default all AppSync GraphQL APIs are public and can be accessed from the internet. -For customers that want to limit access to be from their VPC, the optional API `visibility` property can be set to `Visibility.PRIVATE` -at creation time. To explicitly create a public API, the `visibility` property should be set to `Visibility.GLOBAL`. +By default all AppSync GraphQL APIs are public and can be accessed from the internet. +For customers that want to limit access to be from their VPC, the optional API `visibility` property can be set to `Visibility.PRIVATE` +at creation time. To explicitly create a public API, the `visibility` property should be set to `Visibility.GLOBAL`. If visibility is not set, the service will default to `GLOBAL`. CDK stack file `app-stack.ts`: @@ -617,8 +616,8 @@ const api = new appsync.GraphqlApi(this, 'api', { }); ``` -See [documentation](https://docs.aws.amazon.com/appsync/latest/devguide/using-private-apis.html) -for more details about Private APIs +See [documentation](https://docs.aws.amazon.com/appsync/latest/devguide/using-private-apis.html) +for more details about Private APIs ## Authorization @@ -842,8 +841,8 @@ const api = new appsync.GraphqlApi(this, 'api', { ## Resolver Count Limits -You can control how many resolvers each query can process. -By default, each query can process up to 10000 resolvers. +You can control how many resolvers each query can process. +By default, each query can process up to 10000 resolvers. By setting a limit AppSync will not handle any resolvers past a certain number limit. ```ts @@ -870,3 +869,27 @@ const api = new appsync.GraphqlApi(this, 'api', { api.addEnvironmentVariable('EnvKey2', 'non-empty-2'); ``` + +## Configure an EventBridge target that invokes an AppSync GraphQL API + +Configuring the target relies on the `graphQLEndpointArn` property. + +Use the `AppSync` event target to trigger an AppSync GraphQL API. You need to +create an `AppSync.GraphqlApi` configured with `AWS_IAM` authorization mode. + +The code snippet below creates a AppSync GraphQL API target that is invoked, calling the `publish` mutation. + +```ts +import * as events from 'aws-cdk-lib/aws-events'; +import * as targets from 'aws-cdk-lib/aws-events-targets'; + +declare const rule: events.Rule; +declare const api: appsync.GraphqlApi; + +rule.addTarget(new targets.AppSync(api, { + graphQLOperation: 'mutation Publish($message: String!){ publish(message: $message) { message } }', + variables: events.RuleTargetInput.fromObject({ + message: 'hello world', + }), +})); +``` diff --git a/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi-base.ts b/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi-base.ts index 7f91d270c93ec..7b87718a52e5d 100644 --- a/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi-base.ts +++ b/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi-base.ts @@ -112,6 +112,47 @@ export class IamResource { } } +/** + * Visibility type for a GraphQL API + */ +export enum Visibility { + + /** + * Public, open to the internet + */ + GLOBAL = 'GLOBAL', + /** + * Only accessible through a VPC + */ + PRIVATE = 'PRIVATE', +} + +/** + * enum with all possible values for AppSync authorization type + */ +export enum AuthorizationType { + /** + * API Key authorization type + */ + API_KEY = 'API_KEY', + /** + * AWS IAM authorization type. Can be used with Cognito Identity Pool federated credentials + */ + IAM = 'AWS_IAM', + /** + * Cognito User Pool authorization type + */ + USER_POOL = 'AMAZON_COGNITO_USER_POOLS', + /** + * OpenID Connect authorization type + */ + OIDC = 'OPENID_CONNECT', + /** + * Lambda authorization type + */ + LAMBDA = 'AWS_LAMBDA', +} + /** * Interface for GraphQL */ @@ -132,6 +173,21 @@ export interface IGraphqlApi extends IResource { */ readonly arn: string; + /** + * The GraphQL endpoint ARN + */ + readonly graphQLEndpointArn: string; + + /** + * the visibility of the API + */ + readonly visibility: Visibility; + + /** + * The Authorization Types for this GraphQL Api + */ + readonly modes: AuthorizationType[]; + /** * add a new dummy data source to this API. Useful for pipeline resolvers * and for backend changes that don't require a data source. @@ -290,11 +346,26 @@ export abstract class GraphqlApiBase extends Resource implements IGraphqlApi { */ public abstract readonly apiId: string; + /** + * The GraphQL endpoint ARN + */ + public abstract readonly graphQLEndpointArn: string; + + /** + * The visibility of the API + */ + public abstract readonly visibility: Visibility; + /** * the ARN of the API */ public abstract readonly arn: string; + /** + * The Authorization Types for this GraphQL Api + */ + public abstract readonly modes: AuthorizationType[]; + /** * add a new dummy data source to this API. Useful for pipeline resolvers * and for backend changes that don't require a data source. diff --git a/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi.ts b/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi.ts index a301d90328d1d..4332257d5484c 100644 --- a/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi.ts +++ b/packages/aws-cdk-lib/aws-appsync/lib/graphqlapi.ts @@ -1,6 +1,6 @@ import { Construct } from 'constructs'; import { CfnApiKey, CfnGraphQLApi, CfnGraphQLSchema, CfnDomainName, CfnDomainNameApiAssociation, CfnSourceApiAssociation } from './appsync.generated'; -import { IGraphqlApi, GraphqlApiBase } from './graphqlapi-base'; +import { IGraphqlApi, GraphqlApiBase, Visibility, AuthorizationType } from './graphqlapi-base'; import { ISchema, SchemaFile } from './schema'; import { MergeType, addSourceApiAutoMergePermission, addSourceGraphQLPermission } from './source-api-association'; import { ICertificate } from '../../aws-certificatemanager'; @@ -11,32 +11,6 @@ import { ILogGroup, LogGroup, LogRetention, RetentionDays } from '../../aws-logs import { CfnResource, Duration, Expiration, FeatureFlags, IResolvable, Lazy, Stack, Token } from '../../core'; import * as cxapi from '../../cx-api'; -/** - * enum with all possible values for AppSync authorization type - */ -export enum AuthorizationType { - /** - * API Key authorization type - */ - API_KEY = 'API_KEY', - /** - * AWS IAM authorization type. Can be used with Cognito Identity Pool federated credentials - */ - IAM = 'AWS_IAM', - /** - * Cognito User Pool authorization type - */ - USER_POOL = 'AMAZON_COGNITO_USER_POOLS', - /** - * OpenID Connect authorization type - */ - OIDC = 'OPENID_CONNECT', - /** - * Lambda authorization type - */ - LAMBDA = 'AWS_LAMBDA', -} - /** * Interface to specify default or additional authorization(s) */ @@ -260,21 +234,6 @@ export interface LogConfig { readonly retention?: RetentionDays; } -/** - * Visibility type for a GraphQL API - */ -export enum Visibility { - - /** - * Public, open to the internet - */ - GLOBAL = 'GLOBAL', - /** - * Only accessible through a VPC - */ - PRIVATE = 'PRIVATE', -} - /** * Domain name configuration for AppSync */ @@ -489,6 +448,27 @@ export interface GraphqlApiAttributes { * @default - autogenerated arn */ readonly graphqlApiArn?: string; + + /** + * The GraphQl endpoint arn for the GraphQL API + * + * @default - none, required to construct event rules from imported APIs + */ + readonly graphQLEndpointArn?: string; + + /** + * The GraphQl API visibility + * + * @default - GLOBAL + */ + readonly visibility?: Visibility; + + /** + * The Authorization Types for this GraphQL Api + * + * @default - none, required to construct event rules from imported APIs + */ + readonly modes?: AuthorizationType[]; } /** @@ -527,6 +507,13 @@ export class GraphqlApi extends GraphqlApiBase { class Import extends GraphqlApiBase { public readonly apiId = attrs.graphqlApiId; public readonly arn = arn; + + // the GraphQL endpoint ARN is not required to identify an AppSync GraphQL API + // this value is only needed to construct event rules. + public readonly graphQLEndpointArn = attrs.graphQLEndpointArn ?? ''; + public readonly visibility = attrs.visibility ?? Visibility.GLOBAL; + public readonly modes = attrs.modes ?? [] + constructor(s: Construct, i: string) { super(s, i); } @@ -545,6 +532,11 @@ export class GraphqlApi extends GraphqlApiBase { */ public readonly arn: string; + /** + * The GraphQL endpoint ARN + */ + public readonly graphQLEndpointArn: string; + /** * the URL of the endpoint created by AppSync * @@ -557,6 +549,11 @@ export class GraphqlApi extends GraphqlApiBase { */ public readonly name: string; + /** + * the visibility of the API + */ + public readonly visibility: Visibility; + /** * the schema attached to this api (only available for GraphQL APIs, not available for merged APIs) */ @@ -630,6 +627,8 @@ export class GraphqlApi extends GraphqlApiBase { } this.node.addValidation({ validate: () => this.validateEnvironmentVariables() }); + this.visibility = props.visibility ?? Visibility.GLOBAL; + this.api = new CfnGraphQLApi(this, 'Resource', { name: props.name, authenticationType: defaultMode.authorizationType, @@ -652,6 +651,7 @@ export class GraphqlApi extends GraphqlApiBase { this.arn = this.api.attrArn; this.graphqlUrl = this.api.attrGraphQlUrl; this.name = this.api.name; + this.graphQLEndpointArn = this.api.attrGraphQlEndpointArn; if (this.definition.schema) { this.schemaResource = new CfnGraphQLSchema(this, 'Schema', this.definition.schema.bind(this)); diff --git a/packages/aws-cdk-lib/aws-autoscaling/README.md b/packages/aws-cdk-lib/aws-autoscaling/README.md index ff03c316549ed..b8745f86ff860 100644 --- a/packages/aws-cdk-lib/aws-autoscaling/README.md +++ b/packages/aws-cdk-lib/aws-autoscaling/README.md @@ -23,7 +23,8 @@ new autoscaling.AutoScalingGroup(this, 'ASG', { Creating an `AutoScalingGroup` from a Launch Configuration has been deprecated. All new accounts created after December 31, 2023 will no longer be able to create Launch Configurations. With the `@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig` feature flag set to true, `AutoScalingGroup` properties used to create a Launch Configuration will now be used to create a `LaunchTemplate` using a [Launch Configuration to `LaunchTemplate` mapping](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html#launch-configuration-mapping-reference). Specifically, the following `AutoScalingGroup` properties will be used to generate a `LaunchTemplate`: * machineImage -* keyName +* keyName (deprecated, prefer keyPair) +* keyPair * instanceType * instanceMonitoring * securityGroup @@ -738,6 +739,30 @@ new autoscaling.AutoScalingGroup(this, 'ASG', { }); ``` +## Configuring KeyPair for instances + +You can use a keyPair to build your asg when you decide not to use a ready-made LanchTemplate. + +To configure KeyPair for an autoscaling group, pass the `keyPair` as a prop: + +```ts +declare const vpc: ec2.Vpc; +declare const instanceType: ec2.InstanceType; +declare const machineImage: ec2.IMachineImage; + +const myKeyPair = new ec2.KeyPair(this, 'MyKeyPair'); + +new autoscaling.AutoScalingGroup(this, 'ASG', { + vpc, + instanceType, + machineImage, + + // ... + + keyPair: myKeyPair, +}); +``` + ## Future work * [ ] CloudWatch Events (impossible to add currently as the AutoScalingGroup ARN is diff --git a/packages/aws-cdk-lib/aws-autoscaling/lib/auto-scaling-group.ts b/packages/aws-cdk-lib/aws-autoscaling/lib/auto-scaling-group.ts index eab143ef5d80c..05ea9b3a4c148 100644 --- a/packages/aws-cdk-lib/aws-autoscaling/lib/auto-scaling-group.ts +++ b/packages/aws-cdk-lib/aws-autoscaling/lib/auto-scaling-group.ts @@ -83,10 +83,26 @@ export interface CommonAutoScalingGroupProps { * * `launchTemplate` and `mixedInstancesPolicy` must not be specified when this property is specified * + * You can either specify `keyPair` or `keyName`, not both. + * * @default - No SSH access will be possible. + * @deprecated - Use `keyPair` instead - https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2-readme.html#using-an-existing-ec2-key-pair */ readonly keyName?: string; + /** + * The SSH keypair to grant access to the instance. + * + * Feature flag `AUTOSCALING_GENERATE_LAUNCH_TEMPLATE` must be enabled to use this property. + * + * `launchTemplate` and `mixedInstancesPolicy` must not be specified when this property is specified. + * + * You can either specify `keyPair` or `keyName`, not both. + * + * @default - No SSH access will be possible. + */ + readonly keyPair?: ec2.IKeyPair; + /** * Where to place instances within the VPC * @@ -1355,6 +1371,10 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements throw new Error('Setting \'instanceType\' is required when \'launchTemplate\' and \'mixedInstancesPolicy\' is not set'); } + if (props.keyName && props.keyPair) { + throw new Error('Cannot specify both of \'keyName\' and \'keyPair\'; prefer \'keyPair\''); + } + Tags.of(this).add(NAME_TAG, this.node.path); this.securityGroup = props.securityGroup || new ec2.SecurityGroup(this, 'InstanceSecurityGroup', { @@ -1381,7 +1401,6 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements launchTemplateFromConfig = new ec2.LaunchTemplate(this, 'LaunchTemplate', { machineImage: props.machineImage, - keyName: props.keyName, instanceType: props.instanceType, detailedMonitoring: props.instanceMonitoring !== undefined && props.instanceMonitoring === Monitoring.DETAILED, securityGroup: this.securityGroup, @@ -1390,6 +1409,8 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements spotOptions: props.spotPrice !== undefined ? { maxPrice: parseFloat(props.spotPrice) } : undefined, blockDevices: props.blockDevices, instanceProfile, + keyPair: props.keyPair, + ...(props.keyName ? { keyName: props.keyName } : {}), }); this.osType = launchTemplateFromConfig.osType!; @@ -1398,6 +1419,10 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements this._connections = new ec2.Connections({ securityGroups: [this.securityGroup] }); this.securityGroups = [this.securityGroup]; + if (props.keyPair) { + throw new Error('Can only use \'keyPair\' when feature flag \'AUTOSCALING_GENERATE_LAUNCH_TEMPLATE\' is set'); + } + // use delayed evaluation const imageConfig = props.machineImage.getImage(this); this._userData = props.userData ?? imageConfig.userData; @@ -1718,6 +1743,9 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements if (props.keyName) { throw new Error('Setting \'keyName\' must not be set when \'launchTemplate\' or \'mixedInstancesPolicy\' is set'); } + if (props.keyPair) { + throw new Error('Setting \'keyPair\' must not be set when \'launchTemplate\' or \'mixedInstancesPolicy\' is set'); + } if (props.instanceMonitoring) { throw new Error('Setting \'instanceMonitoring\' must not be set when \'launchTemplate\' or \'mixedInstancesPolicy\' is set'); } diff --git a/packages/aws-cdk-lib/aws-autoscaling/lib/step-scaling-action.ts b/packages/aws-cdk-lib/aws-autoscaling/lib/step-scaling-action.ts index ba6a91f3d03dc..364344ed9f941 100644 --- a/packages/aws-cdk-lib/aws-autoscaling/lib/step-scaling-action.ts +++ b/packages/aws-cdk-lib/aws-autoscaling/lib/step-scaling-action.ts @@ -1,7 +1,7 @@ import { Construct } from 'constructs'; import { IAutoScalingGroup } from './auto-scaling-group'; import { CfnScalingPolicy } from './autoscaling.generated'; -import { Duration, Lazy } from '../../core'; +import { Annotations, Duration, Lazy } from '../../core'; /** * Properties for a scaling policy @@ -16,6 +16,7 @@ export interface StepScalingActionProps { * Period after a scaling completes before another scaling activity can start. * * @default The default cooldown configured on the AutoScalingGroup + * @deprecated cooldown is not valid with step scaling action */ readonly cooldown?: Duration; @@ -71,10 +72,16 @@ export class StepScalingAction extends Construct { constructor(scope: Construct, id: string, props: StepScalingActionProps) { super(scope, id); + // Specify cooldown property in StepScaling policy type is ineffective and may cause deployment failure + // in certain regions. We can't simply remove the property since it break existing users. Since setting + // this value is ineffective, we can safely ignore the value of this property with a warning. + if (props.cooldown) { + Annotations.of(this).addWarningV2('@aws-cdk/aws-autoscaling:cooldownOnStepScaling', '\'Cooldown\' is valid only if the policy type is SimpleScaling. Default to ignore the values set.'); + } + const resource = new CfnScalingPolicy(this, 'Resource', { policyType: 'StepScaling', autoScalingGroupName: props.autoScalingGroup.autoScalingGroupName, - cooldown: props.cooldown && props.cooldown.toSeconds().toString(), estimatedInstanceWarmup: props.estimatedInstanceWarmup && props.estimatedInstanceWarmup.toSeconds(), adjustmentType: props.adjustmentType, minAdjustmentMagnitude: props.minAdjustmentMagnitude, diff --git a/packages/aws-cdk-lib/aws-autoscaling/test/auto-scaling-group.test.ts b/packages/aws-cdk-lib/aws-autoscaling/test/auto-scaling-group.test.ts index 5096a78132ce3..1ccbdd5f423ba 100644 --- a/packages/aws-cdk-lib/aws-autoscaling/test/auto-scaling-group.test.ts +++ b/packages/aws-cdk-lib/aws-autoscaling/test/auto-scaling-group.test.ts @@ -2360,6 +2360,127 @@ describe('auto scaling group', () => { }); }); + test('can configure keyPair', () => { + // GIVE + const stack = new cdk.Stack(); + stack.node.setContext(AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, true); + const vpc = mockVpc(stack); + const keyPair = new ec2.KeyPair(stack, 'MyKeyPair', { keyPairName: 'MyKeyPair' }); + + // WHEN + new autoscaling.AutoScalingGroup(stack, 'MyAutoScalingGroup', { + vpc, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.M4, ec2.InstanceSize.MICRO), + machineImage: new ec2.AmazonLinuxImage(), + keyPair: keyPair, + }); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::EC2::LaunchTemplate', { + LaunchTemplateData: { + KeyName: { + Ref: 'MyKeyPair659209CA', + }, + }, + }); + }); + + test('keyPair should throw if @aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig is false', () => { + // WHEN + const stack = new cdk.Stack(); + stack.node.setContext(AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, false); + const vpc = mockVpc(stack); + const keyPair = new ec2.KeyPair(stack, 'MyKeyPair', { keyPairName: 'MyKeyPair' }); + + // THEN + expect(() => { + new autoscaling.AutoScalingGroup(stack, 'MyASG', { + vpc, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.M4, ec2.InstanceSize.MICRO), + machineImage: new ec2.AmazonLinuxImage(), + keyPair: keyPair, + }); + }).toThrow("Can only use \'keyPair\' when feature flag \'AUTOSCALING_GENERATE_LAUNCH_TEMPLATE\' is set"); + }); + + test('keyPair and keyName cannot be defined together', () => { + // WHEN + const stack = new cdk.Stack(); + const vpc = mockVpc(stack); + const keyPair = new ec2.KeyPair(stack, 'MyKeyPair', { keyPairName: 'MyKeyPair' }); + + // THEN + expect(() => { + new autoscaling.AutoScalingGroup(stack, 'MyASG', { + vpc, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.M4, ec2.InstanceSize.MICRO), + machineImage: new ec2.AmazonLinuxImage(), + keyName: 'MyKeyPair', + keyPair: keyPair, + }); + }).toThrow("Cannot specify both of \'keyName\' and \'keyPair\'; prefer \'keyPair\'"); + }); + + test('keyPair and launchTemplate cannot be defined together', () => { + // WHEN + const stack = new cdk.Stack(); + const vpc = mockVpc(stack); + const keyPair = new ec2.KeyPair(stack, 'MyKeyPair', { keyPairName: 'MyKeyPair' }); + + // THEN + expect(() => { + new autoscaling.AutoScalingGroup(stack, 'MyASG', { + vpc, + launchTemplate: new LaunchTemplate(stack, 'in-stack-lt', { + instanceType: new ec2.InstanceType('t3.micro'), + machineImage: new ec2.AmazonLinuxImage({ + generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, + cpuType: ec2.AmazonLinuxCpuType.X86_64, + }), + }), + keyPair: keyPair, + }); + }).toThrow("Setting \'keyPair\' must not be set when \'launchTemplate\' or \'mixedInstancesPolicy\' is set"); + }); + + test('keyName and mixedInstancesPolicy cannot be defined together', () => { + // WHEN + const stack = new cdk.Stack(); + const vpc = mockVpc(stack); + const keyPair = new ec2.KeyPair(stack, 'MyKeyPair', { keyPairName: 'MyKeyPair' }); + const lt = new LaunchTemplate(stack, 'in-stack-lt', { + instanceType: new ec2.InstanceType('t3.micro'), + machineImage: new ec2.AmazonLinuxImage({ + generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, + cpuType: ec2.AmazonLinuxCpuType.X86_64, + }), + }); + + // THEN + expect(() => { + new autoscaling.AutoScalingGroup(stack, 'mip-asg', { + mixedInstancesPolicy: { + launchTemplate: lt, + launchTemplateOverrides: [{ + instanceType: new InstanceType('t4g.micro'), + launchTemplate: lt, + weightedCapacity: 9, + }], + instancesDistribution: { + onDemandAllocationStrategy: OnDemandAllocationStrategy.PRIORITIZED, + onDemandBaseCapacity: 1, + onDemandPercentageAboveBaseCapacity: 2, + spotAllocationStrategy: SpotAllocationStrategy.CAPACITY_OPTIMIZED_PRIORITIZED, + spotInstancePools: 3, + spotMaxPrice: '4', + }, + }, + keyPair: keyPair, + vpc, + }); + }).toThrow("Setting \'keyPair\' must not be set when \'launchTemplate\' or \'mixedInstancesPolicy\' is set"); + }); + }); function mockVpc(stack: cdk.Stack) { diff --git a/packages/aws-cdk-lib/aws-autoscaling/test/scaling.test.ts b/packages/aws-cdk-lib/aws-autoscaling/test/scaling.test.ts index f8dd19b431812..07cd8aded82b6 100644 --- a/packages/aws-cdk-lib/aws-autoscaling/test/scaling.test.ts +++ b/packages/aws-cdk-lib/aws-autoscaling/test/scaling.test.ts @@ -193,6 +193,28 @@ describe('scaling', () => { }); }); + test('setting cooldown on step scaling is ineffective', () => { + // GIVEN + const stack = new cdk.Stack(); + const vpc = new ec2.Vpc(stack, 'Vpc'); + const autoScalingGroup = new autoscaling.AutoScalingGroup(stack, 'ASG', { + minCapacity: 1, + maxCapacity: 100, + instanceType: new ec2.InstanceType('t-1000.macro'), + machineImage: new ec2.AmazonLinuxImage(), + vpc, + }); + new autoscaling.StepScalingAction(stack, 'Action', { + autoScalingGroup, + cooldown: cdk.Duration.days(1), + }); + + // THEN + expect(() => Template.fromStack(stack).hasResourceProperties('AWS::AutoScaling::ScalingPolicy', { + CoolDown: undefined, + })).toThrow(/Template has 1 resources with type AWS::AutoScaling::ScalingPolicy, but none match as expected/); + }); + test('step scaling', () => { // GIVEN const stack = new cdk.Stack(); diff --git a/packages/aws-cdk-lib/aws-cloudfront/README.md b/packages/aws-cdk-lib/aws-cloudfront/README.md index 673daa77f052d..965e3cbac7f69 100644 --- a/packages/aws-cdk-lib/aws-cloudfront/README.md +++ b/packages/aws-cdk-lib/aws-cloudfront/README.md @@ -539,7 +539,7 @@ Additionally, you can load the function's code from a file using the `FunctionCo If you set `autoPublish` to false, the function will not be automatically published to the LIVE stage when it’s created. -``ts +```ts new cloudfront.Function(this, 'Function', { code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'), runtime: cloudfront.FunctionRuntime.JS_2_0, diff --git a/packages/aws-cdk-lib/aws-codepipeline/README.md b/packages/aws-cdk-lib/aws-codepipeline/README.md index f08a8306c7be0..09a0b90bc1b6a 100644 --- a/packages/aws-cdk-lib/aws-codepipeline/README.md +++ b/packages/aws-cdk-lib/aws-codepipeline/README.md @@ -579,12 +579,17 @@ const rule = pipeline.notifyOnExecutionStateChange('NotifyOnExecutionStateChange ## Trigger -To trigger a pipeline with Git tags, specify the `triggers` property. When a Git tag is pushed, -your pipeline starts. You can filter with glob patterns. The `tagsExcludes` takes priority over -the `tagsIncludes`. - +To trigger a pipeline with Git tags or branches, specify the `triggers` property. The triggers can only be used with pipeline type V2. +### Push filter + +Pipelines can be started based on push events. You can specify the `pushFilter` property to +filter the push events. The `pushFilter` can specify Git tags. + +In the case of Git tags, your pipeline starts when a Git tag is pushed. +You can filter with glob patterns. The `tagsExcludes` takes priority over the `tagsIncludes`. + ```ts declare const sourceAction: codepipeline_actions.CodeStarConnectionsSourceAction; declare const buildAction: codepipeline_actions.CodeBuildAction; @@ -614,7 +619,115 @@ new codepipeline.Pipeline(this, 'Pipeline', { }); ``` -Or append a trigger to an existing pipeline: +### Pull request filter + +Pipelines can be started based on pull request events. You can specify the `pullRequestFilter` property to +filter the pull request events. The `pullRequestFilter` can specify branches, file paths, and event types. + +In the case of branches, your pipeline starts when a pull request event occurs on the specified branches. +You can filter with glob patterns. The `branchesExcludes` takes priority over the `branchesIncludes`. + +```ts +declare const sourceAction: codepipeline_actions.CodeStarConnectionsSourceAction; +declare const buildAction: codepipeline_actions.CodeBuildAction; + +new codepipeline.Pipeline(this, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + stages: [ + { + stageName: 'Source', + actions: [sourceAction], + }, + { + stageName: 'Build', + actions: [buildAction], + }, + ], + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include*'], + }], + }, + }], +}); +``` + +File paths can also be specified along with the branches to start the pipeline. +You can filter with glob patterns. The `filePathsExcludes` takes priority over the `filePathsIncludes`. + +```ts +declare const sourceAction: codepipeline_actions.CodeStarConnectionsSourceAction; +declare const buildAction: codepipeline_actions.CodeBuildAction; + +new codepipeline.Pipeline(this, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + stages: [ + { + stageName: 'Source', + actions: [sourceAction], + }, + { + stageName: 'Build', + actions: [buildAction], + }, + ], + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['/path/to/exclude1', '/path/to/exclude2'], + filePathsIncludes: ['/path/to/include1', '/path/to/include1'], + }], + }, + }], +}); +``` + +To filter types of pull request events for triggers, you can specify the `events` property. + +```ts +declare const sourceAction: codepipeline_actions.CodeStarConnectionsSourceAction; +declare const buildAction: codepipeline_actions.CodeBuildAction; + +new codepipeline.Pipeline(this, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + stages: [ + { + stageName: 'Source', + actions: [sourceAction], + }, + { + stageName: 'Build', + actions: [buildAction], + }, + ], + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + events: [ + codepipeline.GitPullRequestEvent.OPEN, + codepipeline.GitPullRequestEvent.CLOSED, + ], + }], + }, + }], +}); +``` + +### Append a trigger to an existing pipeline + +You can append a trigger to an existing pipeline: ```ts declare const pipeline: codepipeline.Pipeline; diff --git a/packages/aws-cdk-lib/aws-codepipeline/lib/trigger.ts b/packages/aws-cdk-lib/aws-codepipeline/lib/trigger.ts index 53909a4192b85..950eb2b3b04f2 100644 --- a/packages/aws-cdk-lib/aws-codepipeline/lib/trigger.ts +++ b/packages/aws-cdk-lib/aws-codepipeline/lib/trigger.ts @@ -32,6 +32,91 @@ export interface GitPushFilter { readonly tagsIncludes?: string[]; } +/** + * Git pull request filter for trigger. + */ +export interface GitPullRequestFilter { + /** + * The list of patterns of Git branches that, when pull request events occurs, are + * to be excluded from starting the pipeline. + * + * You can filter with glob patterns. The `branchesExcludes` takes priority + * over the `branchesIncludes`. + * + * Maximum length of this array is 8. + * + * @default - no branches. + */ + readonly branchesExcludes?: string[]; + + /** + * The list of patterns of Git branches that, when pull request events occurs, are + * to be included as criteria that starts the pipeline. + * + * You can filter with glob patterns. The `branchesExcludes` takes priority + * over the `branchesIncludes`. + * + * Maximum length of this array is 8. + * + * @default - no branches. + */ + readonly branchesIncludes?: string[]; + + /** + * The list of patterns of Git repository file paths that, when pull request events occurs, + * are to be excluded from starting the pipeline. + * + * You can filter with glob patterns. The `filePathsExcludes` takes priority + * over the `filePathsIncludes`. + * + * Maximum length of this array is 8. + * + * @default - no filePaths. + */ + readonly filePathsExcludes?: string[]; + + /** + * The list of patterns of Git repository file paths that, when pull request events occurs, + * are to be included as criteria that starts the pipeline. + * + * You can filter with glob patterns. The `filePathsExcludes` takes priority + * over the `filePathsIncludes`. + * + * Maximum length of this array is 8. + * + * @default - no filePaths. + */ + readonly filePathsIncludes?: string[]; + + /** + * The field that specifies which pull request events to filter on (opened, updated, closed) + * for the trigger configuration. + * + * @default - all events. + */ + readonly events?: GitPullRequestEvent[]; +} + +/** + * Event for trigger with pull request filter. + */ +export enum GitPullRequestEvent { + /** + * OPEN + */ + OPEN = 'OPEN', + + /** + * UPDATED + */ + UPDATED = 'UPDATED', + + /** + * CLOSED + */ + CLOSED = 'CLOSED', +} + /** * Git configuration for trigger. */ @@ -58,6 +143,16 @@ export interface GitConfiguration { * @default - no filter. */ readonly pushFilter?: GitPushFilter[]; + + /** + * The field where the repository event that will start the pipeline + * is specified as pull requests. + * + * The length must be less than or equal to 3. + * + * @default - no filter. + */ + readonly pullRequestFilter?: GitPullRequestFilter[]; } /** @@ -105,22 +200,49 @@ export class Trigger { private validate() { if (this.props.gitConfiguration) { - const sourceAction = this.props.gitConfiguration.sourceAction; + const { sourceAction, pushFilter, pullRequestFilter } = this.props.gitConfiguration; + if (sourceAction.actionProperties.provider !== 'CodeStarSourceConnection') { throw new Error(`provider for actionProperties in sourceAction with name '${sourceAction.actionProperties.actionName}' must be 'CodeStarSourceConnection', got '${sourceAction.actionProperties.provider}'`); } - const pushFilter = this.props.gitConfiguration.pushFilter; + if (pushFilter?.length && pullRequestFilter?.length) { + throw new Error(`cannot specify both pushFilter and pullRequestFilter for the trigger with sourceAction with name '${sourceAction.actionProperties.actionName}'`); + } + if (!pushFilter?.length && !pullRequestFilter?.length) { + throw new Error(`must specify either pushFilter or pullRequestFilter for the trigger with sourceAction with name '${sourceAction.actionProperties.actionName}'`); + } + if (pushFilter !== undefined && pushFilter.length > 3) { throw new Error(`length of pushFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' must be less than or equal to 3, got ${pushFilter.length}`); } - pushFilter?.forEach(filter => { if (filter.tagsExcludes && filter.tagsExcludes.length > 8) { - throw new Error(`maximum length of tagsExcludes for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.tagsExcludes.length}`); + throw new Error(`maximum length of tagsExcludes in pushFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.tagsExcludes.length}`); } if (filter.tagsIncludes && filter.tagsIncludes.length > 8) { - throw new Error(`maximum length of tagsIncludes for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.tagsIncludes.length}`); + throw new Error(`maximum length of tagsIncludes in pushFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.tagsIncludes.length}`); + } + }); + + if (pullRequestFilter !== undefined && pullRequestFilter.length > 3) { + throw new Error(`length of pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' must be less than or equal to 3, got ${pullRequestFilter.length}`); + } + pullRequestFilter?.forEach(filter => { + if (!filter.branchesExcludes && !filter.branchesIncludes) { + throw new Error(`must specify branches in pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}'`); + } + if (filter.branchesExcludes && filter.branchesExcludes.length > 8) { + throw new Error(`maximum length of branchesExcludes in pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.branchesExcludes.length}`); + } + if (filter.branchesIncludes && filter.branchesIncludes.length > 8) { + throw new Error(`maximum length of branchesIncludes in pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.branchesIncludes.length}`); + } + if (filter.filePathsExcludes && filter.filePathsExcludes.length > 8) { + throw new Error(`maximum length of filePathsExcludes in pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.filePathsExcludes.length}`); + } + if (filter.filePathsIncludes && filter.filePathsIncludes.length > 8) { + throw new Error(`maximum length of filePathsIncludes in pullRequestFilter for sourceAction with name '${sourceAction.actionProperties.actionName}' is 8, got ${filter.filePathsIncludes.length}`); } }); } @@ -134,21 +256,16 @@ export class Trigger { public _render(): CfnPipeline.PipelineTriggerDeclarationProperty { let gitConfiguration: CfnPipeline.GitConfigurationProperty | undefined; if (this.props.gitConfiguration) { - const sourceAction = this.props.gitConfiguration.sourceAction; - const pushFilter = this.props.gitConfiguration.pushFilter; + const { sourceAction, pushFilter, pullRequestFilter } = this.props.gitConfiguration; - const push: CfnPipeline.GitPushFilterProperty[] | undefined = pushFilter?.map(filter => { - const tags: CfnPipeline.GitTagFilterCriteriaProperty | undefined = { - // set to undefined if empty array because CloudFormation does not accept empty array - excludes: filter.tagsExcludes?.length ? filter.tagsExcludes : undefined, - includes: filter.tagsIncludes?.length ? filter.tagsIncludes : undefined, - }; - return { tags }; - }); + const push = this.renderPushFilter(pushFilter); + const pullRequest = this.renderPullRequestFilter(pullRequestFilter); gitConfiguration = { // set to undefined if empty array because CloudFormation does not accept empty array push: push?.length ? push : undefined, + // set to undefined if empty array because CloudFormation does not accept empty array + pullRequest: pullRequest?.length ? pullRequest : undefined, sourceActionName: sourceAction.actionProperties.actionName, }; } @@ -158,4 +275,39 @@ export class Trigger { providerType: this.props.providerType, }; } + + private renderPushFilter(pushFilter?: GitPushFilter[]): CfnPipeline.GitPushFilterProperty[] | undefined { + return pushFilter?.map(filter => { + const tags: CfnPipeline.GitTagFilterCriteriaProperty | undefined = { + // set to undefined if empty array because CloudFormation does not accept empty array + excludes: filter.tagsExcludes?.length ? filter.tagsExcludes : undefined, + includes: filter.tagsIncludes?.length ? filter.tagsIncludes : undefined, + }; + return { tags }; + }); + } + + private renderPullRequestFilter(pullRequest?: GitPullRequestFilter[]): CfnPipeline.GitPullRequestFilterProperty[] | undefined { + return pullRequest?.map(filter => { + const branches: CfnPipeline.GitBranchFilterCriteriaProperty | undefined = + filter.branchesExcludes?.length || filter.branchesIncludes?.length ? { + // set to undefined if empty array because CloudFormation does not accept empty array + excludes: filter.branchesExcludes?.length ? filter.branchesExcludes : undefined, + includes: filter.branchesIncludes?.length ? filter.branchesIncludes : undefined, + } : undefined; + const filePaths: CfnPipeline.GitFilePathFilterCriteriaProperty | undefined = + filter.filePathsExcludes?.length || filter.filePathsIncludes?.length ? { + // set to undefined if empty array because CloudFormation does not accept empty array + excludes: filter.filePathsExcludes?.length ? filter.filePathsExcludes : undefined, + includes: filter.filePathsIncludes?.length ? filter.filePathsIncludes : undefined, + } : undefined; + // set to all events if empty array or undefined because CloudFormation does not accept empty array and undefined + const events: string[] = filter.events?.length ? Array.from(new Set(filter.events)) : [ + GitPullRequestEvent.OPEN, + GitPullRequestEvent.UPDATED, + GitPullRequestEvent.CLOSED, + ]; + return { branches, filePaths, events }; + }); + } } \ No newline at end of file diff --git a/packages/aws-cdk-lib/aws-codepipeline/test/triggers.test.ts b/packages/aws-cdk-lib/aws-codepipeline/test/triggers.test.ts index 6c9048ddede4d..0e186ea40b41a 100644 --- a/packages/aws-cdk-lib/aws-codepipeline/test/triggers.test.ts +++ b/packages/aws-cdk-lib/aws-codepipeline/test/triggers.test.ts @@ -28,7 +28,7 @@ describe('triggers', () => { }); }); - test('can specify triggers', () => { + test('can specify triggers with tags in pushFilter', () => { const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { pipelineType: codepipeline.PipelineType.V2, triggers: [{ @@ -62,6 +62,120 @@ describe('triggers', () => { }); }); + test('can specify triggers with branches in pullRequestFilter', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('can specify triggers with branches and file paths in pullRequestFilter', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['exclude1', 'exclude2'], + filePathsIncludes: ['include1', 'include2'], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + FilePaths: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('can specify triggers with branches and events in pullRequestFilter', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + events: [ + codepipeline.GitPullRequestEvent.OPEN, + codepipeline.GitPullRequestEvent.UPDATED, + codepipeline.GitPullRequestEvent.CLOSED, + ], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + Events: ['OPEN', 'UPDATED', 'CLOSED'], + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + test('can specify multiple triggers', () => { const sourceArtifact2 = new codepipeline.Artifact(); const sourceAction2 = new CodeStarConnectionsSourceAction({ @@ -164,7 +278,7 @@ describe('triggers', () => { }); }); - test('empty tagsExcludes for trigger is set to undefined', () => { + test('empty tagsExcludes in pushFilter for trigger is set to undefined', () => { const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { pipelineType: codepipeline.PipelineType.V2, triggers: [{ @@ -198,7 +312,7 @@ describe('triggers', () => { }); }); - test('empty tagsIncludes for trigger is set to undefined', () => { + test('empty tagsIncludes in pushFilter for trigger is set to undefined', () => { const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { pipelineType: codepipeline.PipelineType.V2, triggers: [{ @@ -232,7 +346,226 @@ describe('triggers', () => { }); }); - test('throw if length of excludes is greater than 8', () => { + test('empty branchesExcludes in pullRequestFilter for trigger is set to undefined', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: [], + branchesIncludes: ['include1', 'include2'], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: Match.absent(), + Includes: ['include1', 'include2'], + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('empty branchesIncludes in pullRequestFilter for trigger is set to undefined', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['excluded1', 'excluded2'], + branchesIncludes: [], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['excluded1', 'excluded2'], + Includes: Match.absent(), + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('empty filePathsExcludes in pullRequestFilter for trigger is set to undefined', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: [], + filePathsIncludes: ['include1', 'include2'], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + FilePaths: { + Excludes: Match.absent(), + Includes: ['include1', 'include2'], + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('empty filePathsIncludes in pullRequestFilter for trigger is set to undefined', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['exclude1', 'exclude2'], + filePathsIncludes: [], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + FilePaths: { + Excludes: ['exclude1', 'exclude2'], + Includes: Match.absent(), + }, + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('undefined events in pullRequestFilter for trigger is set to all events', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + Events: ['OPEN', 'UPDATED', 'CLOSED'], + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('empty events in pullRequestFilter for trigger is set to all events', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + events: [], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + Events: ['OPEN', 'UPDATED', 'CLOSED'], + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + + test('throw if length of tagsExcludes in pushFilter is greater than 8', () => { expect(() => { new codepipeline.Pipeline(stack, 'Pipeline', { pipelineType: codepipeline.PipelineType.V2, @@ -247,10 +580,10 @@ describe('triggers', () => { }, }], }); - }).toThrow(/maximum length of tagsExcludes for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }).toThrow(/maximum length of tagsExcludes in pushFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); }); - test('throw if length of excludes is greater than 8', () => { + test('throw if length of tagsIncludes in pushFilter is greater than 8', () => { expect(() => { new codepipeline.Pipeline(stack, 'Pipeline', { pipelineType: codepipeline.PipelineType.V2, @@ -265,7 +598,138 @@ describe('triggers', () => { }, }], }); - }).toThrow(/maximum length of tagsIncludes for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }).toThrow(/maximum length of tagsIncludes in pushFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }); + + test('throw if length of branchesExcludes in pullRequestFilter is greater than 8', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2', 'exclude3', 'exclude4', 'exclude5', 'exclude6', 'exclude7', 'exclude8', 'exclude9'], + branchesIncludes: ['include1', 'include2'], + }], + }, + }], + }); + }).toThrow(/maximum length of branchesExcludes in pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }); + + test('throw if length of branchesIncludes in pullRequestFilter is greater than 8', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2', 'include3', 'include4', 'include5', 'include6', 'include7', 'include8', 'include9'], + }], + }, + }], + }); + }).toThrow(/maximum length of branchesIncludes in pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }); + + test('throw if length of filePathsExcludes in pullRequestFilter is greater than 8', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['exclude1', 'exclude2', 'exclude3', 'exclude4', 'exclude5', 'exclude6', 'exclude7', 'exclude8', 'exclude9'], + filePathsIncludes: ['include1', 'include2'], + }], + }, + }], + }); + }).toThrow(/maximum length of filePathsExcludes in pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }); + + test('throw if length of filePathsIncludes in pullRequestFilter is greater than 8', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + filePathsExcludes: ['exclude1', 'exclude2'], + filePathsIncludes: ['include1', 'include2', 'include3', 'include4', 'include5', 'include6', 'include7', 'include8', 'include9'], + }], + }, + }], + }); + }).toThrow(/maximum length of filePathsIncludes in pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction' is 8, got 9/); + }); + + test('throw if branches is not specified in pullRequestFilter', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{}], + }, + }], + }); + }).toThrow(/must specify branches in pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction'/); + }); + + test('can eliminate duplicates events in pullRequestFilter', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [{ + branchesExcludes: ['exclude1', 'exclude2'], + branchesIncludes: ['include1', 'include2'], + events: [ + codepipeline.GitPullRequestEvent.OPEN, + codepipeline.GitPullRequestEvent.OPEN, + codepipeline.GitPullRequestEvent.CLOSED, + ], + }], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: [{ + Branches: { + Excludes: ['exclude1', 'exclude2'], + Includes: ['include1', 'include2'], + }, + Events: ['OPEN', 'CLOSED'], + }], + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); }); test('empty pushFilter for trigger is set to undefined', () => { @@ -276,6 +740,11 @@ describe('triggers', () => { gitConfiguration: { sourceAction, pushFilter: [], + pullRequestFilter: [ + { + branchesExcludes: ['exclude1'], + }, + ], }, }], }); @@ -294,6 +763,37 @@ describe('triggers', () => { }); }); + test('empty pullRequestFilter for trigger is set to undefined', () => { + const pipeline = new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pushFilter: [ + { + tagsExcludes: ['exclude1'], + }, + ], + pullRequestFilter: [], + }, + }], + }); + + testPipelineSetup(pipeline, [sourceAction], [buildAction]); + + Template.fromStack(stack).hasResourceProperties('AWS::CodePipeline::Pipeline', { + PipelineType: 'V2', + Triggers: [{ + GitConfiguration: { + SourceActionName: 'CodeStarConnectionsSourceAction', + PullRequest: Match.absent(), + }, + ProviderType: 'CodeStarSourceConnection', + }], + }); + }); + test('throw if length of pushFilter is greater than 3', () => { expect(() => { new codepipeline.Pipeline(stack, 'Pipeline', { @@ -326,6 +826,94 @@ describe('triggers', () => { }).toThrow(/length of pushFilter for sourceAction with name 'CodeStarConnectionsSourceAction' must be less than or equal to 3, got 4/);; }); + test('throw if length of pullRequestFilter is greater than 3', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pullRequestFilter: [ + { + branchesExcludes: ['exclude1'], + branchesIncludes: ['include1'], + }, + { + branchesExcludes: ['exclude2'], + branchesIncludes: ['include2'], + }, + { + branchesExcludes: ['exclude3'], + branchesIncludes: ['include3'], + }, + { + branchesExcludes: ['exclude4'], + branchesIncludes: ['include4'], + }, + ], + }, + }], + }); + }).toThrow(/length of pullRequestFilter for sourceAction with name 'CodeStarConnectionsSourceAction' must be less than or equal to 3, got 4/);; + }); + + test('throw if both pushFilter and pullRequestFilter are specified', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pushFilter: [ + { + tagsExcludes: ['exclude1'], + tagsIncludes: ['include1'], + }, + ], + pullRequestFilter: [ + { + branchesExcludes: ['exclude1'], + branchesIncludes: ['include1'], + }, + ], + }, + }], + }); + }).toThrow(/cannot specify both pushFilter and pullRequestFilter for the trigger with sourceAction with name 'CodeStarConnectionsSourceAction'/);; + }); + + test('throw if neither pushFilter nor pullRequestFilter are specified', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + }, + }], + }); + }).toThrow(/must specify either pushFilter or pullRequestFilter for the trigger with sourceAction with name 'CodeStarConnectionsSourceAction'/);; + }); + + test('throw if both pushFilter and pullRequestFilter are empty arrays', () => { + expect(() => { + new codepipeline.Pipeline(stack, 'Pipeline', { + pipelineType: codepipeline.PipelineType.V2, + triggers: [{ + providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, + gitConfiguration: { + sourceAction, + pushFilter: [], + pullRequestFilter: [], + }, + }], + }); + }).toThrow(/must specify either pushFilter or pullRequestFilter for the trigger with sourceAction with name 'CodeStarConnectionsSourceAction'/);; + }); + test('throw if provider of sourceAction is not \'CodeStarSourceConnection\'', () => { const fakeAction = new FakeSourceAction({ actionName: 'FakeSource', @@ -367,6 +955,10 @@ describe('triggers', () => { providerType: codepipeline.ProviderType.CODE_STAR_SOURCE_CONNECTION, gitConfiguration: { sourceAction, + pushFilter: [{ + tagsExcludes: ['exclude1', 'exclude2'], + tagsIncludes: ['include1', 'include2'], + }], }, }); }).toThrow(/Trigger with duplicate source action 'CodeStarConnectionsSourceAction' added to the Pipeline/); diff --git a/packages/aws-cdk-lib/aws-docdb/README.md b/packages/aws-cdk-lib/aws-docdb/README.md index abff67dd579d1..ecde57b120695 100644 --- a/packages/aws-cdk-lib/aws-docdb/README.md +++ b/packages/aws-cdk-lib/aws-docdb/README.md @@ -20,6 +20,7 @@ const cluster = new docdb.DatabaseCluster(this, 'Database', { subnetType: ec2.SubnetType.PUBLIC, }, vpc, + copyTagsToSnapshot: true // whether to save the cluster tags when creating the snapshot. }); ``` @@ -238,3 +239,23 @@ const cluster = new docdb.DatabaseCluster(this, 'Database', { securityGroupRemovalPolicy: RemovalPolicy.RETAIN, }); ``` + +## CA certificate + +Use the `caCertificate` property to specify the [CA certificate](https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html) to use for all instances inside the cluster: + +```ts +declare const vpc: ec2.Vpc; + +const cluster = new docdb.DatabaseCluster(this, 'Database', { + masterUser: { + username: 'myuser', + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.MEMORY5, ec2.InstanceSize.LARGE), + vpcSubnets: { + subnetType: ec2.SubnetType.PUBLIC, + }, + vpc, + caCertificate: docdb.CaCertificate.RDS_CA_RSA4096_G1, // CA certificate for all instances under this cluster +}); +``` diff --git a/packages/aws-cdk-lib/aws-docdb/lib/cluster.ts b/packages/aws-cdk-lib/aws-docdb/lib/cluster.ts index 74cf7f0aec8e2..f6485143614da 100644 --- a/packages/aws-cdk-lib/aws-docdb/lib/cluster.ts +++ b/packages/aws-cdk-lib/aws-docdb/lib/cluster.ts @@ -9,6 +9,7 @@ import * as ec2 from '../../aws-ec2'; import { IRole } from '../../aws-iam'; import * as kms from '../../aws-kms'; import * as logs from '../../aws-logs'; +import { CaCertificate } from '../../aws-rds'; import * as secretsmanager from '../../aws-secretsmanager'; import { CfnResource, Duration, RemovalPolicy, Resource, Token } from '../../core'; @@ -88,6 +89,17 @@ export interface DatabaseClusterProps { */ readonly instanceType: ec2.InstanceType; + /** + * The identifier of the CA certificate used for the instances. + * + * Specifying or updating this property triggers a reboot. + * + * @see https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html + * + * @default - DocumentDB will choose a certificate authority + */ + readonly caCertificate?: CaCertificate; + /** * What subnets to run the DocumentDB instances in. * @@ -217,6 +229,13 @@ export interface DatabaseClusterProps { * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html */ readonly securityGroupRemovalPolicy?: RemovalPolicy; + + /** + * Whether to copy tags to the snapshot when a snapshot is created. + * + * @default - false + */ + readonly copyTagsToSnapshot?: boolean; } /** @@ -507,6 +526,8 @@ export class DatabaseCluster extends DatabaseClusterBase { // Encryption kmsKeyId: props.kmsKey?.keyArn, storageEncrypted, + // Tags + copyTagsToSnapshot: props.copyTagsToSnapshot, }); this.cluster.applyRemovalPolicy(props.removalPolicy, { @@ -533,6 +554,7 @@ export class DatabaseCluster extends DatabaseClusterBase { } const instanceRemovalPolicy = this.getInstanceRemovalPolicy(props); + const caCertificateIdentifier = props.caCertificate ? props.caCertificate.toString() : undefined; for (let i = 0; i < instanceCount; i++) { const instanceIndex = i + 1; @@ -547,6 +569,7 @@ export class DatabaseCluster extends DatabaseClusterBase { // Instance properties dbInstanceClass: databaseInstanceType(props.instanceType), enablePerformanceInsights: props.enablePerformanceInsights, + caCertificateIdentifier: caCertificateIdentifier, }); instance.applyRemovalPolicy(instanceRemovalPolicy, { diff --git a/packages/aws-cdk-lib/aws-docdb/lib/index.ts b/packages/aws-cdk-lib/aws-docdb/lib/index.ts index 1bfcc3716caaf..5687f81e44c98 100644 --- a/packages/aws-cdk-lib/aws-docdb/lib/index.ts +++ b/packages/aws-cdk-lib/aws-docdb/lib/index.ts @@ -6,5 +6,7 @@ export * from './instance'; export * from './parameter-group'; export * from './props'; +export { CaCertificate } from '../../aws-rds'; + // AWS::DocDB CloudFormation Resources: -export * from './docdb.generated'; \ No newline at end of file +export * from './docdb.generated'; diff --git a/packages/aws-cdk-lib/aws-docdb/lib/instance.ts b/packages/aws-cdk-lib/aws-docdb/lib/instance.ts index ecdb2955eb975..d81d7a574863e 100644 --- a/packages/aws-cdk-lib/aws-docdb/lib/instance.ts +++ b/packages/aws-cdk-lib/aws-docdb/lib/instance.ts @@ -3,6 +3,7 @@ import { IDatabaseCluster } from './cluster-ref'; import { CfnDBInstance } from './docdb.generated'; import { Endpoint } from './endpoint'; import * as ec2 from '../../aws-ec2'; +import { CaCertificate } from '../../aws-rds'; import { ArnFormat } from '../../core'; import * as cdk from '../../core'; @@ -172,6 +173,17 @@ export interface DatabaseInstanceProps { * @default - false */ readonly enablePerformanceInsights?: boolean; + + /** + * The identifier of the CA certificate for this DB instance. + * + * Specifying or updating this property triggers a reboot. + * + * @see https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html + * + * @default - DocumentDB will choose a certificate authority + */ + readonly caCertificate?: CaCertificate; } /** @@ -213,6 +225,7 @@ export class DatabaseInstance extends DatabaseInstanceBase implements IDatabaseI dbInstanceClass: `db.${props.instanceType}`, autoMinorVersionUpgrade: props.autoMinorVersionUpgrade ?? true, availabilityZone: props.availabilityZone, + caCertificateIdentifier: props.caCertificate ? props.caCertificate.toString() : undefined, dbInstanceIdentifier: props.dbInstanceName, preferredMaintenanceWindow: props.preferredMaintenanceWindow, enablePerformanceInsights: props.enablePerformanceInsights, diff --git a/packages/aws-cdk-lib/aws-docdb/test/cluster.test.ts b/packages/aws-cdk-lib/aws-docdb/test/cluster.test.ts index f28f335d5c0e2..3c5139140b541 100644 --- a/packages/aws-cdk-lib/aws-docdb/test/cluster.test.ts +++ b/packages/aws-cdk-lib/aws-docdb/test/cluster.test.ts @@ -3,7 +3,7 @@ import * as ec2 from '../../aws-ec2'; import * as kms from '../../aws-kms'; import * as logs from '../../aws-logs'; import * as cdk from '../../core'; -import { ClusterParameterGroup, DatabaseCluster, DatabaseSecret } from '../lib'; +import { ClusterParameterGroup, DatabaseCluster, DatabaseSecret, CaCertificate } from '../lib'; describe('DatabaseCluster', () => { test('check that instantiation works', () => { @@ -73,6 +73,30 @@ describe('DatabaseCluster', () => { }); }); + test('can specify instance CA certificate', () => { + // GIVEN + const stack = testStack(); + const vpc = new ec2.Vpc(stack, 'VPC'); + + // WHEN + new DatabaseCluster(stack, 'Database', { + instances: 1, + masterUser: { + username: 'admin', + password: cdk.SecretValue.unsafePlainText('tooshort'), + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.SMALL), + caCertificate: CaCertificate.RDS_CA_RSA4096_G1, + vpc, + }); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::DocDB::DBInstance', { + DBClusterIdentifier: { Ref: 'DatabaseB269D8BB' }, + CACertificateIdentifier: 'rds-ca-rsa4096-g1', + }); + }); + test('errors when less than one instance is specified', () => { // GIVEN const stack = testStack(); @@ -1114,6 +1138,48 @@ describe('DatabaseCluster', () => { }); }).toThrow(/AWS::EC2::SecurityGroup does not support the SNAPSHOT removal policy/); }); + + test('cluster with copyTagsToSnapshot default', () => { + // GIVEN + const stack = testStack(); + const vpc = new ec2.Vpc(stack, 'VPC'); + + // WHEN + new DatabaseCluster(stack, 'Database', { + masterUser: { + username: 'admin', + password: cdk.SecretValue.unsafePlainText('tooshort'), + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.SMALL), + vpc, + }); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::DocDB::DBCluster', { + CopyTagsToSnapshot: Match.absent(), + }); + }); + + test.each([false, true])('cluster with copyTagsToSnapshot set', (value) => { + const stack = testStack(); + const vpc = new ec2.Vpc(stack, 'VPC'); + + // WHEN + new DatabaseCluster(stack, 'Database', { + masterUser: { + username: 'admin', + password: cdk.SecretValue.unsafePlainText('tooshort'), + }, + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.SMALL), + vpc, + copyTagsToSnapshot: value, + }); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::DocDB::DBCluster', { + CopyTagsToSnapshot: value, + }); + }); }); function testStack() { diff --git a/packages/aws-cdk-lib/aws-docdb/test/instance.test.ts b/packages/aws-cdk-lib/aws-docdb/test/instance.test.ts index dc974da0e112e..320fe71e9d8ac 100644 --- a/packages/aws-cdk-lib/aws-docdb/test/instance.test.ts +++ b/packages/aws-cdk-lib/aws-docdb/test/instance.test.ts @@ -2,7 +2,7 @@ import * as constructs from 'constructs'; import { Template } from '../../assertions'; import * as ec2 from '../../aws-ec2'; import * as cdk from '../../core'; -import { DatabaseCluster, DatabaseInstance } from '../lib'; +import { CaCertificate, DatabaseCluster, DatabaseInstance } from '../lib'; const CLUSTER_INSTANCE_TYPE = ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE); const SINGLE_INSTANCE_TYPE = ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.XLARGE); @@ -58,6 +58,27 @@ describe('DatabaseInstance', () => { }); }); + test('check that CA certificate identifier works', () => { + // GIVEN + const stack = testStack(); + + // WHEN + new DatabaseInstance(stack, 'Instance', { + cluster: stack.cluster, + instanceType: SINGLE_INSTANCE_TYPE, + caCertificate: CaCertificate.RDS_CA_RSA4096_G1, + }); + + // THEN + Template.fromStack(stack).hasResource('AWS::DocDB::DBInstance', { + Properties: { + DBClusterIdentifier: { Ref: 'DatabaseB269D8BB' }, + DBInstanceClass: EXPECTED_SYNTH_INSTANCE_TYPE, + CACertificateIdentifier: 'rds-ca-rsa4096-g1', + }, + }); + }); + test('check that the endpoint works', () => { // GIVEN const stack = testStack(); diff --git a/packages/aws-cdk-lib/aws-ecs/README.md b/packages/aws-cdk-lib/aws-ecs/README.md index 3dcad8549d0a0..f0669e3adcc66 100644 --- a/packages/aws-cdk-lib/aws-ecs/README.md +++ b/packages/aws-cdk-lib/aws-ecs/README.md @@ -372,12 +372,13 @@ const fargateTaskDefinition = new ecs.FargateTaskDefinition(this, 'TaskDef', { }, memoryLimitMiB: 512, cpu: 256, - pidMode: ecs.PidMode.HOST, + pidMode: ecs.PidMode.TASK, }); ``` **Note:** `pidMode` is only supported for tasks that are hosted on AWS Fargate if the tasks are using platform version 1.4.0 -or later (Linux). This isn't supported for Windows containers on Fargate. +or later (Linux). Only the `task` option is supported for Linux containers. `pidMode` isn't supported for Windows containers on Fargate. +If `pidMode` is specified for a Fargate task, then `runtimePlatform.operatingSystemFamily` must also be specified. To add containers to a task definition, call `addContainer()`: diff --git a/packages/aws-cdk-lib/aws-ecs/lib/base/task-definition.ts b/packages/aws-cdk-lib/aws-ecs/lib/base/task-definition.ts index c079f1aae02a3..7ab075ae777ce 100644 --- a/packages/aws-cdk-lib/aws-ecs/lib/base/task-definition.ts +++ b/packages/aws-cdk-lib/aws-ecs/lib/base/task-definition.ts @@ -194,8 +194,11 @@ export interface TaskDefinitionProps extends CommonTaskDefinitionProps { * The process namespace to use for the containers in the task. * * Only supported for tasks that are hosted on AWS Fargate if the tasks - * are using platform version 1.4.0 or later (Linux). - * Not supported in Windows containers. + * are using platform version 1.4.0 or later (Linux). Only the TASK option + * is supported for Linux-based Fargate containers. Not supported in Windows + * containers. If pidMode is specified for a Fargate task, then + * runtimePlatform.operatingSystemFamily must also be specified. For more + * information, see [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_pidmode). * * @default - PidMode used by the task is not specified */ @@ -378,8 +381,10 @@ export class TaskDefinition extends TaskDefinitionBase { * The process namespace to use for the containers in the task. * * Only supported for tasks that are hosted on AWS Fargate if the tasks - * are using platform version 1.4.0 or later (Linux). - * Not supported in Windows containers. + * are using platform version 1.4.0 or later (Linux). Not supported in + * Windows containers. If pidMode is specified for a Fargate task, + * then runtimePlatform.operatingSystemFamily must also be specified. For more + * information, see [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_pidmode). */ public readonly pidMode?: PidMode; diff --git a/packages/aws-cdk-lib/aws-ecs/lib/fargate/fargate-task-definition.ts b/packages/aws-cdk-lib/aws-ecs/lib/fargate/fargate-task-definition.ts index 34d0bed643aa2..e6bc7876daa04 100644 --- a/packages/aws-cdk-lib/aws-ecs/lib/fargate/fargate-task-definition.ts +++ b/packages/aws-cdk-lib/aws-ecs/lib/fargate/fargate-task-definition.ts @@ -83,8 +83,11 @@ export interface FargateTaskDefinitionProps extends CommonTaskDefinitionProps { * The process namespace to use for the containers in the task. * * Only supported for tasks that are hosted on AWS Fargate if the tasks - * are using platform version 1.4.0 or later (Linux). - * Not supported in Windows containers. + * are using platform version 1.4.0 or later (Linux). Only the TASK option + * is supported for Linux-based Fargate containers. Not supported in + * Windows containers. If pidMode is specified for a Fargate task, then + * runtimePlatform.operatingSystemFamily must also be specified. For more + * information, see [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_pidmode). * * @default - PidMode used by the task is not specified */ @@ -168,11 +171,16 @@ export class FargateTaskDefinition extends TaskDefinition implements IFargateTas } if (props.pidMode) { + if (!props.runtimePlatform?.operatingSystemFamily) { + throw new Error('Specifying \'pidMode\' requires that operating system family also be provided.'); + } if (props.runtimePlatform?.operatingSystemFamily?.isWindows()) { throw new Error('\'pidMode\' is not supported for Windows containers.'); } - if (!Token.isUnresolved(props.pidMode) && props.pidMode !== PidMode.HOST) { - throw new Error(`\'pidMode\' can only be set to \'${PidMode.HOST}\' for Fargate containers, got: \'${props.pidMode}\'.`); + if (!Token.isUnresolved(props.pidMode) + && props.runtimePlatform?.operatingSystemFamily?.isLinux() + && props.pidMode !== PidMode.TASK) { + throw new Error(`\'pidMode\' can only be set to \'${PidMode.TASK}\' for Linux Fargate containers, got: \'${props.pidMode}\'.`); } } diff --git a/packages/aws-cdk-lib/aws-ecs/lib/runtime-platform.ts b/packages/aws-cdk-lib/aws-ecs/lib/runtime-platform.ts index 250e64a1f9ca4..e5fb42f475d08 100644 --- a/packages/aws-cdk-lib/aws-ecs/lib/runtime-platform.ts +++ b/packages/aws-cdk-lib/aws-ecs/lib/runtime-platform.ts @@ -90,10 +90,17 @@ export class OperatingSystemFamily { private constructor(public readonly _operatingSystemFamily: string) { } /** - * Returns true if the operating system family is Windows + * Indicates whether the operating system family is Windows */ public isWindows(): boolean { - return this._operatingSystemFamily?.toLowerCase().startsWith('windows') ? true : false; + return this._operatingSystemFamily?.toLowerCase().startsWith('windows'); + } + + /** + * Indicates whether the operating system family is Linux + */ + public isLinux(): boolean { + return this._operatingSystemFamily?.toLowerCase().startsWith('linux'); } } diff --git a/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-service.test.ts b/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-service.test.ts index 0ecd027501019..1775d5ed2eb6e 100644 --- a/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-service.test.ts +++ b/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-service.test.ts @@ -758,7 +758,7 @@ describe('fargate service', () => { }, memoryLimitMiB: 512, cpu: 256, - pidMode: ecs.PidMode.HOST, + pidMode: ecs.PidMode.TASK, }); // WHEN diff --git a/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-task-definition.test.ts b/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-task-definition.test.ts index def9ba61aaea8..be93c76e2b65e 100644 --- a/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-task-definition.test.ts +++ b/packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-task-definition.test.ts @@ -60,7 +60,7 @@ describe('fargate task definition', () => { cpuArchitecture: ecs.CpuArchitecture.X86_64, operatingSystemFamily: ecs.OperatingSystemFamily.LINUX, }, - pidMode: ecs.PidMode.HOST, + pidMode: ecs.PidMode.TASK, }); taskDefinition.addVolume({ @@ -85,7 +85,7 @@ describe('fargate task definition', () => { Family: 'myApp', Memory: '1024', NetworkMode: 'awsvpc', - PidMode: 'host', + PidMode: 'task', RequiresCompatibilities: [ ecs.LaunchType.FARGATE, ], @@ -164,6 +164,24 @@ describe('fargate task definition', () => { // THEN }); + test('throws when pidMode is specified without an operating system family', () => { + // GIVEN + const stack = new cdk.Stack(); + + // WHEN + // THEN + expect(() => { + new ecs.FargateTaskDefinition(stack, 'FargateTaskDef', { + pidMode: ecs.PidMode.TASK, + runtimePlatform: { + cpuArchitecture: ecs.CpuArchitecture.X86_64, + }, + cpu: 1024, + memoryLimitMiB: 2048, + }); + }).toThrow(/Specifying 'pidMode' requires that operating system family also be provided./); + }); + test('throws when pidMode is specified on Windows', () => { // GIVEN const stack = new cdk.Stack(); @@ -172,7 +190,7 @@ describe('fargate task definition', () => { // THEN expect(() => { new ecs.FargateTaskDefinition(stack, 'FargateTaskDef', { - pidMode: ecs.PidMode.HOST, + pidMode: ecs.PidMode.TASK, runtimePlatform: { operatingSystemFamily: ecs.OperatingSystemFamily.WINDOWS_SERVER_2019_CORE, cpuArchitecture: ecs.CpuArchitecture.X86_64, @@ -183,7 +201,7 @@ describe('fargate task definition', () => { }).toThrow(/'pidMode' is not supported for Windows containers./); }); - test('throws when pidMode is not host', () => { + test('throws when pidMode is not task', () => { // GIVEN const stack = new cdk.Stack(); @@ -191,9 +209,12 @@ describe('fargate task definition', () => { // THEN expect(() => { new ecs.FargateTaskDefinition(stack, 'FargateTaskDef', { - pidMode: ecs.PidMode.TASK, + pidMode: ecs.PidMode.HOST, + runtimePlatform: { + operatingSystemFamily: ecs.OperatingSystemFamily.LINUX, + }, }); - }).toThrow(/'pidMode' can only be set to 'host' for Fargate containers, got: 'task'./); + }).toThrow(/'pidMode' can only be set to 'task' for Linux Fargate containers, got: 'host'./); }); }); describe('When configuredAtLaunch in the Volume', ()=> { diff --git a/packages/aws-cdk-lib/aws-events-targets/README.md b/packages/aws-cdk-lib/aws-events-targets/README.md index 45e956687b750..310e7ea65e180 100644 --- a/packages/aws-cdk-lib/aws-events-targets/README.md +++ b/packages/aws-cdk-lib/aws-events-targets/README.md @@ -1,6 +1,5 @@ # Event Targets for Amazon EventBridge - This library contains integration classes to send Amazon EventBridge to any number of supported AWS Services. Instances of these classes should be passed to the `rule.addTarget()` method. @@ -17,6 +16,7 @@ Currently supported are: - [Queue a Batch job](#queue-a-batch-job) - [Invoke an API Gateway REST API](#invoke-an-api-gateway-rest-api) - [Invoke an API Destination](#invoke-an-api-destination) + - [Invoke an AppSync GraphQL API](#invoke-an-appsync-graphql-api) - [Put an event on an EventBridge bus](#put-an-event-on-an-eventbridge-bus) - [Run an ECS Task](#run-an-ecs-task) - [Tagging Tasks](#tagging-tasks) @@ -367,6 +367,65 @@ const rule = new events.Rule(this, 'OtherRule', { }); ``` +## Invoke an AppSync GraphQL API + +Use the `AppSync` target to trigger an AppSync GraphQL API. You need to +create an `AppSync.GraphqlApi` configured with `AWS_IAM` authorization mode. + +The code snippet below creates an AppSync GraphQL API target that is invoked every hour, calling the `publish` mutation. + +```ts +import * as appsync from 'aws-cdk-lib/aws-appsync'; + +const api = new appsync.GraphqlApi(this, 'api', { + name: 'api', + definition: appsync.Definition.fromFile('schema.graphql'), + authorizationConfig: { + defaultAuthorization: { authorizationType: appsync.AuthorizationType.IAM } + }, +}); + +const rule = new events.Rule(this, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.hours(1)), +}); + +rule.addTarget(new targets.AppSync(api, { + graphQLOperation: 'mutation Publish($message: String!){ publish(message: $message) { message } }', + variables: events.RuleTargetInput.fromObject({ + message: 'hello world', + }), +})); +``` + +You can pass an existing role with the proper permissions to be used for the target when the rule is triggered. The code snippet below uses an existing role and grants permissions to use the publish Mutation on the GraphQL API. + +```ts +import * as iam from 'aws-cdk-lib/aws-iam'; +import * as appsync from 'aws-cdk-lib/aws-appsync'; + +const api = appsync.GraphqlApi.fromGraphqlApiAttributes(this, 'ImportedAPI', { + graphqlApiId: '', + graphqlApiArn: '', + graphQLEndpointArn: '', + visibility: appsync.Visibility.GLOBAL, + modes: [appsync.AuthorizationType.IAM], +}); + +const rule = new events.Rule(this, 'Rule', { schedule: events.Schedule.rate(cdk.Duration.minutes(1)), }); +const role = new iam.Role(this, 'Role', { assumedBy: new iam.ServicePrincipal('events.amazonaws.com') }); + +// allow EventBridge to use the `publish` mutation +api.grantMutation(role, 'publish'); + +rule.addTarget(new targets.AppSync(api, { + graphQLOperation: 'mutation Publish($message: String!){ publish(message: $message) { message } }', + variables: events.RuleTargetInput.fromObject({ + message: 'hello world', + }), + eventRole: role +})); +``` + ## Put an event on an EventBridge bus Use the `EventBus` target to route event to a different EventBus. diff --git a/packages/aws-cdk-lib/aws-events-targets/lib/appsync.ts b/packages/aws-cdk-lib/aws-events-targets/lib/appsync.ts new file mode 100644 index 0000000000000..13330066b974b --- /dev/null +++ b/packages/aws-cdk-lib/aws-events-targets/lib/appsync.ts @@ -0,0 +1,84 @@ +import { addToDeadLetterQueueResourcePolicy, bindBaseTargetConfig, singletonEventRole, TargetBaseProps } from './util'; +import * as appsync from '../../aws-appsync'; +import * as events from '../../aws-events'; +import * as iam from '../../aws-iam'; + +/** + * Customize the AppSync GraphQL API target + */ +export interface AppSyncGraphQLApiProps extends TargetBaseProps { + /** + * The GraphQL operation; that is, the query, mutation, or subscription + * to be parsed and executed by the GraphQL service. + */ + readonly graphQLOperation: string; + + /** + * The variables that are include in the GraphQL operation. + * + * @default - The entire event is used + */ + readonly variables?: events.RuleTargetInput; + + /** + * The role to assume before invoking the target + * (i.e., the pipeline) when the given rule is triggered. + * + * @default - a new role with permissions to access mutations will be created + */ + readonly eventRole?: iam.IRole; +} + +/** + * Use an AppSync GraphQL API as a target for Amazon EventBridge rules. + */ +export class AppSync implements events.IRuleTarget { + + constructor(private readonly appsyncApi: appsync.IGraphqlApi, private readonly props: AppSyncGraphQLApiProps) { + } + + /** + * Returns a RuleTarget that can be used to trigger this AppSync GraphQL API + * as a result from an EventBridge event. + */ + public bind(rule: events.IRule, _id?: string): events.RuleTargetConfig { + if (this.props.deadLetterQueue) { + addToDeadLetterQueueResourcePolicy(rule, this.props.deadLetterQueue); + } + + // make sure the API has AWS_IAM configured. + if (!this.appsyncApi.modes.includes(appsync.AuthorizationType.IAM)) { + throw new Error('You must have AWS_IAM authorization mode enabled on your API to configure an AppSync target'); + } + + // make sure this is a 'public' (i.e.: 'GLOBAL') API + if (this.appsyncApi.visibility !== appsync.Visibility.GLOBAL) { + throw new Error('Your API visibility must be "GLOBAL"'); + } + + // make sure the EndpointArn is not blank + if (this.appsyncApi.graphQLEndpointArn === '') { + throw new Error('You must have a valid `graphQLEndpointArn` set'); + } + + const role = this.props.eventRole || singletonEventRole(this.appsyncApi); + + // if a role was not provided, attach a permission + if (!this.props.eventRole) { + this.appsyncApi.grantMutation(role); + } + + return { + ...bindBaseTargetConfig(this.props), + arn: this.appsyncApi.graphQLEndpointArn, + role, + deadLetterConfig: this.props.deadLetterQueue && { arn: this.props.deadLetterQueue?.queueArn }, + input: this.props.variables, + targetResource: this.appsyncApi, + appSyncParameters: { + graphQlOperation: this.props.graphQLOperation, + }, + }; + } +} + diff --git a/packages/aws-cdk-lib/aws-events-targets/lib/index.ts b/packages/aws-cdk-lib/aws-events-targets/lib/index.ts index 6c91810ebca33..a7db6ab24a04f 100644 --- a/packages/aws-cdk-lib/aws-events-targets/lib/index.ts +++ b/packages/aws-cdk-lib/aws-events-targets/lib/index.ts @@ -14,4 +14,5 @@ export * from './log-group'; export * from './kinesis-firehose-stream'; export * from './api-gateway'; export * from './api-destination'; +export * from './appsync'; export * from './util'; diff --git a/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.graphql b/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.graphql new file mode 100644 index 0000000000000..251775e1e6902 --- /dev/null +++ b/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.graphql @@ -0,0 +1,9 @@ +type Event { + message: String +} +type Query { + getTests: [Event]! +} +type Mutation { + publish(message: String!): Event +} diff --git a/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.ts b/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.ts new file mode 100644 index 0000000000000..c58eb2efb5332 --- /dev/null +++ b/packages/aws-cdk-lib/aws-events-targets/test/appsync/appsync.test.ts @@ -0,0 +1,395 @@ +import * as path from 'path'; +import { Template } from '../../../assertions'; +import * as appsync from '../../../aws-appsync'; +import * as events from '../../../aws-events'; +import * as iam from '../../../aws-iam'; +import * as sqs from '../../../aws-sqs'; +import * as cdk from '../../../core'; +import * as targets from '../../lib'; + +const graphQLOperation = 'mutation Publish($message: String!){ publish(message: $message) { event } }'; + +describe('AppSync GraphQL API target', () => { + let stack: cdk.Stack; + beforeEach(() => { + stack = new cdk.Stack(); + }); + + test('fails when AWS_IAM auth is not configured', () => { + const noiam_api = new appsync.GraphqlApi(stack, 'noiamApi', { + name: 'no_iam_api', + definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.test.graphql')), + }); + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + expect(() => { + rule.addTarget(new targets.AppSync(noiam_api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + }).toThrow('You must have AWS_IAM authorization mode enabled on your API to configure an AppSync target'); + }); + + test('fails when graphQLEndpointArn is not configured', () => { + const noEndpointArnAPI = appsync.GraphqlApi.fromGraphqlApiAttributes(stack, 'ImportedAPI', { + graphqlApiId: 'MyApiId', + graphqlApiArn: 'MyApiArn', + modes: [appsync.AuthorizationType.IAM], + }); + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + expect(() => { + rule.addTarget(new targets.AppSync(noEndpointArnAPI, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + }).toThrow('You must have a valid `graphQLEndpointArn` set'); + }); + + test('Accepts API create with fromGraphqlApiAttributes', () => { + const api = appsync.GraphqlApi.fromGraphqlApiAttributes(stack, 'ImportedAPI', { + graphqlApiId: 'MyApiId', + graphqlApiArn: 'MyApiArn', + graphQLEndpointArn: 'arn:aws:appsync:us-east-2:000000000000:endpoints/graphql-api/00000000000000000000000000', + visibility: appsync.Visibility.GLOBAL, + modes: [appsync.AuthorizationType.IAM], + }); + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + // WHEN + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::Events::Rule', { + Targets: [ + { + Arn: api.graphQLEndpointArn, + AppSyncParameters: { GraphQLOperation: graphQLOperation }, + Id: 'Target0', + InputTransformer: { + InputPathsMap: { detail: '$.detail' }, + InputTemplate: '{"message":}', + }, + RoleArn: { + 'Fn::GetAtt': [ + 'ImportedAPIEventsRole9CE171B7', + 'Arn', + ], + }, + }, + ], + }); + }); + + test('allows secondary auth with AWS_IAM configured', () => { + const sec_api = new appsync.GraphqlApi(stack, 'sec_api', { + name: 'no_iam_api', + definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.test.graphql')), + authorizationConfig: { additionalAuthorizationModes: [{ authorizationType: appsync.AuthorizationType.IAM }] }, + }); + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + expect(() => { + rule.addTarget(new targets.AppSync(sec_api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + }).not.toThrow('You must have AWS_IAM authorization mode enabled on your API to configure an AppSync target'); + }); + + test('fails when VISIBILITY is not "GLOBAL"', () => { + const sec_api = new appsync.GraphqlApi(stack, 'sec_api', { + name: 'no_iam_api', + visibility: appsync.Visibility.PRIVATE, + definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.test.graphql')), + authorizationConfig: { additionalAuthorizationModes: [{ authorizationType: appsync.AuthorizationType.IAM }] }, + }); + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + expect(() => { + rule.addTarget(new targets.AppSync(sec_api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + }).toThrow('Your API visibility must be "GLOBAL"'); + }); + +}); + +describe('AppSync API with AWS_IAM auth', () => { + let api: appsync.GraphqlApi; + let stack: cdk.Stack; + beforeEach(() => { + stack = new cdk.Stack(); + api = new appsync.GraphqlApi(stack, 'baseApi', { + name: 'api', + definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.test.graphql')), + authorizationConfig: { defaultAuthorization: { authorizationType: appsync.AuthorizationType.IAM } }, + }); + }); + + test('use AppSync GraphQL API as an event rule target', () => { + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + // WHEN + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::Events::Rule', { + Targets: [ + { + Arn: { 'Fn::GetAtt': ['baseApiCDA4D43A', 'GraphQLEndpointArn'] }, + AppSyncParameters: { GraphQLOperation: graphQLOperation }, + Id: 'Target0', + InputTransformer: { + InputPathsMap: { detail: '$.detail' }, + InputTemplate: '{"message":}', + }, + RoleArn: { + 'Fn::GetAtt': [ + 'baseApiEventsRoleAC472BD7', + 'Arn', + ], + }, + }, + ], + }); + }); + + test('use a Dead Letter Queue', () => { + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + // WHEN + const queue = new sqs.Queue(stack, 'Queue'); + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + deadLetterQueue: queue, + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::Events::Rule', { + Targets: [ + { + DeadLetterConfig: { + Arn: { + 'Fn::GetAtt': [ + 'Queue4A7E3555', + 'Arn', + ], + }, + }, + Id: 'Target0', + }, + ], + }); + }); + + test('when no mutation fields provided, grant access to Mutations only', () => { + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + // WHEN + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::Events::Rule', { + Targets: [ + { + Arn: { 'Fn::GetAtt': ['baseApiCDA4D43A', 'GraphQLEndpointArn'] }, + AppSyncParameters: { GraphQLOperation: graphQLOperation }, + Id: 'Target0', + InputTransformer: { + InputPathsMap: { detail: '$.detail' }, + InputTemplate: '{"message":}', + }, + RoleArn: { + 'Fn::GetAtt': [ + 'baseApiEventsRoleAC472BD7', + 'Arn', + ], + }, + }, + ], + }); + + Template.fromStack(stack).hasResourceProperties('AWS::IAM::Role', { + AssumeRolePolicyDocument: { + Version: '2012-10-17', + Statement: [ + { + Action: 'sts:AssumeRole', + Effect: 'Allow', + Principal: { + Service: 'events.amazonaws.com', + }, + }, + ], + }, + }); + + Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', { + PolicyName: 'baseApiEventsRoleDefaultPolicy94199357', + PolicyDocument: { + Statement: [{ + Action: 'appsync:GraphQL', + Effect: 'Allow', + Resource: + { + 'Fn::Join': [ + '', [ + 'arn:', + { Ref: 'AWS::Partition' }, + ':appsync:', + { Ref: 'AWS::Region' }, + ':', + { Ref: 'AWS::AccountId' }, + ':apis/', + { 'Fn::GetAtt': ['baseApiCDA4D43A', 'ApiId'] }, + '/types/Mutation/*', + ], + ], + }, + }], + Version: '2012-10-17', + }, + }); + }); + + test('a role is provided', () => { + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + const eventRole = new iam.Role(stack, 'role', { + assumedBy: new iam.ServicePrincipal('events.amazonaws.com'), + }); + api.grantMutation(eventRole, 'publish'); + + // WHEN + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + eventRole, + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::Events::Rule', { + Targets: [ + { + Arn: { 'Fn::GetAtt': ['baseApiCDA4D43A', 'GraphQLEndpointArn'] }, + AppSyncParameters: { GraphQLOperation: graphQLOperation }, + Id: 'Target0', + InputTransformer: { + InputPathsMap: { detail: '$.detail' }, + InputTemplate: '{"message":}', + }, + RoleArn: { + 'Fn::GetAtt': [ + 'roleC7B7E775', + 'Arn', + ], + }, + }, + ], + }); + }); + + test('a role is not provided', () => { + + const rule = new events.Rule(stack, 'Rule', { + schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + }); + + // WHEN + rule.addTarget(new targets.AppSync(api, { + graphQLOperation, + variables: events.RuleTargetInput.fromObject({ + message: events.EventField.fromPath('$.detail'), + }), + })); + + // THEN + Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', { + PolicyDocument: { + Statement: [{ + Action: 'appsync:GraphQL', + Effect: 'Allow', + Resource: + { + 'Fn::Join': ['', ['arn:', { Ref: 'AWS::Partition' }, ':appsync:', { Ref: 'AWS::Region' }, ':', { Ref: 'AWS::AccountId' }, ':apis/', { 'Fn::GetAtt': ['baseApiCDA4D43A', 'ApiId'] }, '/types/Mutation/*']], + }, + + }], + Version: '2012-10-17', + }, + }); + + Template.fromStack(stack).hasResourceProperties('AWS::IAM::Role', { + AssumeRolePolicyDocument: { + Version: '2012-10-17', + Statement: [ + { + Action: 'sts:AssumeRole', + Effect: 'Allow', + Principal: { + Service: 'events.amazonaws.com', + }, + }, + ], + }, + }); + + }); + +}); \ No newline at end of file diff --git a/packages/aws-cdk-lib/aws-events/lib/rule.ts b/packages/aws-cdk-lib/aws-events/lib/rule.ts index faa7ea7c488f6..b96347e20ba2b 100644 --- a/packages/aws-cdk-lib/aws-events/lib/rule.ts +++ b/packages/aws-cdk-lib/aws-events/lib/rule.ts @@ -238,6 +238,7 @@ export class Rule extends Resource implements IRule { deadLetterConfig: targetProps.deadLetterConfig, retryPolicy: targetProps.retryPolicy, sqsParameters: targetProps.sqsParameters, + appSyncParameters: targetProps.appSyncParameters, input: inputProps && inputProps.input, inputPath: inputProps && inputProps.inputPath, inputTransformer: inputProps?.inputTemplate !== undefined ? { diff --git a/packages/aws-cdk-lib/aws-events/lib/target.ts b/packages/aws-cdk-lib/aws-events/lib/target.ts index e836bcf75e53d..711b20b416bdf 100644 --- a/packages/aws-cdk-lib/aws-events/lib/target.ts +++ b/packages/aws-cdk-lib/aws-events/lib/target.ts @@ -60,6 +60,12 @@ export interface RuleTargetConfig { */ readonly retryPolicy?: CfnRule.RetryPolicyProperty; + /** + * Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API. + * @default - None + */ + readonly appSyncParameters?: CfnRule.AppSyncParametersProperty; + /** * The Amazon ECS task definition and task count to use, if the event target * is an Amazon ECS task. diff --git a/packages/aws-cdk-lib/aws-iam/lib/user.ts b/packages/aws-cdk-lib/aws-iam/lib/user.ts index 1f48f990c8e48..edbd0f59a4f25 100644 --- a/packages/aws-cdk-lib/aws-iam/lib/user.ts +++ b/packages/aws-cdk-lib/aws-iam/lib/user.ts @@ -7,7 +7,7 @@ import { Policy } from './policy'; import { PolicyStatement } from './policy-statement'; import { AddToPrincipalPolicyResult, ArnPrincipal, IPrincipal, PrincipalPolicyFragment } from './principals'; import { AttachedPolicies, undefinedIfEmpty } from './private/util'; -import { Arn, Aws, Lazy, Resource, SecretValue, Stack } from '../../core'; +import { Arn, ArnFormat, Lazy, Resource, SecretValue, Stack } from '../../core'; /** * Represents an IAM user @@ -180,7 +180,7 @@ export class User extends Resource implements IIdentity, IUser { public static fromUserAttributes(scope: Construct, id: string, attrs: UserAttributes): IUser { class Import extends Resource implements IUser { public readonly grantPrincipal: IPrincipal = this; - public readonly principalAccount = Aws.ACCOUNT_ID; + public readonly principalAccount = Stack.of(scope).splitArn(attrs.userArn, ArnFormat.SLASH_RESOURCE_NAME).account; // Resource name with path can have multiple elements separated by slash. // Therefore, use element after last slash as userName. Happens to work for Tokens since // they don't have a '/' in them. diff --git a/packages/aws-cdk-lib/aws-iam/test/user.test.ts b/packages/aws-cdk-lib/aws-iam/test/user.test.ts index 73d45433f3702..c5bfc9391d663 100644 --- a/packages/aws-cdk-lib/aws-iam/test/user.test.ts +++ b/packages/aws-cdk-lib/aws-iam/test/user.test.ts @@ -119,6 +119,43 @@ describe('IAM user', () => { }); }); + test('user imported by user ARN has a principalAccount', () => { + // GIVEN + const stack = new Stack(); + const accountId = 'account-id'; + + // WHEN + const user = User.fromUserArn(stack, 'import', `arn:aws:iam::${accountId}:user/mockuser`); + + // THEN + expect(stack.resolve(user.principalAccount)).toStrictEqual(accountId); + }); + + test('user imported by tokenized user ARN has a principalAccount', () => { + // GIVEN + const stack = new Stack(); + + // WHEN + const user = User.fromUserArn(stack, 'import', Token.asString({ Ref: 'ARN' })); + + // THEN + expect(stack.resolve(user.principalAccount)).toStrictEqual({ + 'Fn::Select': [4, { 'Fn::Split': [':', { Ref: 'ARN' }] }], + }); + }); + test('user imported by a new User cosntruct has a principalAccount', () => { + // GIVEN + const stack = new Stack(); + + // WHEN + const user = User.fromUserArn(stack, 'import', new User(stack, 'LocalUser').userArn); + + // THEN + expect(stack.resolve(user.principalAccount)).toStrictEqual( + { 'Fn::Select': [4, { 'Fn::Split': [':', { 'Fn::GetAtt': ['LocalUser87F70DDF', 'Arn'] }] }] }, + ); + }); + test('user imported by user ARN with path', () => { // GIVEN const stack = new Stack(); diff --git a/packages/aws-cdk-lib/aws-lambda-nodejs/README.md b/packages/aws-cdk-lib/aws-lambda-nodejs/README.md index b7d6ce23b02f4..4d3d9a873f46c 100644 --- a/packages/aws-cdk-lib/aws-lambda-nodejs/README.md +++ b/packages/aws-cdk-lib/aws-lambda-nodejs/README.md @@ -156,6 +156,11 @@ environment. When passing a runtime that is known to include a version of the aws sdk, it will be excluded by default. For example, when passing `NODEJS_16_X`, `aws-sdk` is excluded. When passing `NODEJS_18_X`, all `@aws-sdk/*` packages are excluded. +> [!WARNING] +> The NodeJS runtime of Node 16 will be deprecated by Lambda on June 12, 2024. Lambda runtimes Node 18 and higher include SDKv3 and not SDKv2. Updating your Lambda runtime from <=Node 16 to any newer version will require bundling the SDK with your handler code, or updating all SDK calls in your handler code to use SDKv3 (which is not a trivial update). Please account for this added complexity and update as soon as possible. + + + This can be configured by specifying `bundling.externalModules`: ```ts diff --git a/packages/aws-cdk-lib/aws-lambda-nodejs/lib/bundling.ts b/packages/aws-cdk-lib/aws-lambda-nodejs/lib/bundling.ts index 15eb8113f141e..248be43608b99 100644 --- a/packages/aws-cdk-lib/aws-lambda-nodejs/lib/bundling.ts +++ b/packages/aws-cdk-lib/aws-lambda-nodejs/lib/bundling.ts @@ -133,8 +133,15 @@ export class Bundling implements cdk.BundlingOptions { // Don't automatically externalize aws sdk if `bundleAwsSDK` is true so it can be // include in the bundle asset const defaultExternals = props.runtime?.isVariable || props.bundleAwsSDK ? [] : versionedExternals; + const externals = props.externalModules ?? defaultExternals; + // warn users if they are using a runtime that does not support sdk v2 + // and the sdk is not explicitly bundled + if (externals.length && isV2Runtime) { + cdk.Annotations.of(scope).addWarningV2('aws-cdk-lib/aws-lambda-nodejs:runtimeUpdateSdkV2Breakage', 'Be aware that the NodeJS runtime of Node 16 will be deprecated by Lambda on June 12, 2024. Lambda runtimes Node 18 and higher include SDKv3 and not SDKv2. Updating your Lambda runtime will require bundling the SDK, or updating all SDK calls in your handler code to use SDKv3 (which is not a trivial update). Please account for this added complexity and update as soon as possible.'); + } + // Warn users if they are trying to rely on global versions of the SDK that aren't available in // their environment. if (isV2Runtime && externals.some((pkgName) => pkgName.startsWith('@aws-sdk/'))) { diff --git a/packages/aws-cdk-lib/aws-lambda-nodejs/test/bundling.test.ts b/packages/aws-cdk-lib/aws-lambda-nodejs/test/bundling.test.ts index 6919550322674..ae44f18650056 100644 --- a/packages/aws-cdk-lib/aws-lambda-nodejs/test/bundling.test.ts +++ b/packages/aws-cdk-lib/aws-lambda-nodejs/test/bundling.test.ts @@ -950,7 +950,7 @@ test('bundling with <= Node16 does not warn with default externalModules', () => ); }); -test('bundling with >= Node18 warns when sdk v3 is external', () => { +test('bundling with >= Node18 warns when sdk v2 is external', () => { Bundling.bundle(stack, { entry, projectRoot, @@ -998,6 +998,20 @@ test('bundling with NODEJS_LATEST warns when any dependencies are external', () ); }); +test('Node 16 runtimes warn about sdk v2 upgrades', () => { + Bundling.bundle(stack, { + entry, + projectRoot, + depsLockFilePath, + runtime: Runtime.NODEJS_16_X, + architecture: Architecture.X86_64, + }); + + Annotations.fromStack(stack).hasWarning('*', + 'Be aware that the NodeJS runtime of Node 16 will be deprecated by Lambda on June 12, 2024. Lambda runtimes Node 18 and higher include SDKv3 and not SDKv2. Updating your Lambda runtime will require bundling the SDK, or updating all SDK calls in your handler code to use SDKv3 (which is not a trivial update). Please account for this added complexity and update as soon as possible. [ack: aws-cdk-lib/aws-lambda-nodejs:runtimeUpdateSdkV2Breakage]', + ); +}); + function findParentTsConfigPath(dir: string, depth: number = 1, limit: number = 5): string { const target = path.join(dir, 'tsconfig.json'); if (fs.existsSync(target)) { diff --git a/packages/aws-cdk-lib/aws-lambda/lib/function-base.ts b/packages/aws-cdk-lib/aws-lambda/lib/function-base.ts index 9e6055eb86b4b..22d20a8202fbf 100644 --- a/packages/aws-cdk-lib/aws-lambda/lib/function-base.ts +++ b/packages/aws-cdk-lib/aws-lambda/lib/function-base.ts @@ -344,7 +344,9 @@ export abstract class FunctionBase extends Resource implements IFunction, ec2.IC */ public addPermission(id: string, permission: Permission) { if (!this.canCreatePermissions) { - Annotations.of(this).addWarningV2('UnclearLambdaEnvironment', `addPermission() has no effect on a Lambda Function with region=${this.env.region}, account=${this.env.account}, in a Stack with region=${Stack.of(this).region}, account=${Stack.of(this).account}. Suppress this warning if this is is intentional, or pass sameEnvironment=true to fromFunctionAttributes() if you would like to add the permissions.`); + if (!this._skipPermissions) { + Annotations.of(this).addWarningV2('UnclearLambdaEnvironment', `addPermission() has no effect on a Lambda Function with region=${this.env.region}, account=${this.env.account}, in a Stack with region=${Stack.of(this).region}, account=${Stack.of(this).account}. Suppress this warning if this is is intentional, or pass sameEnvironment=true to fromFunctionAttributes() if you would like to add the permissions.`); + } return; } diff --git a/packages/aws-cdk-lib/aws-lambda/test/function.test.ts b/packages/aws-cdk-lib/aws-lambda/test/function.test.ts index f4c5382707641..0b1142baf17c5 100644 --- a/packages/aws-cdk-lib/aws-lambda/test/function.test.ts +++ b/packages/aws-cdk-lib/aws-lambda/test/function.test.ts @@ -7,6 +7,7 @@ import { ProfilingGroup } from '../../aws-codeguruprofiler'; import * as ec2 from '../../aws-ec2'; import * as efs from '../../aws-efs'; import * as iam from '../../aws-iam'; +import { AccountPrincipal } from '../../aws-iam'; import * as kms from '../../aws-kms'; import * as logs from '../../aws-logs'; import * as s3 from '../../aws-s3'; @@ -15,6 +16,7 @@ import * as sns from '../../aws-sns'; import * as sqs from '../../aws-sqs'; import * as cdk from '../../core'; import { Aspects, Lazy, Size } from '../../core'; +import { getWarnings } from '../../core/test/util'; import * as cxapi from '../../cx-api'; import * as lambda from '../lib'; import { AdotLambdaLayerJavaSdkVersion } from '../lib/adot-layers'; @@ -223,6 +225,55 @@ describe('function', () => { fn.addPermission('S4', { principal: new iam.OrganizationPrincipal('my:org') }); }); + test('does not show warning if skipPermissions is set', () => { + const app = new cdk.App(); + const stack = new cdk.Stack(app); + const imported = lambda.Function.fromFunctionAttributes(stack, 'Imported', { + functionArn: 'arn:aws:lambda:us-west-2:123456789012:function:my-function', + skipPermissions: true, + }); + imported.addPermission('Permission', { + action: 'lambda:InvokeFunction', + principal: new AccountPrincipal('123456789010'), + }); + + expect(getWarnings(app.synth()).length).toBe(0); + }); + + test('shows warning if skipPermissions is not set', () => { + const app = new cdk.App(); + const stack = new cdk.Stack(app); + const imported = lambda.Function.fromFunctionAttributes(stack, 'Imported', { + functionArn: 'arn:aws:lambda:us-west-2:123456789012:function:my-function', + }); + imported.addPermission('Permission', { + action: 'lambda:InvokeFunction', + principal: new AccountPrincipal('123456789010'), + }); + + expect(getWarnings(app.synth())).toEqual([ + { + message: { + 'Fn::Join': [ + '', + [ + 'addPermission() has no effect on a Lambda Function with region=us-west-2, account=123456789012, in a Stack with region=', + { + Ref: 'AWS::Region', + }, + ', account=', + { + Ref: 'AWS::AccountId', + }, + '. Suppress this warning if this is is intentional, or pass sameEnvironment=true to fromFunctionAttributes() if you would like to add the permissions. [ack: UnclearLambdaEnvironment]', + ], + ], + }, + path: '/Default/Imported', + }, + ]); + }); + test('applies source account/ARN conditions if the principal has conditions', () => { const stack = new cdk.Stack(); const fn = newTestLambda(stack); diff --git a/packages/aws-cdk-lib/aws-logs/README.md b/packages/aws-cdk-lib/aws-logs/README.md index ba6397853e4db..ef56aa2ebaa30 100644 --- a/packages/aws-cdk-lib/aws-logs/README.md +++ b/packages/aws-cdk-lib/aws-logs/README.md @@ -61,7 +61,7 @@ const logGroup = new logs.LogGroup(this, 'LogGroup'); logGroup.grantWrite(new iam.ServicePrincipal('es.amazonaws.com')); ``` -Similarily, read permissions can be granted to the log group as follows. +Similarly, read permissions can be granted to the log group as follows. ```ts const logGroup = new logs.LogGroup(this, 'LogGroup'); diff --git a/packages/aws-cdk-lib/aws-logs/lib/data-protection-policy.ts b/packages/aws-cdk-lib/aws-logs/lib/data-protection-policy.ts index d2810db6d4435..15948c6955ea1 100644 --- a/packages/aws-cdk-lib/aws-logs/lib/data-protection-policy.ts +++ b/packages/aws-cdk-lib/aws-logs/lib/data-protection-policy.ts @@ -321,7 +321,7 @@ export class CustomDataIdentifier extends DataIdentifier { /** * Create a custom data identifier. * @param name - the name of the custom data identifier. This cannot share the same name as a managed data identifier. - * @param regex - the regular expresssion to detect and mask log events for. + * @param regex - the regular expression to detect and mask log events for. */ constructor(public readonly name: string, public readonly regex: string) { super(name); diff --git a/packages/aws-cdk-lib/aws-logs/lib/log-group.ts b/packages/aws-cdk-lib/aws-logs/lib/log-group.ts index 453ad09fe3989..fcb66ff83b220 100644 --- a/packages/aws-cdk-lib/aws-logs/lib/log-group.ts +++ b/packages/aws-cdk-lib/aws-logs/lib/log-group.ts @@ -389,7 +389,7 @@ export interface LogGroupProps { /** * The KMS customer managed key to encrypt the log group with. * - * @default Server-side encrpytion managed by the CloudWatch Logs service + * @default Server-side encryption managed by the CloudWatch Logs service */ readonly encryptionKey?: kms.IKey; diff --git a/packages/aws-cdk-lib/aws-rds/README.md b/packages/aws-cdk-lib/aws-rds/README.md index f44921d277e47..1d7ad1566304b 100644 --- a/packages/aws-cdk-lib/aws-rds/README.md +++ b/packages/aws-cdk-lib/aws-rds/README.md @@ -312,7 +312,7 @@ declare const vpc: ec2.Vpc; const cluster = new rds.DatabaseCluster(this, 'Database', { engine: rds.DatabaseClusterEngine.auroraMysql({ version: rds.AuroraMysqlEngineVersion.VER_3_01_0 }), writer: rds.ClusterInstance.provisioned('writer', { - caCertificate: rds.CaCertificate.RDS_CA_RDS2048_G1, + caCertificate: rds.CaCertificate.RDS_CA_RSA2048_G1, }), readers: [ rds.ClusterInstance.serverlessV2('reader', { @@ -527,7 +527,7 @@ declare const vpc: ec2.Vpc; new rds.DatabaseInstance(this, 'Instance', { engine: rds.DatabaseInstanceEngine.mysql({ version: rds.MysqlEngineVersion.VER_8_0_30 }), vpc, - caCertificate: rds.CaCertificate.RDS_CA_RDS2048_G1, + caCertificate: rds.CaCertificate.RDS_CA_RSA2048_G1, }); ``` @@ -1078,6 +1078,7 @@ const parameterGroup = new rds.ParameterGroup(this, 'ParameterGroup', { engine: rds.DatabaseInstanceEngine.sqlServerEe({ version: rds.SqlServerEngineVersion.VER_11, }), + name: 'my-parameter-group', parameters: { locks: '100', }, diff --git a/packages/aws-cdk-lib/aws-rds/lib/ca-certificate.ts b/packages/aws-cdk-lib/aws-rds/lib/ca-certificate.ts index 8c64714cdf9bb..014be74cb87d3 100644 --- a/packages/aws-cdk-lib/aws-rds/lib/ca-certificate.ts +++ b/packages/aws-cdk-lib/aws-rds/lib/ca-certificate.ts @@ -16,14 +16,28 @@ export class CaCertificate { /** * rds-ca-rsa2048-g1 certificate authority + * + * @deprecated use RDS_CA_RSA2048_G1 (slight misspelling) */ public static readonly RDS_CA_RDS2048_G1 = CaCertificate.of('rds-ca-rsa2048-g1'); + /** + * rds-ca-rsa2048-g1 certificate authority + */ + public static readonly RDS_CA_RSA2048_G1 = CaCertificate.of('rds-ca-rsa2048-g1'); + /** * rds-ca-rsa4096-g1 certificate authority + * + * @deprecated use RDS_CA_RSA4096_G1 (slight misspelling) */ public static readonly RDS_CA_RDS4096_G1 = CaCertificate.of('rds-ca-rsa4096-g1'); + /** + * rds-ca-rsa4096-g1 certificate authority + */ + public static readonly RDS_CA_RSA4096_G1 = CaCertificate.of('rds-ca-rsa4096-g1'); + /** * Custom CA certificate * diff --git a/packages/aws-cdk-lib/aws-rds/lib/cluster-engine.ts b/packages/aws-cdk-lib/aws-rds/lib/cluster-engine.ts index c7cb30e6c257d..84294415326b9 100644 --- a/packages/aws-cdk-lib/aws-rds/lib/cluster-engine.ts +++ b/packages/aws-cdk-lib/aws-rds/lib/cluster-engine.ts @@ -975,6 +975,8 @@ export class AuroraPostgresEngineVersion { public static readonly VER_16_0 = AuroraPostgresEngineVersion.of('16.0', '16', { s3Import: true, s3Export: true }); /** Version "16.1". */ public static readonly VER_16_1 = AuroraPostgresEngineVersion.of('16.1', '16', { s3Import: true, s3Export: true }); + /** Version "16.2". */ + public static readonly VER_16_2 = AuroraPostgresEngineVersion.of('16.2', '16', { s3Import: true, s3Export: true }); /** * Create a new AuroraPostgresEngineVersion with an arbitrary version. diff --git a/packages/aws-cdk-lib/aws-rds/lib/parameter-group.ts b/packages/aws-cdk-lib/aws-rds/lib/parameter-group.ts index c529bc859d401..ef1f43aac56b1 100644 --- a/packages/aws-cdk-lib/aws-rds/lib/parameter-group.ts +++ b/packages/aws-cdk-lib/aws-rds/lib/parameter-group.ts @@ -70,6 +70,13 @@ export interface ParameterGroupProps { */ readonly engine: IEngine; + /** + * The name of this parameter group. + * + * @default - CloudFormation-generated name + */ + readonly name?: string; + /** * Description for this parameter group * @@ -126,6 +133,7 @@ export class ParameterGroup extends Resource implements IParameterGroup { private readonly family: string; private readonly removalPolicy?: RemovalPolicy; private readonly description?: string; + private readonly name?: string; private clusterCfnGroup?: CfnDBClusterParameterGroup; private instanceCfnGroup?: CfnDBParameterGroup; @@ -139,6 +147,7 @@ export class ParameterGroup extends Resource implements IParameterGroup { } this.family = family; this.description = props.description; + this.name = props.name; this.parameters = props.parameters ?? {}; this.removalPolicy = props.removalPolicy; } @@ -149,6 +158,7 @@ export class ParameterGroup extends Resource implements IParameterGroup { this.clusterCfnGroup = new CfnDBClusterParameterGroup(this, id, { description: this.description || `Cluster parameter group for ${this.family}`, family: this.family, + dbClusterParameterGroupName: this.name, parameters: Lazy.any({ produce: () => this.parameters }), }); } @@ -166,6 +176,7 @@ export class ParameterGroup extends Resource implements IParameterGroup { this.instanceCfnGroup = new CfnDBParameterGroup(this, id, { description: this.description || `Parameter group for ${this.family}`, family: this.family, + dbParameterGroupName: this.name, parameters: Lazy.any({ produce: () => this.parameters }), }); } diff --git a/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts b/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts index d27abfb4a8065..fac2485ad40d5 100644 --- a/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts +++ b/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts @@ -1154,11 +1154,11 @@ describe('cluster new api', () => { vpc, writer: ClusterInstance.provisioned('writer', { instanceType: ec2.InstanceType.of(ec2.InstanceClass.M5, ec2.InstanceSize.XLARGE24 ), - caCertificate: CaCertificate.RDS_CA_RDS4096_G1, + caCertificate: CaCertificate.RDS_CA_RSA4096_G1, }), readers: [ ClusterInstance.serverlessV2('reader', { - caCertificate: CaCertificate.RDS_CA_RDS2048_G1, + caCertificate: CaCertificate.RDS_CA_RSA2048_G1, }), ClusterInstance.provisioned('reader2', { promotionTier: 1, diff --git a/packages/aws-cdk-lib/aws-rds/test/instance.test.ts b/packages/aws-cdk-lib/aws-rds/test/instance.test.ts index 6c787363f6c4b..505fb57bcfd30 100644 --- a/packages/aws-cdk-lib/aws-rds/test/instance.test.ts +++ b/packages/aws-cdk-lib/aws-rds/test/instance.test.ts @@ -2053,7 +2053,7 @@ describe('instance', () => { engine: rds.DatabaseInstanceEngine.mysql({ version: rds.MysqlEngineVersion.VER_8_0_30 }), instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.SMALL), vpc, - caCertificate: rds.CaCertificate.RDS_CA_RDS2048_G1, + caCertificate: rds.CaCertificate.RDS_CA_RSA2048_G1, }); Template.fromStack(stack).hasResourceProperties('AWS::RDS::DBInstance', { diff --git a/packages/aws-cdk-lib/aws-rds/test/parameter-group.test.ts b/packages/aws-cdk-lib/aws-rds/test/parameter-group.test.ts index cb8ee7adefc4c..a47d76953bd11 100644 --- a/packages/aws-cdk-lib/aws-rds/test/parameter-group.test.ts +++ b/packages/aws-cdk-lib/aws-rds/test/parameter-group.test.ts @@ -29,6 +29,7 @@ describe('parameter group', () => { const parameterGroup = new ParameterGroup(stack, 'Params', { engine: DatabaseClusterEngine.AURORA, description: 'desc', + name: 'name', parameters: { key: 'value', }, @@ -37,6 +38,7 @@ describe('parameter group', () => { // THEN Template.fromStack(stack).hasResourceProperties('AWS::RDS::DBParameterGroup', { + DBParameterGroupName: 'name', Description: 'desc', Family: 'aurora5.6', Parameters: { @@ -53,6 +55,7 @@ describe('parameter group', () => { const parameterGroup = new ParameterGroup(stack, 'Params', { engine: DatabaseClusterEngine.AURORA, description: 'desc', + name: 'name', parameters: { key: 'value', }, @@ -61,6 +64,7 @@ describe('parameter group', () => { // THEN Template.fromStack(stack).hasResourceProperties('AWS::RDS::DBClusterParameterGroup', { + DBClusterParameterGroupName: 'name', Description: 'desc', Family: 'aurora5.6', Parameters: { diff --git a/packages/aws-cdk-lib/aws-s3/README.md b/packages/aws-cdk-lib/aws-s3/README.md index 247dadc0b1373..20df480ede05c 100644 --- a/packages/aws-cdk-lib/aws-s3/README.md +++ b/packages/aws-cdk-lib/aws-s3/README.md @@ -622,6 +622,8 @@ as it does not contain any objects. To override this and force all objects to get deleted during bucket deletion, enable the`autoDeleteObjects` option. +When `autoDeleteObjects` is enabled, `s3:PutBucketPolicy` is added to the bucket policy. This is done to allow the custom resource this feature is built on to add a deny policy for `s3:PutObject` to the bucket policy when a delete stack event occurs. Adding this deny policy prevents new objects from being written to the bucket. Doing this prevents race conditions with external bucket writers during the deletion process. + ```ts const bucket = new s3.Bucket(this, 'MyTempFileBucket', { removalPolicy: cdk.RemovalPolicy.DESTROY, diff --git a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts index a799062afc692..d990029f6eb6c 100644 --- a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts +++ b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts @@ -1471,6 +1471,11 @@ export interface BucketProps { * all objects in the bucket being deleted. Be sure to update your bucket resources * by deploying with CDK version `1.126.0` or later **before** switching this value to `false`. * + * Setting `autoDeleteObjects` to true on a bucket will add `s3:PutBucketPolicy` to the + * bucket policy. This is because during bucket deletion, the custom resource provider + * needs to update the bucket policy by adding a deny policy for `s3:PutObject` to + * prevent race conditions with external bucket writers. + * * @default false */ readonly autoDeleteObjects?: boolean; diff --git a/packages/aws-cdk-lib/aws-s3/lib/notifications-resource/notifications-resource.ts b/packages/aws-cdk-lib/aws-s3/lib/notifications-resource/notifications-resource.ts index d97ca9bb1498a..b144baa3006c6 100644 --- a/packages/aws-cdk-lib/aws-s3/lib/notifications-resource/notifications-resource.ts +++ b/packages/aws-cdk-lib/aws-s3/lib/notifications-resource/notifications-resource.ts @@ -1,4 +1,4 @@ -import { Construct } from 'constructs'; +import { Construct, IConstruct } from 'constructs'; import { NotificationsResourceHandler } from './notifications-resource-handler'; import * as iam from '../../../aws-iam'; import * as cdk from '../../../core'; @@ -135,6 +135,20 @@ export class BucketNotifications extends Construct { Managed: managed, }, }); + + // Add dependency on bucket policy if it exists to avoid race conditions + // S3 does not allow calling PutBucketPolicy and PutBucketNotification APIs at the same time + // See https://github.com/aws/aws-cdk/issues/27600 + // Aspects are used here because bucket policy maybe added to construct after addition of notification resource. + const bucket = this.bucket; + const resource = this.resource; + cdk.Aspects.of(this).add({ + visit(node: IConstruct) { + if (node === resource && bucket.policy) { + node.node.addDependency(bucket.policy); + } + }, + }); } return this.resource; diff --git a/packages/aws-cdk-lib/aws-s3/test/notification.test.ts b/packages/aws-cdk-lib/aws-s3/test/notification.test.ts index fb5b037d74c1d..b0efb5cbe847b 100644 --- a/packages/aws-cdk-lib/aws-s3/test/notification.test.ts +++ b/packages/aws-cdk-lib/aws-s3/test/notification.test.ts @@ -1,4 +1,4 @@ -import { Template } from '../../assertions'; +import { Match, Template } from '../../assertions'; import * as iam from '../../aws-iam'; import * as cdk from '../../core'; import * as s3 from '../lib'; @@ -121,6 +121,68 @@ describe('notification', () => { }); }); + test('custom resource must not depend on bucket policy if it bucket policy does not exists', () => { + const stack = new cdk.Stack(); + + const bucket = new s3.Bucket(stack, 'MyBucket'); + + bucket.addEventNotification(s3.EventType.OBJECT_CREATED, { + bind: () => ({ + arn: 'ARN', + type: s3.BucketNotificationDestinationType.TOPIC, + }), + }); + + Template.fromStack(stack).hasResource('Custom::S3BucketNotifications', { + Type: 'Custom::S3BucketNotifications', + DependsOn: Match.absent(), + }); + }); + + test('custom resource must depend on bucket policy to prevent executing too early', () => { + const stack = new cdk.Stack(); + + const bucket = new s3.Bucket(stack, 'MyBucket', { + enforceSSL: true, // adds bucket policy for test + }); + + bucket.addEventNotification(s3.EventType.OBJECT_CREATED, { + bind: () => ({ + arn: 'ARN', + type: s3.BucketNotificationDestinationType.TOPIC, + }), + }); + + Template.fromStack(stack).hasResource('Custom::S3BucketNotifications', { + Type: 'Custom::S3BucketNotifications', + DependsOn: ['MyBucketPolicyE7FBAC7B'], + }); + }); + + test('custom resource must depend on bucket policy even if bucket policy is added after notification', () => { + const stack = new cdk.Stack(); + + const bucket = new s3.Bucket(stack, 'MyBucket'); + + bucket.addEventNotification(s3.EventType.OBJECT_CREATED, { + bind: () => ({ + arn: 'ARN', + type: s3.BucketNotificationDestinationType.TOPIC, + }), + }); + + bucket.addToResourcePolicy(new iam.PolicyStatement({ + resources: [bucket.bucketArn], + actions: ['s3:GetBucketAcl'], + principals: [new iam.AnyPrincipal()], + })); + + Template.fromStack(stack).hasResource('Custom::S3BucketNotifications', { + Type: 'Custom::S3BucketNotifications', + DependsOn: ['MyBucketPolicyE7FBAC7B'], + }); + }); + test('throws with multiple prefix rules in a filter', () => { const stack = new cdk.Stack(); diff --git a/packages/aws-cdk-lib/aws-ses/lib/vdm-attributes.ts b/packages/aws-cdk-lib/aws-ses/lib/vdm-attributes.ts index 0e72ed669e0e5..891f606cb97a6 100644 --- a/packages/aws-cdk-lib/aws-ses/lib/vdm-attributes.ts +++ b/packages/aws-cdk-lib/aws-ses/lib/vdm-attributes.ts @@ -3,11 +3,11 @@ import { CfnVdmAttributes } from './ses.generated'; import { IResource, Resource } from '../../core'; /** - * Virtual Deliverablity Manager (VDM) attributes + * Virtual Deliverability Manager (VDM) attributes */ export interface IVdmAttributes extends IResource { /** - * The name of the resource behind the Virtual Deliverablity Manager attributes. + * The name of the resource behind the Virtual Deliverability Manager attributes. * * @attribute */ @@ -15,7 +15,7 @@ export interface IVdmAttributes extends IResource { } /** - * Properties for the Virtual Deliverablity Manager (VDM) attributes + * Properties for the Virtual Deliverability Manager (VDM) attributes */ export interface VdmAttributesProps { /** @@ -34,11 +34,11 @@ export interface VdmAttributesProps { } /** - * Virtual Deliverablity Manager (VDM) attributes + * Virtual Deliverability Manager (VDM) attributes */ export class VdmAttributes extends Resource implements IVdmAttributes { /** - * Use an existing Virtual Deliverablity Manager attributes resource + * Use an existing Virtual Deliverability Manager attributes resource */ public static fromVdmAttributesName(scope: Construct, id: string, vdmAttributesName: string): IVdmAttributes { class Import extends Resource implements IVdmAttributes { @@ -50,7 +50,7 @@ export class VdmAttributes extends Resource implements IVdmAttributes { public readonly vdmAttributesName: string; /** - * Resource ID for the Virtual Deliverablity Manager attributes + * Resource ID for the Virtual Deliverability Manager attributes * * @attribute */ diff --git a/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/athena/start-query-execution.ts b/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/athena/start-query-execution.ts index 214aec3e0b531..d21eb83c97c8b 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/athena/start-query-execution.ts +++ b/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/athena/start-query-execution.ts @@ -256,7 +256,7 @@ export interface ResultConfiguration { /** * Encryption option used if enabled in S3 * - * @default - SSE_S3 encrpytion is enabled with default encryption key + * @default - SSE_S3 encryption is enabled with default encryption key */ readonly encryptionConfiguration?: EncryptionConfiguration; } diff --git a/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md b/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md index e6ece1f62362c..fdf66fe02ca0b 100644 --- a/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md +++ b/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md @@ -69,6 +69,7 @@ Flags come in three types: | [@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope](#aws-cdkaws-kmsreducecrossaccountregionpolicyscope) | When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only. | 2.134.0 | (fix) | | [@aws-cdk/aws-eks:nodegroupNameAttribute](#aws-cdkaws-eksnodegroupnameattribute) | When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix. | 2.139.0 | (fix) | | [@aws-cdk/aws-ec2:ebsDefaultGp3Volume](#aws-cdkaws-ec2ebsdefaultgp3volume) | When enabled, the default volume type of the EBS volume will be GP3 | 2.140.0 | (default) | +| [@aws-cdk/pipelines:reduceAssetRoleTrustScope](#aws-cdkpipelinesreduceassetroletrustscope) | Remove the root account principal from PipelineAssetsFileRole trust policy | 2.141.0 | (default) | @@ -171,6 +172,7 @@ are migrating a v1 CDK project to v2, explicitly set any of these flags which do | [@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId](#aws-cdkaws-apigatewayusageplankeyorderinsensitiveid) | Allow adding/removing multiple UsagePlanKeys independently | (fix) | 1.98.0 | `false` | `true` | | [@aws-cdk/aws-lambda:recognizeVersionProps](#aws-cdkaws-lambdarecognizeversionprops) | Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`. | (fix) | 1.106.0 | `false` | `true` | | [@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2\_2021](#aws-cdkaws-cloudfrontdefaultsecuritypolicytlsv12_2021) | Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default. | (fix) | 1.117.0 | `false` | `true` | +| [@aws-cdk/pipelines:reduceAssetRoleTrustScope](#aws-cdkpipelinesreduceassetroletrustscope) | Remove the root account principal from PipelineAssetsFileRole trust policy | (default) | | `false` | `true` | @@ -185,7 +187,8 @@ Here is an example of a `cdk.json` file that restores v1 behavior for these flag "@aws-cdk/aws-rds:lowercaseDbIdentifier": false, "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": false, "@aws-cdk/aws-lambda:recognizeVersionProps": false, - "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": false + "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": false, + "@aws-cdk/pipelines:reduceAssetRoleTrustScope": false } } ``` @@ -1298,4 +1301,20 @@ When this featuer flag is enabled, the default volume type of the EBS volume wil **Compatibility with old behavior:** Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior. +### @aws-cdk/pipelines:reduceAssetRoleTrustScope + +*Remove the root account principal from PipelineAssetsFileRole trust policy* (default) + +When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role. +When this feature flag is disabled, it will keep the root account principal in the trust policy. + + +| Since | Default | Recommended | +| ----- | ----- | ----- | +| (not in v1) | | | +| 2.141.0 | `true` | `true` | + +**Compatibility with old behavior:** Disable the feature flag to add the root account principal back + + diff --git a/packages/aws-cdk-lib/cx-api/lib/features.ts b/packages/aws-cdk-lib/cx-api/lib/features.ts index 85075e445309e..e8364d528834b 100644 --- a/packages/aws-cdk-lib/cx-api/lib/features.ts +++ b/packages/aws-cdk-lib/cx-api/lib/features.ts @@ -101,6 +101,7 @@ export const LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = '@aws-cdk/aws-clou export const CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = '@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse'; export const CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = '@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2'; export const KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = '@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope'; +export const PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = '@aws-cdk/pipelines:reduceAssetRoleTrustScope'; export const EKS_NODEGROUP_NAME = '@aws-cdk/aws-eks:nodegroupNameAttribute'; export const EBS_DEFAULT_GP3 = '@aws-cdk/aws-ec2:ebsDefaultGp3Volume'; @@ -1037,6 +1038,20 @@ export const FLAGS: Record = { recommendedValue: true, }, + ////////////////////////////////////////////////////////////////////// + [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: { + type: FlagType.ApiDefault, + summary: 'Remove the root account principal from PipelineAssetsFileRole trust policy', + detailsMd: ` + When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role. + When this feature flag is disabled, it will keep the root account principal in the trust policy. + `, + introducedIn: { v2: '2.141.0' }, + defaults: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: 'Disable the feature flag to add the root account principal back', + }, + ////////////////////////////////////////////////////////////////////// [EKS_NODEGROUP_NAME]: { type: FlagType.BugFix, diff --git a/packages/aws-cdk-lib/cx-api/test/features.test.ts b/packages/aws-cdk-lib/cx-api/test/features.test.ts index e9119613c33b6..c7770a260ca98 100644 --- a/packages/aws-cdk-lib/cx-api/test/features.test.ts +++ b/packages/aws-cdk-lib/cx-api/test/features.test.ts @@ -38,7 +38,7 @@ test('feature flag defaults may not be changed anymore', () => { [feats.LAMBDA_RECOGNIZE_VERSION_PROPS]: true, [feats.CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: true, // Add new disabling feature flags below this line - // ... + [feats.PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: true, }); }); diff --git a/packages/aws-cdk-lib/pipelines/lib/codepipeline/codepipeline.ts b/packages/aws-cdk-lib/pipelines/lib/codepipeline/codepipeline.ts index 4c7304e9433e6..cef5a40dc459f 100644 --- a/packages/aws-cdk-lib/pipelines/lib/codepipeline/codepipeline.ts +++ b/packages/aws-cdk-lib/pipelines/lib/codepipeline/codepipeline.ts @@ -13,7 +13,7 @@ import * as cpa from '../../../aws-codepipeline-actions'; import * as ec2 from '../../../aws-ec2'; import * as iam from '../../../aws-iam'; import * as s3 from '../../../aws-s3'; -import { Aws, CfnCapabilities, Duration, PhysicalName, Stack, Names } from '../../../core'; +import { Aws, CfnCapabilities, Duration, PhysicalName, Stack, Names, FeatureFlags } from '../../../core'; import * as cxapi from '../../../cx-api'; import { AssetType, FileSet, IFileSetProducer, ManualApprovalStep, ShellStep, StackAsset, StackDeployment, Step } from '../blueprint'; import { DockerCredential, dockerCredentialsInstallCommands, DockerCredentialUsage } from '../docker-credentials'; @@ -984,13 +984,20 @@ export class CodePipeline extends PipelineBase { const stack = Stack.of(this); - const rolePrefix = assetType === AssetType.DOCKER_IMAGE ? 'Docker' : 'File'; - const assetRole = new AssetSingletonRole(this.assetsScope, `${rolePrefix}Role`, { - roleName: PhysicalName.GENERATE_IF_NEEDED, - assumedBy: new iam.CompositePrincipal( + const removeRootPrincipal = FeatureFlags.of(this).isEnabled(cxapi.PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE); + + const assumePrincipal = removeRootPrincipal ? new iam.CompositePrincipal( + new iam.ServicePrincipal('codebuild.amazonaws.com'), + ) : + new iam.CompositePrincipal( new iam.ServicePrincipal('codebuild.amazonaws.com'), new iam.AccountPrincipal(stack.account), - ), + ); + + const rolePrefix = assetType === AssetType.DOCKER_IMAGE ? 'Docker' : 'File'; + let assetRole = new AssetSingletonRole(this.assetsScope, `${rolePrefix}Role`, { + roleName: PhysicalName.GENERATE_IF_NEEDED, + assumedBy: assumePrincipal, }); // Grant pull access for any ECR registries and secrets that exist diff --git a/packages/aws-cdk-lib/pipelines/test/codepipeline/codepipeline.test.ts b/packages/aws-cdk-lib/pipelines/test/codepipeline/codepipeline.test.ts index 739d9ac7ed807..ed265b78327f0 100644 --- a/packages/aws-cdk-lib/pipelines/test/codepipeline/codepipeline.test.ts +++ b/packages/aws-cdk-lib/pipelines/test/codepipeline/codepipeline.test.ts @@ -7,6 +7,7 @@ import * as s3 from '../../../aws-s3'; import * as sqs from '../../../aws-sqs'; import * as cdk from '../../../core'; import { Stack } from '../../../core'; +import * as cxapi from '../../../cx-api'; import * as cdkp from '../../lib'; import { CodePipeline } from '../../lib'; import { PIPELINE_ENV, TestApp, ModernTestGitHubNpmPipeline, FileAssetApp, TwoStackApp, StageWithStackOutput } from '../testhelpers'; @@ -197,6 +198,61 @@ test('CodeBuild action role has the right AssumeRolePolicyDocument', () => { }); }); +test('CodeBuild asset role has the right Principal with the feature enabled', () => { + const stack = new cdk.Stack(); + stack.node.setContext(cxapi.PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, true); + const pipelineStack = new cdk.Stack(stack, 'PipelineStack', { env: PIPELINE_ENV }); + const pipeline = new ModernTestGitHubNpmPipeline(pipelineStack, 'Cdk'); + pipeline.addStage(new FileAssetApp(pipelineStack, 'App', {}));; + const template = Template.fromStack(pipelineStack); + const assetRole = template.toJSON().Resources.CdkAssetsFileRole6BE17A07; + const statementLength = assetRole.Properties.AssumeRolePolicyDocument.Statement; + expect(statementLength).toStrictEqual( + [ + { + Action: 'sts:AssumeRole', + Effect: 'Allow', + Principal: { + Service: 'codebuild.amazonaws.com', + }, + }, + ], + ); +}); + +test('CodeBuild asset role has the right Principal with the feature disabled', () => { + const stack = new cdk.Stack(); + stack.node.setContext(cxapi.PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, false); + const pipelineStack = new cdk.Stack(stack, 'PipelineStack', { env: PIPELINE_ENV }); + const pipeline = new ModernTestGitHubNpmPipeline(pipelineStack, 'Cdk'); + pipeline.addStage(new FileAssetApp(pipelineStack, 'App', {}));; + const template = Template.fromStack(pipelineStack); + const assetRole = template.toJSON().Resources.CdkAssetsFileRole6BE17A07; + const statementLength = assetRole.Properties.AssumeRolePolicyDocument.Statement; + expect(statementLength).toStrictEqual( + [ + { + Action: 'sts:AssumeRole', + Effect: 'Allow', + Principal: { + Service: 'codebuild.amazonaws.com', + }, + }, + { + Action: 'sts:AssumeRole', + Effect: 'Allow', + Principal: { + AWS: { + 'Fn::Join': ['', [ + 'arn:', { Ref: 'AWS::Partition' }, `:iam::${PIPELINE_ENV.account}:root`, + ]], + }, + }, + }, + ], + ); +}); + test('CodePipeline throws when key rotation is enabled without enabling cross account keys', ()=>{ const pipelineStack = new cdk.Stack(app, 'PipelineStack', { env: PIPELINE_ENV }); const repo = new ccommit.Repository(pipelineStack, 'Repo', { diff --git a/packages/aws-cdk-lib/pipelines/test/compliance/assets.test.ts b/packages/aws-cdk-lib/pipelines/test/compliance/assets.test.ts index 047963afb84ec..1f222fee6c439 100644 --- a/packages/aws-cdk-lib/pipelines/test/compliance/assets.test.ts +++ b/packages/aws-cdk-lib/pipelines/test/compliance/assets.test.ts @@ -396,17 +396,6 @@ describe('basic pipeline', () => { Service: 'codebuild.amazonaws.com', }, }, - { - Action: 'sts:AssumeRole', - Effect: 'Allow', - Principal: { - AWS: { - 'Fn::Join': ['', [ - 'arn:', { Ref: 'AWS::Partition' }, `:iam::${PIPELINE_ENV.account}:root`, - ]], - }, - }, - }, ], }, }); @@ -510,17 +499,6 @@ describe('basic pipeline', () => { Service: 'codebuild.amazonaws.com', }, }, - { - Action: 'sts:AssumeRole', - Effect: 'Allow', - Principal: { - AWS: { - 'Fn::Join': ['', [ - 'arn:', { Ref: 'AWS::Partition' }, `:iam::${PIPELINE_ENV.account}:root`, - ]], - }, - }, - }, ], }, }); diff --git a/packages/aws-cdk-lib/region-info/build-tools/fact-tables.ts b/packages/aws-cdk-lib/region-info/build-tools/fact-tables.ts index 8f2084adbbc9b..8a183a389dc21 100644 --- a/packages/aws-cdk-lib/region-info/build-tools/fact-tables.ts +++ b/packages/aws-cdk-lib/region-info/build-tools/fact-tables.ts @@ -125,22 +125,30 @@ export const ELBV2_ACCOUNTS: { [region: string]: string } = { 'us-west-2': '797873946194', }; -// https://aws.amazon.com/releasenotes/available-deep-learning-containers-images +// https://docs.aws.amazon.com/deep-learning-containers/latest/devguide/deep-learning-containers-images.html +// https://github.com/aws/deep-learning-containers/blob/master/available_images.md export const DLC_REPOSITORY_ACCOUNTS: { [region: string]: string } = { 'ap-east-1': '871362719292', 'ap-northeast-1': '763104351884', 'ap-northeast-2': '763104351884', 'ap-south-1': '763104351884', + 'ap-south-2': '772153158452', 'ap-southeast-1': '763104351884', 'ap-southeast-2': '763104351884', + 'ap-southeast-3': '907027046896', + 'ap-southeast-4': '457447274322', 'ca-central-1': '763104351884', 'cn-north-1': '727897471807', 'cn-northwest-1': '727897471807', 'eu-central-1': '763104351884', + 'eu-central-2': '380420809688', 'eu-north-1': '763104351884', + 'eu-south-1': '692866216735', + 'eu-south-2': '503227376785', 'eu-west-1': '763104351884', 'eu-west-2': '763104351884', 'eu-west-3': '763104351884', + 'me-central-1': '914824155844', 'me-south-1': '217643126080', 'sa-east-1': '763104351884', 'us-east-1': '763104351884', diff --git a/packages/aws-cdk/lib/api/evaluate-cloudformation-template.ts b/packages/aws-cdk/lib/api/evaluate-cloudformation-template.ts index 088e40b28f3b4..a3d416aaadc3d 100644 --- a/packages/aws-cdk/lib/api/evaluate-cloudformation-template.ts +++ b/packages/aws-cdk/lib/api/evaluate-cloudformation-template.ts @@ -504,6 +504,7 @@ const RESOURCE_TYPE_ATTRIBUTES_FORMATS: { [type: string]: { [attribute: string]: 'AWS::AppSync::GraphQLApi': { ApiId: appsyncGraphQlApiApiIdFmt }, 'AWS::AppSync::FunctionConfiguration': { FunctionId: appsyncGraphQlFunctionIDFmt }, 'AWS::AppSync::DataSource': { Name: appsyncGraphQlDataSourceNameFmt }, + 'AWS::KMS::Key': { Arn: stdSlashResourceArnFmt }, }; function iamArnFmt(parts: ArnParts): string { diff --git a/packages/aws-cdk/lib/api/util/template-body-parameter.ts b/packages/aws-cdk/lib/api/util/template-body-parameter.ts index 150675ac5924b..0b036cc2cd244 100644 --- a/packages/aws-cdk/lib/api/util/template-body-parameter.ts +++ b/packages/aws-cdk/lib/api/util/template-body-parameter.ts @@ -1,3 +1,4 @@ +import * as path from 'path'; import * as cxapi from '@aws-cdk/cx-api'; import * as chalk from 'chalk'; import * as fs from 'fs-extra'; @@ -68,7 +69,8 @@ export async function makeBodyParameter( if (overrideTemplate) { // Add a variant of this template templateFile = `${stack.templateFile}-${templateHash}.yaml`; - await fs.writeFile(templateFile, templateJson, { encoding: 'utf-8' }); + const templateFilePath = path.join(stack.assembly.directory, templateFile); + await fs.writeFile(templateFilePath, templateJson, { encoding: 'utf-8' }); } assetManifest.addFileAsset(templateHash, { diff --git a/packages/aws-cdk/lib/cli.ts b/packages/aws-cdk/lib/cli.ts index 708f9f5783677..2c15bb7b9949f 100644 --- a/packages/aws-cdk/lib/cli.ts +++ b/packages/aws-cdk/lib/cli.ts @@ -97,8 +97,8 @@ async function parseCommandLineArguments(args: string[]) { .command('bootstrap [ENVIRONMENTS..]', 'Deploys the CDK toolkit stack into an AWS environment', (yargs: Argv) => yargs .option('bootstrap-bucket-name', { type: 'string', alias: ['b', 'toolkit-bucket-name'], desc: 'The name of the CDK toolkit bucket; bucket will be created and must not exist', default: undefined }) .option('bootstrap-kms-key-id', { type: 'string', desc: 'AWS KMS master key ID used for the SSE-KMS encryption', default: undefined, conflicts: 'bootstrap-customer-key' }) - .option('example-permissions-boundary', { type: 'boolean', alias: ['epb', 'example-permissions-boundary'], desc: 'Use the example permissions boundary.', default: undefined, conflicts: 'custom-permissions-boundary' }) - .option('custom-permissions-boundary', { type: 'string', alias: ['cpb', 'custom-permissions-boundary'], desc: 'Use the permissions boundary specified by name.', default: undefined, conflicts: 'example-permissions-boundary' }) + .option('example-permissions-boundary', { type: 'boolean', alias: 'epb', desc: 'Use the example permissions boundary.', default: undefined, conflicts: 'custom-permissions-boundary' }) + .option('custom-permissions-boundary', { type: 'string', alias: 'cpb', desc: 'Use the permissions boundary specified by name.', default: undefined, conflicts: 'example-permissions-boundary' }) .option('bootstrap-customer-key', { type: 'boolean', desc: 'Create a Customer Master Key (CMK) for the bootstrap bucket (you will be charged but can customize permissions, modern bootstrapping only)', default: undefined, conflicts: 'bootstrap-kms-key-id' }) .option('qualifier', { type: 'string', desc: 'String which must be unique for each bootstrap stack. You must configure it on your CDK app if you change this from the default.', default: undefined }) .option('public-access-block-configuration', { type: 'boolean', desc: 'Block public access configuration on CDK toolkit bucket (enabled by default) ', default: undefined }) diff --git a/packages/aws-cdk/test/api/hotswap/state-machine-hotswap-deployments.test.ts b/packages/aws-cdk/test/api/hotswap/state-machine-hotswap-deployments.test.ts index 663542c84c48b..053e490502412 100644 --- a/packages/aws-cdk/test/api/hotswap/state-machine-hotswap-deployments.test.ts +++ b/packages/aws-cdk/test/api/hotswap/state-machine-hotswap-deployments.test.ts @@ -677,6 +677,69 @@ describe.each([HotswapMode.FALL_BACK, HotswapMode.HOTSWAP_ONLY])('%p mode', (hot }); }); + test('knows how to handle attributes of the AWS::KMS::Key resource', async () => { + // GIVEN + setup.setCurrentCfnStackTemplate({ + Resources: { + Key: { + Type: 'AWS::KMS::Key', + Properties: { + Description: 'magic-key', + }, + }, + Machine: { + Type: 'AWS::StepFunctions::StateMachine', + Properties: { + DefinitionString: '{}', + StateMachineName: 'my-machine', + }, + }, + }, + }); + setup.pushStackResourceSummaries( + setup.stackSummaryOf('Key', 'AWS::KMS::Key', 'a-key'), + ); + const cdkStackArtifact = setup.cdkStackArtifactOf({ + template: { + Resources: { + Key: { + Type: 'AWS::KMS::Key', + Properties: { + Description: 'magic-key', + }, + }, + Machine: { + Type: 'AWS::StepFunctions::StateMachine', + Properties: { + DefinitionString: { + 'Fn::Join': ['', [ + '{"KeyId":"', + { Ref: 'Key' }, + '","KeyArn":"', + { 'Fn::GetAtt': ['Key', 'Arn'] }, + '"}', + ]], + }, + StateMachineName: 'my-machine', + }, + }, + }, + }, + }); + + // THEN + const result = await hotswapMockSdkProvider.tryHotswapDeployment(hotswapMode, cdkStackArtifact); + + expect(result).not.toBeUndefined(); + expect(mockUpdateMachineDefinition).toHaveBeenCalledWith({ + stateMachineArn: 'arn:aws:states:here:123456789012:stateMachine:my-machine', + definition: JSON.stringify({ + KeyId: 'a-key', + KeyArn: 'arn:aws:kms:here:123456789012:key/a-key', + }), + }); + }); + test('does not explode if the DependsOn changes', async () => { // GIVEN setup.setCurrentCfnStackTemplate({ diff --git a/tools/@aws-cdk/prlint/lint.ts b/tools/@aws-cdk/prlint/lint.ts index e2c9e3bc0c60c..9097dd5516a4c 100644 --- a/tools/@aws-cdk/prlint/lint.ts +++ b/tools/@aws-cdk/prlint/lint.ts @@ -221,7 +221,7 @@ export class PullRequestLinter { */ private async deletePRLinterComment(): Promise { // Since previous versions of this pr linter didn't add comments, we need to do this check first. - const comment = await this.findExistingComment(); + const comment = await this.findExistingPRLinterComment(); if (comment) { await this.client.issues.deleteComment({ ...this.issueParams, @@ -266,7 +266,7 @@ export class PullRequestLinter { } const comments = await this.client.issues.listComments(this.issueParams); - if (comments.data.find(comment => comment.body?.includes("Exemption Request"))) { + if (comments.data.find(comment => comment.body?.toLowerCase().includes("exemption request"))) { body += '\n\n✅ A exemption request has been requested. Please wait for a maintainer\'s review.'; } await this.client.issues.createComment({ @@ -302,7 +302,7 @@ export class PullRequestLinter { * Finds existing review, if present * @returns Existing review, if present */ - private async findExistingReview(): Promise { + private async findExistingPRLinterReview(): Promise { const reviews = await this.client.pulls.listReviews(this.prParams); return reviews.data.find((review) => review.user?.login === 'aws-cdk-automation' && review.state !== 'DISMISSED') as Review; } @@ -311,7 +311,7 @@ export class PullRequestLinter { * Finds existing comment from previous review, if present * @returns Existing comment, if present */ - private async findExistingComment(): Promise { + private async findExistingPRLinterComment(): Promise { const comments = await this.client.issues.listComments(this.issueParams); return comments.data.find((comment) => comment.user?.login === 'aws-cdk-automation' && comment.body?.startsWith('The pull request linter fails with the following errors:')) as Comment; } @@ -321,7 +321,7 @@ export class PullRequestLinter { * @param result The result of the PR Linter run. */ private async communicateResult(result: ValidationCollector): Promise { - const existingReview = await this.findExistingReview(); + const existingReview = await this.findExistingPRLinterReview(); if (result.isValid()) { console.log('✅ Success'); await this.dismissPRLinterReview(existingReview); @@ -341,6 +341,8 @@ export class PullRequestLinter { repo: this.prParams.repo, ref: sha, }); + let status = statuses.data.filter(status => status.context === CODE_BUILD_CONTEXT).map(status => status.state); + console.log("CodeBuild Commit Statuses: ", status); return statuses.data.some(status => status.context === CODE_BUILD_CONTEXT && status.state === 'success'); } @@ -419,6 +421,7 @@ export class PullRequestLinter { [review.user!.login]: newest, }; }, {} as Record); + console.log('raw data: ', JSON.stringify(reviewsByTrustedCommunityMembers)); const communityApproved = Object.values(reviewsByTrustedCommunityMembers).some(({state}) => state === 'APPROVED'); const communityRequestedChanges = !communityApproved && Object.values(reviewsByTrustedCommunityMembers).some(({state}) => state === 'CHANGES_REQUESTED') @@ -572,6 +575,7 @@ export class PullRequestLinter { ], }); + console.log("Deleting PR Linter Comment now"); await this.deletePRLinterComment(); try { await this.communicateResult(validationCollector); @@ -580,7 +584,9 @@ export class PullRequestLinter { // also assess whether the PR needs review or not try { const state = await this.codeBuildJobSucceeded(sha); + console.log(`PR code build job ${state ? "SUCCESSFUL" : "not yet successful"}`); if (state) { + console.log('Assessing if the PR needs a review now'); await this.assessNeedsReview(pr); } } catch (e) { diff --git a/version.v2.json b/version.v2.json index 780dcfb492497..ff56352639123 100644 --- a/version.v2.json +++ b/version.v2.json @@ -1,4 +1,4 @@ { - "version": "2.140.0", - "alphaVersion": "2.140.0-alpha.0" + "version": "2.141.0", + "alphaVersion": "2.141.0-alpha.0" } \ No newline at end of file