diff --git a/README.md b/README.md
index ead4b6f..98cbc98 100644
--- a/README.md
+++ b/README.md
@@ -4,6 +4,46 @@ A service that can be installed into an Elsa Data environment
and which enables parallel file copying out into a
destination bucket in the same region.
+NOTE: this is a general purpose "S3 file copy" tool - so might
+be useful outside of Elsa Data. It can certainly be invoked
+directly as a Steps function independent of Elsa Data (all
+the Elsa Data does is sets up the input CSVs and then invokes
+the Steps function itself).
+
+## Development
+
+On check-out (once only) (note that `pre-commit` is presumed installed externally)
+
+```shell
+pre-commit install
+```
+
+For package installation (note that `pnpm` is presumed installed externally)
+
+```shell
+pnpm install
+```
+
+Edit the packages and deploy to dev
+
+```shell
+(in the dev folder)
+pnpm run deploy
+```
+
+## Testing
+
+Because this service is very dependent on the behaviour of AWS Steps
+(using distributed maps) - it was too complex to set up a "local" test
+that would actually test much of the pieces likely to fail.
+
+Instead, development is done and the CDK project is deployed to a "dev" account (noting
+that this sets the minimum dev cadence for trying changes
+to minutes rather than seconds).
+
+There is then a test script - that creates samples objects - and launches
+test invocations.
+
## Input
```json
diff --git a/dev/package.json b/dev/package.json
index fb8a0c7..db2c929 100644
--- a/dev/package.json
+++ b/dev/package.json
@@ -3,9 +3,18 @@
"private": true,
"version": "0.0.0",
"description": "Manual CDK deployment for development",
+ "scripts": {
+ "deploy": "pnpm -w run build && cdk deploy",
+ "destroy": "pnpm -w run build && cdk destroy",
+ "test": "ts-node --prefer-ts-exts test.ts",
+ "test-quick": "ts-node --prefer-ts-exts test.ts"
+ },
"dependencies": {
- "aws-cdk": "2.93.0",
- "aws-cdk-lib": "2.93.0",
+ "@aws-sdk/client-s3": "3.450.0",
+ "@aws-sdk/client-servicediscovery": "3.450.0",
+ "@aws-sdk/client-sfn": "3.450.0",
+ "aws-cdk": "2.108.1",
+ "aws-cdk-lib": "2.108.1",
"aws-copy-out-sharer": "link:../packages/aws-copy-out-sharer"
},
"devDependencies": {}
diff --git a/dev/test.ts b/dev/test.ts
index 97fe028..02bce22 100644
--- a/dev/test.ts
+++ b/dev/test.ts
@@ -1,26 +1,122 @@
-import { CopyOutStack } from "aws-copy-out-sharer";
-import { SubnetType } from "aws-cdk-lib/aws-ec2";
-import { App } from "aws-cdk-lib";
-
-const app = new App();
-
-const description =
- "Bulk copy-out service for Elsa Data - an application for controlled genomic data sharing";
-
-const devId = "ElsaDataDevCopyOutStack";
-
-new CopyOutStack(app, devId, {
- // the stack can only be deployed to 'dev'
- env: {
- account: "843407916570",
- region: "ap-southeast-2",
- },
- tags: {
- "umccr-org:Product": "ElsaData",
- "umccr-org:Stack": devId,
- },
- description: description,
- isDevelopment: true,
- infrastructureStackName: "ElsaDataDevInfrastructureStack",
- infrastructureSubnetSelection: SubnetType.PRIVATE_WITH_EGRESS,
-});
+import { randomBytes } from "crypto";
+import { S3Client, PutObjectCommand, StorageClass } from "@aws-sdk/client-s3";
+import { SFNClient, StartExecutionCommand } from "@aws-sdk/client-sfn";
+import {
+ DiscoverInstancesCommand,
+ ServiceDiscoveryClient,
+} from "@aws-sdk/client-servicediscovery";
+
+/**
+ * The only configurable item needed for the test cases - set this to a bucket you have
+ * full access to. Ideally the bucket should have a lifecycle that auto expires objects after 1 day.
+ */
+const TEST_BUCKET = "elsa-data-tmp";
+
+const discoveryClient = new ServiceDiscoveryClient({});
+const s3Client = new S3Client({});
+const sfnClient = new SFNClient({});
+
+const testFolder = randomBytes(16).toString("hex");
+const testFolderSrc = testFolder + "-src";
+const testFolderDest = testFolder + "-dest";
+
+async function makeObjectListCsv(key: string, keys: string[]) {
+ let content = "";
+ for (const k of keys) {
+ content += `${TEST_BUCKET},"${k}"\n`;
+ }
+ const response = await s3Client.send(
+ new PutObjectCommand({
+ Bucket: TEST_BUCKET,
+ Key: key,
+ Body: content,
+ }),
+ );
+}
+
+async function makeTestObject(
+ key: string,
+ sizeInBytes: number,
+ storageClass: StorageClass = "STANDARD",
+) {
+ const response = await s3Client.send(
+ new PutObjectCommand({
+ Bucket: TEST_BUCKET,
+ Key: key,
+ Body: "Hello S3!",
+ StorageClass: storageClass,
+ }),
+ );
+}
+
+async function createTestData() {
+ const sourceObjects = {
+ [`${testFolderSrc}/1.bin`]: StorageClass.STANDARD,
+ [`${testFolderSrc}/2.bin`]: StorageClass.STANDARD,
+ [`${testFolderSrc}/3.bin`]: StorageClass.GLACIER,
+ };
+
+ for (const [n, stor] of Object.entries(sourceObjects)) {
+ await makeTestObject(n, 1000, stor);
+ }
+
+ await makeObjectListCsv(
+ `${testFolderSrc}/objects-to-copy.tsv`,
+ Object.keys(sourceObjects),
+ );
+}
+
+(async () => {
+ console.log(`Src objects = ${TEST_BUCKET}:${testFolderSrc}`);
+ console.log(`Dest objects = ${TEST_BUCKET}:${testFolderDest}`);
+
+ const stepsDiscover = await discoveryClient.send(
+ new DiscoverInstancesCommand({
+ NamespaceName: "elsa-data",
+ ServiceName: "CopyOut",
+ }),
+ );
+
+ if (
+ !stepsDiscover ||
+ !stepsDiscover.Instances ||
+ stepsDiscover.Instances.length != 1
+ )
+ throw new Error(
+ "Did not discover the expected number of CopyOut instances in the Elsa Data CloudMap",
+ );
+
+ const stateMachineDiscovered = stepsDiscover?.Instances[0];
+
+ if (!stateMachineDiscovered.Attributes)
+ throw new Error(
+ "Did not discover state machine settings in CopyOut CloudMap",
+ );
+
+ const stateMachineArn = stateMachineDiscovered.Attributes["stateMachineArn"];
+
+ await createTestData();
+
+ /*await sfnClient.send(new StartExecutionCommand({
+ stateMachineArn: stateMachineArn,
+ input: JSON.stringify({
+ sourceFilesCsvBucket: TEST_BUCKET,
+ sourceFilesCsvKey: `${testFolderSrc}/objects-to-copy.tsv`,
+ destinationBucket: TEST_BUCKET,
+ maxItemsPerBatch: 1
+ })
+ }));*/
+
+ await sfnClient.send(
+ new StartExecutionCommand({
+ stateMachineArn: stateMachineArn,
+ input: JSON.stringify({
+ sourceFilesCsvBucket: TEST_BUCKET,
+ sourceFilesCsvKey: `${testFolderSrc}/objects-to-copy.tsv`,
+ destinationBucket: TEST_BUCKET,
+ destinationKey: testFolderDest,
+ maxItemsPerBatch: 1,
+ }),
+ }),
+ );
+})();
diff --git a/packages/aws-copy-out-sharer/construct/can-write-lambda-step-construct.ts b/packages/aws-copy-out-sharer/construct/can-write-lambda-step-construct.ts
index a8fd2be..da2b011 100644
--- a/packages/aws-copy-out-sharer/construct/can-write-lambda-step-construct.ts
+++ b/packages/aws-copy-out-sharer/construct/can-write-lambda-step-construct.ts
@@ -13,6 +13,16 @@ type CanWriteLambdaStepProps = {
vpcSubnetSelection: SubnetType;
requiredRegion: string;
+
+ /**
+ * If true, will allow this CanWrite lambda to test a bucket that is
+ * in the same account. Otherwise, and by default, the CanWrite lambda
+ * is set up to not be able to test a bucket in the same account as it
+ * is installed. This is a security mechanism as writes to buckets in the
+ * same account is allowed implicitly but is dangerous. This should only
+ * be set to true for development/testing.
+ */
+ allowWriteToThisAccount?: boolean;
};
/**
@@ -28,12 +38,16 @@ export class CanWriteLambdaStepConstruct extends Construct {
const canWriteLambda = new NodejsFunction(this, "CanWriteFunction", {
vpc: props.vpc,
- entry: join(__dirname, "can-write-lambda", "can-write-lambda.js"),
+ entry: join(__dirname, "can-write-lambda", "can-write-lambda.ts"),
// by specifying the precise runtime - the bundler knows exactly what packages are already in
// the base image - and for us can skip bundling @aws-sdk
- // if we need to move this forward to node 18+ - then we may need to revisit this
+ // if we need to move this forward beyond node 18 - then we may need to revisit this
runtime: Runtime.NODEJS_18_X,
handler: "handler",
+ bundling: {
+ externalModules: ["aws-sdk"],
+ minify: false,
+ },
vpcSubnets: {
subnetType: props.vpcSubnetSelection,
},
@@ -46,15 +60,17 @@ export class CanWriteLambdaStepConstruct extends Construct {
effect: Effect.ALLOW,
actions: ["s3:PutObject"],
resources: ["*"],
- conditions: {
- // yes - that's right - we want to give this lambda the ability to attempt the writes anywhere
- // EXCEPT where we are deployed
- // (under the assumption that buckets outside our account must be giving us explicit write permission,
- // whilst within our account we get implicit access - in this case we don't want that ability)
- StringNotEquals: {
- "s3:ResourceAccount": [Stack.of(this).account],
- },
- },
+ // yes - that's right - we want to give this lambda the ability to attempt the writes anywhere
+ // EXCEPT where we are deployed
+ // (under the assumption that buckets outside our account must be giving us explicit write permission,
+ // whilst within our account we get implicit access - in this case we don't want that ability)
+ conditions: props.allowWriteToThisAccount
+ ? undefined
+ : {
+ StringNotEquals: {
+ "s3:ResourceAccount": [Stack.of(this).account],
+ },
+ },
}),
);
diff --git a/packages/aws-copy-out-sharer/construct/can-write-lambda/can-write-lambda.ts b/packages/aws-copy-out-sharer/construct/can-write-lambda/can-write-lambda.ts
index e4646e6..c3e3836 100644
--- a/packages/aws-copy-out-sharer/construct/can-write-lambda/can-write-lambda.ts
+++ b/packages/aws-copy-out-sharer/construct/can-write-lambda/can-write-lambda.ts
@@ -1,18 +1,12 @@
-const { PutObjectCommand, S3Client } = require("@aws-sdk/client-s3");
+import { PutObjectCommand, S3Client } from "@aws-sdk/client-s3";
+import { AccessDeniedError, WrongRegionError } from "./errors";
-export const handler = async (event) => {
- function WrongRegionError(message) {
- this.name = "WrongRegionError";
- this.message = message;
- }
- WrongRegionError.prototype = new Error();
-
- function AccessDeniedError(message) {
- this.name = "AccessDeniedError";
- this.message = message;
- }
- AccessDeniedError.prototype = new Error();
+interface InvokeEvent {
+ requiredRegion: string;
+ destinationBucket: string;
+}
+export async function handler(event: InvokeEvent) {
console.log(event.requiredRegion);
console.log(event.destinationBucket);
@@ -27,8 +21,8 @@ export const handler = async (event) => {
Body: "A file created by Elsa Data copy out to ensure correct permissions",
});
- const response = await client.send(putCommand);
- } catch (e) {
+ await client.send(putCommand);
+ } catch (e: any) {
if (e.Code === "PermanentRedirect")
throw new WrongRegionError(
"S3 Put failed because bucket was in the wrong region",
@@ -39,7 +33,7 @@ export const handler = async (event) => {
throw e;
}
-};
+}
/*handler({
requiredRegion: "ap-southeast-2",
diff --git a/packages/aws-copy-out-sharer/construct/can-write-lambda/errors.ts b/packages/aws-copy-out-sharer/construct/can-write-lambda/errors.ts
index e69de29..d693553 100644
--- a/packages/aws-copy-out-sharer/construct/can-write-lambda/errors.ts
+++ b/packages/aws-copy-out-sharer/construct/can-write-lambda/errors.ts
@@ -0,0 +1,15 @@
+export class WrongRegionError extends Error {
+ constructor(message: string) {
+ super();
+ this.name = "WrongRegionError";
+ this.message = message;
+ }
+}
+
+export class AccessDeniedError extends Error {
+ constructor(message: string) {
+ super();
+ this.name = "AccessDeniedError";
+ this.message = message;
+ }
+}
diff --git a/packages/aws-copy-out-sharer/construct/can-write-lambda/package-lock.json b/packages/aws-copy-out-sharer/construct/can-write-lambda/package-lock.json
new file mode 100644
index 0000000..e84c5e8
--- /dev/null
+++ b/packages/aws-copy-out-sharer/construct/can-write-lambda/package-lock.json
@@ -0,0 +1,1438 @@
+{
+ "name": "can-write-lambda",
+ "version": "1.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "can-write-lambda",
+ "version": "1.0.0",
+ "dependencies": {
+ "@aws-sdk/client-s3": "3.405.0",
+ "@types/aws-lambda": "8.10.93"
+ }
+ },
+ "node_modules/@aws-crypto/crc32": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz",
+ "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==",
+ "dependencies": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/crc32/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/crc32c": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz",
+ "integrity": "sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==",
+ "dependencies": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/crc32c/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/ie11-detection": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
+ "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
+ "dependencies": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/sha1-browser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz",
+ "integrity": "sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==",
+ "dependencies": {
+ "@aws-crypto/ie11-detection": "^3.0.0",
+ "@aws-crypto/supports-web-crypto": "^3.0.0",
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/sha1-browser/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/sha256-browser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
+ "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
+ "dependencies": {
+ "@aws-crypto/ie11-detection": "^3.0.0",
+ "@aws-crypto/sha256-js": "^3.0.0",
+ "@aws-crypto/supports-web-crypto": "^3.0.0",
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/sha256-js": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
+ "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
+ "dependencies": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-js/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/supports-web-crypto": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
+ "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
+ "dependencies": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-crypto/util": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
+ "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
+ "dependencies": {
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/util/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
+ },
+ "node_modules/@aws-sdk/client-s3": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.405.0.tgz",
+ "integrity": "sha512-+LK6OCbKplR51zBZAtK/+RxaPsXcEklsA1+mmUA3M1h4KHl6GMiK5r/D9dlKht5DRntmmjCn3SI99QbfckqKXg==",
+ "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.405.0",
+ "@aws-sdk/credential-provider-node": "3.405.0",
+ "@aws-sdk/middleware-bucket-endpoint": "3.405.0",
+ "@aws-sdk/middleware-expect-continue": "3.398.0",
+ "@aws-sdk/middleware-flexible-checksums": "3.400.0",
+ "@aws-sdk/middleware-host-header": "3.398.0",
+ "@aws-sdk/middleware-location-constraint": "3.398.0",
+ "@aws-sdk/middleware-logger": "3.398.0",
+ "@aws-sdk/middleware-recursion-detection": "3.398.0",
+ "@aws-sdk/middleware-sdk-s3": "3.398.0",
+ "@aws-sdk/middleware-signing": "3.398.0",
+ "@aws-sdk/middleware-ssec": "3.398.0",
+ "@aws-sdk/middleware-user-agent": "3.398.0",
+ "@aws-sdk/signature-v4-multi-region": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-endpoints": "3.398.0",
+ "@aws-sdk/util-user-agent-browser": "3.398.0",
+ "@aws-sdk/util-user-agent-node": "3.405.0",
+ "@aws-sdk/xml-builder": "3.310.0",
+ "@smithy/config-resolver": "^2.0.5",
+ "@smithy/eventstream-serde-browser": "^2.0.5",
+ "@smithy/eventstream-serde-config-resolver": "^2.0.5",
+ "@smithy/eventstream-serde-node": "^2.0.5",
+ "@smithy/fetch-http-handler": "^2.0.5",
+ "@smithy/hash-blob-browser": "^2.0.5",
+ "@smithy/hash-node": "^2.0.5",
+ "@smithy/hash-stream-node": "^2.0.5",
+ "@smithy/invalid-dependency": "^2.0.5",
+ "@smithy/md5-js": "^2.0.5",
+ "@smithy/middleware-content-length": "^2.0.5",
+ "@smithy/middleware-endpoint": "^2.0.5",
+ "@smithy/middleware-retry": "^2.0.5",
+ "@smithy/middleware-serde": "^2.0.5",
+ "@smithy/middleware-stack": "^2.0.0",
+ "@smithy/node-config-provider": "^2.0.6",
+ "@smithy/node-http-handler": "^2.0.5",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/smithy-client": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/url-parser": "^2.0.5",
+ "@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.6",
+ "@smithy/util-defaults-mode-node": "^2.0.6",
+ "@smithy/util-retry": "^2.0.0",
+ "@smithy/util-stream": "^2.0.5",
+ "@smithy/util-utf8": "^2.0.0",
+ "@smithy/util-waiter": "^2.0.5",
+ "fast-xml-parser": "4.2.5",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sso": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.405.0.tgz",
+ "integrity": "sha512-z1ssydU07bDhe0tNXQwVO+rWh/iSfK48JI8s8vgpBNwH+NejMzIJ9r3AkjCiJ+LSAwlBZItUsNWwR0veIfgBiw==",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/middleware-host-header": "3.398.0",
+ "@aws-sdk/middleware-logger": "3.398.0",
+ "@aws-sdk/middleware-recursion-detection": "3.398.0",
+ "@aws-sdk/middleware-user-agent": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-endpoints": "3.398.0",
+ "@aws-sdk/util-user-agent-browser": "3.398.0",
+ "@aws-sdk/util-user-agent-node": "3.405.0",
+ "@smithy/config-resolver": "^2.0.5",
+ "@smithy/fetch-http-handler": "^2.0.5",
+ "@smithy/hash-node": "^2.0.5",
+ "@smithy/invalid-dependency": "^2.0.5",
+ "@smithy/middleware-content-length": "^2.0.5",
+ "@smithy/middleware-endpoint": "^2.0.5",
+ "@smithy/middleware-retry": "^2.0.5",
+ "@smithy/middleware-serde": "^2.0.5",
+ "@smithy/middleware-stack": "^2.0.0",
+ "@smithy/node-config-provider": "^2.0.6",
+ "@smithy/node-http-handler": "^2.0.5",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/smithy-client": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/url-parser": "^2.0.5",
+ "@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.6",
+ "@smithy/util-defaults-mode-node": "^2.0.6",
+ "@smithy/util-retry": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sts": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.405.0.tgz",
+ "integrity": "sha512-asVEpda3zu5QUO5ZNNjbLBS0718IhxxyUDVrNmVTKZoOhK1pMNouGZf+l49v0Lb5cOPbUds8cxsNaInj2MvIKw==",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/credential-provider-node": "3.405.0",
+ "@aws-sdk/middleware-host-header": "3.398.0",
+ "@aws-sdk/middleware-logger": "3.398.0",
+ "@aws-sdk/middleware-recursion-detection": "3.398.0",
+ "@aws-sdk/middleware-sdk-sts": "3.398.0",
+ "@aws-sdk/middleware-signing": "3.398.0",
+ "@aws-sdk/middleware-user-agent": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-endpoints": "3.398.0",
+ "@aws-sdk/util-user-agent-browser": "3.398.0",
+ "@aws-sdk/util-user-agent-node": "3.405.0",
+ "@smithy/config-resolver": "^2.0.5",
+ "@smithy/fetch-http-handler": "^2.0.5",
+ "@smithy/hash-node": "^2.0.5",
+ "@smithy/invalid-dependency": "^2.0.5",
+ "@smithy/middleware-content-length": "^2.0.5",
+ "@smithy/middleware-endpoint": "^2.0.5",
+ "@smithy/middleware-retry": "^2.0.5",
+ "@smithy/middleware-serde": "^2.0.5",
+ "@smithy/middleware-stack": "^2.0.0",
+ "@smithy/node-config-provider": "^2.0.6",
+ "@smithy/node-http-handler": "^2.0.5",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/smithy-client": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/url-parser": "^2.0.5",
+ "@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.6",
+ "@smithy/util-defaults-mode-node": "^2.0.6",
+ "@smithy/util-retry": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "fast-xml-parser": "4.2.5",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-env": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.398.0.tgz",
+ "integrity": "sha512-Z8Yj5z7FroAsR6UVML+XUdlpoqEe9Dnle8c2h8/xWwIC2feTfIBhjLhRVxfbpbM1pLgBSNEcZ7U8fwq5l7ESVQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-ini": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.405.0.tgz",
+ "integrity": "sha512-b4TqVsM4WQM96GDVs+TYOhU2/0SnUWzz6NH55qY1y2xyF8/pZEhc0XXdpvZtQQBLGdROhXCbxhBVye8GmTpgcg==",
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.398.0",
+ "@aws-sdk/credential-provider-process": "3.405.0",
+ "@aws-sdk/credential-provider-sso": "3.405.0",
+ "@aws-sdk/credential-provider-web-identity": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/credential-provider-imds": "^2.0.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/shared-ini-file-loader": "^2.0.6",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-node": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.405.0.tgz",
+ "integrity": "sha512-AMmRP09nwYsft0MXDlHIxMQe7IloWW8As0lbZmPrG7Y7mK5RDmCIwD2yMDz77Zqlv09FsYt+9+cOK2fTNhim+Q==",
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.398.0",
+ "@aws-sdk/credential-provider-ini": "3.405.0",
+ "@aws-sdk/credential-provider-process": "3.405.0",
+ "@aws-sdk/credential-provider-sso": "3.405.0",
+ "@aws-sdk/credential-provider-web-identity": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/credential-provider-imds": "^2.0.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/shared-ini-file-loader": "^2.0.6",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-process": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.405.0.tgz",
+ "integrity": "sha512-EqAMcUVeZAICYHHL8x5Fi5CYPgCo9UCE7ScWmU5Sa2wAFY4XLyQ1mMxX3lKGYx9lBxWk3dqnhmvlcqdzN7AjyQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/shared-ini-file-loader": "^2.0.6",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-sso": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.405.0.tgz",
+ "integrity": "sha512-fXqSgQHz7qcmIWMVguwSMSjqFkVfN2+XiNgiskcmeYiCS7mIGAgUnKABZc9Ds2+YW9ATYiY0BOD5aWxc8TX5fA==",
+ "dependencies": {
+ "@aws-sdk/client-sso": "3.405.0",
+ "@aws-sdk/token-providers": "3.405.0",
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/shared-ini-file-loader": "^2.0.6",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-web-identity": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.398.0.tgz",
+ "integrity": "sha512-iG3905Alv9pINbQ8/MIsshgqYMbWx+NDQWpxbIW3W0MkSH3iAqdVpSCteYidYX9G/jv2Um1nW3y360ib20bvNg==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-bucket-endpoint": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.405.0.tgz",
+ "integrity": "sha512-wKmHZi44NkbaGXXbMwassUm06/wDtSYucPbM4paU2cMbBUOnwFpndHWlrRYCNmj5Ty5A2HjdkGlhgla8nifHzQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-arn-parser": "3.310.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/util-config-provider": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-expect-continue": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.398.0.tgz",
+ "integrity": "sha512-d6he+Qqwh1yqml9duXSv5iKJ2lS0PVrF2UEsVew2GFxfUif0E/davTZJjvWtnelbuIGcTP+wDKVVjLwBN2sN/g==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-flexible-checksums": {
+ "version": "3.400.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.400.0.tgz",
+ "integrity": "sha512-lpsumd5/G+eAMTr61h/cJQZ8+i+xzC6OG3bvUcbRHqcjN49XgeNLcPfYcr6Rzf0QHxmuCN4te/4XGU3Fif2YVA==",
+ "dependencies": {
+ "@aws-crypto/crc32": "3.0.0",
+ "@aws-crypto/crc32c": "3.0.0",
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/is-array-buffer": "^2.0.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-host-header": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.398.0.tgz",
+ "integrity": "sha512-m+5laWdBaxIZK2ko0OwcCHJZJ5V1MgEIt8QVQ3k4/kOkN9ICjevOYmba751pHoTnbOYB7zQd6D2OT3EYEEsUcA==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-location-constraint": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.398.0.tgz",
+ "integrity": "sha512-it+olJf1Lf2bmH8OL/N1jMOFB0zEVYs4rIzgFrluTRCuPatRuDi4LsXS8zqYxkBa05JE8JmqwW5gCzAmWyLLqw==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-logger": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.398.0.tgz",
+ "integrity": "sha512-CiJjW+FL12elS6Pn7/UVjVK8HWHhXMfvHZvOwx/Qkpy340sIhkuzOO6fZEruECDTZhl2Wqn81XdJ1ZQ4pRKpCg==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-recursion-detection": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.398.0.tgz",
+ "integrity": "sha512-7QpOqPQAZNXDXv6vsRex4R8dLniL0E/80OPK4PPFsrCh9btEyhN9Begh4i1T+5lL28hmYkztLOkTQ2N5J3hgRQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-sdk-s3": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.398.0.tgz",
+ "integrity": "sha512-yweSMc/TyiFtqc52hFMKQJvTm3i1KCoW5mB3o/Sla6zsHBh+nS6TTaBmo+2kcDIR7AKODwW+FLCTHWiazb7J3Q==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-arn-parser": "3.310.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-sdk-sts": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.398.0.tgz",
+ "integrity": "sha512-+JH76XHEgfVihkY+GurohOQ5Z83zVN1nYcQzwCFnCDTh4dG4KwhnZKG+WPw6XJECocY0R+H0ivofeALHvVWJtQ==",
+ "dependencies": {
+ "@aws-sdk/middleware-signing": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-signing": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.398.0.tgz",
+ "integrity": "sha512-O0KqXAix1TcvZBFt1qoFkHMUNJOSgjJTYS7lFTRKSwgsD27bdW2TM2r9R8DAccWFt5Amjkdt+eOwQMIXPGTm8w==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/signature-v4": "^2.0.0",
+ "@smithy/types": "^2.2.2",
+ "@smithy/util-middleware": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-ssec": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.398.0.tgz",
+ "integrity": "sha512-QtKr/hPcRugKSIZAH4+7hbUfdW7Lg+OQvD25nJn7ic1JHRZ+eDctEFxdsmnt68lE6aZxOcHCWHAW6/umcA93Dw==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-user-agent": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.398.0.tgz",
+ "integrity": "sha512-nF1jg0L+18b5HvTcYzwyFgfZQQMELJINFqI0mi4yRKaX7T5a3aGp5RVLGGju/6tAGTuFbfBoEhkhU3kkxexPYQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-endpoints": "3.398.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/signature-v4-multi-region": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.398.0.tgz",
+ "integrity": "sha512-8fTqTxRDWE03T7ClaWlCfbwuSae//01XMNVy2a9g5QgaelQh7ZZyU3ZIJiV8gIj8v6ZM0NGn9Bz1liI/vmNmcw==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/signature-v4": "^2.0.0",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "@aws-sdk/signature-v4-crt": "^3.118.0"
+ },
+ "peerDependenciesMeta": {
+ "@aws-sdk/signature-v4-crt": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@aws-sdk/token-providers": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.405.0.tgz",
+ "integrity": "sha512-rVzC7ptf7TlV84M9w+Ds9isio1EY7bs1MRFv/6lmYstsyTri+DaZG10TwXSGfzIMwB0yVh11niCxO9wSjQ36zg==",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/middleware-host-header": "3.398.0",
+ "@aws-sdk/middleware-logger": "3.398.0",
+ "@aws-sdk/middleware-recursion-detection": "3.398.0",
+ "@aws-sdk/middleware-user-agent": "3.398.0",
+ "@aws-sdk/types": "3.398.0",
+ "@aws-sdk/util-endpoints": "3.398.0",
+ "@aws-sdk/util-user-agent-browser": "3.398.0",
+ "@aws-sdk/util-user-agent-node": "3.405.0",
+ "@smithy/config-resolver": "^2.0.5",
+ "@smithy/fetch-http-handler": "^2.0.5",
+ "@smithy/hash-node": "^2.0.5",
+ "@smithy/invalid-dependency": "^2.0.5",
+ "@smithy/middleware-content-length": "^2.0.5",
+ "@smithy/middleware-endpoint": "^2.0.5",
+ "@smithy/middleware-retry": "^2.0.5",
+ "@smithy/middleware-serde": "^2.0.5",
+ "@smithy/middleware-stack": "^2.0.0",
+ "@smithy/node-config-provider": "^2.0.6",
+ "@smithy/node-http-handler": "^2.0.5",
+ "@smithy/property-provider": "^2.0.0",
+ "@smithy/protocol-http": "^2.0.5",
+ "@smithy/shared-ini-file-loader": "^2.0.6",
+ "@smithy/smithy-client": "^2.0.5",
+ "@smithy/types": "^2.2.2",
+ "@smithy/url-parser": "^2.0.5",
+ "@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.6",
+ "@smithy/util-defaults-mode-node": "^2.0.6",
+ "@smithy/util-retry": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/types": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.398.0.tgz",
+ "integrity": "sha512-r44fkS+vsEgKCuEuTV+TIk0t0m5ZlXHNjSDYEUvzLStbbfUFiNus/YG4UCa0wOk9R7VuQI67badsvvPeVPCGDQ==",
+ "dependencies": {
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-arn-parser": {
+ "version": "3.310.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.310.0.tgz",
+ "integrity": "sha512-jL8509owp/xB9+Or0pvn3Fe+b94qfklc2yPowZZIFAkFcCSIdkIglz18cPDWnYAcy9JGewpMS1COXKIUhZkJsA==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-endpoints": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.398.0.tgz",
+ "integrity": "sha512-Fy0gLYAei/Rd6BrXG4baspCnWTUSd0NdokU1pZh4KlfEAEN1i8SPPgfiO5hLk7+2inqtCmqxVJlfqbMVe9k4bw==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-locate-window": {
+ "version": "3.310.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz",
+ "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-browser": {
+ "version": "3.398.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.398.0.tgz",
+ "integrity": "sha512-A3Tzx1tkDHlBT+IgxmsMCHbV8LM7SwwCozq2ZjJRx0nqw3MCrrcxQFXldHeX/gdUMO+0Oocb7HGSnVODTq+0EA==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/types": "^2.2.2",
+ "bowser": "^2.11.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-node": {
+ "version": "3.405.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.405.0.tgz",
+ "integrity": "sha512-6Ssld7aalKCnW6lSGfiiWpqwo2L+AmYq2oV3P9yYAo9ZL+Q78dXquabwj3uq3plJ4l2xE4Gfcf2FJ/1PZpqDvQ==",
+ "dependencies": {
+ "@aws-sdk/types": "3.398.0",
+ "@smithy/node-config-provider": "^2.0.6",
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "aws-crt": ">=1.0.0"
+ },
+ "peerDependenciesMeta": {
+ "aws-crt": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@aws-sdk/util-utf8-browser": {
+ "version": "3.259.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz",
+ "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==",
+ "dependencies": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/xml-builder": {
+ "version": "3.310.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.310.0.tgz",
+ "integrity": "sha512-TqELu4mOuSIKQCqj63fGVs86Yh+vBx5nHRpWKNUNhB2nPTpfbziTs5c1X358be3peVWA4wPxW7Nt53KIg1tnNw==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/abort-controller": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.0.13.tgz",
+ "integrity": "sha512-eeOPD+GF9BzF/Mjy3PICLePx4l0f3rG/nQegQHRLTloN5p1lSJJNZsyn+FzDnW8P2AduragZqJdtKNCxXozB1Q==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/chunked-blob-reader": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-2.0.0.tgz",
+ "integrity": "sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/chunked-blob-reader-native": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-2.0.1.tgz",
+ "integrity": "sha512-N2oCZRglhWKm7iMBu7S6wDzXirjAofi7tAd26cxmgibRYOBS4D3hGfmkwCpHdASZzwZDD8rluh0Rcqw1JeZDRw==",
+ "dependencies": {
+ "@smithy/util-base64": "^2.0.1",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/config-resolver": {
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.0.18.tgz",
+ "integrity": "sha512-761sJSgNbvsqcsKW6/WZbrZr4H+0Vp/QKKqwyrxCPwD8BsiPEXNHyYnqNgaeK9xRWYswjon0Uxbpe3DWQo0j/g==",
+ "dependencies": {
+ "@smithy/node-config-provider": "^2.1.5",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-config-provider": "^2.0.0",
+ "@smithy/util-middleware": "^2.0.6",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/credential-provider-imds": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.1.1.tgz",
+ "integrity": "sha512-gw5G3FjWC6sNz8zpOJgPpH5HGKrpoVFQpToNAwLwJVyI/LJ2jDJRjSKEsM6XI25aRpYjMSE/Qptxx305gN1vHw==",
+ "dependencies": {
+ "@smithy/node-config-provider": "^2.1.5",
+ "@smithy/property-provider": "^2.0.14",
+ "@smithy/types": "^2.5.0",
+ "@smithy/url-parser": "^2.0.13",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-codec": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.0.13.tgz",
+ "integrity": "sha512-CExbelIYp+DxAHG8RIs0l9QL7ElqhG4ym9BNoSpkPa4ptBQfzJdep3LbOSVJIE2VUdBAeObdeL6EDB3Jo85n3g==",
+ "dependencies": {
+ "@aws-crypto/crc32": "3.0.0",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-hex-encoding": "^2.0.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-browser": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-2.0.13.tgz",
+ "integrity": "sha512-OJ/2g/VxkzA+mYZxV102oX3CsiE+igTSmqq/ir3oEVG2kSIdRC00ryttj/lmL14W06ExNi0ysmfLxQkL8XrAZQ==",
+ "dependencies": {
+ "@smithy/eventstream-serde-universal": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-config-resolver": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-2.0.13.tgz",
+ "integrity": "sha512-2BI1CbnYuEvAYoWSeWJtPNygbIKiWeSLxCmDLnyM6wQV32Of7VptiQlaFXPxXp4zqn/rs3ocZ/T29rxE4s4Gsg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-node": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-2.0.13.tgz",
+ "integrity": "sha512-7NbFwPafb924elFxCBDvm48jy/DeSrpFbFQN0uN2ThuY5HrEeubikS0t7WMva4Z4EnRoivpbuT0scb9vUIJKoA==",
+ "dependencies": {
+ "@smithy/eventstream-serde-universal": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-universal": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-2.0.13.tgz",
+ "integrity": "sha512-j0yFd5UfftM+ia9dxLRbheJDCkCZBHpcEzCsPO8BxVOTbdcX/auVJCv6ov/yvpCKsf4Hv3mOqi0Is1YogM2g3Q==",
+ "dependencies": {
+ "@smithy/eventstream-codec": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/fetch-http-handler": {
+ "version": "2.2.6",
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.2.6.tgz",
+ "integrity": "sha512-PStY3XO1Ksjwn3wMKye5U6m6zxXpXrXZYqLy/IeCbh3nM9QB3Jgw/B0PUSLUWKdXg4U8qgEu300e3ZoBvZLsDg==",
+ "dependencies": {
+ "@smithy/protocol-http": "^3.0.9",
+ "@smithy/querystring-builder": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-base64": "^2.0.1",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/fetch-http-handler/node_modules/@smithy/protocol-http": {
+ "version": "3.0.9",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.9.tgz",
+ "integrity": "sha512-U1wl+FhYu4/BC+rjwh1lg2gcJChQhytiNQSggREgQ9G2FzmoK9sACBZvx7thyWMvRyHQTE22mO2d5UM8gMKDBg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/hash-blob-browser": {
+ "version": "2.0.14",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-2.0.14.tgz",
+ "integrity": "sha512-yWdghyPJIEqLYsaE7YVgd3YhM7jN4Pv6eJQvTomnMsz5K2qRBlpjUx3T9fKlElp1qdeQ7DNc3sAat4i9CUBO7Q==",
+ "dependencies": {
+ "@smithy/chunked-blob-reader": "^2.0.0",
+ "@smithy/chunked-blob-reader-native": "^2.0.1",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/hash-node": {
+ "version": "2.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.0.15.tgz",
+ "integrity": "sha512-t/qjEJZu/G46A22PAk1k/IiJZT4ncRkG5GOCNWN9HPPy5rCcSZUbh7gwp7CGKgJJ7ATMMg+0Td7i9o1lQTwOfQ==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-buffer-from": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/hash-stream-node": {
+ "version": "2.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-2.0.15.tgz",
+ "integrity": "sha512-ZZ6kC/pHt5Dc2goXIIyC8uA7A4GUMSzdCynAabnZ3CSSaV6ctP8mlvVkqjPph0O3XzHlx/80gdLrNqi1GDPUsA==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-utf8": "^2.0.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/invalid-dependency": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.0.13.tgz",
+ "integrity": "sha512-XsGYhVhvEikX1Yz0kyIoLssJf2Rs6E0U2w2YuKdT4jSra5A/g8V2oLROC1s56NldbgnpesTYB2z55KCHHbKyjw==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/is-array-buffer": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.0.0.tgz",
+ "integrity": "sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/md5-js": {
+ "version": "2.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-2.0.15.tgz",
+ "integrity": "sha512-pAZaokib56XvhU0t/R9vAcr3L3bMhIakhF25X7EMSQ7LAURiLfce/tgON8I3x/dIbnZUyeRi8f2cx2azu6ATew==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-utf8": "^2.0.2",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/middleware-content-length": {
+ "version": "2.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.0.15.tgz",
+ "integrity": "sha512-xH4kRBw01gJgWiU+/mNTrnyFXeozpZHw39gLb3JKGsFDVmSrJZ8/tRqu27tU/ki1gKkxr2wApu+dEYjI3QwV1Q==",
+ "dependencies": {
+ "@smithy/protocol-http": "^3.0.9",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-content-length/node_modules/@smithy/protocol-http": {
+ "version": "3.0.9",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.9.tgz",
+ "integrity": "sha512-U1wl+FhYu4/BC+rjwh1lg2gcJChQhytiNQSggREgQ9G2FzmoK9sACBZvx7thyWMvRyHQTE22mO2d5UM8gMKDBg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-endpoint": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.2.0.tgz",
+ "integrity": "sha512-tddRmaig5URk2106PVMiNX6mc5BnKIKajHHDxb7K0J5MLdcuQluHMGnjkv18iY9s9O0tF+gAcPd/pDXA5L9DZw==",
+ "dependencies": {
+ "@smithy/middleware-serde": "^2.0.13",
+ "@smithy/node-config-provider": "^2.1.5",
+ "@smithy/shared-ini-file-loader": "^2.2.4",
+ "@smithy/types": "^2.5.0",
+ "@smithy/url-parser": "^2.0.13",
+ "@smithy/util-middleware": "^2.0.6",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-retry": {
+ "version": "2.0.20",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.0.20.tgz",
+ "integrity": "sha512-X2yrF/SHDk2WDd8LflRNS955rlzQ9daz9UWSp15wW8KtzoTXg3bhHM78HbK1cjr48/FWERSJKh9AvRUUGlIawg==",
+ "dependencies": {
+ "@smithy/node-config-provider": "^2.1.5",
+ "@smithy/protocol-http": "^3.0.9",
+ "@smithy/service-error-classification": "^2.0.6",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-middleware": "^2.0.6",
+ "@smithy/util-retry": "^2.0.6",
+ "tslib": "^2.5.0",
+ "uuid": "^8.3.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-retry/node_modules/@smithy/protocol-http": {
+ "version": "3.0.9",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.9.tgz",
+ "integrity": "sha512-U1wl+FhYu4/BC+rjwh1lg2gcJChQhytiNQSggREgQ9G2FzmoK9sACBZvx7thyWMvRyHQTE22mO2d5UM8gMKDBg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-serde": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.0.13.tgz",
+ "integrity": "sha512-tBGbeXw+XsE6pPr4UaXOh+UIcXARZeiA8bKJWxk2IjJcD1icVLhBSUQH9myCIZLNNzJIH36SDjUX8Wqk4xJCJg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-stack": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.0.7.tgz",
+ "integrity": "sha512-L1KLAAWkXbGx1t2jjCI/mDJ2dDNq+rp4/ifr/HcC6FHngxho5O7A5bQLpKHGlkfATH6fUnOEx0VICEVFA4sUzw==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/node-config-provider": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.1.5.tgz",
+ "integrity": "sha512-3Omb5/h4tOCuKRx4p4pkYTvEYRCYoKk52bOYbKUyz/G/8gERbagsN8jFm4FjQubkrcIqQEghTpQaUw6uk+0edw==",
+ "dependencies": {
+ "@smithy/property-provider": "^2.0.14",
+ "@smithy/shared-ini-file-loader": "^2.2.4",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/node-http-handler": {
+ "version": "2.1.9",
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.1.9.tgz",
+ "integrity": "sha512-+K0q3SlNcocmo9OZj+fz67gY4lwhOCvIJxVbo/xH+hfWObvaxrMTx7JEzzXcluK0thnnLz++K3Qe7Z/8MDUreA==",
+ "dependencies": {
+ "@smithy/abort-controller": "^2.0.13",
+ "@smithy/protocol-http": "^3.0.9",
+ "@smithy/querystring-builder": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/node-http-handler/node_modules/@smithy/protocol-http": {
+ "version": "3.0.9",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.9.tgz",
+ "integrity": "sha512-U1wl+FhYu4/BC+rjwh1lg2gcJChQhytiNQSggREgQ9G2FzmoK9sACBZvx7thyWMvRyHQTE22mO2d5UM8gMKDBg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/property-provider": {
+ "version": "2.0.14",
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.0.14.tgz",
+ "integrity": "sha512-k3D2qp9o6imTrLaXRj6GdLYEJr1sXqS99nLhzq8fYmJjSVOeMg/G+1KVAAc7Oxpu71rlZ2f8SSZxcSxkevuR0A==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/protocol-http": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-2.0.5.tgz",
+ "integrity": "sha512-d2hhHj34mA2V86doiDfrsy2fNTnUOowGaf9hKb0hIPHqvcnShU4/OSc4Uf1FwHkAdYF3cFXTrj5VGUYbEuvMdw==",
+ "dependencies": {
+ "@smithy/types": "^2.2.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/querystring-builder": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.0.13.tgz",
+ "integrity": "sha512-JhXKwp3JtsFUe96XLHy/nUPEbaXqn6r7xE4sNaH8bxEyytE5q1fwt0ew/Ke6+vIC7gP87HCHgQpJHg1X1jN2Fw==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-uri-escape": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/querystring-parser": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.0.13.tgz",
+ "integrity": "sha512-TEiT6o8CPZVxJ44Rly/rrsATTQsE+b/nyBVzsYn2sa75xAaZcurNxsFd8z1haoUysONiyex24JMHoJY6iCfLdA==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/service-error-classification": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.0.6.tgz",
+ "integrity": "sha512-fCQ36frtYra2fqY2/DV8+3/z2d0VB/1D1hXbjRcM5wkxTToxq6xHbIY/NGGY6v4carskMyG8FHACxgxturJ9Pg==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/shared-ini-file-loader": {
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.2.4.tgz",
+ "integrity": "sha512-9dRknGgvYlRIsoTcmMJXuoR/3ekhGwhRq4un3ns2/byre4Ql5hyUN4iS0x8eITohjU90YOnUCsbRwZRvCkbRfw==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/signature-v4": {
+ "version": "2.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.0.15.tgz",
+ "integrity": "sha512-SRTEJSEhQYVlBKIIdZ9SZpqW+KFqxqcNnEcBX+8xkDdWx+DItme9VcCDkdN32yTIrICC+irUufnUdV7mmHPjoA==",
+ "dependencies": {
+ "@smithy/eventstream-codec": "^2.0.13",
+ "@smithy/is-array-buffer": "^2.0.0",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-hex-encoding": "^2.0.0",
+ "@smithy/util-middleware": "^2.0.6",
+ "@smithy/util-uri-escape": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/smithy-client": {
+ "version": "2.1.15",
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.1.15.tgz",
+ "integrity": "sha512-rngZcQu7Jvs9UbHihK1EI67RMPuzkc3CJmu4MBgB7D7yBnMGuFR86tq5rqHfL2gAkNnMelBN/8kzQVvZjNKefQ==",
+ "dependencies": {
+ "@smithy/middleware-stack": "^2.0.7",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-stream": "^2.0.20",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/types": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.5.0.tgz",
+ "integrity": "sha512-/a31lYofrMBkJb3BuPlYJTMKDj0hUmKUP6JFZQu6YVuQVoAjubiY0A52U9S0Uysd33n/djexCUSNJ+G9bf3/aA==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/url-parser": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.0.13.tgz",
+ "integrity": "sha512-okWx2P/d9jcTsZWTVNnRMpFOE7fMkzloSFyM53fA7nLKJQObxM2T4JlZ5KitKKuXq7pxon9J6SF2kCwtdflIrA==",
+ "dependencies": {
+ "@smithy/querystring-parser": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/util-base64": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.0.1.tgz",
+ "integrity": "sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ==",
+ "dependencies": {
+ "@smithy/util-buffer-from": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-body-length-browser": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.0.0.tgz",
+ "integrity": "sha512-JdDuS4ircJt+FDnaQj88TzZY3+njZ6O+D3uakS32f2VNnDo3vyEuNdBOh/oFd8Df1zSZOuH1HEChk2AOYDezZg==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ }
+ },
+ "node_modules/@smithy/util-body-length-node": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.1.0.tgz",
+ "integrity": "sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-buffer-from": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.0.0.tgz",
+ "integrity": "sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==",
+ "dependencies": {
+ "@smithy/is-array-buffer": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-config-provider": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.0.0.tgz",
+ "integrity": "sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-defaults-mode-browser": {
+ "version": "2.0.19",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.0.19.tgz",
+ "integrity": "sha512-VHP8xdFR7/orpiABJwgoTB0t8Zhhwpf93gXhNfUBiwAE9O0rvsv7LwpQYjgvbOUDDO8JfIYQB2GYJNkqqGWsXw==",
+ "dependencies": {
+ "@smithy/property-provider": "^2.0.14",
+ "@smithy/smithy-client": "^2.1.15",
+ "@smithy/types": "^2.5.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/@smithy/util-defaults-mode-node": {
+ "version": "2.0.25",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.0.25.tgz",
+ "integrity": "sha512-jkmep6/JyWmn2ADw9VULDeGbugR4N/FJCKOt+gYyVswmN1BJOfzF2umaYxQ1HhQDvna3kzm1Dbo1qIfBW4iuHA==",
+ "dependencies": {
+ "@smithy/config-resolver": "^2.0.18",
+ "@smithy/credential-provider-imds": "^2.1.1",
+ "@smithy/node-config-provider": "^2.1.5",
+ "@smithy/property-provider": "^2.0.14",
+ "@smithy/smithy-client": "^2.1.15",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/@smithy/util-hex-encoding": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz",
+ "integrity": "sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-middleware": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.0.6.tgz",
+ "integrity": "sha512-7W4uuwBvSLgKoLC1x4LfeArCVcbuHdtVaC4g30kKsD1erfICyQ45+tFhhs/dZNeQg+w392fhunCm/+oCcb6BSA==",
+ "dependencies": {
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-retry": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.0.6.tgz",
+ "integrity": "sha512-PSO41FofOBmyhPQJwBQJ6mVlaD7Sp9Uff9aBbnfBJ9eqXOE/obrqQjn0PNdkfdvViiPXl49BINfnGcFtSP4kYw==",
+ "dependencies": {
+ "@smithy/service-error-classification": "^2.0.6",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">= 14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-stream": {
+ "version": "2.0.20",
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.0.20.tgz",
+ "integrity": "sha512-tT8VASuD8jJu0yjHEMTCPt1o5E3FVzgdsxK6FQLAjXKqVv5V8InCnc0EOsYrijgspbfDqdAJg7r0o2sySfcHVg==",
+ "dependencies": {
+ "@smithy/fetch-http-handler": "^2.2.6",
+ "@smithy/node-http-handler": "^2.1.9",
+ "@smithy/types": "^2.5.0",
+ "@smithy/util-base64": "^2.0.1",
+ "@smithy/util-buffer-from": "^2.0.0",
+ "@smithy/util-hex-encoding": "^2.0.0",
+ "@smithy/util-utf8": "^2.0.2",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-uri-escape": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz",
+ "integrity": "sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==",
+ "dependencies": {
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-utf8": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.0.2.tgz",
+ "integrity": "sha512-qOiVORSPm6Ce4/Yu6hbSgNHABLP2VMv8QOC3tTDNHHlWY19pPyc++fBTbZPtx6egPXi4HQxKDnMxVxpbtX2GoA==",
+ "dependencies": {
+ "@smithy/util-buffer-from": "^2.0.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@smithy/util-waiter": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-2.0.13.tgz",
+ "integrity": "sha512-YovIQatiuM7giEsRFotqJa2i3EbU2EE3PgtpXgtLgpx5rXiZMAwPxXYDFVFhuO0lbqvc/Zx4n+ZIisXOHPSqyg==",
+ "dependencies": {
+ "@smithy/abort-controller": "^2.0.13",
+ "@smithy/types": "^2.5.0",
+ "tslib": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@types/aws-lambda": {
+ "version": "8.10.93",
+ "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.93.tgz",
+ "integrity": "sha512-Vsyi9ogDAY3REZDjYnXMRJJa62SDvxHXxJI5nGDQdZW058dDE+av/anynN2rLKbCKXDRNw3D/sQmqxVflZFi4A=="
+ },
+ "node_modules/bowser": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
+ "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA=="
+ },
+ "node_modules/fast-xml-parser": {
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
+ "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
+ "funding": [
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/naturalintelligence"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/NaturalIntelligence"
+ }
+ ],
+ "dependencies": {
+ "strnum": "^1.0.5"
+ },
+ "bin": {
+ "fxparser": "src/cli/cli.js"
+ }
+ },
+ "node_modules/strnum": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
+ "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
+ },
+ "node_modules/tslib": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
+ },
+ "node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ }
+ }
+}
diff --git a/packages/aws-copy-out-sharer/construct/can-write-lambda/package.json b/packages/aws-copy-out-sharer/construct/can-write-lambda/package.json
index 6c62bf2..c52f4b9 100644
--- a/packages/aws-copy-out-sharer/construct/can-write-lambda/package.json
+++ b/packages/aws-copy-out-sharer/construct/can-write-lambda/package.json
@@ -1,8 +1,9 @@
{
"name": "can-write-lambda",
"version": "1.0.0",
- "main": "can-write-lambda.js",
+ "main": "can-write-lambda.ts",
"dependencies": {
- "@aws-sdk/client-s3": "^3.405.0"
+ "@aws-sdk/client-s3": "3.405.0",
+ "@types/aws-lambda": "8.10.93"
}
}
diff --git a/packages/aws-copy-out-sharer/construct/copy-out-state-machine-construct.ts b/packages/aws-copy-out-sharer/construct/copy-out-state-machine-construct.ts
index e66ae22..ba23e97 100644
--- a/packages/aws-copy-out-sharer/construct/copy-out-state-machine-construct.ts
+++ b/packages/aws-copy-out-sharer/construct/copy-out-state-machine-construct.ts
@@ -11,7 +11,6 @@ import {
} from "aws-cdk-lib/aws-stepfunctions";
import { Arn, ArnFormat, Duration, Stack } from "aws-cdk-lib";
import { ICluster } from "aws-cdk-lib/aws-ecs";
-import { Service } from "aws-cdk-lib/aws-servicediscovery";
import { CanWriteLambdaStepConstruct } from "./can-write-lambda-step-construct";
import { IVpc, SubnetType } from "aws-cdk-lib/aws-ec2";
import { DistributedMapStepConstruct } from "./distributed-map-step-construct";
@@ -24,18 +23,22 @@ export type CopyOutStateMachineProps = {
fargateCluster: ICluster;
- namespaceService: Service;
-
/**
* Whether the stack should use duration/timeouts that are more suited
* to demonstration/development. i.e. minutes rather than hours for wait times,
- * hours rather than days for copy time outs.
+ * hours rather than days for copy time-outs.
*/
aggressiveTimes?: boolean;
+
+ allowWriteToThisAccount?: boolean;
+
+ // WIP workingBucket workingPrefix
+ // should make it that if specified this is a bucket that exclusively
+ // holds the source CSVs and result CSVs (so we can lock down the S3 perms)
};
export class CopyOutStateMachineConstruct extends Construct {
- private readonly stateMachine: StateMachine;
+ private readonly _stateMachine: StateMachine;
constructor(scope: Construct, id: string, props: CopyOutStateMachineProps) {
super(scope, id);
@@ -46,6 +49,7 @@ export class CopyOutStateMachineConstruct extends Construct {
vpc: props.vpc,
vpcSubnetSelection: props.vpcSubnetSelection,
requiredRegion: Stack.of(this).region,
+ allowWriteToThisAccount: props.allowWriteToThisAccount,
},
);
@@ -84,6 +88,8 @@ export class CopyOutStateMachineConstruct extends Construct {
const defineDefaults = new Pass(this, "Define Defaults", {
parameters: {
maxItemsPerBatch: 1,
+ requiredRegion: Stack.of(this).region,
+ destinationKey: "",
},
resultPath: "$.inputDefaults",
});
@@ -118,7 +124,7 @@ export class CopyOutStateMachineConstruct extends Construct {
// NOTE: we use a technique here to allow optional input parameters to the state machine
// by defining defaults and then JsonMerging them with the actual input params
- this.stateMachine = new StateMachine(this, "StateMachine", {
+ this._stateMachine = new StateMachine(this, "StateMachine", {
// we give people a window of time in which to create the destination bucket - so this
// could run a long time
timeout: props.aggressiveTimes ? Duration.hours(24) : Duration.days(30),
@@ -126,7 +132,7 @@ export class CopyOutStateMachineConstruct extends Construct {
});
// this is needed to support distributed map - once there is a native CDK for this I presume this goes
- this.stateMachine.addToRolePolicy(
+ this._stateMachine.addToRolePolicy(
new PolicyStatement({
effect: Effect.ALLOW,
actions: ["states:StartExecution"],
@@ -145,7 +151,7 @@ export class CopyOutStateMachineConstruct extends Construct {
);
// this is needed to support distributed map - once there is a native CDK for this I presume this goes
- this.stateMachine.addToRolePolicy(
+ this._stateMachine.addToRolePolicy(
new PolicyStatement({
effect: Effect.ALLOW,
actions: ["states:DescribeExecution", "states:StopExecution"],
@@ -165,7 +171,7 @@ export class CopyOutStateMachineConstruct extends Construct {
// this is too broad - but once the CFN native Distributed Map is created - it will handle this for us
// (I think it isn't doing it because of our DummyMap)
- this.stateMachine.addToRolePolicy(
+ this._stateMachine.addToRolePolicy(
new PolicyStatement({
effect: Effect.ALLOW,
actions: ["lambda:InvokeFunction"],
@@ -173,7 +179,7 @@ export class CopyOutStateMachineConstruct extends Construct {
}),
);
- this.stateMachine.addToRolePolicy(
+ this._stateMachine.addToRolePolicy(
new PolicyStatement({
effect: Effect.ALLOW,
actions: ["ecs:*", "iam:PassRole"],
@@ -182,18 +188,36 @@ export class CopyOutStateMachineConstruct extends Construct {
);
// TODO tighten this
- this.stateMachine.role.addManagedPolicy(
+ this._stateMachine.role.addManagedPolicy(
ManagedPolicy.fromAwsManagedPolicyName("AmazonS3FullAccess"),
);
- this.stateMachine.role.addManagedPolicy(
+ // i.e perms needed for result writing from distributed map (from AWS docs)
+ // https://docs.aws.amazon.com/step-functions/latest/dg/input-output-resultwriter.html#resultwriter-iam-policies
+ // {
+ // "Version": "2012-10-17",
+ // "Statement": [
+ // {
+ // "Effect": "Allow",
+ // "Action": [
+ // "s3:PutObject",
+ // "s3:GetObject",
+ // "s3:ListMultipartUploadParts",
+ // "s3:AbortMultipartUpload"
+ // ],
+ // "Resource": [
+ // "arn:aws:s3:::resultBucket/csvJobs/*"
+ // ]
+ // }
+ // ]
+ // }
+
+ this._stateMachine.role.addManagedPolicy(
ManagedPolicy.fromAwsManagedPolicyName("CloudWatchEventsFullAccess"),
);
+ }
- props.namespaceService.registerNonIpInstance("StateMachine", {
- customAttributes: {
- stateMachineArn: this.stateMachine.stateMachineArn,
- },
- });
+ public get stateMachine() {
+ return this._stateMachine;
}
}
diff --git a/packages/aws-copy-out-sharer/construct/distributed-map-step-construct.ts b/packages/aws-copy-out-sharer/construct/distributed-map-step-construct.ts
index 0e6e2d0..0cb473b 100644
--- a/packages/aws-copy-out-sharer/construct/distributed-map-step-construct.ts
+++ b/packages/aws-copy-out-sharer/construct/distributed-map-step-construct.ts
@@ -55,7 +55,7 @@ export class DistributedMapStepConstruct extends Construct {
ItemReader: {
ReaderConfig: {
InputType: "CSV",
- // note we are providing the nominal column names.. there is no header row in the CSV
+ // note we are providing the nominal column names... there is no header row in the CSV
CSVHeaderLocation: "GIVEN",
CSVHeaders: [bucketColumnName, keyColumnName],
},
@@ -68,9 +68,10 @@ export class DistributedMapStepConstruct extends Construct {
ItemBatcher: {
MaxItemsPerBatchPath: JsonPath.stringAt("$.maxItemsPerBatch"),
BatchInput: {
- "destinationBucketForRclone.$": JsonPath.format(
- "s3:{}",
+ "destinationForRclone.$": JsonPath.format(
+ "s3:{}/{}",
JsonPath.stringAt("$.destinationBucket"),
+ JsonPath.stringAt("$.destinationKey"),
),
},
},
@@ -89,6 +90,16 @@ export class DistributedMapStepConstruct extends Construct {
JsonPath.stringAt(`$$.Map.Item.Value.${keyColumnName}`),
),
},
+ ResultWriter: {
+ Resource: "arn:aws:states:::s3:putObject",
+ Parameters: {
+ "Bucket.$": "$.sourceFilesCsvBucket",
+ "Prefix.$": JsonPath.format(
+ "{}-results",
+ JsonPath.stringAt("$.sourceFilesCsvKey"),
+ ),
+ },
+ },
},
});
}
diff --git a/packages/aws-copy-out-sharer/construct/fargate-run-task-construct.ts b/packages/aws-copy-out-sharer/construct/fargate-run-task-construct.ts
index 98628b7..808aac4 100644
--- a/packages/aws-copy-out-sharer/construct/fargate-run-task-construct.ts
+++ b/packages/aws-copy-out-sharer/construct/fargate-run-task-construct.ts
@@ -1,5 +1,5 @@
import { Construct } from "constructs";
-import { ManagedPolicy } from "aws-cdk-lib/aws-iam";
+import { ManagedPolicy, PolicyStatement } from "aws-cdk-lib/aws-iam";
import { IntegrationPattern, JsonPath } from "aws-cdk-lib/aws-stepfunctions";
import { Duration, Stack, Tags } from "aws-cdk-lib";
import {
@@ -25,6 +25,16 @@ import { SubnetType } from "aws-cdk-lib/aws-ec2";
type Props = {
fargateCluster: ICluster;
vpcSubnetSelection: SubnetType;
+
+ /**
+ * If true, will allow the run task to copy to a bucket that is
+ * in the same account. Otherwise, and by default, the copy task
+ * is set up to not be able to copy to a bucket in the same account as it
+ * is installed. This is a security mechanism as writes to buckets in the
+ * same account is allowed implicitly but is dangerous. This should only
+ * be set to true for development/testing.
+ */
+ //allowWriteToThisAccount?: boolean; WIP NEED TO IMPLEMENT
};
export class FargateRunTaskConstruct extends Construct {
@@ -40,7 +50,7 @@ export class FargateRunTaskConstruct extends Construct {
},
cpu: 256,
// there is a warning in the rclone documentation about problems with mem < 1GB - but I think that
- // is mainly for large syncs.. we do individual file copies so 512 should be fine
+ // is mainly for large syncs... we do individual/small file copies so 512 should be fine
memoryLimitMiB: 512,
});
@@ -52,6 +62,17 @@ export class FargateRunTaskConstruct extends Construct {
ManagedPolicy.fromAwsManagedPolicyName("AmazonS3FullAccess"),
);
+ taskDefinition.taskRole.addToPrincipalPolicy(
+ new PolicyStatement({
+ resources: ["*"],
+ actions: [
+ "states:SendTaskSuccess",
+ "states:SendTaskFailure",
+ "states:SendTaskHeartbeat",
+ ],
+ }),
+ );
+
const containerDefinition = taskDefinition.addContainer("RcloneContainer", {
// set the stop timeout to the maximum allowed under Fargate - as potentially this will let us finish
// our rclone operation
@@ -78,7 +99,8 @@ export class FargateRunTaskConstruct extends Construct {
// https://github.com/aws/aws-cdk/issues/20013
this.ecsRunTask = new EcsRunTask(this, "Copy File with Rclone", {
- integrationPattern: IntegrationPattern.RUN_JOB,
+ integrationPattern: IntegrationPattern.WAIT_FOR_TASK_TOKEN,
+ // .RUN_JOB,
cluster: props.fargateCluster,
taskDefinition: taskDefinition,
launchTarget: new EcsFargateSpotOnlyLaunchTarget({
@@ -102,9 +124,14 @@ export class FargateRunTaskConstruct extends Construct {
environment: [
{
name: "destination",
- value: JsonPath.stringAt(
- "$.BatchInput.destinationBucketForRclone",
- ),
+ // note this might be just a bucket name, or a bucket name with path
+ // (that decision is made higher in the stack)
+ // as far as rclone binary itself is concerned, it does not matter
+ value: JsonPath.stringAt("$.BatchInput.destinationForRclone"),
+ },
+ {
+ name: "tasktoken",
+ value: JsonPath.stringAt("$$.Task.Token"),
},
],
},
diff --git a/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/Dockerfile b/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/Dockerfile
index b36abe0..8b29bee 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/Dockerfile
+++ b/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/Dockerfile
@@ -1,6 +1,8 @@
-FROM rclone/rclone:1.63.1
+FROM rclone/rclone:1.64.2
+
+RUN apk add --no-cache aws-cli tini
# a shell script that allows us to take more batch like input to rclone
COPY rclone-batch-copy.sh /app/
-ENTRYPOINT ["/bin/sh", "/app/rclone-batch-copy.sh"]
+ENTRYPOINT ["/sbin/tini", "--", "/bin/sh", "/app/rclone-batch-copy.sh"]
diff --git a/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/rclone-batch-copy.sh b/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/rclone-batch-copy.sh
index a299157..f499461 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/rclone-batch-copy.sh
+++ b/packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image/rclone-batch-copy.sh
@@ -1,6 +1,15 @@
+
+# If you are familiar with rsync, rclone always works
+# as if you had written a trailing / - meaning "copy the
+# contents of this directory". This applies to all commands
+# and whether you are talking about the source or destination.
+
echo "Destination = $destination"
+echo "Task token = $tasktoken"
for src in "$@"; do
echo "Source arg = $src"
/usr/local/bin/rclone copy --stats-log-level NOTICE --checksum "$src" "$destination"
done
+
+aws stepfunctions send-task-success --task-token "$tasktoken" --task-output '{ "0": "OK", "1": "OK" }'
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.dockerignore b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.dockerignore
index e69de29..adab58a 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.dockerignore
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.dockerignore
@@ -0,0 +1,3 @@
+test/*
+test-*.sh
+rclone-batch
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.gitignore b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.gitignore
index e69de29..f0382e3 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.gitignore
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/.gitignore
@@ -0,0 +1,3 @@
+
+# ignore the binary we build in testing
+rclone-batch
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/Dockerfile b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/Dockerfile
index 8b29bee..9121c34 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/Dockerfile
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/Dockerfile
@@ -1,8 +1,28 @@
+FROM golang:1.21-alpine as builder
+
+RUN apk add --no-cache git
+
+WORKDIR /build
+
+RUN go env -w GOPROXY=direct
+
+ADD go.mod go.sum ./
+
+RUN go mod download
+
+ADD main.go ./
+
+RUN env GOOS=linux CGO_ENABLED=0 GOARCH=amd64 go build
+
+
FROM rclone/rclone:1.64.2
-RUN apk add --no-cache aws-cli tini
+# if we want signals to propogate through to the app we need a lightweight initd
+RUN apk add --no-cache tini
+
+# this is where rclone binary ends up by default so we will do our work there
+WORKDIR /data
-# a shell script that allows us to take more batch like input to rclone
-COPY rclone-batch-copy.sh /app/
+COPY --from=builder /build/rclone-batch ./
-ENTRYPOINT ["/sbin/tini", "--", "/bin/sh", "/app/rclone-batch-copy.sh"]
+ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/rclone-batch"]
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.mod b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.mod
index e69de29..3b87e27 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.mod
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.mod
@@ -0,0 +1,21 @@
+module rclone-batch
+
+go 1.21.2
+
+require (
+ github.com/aws/aws-sdk-go-v2 v1.23.0 // indirect
+ github.com/aws/aws-sdk-go-v2/config v1.25.1 // indirect
+ github.com/aws/aws-sdk-go-v2/credentials v1.16.1 // indirect
+ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.4 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.3 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.3 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/ini v1.7.0 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.1 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.3 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sfn v1.22.1 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sso v1.17.2 // indirect
+ github.com/aws/aws-sdk-go-v2/service/ssooidc v1.19.2 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sts v1.25.2 // indirect
+ github.com/aws/smithy-go v1.17.0 // indirect
+ gonum.org/v1/gonum v0.14.0 // indirect
+)
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.sum b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.sum
new file mode 100644
index 0000000..8d6e9db
--- /dev/null
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/go.sum
@@ -0,0 +1,30 @@
+github.com/aws/aws-sdk-go-v2 v1.23.0 h1:PiHAzmiQQr6JULBUdvR8fKlA+UPKLT/8KbiqpFBWiAo=
+github.com/aws/aws-sdk-go-v2 v1.23.0/go.mod h1:i1XDttT4rnf6vxc9AuskLc6s7XBee8rlLilKlc03uAA=
+github.com/aws/aws-sdk-go-v2/config v1.25.1 h1:YsjngBOl2mx4l3egkVWndr6/6TqtkdsWJFZIsQ924Ek=
+github.com/aws/aws-sdk-go-v2/config v1.25.1/go.mod h1:yV6h7TRVzhdIFmUk9WWDRpWwYGg1woEzKr0k1IYz2Tk=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.1 h1:WessyrdgyFN5TB+eLQdrFSlN/3oMnqukIFhDxK6z8h0=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.1/go.mod h1:RQJyPxKcr+m4ArlIG1LUhMOrjposVfzbX6H8oR6oCgE=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.4 h1:9wKDWEjwSnXZre0/O3+ZwbBl1SmlgWYBbrTV10X/H1s=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.4/go.mod h1:t4i+yGHMCcUNIX1x7YVYa6bH/Do7civ5I6cG/6PMfyA=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.3 h1:DUwbD79T8gyQ23qVXFUthjzVMTviSHi3y4z58KvghhM=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.3/go.mod h1:7sGSz1JCKHWWBHq98m6sMtWQikmYPpxjqOydDemiVoM=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.3 h1:AplLJCtIaUZDCbr6+gLYdsYNxne4iuaboJhVt9d+WXI=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.3/go.mod h1:ify42Rb7nKeDDPkFjKn7q1bPscVPu/+gmHH8d2c+anU=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.0 h1:usgqiJtamuGIBj+OvYmMq89+Z1hIKkMJToz1WpoeNUY=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.0/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.1 h1:rpkF4n0CyFcrJUG/rNNohoTmhtWlFTRI4BsZOh9PvLs=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.1/go.mod h1:l9ymW25HOqymeU2m1gbUQ3rUIsTwKs8gYHXkqDQUhiI=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.3 h1:kJOolE8xBAD13xTCgOakByZkyP4D/owNmvEiioeUNAg=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.3/go.mod h1:Owv1I59vaghv1Ax8zz8ELY8DN7/Y0rGS+WWAmjgi950=
+github.com/aws/aws-sdk-go-v2/service/sfn v1.22.1 h1:kT2DEMbibZlhGbGiM3p34tNOI8bh82x9Fe7HLCrnjho=
+github.com/aws/aws-sdk-go-v2/service/sfn v1.22.1/go.mod h1:AM0scrWjoTK5MJ4++nLnqkdJfwAy9b0jV7EcANYn59M=
+github.com/aws/aws-sdk-go-v2/service/sso v1.17.2 h1:V47N5eKgVZoRSvx2+RQ0EpAEit/pqOhqeSQFiS4OFEQ=
+github.com/aws/aws-sdk-go-v2/service/sso v1.17.2/go.mod h1:/pE21vno3q1h4bbhUOEi+6Zu/aT26UK2WKkDXd+TssQ=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.19.2 h1:sMAcO7VHVw28HTAdZpTULDzFirHOsVm/x25CxhUH0jA=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.19.2/go.mod h1:dWqm5G767qwKPuayKfzm4rjzFmVjiBFbOJrpSPnAMDs=
+github.com/aws/aws-sdk-go-v2/service/sts v1.25.2 h1:vwyiRTnXLqsak/6WAQ+uTRhVqKI6vxUQ0HJXjKij0zM=
+github.com/aws/aws-sdk-go-v2/service/sts v1.25.2/go.mod h1:4EqRHDCKP78hq3zOnmFXu5k0j4bXbRFfCh/zQ6KnEfQ=
+github.com/aws/smithy-go v1.17.0 h1:wWJD7LX6PBV6etBUwO0zElG0nWN9rUhp0WdYeHSHAaI=
+github.com/aws/smithy-go v1.17.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE=
+gonum.org/v1/gonum v0.14.0 h1:2NiG67LD1tEH0D7kM+ps2V+fXmsAnpUeec7n8tcr4S0=
+gonum.org/v1/gonum v0.14.0/go.mod h1:AoWeoz0becf9QMWtE8iWXNXc27fK4fNeHNf/oMejGfU=
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/main.go b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/main.go
index e69de29..d41fc16 100644
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/main.go
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/main.go
@@ -0,0 +1,157 @@
+package main
+
+import (
+ "context"
+ "encoding/json"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/aws"
+ "github.com/aws/aws-sdk-go-v2/config"
+ "github.com/aws/aws-sdk-go-v2/service/sfn"
+ "log"
+ "os"
+ "os/exec"
+ "os/signal"
+ "strings"
+ "syscall"
+)
+
+// retryError:false serverSideCopies:0 serverSideCopyBytes:0 serverSideMoveBytes:0 serverSideMoves:0 speed:0 totalChecks:0 totalTransfers:1 transferTime:0.000586292 transfers:1
+type RcloneStats struct {
+ Bytes int `json:"bytes"`
+ Checks int `json:"checks"`
+ ElapsedTime float64 `json:"elapsedTime"`
+ Errors int `json:"errors"`
+ LastError string `json:"lastError"`
+ FatalError bool `json:"fatalError"`
+ TotalBytes int `json:"totalBytes"`
+}
+
+func If[T any](cond bool, vtrue, vfalse T) T {
+ if cond {
+ return vtrue
+ }
+ return vfalse
+}
+
+func main() {
+ cfg, err := config.LoadDefaultConfig(context.TODO())
+
+ if err != nil {
+ log.Fatalf("unable to load AWS config, %v", err)
+ }
+
+ // NOTE: if this was a traditional command line tool we would take these in as command
+ // line parameters. However, we are invoking this as an ECS Task and it turns out easier
+ // to pass these down via environment variables - saving the command line *only* for the list
+ // of files we want to copy
+ destination, destinationOk := os.LookupEnv("DESTINATION")
+
+ if !destinationOk {
+ log.Fatalf("No environment variable DESTINATION telling us where to copy the objects", err)
+ }
+
+ taskToken, taskTokenOk := os.LookupEnv("TASK_TOKEN")
+
+ // special environment variables that we can use for some debug/testing
+ debugBandwidth, debugBandwidthOk := os.LookupEnv("DEBUG_BANDWIDTH")
+
+ results := make(map[int]any)
+
+ signalChannel := make(chan os.Signal)
+
+ // set as soon as we receive a SIGTERM - so that we will then just quickly skip the rest of the files
+ interrupted := false
+
+ for i := 2; i < len(os.Args); i++ {
+ if !interrupted {
+ // setup an rclone copy with capture stats (noting that stats are sent to stderr)
+ cmd := exec.Command(os.Args[1],
+ "--use-json-log",
+ "--stats-log-level", "NOTICE",
+ "--stats-one-line",
+ // only display stats at the end (after 10000 hours)
+ "--stats", "10000h",
+ // normally no bandwidth limiting ("0") - but can institute bandwidth limit if asked
+ "--bwlimit", If(debugBandwidthOk, debugBandwidth, "0"),
+ "copy", os.Args[i], destination)
+
+ // we are only interested in stderr
+ stderrStringBuilder := new(strings.Builder)
+ cmd.Stderr = stderrStringBuilder
+
+ // we need to be able handling getting a SIGTERM when AWS wants to reclaim our SPOT instance
+ signal.Notify(signalChannel, os.Interrupt, syscall.SIGTERM)
+ go func() {
+ sig := <-signalChannel
+ switch sig {
+ case syscall.SIGTERM:
+ // terminate the currently running rclone
+ cmd.Process.Signal(syscall.SIGTERM)
+ // indicate we don't want future rclones to run
+ interrupted = true
+ }
+ }()
+
+ err := cmd.Run()
+
+ if err != nil {
+ results[i-2] = map[string]any{"lastError": "Interrupted by SIGTERM", "systemError": err}
+ }
+
+ // each line of stderr output is stats in JSON format or possibly other random messages
+ stderrStringLines := strings.Split(strings.TrimSuffix(stderrStringBuilder.String(), "\n"), "\n")
+
+ // attempt to process each line of log output to stderr as JSON (if not then ignore)
+ for _, line := range stderrStringLines {
+ var logLineJson map[string]any
+
+ logLineJsonErr := json.Unmarshal([]byte(line), &logLineJson)
+
+ if logLineJsonErr == nil {
+
+ statsValue, statsOk := logLineJson["stats"].(map[string]any)
+
+ if statsOk {
+ results[i-2] = statsValue
+ }
+ }
+ }
+ } else {
+ results[i-2] = map[string]any{"lastError": "Skipped due to SIGTERM received"}
+ }
+
+ // if asked we sleep for delay after seconds (this gives the outer environment
+ // time to send us a SIGINT etc)
+ /*if debugDelayAfterOk {
+ debugDelayAfterFloat, err := strconv.ParseFloat(debugDelayAfter, 64)
+ if err == nil {
+ time.Sleep(time.Duration(debugDelayAfterFloat) * time.Second)
+ }
+ } */
+
+ }
+
+ resultsJson, err := json.MarshalIndent(results, "", " ")
+
+ if err != nil {
+ log.Fatalf("Could not marshall the rclone outputs to JSON", err)
+ }
+
+ resultsString := string(resultsJson)
+
+ // the normal mechanism by which we will send back results to our caller is
+ // Steps SendTask - which sends back JSON
+ if taskTokenOk {
+ sfnSvc := sfn.NewFromConfig(cfg)
+
+ sfnSvc.SendTaskSuccess(context.TODO(), &sfn.SendTaskSuccessInput{
+ Output: aws.String(resultsString),
+ TaskToken: aws.String(taskToken),
+ })
+
+ fmt.Println(taskToken)
+ } else {
+ // if no task token was given then we just print the results
+ fmt.Println(resultsString)
+ }
+}
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-assert.sh b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-assert.sh
new file mode 100755
index 0000000..a0c8723
--- /dev/null
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-assert.sh
@@ -0,0 +1,186 @@
+#!/bin/bash
+# assert.sh 1.1 - bash unit testing framework
+# Copyright (C) 2009-2015 Robert Lehmann
+#
+# http://github.com/lehmannro/assert.sh
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published
+# by the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program. If not, see .
+
+export DISCOVERONLY=${DISCOVERONLY:-}
+export DEBUG=${DEBUG:-}
+export STOP=${STOP:-}
+export INVARIANT=${INVARIANT:-}
+export CONTINUE=${CONTINUE:-}
+
+args="$(getopt -n "$0" -l \
+ verbose,help,stop,discover,invariant,continue vhxdic $*)" \
+|| exit -1
+for arg in $args; do
+ case "$arg" in
+ -h)
+ echo "$0 [-vxidc]" \
+ "[--verbose] [--stop] [--invariant] [--discover] [--continue]"
+ echo "`sed 's/./ /g' <<< "$0"` [-h] [--help]"
+ exit 0;;
+ --help)
+ cat < [stdin]
+ (( tests_ran++ )) || :
+ [[ -z "$DISCOVERONLY" ]] || return
+ expected=$(echo -ne "${2:-}")
+ result="$(eval 2>/dev/null $1 <<< ${3:-})" || true
+ if [[ "$result" == "$expected" ]]; then
+ [[ -z "$DEBUG" ]] || echo -n .
+ return
+ fi
+ result="$(sed -e :a -e '$!N;s/\n/\\n/;ta' <<< "$result")"
+ [[ -z "$result" ]] && result="nothing" || result="\"$result\""
+ [[ -z "$2" ]] && expected="nothing" || expected="\"$2\""
+ _assert_fail "expected $expected${_indent}got $result" "$1" "$3"
+}
+
+assert_raises() {
+ # assert_raises [stdin]
+ (( tests_ran++ )) || :
+ [[ -z "$DISCOVERONLY" ]] || return
+ status=0
+ (eval $1 <<< ${3:-}) > /dev/null 2>&1 || status=$?
+ expected=${2:-0}
+ if [[ "$status" -eq "$expected" ]]; then
+ [[ -z "$DEBUG" ]] || echo -n .
+ return
+ fi
+ _assert_fail "program terminated with code $status instead of $expected" "$1" "$3"
+}
+
+_assert_fail() {
+ # _assert_fail
+ [[ -n "$DEBUG" ]] && echo -n X
+ report="test #$tests_ran \"$2${3:+ <<< $3}\" failed:${_indent}$1"
+ if [[ -n "$STOP" ]]; then
+ [[ -n "$DEBUG" ]] && echo
+ echo "$report"
+ exit 1
+ fi
+ tests_errors[$tests_failed]="$report"
+ (( tests_failed++ )) || :
+}
+
+skip_if() {
+ # skip_if
+ (eval $@) > /dev/null 2>&1 && status=0 || status=$?
+ [[ "$status" -eq 0 ]] || return
+ skip
+}
+
+skip() {
+ # skip (no arguments)
+ shopt -q extdebug && tests_extdebug=0 || tests_extdebug=1
+ shopt -q -o errexit && tests_errexit=0 || tests_errexit=1
+ # enable extdebug so returning 1 in a DEBUG trap handler skips next command
+ shopt -s extdebug
+ # disable errexit (set -e) so we can safely return 1 without causing exit
+ set +o errexit
+ tests_trapped=0
+ trap _skip DEBUG
+}
+_skip() {
+ if [[ $tests_trapped -eq 0 ]]; then
+ # DEBUG trap for command we want to skip. Do not remove the handler
+ # yet because *after* the command we need to reset extdebug/errexit (in
+ # another DEBUG trap.)
+ tests_trapped=1
+ [[ -z "$DEBUG" ]] || echo -n s
+ return 1
+ else
+ trap - DEBUG
+ [[ $tests_extdebug -eq 0 ]] || shopt -u extdebug
+ [[ $tests_errexit -eq 1 ]] || set -o errexit
+ return 0
+ fi
+}
+
+
+_assert_reset
+: ${tests_suite_status:=0} # remember if any of the tests failed so far
+_assert_cleanup() {
+ local status=$?
+ # modify exit code if it's not already non-zero
+ [[ $status -eq 0 && -z $CONTINUE ]] && exit $tests_suite_status
+}
+trap _assert_cleanup EXIT
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-docker-direct.sh b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-docker-direct.sh
old mode 100644
new mode 100755
index e69de29..25b51f2
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-docker-direct.sh
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-docker-direct.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+# we want to exit immediately on error (especially for Go/Docker build errors)
+set -e
+
+docker build . -t rclone-batch
+
+docker run rclone-batch -e DESTINATION=/tmp
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-go-direct.sh b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-go-direct.sh
old mode 100644
new mode 100755
index e69de29..8c0ede4
--- a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-go-direct.sh
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/test-go-direct.sh
@@ -0,0 +1,86 @@
+#!/bin/bash
+
+# this is a setting which is system dependent - feel free to change to the location of your
+# dev system rclone binary (this one is brew installed on a Mac M1)
+RCLONE_BINARY=$(which rclone)
+
+# we want to exit immediately on error (especially for Go compile errors)
+set -e
+
+# bring in some helpful bash assertions
+. test-assert.sh
+
+# build our rclone batch executable
+go build
+
+# make a temporary directory for the copy destination
+TEMPD=$(mktemp -d)
+if [ ! -e "$TEMPD" ]; then
+ >&2 echo "Failed to create temp directory"
+ exit 1
+fi
+
+trap 'rm -rf "$TEMPD"' EXIT
+
+#
+# test 1 (main case of just copying files)
+#
+
+DESTINATION="$TEMPD/test1" ./rclone-batch $RCLONE_BINARY ./testfile1.txt ./testfile2.txt > "$TEMPD/result.json"
+
+# Uncomment to debug invalid result
+# cat "$TEMPD/result.json"
+
+assert " find $TEMPD/test1 -type f | awk 'END{print NR}' " "2"
+assert " cat $TEMPD/result.json | jq -r '.\"0\" | .bytes' " "20"
+assert " cat $TEMPD/result.json | jq -r '.\"1\" | .bytes' " "21"
+
+rm "$TEMPD/result.json"
+
+#
+# test 2 (error cases with one file to fail)
+#
+
+DESTINATION="$TEMPD/test2" ./rclone-batch $RCLONE_BINARY ./afilethatdoesnotexist.txt ./testfile2.txt > "$TEMPD/result.json"
+
+# Uncomment to debug invalid result
+# cat "$TEMPD/result.json"
+
+assert "find $TEMPD/test2 -type f | awk 'END{print NR}'" "1"
+assert " cat $TEMPD/result.json | jq -r '.\"0\" | .lastError' " "directory not found"
+assert " cat $TEMPD/result.json | jq -r '.\"0\" | .bytes' " "0"
+assert " cat $TEMPD/result.json | jq -r '.\"1\" | .lastError' " "null"
+assert " cat $TEMPD/result.json | jq -r '.\"1\" | .bytes' " "21"
+
+rm "$TEMPD/result.json"
+
+#
+# test 3 (signal intercept)
+#
+# this is a test that app will intercept a SIGTERM, pass it to any running rclone process,
+# and return sensible results
+#
+
+# we set the bandwidth to 1B so that it is slow enough that our TERM signal will come mid-process
+# we start this execution in the background
+DESTINATION="$TEMPD/test3" DEBUG_BANDWIDTH="1B" ./rclone-batch $RCLONE_BINARY ./testfile1.txt ./testfile2.txt > "$TEMPD/result.json" &
+
+# wait a small amount
+sleep 1
+
+# now send a SIGTERM to the launched job
+kill %1
+
+# Uncomment to debug invalid result
+# cat "$TEMPD/result.json"
+
+assert " cat $TEMPD/result.json | jq -r '.\"0\" | .lastError' " "Interrupted by SIGTERM"
+assert " cat $TEMPD/result.json | jq -r '.\"1\" | .lastError' " "Skipped due to SIGTERM received"
+
+rm "$TEMPD/result.json"
+
+#
+# end overall testing and set return code
+#
+
+assert_end examples
diff --git a/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/testfile2.txt b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/testfile2.txt
new file mode 100644
index 0000000..79dfee6
--- /dev/null
+++ b/packages/aws-copy-out-sharer/construct/rclone-go-batch-copy-docker-image/testfile2.txt
@@ -0,0 +1 @@
+This is test file 2
diff --git a/packages/aws-copy-out-sharer/construct/thaw-objects-lambda-step-construct.ts b/packages/aws-copy-out-sharer/construct/thaw-objects-lambda-step-construct.ts
index 6430ad5..15add7c 100644
--- a/packages/aws-copy-out-sharer/construct/thaw-objects-lambda-step-construct.ts
+++ b/packages/aws-copy-out-sharer/construct/thaw-objects-lambda-step-construct.ts
@@ -8,7 +8,7 @@ import { JsonPath } from "aws-cdk-lib/aws-stepfunctions";
import { NodejsFunction } from "aws-cdk-lib/aws-lambda-nodejs";
import { join } from "path";
-type CanWriteLambdaStepProps = {
+type ThawObjectsLambdaStepProps = {
vpc: IVpc;
vpcSubnetSelection: SubnetType;
@@ -30,10 +30,10 @@ type CanWriteLambdaStepProps = {
* bucket exists, is in the correct region, and is writeable
* by us. Throws an exception if any of these conditions is not met.
*/
-export class CanWriteLambdaStepConstruct extends Construct {
+export class ThawObjectsLambdaStepConstruct extends Construct {
public readonly invocableLambda;
- constructor(scope: Construct, id: string, props: CanWriteLambdaStepProps) {
+ constructor(scope: Construct, id: string, props: ThawObjectsLambdaStepProps) {
super(scope, id);
const canWriteLambda = new NodejsFunction(this, "CanWriteFunction", {
diff --git a/packages/aws-copy-out-sharer/construct/thaw-objects-lambda/package.json b/packages/aws-copy-out-sharer/construct/thaw-objects-lambda/package.json
index 6c62bf2..c97b73b 100644
--- a/packages/aws-copy-out-sharer/construct/thaw-objects-lambda/package.json
+++ b/packages/aws-copy-out-sharer/construct/thaw-objects-lambda/package.json
@@ -1,7 +1,7 @@
{
"name": "can-write-lambda",
"version": "1.0.0",
- "main": "can-write-lambda.js",
+ "main": "thaw-objects-lambda.js",
"dependencies": {
"@aws-sdk/client-s3": "^3.405.0"
}
diff --git a/packages/aws-copy-out-sharer/copy-out-stack.ts b/packages/aws-copy-out-sharer/copy-out-stack.ts
index 18767da..aecc5f5 100644
--- a/packages/aws-copy-out-sharer/copy-out-stack.ts
+++ b/packages/aws-copy-out-sharer/copy-out-stack.ts
@@ -4,7 +4,7 @@ import { CopyOutStackProps } from "./copy-out-stack-props";
import { Cluster } from "aws-cdk-lib/aws-ecs";
import { CopyOutStateMachineConstruct } from "./construct/copy-out-state-machine-construct";
import { Service } from "aws-cdk-lib/aws-servicediscovery";
-import { InfrastructureClient } from "@elsa-data/aws-infrastructure-client";
+import { InfrastructureClient } from "@elsa-data/aws-infrastructure";
export { CopyOutStackProps, SubnetType } from "./copy-out-stack-props";
@@ -31,12 +31,18 @@ export class CopyOutStack extends Stack {
description: "Parallel file copying service",
});
- new CopyOutStateMachineConstruct(this, "CopyOut", {
+ const copyOut = new CopyOutStateMachineConstruct(this, "CopyOut", {
vpc: vpc,
vpcSubnetSelection: props.infrastructureSubnetSelection,
fargateCluster: cluster,
- namespaceService: service,
aggressiveTimes: props.isDevelopment,
+ allowWriteToThisAccount: props.isDevelopment,
+ });
+
+ service.registerNonIpInstance("StateMachine", {
+ customAttributes: {
+ stateMachineArn: copyOut.stateMachine.stateMachineArn,
+ },
});
}
}
diff --git a/packages/aws-copy-out-sharer/package.json b/packages/aws-copy-out-sharer/package.json
index ae2cb29..8a2c7ed 100644
--- a/packages/aws-copy-out-sharer/package.json
+++ b/packages/aws-copy-out-sharer/package.json
@@ -28,18 +28,17 @@
"targets": {}
},
"dependencies": {
- "@elsa-data/aws-infrastructure-client": "1.3.4"
+ "@elsa-data/aws-infrastructure": "^1.5.1"
},
"peerDependencies": {
- "aws-cdk-lib": "^2.93.0",
- "constructs": "^10.2.70",
- "@elsa-data/aws-infrastructure-client": "^1.3.4"
+ "aws-cdk-lib": "^2.108.1",
+ "constructs": "^10.3.0"
},
"devDependencies": {
- "aws-cdk-lib": "2.93.0",
- "constructs": "10.2.70",
- "jsii": "5.2.2",
- "jsii-pacmak": "1.88.0",
- "publib": "0.2.737"
+ "aws-cdk-lib": "2.108.1",
+ "constructs": "10.3.0",
+ "jsii": "5.2.29",
+ "jsii-pacmak": "1.91.0",
+ "publib": "0.2.745"
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 14a5e34..41908af 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -28,43 +28,52 @@ importers:
dev:
dependencies:
+ "@aws-sdk/client-s3":
+ specifier: 3.450.0
+ version: 3.450.0
+ "@aws-sdk/client-servicediscovery":
+ specifier: 3.450.0
+ version: 3.450.0
+ "@aws-sdk/client-sfn":
+ specifier: 3.450.0
+ version: 3.450.0
aws-cdk:
- specifier: 2.93.0
- version: 2.93.0
+ specifier: 2.108.1
+ version: 2.108.1
aws-cdk-lib:
- specifier: 2.93.0
- version: 2.93.0(constructs@10.2.70)
+ specifier: 2.108.1
+ version: 2.108.1(constructs@10.3.0)
aws-copy-out-sharer:
specifier: link:../packages/aws-copy-out-sharer
version: link:../packages/aws-copy-out-sharer
packages/aws-copy-out-sharer:
dependencies:
- "@elsa-data/aws-infrastructure-client":
- specifier: 1.3.4
- version: 1.3.4(aws-cdk-lib@2.93.0)(constructs@10.2.70)
+ "@elsa-data/aws-infrastructure":
+ specifier: ^1.5.1
+ version: 1.5.1(aws-cdk-lib@2.108.1)(constructs@10.3.0)
devDependencies:
aws-cdk-lib:
- specifier: 2.93.0
- version: 2.93.0(constructs@10.2.70)
+ specifier: 2.108.1
+ version: 2.108.1(constructs@10.3.0)
constructs:
- specifier: 10.2.70
- version: 10.2.70
+ specifier: 10.3.0
+ version: 10.3.0
jsii:
- specifier: 5.2.2
- version: 5.2.2
+ specifier: 5.2.29
+ version: 5.2.29
jsii-pacmak:
- specifier: 1.88.0
- version: 1.88.0
+ specifier: 1.91.0
+ version: 1.91.0
publib:
- specifier: 0.2.737
- version: 0.2.737
+ specifier: 0.2.745
+ version: 0.2.745
packages:
- /@aws-cdk/asset-awscli-v1@2.2.200:
+ /@aws-cdk/asset-awscli-v1@2.2.201:
resolution:
{
- integrity: sha512-Kf5J8DfJK4wZFWT2Myca0lhwke7LwHcHBo+4TvWOGJrFVVKVuuiLCkzPPRBQQVDj0Vtn2NBokZAz8pfMpAqAKg==,
+ integrity: sha512-INZqcwDinNaIdb5CtW3ez5s943nX5stGBQS6VOP2JDlOFP81hM3fds/9NDknipqfUkZM43dx+HgVvkXYXXARCQ==,
}
/@aws-cdk/asset-kubectl-v20@2.1.2:
@@ -88,7 +97,17 @@ packages:
"@aws-crypto/util": 3.0.0
"@aws-sdk/types": 3.398.0
tslib: 1.14.1
- dev: true
+
+ /@aws-crypto/crc32c@3.0.0:
+ resolution:
+ {
+ integrity: sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==,
+ }
+ dependencies:
+ "@aws-crypto/util": 3.0.0
+ "@aws-sdk/types": 3.449.0
+ tslib: 1.14.1
+ dev: false
/@aws-crypto/ie11-detection@3.0.0:
resolution:
@@ -97,7 +116,21 @@ packages:
}
dependencies:
tslib: 1.14.1
- dev: true
+
+ /@aws-crypto/sha1-browser@3.0.0:
+ resolution:
+ {
+ integrity: sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==,
+ }
+ dependencies:
+ "@aws-crypto/ie11-detection": 3.0.0
+ "@aws-crypto/supports-web-crypto": 3.0.0
+ "@aws-crypto/util": 3.0.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-locate-window": 3.310.0
+ "@aws-sdk/util-utf8-browser": 3.259.0
+ tslib: 1.14.1
+ dev: false
/@aws-crypto/sha256-browser@3.0.0:
resolution:
@@ -109,11 +142,10 @@ packages:
"@aws-crypto/sha256-js": 3.0.0
"@aws-crypto/supports-web-crypto": 3.0.0
"@aws-crypto/util": 3.0.0
- "@aws-sdk/types": 3.398.0
+ "@aws-sdk/types": 3.451.0
"@aws-sdk/util-locate-window": 3.310.0
"@aws-sdk/util-utf8-browser": 3.259.0
tslib: 1.14.1
- dev: true
/@aws-crypto/sha256-js@3.0.0:
resolution:
@@ -122,9 +154,8 @@ packages:
}
dependencies:
"@aws-crypto/util": 3.0.0
- "@aws-sdk/types": 3.398.0
+ "@aws-sdk/types": 3.451.0
tslib: 1.14.1
- dev: true
/@aws-crypto/supports-web-crypto@3.0.0:
resolution:
@@ -133,7 +164,6 @@ packages:
}
dependencies:
tslib: 1.14.1
- dev: true
/@aws-crypto/util@3.0.0:
resolution:
@@ -144,460 +174,1138 @@ packages:
"@aws-sdk/types": 3.398.0
"@aws-sdk/util-utf8-browser": 3.259.0
tslib: 1.14.1
- dev: true
- /@aws-sdk/client-codeartifact@3.405.0:
+ /@aws-sdk/client-codeartifact@3.451.0:
resolution:
{
- integrity: sha512-eucE3/7+L11MrBNmp5kDz9YcwIwYA0aoDQlmE0Nte1QuEW0nOykfyA/UnWnoCHjScZfMXpY1mgH7MbqYvQ0o6A==,
+ integrity: sha512-uM9/zPdP3xAi2sXFNa2/uzMVak0/pk7zcybFxUKuzG3mzUS05lbnbm5rz4l3ePoBidEE1Zqy070S6Uhl4SMl2g==,
}
engines: { node: ">=14.0.0" }
dependencies:
"@aws-crypto/sha256-browser": 3.0.0
"@aws-crypto/sha256-js": 3.0.0
- "@aws-sdk/client-sts": 3.405.0
- "@aws-sdk/credential-provider-node": 3.405.0
- "@aws-sdk/middleware-host-header": 3.398.0
- "@aws-sdk/middleware-logger": 3.398.0
- "@aws-sdk/middleware-recursion-detection": 3.398.0
- "@aws-sdk/middleware-signing": 3.398.0
- "@aws-sdk/middleware-user-agent": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@aws-sdk/util-user-agent-browser": 3.398.0
- "@aws-sdk/util-user-agent-node": 3.405.0
- "@smithy/config-resolver": 2.0.5
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/hash-node": 2.0.5
- "@smithy/invalid-dependency": 2.0.5
- "@smithy/middleware-content-length": 2.0.5
- "@smithy/middleware-endpoint": 2.0.5
- "@smithy/middleware-retry": 2.0.5
- "@smithy/middleware-serde": 2.0.5
- "@smithy/middleware-stack": 2.0.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/node-http-handler": 2.0.5
- "@smithy/protocol-http": 2.0.5
- "@smithy/smithy-client": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
- "@smithy/util-base64": 2.0.0
+ "@aws-sdk/client-sts": 3.451.0
+ "@aws-sdk/core": 3.451.0
+ "@aws-sdk/credential-provider-node": 3.451.0
+ "@aws-sdk/middleware-host-header": 3.451.0
+ "@aws-sdk/middleware-logger": 3.451.0
+ "@aws-sdk/middleware-recursion-detection": 3.451.0
+ "@aws-sdk/middleware-signing": 3.451.0
+ "@aws-sdk/middleware-user-agent": 3.451.0
+ "@aws-sdk/region-config-resolver": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@aws-sdk/util-user-agent-browser": 3.451.0
+ "@aws-sdk/util-user-agent-node": 3.451.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
"@smithy/util-body-length-browser": 2.0.0
"@smithy/util-body-length-node": 2.1.0
- "@smithy/util-defaults-mode-browser": 2.0.6
- "@smithy/util-defaults-mode-node": 2.0.7
- "@smithy/util-retry": 2.0.0
- "@smithy/util-stream": 2.0.5
- "@smithy/util-utf8": 2.0.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-stream": 2.0.20
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/client-cognito-identity@3.405.0:
+ /@aws-sdk/client-cognito-identity@3.451.0:
resolution:
{
- integrity: sha512-kvmNAREFQbhaZoEMQzBOYTaN7cFIOLgk2DZYYlHh2ErUYXSbvbVOBUriMRW9hRDtKLooe3ZFBLO3sWKvQE/AfA==,
+ integrity: sha512-xoImUiGoaXJZpOCgbWcdrU4vHJ8HG5KluaCkc32kuFobM277sjQimaUIHOGHL24M5vyo4QxcJD9CT/IhX63Vlg==,
}
engines: { node: ">=14.0.0" }
dependencies:
"@aws-crypto/sha256-browser": 3.0.0
"@aws-crypto/sha256-js": 3.0.0
- "@aws-sdk/client-sts": 3.405.0
- "@aws-sdk/credential-provider-node": 3.405.0
- "@aws-sdk/middleware-host-header": 3.398.0
- "@aws-sdk/middleware-logger": 3.398.0
- "@aws-sdk/middleware-recursion-detection": 3.398.0
- "@aws-sdk/middleware-signing": 3.398.0
- "@aws-sdk/middleware-user-agent": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@aws-sdk/util-user-agent-browser": 3.398.0
- "@aws-sdk/util-user-agent-node": 3.405.0
- "@smithy/config-resolver": 2.0.5
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/hash-node": 2.0.5
- "@smithy/invalid-dependency": 2.0.5
- "@smithy/middleware-content-length": 2.0.5
- "@smithy/middleware-endpoint": 2.0.5
- "@smithy/middleware-retry": 2.0.5
- "@smithy/middleware-serde": 2.0.5
- "@smithy/middleware-stack": 2.0.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/node-http-handler": 2.0.5
- "@smithy/protocol-http": 2.0.5
- "@smithy/smithy-client": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
- "@smithy/util-base64": 2.0.0
+ "@aws-sdk/client-sts": 3.451.0
+ "@aws-sdk/core": 3.451.0
+ "@aws-sdk/credential-provider-node": 3.451.0
+ "@aws-sdk/middleware-host-header": 3.451.0
+ "@aws-sdk/middleware-logger": 3.451.0
+ "@aws-sdk/middleware-recursion-detection": 3.451.0
+ "@aws-sdk/middleware-signing": 3.451.0
+ "@aws-sdk/middleware-user-agent": 3.451.0
+ "@aws-sdk/region-config-resolver": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@aws-sdk/util-user-agent-browser": 3.451.0
+ "@aws-sdk/util-user-agent-node": 3.451.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
"@smithy/util-body-length-browser": 2.0.0
"@smithy/util-body-length-node": 2.1.0
- "@smithy/util-defaults-mode-browser": 2.0.6
- "@smithy/util-defaults-mode-node": 2.0.7
- "@smithy/util-retry": 2.0.0
- "@smithy/util-utf8": 2.0.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/client-sso@3.405.0:
+ /@aws-sdk/client-s3@3.450.0:
resolution:
{
- integrity: sha512-z1ssydU07bDhe0tNXQwVO+rWh/iSfK48JI8s8vgpBNwH+NejMzIJ9r3AkjCiJ+LSAwlBZItUsNWwR0veIfgBiw==,
+ integrity: sha512-mw+zNVOXqsNjGrKjykcqxsiTMHTomcFEYODa5CEE6CeJQ2COwjNN9urzFO/uocA9z/2K3t1dG/q+2mvP0EcC2A==,
}
engines: { node: ">=14.0.0" }
dependencies:
+ "@aws-crypto/sha1-browser": 3.0.0
"@aws-crypto/sha256-browser": 3.0.0
"@aws-crypto/sha256-js": 3.0.0
- "@aws-sdk/middleware-host-header": 3.398.0
- "@aws-sdk/middleware-logger": 3.398.0
- "@aws-sdk/middleware-recursion-detection": 3.398.0
- "@aws-sdk/middleware-user-agent": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@aws-sdk/util-user-agent-browser": 3.398.0
- "@aws-sdk/util-user-agent-node": 3.405.0
- "@smithy/config-resolver": 2.0.5
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/hash-node": 2.0.5
- "@smithy/invalid-dependency": 2.0.5
- "@smithy/middleware-content-length": 2.0.5
- "@smithy/middleware-endpoint": 2.0.5
- "@smithy/middleware-retry": 2.0.5
- "@smithy/middleware-serde": 2.0.5
- "@smithy/middleware-stack": 2.0.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/node-http-handler": 2.0.5
- "@smithy/protocol-http": 2.0.5
- "@smithy/smithy-client": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
+ "@aws-sdk/client-sts": 3.450.0
+ "@aws-sdk/core": 3.445.0
+ "@aws-sdk/credential-provider-node": 3.450.0
+ "@aws-sdk/middleware-bucket-endpoint": 3.449.0
+ "@aws-sdk/middleware-expect-continue": 3.449.0
+ "@aws-sdk/middleware-flexible-checksums": 3.449.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-location-constraint": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-sdk-s3": 3.449.0
+ "@aws-sdk/middleware-signing": 3.449.0
+ "@aws-sdk/middleware-ssec": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/signature-v4-multi-region": 3.449.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@aws-sdk/xml-builder": 3.310.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/eventstream-serde-browser": 2.0.13
+ "@smithy/eventstream-serde-config-resolver": 2.0.13
+ "@smithy/eventstream-serde-node": 2.0.13
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-blob-browser": 2.0.14
+ "@smithy/hash-node": 2.0.15
+ "@smithy/hash-stream-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/md5-js": 2.0.15
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
"@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.6
- "@smithy/util-defaults-mode-node": 2.0.7
- "@smithy/util-retry": 2.0.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-stream": 2.0.20
"@smithy/util-utf8": 2.0.0
+ "@smithy/util-waiter": 2.0.13
+ fast-xml-parser: 4.2.5
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/client-servicediscovery@3.450.0:
+ resolution:
+ {
+ integrity: sha512-TM4KvHrw+Fq9yPQhzRINQ79jP24lS8JfiGb7mEKPZbRIMu0bW+26zgELD9BftfPa/vtubFwBA0qcwpk/g3J5SA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/client-sts": 3.450.0
+ "@aws-sdk/core": 3.445.0
+ "@aws-sdk/credential-provider-node": 3.450.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-signing": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
+ tslib: 2.6.2
+ uuid: 8.3.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/client-sfn@3.450.0:
+ resolution:
+ {
+ integrity: sha512-z0SyE6fUpJ3IEbaHruw4oCqszxAt97507/KZBv89DLFz2WBuZCmq4hr0rp4/rQuMzi6X9Tvd6MZP4GeuNWDm8g==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/client-sts": 3.450.0
+ "@aws-sdk/core": 3.445.0
+ "@aws-sdk/credential-provider-node": 3.450.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-signing": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/client-sso@3.450.0:
+ resolution:
+ {
+ integrity: sha512-xutima6DhrTLMyBc1nmLhWXarvrqbH1zizrQpG7cLdwfqHEOi3thR3SWu+pUC4XN9kiXQUb2HUMcv/vdqmknkQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/core": 3.445.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/client-sso@3.451.0:
+ resolution:
+ {
+ integrity: sha512-KkYSke3Pdv3MfVH/5fT528+MKjMyPKlcLcd4zQb0x6/7Bl7EHrPh1JZYjzPLHelb+UY5X0qN8+cb8iSu1eiwIQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/core": 3.451.0
+ "@aws-sdk/middleware-host-header": 3.451.0
+ "@aws-sdk/middleware-logger": 3.451.0
+ "@aws-sdk/middleware-recursion-detection": 3.451.0
+ "@aws-sdk/middleware-user-agent": 3.451.0
+ "@aws-sdk/region-config-resolver": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@aws-sdk/util-user-agent-browser": 3.451.0
+ "@aws-sdk/util-user-agent-node": 3.451.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/client-sts@3.405.0:
+ /@aws-sdk/client-sts@3.450.0:
resolution:
{
- integrity: sha512-asVEpda3zu5QUO5ZNNjbLBS0718IhxxyUDVrNmVTKZoOhK1pMNouGZf+l49v0Lb5cOPbUds8cxsNaInj2MvIKw==,
+ integrity: sha512-pHZ/3NHHtK5YbjYrh2jT8eePSYSunyvcIhdASMqYVg3Enw/BxA0IKL8bZ/slolhqR1sAQx4sKRAO7dZK418Q6w==,
}
engines: { node: ">=14.0.0" }
dependencies:
"@aws-crypto/sha256-browser": 3.0.0
"@aws-crypto/sha256-js": 3.0.0
- "@aws-sdk/credential-provider-node": 3.405.0
- "@aws-sdk/middleware-host-header": 3.398.0
- "@aws-sdk/middleware-logger": 3.398.0
- "@aws-sdk/middleware-recursion-detection": 3.398.0
- "@aws-sdk/middleware-sdk-sts": 3.398.0
- "@aws-sdk/middleware-signing": 3.398.0
- "@aws-sdk/middleware-user-agent": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@aws-sdk/util-user-agent-browser": 3.398.0
- "@aws-sdk/util-user-agent-node": 3.405.0
- "@smithy/config-resolver": 2.0.5
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/hash-node": 2.0.5
- "@smithy/invalid-dependency": 2.0.5
- "@smithy/middleware-content-length": 2.0.5
- "@smithy/middleware-endpoint": 2.0.5
- "@smithy/middleware-retry": 2.0.5
- "@smithy/middleware-serde": 2.0.5
- "@smithy/middleware-stack": 2.0.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/node-http-handler": 2.0.5
- "@smithy/protocol-http": 2.0.5
- "@smithy/smithy-client": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
- "@smithy/util-base64": 2.0.0
+ "@aws-sdk/core": 3.445.0
+ "@aws-sdk/credential-provider-node": 3.450.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-sdk-sts": 3.449.0
+ "@aws-sdk/middleware-signing": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
"@smithy/util-body-length-browser": 2.0.0
"@smithy/util-body-length-node": 2.1.0
- "@smithy/util-defaults-mode-browser": 2.0.6
- "@smithy/util-defaults-mode-node": 2.0.7
- "@smithy/util-retry": 2.0.0
- "@smithy/util-utf8": 2.0.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
+ fast-xml-parser: 4.2.5
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/client-sts@3.451.0:
+ resolution:
+ {
+ integrity: sha512-48NcIRxWBdP1fom6RSjwn2R2u7SE7eeV3p+c4s7ukEOfrHhBxJfn3EpqBVQMGzdiU55qFImy+Fe81iA2lXq3Jw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/core": 3.451.0
+ "@aws-sdk/credential-provider-node": 3.451.0
+ "@aws-sdk/middleware-host-header": 3.451.0
+ "@aws-sdk/middleware-logger": 3.451.0
+ "@aws-sdk/middleware-recursion-detection": 3.451.0
+ "@aws-sdk/middleware-sdk-sts": 3.451.0
+ "@aws-sdk/middleware-signing": 3.451.0
+ "@aws-sdk/middleware-user-agent": 3.451.0
+ "@aws-sdk/region-config-resolver": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@aws-sdk/util-user-agent-browser": 3.451.0
+ "@aws-sdk/util-user-agent-node": 3.451.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
fast-xml-parser: 4.2.5
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/credential-provider-cognito-identity@3.405.0:
+ /@aws-sdk/core@3.445.0:
resolution:
{
- integrity: sha512-tmu8r0kB3qHHIitQAwiziWzxoaGCv/vCh00EcabuW3x3UsKQUF71ZLuNcMOv5wqTsQw0Fmv3dKy2tzVmRm3Z5g==,
+ integrity: sha512-6GYLElUG1QTOdmXG8zXa+Ull9IUeSeItKDYHKzHYfIkbsagMfYlf7wm9XIYlatjtgodNfZ3gPHAJfRyPmwKrsg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/client-cognito-identity": 3.405.0
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@smithy/smithy-client": 2.1.15
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/core@3.451.0:
+ resolution:
+ {
+ integrity: sha512-SamWW2zHEf1ZKe3j1w0Piauryl8BQIlej0TBS18A4ACzhjhWXhCs13bO1S88LvPR5mBFXok3XOT6zPOnKDFktw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/smithy-client": 2.1.15
+ tslib: 2.6.2
+ dev: true
+
+ /@aws-sdk/credential-provider-cognito-identity@3.451.0:
+ resolution:
+ {
+ integrity: sha512-g1ZT46NuYfou00d94rJZ59N4TLI1T+v46lbHTtF9jwohiUsi7/vHkPIOdrgtrThGzGUVl01w62N0a2mpMydaBA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/client-cognito-identity": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/credential-provider-env@3.398.0:
+ /@aws-sdk/credential-provider-env@3.449.0:
resolution:
{
- integrity: sha512-Z8Yj5z7FroAsR6UVML+XUdlpoqEe9Dnle8c2h8/xWwIC2feTfIBhjLhRVxfbpbM1pLgBSNEcZ7U8fwq5l7ESVQ==,
+ integrity: sha512-SwO9XQcBoyA0XrsSmgnMqCnR99wIyp+BjGhvzDU+Wetib7QPt++E2slJkLM/iCNc6YiqiHZtHsvXapSV7RzBJw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/credential-provider-env@3.451.0:
+ resolution:
+ {
+ integrity: sha512-9dAav7DcRgaF7xCJEQR5ER9ErXxnu/tdnVJ+UPmb1NPeIZdESv1A3lxFDEq1Fs8c4/lzAj9BpshGyJVIZwZDKg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/credential-provider-ini@3.405.0:
+ /@aws-sdk/credential-provider-http@3.451.0:
resolution:
{
- integrity: sha512-b4TqVsM4WQM96GDVs+TYOhU2/0SnUWzz6NH55qY1y2xyF8/pZEhc0XXdpvZtQQBLGdROhXCbxhBVye8GmTpgcg==,
+ integrity: sha512-q82kEzymqimkJ2dHmuN2RGpi9HTFSxwwoXALnzPRaRcvR/v+YY8FMgSTfwXzPkHUDf/q8J+aDz6lPcYlnsP3sQ==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/credential-provider-env": 3.398.0
- "@aws-sdk/credential-provider-process": 3.405.0
- "@aws-sdk/credential-provider-sso": 3.405.0
- "@aws-sdk/credential-provider-web-identity": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@smithy/credential-provider-imds": 2.0.7
- "@smithy/property-provider": 2.0.6
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.451.0
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/property-provider": 2.0.14
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/util-stream": 2.0.20
+ tslib: 2.6.2
+ dev: true
+
+ /@aws-sdk/credential-provider-ini@3.450.0:
+ resolution:
+ {
+ integrity: sha512-quil0bUH43irhEtHBBpnleVQd1ZBX9kDVf8HziK/LIhujTmHDAoDODnjhUczdJU6srMJgAJi1oVTaVek5emh9Q==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/credential-provider-env": 3.449.0
+ "@aws-sdk/credential-provider-process": 3.449.0
+ "@aws-sdk/credential-provider-sso": 3.450.0
+ "@aws-sdk/credential-provider-web-identity": 3.449.0
+ "@aws-sdk/types": 3.449.0
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/credential-provider-ini@3.451.0:
+ resolution:
+ {
+ integrity: sha512-TySt64Ci5/ZbqFw1F9Z0FIGvYx5JSC9e6gqDnizIYd8eMnn8wFRUscRrD7pIHKfrhvVKN5h0GdYovmMO/FMCBw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/credential-provider-env": 3.451.0
+ "@aws-sdk/credential-provider-process": 3.451.0
+ "@aws-sdk/credential-provider-sso": 3.451.0
+ "@aws-sdk/credential-provider-web-identity": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/credential-provider-node@3.405.0:
+ /@aws-sdk/credential-provider-node@3.450.0:
resolution:
{
- integrity: sha512-AMmRP09nwYsft0MXDlHIxMQe7IloWW8As0lbZmPrG7Y7mK5RDmCIwD2yMDz77Zqlv09FsYt+9+cOK2fTNhim+Q==,
+ integrity: sha512-d4tQklhvsydNCer5Axd2sNptqqdalE78esDk0zA/cYaj56GniKqk3HLJLgb/wdv2/Ho6/4DhWeM5W4LaJNRivA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/credential-provider-env": 3.398.0
- "@aws-sdk/credential-provider-ini": 3.405.0
- "@aws-sdk/credential-provider-process": 3.405.0
- "@aws-sdk/credential-provider-sso": 3.405.0
- "@aws-sdk/credential-provider-web-identity": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@smithy/credential-provider-imds": 2.0.7
- "@smithy/property-provider": 2.0.6
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/credential-provider-env": 3.449.0
+ "@aws-sdk/credential-provider-ini": 3.450.0
+ "@aws-sdk/credential-provider-process": 3.449.0
+ "@aws-sdk/credential-provider-sso": 3.450.0
+ "@aws-sdk/credential-provider-web-identity": 3.449.0
+ "@aws-sdk/types": 3.449.0
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/credential-provider-node@3.451.0:
+ resolution:
+ {
+ integrity: sha512-AEwM1WPyxUdKrKyUsKyFqqRFGU70e4qlDyrtBxJnSU9NRLZI8tfEZ67bN7fHSxBUBODgDXpMSlSvJiBLh5/3pw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/credential-provider-env": 3.451.0
+ "@aws-sdk/credential-provider-ini": 3.451.0
+ "@aws-sdk/credential-provider-process": 3.451.0
+ "@aws-sdk/credential-provider-sso": 3.451.0
+ "@aws-sdk/credential-provider-web-identity": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/credential-provider-process@3.405.0:
+ /@aws-sdk/credential-provider-process@3.449.0:
resolution:
{
- integrity: sha512-EqAMcUVeZAICYHHL8x5Fi5CYPgCo9UCE7ScWmU5Sa2wAFY4XLyQ1mMxX3lKGYx9lBxWk3dqnhmvlcqdzN7AjyQ==,
+ integrity: sha512-IofhAgpwdSnaEg9H0dhydac07GCQ55Mc5oRzdzp/tm0Rl0MqnGdIvN8wYsxAeVhEi9pBSNla4eRiTu3LY6Z5+A==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/credential-provider-process@3.451.0:
+ resolution:
+ {
+ integrity: sha512-HQywSdKeD5PErcLLnZfSyCJO+6T+ZyzF+Lm/QgscSC+CbSUSIPi//s15qhBRVely/3KBV6AywxwNH+5eYgt4lQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/credential-provider-sso@3.405.0:
+ /@aws-sdk/credential-provider-sso@3.450.0:
resolution:
{
- integrity: sha512-fXqSgQHz7qcmIWMVguwSMSjqFkVfN2+XiNgiskcmeYiCS7mIGAgUnKABZc9Ds2+YW9ATYiY0BOD5aWxc8TX5fA==,
+ integrity: sha512-zzr9s5bG38TRn82eJXzG1/AglDihrcINn9TBfwOL8OBl0J6MF7EPAS92VpOuYs09H70MOWSZkmzEftq1urwC0g==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/client-sso": 3.405.0
- "@aws-sdk/token-providers": 3.405.0
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/client-sso": 3.450.0
+ "@aws-sdk/token-providers": 3.449.0
+ "@aws-sdk/types": 3.449.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/credential-provider-sso@3.451.0:
+ resolution:
+ {
+ integrity: sha512-Usm/N51+unOt8ID4HnQzxIjUJDrkAQ1vyTOC0gSEEJ7h64NSSPGD5yhN7il5WcErtRd3EEtT1a8/GTC5TdBctg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/client-sso": 3.451.0
+ "@aws-sdk/token-providers": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/credential-provider-web-identity@3.398.0:
+ /@aws-sdk/credential-provider-web-identity@3.449.0:
resolution:
{
- integrity: sha512-iG3905Alv9pINbQ8/MIsshgqYMbWx+NDQWpxbIW3W0MkSH3iAqdVpSCteYidYX9G/jv2Um1nW3y360ib20bvNg==,
+ integrity: sha512-BdqATzdqg39z2VXnEH7I6dzuX/Di6F/4C8FyiiJYx2+VciYdqt6GPprlpGdpngtWct/f8pA/LxQysNBVuwU/RA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/credential-provider-web-identity@3.451.0:
+ resolution:
+ {
+ integrity: sha512-Xtg3Qw65EfDjWNG7o2xD6sEmumPfsy3WDGjk2phEzVg8s7hcZGxf5wYwe6UY7RJvlEKrU0rFA+AMn6Hfj5oOzg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/credential-providers@3.405.0:
+ /@aws-sdk/credential-providers@3.451.0:
resolution:
{
- integrity: sha512-332QZ2Wrr5gfFUGPLwITcjhxnBD4y94fxKg7qerSBq7fjjIkl/OjnchZf5ReePrjpglxs6hgLdGrPYIYPC4Hhw==,
+ integrity: sha512-ihbYZrI/tSVsZFDGLfJoCx3sg1s9EQqWA+xbLoquK+RjMqTnaeshYntFJmQA5yqCIbcAkyw63OwOIBRrVb7tMA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/client-cognito-identity": 3.405.0
- "@aws-sdk/client-sso": 3.405.0
- "@aws-sdk/client-sts": 3.405.0
- "@aws-sdk/credential-provider-cognito-identity": 3.405.0
- "@aws-sdk/credential-provider-env": 3.398.0
- "@aws-sdk/credential-provider-ini": 3.405.0
- "@aws-sdk/credential-provider-node": 3.405.0
- "@aws-sdk/credential-provider-process": 3.405.0
- "@aws-sdk/credential-provider-sso": 3.405.0
- "@aws-sdk/credential-provider-web-identity": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@smithy/credential-provider-imds": 2.0.7
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@aws-sdk/client-cognito-identity": 3.451.0
+ "@aws-sdk/client-sso": 3.451.0
+ "@aws-sdk/client-sts": 3.451.0
+ "@aws-sdk/credential-provider-cognito-identity": 3.451.0
+ "@aws-sdk/credential-provider-env": 3.451.0
+ "@aws-sdk/credential-provider-http": 3.451.0
+ "@aws-sdk/credential-provider-ini": 3.451.0
+ "@aws-sdk/credential-provider-node": 3.451.0
+ "@aws-sdk/credential-provider-process": 3.451.0
+ "@aws-sdk/credential-provider-sso": 3.451.0
+ "@aws-sdk/credential-provider-web-identity": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
dev: true
- /@aws-sdk/middleware-host-header@3.398.0:
+ /@aws-sdk/middleware-bucket-endpoint@3.449.0:
resolution:
{
- integrity: sha512-m+5laWdBaxIZK2ko0OwcCHJZJ5V1MgEIt8QVQ3k4/kOkN9ICjevOYmba751pHoTnbOYB7zQd6D2OT3EYEEsUcA==,
+ integrity: sha512-gH+IEdDfhzTmQLdWwfc23A40EhvvAhk8taXUu3DX/lXl+2lBqd4qCoGk8vfUtwh9y1kbRDnhLq04XM2DPvvj2w==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/protocol-http": 2.0.5
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-arn-parser": 3.310.0
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ "@smithy/util-config-provider": 2.0.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-expect-continue@3.449.0:
+ resolution:
+ {
+ integrity: sha512-OOR78JoTbCo/42HViuA+F2Uy/cNWo31mN0YZJRbnY5oAMgLRrY7d2+NlJpvHlS4XPdUZ6UHeUecJ9BAWuVuWAQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-flexible-checksums@3.449.0:
+ resolution:
+ {
+ integrity: sha512-pKBgmwqA6jdiWZrYX0uaPOGdRldRiG2ArA7ufS5B7iz9X1JJP8ESZcO2wD+AbrLBtkZtVG31974qpqfNU6n4dQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/crc32": 3.0.0
+ "@aws-crypto/crc32c": 3.0.0
+ "@aws-sdk/types": 3.449.0
+ "@smithy/is-array-buffer": 2.0.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ "@smithy/util-utf8": 2.0.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-host-header@3.449.0:
+ resolution:
+ {
+ integrity: sha512-uO7ao5eFhqEEPk8uqkhNhYqqJPPv/+i2aLchvSYrviDcmcbz9HURc8j+Q9WkmIj3jf0hjAJ9UVMQggBUfoLEgg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-host-header@3.451.0:
+ resolution:
+ {
+ integrity: sha512-j8a5jAfhWmsK99i2k8oR8zzQgXrsJtgrLxc3js6U+525mcZytoiDndkWTmD5fjJ1byU1U2E5TaPq+QJeDip05Q==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/middleware-logger@3.398.0:
+ /@aws-sdk/middleware-location-constraint@3.449.0:
resolution:
{
- integrity: sha512-CiJjW+FL12elS6Pn7/UVjVK8HWHhXMfvHZvOwx/Qkpy340sIhkuzOO6fZEruECDTZhl2Wqn81XdJ1ZQ4pRKpCg==,
+ integrity: sha512-MPCFKOpgke/ZV6WSxZZ/y9X4mn0ywLC2HVcaPJvDSKA0gsRtJLEQjWs2+I2QYTzEM0iwgoW9UOSgbFZYXF0Pow==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-logger@3.449.0:
+ resolution:
+ {
+ integrity: sha512-YwmPLuSx5Zjdnloxr7bArT2KgF+VvlSe5+p5T/woZWEQgINRaCLdvDB37p7x/LlHrxxZRmk20MaFwSKlJU85qQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-logger@3.451.0:
+ resolution:
+ {
+ integrity: sha512-0kHrYEyVeB2QBfP6TfbI240aRtatLZtcErJbhpiNUb+CQPgEL3crIjgVE8yYiJumZ7f0jyjo8HLPkwD1/2APaw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/middleware-recursion-detection@3.398.0:
+ /@aws-sdk/middleware-recursion-detection@3.449.0:
resolution:
{
- integrity: sha512-7QpOqPQAZNXDXv6vsRex4R8dLniL0E/80OPK4PPFsrCh9btEyhN9Begh4i1T+5lL28hmYkztLOkTQ2N5J3hgRQ==,
+ integrity: sha512-8kWxxpPBHwFUADf8JaZsUbJ+FtS3K9MGQpMx0AZhh3P9xLaoh602CL0y0+UEEdb2uh6FJJjQiIk4eQXEolhG6Q==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/protocol-http": 2.0.5
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-recursion-detection@3.451.0:
+ resolution:
+ {
+ integrity: sha512-J6jL6gJ7orjHGM70KDRcCP7so/J2SnkN4vZ9YRLTeeZY6zvBuHDjX8GCIgSqPn/nXFXckZO8XSnA7u6+3TAT0w==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/middleware-sdk-sts@3.398.0:
+ /@aws-sdk/middleware-sdk-s3@3.449.0:
resolution:
{
- integrity: sha512-+JH76XHEgfVihkY+GurohOQ5Z83zVN1nYcQzwCFnCDTh4dG4KwhnZKG+WPw6XJECocY0R+H0ivofeALHvVWJtQ==,
+ integrity: sha512-HbgWdv0txBdV9+9aJSGtGWXnQlVvpIXS6gqmJ5ESHKwZMiRHXswwptccZkvSrLjCQr5uuN37yIz3219MRrvrmw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/middleware-signing": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-arn-parser": 3.310.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-sdk-sts@3.449.0:
+ resolution:
+ {
+ integrity: sha512-a+mknJkS9jDiDoHg2sFW24B0f6MgT2zs/oF6zMFvVmImvUHjbhSgBzYStE+Phl/uM1zwp1lJfbuO+I+5tVwZEw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/middleware-signing": 3.449.0
+ "@aws-sdk/types": 3.449.0
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-sdk-sts@3.451.0:
+ resolution:
+ {
+ integrity: sha512-UJ6UfVUEgp0KIztxpAeelPXI5MLj9wUtUCqYeIMP7C1ZhoEMNm3G39VLkGN43dNhBf1LqjsV9jkKMZbVfYXuwg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/middleware-signing": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
- /@aws-sdk/middleware-signing@3.398.0:
+ /@aws-sdk/middleware-signing@3.449.0:
resolution:
{
- integrity: sha512-O0KqXAix1TcvZBFt1qoFkHMUNJOSgjJTYS7lFTRKSwgsD27bdW2TM2r9R8DAccWFt5Amjkdt+eOwQMIXPGTm8w==,
+ integrity: sha512-L33efrgdDDY3myjLwraeS2tzUlebaZL6WS7ooACsOwkB9mRs6UQRpSpT90HbcSAjwLaa+xGqaxTA0biAuRjT5A==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/property-provider": 2.0.6
- "@smithy/protocol-http": 2.0.5
+ "@aws-sdk/types": 3.449.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/protocol-http": 3.0.9
"@smithy/signature-v4": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/util-middleware": 2.0.0
+ "@smithy/types": 2.5.0
+ "@smithy/util-middleware": 2.0.6
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-signing@3.451.0:
+ resolution:
+ {
+ integrity: sha512-s5ZlcIoLNg1Huj4Qp06iKniE8nJt/Pj1B/fjhWc6cCPCM7XJYUCejCnRh6C5ZJoBEYodjuwZBejPc1Wh3j+znA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/property-provider": 2.0.14
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/signature-v4": 2.0.5
+ "@smithy/types": 2.5.0
+ "@smithy/util-middleware": 2.0.6
tslib: 2.6.2
dev: true
- /@aws-sdk/middleware-user-agent@3.398.0:
+ /@aws-sdk/middleware-ssec@3.449.0:
resolution:
{
- integrity: sha512-nF1jg0L+18b5HvTcYzwyFgfZQQMELJINFqI0mi4yRKaX7T5a3aGp5RVLGGju/6tAGTuFbfBoEhkhU3kkxexPYQ==,
+ integrity: sha512-NY7jt1/ukqXCUqnaK2rlm5yGFyj9sOJBqK6X8Gpu5qQaYAvIP892U1UMj6VTPC7yBLPYhW2/YCfDvxOClbqKEg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@smithy/protocol-http": 2.0.5
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-user-agent@3.449.0:
+ resolution:
+ {
+ integrity: sha512-0cRptIhIthxUYadrgb5FmcTgGhPIeXnFATBILaa2gA/ivfVY/CiqMAvOvLHxtBAYNK8/VXM9DFL5TfOt8mF2UQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/middleware-user-agent@3.451.0:
+ resolution:
+ {
+ integrity: sha512-8NM/0JiKLNvT9wtAQVl1DFW0cEO7OvZyLSUBLNLTHqyvOZxKaZ8YFk7d8PL6l76LeUKRxq4NMxfZQlUIRe0eSA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: true
+
+ /@aws-sdk/region-config-resolver@3.433.0:
+ resolution:
+ {
+ integrity: sha512-xpjRjCZW+CDFdcMmmhIYg81ST5UAnJh61IHziQEk0FXONrg4kjyYPZAOjEdzXQ+HxJQuGQLKPhRdzxmQnbX7pg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
+ "@smithy/util-config-provider": 2.0.0
+ "@smithy/util-middleware": 2.0.6
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/region-config-resolver@3.451.0:
+ resolution:
+ {
+ integrity: sha512-3iMf4OwzrFb4tAAmoROXaiORUk2FvSejnHIw/XHvf/jjR4EqGGF95NZP/n/MeFZMizJWVssrwS412GmoEyoqhg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
+ "@smithy/util-config-provider": 2.0.0
+ "@smithy/util-middleware": 2.0.6
tslib: 2.6.2
dev: true
- /@aws-sdk/token-providers@3.405.0:
+ /@aws-sdk/signature-v4-multi-region@3.449.0:
resolution:
{
- integrity: sha512-rVzC7ptf7TlV84M9w+Ds9isio1EY7bs1MRFv/6lmYstsyTri+DaZG10TwXSGfzIMwB0yVh11niCxO9wSjQ36zg==,
+ integrity: sha512-Ne8dF3R2Cj6JJBw0Utm7INtoJ2PdqGNgDpeTOFTnFGSGWnsumACbcVp4ikcZzgABTCQgKx88wPdXUHUZtaBqcg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/signature-v4": 2.0.5
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/token-providers@3.449.0:
+ resolution:
+ {
+ integrity: sha512-Tgu6Z/l75uFuNQpKIidbn1gc5bI7OKmGdH5+E/ZAc58XYvxYs9N77HjhrhAGvYQEnXY6gRm26/WSeHAAh5wlgQ==,
}
engines: { node: ">=14.0.0" }
dependencies:
"@aws-crypto/sha256-browser": 3.0.0
"@aws-crypto/sha256-js": 3.0.0
- "@aws-sdk/middleware-host-header": 3.398.0
- "@aws-sdk/middleware-logger": 3.398.0
- "@aws-sdk/middleware-recursion-detection": 3.398.0
- "@aws-sdk/middleware-user-agent": 3.398.0
- "@aws-sdk/types": 3.398.0
- "@aws-sdk/util-endpoints": 3.398.0
- "@aws-sdk/util-user-agent-browser": 3.398.0
- "@aws-sdk/util-user-agent-node": 3.405.0
- "@smithy/config-resolver": 2.0.5
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/hash-node": 2.0.5
- "@smithy/invalid-dependency": 2.0.5
- "@smithy/middleware-content-length": 2.0.5
- "@smithy/middleware-endpoint": 2.0.5
- "@smithy/middleware-retry": 2.0.5
- "@smithy/middleware-serde": 2.0.5
- "@smithy/middleware-stack": 2.0.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/node-http-handler": 2.0.5
- "@smithy/property-provider": 2.0.6
- "@smithy/protocol-http": 2.0.5
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/smithy-client": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
- "@smithy/util-base64": 2.0.0
+ "@aws-sdk/middleware-host-header": 3.449.0
+ "@aws-sdk/middleware-logger": 3.449.0
+ "@aws-sdk/middleware-recursion-detection": 3.449.0
+ "@aws-sdk/middleware-user-agent": 3.449.0
+ "@aws-sdk/region-config-resolver": 3.433.0
+ "@aws-sdk/types": 3.449.0
+ "@aws-sdk/util-endpoints": 3.449.0
+ "@aws-sdk/util-user-agent-browser": 3.449.0
+ "@aws-sdk/util-user-agent-node": 3.449.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/property-provider": 2.0.14
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
"@smithy/util-body-length-browser": 2.0.0
"@smithy/util-body-length-node": 2.1.0
- "@smithy/util-defaults-mode-browser": 2.0.6
- "@smithy/util-defaults-mode-node": 2.0.7
- "@smithy/util-retry": 2.0.0
- "@smithy/util-utf8": 2.0.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
+ tslib: 2.6.2
+ transitivePeerDependencies:
+ - aws-crt
+ dev: false
+
+ /@aws-sdk/token-providers@3.451.0:
+ resolution:
+ {
+ integrity: sha512-ij1L5iUbn6CwxVOT1PG4NFjsrsKN9c4N1YEM0lkl6DwmaNOscjLKGSNyj9M118vSWsOs1ZDbTwtj++h0O/BWrQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-crypto/sha256-browser": 3.0.0
+ "@aws-crypto/sha256-js": 3.0.0
+ "@aws-sdk/middleware-host-header": 3.451.0
+ "@aws-sdk/middleware-logger": 3.451.0
+ "@aws-sdk/middleware-recursion-detection": 3.451.0
+ "@aws-sdk/middleware-user-agent": 3.451.0
+ "@aws-sdk/region-config-resolver": 3.451.0
+ "@aws-sdk/types": 3.451.0
+ "@aws-sdk/util-endpoints": 3.451.0
+ "@aws-sdk/util-user-agent-browser": 3.451.0
+ "@aws-sdk/util-user-agent-node": 3.451.0
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/hash-node": 2.0.15
+ "@smithy/invalid-dependency": 2.0.13
+ "@smithy/middleware-content-length": 2.0.15
+ "@smithy/middleware-endpoint": 2.2.0
+ "@smithy/middleware-retry": 2.0.20
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/property-provider": 2.0.14
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-base64": 2.0.1
+ "@smithy/util-body-length-browser": 2.0.0
+ "@smithy/util-body-length-node": 2.1.0
+ "@smithy/util-defaults-mode-browser": 2.0.19
+ "@smithy/util-defaults-mode-node": 2.0.25
+ "@smithy/util-endpoints": 1.0.4
+ "@smithy/util-retry": 2.0.6
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
transitivePeerDependencies:
- aws-crt
@@ -612,16 +1320,58 @@ packages:
dependencies:
"@smithy/types": 2.2.2
tslib: 2.6.2
- dev: true
- /@aws-sdk/util-endpoints@3.398.0:
+ /@aws-sdk/types@3.449.0:
resolution:
{
- integrity: sha512-Fy0gLYAei/Rd6BrXG4baspCnWTUSd0NdokU1pZh4KlfEAEN1i8SPPgfiO5hLk7+2inqtCmqxVJlfqbMVe9k4bw==,
+ integrity: sha512-tSQPAvknheB6XnRoc+AuEgdzn2KhY447hddeVW0Mbg8Yl9es4u4TKVINloKDEyUrCKhB/1f93Hb5uJkPe/e/Ww==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@aws-sdk/types": 3.398.0
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+
+ /@aws-sdk/types@3.451.0:
+ resolution:
+ {
+ integrity: sha512-rhK+qeYwCIs+laJfWCcrYEjay2FR/9VABZJ2NRM89jV/fKqGVQR52E5DQqrI+oEIL5JHMhhnr4N4fyECMS35lw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+
+ /@aws-sdk/util-arn-parser@3.310.0:
+ resolution:
+ {
+ integrity: sha512-jL8509owp/xB9+Or0pvn3Fe+b94qfklc2yPowZZIFAkFcCSIdkIglz18cPDWnYAcy9JGewpMS1COXKIUhZkJsA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/util-endpoints@3.449.0:
+ resolution:
+ {
+ integrity: sha512-hWGM/e+BnbCExXLaIEa6gRb0JW3+XGfcHgRqWkAxsKCaxQuXVIPUA3HyifimxTZDKmTbGZcyWfxCnKGS7I19rw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.449.0
+ "@smithy/util-endpoints": 1.0.4
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/util-endpoints@3.451.0:
+ resolution:
+ {
+ integrity: sha512-giqLGBTnRIcKkDqwU7+GQhKbtJ5Ku35cjGQIfMyOga6pwTBUbaK0xW1Sdd8sBQ1GhApscnChzI9o/R9x0368vw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/util-endpoints": 1.0.4
tslib: 2.6.2
dev: true
@@ -633,24 +1383,35 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
- /@aws-sdk/util-user-agent-browser@3.398.0:
+ /@aws-sdk/util-user-agent-browser@3.449.0:
resolution:
{
- integrity: sha512-A3Tzx1tkDHlBT+IgxmsMCHbV8LM7SwwCozq2ZjJRx0nqw3MCrrcxQFXldHeX/gdUMO+0Oocb7HGSnVODTq+0EA==,
+ integrity: sha512-MUQ8YIVZNZZso5w1qlatHu9c1JKYvdjlAugzKhj7npgV4U8D9RBOJUd2Ct8meXPaH4DTfW1qohPlZu/fWWqNVQ==,
}
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/types": 2.5.0
+ bowser: 2.11.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/util-user-agent-browser@3.451.0:
+ resolution:
+ {
+ integrity: sha512-Ws5mG3J0TQifH7OTcMrCTexo7HeSAc3cBgjfhS/ofzPUzVCtsyg0G7I6T7wl7vJJETix2Kst2cpOsxygPgPD9w==,
+ }
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/types": 2.5.0
bowser: 2.11.0
tslib: 2.6.2
dev: true
- /@aws-sdk/util-user-agent-node@3.405.0:
+ /@aws-sdk/util-user-agent-node@3.449.0:
resolution:
{
- integrity: sha512-6Ssld7aalKCnW6lSGfiiWpqwo2L+AmYq2oV3P9yYAo9ZL+Q78dXquabwj3uq3plJ4l2xE4Gfcf2FJ/1PZpqDvQ==,
+ integrity: sha512-PFMnFMSQTdhMAS63anMFFkzz56kWKcjGscgl0bBheEaxo8zgfLf1AAdFuBM+Ob2KYXeMezUbxYu9zOC/0S2hvw==,
}
engines: { node: ">=14.0.0" }
peerDependencies:
@@ -659,9 +1420,27 @@ packages:
aws-crt:
optional: true
dependencies:
- "@aws-sdk/types": 3.398.0
- "@smithy/node-config-provider": 2.0.7
- "@smithy/types": 2.2.2
+ "@aws-sdk/types": 3.449.0
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
+
+ /@aws-sdk/util-user-agent-node@3.451.0:
+ resolution:
+ {
+ integrity: sha512-TBzm6P+ql4mkGFAjPlO1CI+w3yUT+NulaiALjl/jNX/nnUp6HsJsVxJf4nVFQTG5KRV0iqMypcs7I3KIhH+LmA==,
+ }
+ engines: { node: ">=14.0.0" }
+ peerDependencies:
+ aws-crt: ">=1.0.0"
+ peerDependenciesMeta:
+ aws-crt:
+ optional: true
+ dependencies:
+ "@aws-sdk/types": 3.451.0
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
tslib: 2.6.2
dev: true
@@ -672,13 +1451,16 @@ packages:
}
dependencies:
tslib: 2.6.2
- dev: true
- /@balena/dockerignore@1.0.2:
+ /@aws-sdk/xml-builder@3.310.0:
resolution:
{
- integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==,
+ integrity: sha512-TqELu4mOuSIKQCqj63fGVs86Yh+vBx5nHRpWKNUNhB2nPTpfbziTs5c1X358be3peVWA4wPxW7Nt53KIg1tnNw==,
}
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ tslib: 2.6.2
+ dev: false
/@cspotcode/source-map-support@0.8.1:
resolution:
@@ -690,20 +1472,18 @@ packages:
"@jridgewell/trace-mapping": 0.3.9
dev: true
- /@elsa-data/aws-infrastructure-client@1.3.4(aws-cdk-lib@2.93.0)(constructs@10.2.70):
+ /@elsa-data/aws-infrastructure@1.5.1(aws-cdk-lib@2.108.1)(constructs@10.3.0):
resolution:
{
- integrity: sha512-qgqBiwdLd4MFb4yLjBpIv2TbIKXlRsYeECohDARXX06LOLgEEP2OuqAXofGkCANZ5HD2gC0LQh9cu7o3OaffDw==,
+ integrity: sha512-foP1LgYFWP2sR9R4FrpQyE/I+Vwh4NCMIt/8MwliNMwtAYYzCSHZduwyo9EekcHvCotfSC/hYexTL8uer+P37g==,
}
peerDependencies:
- aws-cdk-lib: ^2.93.0
- constructs: ^10.2.70
+ aws-cdk-lib: ^2.108.1
+ constructs: ^10.3.0
dependencies:
- aws-cdk-lib: 2.93.0(constructs@10.2.70)
- constructs: 10.2.70
+ aws-cdk-lib: 2.108.1(constructs@10.3.0)
+ constructs: 10.3.0
dev: false
- bundledDependencies:
- - shared
/@esbuild/android-arm64@0.19.2:
resolution:
@@ -994,10 +1774,10 @@ packages:
"@jridgewell/sourcemap-codec": 1.4.15
dev: true
- /@jsii/check-node@1.88.0:
+ /@jsii/check-node@1.91.0:
resolution:
{
- integrity: sha512-AveFyqkJIb8qZvGk5nZal/8mEJB6lWhwqvAQLodHmqE3WzpmZD5+h+aspBVt0El5cEFRJ1k1mrQqhAnJCVpvxg==,
+ integrity: sha512-K9UFkRe4uJNVp1O2o4OBM/3usba6Vw3XF1Mq3TVBAYl1EzpAiA62DojGp30+3zwFlb1lkavVj1hKlCrIWIuJhw==,
}
engines: { node: ">= 14.17.0" }
dependencies:
@@ -1005,131 +1785,227 @@ packages:
semver: 7.5.4
dev: true
- /@jsii/spec@1.88.0:
+ /@jsii/spec@1.91.0:
resolution:
{
- integrity: sha512-Q6xirxPM06TRW0GcsHa+tzPZLwe9I+mFYx5BaNMimcv21u6bQnxfynZMgNhHqvLYCmP37HWg0SboUYTa5JROzw==,
+ integrity: sha512-Ir01bk5CwIFAApRJjRC+JG/f9db5dACEYFSxsHyvXRMu+J/LIANdwD4OPSelWrhbRiQdY6U16BKsRO63uaNRqg==,
}
engines: { node: ">= 14.17.0" }
dependencies:
ajv: 8.12.0
dev: true
- /@nodelib/fs.scandir@2.1.5:
+ /@nodelib/fs.scandir@2.1.5:
+ resolution:
+ {
+ integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==,
+ }
+ engines: { node: ">= 8" }
+ dependencies:
+ "@nodelib/fs.stat": 2.0.5
+ run-parallel: 1.2.0
+ dev: true
+
+ /@nodelib/fs.stat@2.0.5:
+ resolution:
+ {
+ integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==,
+ }
+ engines: { node: ">= 8" }
+ dev: true
+
+ /@nodelib/fs.walk@1.2.8:
+ resolution:
+ {
+ integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==,
+ }
+ engines: { node: ">= 8" }
+ dependencies:
+ "@nodelib/fs.scandir": 2.1.5
+ fastq: 1.15.0
+ dev: true
+
+ /@smithy/abort-controller@2.0.13:
+ resolution:
+ {
+ integrity: sha512-eeOPD+GF9BzF/Mjy3PICLePx4l0f3rG/nQegQHRLTloN5p1lSJJNZsyn+FzDnW8P2AduragZqJdtKNCxXozB1Q==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+
+ /@smithy/chunked-blob-reader-native@2.0.1:
+ resolution:
+ {
+ integrity: sha512-N2oCZRglhWKm7iMBu7S6wDzXirjAofi7tAd26cxmgibRYOBS4D3hGfmkwCpHdASZzwZDD8rluh0Rcqw1JeZDRw==,
+ }
+ dependencies:
+ "@smithy/util-base64": 2.0.1
+ tslib: 2.6.2
+ dev: false
+
+ /@smithy/chunked-blob-reader@2.0.0:
+ resolution:
+ {
+ integrity: sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg==,
+ }
+ dependencies:
+ tslib: 2.6.2
+ dev: false
+
+ /@smithy/config-resolver@2.0.18:
+ resolution:
+ {
+ integrity: sha512-761sJSgNbvsqcsKW6/WZbrZr4H+0Vp/QKKqwyrxCPwD8BsiPEXNHyYnqNgaeK9xRWYswjon0Uxbpe3DWQo0j/g==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
+ "@smithy/util-config-provider": 2.0.0
+ "@smithy/util-middleware": 2.0.6
+ tslib: 2.6.2
+
+ /@smithy/credential-provider-imds@2.1.1:
+ resolution:
+ {
+ integrity: sha512-gw5G3FjWC6sNz8zpOJgPpH5HGKrpoVFQpToNAwLwJVyI/LJ2jDJRjSKEsM6XI25aRpYjMSE/Qptxx305gN1vHw==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/property-provider": 2.0.14
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ tslib: 2.6.2
+
+ /@smithy/eventstream-codec@2.0.13:
+ resolution:
+ {
+ integrity: sha512-CExbelIYp+DxAHG8RIs0l9QL7ElqhG4ym9BNoSpkPa4ptBQfzJdep3LbOSVJIE2VUdBAeObdeL6EDB3Jo85n3g==,
+ }
+ dependencies:
+ "@aws-crypto/crc32": 3.0.0
+ "@smithy/types": 2.5.0
+ "@smithy/util-hex-encoding": 2.0.0
+ tslib: 2.6.2
+ dev: false
+
+ /@smithy/eventstream-codec@2.0.5:
resolution:
{
- integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==,
+ integrity: sha512-iqR6OuOV3zbQK8uVs9o+9AxhVk8kW9NAxA71nugwUB+kTY9C35pUd0A5/m4PRT0Y0oIW7W4kgnSR3fdYXQjECw==,
}
- engines: { node: ">= 8" }
dependencies:
- "@nodelib/fs.stat": 2.0.5
- run-parallel: 1.2.0
- dev: true
+ "@aws-crypto/crc32": 3.0.0
+ "@smithy/types": 2.2.2
+ "@smithy/util-hex-encoding": 2.0.0
+ tslib: 2.6.2
- /@nodelib/fs.stat@2.0.5:
+ /@smithy/eventstream-serde-browser@2.0.13:
resolution:
{
- integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==,
+ integrity: sha512-OJ/2g/VxkzA+mYZxV102oX3CsiE+igTSmqq/ir3oEVG2kSIdRC00ryttj/lmL14W06ExNi0ysmfLxQkL8XrAZQ==,
}
- engines: { node: ">= 8" }
- dev: true
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/eventstream-serde-universal": 2.0.13
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
- /@nodelib/fs.walk@1.2.8:
+ /@smithy/eventstream-serde-config-resolver@2.0.13:
resolution:
{
- integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==,
+ integrity: sha512-2BI1CbnYuEvAYoWSeWJtPNygbIKiWeSLxCmDLnyM6wQV32Of7VptiQlaFXPxXp4zqn/rs3ocZ/T29rxE4s4Gsg==,
}
- engines: { node: ">= 8" }
+ engines: { node: ">=14.0.0" }
dependencies:
- "@nodelib/fs.scandir": 2.1.5
- fastq: 1.15.0
- dev: true
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
- /@smithy/abort-controller@2.0.5:
+ /@smithy/eventstream-serde-node@2.0.13:
resolution:
{
- integrity: sha512-byVZ2KWLMPYAZGKjRpniAzLcygJO4ruClZKdJTuB0eCB76ONFTdptBHlviHpAZXknRz7skYWPfcgO9v30A1SyA==,
+ integrity: sha512-7NbFwPafb924elFxCBDvm48jy/DeSrpFbFQN0uN2ThuY5HrEeubikS0t7WMva4Z4EnRoivpbuT0scb9vUIJKoA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/eventstream-serde-universal": 2.0.13
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
+ dev: false
- /@smithy/config-resolver@2.0.5:
+ /@smithy/eventstream-serde-universal@2.0.13:
resolution:
{
- integrity: sha512-n0c2AXz+kjALY2FQr7Zy9zhYigXzboIh1AuUUVCqFBKFtdEvTwnwPXrTDoEehLiRTUHNL+4yzZ3s+D0kKYSLSg==,
+ integrity: sha512-j0yFd5UfftM+ia9dxLRbheJDCkCZBHpcEzCsPO8BxVOTbdcX/auVJCv6ov/yvpCKsf4Hv3mOqi0Is1YogM2g3Q==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
- "@smithy/util-config-provider": 2.0.0
- "@smithy/util-middleware": 2.0.0
+ "@smithy/eventstream-codec": 2.0.13
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
+ dev: false
- /@smithy/credential-provider-imds@2.0.7:
+ /@smithy/fetch-http-handler@2.2.6:
resolution:
{
- integrity: sha512-XivkZj/pipzpQPxgleE1odwJQ6oDsVViB4VUO/HRDI4EdEfZjud44USupOUOa/xOjS39/75DYB4zgTbyV+totw==,
+ integrity: sha512-PStY3XO1Ksjwn3wMKye5U6m6zxXpXrXZYqLy/IeCbh3nM9QB3Jgw/B0PUSLUWKdXg4U8qgEu300e3ZoBvZLsDg==,
}
- engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/node-config-provider": 2.0.7
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/querystring-builder": 2.0.13
+ "@smithy/types": 2.5.0
+ "@smithy/util-base64": 2.0.1
tslib: 2.6.2
- dev: true
- /@smithy/eventstream-codec@2.0.5:
+ /@smithy/hash-blob-browser@2.0.14:
resolution:
{
- integrity: sha512-iqR6OuOV3zbQK8uVs9o+9AxhVk8kW9NAxA71nugwUB+kTY9C35pUd0A5/m4PRT0Y0oIW7W4kgnSR3fdYXQjECw==,
+ integrity: sha512-yWdghyPJIEqLYsaE7YVgd3YhM7jN4Pv6eJQvTomnMsz5K2qRBlpjUx3T9fKlElp1qdeQ7DNc3sAat4i9CUBO7Q==,
}
dependencies:
- "@aws-crypto/crc32": 3.0.0
- "@smithy/types": 2.2.2
- "@smithy/util-hex-encoding": 2.0.0
+ "@smithy/chunked-blob-reader": 2.0.0
+ "@smithy/chunked-blob-reader-native": 2.0.1
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
+ dev: false
- /@smithy/fetch-http-handler@2.0.5:
+ /@smithy/hash-node@2.0.15:
resolution:
{
- integrity: sha512-EzFoMowdBNy1VqtvkiXgPFEdosIAt4/4bgZ8uiDiUyfhmNXq/3bV+CagPFFBsgFOR/X2XK4zFZHRsoa7PNHVVg==,
+ integrity: sha512-t/qjEJZu/G46A22PAk1k/IiJZT4ncRkG5GOCNWN9HPPy5rCcSZUbh7gwp7CGKgJJ7ATMMg+0Td7i9o1lQTwOfQ==,
}
+ engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/protocol-http": 2.0.5
- "@smithy/querystring-builder": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/util-base64": 2.0.0
+ "@smithy/types": 2.5.0
+ "@smithy/util-buffer-from": 2.0.0
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
- dev: true
- /@smithy/hash-node@2.0.5:
+ /@smithy/hash-stream-node@2.0.15:
resolution:
{
- integrity: sha512-mk551hIywBITT+kXruRNXk7f8Fy7DTzBjZJSr/V6nolYKmUHIG3w5QU6nO9qPYEQGKc/yEPtkpdS28ndeG93lA==,
+ integrity: sha512-ZZ6kC/pHt5Dc2goXIIyC8uA7A4GUMSzdCynAabnZ3CSSaV6ctP8mlvVkqjPph0O3XzHlx/80gdLrNqi1GDPUsA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
- "@smithy/util-buffer-from": 2.0.0
- "@smithy/util-utf8": 2.0.0
+ "@smithy/types": 2.5.0
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
- dev: true
+ dev: false
- /@smithy/invalid-dependency@2.0.5:
+ /@smithy/invalid-dependency@2.0.13:
resolution:
{
- integrity: sha512-0wEi+JT0hM+UUwrJVYbqjuGFhy5agY/zXyiN7BNAJ1XoCDjU5uaNSj8ekPWsXd/d4yM6NSe8UbPd8cOc1+3oBQ==,
+ integrity: sha512-XsGYhVhvEikX1Yz0kyIoLssJf2Rs6E0U2w2YuKdT4jSra5A/g8V2oLROC1s56NldbgnpesTYB2z55KCHHbKyjw==,
}
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
/@smithy/is-array-buffer@2.0.0:
resolution:
@@ -1139,161 +2015,164 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
- /@smithy/middleware-content-length@2.0.5:
+ /@smithy/md5-js@2.0.15:
+ resolution:
+ {
+ integrity: sha512-pAZaokib56XvhU0t/R9vAcr3L3bMhIakhF25X7EMSQ7LAURiLfce/tgON8I3x/dIbnZUyeRi8f2cx2azu6ATew==,
+ }
+ dependencies:
+ "@smithy/types": 2.5.0
+ "@smithy/util-utf8": 2.0.2
+ tslib: 2.6.2
+ dev: false
+
+ /@smithy/middleware-content-length@2.0.15:
resolution:
{
- integrity: sha512-E7VwV5H02fgZIUGRli4GevBCAPvkyEI/fgl9SU47nPPi3DAAX3nEtUb8xfGbXjOcJ5BdSUoWWZn42tEd/blOqA==,
+ integrity: sha512-xH4kRBw01gJgWiU+/mNTrnyFXeozpZHw39gLb3JKGsFDVmSrJZ8/tRqu27tU/ki1gKkxr2wApu+dEYjI3QwV1Q==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/protocol-http": 2.0.5
- "@smithy/types": 2.2.2
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/middleware-endpoint@2.0.5:
+ /@smithy/middleware-endpoint@2.2.0:
resolution:
{
- integrity: sha512-tyzDuoNTbsMQCq5Xkc4QOt6e2GACUllQIV8SQ5fc59FtOIV9/vbf58/GxVjZm2o8+MMbdDBANjTDZe/ijZKfyA==,
+ integrity: sha512-tddRmaig5URk2106PVMiNX6mc5BnKIKajHHDxb7K0J5MLdcuQluHMGnjkv18iY9s9O0tF+gAcPd/pDXA5L9DZw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/middleware-serde": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/url-parser": 2.0.5
- "@smithy/util-middleware": 2.0.0
+ "@smithy/middleware-serde": 2.0.13
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
+ "@smithy/url-parser": 2.0.13
+ "@smithy/util-middleware": 2.0.6
tslib: 2.6.2
- dev: true
- /@smithy/middleware-retry@2.0.5:
+ /@smithy/middleware-retry@2.0.20:
resolution:
{
- integrity: sha512-ulIfbFyzQTVnJbLjUl1CTSi0etg6tej/ekwaLp0Gn8ybUkDkKYa+uB6CF/m2J5B6meRwyJlsryR+DjaOVyiicg==,
+ integrity: sha512-X2yrF/SHDk2WDd8LflRNS955rlzQ9daz9UWSp15wW8KtzoTXg3bhHM78HbK1cjr48/FWERSJKh9AvRUUGlIawg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/protocol-http": 2.0.5
- "@smithy/service-error-classification": 2.0.0
- "@smithy/types": 2.2.2
- "@smithy/util-middleware": 2.0.0
- "@smithy/util-retry": 2.0.0
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/service-error-classification": 2.0.6
+ "@smithy/types": 2.5.0
+ "@smithy/util-middleware": 2.0.6
+ "@smithy/util-retry": 2.0.6
tslib: 2.6.2
uuid: 8.3.2
- dev: true
- /@smithy/middleware-serde@2.0.5:
+ /@smithy/middleware-serde@2.0.13:
resolution:
{
- integrity: sha512-in0AA5sous74dOfTGU9rMJBXJ0bDVNxwdXtEt5lh3FVd2sEyjhI+rqpLLRF1E4ixbw3RSEf80hfRpcPdjg4vvQ==,
+ integrity: sha512-tBGbeXw+XsE6pPr4UaXOh+UIcXARZeiA8bKJWxk2IjJcD1icVLhBSUQH9myCIZLNNzJIH36SDjUX8Wqk4xJCJg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/middleware-stack@2.0.0:
+ /@smithy/middleware-stack@2.0.7:
resolution:
{
- integrity: sha512-31XC1xNF65nlbc16yuh3wwTudmqs6qy4EseQUGF8A/p2m/5wdd/cnXJqpniy/XvXVwkHPz/GwV36HqzHtIKATQ==,
+ integrity: sha512-L1KLAAWkXbGx1t2jjCI/mDJ2dDNq+rp4/ifr/HcC6FHngxho5O7A5bQLpKHGlkfATH6fUnOEx0VICEVFA4sUzw==,
}
engines: { node: ">=14.0.0" }
dependencies:
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/node-config-provider@2.0.7:
+ /@smithy/node-config-provider@2.1.5:
resolution:
{
- integrity: sha512-GuLxhnf0aVQsfQp4ZWaM1TRCIndpQjAswyFcmDFRNf4yFqpxpLPDeV540+O0Z21Hmu3deoQm/dCPXbVn90PYzg==,
+ integrity: sha512-3Omb5/h4tOCuKRx4p4pkYTvEYRCYoKk52bOYbKUyz/G/8gERbagsN8jFm4FjQubkrcIqQEghTpQaUw6uk+0edw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/property-provider": 2.0.6
- "@smithy/shared-ini-file-loader": 2.0.6
- "@smithy/types": 2.2.2
+ "@smithy/property-provider": 2.0.14
+ "@smithy/shared-ini-file-loader": 2.2.4
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/node-http-handler@2.0.5:
+ /@smithy/node-http-handler@2.1.9:
resolution:
{
- integrity: sha512-lZm5DZf4b3V0saUw9WTC4/du887P6cy2fUyQgQQKRRV6OseButyD5yTzeMmXE53CaXJBMBsUvvIQ0hRVxIq56w==,
+ integrity: sha512-+K0q3SlNcocmo9OZj+fz67gY4lwhOCvIJxVbo/xH+hfWObvaxrMTx7JEzzXcluK0thnnLz++K3Qe7Z/8MDUreA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/abort-controller": 2.0.5
- "@smithy/protocol-http": 2.0.5
- "@smithy/querystring-builder": 2.0.5
- "@smithy/types": 2.2.2
+ "@smithy/abort-controller": 2.0.13
+ "@smithy/protocol-http": 3.0.9
+ "@smithy/querystring-builder": 2.0.13
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/property-provider@2.0.6:
+ /@smithy/property-provider@2.0.14:
resolution:
{
- integrity: sha512-CVem6ZkkWxbTnhjDLyLESY0oLA6IUZYtdqrCpGQKUXaFBOuc/izjm7fIFGBxEbjZ1EGcH9hHxrjqX36RWULNRg==,
+ integrity: sha512-k3D2qp9o6imTrLaXRj6GdLYEJr1sXqS99nLhzq8fYmJjSVOeMg/G+1KVAAc7Oxpu71rlZ2f8SSZxcSxkevuR0A==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/protocol-http@2.0.5:
+ /@smithy/protocol-http@3.0.9:
resolution:
{
- integrity: sha512-d2hhHj34mA2V86doiDfrsy2fNTnUOowGaf9hKb0hIPHqvcnShU4/OSc4Uf1FwHkAdYF3cFXTrj5VGUYbEuvMdw==,
+ integrity: sha512-U1wl+FhYu4/BC+rjwh1lg2gcJChQhytiNQSggREgQ9G2FzmoK9sACBZvx7thyWMvRyHQTE22mO2d5UM8gMKDBg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/querystring-builder@2.0.5:
+ /@smithy/querystring-builder@2.0.13:
resolution:
{
- integrity: sha512-4DCX9krxLzATj+HdFPC3i8pb7XTAWzzKqSw8aTZMjXjtQY+vhe4azMAqIvbb6g7JKwIkmkRAjK6EXO3YWSnJVQ==,
+ integrity: sha512-JhXKwp3JtsFUe96XLHy/nUPEbaXqn6r7xE4sNaH8bxEyytE5q1fwt0ew/Ke6+vIC7gP87HCHgQpJHg1X1jN2Fw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
"@smithy/util-uri-escape": 2.0.0
tslib: 2.6.2
- dev: true
- /@smithy/querystring-parser@2.0.5:
+ /@smithy/querystring-parser@2.0.13:
resolution:
{
- integrity: sha512-C2stCULH0r54KBksv3AWcN8CLS3u9+WsEW8nBrvctrJ5rQTNa1waHkffpVaiKvcW2nP0aIMBPCobD/kYf/q9mA==,
+ integrity: sha512-TEiT6o8CPZVxJ44Rly/rrsATTQsE+b/nyBVzsYn2sa75xAaZcurNxsFd8z1haoUysONiyex24JMHoJY6iCfLdA==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/service-error-classification@2.0.0:
+ /@smithy/service-error-classification@2.0.6:
resolution:
{
- integrity: sha512-2z5Nafy1O0cTf69wKyNjGW/sNVMiqDnb4jgwfMG8ye8KnFJ5qmJpDccwIbJNhXIfbsxTg9SEec2oe1cexhMJvw==,
+ integrity: sha512-fCQ36frtYra2fqY2/DV8+3/z2d0VB/1D1hXbjRcM5wkxTToxq6xHbIY/NGGY6v4carskMyG8FHACxgxturJ9Pg==,
}
engines: { node: ">=14.0.0" }
- dev: true
+ dependencies:
+ "@smithy/types": 2.5.0
- /@smithy/shared-ini-file-loader@2.0.6:
+ /@smithy/shared-ini-file-loader@2.2.4:
resolution:
{
- integrity: sha512-NO6dHqho6APbVR0DxPtYoL4KXBqUeSM3Slsd103MOgL50YbzzsQmMLtDMZ87W8MlvvCN0tuiq+OrAO/rM7hTQg==,
+ integrity: sha512-9dRknGgvYlRIsoTcmMJXuoR/3ekhGwhRq4un3ns2/byre4Ql5hyUN4iS0x8eITohjU90YOnUCsbRwZRvCkbRfw==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/types": 2.2.2
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
/@smithy/signature-v4@2.0.5:
resolution:
@@ -1310,20 +2189,18 @@ packages:
"@smithy/util-uri-escape": 2.0.0
"@smithy/util-utf8": 2.0.0
tslib: 2.6.2
- dev: true
- /@smithy/smithy-client@2.0.5:
+ /@smithy/smithy-client@2.1.15:
resolution:
{
- integrity: sha512-kCTFr8wfOAWKDzGvfBElc6shHigWtHNhMQ1IbosjC4jOlayFyZMSs2PysKB+Ox/dhQ41KqOzgVjgiQ+PyWqHMQ==,
+ integrity: sha512-rngZcQu7Jvs9UbHihK1EI67RMPuzkc3CJmu4MBgB7D7yBnMGuFR86tq5rqHfL2gAkNnMelBN/8kzQVvZjNKefQ==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/middleware-stack": 2.0.0
- "@smithy/types": 2.2.2
- "@smithy/util-stream": 2.0.5
+ "@smithy/middleware-stack": 2.0.7
+ "@smithy/types": 2.5.0
+ "@smithy/util-stream": 2.0.20
tslib: 2.6.2
- dev: true
/@smithy/types@2.2.2:
resolution:
@@ -1333,18 +2210,25 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
- /@smithy/url-parser@2.0.5:
+ /@smithy/types@2.5.0:
resolution:
{
- integrity: sha512-OdMBvZhpckQSkugCXNJQCvqJ71wE7Ftxce92UOQLQ9pwF6hoS5PLL7wEfpnuEXtStzBqJYkzu1C1ZfjuFGOXAA==,
+ integrity: sha512-/a31lYofrMBkJb3BuPlYJTMKDj0hUmKUP6JFZQu6YVuQVoAjubiY0A52U9S0Uysd33n/djexCUSNJ+G9bf3/aA==,
}
+ engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/querystring-parser": 2.0.5
- "@smithy/types": 2.2.2
tslib: 2.6.2
- dev: true
+
+ /@smithy/url-parser@2.0.13:
+ resolution:
+ {
+ integrity: sha512-okWx2P/d9jcTsZWTVNnRMpFOE7fMkzloSFyM53fA7nLKJQObxM2T4JlZ5KitKKuXq7pxon9J6SF2kCwtdflIrA==,
+ }
+ dependencies:
+ "@smithy/querystring-parser": 2.0.13
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
/@smithy/util-base64@2.0.0:
resolution:
@@ -1355,7 +2239,17 @@ packages:
dependencies:
"@smithy/util-buffer-from": 2.0.0
tslib: 2.6.2
- dev: true
+ dev: false
+
+ /@smithy/util-base64@2.0.1:
+ resolution:
+ {
+ integrity: sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/util-buffer-from": 2.0.0
+ tslib: 2.6.2
/@smithy/util-body-length-browser@2.0.0:
resolution:
@@ -1364,7 +2258,6 @@ packages:
}
dependencies:
tslib: 2.6.2
- dev: true
/@smithy/util-body-length-node@2.1.0:
resolution:
@@ -1374,7 +2267,6 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
/@smithy/util-buffer-from@2.0.0:
resolution:
@@ -1385,7 +2277,6 @@ packages:
dependencies:
"@smithy/is-array-buffer": 2.0.0
tslib: 2.6.2
- dev: true
/@smithy/util-config-provider@2.0.0:
resolution:
@@ -1395,35 +2286,45 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
- /@smithy/util-defaults-mode-browser@2.0.6:
+ /@smithy/util-defaults-mode-browser@2.0.19:
resolution:
{
- integrity: sha512-h8xyKTZIIom62DN4xbPUmL+RL1deZcK1qJGmCr4c2yXjOrs5/iZ1VtQQcl+xP78620ga/565AikZE1sktdg2yA==,
+ integrity: sha512-VHP8xdFR7/orpiABJwgoTB0t8Zhhwpf93gXhNfUBiwAE9O0rvsv7LwpQYjgvbOUDDO8JfIYQB2GYJNkqqGWsXw==,
}
engines: { node: ">= 10.0.0" }
dependencies:
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@smithy/property-provider": 2.0.14
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
bowser: 2.11.0
tslib: 2.6.2
- dev: true
- /@smithy/util-defaults-mode-node@2.0.7:
+ /@smithy/util-defaults-mode-node@2.0.25:
resolution:
{
- integrity: sha512-2C1YfmYJj9bpM/cRAgQppYNzPd8gDEXZ5XIVDuEQg3TmmIiinZaFf/HsHYo9NK/PMy5oawJVdIuR7SVriIo1AQ==,
+ integrity: sha512-jkmep6/JyWmn2ADw9VULDeGbugR4N/FJCKOt+gYyVswmN1BJOfzF2umaYxQ1HhQDvna3kzm1Dbo1qIfBW4iuHA==,
}
engines: { node: ">= 10.0.0" }
dependencies:
- "@smithy/config-resolver": 2.0.5
- "@smithy/credential-provider-imds": 2.0.7
- "@smithy/node-config-provider": 2.0.7
- "@smithy/property-provider": 2.0.6
- "@smithy/types": 2.2.2
+ "@smithy/config-resolver": 2.0.18
+ "@smithy/credential-provider-imds": 2.1.1
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/property-provider": 2.0.14
+ "@smithy/smithy-client": 2.1.15
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+
+ /@smithy/util-endpoints@1.0.4:
+ resolution:
+ {
+ integrity: sha512-FPry8j1xye5yzrdnf4xKUXVnkQErxdN7bUIaqC0OFoGsv2NfD9b2UUMuZSSt+pr9a8XWAqj0HoyVNUfPiZ/PvQ==,
+ }
+ engines: { node: ">= 14.0.0" }
+ dependencies:
+ "@smithy/node-config-provider": 2.1.5
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
/@smithy/util-hex-encoding@2.0.0:
resolution:
@@ -1433,7 +2334,6 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
/@smithy/util-middleware@2.0.0:
resolution:
@@ -1443,35 +2343,43 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
- /@smithy/util-retry@2.0.0:
+ /@smithy/util-middleware@2.0.6:
resolution:
{
- integrity: sha512-/dvJ8afrElasuiiIttRJeoS2sy8YXpksQwiM/TcepqdRVp7u4ejd9C4IQURHNjlfPUT7Y6lCDSa2zQJbdHhVTg==,
+ integrity: sha512-7W4uuwBvSLgKoLC1x4LfeArCVcbuHdtVaC4g30kKsD1erfICyQ45+tFhhs/dZNeQg+w392fhunCm/+oCcb6BSA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+
+ /@smithy/util-retry@2.0.6:
+ resolution:
+ {
+ integrity: sha512-PSO41FofOBmyhPQJwBQJ6mVlaD7Sp9Uff9aBbnfBJ9eqXOE/obrqQjn0PNdkfdvViiPXl49BINfnGcFtSP4kYw==,
}
engines: { node: ">= 14.0.0" }
dependencies:
- "@smithy/service-error-classification": 2.0.0
+ "@smithy/service-error-classification": 2.0.6
+ "@smithy/types": 2.5.0
tslib: 2.6.2
- dev: true
- /@smithy/util-stream@2.0.5:
+ /@smithy/util-stream@2.0.20:
resolution:
{
- integrity: sha512-ylx27GwI05xLpYQ4hDIfS15vm+wYjNN0Sc2P0FxuzgRe8v0BOLHppGIQ+Bezcynk8C9nUzsUue3TmtRhjut43g==,
+ integrity: sha512-tT8VASuD8jJu0yjHEMTCPt1o5E3FVzgdsxK6FQLAjXKqVv5V8InCnc0EOsYrijgspbfDqdAJg7r0o2sySfcHVg==,
}
engines: { node: ">=14.0.0" }
dependencies:
- "@smithy/fetch-http-handler": 2.0.5
- "@smithy/node-http-handler": 2.0.5
- "@smithy/types": 2.2.2
- "@smithy/util-base64": 2.0.0
+ "@smithy/fetch-http-handler": 2.2.6
+ "@smithy/node-http-handler": 2.1.9
+ "@smithy/types": 2.5.0
+ "@smithy/util-base64": 2.0.1
"@smithy/util-buffer-from": 2.0.0
"@smithy/util-hex-encoding": 2.0.0
- "@smithy/util-utf8": 2.0.0
+ "@smithy/util-utf8": 2.0.2
tslib: 2.6.2
- dev: true
/@smithy/util-uri-escape@2.0.0:
resolution:
@@ -1481,7 +2389,6 @@ packages:
engines: { node: ">=14.0.0" }
dependencies:
tslib: 2.6.2
- dev: true
/@smithy/util-utf8@2.0.0:
resolution:
@@ -1492,7 +2399,28 @@ packages:
dependencies:
"@smithy/util-buffer-from": 2.0.0
tslib: 2.6.2
- dev: true
+
+ /@smithy/util-utf8@2.0.2:
+ resolution:
+ {
+ integrity: sha512-qOiVORSPm6Ce4/Yu6hbSgNHABLP2VMv8QOC3tTDNHHlWY19pPyc++fBTbZPtx6egPXi4HQxKDnMxVxpbtX2GoA==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/util-buffer-from": 2.0.0
+ tslib: 2.6.2
+
+ /@smithy/util-waiter@2.0.13:
+ resolution:
+ {
+ integrity: sha512-YovIQatiuM7giEsRFotqJa2i3EbU2EE3PgtpXgtLgpx5rXiZMAwPxXYDFVFhuO0lbqvc/Zx4n+ZIisXOHPSqyg==,
+ }
+ engines: { node: ">=14.0.0" }
+ dependencies:
+ "@smithy/abort-controller": 2.0.13
+ "@smithy/types": 2.5.0
+ tslib: 2.6.2
+ dev: false
/@tsconfig/node10@1.0.9:
resolution:
@@ -1580,6 +2508,7 @@ packages:
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
uri-js: 4.4.1
+ dev: true
/ansi-regex@5.0.1:
resolution:
@@ -1587,6 +2516,7 @@ packages:
integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==,
}
engines: { node: ">=8" }
+ dev: true
/ansi-styles@4.3.0:
resolution:
@@ -1596,6 +2526,7 @@ packages:
engines: { node: ">=8" }
dependencies:
color-convert: 2.0.1
+ dev: true
/arg@4.1.3:
resolution:
@@ -1604,36 +2535,19 @@ packages:
}
dev: true
- /astral-regex@2.0.0:
- resolution:
- {
- integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==,
- }
- engines: { node: ">=8" }
-
- /aws-cdk-lib@2.93.0(constructs@10.2.70):
+ /aws-cdk-lib@2.108.1(constructs@10.3.0):
resolution:
{
- integrity: sha512-kKbcKkts272Ju5xjGKI3pXTOpiJxW4OQbDF8Vmw/NIkkuJLo8GlRCFfeOfoN/hilvlYQgENA67GCgSWccbvu7w==,
+ integrity: sha512-rqBJIB8cVjF2BjO3kEUn1j0JVY0GqrQc7KzMez40ew6I/QzqJwy6j8lPAI+eibn1JBifNeMb8wU2DpwVxz4fhQ==,
}
engines: { node: ">= 14.15.0" }
peerDependencies:
constructs: ^10.0.0
dependencies:
- "@aws-cdk/asset-awscli-v1": 2.2.200
+ "@aws-cdk/asset-awscli-v1": 2.2.201
"@aws-cdk/asset-kubectl-v20": 2.1.2
"@aws-cdk/asset-node-proxy-agent-v6": 2.0.1
- "@balena/dockerignore": 1.0.2
- case: 1.6.3
- constructs: 10.2.70
- fs-extra: 11.1.1
- ignore: 5.2.4
- jsonschema: 1.4.1
- minimatch: 3.1.2
- punycode: 2.3.0
- semver: 7.5.4
- table: 6.8.1
- yaml: 1.10.2
+ constructs: 10.3.0
bundledDependencies:
- "@balena/dockerignore"
- case
@@ -1646,10 +2560,10 @@ packages:
- table
- yaml
- /aws-cdk@2.93.0:
+ /aws-cdk@2.108.1:
resolution:
{
- integrity: sha512-C0o7rzlXbQ3othvQ9uZamRwr741MSX/9eZ74zNJvpkX5Eitx/XoQYwUHeD+cbb4lKHMi7m2SwJfx3yOEkpu9OQ==,
+ integrity: sha512-VSu1KYLT1VzJdZqKPgVFQGfEBxaWmWCp0USfT4Xqk7drOmMzZK1PmXhSDpWr1mq1jn0m+4rwaifUi1Tt/0eFNQ==,
}
engines: { node: ">= 14.15.0" }
hasBin: true
@@ -1662,13 +2576,13 @@ packages:
{
integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==,
}
+ dev: true
/bowser@2.11.0:
resolution:
{
integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==,
}
- dev: true
/brace-expansion@1.1.11:
resolution:
@@ -1678,6 +2592,7 @@ packages:
dependencies:
balanced-match: 1.0.2
concat-map: 0.0.1
+ dev: true
/brace-expansion@2.0.1:
resolution:
@@ -1712,6 +2627,7 @@ packages:
integrity: sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==,
}
engines: { node: ">= 0.8.0" }
+ dev: true
/chalk@4.1.2:
resolution:
@@ -1755,10 +2671,10 @@ packages:
engines: { node: ">=0.8" }
dev: true
- /codemaker@1.88.0:
+ /codemaker@1.91.0:
resolution:
{
- integrity: sha512-/7+1mPQCEFmBm9zhf5blMiqirCcXNwulb8dozu2LVsDLgnafPt1h2eg/OwvyrqSMWUnsIFetAssKVP2gE66MPQ==,
+ integrity: sha512-yI9ibYUBdJDI8n5Vffd4kfg7mSy6Fes2FHq3/TrZtqhL5CJcXvI8Lltl6iTWM5f1JkeIeAMQOC45PjscBhWyZg==,
}
engines: { node: ">= 14.17.0" }
dependencies:
@@ -1775,12 +2691,14 @@ packages:
engines: { node: ">=7.0.0" }
dependencies:
color-name: 1.1.4
+ dev: true
/color-name@1.1.4:
resolution:
{
integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==,
}
+ dev: true
/commonmark@0.30.0:
resolution:
@@ -1800,11 +2718,12 @@ packages:
{
integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==,
}
+ dev: true
- /constructs@10.2.70:
+ /constructs@10.3.0:
resolution:
{
- integrity: sha512-z6zr1E8K/9tzJbCQzY0UGX0/oVKPFKu9C/mzEnghCG6TAJINnvlq0CMKm63XqqeMleadZYm5T3sZGJKcxJS/Pg==,
+ integrity: sha512-vbK8i3rIb/xwZxSpTjz3SagHn1qq9BChLEfy5Hf6fB3/2eFbrwt2n9kHwQcS0CPTRBesreeAcsJfMq2229FnbQ==,
}
engines: { node: ">= 16.14.0" }
@@ -1879,7 +2798,7 @@ packages:
dependencies:
semver: 7.5.4
shelljs: 0.8.5
- typescript: 5.3.0-dev.20230907
+ typescript: 5.4.0-dev.20231114
dev: true
/emoji-regex@8.0.0:
@@ -1887,6 +2806,7 @@ packages:
{
integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==,
}
+ dev: true
/entities@2.0.3:
resolution:
@@ -1956,6 +2876,7 @@ packages:
{
integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==,
}
+ dev: true
/fast-glob@3.3.1:
resolution:
@@ -1979,7 +2900,6 @@ packages:
hasBin: true
dependencies:
strnum: 1.0.5
- dev: true
/fastq@1.15.0:
resolution:
@@ -2019,17 +2939,6 @@ packages:
universalify: 2.0.0
dev: true
- /fs-extra@11.1.1:
- resolution:
- {
- integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==,
- }
- engines: { node: ">=14.14" }
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.0
-
/fs-extra@8.1.0:
resolution:
{
@@ -2117,6 +3026,7 @@ packages:
{
integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==,
}
+ dev: true
/has-flag@4.0.0:
resolution:
@@ -2136,13 +3046,6 @@ packages:
function-bind: 1.1.1
dev: true
- /ignore@5.2.4:
- resolution:
- {
- integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==,
- }
- engines: { node: ">= 4" }
-
/inflight@1.0.6:
resolution:
{
@@ -2191,6 +3094,7 @@ packages:
integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==,
}
engines: { node: ">=8" }
+ dev: true
/is-glob@4.0.3:
resolution:
@@ -2210,23 +3114,23 @@ packages:
engines: { node: ">=0.12.0" }
dev: true
- /jsii-pacmak@1.88.0:
+ /jsii-pacmak@1.91.0:
resolution:
{
- integrity: sha512-nanfSaYpe2lgOzvosup4iObQ76tCs47+rERUUGFyrCq7sruQ7VMYgRdAuGWh8PqF9fGNwq6Do1eR+EMC+d4WUg==,
+ integrity: sha512-k3Mc8v2nS7OTZxbwXczjSl5/RzGXHPq/BzZ+MRQhP5Z0Ai7QDF++aJxx6GZT9JXOD8zpHpv74QOr6eLPRVRIEQ==,
}
engines: { node: ">= 14.17.0" }
hasBin: true
dependencies:
- "@jsii/check-node": 1.88.0
- "@jsii/spec": 1.88.0
+ "@jsii/check-node": 1.91.0
+ "@jsii/spec": 1.91.0
clone: 2.1.2
- codemaker: 1.88.0
+ codemaker: 1.91.0
commonmark: 0.30.0
escape-string-regexp: 4.0.0
fs-extra: 10.1.0
- jsii-reflect: 1.88.0
- jsii-rosetta: 1.88.0
+ jsii-reflect: 1.91.0
+ jsii-rosetta: 1.91.0
semver: 7.5.4
spdx-license-list: 6.7.0
xmlbuilder: 15.1.1
@@ -2235,56 +3139,56 @@ packages:
- supports-color
dev: true
- /jsii-reflect@1.88.0:
+ /jsii-reflect@1.91.0:
resolution:
{
- integrity: sha512-YYZTEQpayvwMDtRMCjgNraTFUqsj4/KEOE8ChvDCkpxv6aH89vpZSsAJM5ymhNLDHj4XZ2OW3XE0sNOz31NbvA==,
+ integrity: sha512-RRFmvscXiBHUOP9ew71gPQ2IptiHYoRaihKoLg5+SQSeCvynaJrBWhNcBy26LHd28HEN2atdzYems0+HgeQNRg==,
}
engines: { node: ">= 14.17.0" }
hasBin: true
dependencies:
- "@jsii/check-node": 1.88.0
- "@jsii/spec": 1.88.0
+ "@jsii/check-node": 1.91.0
+ "@jsii/spec": 1.91.0
chalk: 4.1.2
fs-extra: 10.1.0
- oo-ascii-tree: 1.88.0
+ oo-ascii-tree: 1.91.0
yargs: 16.2.0
dev: true
- /jsii-rosetta@1.88.0:
+ /jsii-rosetta@1.91.0:
resolution:
{
- integrity: sha512-6xRRkwWUKFqDTnjgCXkB6v9dxA51KUD4Cd7InLB4qirMBDuMtyYhYVNc1yJbHPYs9gkN5/ao0dFk+1CQxt7T7g==,
+ integrity: sha512-v8eW/XiJHklnkmTtCIbyAeDPUVfovU/ZNh1ixvGri/ps5H3iRRpLEmqGJGMm2IEIjNCSmnmIsDMQLw20/7Nu+Q==,
}
engines: { node: ">= 14.17.0" }
hasBin: true
dependencies:
- "@jsii/check-node": 1.88.0
- "@jsii/spec": 1.88.0
+ "@jsii/check-node": 1.91.0
+ "@jsii/spec": 1.91.0
"@xmldom/xmldom": 0.8.10
commonmark: 0.30.0
fast-glob: 3.3.1
- jsii: 1.88.0
+ jsii: 1.91.0
semver: 7.5.4
semver-intersect: 1.4.0
stream-json: 1.8.0
typescript: 3.9.10
- workerpool: 6.4.2
+ workerpool: 6.5.1
yargs: 16.2.0
transitivePeerDependencies:
- supports-color
dev: true
- /jsii@1.88.0:
+ /jsii@1.91.0:
resolution:
{
- integrity: sha512-WKfwHbcEI/j5OYDPexvkH8KKDcTZR7tIBFNTxu8h1Nh3G8xFT4hh3pObUUSMRCa6rsSF9EHGjS+AKC+TfpFGrQ==,
+ integrity: sha512-dJ2FbnUfX5Eg9BdZx6Cz2JhDsvzGi2DoQeomzdjO9ltvVUouAFPWkpcUtJdLXaNmHQtPM4/I+AzelUX7w2mWVw==,
}
engines: { node: ">= 14.17.0" }
hasBin: true
dependencies:
- "@jsii/check-node": 1.88.0
- "@jsii/spec": 1.88.0
+ "@jsii/check-node": 1.91.0
+ "@jsii/spec": 1.91.0
case: 1.6.3
chalk: 4.1.2
fast-deep-equal: 3.1.3
@@ -2300,16 +3204,16 @@ packages:
- supports-color
dev: true
- /jsii@5.2.2:
+ /jsii@5.2.29:
resolution:
{
- integrity: sha512-0GufgQqaSSt/cLoMeNSP/Xw7xYIGis5KP8nfGRVP04zVJQ/BUXChxwCfG4LaYN2roxixIPAzdO4fj6W8lv7v3g==,
+ integrity: sha512-2ApVgH/6473cyyVIxDtYGCm2yozJn0yhXYM+KYBxXsTjVXaXtkzSfD2PbPvzJ1phlR3FKAXSphFv8HIheRc/BA==,
}
engines: { node: ">= 16.14.0" }
hasBin: true
dependencies:
- "@jsii/check-node": 1.88.0
- "@jsii/spec": 1.88.0
+ "@jsii/check-node": 1.91.0
+ "@jsii/spec": 1.91.0
case: 1.6.3
chalk: 4.1.2
downlevel-dts: 0.11.0
@@ -2318,7 +3222,7 @@ packages:
semver: 7.5.4
semver-intersect: 1.4.0
sort-json: 2.0.1
- spdx-license-list: 6.7.0
+ spdx-license-list: 6.8.0
typescript: 5.2.2
yargs: 17.7.2
transitivePeerDependencies:
@@ -2330,6 +3234,7 @@ packages:
{
integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==,
}
+ dev: true
/jsonfile@4.0.0:
resolution:
@@ -2349,18 +3254,7 @@ packages:
universalify: 2.0.0
optionalDependencies:
graceful-fs: 4.2.11
-
- /jsonschema@1.4.1:
- resolution:
- {
- integrity: sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==,
- }
-
- /lodash.truncate@4.4.2:
- resolution:
- {
- integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==,
- }
+ dev: true
/log4js@6.9.1:
resolution:
@@ -2394,6 +3288,7 @@ packages:
engines: { node: ">=10" }
dependencies:
yallist: 4.0.0
+ dev: true
/make-error@1.3.6:
resolution:
@@ -2435,6 +3330,7 @@ packages:
}
dependencies:
brace-expansion: 1.1.11
+ dev: true
/minimatch@9.0.3:
resolution:
@@ -2477,10 +3373,10 @@ packages:
wrappy: 1.0.2
dev: true
- /oo-ascii-tree@1.88.0:
+ /oo-ascii-tree@1.91.0:
resolution:
{
- integrity: sha512-A7m3z7XlUD3DnXSYxWmAdKQTIY6+1JzWS0lhaqgPGhj6g7a/odCsV1ctaRnjJljCB3zQBrbp2QHdYTUsD9AXcQ==,
+ integrity: sha512-pH4FFNLTO8VG+vNUm4AHmhLNjoSfQlO1UKIrzBGdeScppY785D93GVMH1XkCwbuO7pd9rrh6El5WF3a5QNvaww==,
}
engines: { node: ">= 14.17.0" }
dev: true
@@ -2557,16 +3453,16 @@ packages:
hasBin: true
dev: true
- /publib@0.2.737:
+ /publib@0.2.745:
resolution:
{
- integrity: sha512-wGNz2o5wZgMqes2qIH6AjnKLG6jEA3O/mqJ6fO3TULSREUY2Xm5jwijUbwEHJuYaNeFK8TEab2y8ybW1oNhqTw==,
+ integrity: sha512-/HzsNkJAC15znzXF0xmY9Vsdz8ET2w5hPsl7B3ZMW3SrAT8P5dz5ucoqhKtnt6/3Odp/R6T0xqT4LdnGA9snUQ==,
}
hasBin: true
dependencies:
- "@aws-sdk/client-codeartifact": 3.405.0
- "@aws-sdk/credential-providers": 3.405.0
- "@aws-sdk/types": 3.398.0
+ "@aws-sdk/client-codeartifact": 3.451.0
+ "@aws-sdk/credential-providers": 3.451.0
+ "@aws-sdk/types": 3.449.0
"@types/fs-extra": 8.1.2
fs-extra: 8.1.0
glob: 10.0.0
@@ -2583,6 +3479,7 @@ packages:
integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==,
}
engines: { node: ">=6" }
+ dev: true
/queue-microtask@1.2.3:
resolution:
@@ -2615,6 +3512,7 @@ packages:
integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==,
}
engines: { node: ">=0.10.0" }
+ dev: true
/resolve@1.22.4:
resolution:
@@ -2678,6 +3576,7 @@ packages:
hasBin: true
dependencies:
lru-cache: 6.0.0
+ dev: true
/shelljs@0.8.5:
resolution:
@@ -2699,17 +3598,6 @@ packages:
}
dev: true
- /slice-ansi@4.0.0:
- resolution:
- {
- integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==,
- }
- engines: { node: ">=10" }
- dependencies:
- ansi-styles: 4.3.0
- astral-regex: 2.0.0
- is-fullwidth-code-point: 3.0.0
-
/sort-json@2.0.1:
resolution:
{
@@ -2730,6 +3618,14 @@ packages:
engines: { node: ">=8" }
dev: true
+ /spdx-license-list@6.8.0:
+ resolution:
+ {
+ integrity: sha512-5UdM7r9yJ1EvsPQZWfa41AZjLQngl9iMMysm9XBW7Lqhq7aF8cllfqjS+rFCHB8FFMGSM0yFWue2LUV9mR0QzQ==,
+ }
+ engines: { node: ">=8" }
+ dev: true
+
/stream-chain@2.2.5:
resolution:
{
@@ -2770,6 +3666,7 @@ packages:
emoji-regex: 8.0.0
is-fullwidth-code-point: 3.0.0
strip-ansi: 6.0.1
+ dev: true
/string.prototype.repeat@0.2.0:
resolution:
@@ -2786,13 +3683,13 @@ packages:
engines: { node: ">=8" }
dependencies:
ansi-regex: 5.0.1
+ dev: true
/strnum@1.0.5:
resolution:
{
integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==,
}
- dev: true
/supports-color@7.2.0:
resolution:
@@ -2812,19 +3709,6 @@ packages:
engines: { node: ">= 0.4" }
dev: true
- /table@6.8.1:
- resolution:
- {
- integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==,
- }
- engines: { node: ">=10.0.0" }
- dependencies:
- ajv: 8.12.0
- lodash.truncate: 4.4.2
- slice-ansi: 4.0.0
- string-width: 4.2.3
- strip-ansi: 6.0.1
-
/to-regex-range@5.0.1:
resolution:
{
@@ -2874,14 +3758,12 @@ packages:
{
integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==,
}
- dev: true
/tslib@2.6.2:
resolution:
{
integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==,
}
- dev: true
/typescript@3.9.10:
resolution:
@@ -2910,10 +3792,10 @@ packages:
hasBin: true
dev: true
- /typescript@5.3.0-dev.20230907:
+ /typescript@5.4.0-dev.20231114:
resolution:
{
- integrity: sha512-8yegC0GyY5ug9184BxLq8fLDt08+g8jRfut0QSraLFoT13c39Z6fVoviDEeqJgbnIGVxzAEiNQLUslpKYCyUsg==,
+ integrity: sha512-z7rH8Vy4KWJyzNUaFt1HMzwYNRUmy2HMN98eufjvqbhmS3WPoQF89/UgonRmYf1vAP/69z0PytuV9hBMHNkaDg==,
}
engines: { node: ">=14.17" }
hasBin: true
@@ -2933,6 +3815,7 @@ packages:
integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==,
}
engines: { node: ">= 10.0.0" }
+ dev: true
/uri-js@4.4.1:
resolution:
@@ -2941,6 +3824,7 @@ packages:
}
dependencies:
punycode: 2.3.0
+ dev: true
/uuid@8.3.2:
resolution:
@@ -2948,7 +3832,6 @@ packages:
integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==,
}
hasBin: true
- dev: true
/v8-compile-cache-lib@3.0.1:
resolution:
@@ -2957,10 +3840,10 @@ packages:
}
dev: true
- /workerpool@6.4.2:
+ /workerpool@6.5.1:
resolution:
{
- integrity: sha512-MrDWwemtC4xNV22kbbZDQQQmxNX+yLm790sgYl2wVD3CWnK7LJY1youI/11wHorAjHjK+GEjUxUh74XoPU71uQ==,
+ integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==,
}
dev: true
@@ -3004,13 +3887,7 @@ packages:
{
integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==,
}
-
- /yaml@1.10.2:
- resolution:
- {
- integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==,
- }
- engines: { node: ">= 6" }
+ dev: true
/yargs-parser@20.2.9:
resolution: