diff --git a/plugins/catalog-backend-module-aws/package.json b/plugins/catalog-backend-module-aws/package.json index 73bd5123d2..6cb50c917c 100644 --- a/plugins/catalog-backend-module-aws/package.json +++ b/plugins/catalog-backend-module-aws/package.json @@ -46,6 +46,9 @@ }, "dependencies": { "@aws-sdk/client-s3": "^3.208.0", + "@aws-sdk/credential-providers": "^3.326.0", + "@aws-sdk/middleware-endpoint": "^3.325.0", + "@aws-sdk/types": "^3.310.0", "@backstage/backend-common": "workspace:^", "@backstage/backend-plugin-api": "workspace:^", "@backstage/backend-tasks": "workspace:^", diff --git a/plugins/catalog-backend-module-aws/src/credentials/AwsCredentials.ts b/plugins/catalog-backend-module-aws/src/credentials/AwsCredentials.ts index fded78aed4..b707f0bc4e 100644 --- a/plugins/catalog-backend-module-aws/src/credentials/AwsCredentials.ts +++ b/plugins/catalog-backend-module-aws/src/credentials/AwsCredentials.ts @@ -14,8 +14,11 @@ * limitations under the License. */ -import aws, { Credentials } from 'aws-sdk'; -import { CredentialsOptions } from 'aws-sdk/lib/credentials'; +import { + AwsCredentialIdentity, + AwsCredentialIdentityProvider, +} from '@aws-sdk/types'; +import { fromTemporaryCredentials } from '@aws-sdk/credential-providers'; export class AwsCredentials { /** @@ -30,25 +33,25 @@ export class AwsCredentials { externalId?: string; }, roleSessionName: string, - ): Credentials | CredentialsOptions | undefined { + ): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined { if (!config) { return undefined; } const accessKeyId = config.accessKeyId; const secretAccessKey = config.secretAccessKey; - let explicitCredentials: Credentials | undefined; + let explicitCredentials: AwsCredentialIdentity | undefined; if (accessKeyId && secretAccessKey) { - explicitCredentials = new Credentials({ + explicitCredentials = { accessKeyId, secretAccessKey, - }); + }; } const roleArn = config.roleArn; if (roleArn) { - return new aws.ChainableTemporaryCredentials({ + return fromTemporaryCredentials({ masterCredentials: explicitCredentials, params: { RoleArn: roleArn, diff --git a/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.test.ts b/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.test.ts index 821fb6d4f4..70a03ad6ba 100644 --- a/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.test.ts +++ b/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.test.ts @@ -23,8 +23,8 @@ import { import { ConfigReader } from '@backstage/config'; import { EntityProviderConnection } from '@backstage/plugin-catalog-node'; import { AwsS3EntityProvider } from './AwsS3EntityProvider'; -import aws from 'aws-sdk'; -import AWSMock from 'aws-sdk-mock'; +import { mockClient } from 'aws-sdk-client-mock'; +import { ListObjectsV2Command, S3 } from '@aws-sdk/client-s3'; class PersistingTaskRunner implements TaskRunner { private tasks: TaskInvocationDefinition[] = []; @@ -42,38 +42,41 @@ class PersistingTaskRunner implements TaskRunner { const logger = getVoidLogger(); describe('AwsS3EntityProvider', () => { - AWSMock.setSDKInstance(aws); - const createObjectList = (keys: string[]): aws.S3.ObjectList => { + const createObjectList = (keys: string[]) => { const objects = keys.map(key => { return { Key: key, - } as aws.S3.Types.Object; + }; }); - - return objects as aws.S3.ObjectList; + return objects; }; const keys = ['key1.yaml', 'key2.yaml', 'key3.yaml', 'key 4.yaml']; + const mock = mockClient(S3); - AWSMock.mock('S3', 'listObjectsV2', async req => { - const prefix = req.Prefix ?? ''; + beforeEach(() => { + mock.reset(); + + mock.on(ListObjectsV2Command).callsFake(async req => { + const prefix = req.Prefix ?? ''; + + if (!req.ContinuationToken) { + return { + Contents: createObjectList( + keys + .slice(0, Math.ceil(keys.length / 2)) + .map(key => `${prefix}${key}`), + ), + NextContinuationToken: 'next-token', + }; + } - if (!req.ContinuationToken) { return { Contents: createObjectList( - keys - .slice(0, Math.ceil(keys.length / 2)) - .map(key => `${prefix}${key}`), + keys.slice(Math.ceil(keys.length / 2)).map(key => `${prefix}${key}`), ), - NextContinuationToken: 'next-token', - } as aws.S3.Types.ListObjectsV2Output; - } - - return { - Contents: createObjectList( - keys.slice(Math.ceil(keys.length / 2)).map(key => `${prefix}${key}`), - ), - } as aws.S3.Types.ListObjectsV2Output; + }; + }); }); afterEach(() => { @@ -103,7 +106,9 @@ describe('AwsS3EntityProvider', () => { }); const schedulingConfig: Record = {}; - + const normalizedExpectedBaseUrl = expectedBaseUrl.endsWith('/') + ? expectedBaseUrl + : `${expectedBaseUrl}/`; const schedule = new PersistingTaskRunner(); const entityProviderConnection: EntityProviderConnection = { applyMutation: jest.fn(), @@ -131,7 +136,7 @@ describe('AwsS3EntityProvider', () => { await (taskDef.fn as () => Promise)(); const expectedEntities = keys.map(key => { - const url = encodeURI(`${expectedBaseUrl}${key}`); + const url = encodeURI(`${normalizedExpectedBaseUrl}${key}`); return { entity: { apiVersion: 'backstage.io/v1alpha1', @@ -161,6 +166,25 @@ describe('AwsS3EntityProvider', () => { // eslint-disable-next-line jest/expect-expect it('apply full update on scheduled execution', async () => { + return expectMutation( + 'regionalStatic', + { + bucketName: 'bucket-1', + prefix: 'sub/dir/', + region: 'eu-west-1', + }, + 'https://bucket-1.s3.eu-west-1.amazonaws.com/sub/dir/', + { + 'key1.yaml': 'generated-8ece85ad90200c6577b99f553dcbedde05fa34bb', + 'key2.yaml': 'generated-6b54c6aaa44696f5e91ce0f54fb27bf837549d11', + 'key3.yaml': 'generated-88c703cf1aa66913db4033b029adc0b174574646', + 'key 4.yaml': 'generated-2b7e068bb4ec818c14f179a1e721843fc2dbc5f9', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('apply full update on scheduled execution force path style', async () => { return expectMutation( 'regionalStatic', { @@ -175,11 +199,72 @@ describe('AwsS3EntityProvider', () => { 'key3.yaml': 'generated-8d75f78ed9fa618ce433b226dc24eeab441f3a2d', 'key 4.yaml': 'generated-1e0249dcb5805fc2ce6ac2d3c4d2a3ef4f1270c0', }, + { + s3ForcePathStyle: true, + }, ); }); // eslint-disable-next-line jest/expect-expect - it('us-east-1 has region-less URLs', async () => { + it('apply full update on scheduled execution no prefix', async () => { + return expectMutation( + 'regionalStatic', + { + bucketName: 'bucket-1', + region: 'eu-west-1', + }, + 'https://bucket-1.s3.eu-west-1.amazonaws.com/', + { + 'key1.yaml': 'generated-ac6d99e56e0fbd6bf3719a5182f37bfa84b1cddc', + 'key2.yaml': 'generated-cc3e1145496cd95bf3898687bb5b7d2991a7b7fd', + 'key3.yaml': 'generated-a197557b0cb89d14ac1297231ed930bd4c40b664', + 'key 4.yaml': 'generated-a774e6c1d1c7ee511b7d79ebb99b08a39cf439c4', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('apply full update on scheduled execution force path style no prefix', async () => { + return expectMutation( + 'regionalStatic', + { + bucketName: 'bucket-1', + region: 'eu-west-1', + }, + 'https://s3.eu-west-1.amazonaws.com/bucket-1', + { + 'key1.yaml': 'generated-b390cd4de7ff00f6d51426870fc0e685029fbf09', + 'key2.yaml': 'generated-15ebeb1e53ffe71ea93f037076aefcdc5cc5e617', + 'key3.yaml': 'generated-fd0a33e70bafd707a60139decbd0383361ab3b4e', + 'key 4.yaml': 'generated-ac574fb266d9c8bd983b25a208c538e4ad2c1d06', + }, + { + s3ForcePathStyle: true, + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('apply full update on scheduled execution bucket with dot in it', async () => { + return expectMutation( + 'regionalStatic', + { + bucketName: 'bucket.1', + prefix: 'sub/dir/', + region: 'eu-west-1', + }, + 'https://s3.eu-west-1.amazonaws.com/bucket.1/sub/dir/', + { + 'key1.yaml': 'generated-651b5851d4670b7d5bb9a319d8f6eb295092e4ad', + 'key2.yaml': 'generated-ccddcdc3ad814aea072883118f3a9d0ac39a161e', + 'key3.yaml': 'generated-b2b8548903aa764544ab79dc81ab5093e6e4ba83', + 'key 4.yaml': 'generated-aafa9cc0422f5e8ccce1616dc0c74fa94f692af3', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('us-east-1 does not have region-less URLs', async () => { return expectMutation( 'usEast1', { @@ -187,12 +272,12 @@ describe('AwsS3EntityProvider', () => { prefix: 'sub/dir/', region: 'us-east-1', }, - 'https://s3.amazonaws.com/bucket-1/sub/dir/', + 'https://bucket-1.s3.us-east-1.amazonaws.com/sub/dir/', { - 'key1.yaml': 'generated-f7e3f1c89f62cbf0d82db16452faaa7c040fc331', - 'key2.yaml': 'generated-925173f7dba1acaa73cac5ef4d10c3ed7660aa25', - 'key3.yaml': 'generated-d94cf017911ed7fb3be4a62a3dae1f5202879de3', - 'key 4.yaml': 'generated-f917fca0cfacc2be478ca2a3cff94d00917a1cde', + 'key1.yaml': 'generated-980e6ad47fbfbfeead708a9c7c87331b7540296a', + 'key2.yaml': 'generated-266794d8e789089dddba2b42cd79e70b149aa61c', + 'key3.yaml': 'generated-96f0cdcd7e33aa687c19d160ec7d5b1975cb9ea1', + 'key 4.yaml': 'generated-4f6d3ffb232e4a5b82c3a52549e4c36dab1c2f8d', }, ); }); @@ -209,18 +294,60 @@ describe('AwsS3EntityProvider', () => { bucketName: 'bucket-1', prefix: 'sub/dir/', }, - 'https://s3.eu-central-1.amazonaws.com/bucket-1/sub/dir/', + 'https://bucket-1.s3.eu-central-1.amazonaws.com/sub/dir/', { - 'key1.yaml': 'generated-285d144b5c1e24e801b97f61f794d566dabc7236', - 'key2.yaml': 'generated-36b78d7fa69690059797d4cc4f40c2a5eaed1d6d', - 'key3.yaml': 'generated-a39ad804bf65993cbc0f3810ff128a3c91daf768', - 'key 4.yaml': 'generated-bd7622ac86c313cb812d90e335b2f5f6bff14670', + 'key1.yaml': 'generated-bb17a9f9b420edd93137692f000b2d443a29239c', + 'key2.yaml': 'generated-b4559ecc8b615407e421dbaa3fcb9338e977b8ac', + 'key3.yaml': 'generated-bb3d500a6f8b351b0eed1aec77ebce65c1ab41fb', + 'key 4.yaml': 'generated-686de87f5882f6558b43280c5b6047e485199e88', }, ); }); // eslint-disable-next-line jest/expect-expect it('custom endpoint', async () => { + return expectMutation( + 'customEndpoint', + { + bucketName: 'bucket-1', + prefix: 'sub/dir/', + }, + 'http://bucket-1.localhost:1234/sub/dir/', + { + 'key1.yaml': 'generated-79625971ead9c39c91b0bfef4d7c748325e31234', + 'key2.yaml': 'generated-eeae95f16605d3afdc615436c18c9fbd35781299', + 'key3.yaml': 'generated-692976561563c3fa55889ad090363716c7b7e915', + 'key 4.yaml': 'generated-c8f92ea0eb96c355b7e56cbc461cef29f830747e', + }, + { + endpoint: 'http://localhost:1234/', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('custom endpoint bucket dot', async () => { + return expectMutation( + 'customEndpoint', + { + bucketName: 'bucket.1', + prefix: 'sub/dir/', + }, + 'http://localhost:1234/bucket.1/sub/dir/', + { + 'key1.yaml': 'generated-07be77ac8626ac76a924414e0edf5ce66d3e0b27', + 'key2.yaml': 'generated-47295ada3c894cf9bac0d570a34d909244ea2f74', + 'key3.yaml': 'generated-30e98f3ebd350f3b618acd024199b5f31545495d', + 'key 4.yaml': 'generated-b71bc7661b92cef0db62c9652912fd5e4b245aa7', + }, + { + endpoint: 'http://localhost:1234/', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('custom endpoint force path style', async () => { return expectMutation( 'customEndpoint', { @@ -235,7 +362,8 @@ describe('AwsS3EntityProvider', () => { 'key 4.yaml': 'generated-659f17a2429f107db04850f9081e3e9c56084aeb', }, { - endpoint: 'http://localhost:1234', + endpoint: 'http://localhost:1234/', + s3ForcePathStyle: true, }, ); }); @@ -305,12 +433,12 @@ describe('AwsS3EntityProvider', () => { }, }, }, - 'https://s3.eu-west-1.amazonaws.com/bucket-1/sub/dir/', + 'https://bucket-1.s3.eu-west-1.amazonaws.com/sub/dir/', { - 'key1.yaml': 'generated-7f6d5861b0b3401a38b5fe62e6c7ca11da5fd6d8', - 'key2.yaml': 'generated-a290be145586042af7d80715626399c9d661718d', - 'key3.yaml': 'generated-8d75f78ed9fa618ce433b226dc24eeab441f3a2d', - 'key 4.yaml': 'generated-1e0249dcb5805fc2ce6ac2d3c4d2a3ef4f1270c0', + 'key1.yaml': 'generated-8ece85ad90200c6577b99f553dcbedde05fa34bb', + 'key2.yaml': 'generated-6b54c6aaa44696f5e91ce0f54fb27bf837549d11', + 'key3.yaml': 'generated-88c703cf1aa66913db4033b029adc0b174574646', + 'key 4.yaml': 'generated-2b7e068bb4ec818c14f179a1e721843fc2dbc5f9', }, undefined, true, diff --git a/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.ts b/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.ts index 8212f9279a..68c1023244 100644 --- a/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.ts +++ b/plugins/catalog-backend-module-aws/src/providers/AwsS3EntityProvider.ts @@ -26,10 +26,15 @@ import { LocationSpec } from '@backstage/plugin-catalog-common'; import { AwsCredentials } from '../credentials/AwsCredentials'; import { readAwsS3Configs } from './config'; import { AwsS3Config } from './types'; -import { S3 } from 'aws-sdk'; -import { ListObjectsV2Output } from 'aws-sdk/clients/s3'; +import { + ListObjectsCommand, + ListObjectsV2Command, + ListObjectsV2Output, + S3, +} from '@aws-sdk/client-s3'; import * as uuid from 'uuid'; import { Logger } from 'winston'; +import { getEndpointFromInstructions } from '@aws-sdk/middleware-endpoint'; // TODO: event-based updates using S3 events (+ queue like SQS)? /** @@ -44,6 +49,7 @@ export class AwsS3EntityProvider implements EntityProvider { private readonly s3: S3; private readonly scheduleFn: () => Promise; private connection?: EntityProviderConnection; + private endpoint?: string; static fromConfig( configRoot: Config, @@ -110,9 +116,8 @@ export class AwsS3EntityProvider implements EntityProvider { ), endpoint: integration.config.endpoint, region: this.config.region, - s3ForcePathStyle: integration.config.s3ForcePathStyle, + forcePathStyle: integration.config.s3ForcePathStyle, }); - this.scheduleFn = this.createScheduleFn(taskRunner); } @@ -146,6 +151,18 @@ export class AwsS3EntityProvider implements EntityProvider { /** {@inheritdoc @backstage/plugin-catalog-backend#EntityProvider.connect} */ async connect(connection: EntityProviderConnection): Promise { this.connection = connection; + // https://github.com/aws/aws-sdk-js-v3/issues/4122#issuecomment-1298968804 + const endpoint = await getEndpointFromInstructions( + { + Bucket: this.config.bucketName, + }, + ListObjectsV2Command, + this.s3.config as unknown as Record, + ); + if (endpoint?.url) + this.endpoint = endpoint.url.href.endsWith('/') + ? endpoint.url.href + : `${endpoint.url.href}/`; await this.scheduleFn(); } @@ -180,13 +197,12 @@ export class AwsS3EntityProvider implements EntityProvider { let continuationToken: string | undefined = undefined; let output: ListObjectsV2Output; do { - const request = this.s3.listObjectsV2({ + output = await this.s3.listObjectsV2({ Bucket: this.config.bucketName, ContinuationToken: continuationToken, Prefix: this.config.prefix, }); - output = await request.promise(); if (output.Contents) { output.Contents.forEach(item => { if (item.Key && !item.Key.endsWith('/')) { @@ -209,9 +225,6 @@ export class AwsS3EntityProvider implements EntityProvider { } private createObjectUrl(key: string): string { - const bucketName = this.config.bucketName; - const endpoint = this.s3.endpoint.href; - - return encodeURI(`${endpoint}${bucketName}/${key}`); + return new URL(key, this.endpoint).href; } } diff --git a/yarn.lock b/yarn.lock index e7e8717ff7..fd9bb5738c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -550,46 +550,46 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/client-cognito-identity@npm:3.312.0": - version: 3.312.0 - resolution: "@aws-sdk/client-cognito-identity@npm:3.312.0" +"@aws-sdk/client-cognito-identity@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/client-cognito-identity@npm:3.327.0" dependencies: "@aws-crypto/sha256-browser": 3.0.0 "@aws-crypto/sha256-js": 3.0.0 - "@aws-sdk/client-sts": 3.312.0 + "@aws-sdk/client-sts": 3.327.0 "@aws-sdk/config-resolver": 3.310.0 - "@aws-sdk/credential-provider-node": 3.310.0 + "@aws-sdk/credential-provider-node": 3.327.0 "@aws-sdk/fetch-http-handler": 3.310.0 "@aws-sdk/hash-node": 3.310.0 "@aws-sdk/invalid-dependency": 3.310.0 - "@aws-sdk/middleware-content-length": 3.310.0 - "@aws-sdk/middleware-endpoint": 3.310.0 - "@aws-sdk/middleware-host-header": 3.310.0 - "@aws-sdk/middleware-logger": 3.310.0 - "@aws-sdk/middleware-recursion-detection": 3.310.0 - "@aws-sdk/middleware-retry": 3.310.0 - "@aws-sdk/middleware-serde": 3.310.0 - "@aws-sdk/middleware-signing": 3.310.0 - "@aws-sdk/middleware-stack": 3.310.0 - "@aws-sdk/middleware-user-agent": 3.310.0 + "@aws-sdk/middleware-content-length": 3.325.0 + "@aws-sdk/middleware-endpoint": 3.325.0 + "@aws-sdk/middleware-host-header": 3.325.0 + "@aws-sdk/middleware-logger": 3.325.0 + "@aws-sdk/middleware-recursion-detection": 3.325.0 + "@aws-sdk/middleware-retry": 3.327.0 + "@aws-sdk/middleware-serde": 3.325.0 + "@aws-sdk/middleware-signing": 3.325.0 + "@aws-sdk/middleware-stack": 3.325.0 + "@aws-sdk/middleware-user-agent": 3.327.0 "@aws-sdk/node-config-provider": 3.310.0 - "@aws-sdk/node-http-handler": 3.310.0 + "@aws-sdk/node-http-handler": 3.321.1 "@aws-sdk/protocol-http": 3.310.0 - "@aws-sdk/smithy-client": 3.310.0 + "@aws-sdk/smithy-client": 3.325.0 "@aws-sdk/types": 3.310.0 "@aws-sdk/url-parser": 3.310.0 "@aws-sdk/util-base64": 3.310.0 "@aws-sdk/util-body-length-browser": 3.310.0 "@aws-sdk/util-body-length-node": 3.310.0 - "@aws-sdk/util-defaults-mode-browser": 3.310.0 - "@aws-sdk/util-defaults-mode-node": 3.310.0 - "@aws-sdk/util-endpoints": 3.310.0 - "@aws-sdk/util-retry": 3.310.0 + "@aws-sdk/util-defaults-mode-browser": 3.325.0 + "@aws-sdk/util-defaults-mode-node": 3.325.0 + "@aws-sdk/util-endpoints": 3.327.0 + "@aws-sdk/util-retry": 3.327.0 "@aws-sdk/util-user-agent-browser": 3.310.0 "@aws-sdk/util-user-agent-node": 3.310.0 "@aws-sdk/util-utf8": 3.310.0 tslib: ^2.5.0 - checksum: 1bbd307c899e112bc265927e052afebe7e25d111fce8e765c85c40a84152910549dd25d9d8f4cb0561773f9be72c5a71f0ff9577582f61ee30e27d4188dc06d5 + checksum: f10114634112c0c0e06f9091724b770bc0030d7527a6302318a1ab4052b5e9e61b0907c017e0c0554d25c2f28913ed5ce6546b8746e760ea68b1bec069479dba languageName: node linkType: hard @@ -741,6 +741,46 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/client-sso-oidc@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/client-sso-oidc@npm:3.327.0" + dependencies: + "@aws-crypto/sha256-browser": 3.0.0 + "@aws-crypto/sha256-js": 3.0.0 + "@aws-sdk/config-resolver": 3.310.0 + "@aws-sdk/fetch-http-handler": 3.310.0 + "@aws-sdk/hash-node": 3.310.0 + "@aws-sdk/invalid-dependency": 3.310.0 + "@aws-sdk/middleware-content-length": 3.325.0 + "@aws-sdk/middleware-endpoint": 3.325.0 + "@aws-sdk/middleware-host-header": 3.325.0 + "@aws-sdk/middleware-logger": 3.325.0 + "@aws-sdk/middleware-recursion-detection": 3.325.0 + "@aws-sdk/middleware-retry": 3.327.0 + "@aws-sdk/middleware-serde": 3.325.0 + "@aws-sdk/middleware-stack": 3.325.0 + "@aws-sdk/middleware-user-agent": 3.327.0 + "@aws-sdk/node-config-provider": 3.310.0 + "@aws-sdk/node-http-handler": 3.321.1 + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/smithy-client": 3.325.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/url-parser": 3.310.0 + "@aws-sdk/util-base64": 3.310.0 + "@aws-sdk/util-body-length-browser": 3.310.0 + "@aws-sdk/util-body-length-node": 3.310.0 + "@aws-sdk/util-defaults-mode-browser": 3.325.0 + "@aws-sdk/util-defaults-mode-node": 3.325.0 + "@aws-sdk/util-endpoints": 3.327.0 + "@aws-sdk/util-retry": 3.327.0 + "@aws-sdk/util-user-agent-browser": 3.310.0 + "@aws-sdk/util-user-agent-node": 3.310.0 + "@aws-sdk/util-utf8": 3.310.0 + tslib: ^2.5.0 + checksum: b1d548f46df45423ac42abfd527081b9ca933c0bb62003981450d133a3ab86a87aaa794ededbf4ee7bcfdeff275b462e01f9960c56d24b9b64610e4cb6f1aca1 + languageName: node + linkType: hard + "@aws-sdk/client-sso@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/client-sso@npm:3.310.0" @@ -781,7 +821,47 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/client-sts@npm:3.312.0, @aws-sdk/client-sts@npm:^3.208.0": +"@aws-sdk/client-sso@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/client-sso@npm:3.327.0" + dependencies: + "@aws-crypto/sha256-browser": 3.0.0 + "@aws-crypto/sha256-js": 3.0.0 + "@aws-sdk/config-resolver": 3.310.0 + "@aws-sdk/fetch-http-handler": 3.310.0 + "@aws-sdk/hash-node": 3.310.0 + "@aws-sdk/invalid-dependency": 3.310.0 + "@aws-sdk/middleware-content-length": 3.325.0 + "@aws-sdk/middleware-endpoint": 3.325.0 + "@aws-sdk/middleware-host-header": 3.325.0 + "@aws-sdk/middleware-logger": 3.325.0 + "@aws-sdk/middleware-recursion-detection": 3.325.0 + "@aws-sdk/middleware-retry": 3.327.0 + "@aws-sdk/middleware-serde": 3.325.0 + "@aws-sdk/middleware-stack": 3.325.0 + "@aws-sdk/middleware-user-agent": 3.327.0 + "@aws-sdk/node-config-provider": 3.310.0 + "@aws-sdk/node-http-handler": 3.321.1 + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/smithy-client": 3.325.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/url-parser": 3.310.0 + "@aws-sdk/util-base64": 3.310.0 + "@aws-sdk/util-body-length-browser": 3.310.0 + "@aws-sdk/util-body-length-node": 3.310.0 + "@aws-sdk/util-defaults-mode-browser": 3.325.0 + "@aws-sdk/util-defaults-mode-node": 3.325.0 + "@aws-sdk/util-endpoints": 3.327.0 + "@aws-sdk/util-retry": 3.327.0 + "@aws-sdk/util-user-agent-browser": 3.310.0 + "@aws-sdk/util-user-agent-node": 3.310.0 + "@aws-sdk/util-utf8": 3.310.0 + tslib: ^2.5.0 + checksum: 90ab140704f4c50ca0ca35555929538ee068ad354d17070825d13aa3c3c6a9473e1f49363e5100a2e5f5c509778dd439c1401618bedfa37009dd7a108ab88384 + languageName: node + linkType: hard + +"@aws-sdk/client-sts@npm:3.312.0": version: 3.312.0 resolution: "@aws-sdk/client-sts@npm:3.312.0" dependencies: @@ -825,6 +905,50 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/client-sts@npm:3.327.0, @aws-sdk/client-sts@npm:^3.208.0": + version: 3.327.0 + resolution: "@aws-sdk/client-sts@npm:3.327.0" + dependencies: + "@aws-crypto/sha256-browser": 3.0.0 + "@aws-crypto/sha256-js": 3.0.0 + "@aws-sdk/config-resolver": 3.310.0 + "@aws-sdk/credential-provider-node": 3.327.0 + "@aws-sdk/fetch-http-handler": 3.310.0 + "@aws-sdk/hash-node": 3.310.0 + "@aws-sdk/invalid-dependency": 3.310.0 + "@aws-sdk/middleware-content-length": 3.325.0 + "@aws-sdk/middleware-endpoint": 3.325.0 + "@aws-sdk/middleware-host-header": 3.325.0 + "@aws-sdk/middleware-logger": 3.325.0 + "@aws-sdk/middleware-recursion-detection": 3.325.0 + "@aws-sdk/middleware-retry": 3.327.0 + "@aws-sdk/middleware-sdk-sts": 3.326.0 + "@aws-sdk/middleware-serde": 3.325.0 + "@aws-sdk/middleware-signing": 3.325.0 + "@aws-sdk/middleware-stack": 3.325.0 + "@aws-sdk/middleware-user-agent": 3.327.0 + "@aws-sdk/node-config-provider": 3.310.0 + "@aws-sdk/node-http-handler": 3.321.1 + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/smithy-client": 3.325.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/url-parser": 3.310.0 + "@aws-sdk/util-base64": 3.310.0 + "@aws-sdk/util-body-length-browser": 3.310.0 + "@aws-sdk/util-body-length-node": 3.310.0 + "@aws-sdk/util-defaults-mode-browser": 3.325.0 + "@aws-sdk/util-defaults-mode-node": 3.325.0 + "@aws-sdk/util-endpoints": 3.327.0 + "@aws-sdk/util-retry": 3.327.0 + "@aws-sdk/util-user-agent-browser": 3.310.0 + "@aws-sdk/util-user-agent-node": 3.310.0 + "@aws-sdk/util-utf8": 3.310.0 + fast-xml-parser: 4.1.2 + tslib: ^2.5.0 + checksum: f77a8793f4c0112400fc1df5fe4a341575fce52c824b3b6598249a6235f12b31fcd13818e42047ea464c4e7b4718d59fdf7fe84438372226cdb43756a26ed4f8 + languageName: node + linkType: hard + "@aws-sdk/config-resolver@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/config-resolver@npm:3.310.0" @@ -837,15 +961,15 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/credential-provider-cognito-identity@npm:3.312.0": - version: 3.312.0 - resolution: "@aws-sdk/credential-provider-cognito-identity@npm:3.312.0" +"@aws-sdk/credential-provider-cognito-identity@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/credential-provider-cognito-identity@npm:3.327.0" dependencies: - "@aws-sdk/client-cognito-identity": 3.312.0 + "@aws-sdk/client-cognito-identity": 3.327.0 "@aws-sdk/property-provider": 3.310.0 "@aws-sdk/types": 3.310.0 tslib: ^2.5.0 - checksum: 4acd9f7bbd8cb9adabbd9b6465fe81f7bd47d5808b3a5fd3352e4e573a8ff718e56684e67631649f72d01078dc858278de1b5c227b8557d948d4c43abde99561 + checksum: 77d05451b0b38281a4804dda6ec5dfe979d888b983bfc52cc0628917ce05bceeb838ef11938a89a16cfdb83780fe7a84534f5525978b355faed3edad05d6bc80 languageName: node linkType: hard @@ -890,7 +1014,24 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/credential-provider-node@npm:3.310.0, @aws-sdk/credential-provider-node@npm:^3.208.0": +"@aws-sdk/credential-provider-ini@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/credential-provider-ini@npm:3.327.0" + dependencies: + "@aws-sdk/credential-provider-env": 3.310.0 + "@aws-sdk/credential-provider-imds": 3.310.0 + "@aws-sdk/credential-provider-process": 3.310.0 + "@aws-sdk/credential-provider-sso": 3.327.0 + "@aws-sdk/credential-provider-web-identity": 3.310.0 + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/shared-ini-file-loader": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 4ac7201c1720775318c3d1603451a904adeba7ce2eccd1c267fb49a1a317ede6440be5563747588c3bbd53b3226c9f870ce9c77bc83567e942f24afacf33d4a3 + languageName: node + linkType: hard + +"@aws-sdk/credential-provider-node@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/credential-provider-node@npm:3.310.0" dependencies: @@ -908,6 +1049,24 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/credential-provider-node@npm:3.327.0, @aws-sdk/credential-provider-node@npm:^3.208.0": + version: 3.327.0 + resolution: "@aws-sdk/credential-provider-node@npm:3.327.0" + dependencies: + "@aws-sdk/credential-provider-env": 3.310.0 + "@aws-sdk/credential-provider-imds": 3.310.0 + "@aws-sdk/credential-provider-ini": 3.327.0 + "@aws-sdk/credential-provider-process": 3.310.0 + "@aws-sdk/credential-provider-sso": 3.327.0 + "@aws-sdk/credential-provider-web-identity": 3.310.0 + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/shared-ini-file-loader": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 910ee138c4b5b2899df1a1a52e37ac0bcf6ba01bc480e55bdb6caafc0bf6f4f5bffd60669945ebca52bd35409ee78d76dcb7ea5d02fbfd949a6d6665ab31159c + languageName: node + linkType: hard + "@aws-sdk/credential-provider-process@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/credential-provider-process@npm:3.310.0" @@ -934,6 +1093,20 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/credential-provider-sso@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/credential-provider-sso@npm:3.327.0" + dependencies: + "@aws-sdk/client-sso": 3.327.0 + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/shared-ini-file-loader": 3.310.0 + "@aws-sdk/token-providers": 3.327.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 7fd9abaeb501122af650a25682e10e60e9c53190f7ba775a1e48675a0cb9f2d96b9e5e364565853d708a39e0cc032161df39b8b5d274417f8a80844cbf2e8607 + languageName: node + linkType: hard + "@aws-sdk/credential-provider-web-identity@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/credential-provider-web-identity@npm:3.310.0" @@ -945,25 +1118,25 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/credential-providers@npm:^3.208.0": - version: 3.312.0 - resolution: "@aws-sdk/credential-providers@npm:3.312.0" +"@aws-sdk/credential-providers@npm:^3.208.0, @aws-sdk/credential-providers@npm:^3.326.0": + version: 3.327.0 + resolution: "@aws-sdk/credential-providers@npm:3.327.0" dependencies: - "@aws-sdk/client-cognito-identity": 3.312.0 - "@aws-sdk/client-sso": 3.310.0 - "@aws-sdk/client-sts": 3.312.0 - "@aws-sdk/credential-provider-cognito-identity": 3.312.0 + "@aws-sdk/client-cognito-identity": 3.327.0 + "@aws-sdk/client-sso": 3.327.0 + "@aws-sdk/client-sts": 3.327.0 + "@aws-sdk/credential-provider-cognito-identity": 3.327.0 "@aws-sdk/credential-provider-env": 3.310.0 "@aws-sdk/credential-provider-imds": 3.310.0 - "@aws-sdk/credential-provider-ini": 3.310.0 - "@aws-sdk/credential-provider-node": 3.310.0 + "@aws-sdk/credential-provider-ini": 3.327.0 + "@aws-sdk/credential-provider-node": 3.327.0 "@aws-sdk/credential-provider-process": 3.310.0 - "@aws-sdk/credential-provider-sso": 3.310.0 + "@aws-sdk/credential-provider-sso": 3.327.0 "@aws-sdk/credential-provider-web-identity": 3.310.0 "@aws-sdk/property-provider": 3.310.0 "@aws-sdk/types": 3.310.0 tslib: ^2.5.0 - checksum: d47501b81e3f37c50110a12f58491407c95bebfa341ed80040aeefab236a3496dc33100da244e1e4467d2e2d62be19faec04f2e52a236a5c5ec2e1feeb12ceee + checksum: 92919099c59a82d329b7d797b666e6ac9b899903611c0ee4efb44115781bdb78b51bc7257db0be54ae697937d921aa7d19ab3f29c63ba899fec88d17f09a8f72 languageName: node linkType: hard @@ -1140,6 +1313,17 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-content-length@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-content-length@npm:3.325.0" + dependencies: + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 18dc5c75c2bed6b5864d0ecbc8c12c0ab94365f4d3be52335c7ad2263bbe3490d049718df99506ba7cc22194d35622d356f42be7ef149d9c740d7f09037f9d5c + languageName: node + linkType: hard + "@aws-sdk/middleware-endpoint@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-endpoint@npm:3.310.0" @@ -1153,6 +1337,19 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-endpoint@npm:3.325.0, @aws-sdk/middleware-endpoint@npm:^3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-endpoint@npm:3.325.0" + dependencies: + "@aws-sdk/middleware-serde": 3.325.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/url-parser": 3.310.0 + "@aws-sdk/util-middleware": 3.310.0 + tslib: ^2.5.0 + checksum: 1cda5c7e9a2fe1e26623e8c69c221937c6b36511ca4a1d5d7a93fdbf3130e6e30c3116509684dcc58d05bfb18272ce10b863979f37af1f67388d2f6c426dcf3e + languageName: node + linkType: hard + "@aws-sdk/middleware-expect-continue@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-expect-continue@npm:3.310.0" @@ -1190,6 +1387,17 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-host-header@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-host-header@npm:3.325.0" + dependencies: + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 3fec43e7a791d1a3ceed0d7f541cea98dfbb629850c96c077c16d920645e8270ba418e1030b68ff5d145609a59358f9d66ff5f6f0c012543802b1adb65ba8c4f + languageName: node + linkType: hard + "@aws-sdk/middleware-location-constraint@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-location-constraint@npm:3.310.0" @@ -1210,6 +1418,16 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-logger@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-logger@npm:3.325.0" + dependencies: + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 7d6d166a03d4915261f44462eb179d5cfc3109280adbf13a5452816ea06944279e5319c8d1787ed49d98f8d20c34e67bedf1650d0b729d49800b6b3f78c001cc + languageName: node + linkType: hard + "@aws-sdk/middleware-recursion-detection@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-recursion-detection@npm:3.310.0" @@ -1221,6 +1439,17 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-recursion-detection@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-recursion-detection@npm:3.325.0" + dependencies: + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 28449f6ce29d0ef1aeddcecf6b14584dd6a71ec50d747ae765b0002b8052e71d64e6870bea8d727fcba1ae29dc762d55925b9f3010025a9145e3edb755580b5c + languageName: node + linkType: hard + "@aws-sdk/middleware-retry@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-retry@npm:3.310.0" @@ -1236,6 +1465,21 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-retry@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/middleware-retry@npm:3.327.0" + dependencies: + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/service-error-classification": 3.327.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/util-middleware": 3.310.0 + "@aws-sdk/util-retry": 3.327.0 + tslib: ^2.5.0 + uuid: ^8.3.2 + checksum: 9b3b627712dfec8f4e6c0bd146d779df320e169e7d85e166f16c4277c598d3f94d0fe7f476c8b6596e6895848dea371c98af3ddb2d7493b0244903f0f4613d01 + languageName: node + linkType: hard + "@aws-sdk/middleware-sdk-s3@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-sdk-s3@npm:3.310.0" @@ -1271,6 +1515,17 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-sdk-sts@npm:3.326.0": + version: 3.326.0 + resolution: "@aws-sdk/middleware-sdk-sts@npm:3.326.0" + dependencies: + "@aws-sdk/middleware-signing": 3.325.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: c80834ccdceeafa0881d8c3757a54e4aff045d136ac4cc88a1c1b0809a8e2ae73f73a4ab11c7c807985f017e21edd7c2123ce44b05ba5c75640474dfbb095c04 + languageName: node + linkType: hard + "@aws-sdk/middleware-serde@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-serde@npm:3.310.0" @@ -1281,6 +1536,16 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-serde@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-serde@npm:3.325.0" + dependencies: + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: d1a9a7cdae6e85f242c4414f1c3d836b5fd3832d447d2e851545c280e1cbc6f50e9d4afe34c86aed44f3b2c0eec8409125044bb2995ff2c075a316179b759f8a + languageName: node + linkType: hard + "@aws-sdk/middleware-signing@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-signing@npm:3.310.0" @@ -1295,6 +1560,20 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-signing@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-signing@npm:3.325.0" + dependencies: + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/signature-v4": 3.310.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/util-middleware": 3.310.0 + tslib: ^2.5.0 + checksum: 9c952ccf93066e89eaf5898e53c55bb88d2bbc74fe22cf6c86e6b26d3d1931e60f27b68b88922988083d285ea4fb2ff3409d6d987605fc0ab4a88fffd5dc8fc5 + languageName: node + linkType: hard + "@aws-sdk/middleware-ssec@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-ssec@npm:3.310.0" @@ -1314,6 +1593,15 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-stack@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/middleware-stack@npm:3.325.0" + dependencies: + tslib: ^2.5.0 + checksum: 182864eab3859bc677d7ba1ba2c76b46bfe39adb13fcc833fa0579e33ead94ecd76474ce2a12c0bae2bf434090a30a848541d320c232066dc524ebfccb9dd2f9 + languageName: node + linkType: hard + "@aws-sdk/middleware-user-agent@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/middleware-user-agent@npm:3.310.0" @@ -1326,6 +1614,18 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/middleware-user-agent@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/middleware-user-agent@npm:3.327.0" + dependencies: + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/types": 3.310.0 + "@aws-sdk/util-endpoints": 3.327.0 + tslib: ^2.5.0 + checksum: 5ce3018f7f052402f10649f6963cf975374ceadb245784ca833c8aae4579bf5019d5bc1abee249d58fa5e7d9426ab1e75063e2860b02adfc6e30b363a55e5dd6 + languageName: node + linkType: hard + "@aws-sdk/node-config-provider@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/node-config-provider@npm:3.310.0" @@ -1338,7 +1638,7 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/node-http-handler@npm:3.310.0, @aws-sdk/node-http-handler@npm:^3.208.0": +"@aws-sdk/node-http-handler@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/node-http-handler@npm:3.310.0" dependencies: @@ -1351,6 +1651,19 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/node-http-handler@npm:3.321.1, @aws-sdk/node-http-handler@npm:^3.208.0": + version: 3.321.1 + resolution: "@aws-sdk/node-http-handler@npm:3.321.1" + dependencies: + "@aws-sdk/abort-controller": 3.310.0 + "@aws-sdk/protocol-http": 3.310.0 + "@aws-sdk/querystring-builder": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: b8546b1b20572e1ca02d3792319967712b40c925e4e06f1fb098d70ce55e32a15e514d655e8809650349567e1f46056dbbc3fb9f55df1257c8619127ca01f8fe + languageName: node + linkType: hard + "@aws-sdk/property-provider@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/property-provider@npm:3.310.0" @@ -1399,6 +1712,13 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/service-error-classification@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/service-error-classification@npm:3.327.0" + checksum: d39a7729eecd22bbf3baaa60e47b4b7a7bdf282f1c6981b85d893e5819962e0951832deb8ddd826482551f5a98bc273f0550a5a5bc68bd3fe7362b20bcd69377 + languageName: node + linkType: hard + "@aws-sdk/shared-ini-file-loader@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/shared-ini-file-loader@npm:3.310.0" @@ -1452,6 +1772,17 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/smithy-client@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/smithy-client@npm:3.325.0" + dependencies: + "@aws-sdk/middleware-stack": 3.325.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: e056f0597dbb1e86d9ebcf64612eeec40a8326ecdd5d13400c2b3efd252f984bc27290cfde8b45d3062b3eed77e4958cc386c23a7bf937d0035061ebd2c0f545 + languageName: node + linkType: hard + "@aws-sdk/token-providers@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/token-providers@npm:3.310.0" @@ -1465,7 +1796,20 @@ __metadata: languageName: node linkType: hard -"@aws-sdk/types@npm:3.310.0, @aws-sdk/types@npm:^3.208.0, @aws-sdk/types@npm:^3.222.0": +"@aws-sdk/token-providers@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/token-providers@npm:3.327.0" + dependencies: + "@aws-sdk/client-sso-oidc": 3.327.0 + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/shared-ini-file-loader": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 67cc6c62df52763e9dbd3d9ee231f13c601f85d354b3ccfe582892d39fb819725c49c881c3a126e89714d77e7967e70fc023a8e275c18907a67168a2280a1787 + languageName: node + linkType: hard + +"@aws-sdk/types@npm:3.310.0, @aws-sdk/types@npm:^3.208.0, @aws-sdk/types@npm:^3.222.0, @aws-sdk/types@npm:^3.310.0": version: 3.310.0 resolution: "@aws-sdk/types@npm:3.310.0" dependencies: @@ -1553,6 +1897,18 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/util-defaults-mode-browser@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/util-defaults-mode-browser@npm:3.325.0" + dependencies: + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/types": 3.310.0 + bowser: ^2.11.0 + tslib: ^2.5.0 + checksum: d35bcdefa83476b67329df936902398e2f1171a908ac943e30c221adef7ee5b305f57044be0efe3717bd6c1a43f41b26534a43433adf1692197897949cef7fba + languageName: node + linkType: hard + "@aws-sdk/util-defaults-mode-node@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/util-defaults-mode-node@npm:3.310.0" @@ -1567,6 +1923,20 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/util-defaults-mode-node@npm:3.325.0": + version: 3.325.0 + resolution: "@aws-sdk/util-defaults-mode-node@npm:3.325.0" + dependencies: + "@aws-sdk/config-resolver": 3.310.0 + "@aws-sdk/credential-provider-imds": 3.310.0 + "@aws-sdk/node-config-provider": 3.310.0 + "@aws-sdk/property-provider": 3.310.0 + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 4a3a775dbfba1feede261ffe64b1caa3751375d73045eb7777eb369e5f5576bdf1c72b2a5c06d1145edebb5828a8d5705919613469653570bbb05b8b75e2d856 + languageName: node + linkType: hard + "@aws-sdk/util-endpoints@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/util-endpoints@npm:3.310.0" @@ -1577,6 +1947,16 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/util-endpoints@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/util-endpoints@npm:3.327.0" + dependencies: + "@aws-sdk/types": 3.310.0 + tslib: ^2.5.0 + checksum: 1247a311a591ceb9093932029fa53f8afea54854f36bd4e84f3a5695dc3214ff9c437bc14a08f4e1d131a2cc7153055382e9c303b38c11b6c2116628731ab7ba + languageName: node + linkType: hard + "@aws-sdk/util-hex-encoding@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/util-hex-encoding@npm:3.310.0" @@ -1614,6 +1994,16 @@ __metadata: languageName: node linkType: hard +"@aws-sdk/util-retry@npm:3.327.0": + version: 3.327.0 + resolution: "@aws-sdk/util-retry@npm:3.327.0" + dependencies: + "@aws-sdk/service-error-classification": 3.327.0 + tslib: ^2.5.0 + checksum: 6ecac86fdd24705ed3ff40d1772ea8b606ea5d5472aa90693cafc5ec53409243ce1ad8f95035d191673d41cf8b452d838dc3ef58383bc1261ad4ffbc245c7ce9 + languageName: node + linkType: hard + "@aws-sdk/util-stream-browser@npm:3.310.0": version: 3.310.0 resolution: "@aws-sdk/util-stream-browser@npm:3.310.0" @@ -5144,6 +5534,9 @@ __metadata: resolution: "@backstage/plugin-catalog-backend-module-aws@workspace:plugins/catalog-backend-module-aws" dependencies: "@aws-sdk/client-s3": ^3.208.0 + "@aws-sdk/credential-providers": ^3.326.0 + "@aws-sdk/middleware-endpoint": ^3.325.0 + "@aws-sdk/types": ^3.310.0 "@aws-sdk/util-stream-node": ^3.208.0 "@backstage/backend-common": "workspace:^" "@backstage/backend-plugin-api": "workspace:^"