From 1fb2ce484958074d525a14caa05b3e6db0dbf94d Mon Sep 17 00:00:00 2001 From: memehadi Date: Mon, 8 Jul 2024 17:17:54 +0200 Subject: [PATCH 1/2] Added Support for FMS Advanced Shield policies --- .DS_Store | Bin 0 -> 8196 bytes .gitignore | 10 - .vscode/settings.json | 5 + CHANGELOG.md | 56 +- Deployment.md | 30 +- Features.md | 30 +- Taskfile.yml | 13 +- bin/aws-firewall-factory.ts | 255 +- cdk.json | 2 +- lib/_prerequisites-stack.ts | 896 +- lib/_shield-advanced-stack.ts | 75 + lib/constructs/CrossAccountSink.ts | 48 + lib/constructs/ShieldDashboard.ts | 64 + lib/lambda/FmsDdosNotification/index.ts | 13 +- .../messengers/slack/notification.ts | 40 +- lib/tools/generate-shield-skeleton.ts | 32 + ...e-skeleton.ts => generate-waf-skeleton.ts} | 0 lib/tools/helpers/aws-firewall-factory.ts | 84 +- lib/tools/helpers/guidance.ts | 7 +- lib/tools/helpers/pricing/calculator.ts | 298 +- .../quotas-and-capacity.ts | 2 +- lib/types/config.ts | 515 +- options.sh | 53 + package-lock.json | 13480 ++++++---------- package.json | 76 +- static/AWSFIREWALLMANAGER.drawio.xml | 175 +- static/AWSFIREWALLMANAGER.png | Bin 166587 -> 193683 bytes .../{roles => cf-templates}/ci-cd-role.yaml | 0 .../cross_account_cw_stack.template.yml | 134 + .../cross_account_roles_unutilized_wafs.yaml | 0 static/cf-templates/grafana-role.yaml | 65 + .../monitoring-account-sink.template.yml | 42 + static/docs/README.md | 15 +- static/grafana-dashboard.jpg | Bin 0 -> 386938 bytes static/grafana/waf-dashboard.json | 809 + static/options.jpg | Bin 0 -> 14149 bytes static/shield-dashboard.png | Bin 0 -> 263130 bytes typedoc.json | 3 +- values/examples/asciiart-load-test.yml | 39 + values/examples/index.ts | 3 +- values/examples/prequisites.ts | 3 +- values/examples/shield-advanced.ts | 19 + values/examples/webhooks/slack.json | 4 + values/index.ts | 8 +- 44 files changed, 8170 insertions(+), 9233 deletions(-) create mode 100644 .DS_Store delete mode 100644 .gitignore create mode 100644 .vscode/settings.json create mode 100644 lib/_shield-advanced-stack.ts create mode 100644 lib/constructs/CrossAccountSink.ts create mode 100644 lib/constructs/ShieldDashboard.ts create mode 100644 lib/tools/generate-shield-skeleton.ts rename lib/tools/{generate-skeleton.ts => generate-waf-skeleton.ts} (100%) create mode 100755 options.sh rename static/{roles => cf-templates}/ci-cd-role.yaml (100%) create mode 100644 static/cf-templates/cross_account_cw_stack.template.yml rename static/{roles => cf-templates}/cross_account_roles_unutilized_wafs.yaml (100%) create mode 100644 static/cf-templates/grafana-role.yaml create mode 100644 static/cf-templates/monitoring-account-sink.template.yml create mode 100644 static/grafana-dashboard.jpg create mode 100644 static/grafana/waf-dashboard.json create mode 100644 static/options.jpg create mode 100644 static/shield-dashboard.png create mode 100644 values/examples/asciiart-load-test.yml create mode 100644 values/examples/shield-advanced.ts create mode 100644 values/examples/webhooks/slack.json diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..aa892572058ebc29b20b2bbcd94546b5c8605d0c GIT binary patch literal 8196 zcmeHM%Wl&^6g@+nM+t?BRTnI>M?~TeOqvuT0Tm=HSV8k>8gSz%kD~7U8x<12!q@N} zaPA#b*<)u_2~}c7@*HP;&%Jlf9cMZz0Mpq{o&$#f8oUG#n(RuNJeRA`?xiC_Hsqrp z#p6*FkNEkZVC@II0$u^HfLFjP;1#$F3UJSs*4VM{+o!(w3U~$nO9kZnp~XuuOfj*j zUmfi92tW)ttc~~jr$4bJ1H>@J#3D!7jHMDS)ucxZlb#%mrSo~1+9wt*9Y!P5Pa4^z zClr$&JWNZ?VM2?(_X>CgiVDctJwO{X%(2Oz-_27#YyZ}!#QI-5oMVfTV|`s>eTg;3 zh%v!5Z;cmxb)RH>S1@7*i@a6ko#V4XZxeiF9$)A=F4+Hc?CUr7F*A1NSN%roADJ8; z;0Ujn*;~9s53g}TY~uoxd{)6TC(2{;bdLB$JYz4P7tD0a_?uE6-yI*1$T?x;A>N~p z4nFX%ubGr&P~CIb`{-hdB_hVXV#ZTOFO92n&epWSEay07{a5TSu+Go5`pb#b#4){} z()*T-DXUPDUv1#9?lZ3?Idj!TIBT4jM9NoV$v9(HTe6#yQ(kjfBU#=a73{H!UA!Td zWLJ?@l4aC&CQIhFVvddiTJ5ZL69f7^VuhqqLwqcY5lDTrtQu#$QQhVkJ2RJR?zFue ztQJwcn9)YIzCgXq+$>Ah@{rNiRPT(cN2;H!jL3;C_07f>|58=wUD5aTVdh=g7o}Jo zS?3aAwyQq67P1j)%9Pbv(7F&s<{UCZ!Nj89|5XRyc?E8(K*c&Zl=FXY_wWC=4deM< z0k6OvR=@<^LAS#M)4jEjs+_f3ygu`iCU%KMrLfcEI8l$|#G8K@^1ek=;e;tB7CFM^ Pe+W<+eCHMTrwaT5c _prerequisites-stack.ts + - `export STACK_NAME=WAFStack` => _web-application-firewall-stack.ts + - `export STACK_NAME=ShieldAdvancedStack` => _shield-advanced-stack.ts + - Add Shield Cloudwatch Dashboard - [Example Shield Dashboard](./static/shield-dashboard.png)- The Firewall Factory is able to provision a centralized CloudWatch Dashboard. + - Add Cloudwatch Alarms: Cloudwatch Alarms are now part of the prerequisite stack and can be used to triger the SNS topics incase of DDoS. + The Dashboard shows the ammount of DDoS attacks detected + - Add Grafana Dashbording - [Example Grafana Dashboard](./static/grafana-dashboard.jpg)- AWS Glue crawler job, an Amazon Athena table and an Amazon Athena view to build a Managed Grafana dashboard to visualize the events in near real time - This is an optional component in the Prequisite Stack. + Example Grafana Dashboard can be found [here](./static/grafana/waf-dashboard.json) + __Note__: + - Your need to configure [Amazon Athena Data Source](https://docs.aws.amazon.com/athena/latest/ug/work-with-data-stores.html) in Amazon Managed Grafana + - Example Role template for Cross Account Access can be found [here](./static/cf-templates/grafana-role.yaml) + - โš ๏ธ You need to adjust the json and replace the uid of your grafana-athena-datasource - while importing into your Grafana. + + +### Fixed +- Bump @aws-sdk/client-cloudformation to 3.606.0 +- Bump @aws-sdk/client-cloudfront to 3.606.0 +- Bump @aws-sdk/client-cloudwatch to 3.606.0 +- Bump @aws-sdk/client-config-service to 3.606.0 +- Bump @aws-sdk/client-ec2 to 3.606.0 +- Bump @aws-sdk/client-fms to 3.606.0 +- Bump @aws-sdk/client-pricing to 3.606.0 +- Bump @aws-sdk/client-s3 to 3.606.0 +- Bump @aws-sdk/client-iam to 3.606.0 +- Bump @aws-sdk/client-secrets-manager to 3.606.0 +- Bump @aws-sdk/client-service-quotas to 3.606.0 +- Bump @aws-sdk/client-shield to 3.606.0 +- Bump @aws-sdk/client-ssm to 3.606.0 +- Bump @aws-sdk/client-wafv2 to 3.606.0 +- Bump @aws-solutions-constructs/aws-eventbridge-stepfunctions to 2.60.0 +- Bump @babel/traverse to 7.24.7 +- Bump @mhlabs/cfn-diagram to 1.1.40 +- Bump @slack/types to 2.12.0 +- Bump @types/aws-lambda to 8.10.140 +- Bump @types/lodash to 4.17.6 +- Bump @types/uuid to 10.0.0 +- Bump adaptivecards to 3.0.4 +- Bump aws-cdk-lib to 2.148.0 +- Bump axios to 1.7.2 +- Bump cdk-sops-secrets to 1.12.0 +- Bump cfonts to 3.3.0 +- Bump npm to 10.8.1 +- Bump table to 6.8.2 +- Bump uuid to 10.0.0 +- Bump @types/node to 20.14.9 +- Bump @typescript-eslint/eslint-plugin to 7.14.1 +- Bump @typescript-eslint/parser to 7.14.1 +- Bump aws-cdk to 2.147.2 +- Bump ts-jest to 29.1.5 ## 4.3.1 ### Added - [Issue#365](https://github.com/globaldatanet/aws-firewall-factory/issues/365) UnutilizedWafs - Implemented automated identification and notification system in Firewall Factory to manage unused WAFs, leveraging Lambda and notification services to streamline infrastructure, optimize costs, and enhance security by addressing WAF sprawl proactively and ensuring efficient resource utilization. -- Added example IAM Role which can be used for [ci-cd](./static/roles/ci-cd-role.yaml) deployments +- Added example IAM Role which can be used for [ci-cd](./static/cf-templates/ci-cd-role.yaml) deployments ### Fixed - [Issue#380](https://github.com/globaldatanet/aws-firewall-factory/issues/380) Fixes on the CloudWatch dashboard. diff --git a/Deployment.md b/Deployment.md index fefbccf2..88f3fdc6 100644 --- a/Deployment.md +++ b/Deployment.md @@ -9,8 +9,11 @@ 6. Invoke `npm i` to install dependencies 7. โš ๏ธ Before installing a stack to your aws account using aws cdk you need to prepare the account using a [cdk bootstrap](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html) -8. (Optional) If you want to use CloudWatch Dashboards - You need to enable your target accounts to share CloudWatch data with the central security account follow [this](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region) to see how to do it. -9. (Optional) If you want to use the UnutilizedWafs Feature - You need to enable your target accounts with a Cross Account Role - You can find an example CfnTemplate you can use [here](static/roles/cross_account_roles_unutilized_wafs.yaml). +8. (Optional) If you want to use CloudWatch Dashboards (both Shield or Firewall) - You need to enable your target accounts to share CloudWatch data with the central security account follow [this](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region) to see how to do it, or use the templates from here: + - [Monitoring account template](./static/cf-templates/monitoring-account-sink.template.yml) + - [Source account template](./static/cf-templates/cross_account_cw_stack.template.yml) + +9. (Optional) If you want to use the UnutilizedWafs Feature - You need to enable your target accounts with a Cross Account Role - You can find an example CfnTemplate you can use [here](static/cf-templates/cross_account_roles_unutilized_wafs.yaml). 10. Assume AWS Profile `awsume PROFILENAME` 11. (Optional) Enter `task generateprerequisitesconfig` @@ -24,13 +27,26 @@ | FireHoseKey - KeyAlias [^1] | Alias for Key | | CrossAccountIdforPermissions [^1] | Id of AWS Account for CrossAccount Permission for Bucket and KMS Key(s)| -10. Enter `task deploy config=NAMEOFYOURCONFIGFILE prerequisite=true` - - +12. When Deploying from a CI/CD pipeline, set an environment variable STACK_NAME to specify which resources to deploy. + - `export STACK_NAME=PreRequisiteStack` => _prerequisites-stack.ts + - `export STACK_NAME=WAFStack` => _web-application-firewall-stack.ts + - `export STACK_NAME=ShieldAdvancedStack` => _shield-advanced-stack.ts +13. Enter `task deploy config=NAMEOFYOURCONFIGFILE` +14. If STACK_NAME isn't set yet, select the type of resource to be deployed (Pre-requisite Stacks, WAF or Shield Advanced) + ![List of Resources](./static/options.jpg "Stacks") ### ๐Ÿ Deployment via Taskfile 1. Create new ts file for you WAF and configure Rules in the Configuration (see [owasptopten.ts](values/examples/owasptop10.ts) to see structure) or use enter `task generate-waf-skeleton` 2. Assume AWS Profile `awsume / assume PROFILENAME` -3. (Optional) Enter `task generate-waf-skeleton` -4. Enter `task deploy config=NAMEOFYOURCONFIGFILE` +3. (Optional) + 1. Enter `task generate-waf-skeleton` + 2. Enter `task generate-shield-skeleton` +4. When Deploying from a CI/CD pipeline, set an environment variable STACK_NAME to specify which resources to deploy. + - `export STACK_NAME=PreRequisiteStack` => _prerequisites-stack.ts + - `export STACK_NAME=WAFStack` => _web-application-firewall-stack.ts + - `export STACK_NAME=ShieldAdvancedStack` => _shield-advanced-stack.ts +5. Enter `task deploy config=NAMEOFYOURCONFIGFILE` +6. If STACK_NAME isn't set yet, select the type of resource to be deployed (Pre-requisite Stacks, WAF or Shield Advanced) + ![List of Resources](./static/options.jpg "Stacks") + \ No newline at end of file diff --git a/Features.md b/Features.md index 286dbf6e..d065ac2e 100644 --- a/Features.md +++ b/Features.md @@ -78,4 +78,32 @@ See example: 22. Centralized management of RegexPatternSets - No longer will there be a need for manual updates of RegexPatternSets across multiple AWS accounts. These can now be defined in code and replicated for use by WAF rules wherever needed. -23. Automated identification and notification system in Firewall Factory to manage unused WAFs, leveraging Lambda and notification services to streamline infrastructure, optimize costs, and enhance security by addressing WAF sprawl proactively and ensuring efficient resource utilization. \ No newline at end of file +23. Automated identification and notification system in Firewall Factory to manage unused WAFs, leveraging Lambda and notification services to streamline infrastructure, optimize costs, and enhance security by addressing WAF sprawl proactively and ensuring efficient resource utilization. +24. Support Advanced Shield policy deployment through AWS Firewall Manager. AWS Shield Advanced provides customized detection based on traffic patterns to your protected resources, detects and alerts on smaller DDoS attacks, and identifies application layer attacks by baselining traffic and spotting anomalies. + +25. Add Grafana Dashbording - The Firewall Factory is able to provision prequsistes and a Central Grafana Dashboard. + The Dashboard shows: + - Request Map Across Countries + - Request Count by Action + - Request by Endpoint (TOP 10) + - Request Count by IP (TOP 10) + - Top HTTP Methods + - Top 10 URIs + - Top 10 Terminating Rule Groups + See example: + ![GrafanaFirewallDashboard](./static/grafana-dashboard.jpg) + +26. Shield Cloudwatch Dashboard - The Firewall Factory is able to provision a centralized CloudWatch Dashboard. + The Dashboard shows the ammount of DDoS attacks detected + + See example: + ![ShieldDashboard](./static/shield-dashboard.png) + +27. Cloudwatch Cross-Account association - The Firewall Factory offers CloudFormation templates for associating the monitoring account with source accounts: + - [Monitoring account template](./static/cf-templates/monitoring-account-sink.template.yml) + - [Source account template](./static/cf-templates/cross_account_cw_stack.template.yml) + +28. Add Cloudwatch Alarms - The prerequisite stack contains Cloudwatch Alarm resource that can be used to trigger the SNS topics incase of DDoS. + + + \ No newline at end of file diff --git a/Taskfile.yml b/Taskfile.yml index ccee1347..e50b3452 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -48,7 +48,7 @@ tasks: cdkdestroy: desc: CDK Destroy cmds: - - cdk destroy --force + - bash -c 'source options.sh && cdk destroy --force' vars: ACCOUNT: sh: aws sts get-caller-identity |jq -r .Account @@ -60,7 +60,7 @@ tasks: cdkdeploy: desc: CDK Deploy cmds: - - cdk deploy --require-approval never {{.TAGS}} --toolkit-stack-name {{.TOOL_KIT_STACKNAME}} + - bash -c 'source options.sh && cdk deploy --require-approval never {{.TAGS}} --toolkit-stack-name {{.TOOL_KIT_STACKNAME}}' vars: ACCOUNT: sh: aws sts get-caller-identity |jq -r .Account @@ -96,7 +96,12 @@ tasks: - sh: "[ '{{.WAF_TEST}}' != 'true' ]" msg: โญ Skipping WAF Testing ๐Ÿงช generate-waf-skeleton: - desc: Generate Skeleton + desc: Generate WAF Skeleton silent: true cmds: - - ts-node ./lib/tools/generate-skeleton.ts \ No newline at end of file + - ts-node ./lib/tools/generate-waf-skeleton.ts + generate-shield-skeleton: + desc: Generate Shield Skeleton + silent: true + cmds: + - ts-node ./lib/tools/generate-shield-skeleton.ts \ No newline at end of file diff --git a/bin/aws-firewall-factory.ts b/bin/aws-firewall-factory.ts index 97cd0341..a4a5000c 100644 --- a/bin/aws-firewall-factory.ts +++ b/bin/aws-firewall-factory.ts @@ -1,12 +1,28 @@ #!/usr/bin/env node import { WafStack } from "../lib/_web-application-firewall-stack"; import { PrerequisitesStack } from "../lib/_prerequisites-stack"; +import { ShieldStack } from "../lib/_shield-advanced-stack"; import * as cdk from "aws-cdk-lib"; -import { Config, Prerequisites, PriceRegions, RegionString } from "../lib/types/config"; -import { wafHelper, afwfHelper, pricingHelper, cloudformationHelper, guidanceHelper, ssmHelper } from "../lib/tools/helpers"; +import { + Config, + ShieldConfig, + Prerequisites, + PriceRegions, + RegionString, +} from "../lib/types/config"; +import { + wafHelper, + afwfHelper, + pricingHelper, + cloudformationHelper, + guidanceHelper, + ssmHelper, +} from "../lib/tools/helpers"; const app = new cdk.App(); +// Main function to handle the user choice and deploy respective stack + void (async () => { const values = await import("../values"); @@ -15,7 +31,12 @@ void (async () => { - */ const CONFIG_OBJECT_NAME = process.env.PROCESS_PARAMETERS; - if(!CONFIG_OBJECT_NAME || (values.configs[CONFIG_OBJECT_NAME] === undefined && values.prereq[CONFIG_OBJECT_NAME] === undefined)) { + if ( + !CONFIG_OBJECT_NAME || + (values.configs[CONFIG_OBJECT_NAME] === undefined && + values.prereq[CONFIG_OBJECT_NAME] === undefined && + values.shieldConfigs[CONFIG_OBJECT_NAME] === undefined) + ) { console.log("Configuration ", CONFIG_OBJECT_NAME, " not found."); process.exit(1); } @@ -23,102 +44,232 @@ void (async () => { // --------------------------------------------------------------------- // Deploying prerequisite stack console.log(process.env.PREREQUISITE); - if(process.env.PREREQUISITE === "true") { + if (process.env.STACK_NAME === "PreRequisiteStack") { // eslint-disable-next-line @typescript-eslint/no-var-requires, @typescript-eslint/no-unsafe-assignment const prerequisites: Prerequisites = values.prereq[CONFIG_OBJECT_NAME]; - const deploymentRegion= afwfHelper.outputInfoBanner(); + const deploymentRegion = afwfHelper.outputInfoBanner(); const runtimeProperties = afwfHelper.initRuntimeProperties(); - ssmHelper.getAllAwsRegionsFromPublicSsmParameter(deploymentRegion, runtimeProperties); + ssmHelper.getAllAwsRegionsFromPublicSsmParameter( + deploymentRegion, + runtimeProperties + ); console.log("โ„น๏ธ Deploying Prerequisites Stack."); const app = new cdk.App(); - new PrerequisitesStack(app, prerequisites.General.Prefix.toUpperCase() + "-AWS-FIREWALL-FACTORY-PREQUISITES", { // NOSONAR -> SonarQube is identitfying this line as a Major Issue, but it is not. Error: Either remove this useless object instantiation or use it. - prerequisites, - env: { - region: process.env.AWS_REGION, - account: process.env.CDK_DEFAULT_ACCOUNT, - }, - runtimeProperties: runtimeProperties, - }); + new PrerequisitesStack( + app, + prerequisites.General.Prefix.toUpperCase() + + "-AWS-FIREWALL-FACTORY-PREQUISITES", + { + // NOSONAR -> SonarQube is identitfying this line as a Major Issue, but it is not. Error: Either remove this useless object instantiation or use it. + prerequisites, + env: { + region: process.env.AWS_REGION, + account: process.env.CDK_DEFAULT_ACCOUNT, + }, + runtimeProperties: runtimeProperties, + } + ); } + // --------------------------------------------------------------------- + // Deploying advanced shield stack + console.log(process.env.STACK_NAME); + if (process.env.STACK_NAME === "ShieldAdvancedStack") { + // eslint-disable-next-line @typescript-eslint/no-var-requires, @typescript-eslint/no-unsafe-assignment + const shieldConfig: ShieldConfig = values.shieldConfigs[CONFIG_OBJECT_NAME]; + const deploymentRegion = process.env.AWS_REGION; + const runtimeProperties = afwfHelper.initRuntimeProperties(); + console.log(`๐Ÿ›ก๏ธ Deploy Shield Policy: ${shieldConfig.General.Prefix.toUpperCase()}-${ + shieldConfig.General.Stage + } + \n โฆ‚ Type: + ${shieldConfig.resourceType}\n`); + console.log("\n ๐ŸŽฏ Targets:"); + if (shieldConfig.includeMap?.account) { + for (const account of shieldConfig.includeMap.account) { + console.log("\x1b[32m", ` ๐Ÿ›ฌ ${account}`, "\x1b[0m"); + } + } + if (shieldConfig.includeMap?.orgunit) { + for (const unit of shieldConfig.includeMap.orgunit) { + console.log("\x1b[32m", ` ๐Ÿ›ฌ ${unit}`, "\x1b[0m"); + } + } + console.log("\n ๐Ÿ“‘ Logging:"); + if (shieldConfig.General.LoggingConfiguration === "Firehose") { + console.log(" ๐Ÿงฏ " + shieldConfig.General.LoggingConfiguration); + console.log( + " โš™๏ธ [" + shieldConfig.General.S3LoggingBucketName + "]" + ); + } + if (shieldConfig.General.LoggingConfiguration === "S3") { + console.log(" ๐Ÿชฃ " + shieldConfig.General.LoggingConfiguration); + console.log( + " โš™๏ธ [" + shieldConfig.General.S3LoggingBucketName + "]" + ); + } + const app = new cdk.App(); + new ShieldStack( + app, + shieldConfig.General.Prefix.toUpperCase() + + "-SHIELD-ADVANCED-" + + shieldConfig.General.Stage.toUpperCase(), + { + shieldConfig, + env: { + region: deploymentRegion, + account: process.env.CDK_DEFAULT_ACCOUNT, + }, + runtimeProperties: runtimeProperties, + } + ); + + await pricingHelper.isShieldPriceCalculated(shieldConfig); + await guidanceHelper.outputGuidance(runtimeProperties); + } // --------------------------------------------------------------------- // Deploying Firewall stack - - else { + if (process.env.STACK_NAME === "WAFStack") { // eslint-disable-next-line @typescript-eslint/no-var-requires const config: Config = values.configs[CONFIG_OBJECT_NAME]; - const deploymentRegion= afwfHelper.outputInfoBanner(config); + const deploymentRegion = afwfHelper.outputInfoBanner(config); const runtimeProperties = afwfHelper.initRuntimeProperties(); if (process.env.SKIP_QUOTA_CHECK === "true") { console.log("โ—๏ธ SKIPPING Quota Check for Policies.โ—๏ธ\n\n"); } else { - const policyQuotaReached = await wafHelper.isPolicyQuotaReached(deploymentRegion); + const policyQuotaReached = await wafHelper.isPolicyQuotaReached( + deploymentRegion + ); if (policyQuotaReached) { - console.error("\u001B[31m","๐Ÿšจ ERROR: Exit process due Quota Check for Policies ๐Ÿšจ \n\n","\x1b[0m" + "\n\n"); + console.error( + "\u001B[31m", + "๐Ÿšจ ERROR: Exit process due Quota Check for Policies ๐Ÿšจ \n\n", + "\x1b[0m" + "\n\n" + ); process.exit(1); } } - await cloudformationHelper.setOutputsFromStack(deploymentRegion, runtimeProperties, config); - if(config.General.DeployHash){ - console.log("#๏ธโƒฃ Deployment Hash for this WAF: "+ config.General.DeployHash); + await cloudformationHelper.setOutputsFromStack( + deploymentRegion, + runtimeProperties, + config + ); + if (config.General.DeployHash) { + console.log( + "#๏ธโƒฃ Deployment Hash for this WAF: " + config.General.DeployHash + ); guidanceHelper.getGuidance("deploymentHash", runtimeProperties); } - console.log(`๐Ÿ”ฅ Deploy FMS Policy: ${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${config.General.DeployHash ? "-"+config.General.DeployHash.toUpperCase() : ""}\n โฆ‚ Type: - ${config.WebAcl.Type}\n๐Ÿ“š Stackname:`); - console.log("\u001b[32m",` ${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${config.General.DeployHash ? "-"+config.General.DeployHash.toUpperCase() : ""}`,"\u001b[0m"); + console.log(`๐Ÿ”ฅ Deploy FMS Policy: ${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${ + config.General.DeployHash + ? "-" + config.General.DeployHash.toUpperCase() + : "" + }\n โฆ‚ Type: + ${config.WebAcl.Type}\n๐Ÿ“š Stackname:`); + console.log( + "\u001b[32m", + ` ${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${ + config.General.DeployHash + ? "-" + config.General.DeployHash.toUpperCase() + : "" + }`, + "\u001b[0m" + ); console.log("\n ๐ŸŽฏ Targets:"); - if(config.WebAcl.IncludeMap.account){ + if (config.WebAcl.IncludeMap.account) { for (const account of config.WebAcl.IncludeMap.account) { console.log("\x1b[32m", ` ๐Ÿ›ฌ ${account}`, "\x1b[0m"); } } - if(config.WebAcl.IncludeMap.orgunit){ + if (config.WebAcl.IncludeMap.orgunit) { for (const unit of config.WebAcl.IncludeMap.orgunit) { console.log("\x1b[32m", ` ๐Ÿ›ฌ ${unit}`, "\x1b[0m"); } } console.log("\n ๐Ÿ“‘ Logging:"); - if(config.General.LoggingConfiguration ==="Firehose"){ + if (config.General.LoggingConfiguration === "Firehose") { console.log(" ๐Ÿงฏ " + config.General.LoggingConfiguration); - console.log(" โš™๏ธ [" + config.General.S3LoggingBucketName +"]"); + console.log(" โš™๏ธ [" + config.General.S3LoggingBucketName + "]"); } - if(config.General.LoggingConfiguration ==="S3"){ + if (config.General.LoggingConfiguration === "S3") { console.log(" ๐Ÿชฃ " + config.General.LoggingConfiguration); - console.log(" โš™๏ธ [" + config.General.S3LoggingBucketName +"]"); + console.log(" โš™๏ธ [" + config.General.S3LoggingBucketName + "]"); } - if(Array.isArray(config.WebAcl.IPSets) && config.WebAcl.IPSets.length > 0) { + if ( + Array.isArray(config.WebAcl.IPSets) && + config.WebAcl.IPSets.length > 0 + ) { console.log("\n๐‚ IPSets"); - for(const ipSet of config.WebAcl.IPSets) { + for (const ipSet of config.WebAcl.IPSets) { console.log(" โž• " + ipSet.name); - console.log(" โš™๏ธ [" + ipSet.ipAddressVersion + "] | ๐ŸŒŽ [" + config.WebAcl.Scope+ "]"); + console.log( + " โš™๏ธ [" + + ipSet.ipAddressVersion + + "] | ๐ŸŒŽ [" + + config.WebAcl.Scope + + "]" + ); } } - if(Array.isArray(config.WebAcl.RegexPatternSets) && config.WebAcl.RegexPatternSets.length > 0) { + if ( + Array.isArray(config.WebAcl.RegexPatternSets) && + config.WebAcl.RegexPatternSets.length > 0 + ) { console.log("\n๐‚ RegexPatternSets"); - for(const regpatternset of config.WebAcl.RegexPatternSets) { + for (const regpatternset of config.WebAcl.RegexPatternSets) { console.log(" โž• " + regpatternset.name); - console.log(" โš™๏ธ ๐ŸŒŽ [" + config.WebAcl.Scope+ "]"); + console.log(" โš™๏ธ ๐ŸŒŽ [" + config.WebAcl.Scope + "]"); } } - const wcuQuotaReached = await wafHelper.isWcuQuotaReached(deploymentRegion, runtimeProperties, config); - if(wcuQuotaReached) { - console.error("\u001B[31m","๐Ÿšจ ERROR: Exit process due Quota Check for WCU ๐Ÿšจ \n\n","\x1b[0m" + "\n\n"); + const wcuQuotaReached = await wafHelper.isWcuQuotaReached( + deploymentRegion, + runtimeProperties, + config + ); + if (wcuQuotaReached) { + console.error( + "\u001B[31m", + "๐Ÿšจ ERROR: Exit process due Quota Check for WCU ๐Ÿšจ \n\n", + "\x1b[0m" + "\n\n" + ); process.exit(1); } - if(afwfHelper.wrongLoggingConfiguration(config)){ - console.error("\u001B[31m"," ๐Ÿšจ ERROR: Amazon S3 bucket name is invalid ๐Ÿšจ ", "\x1b[0m" +"\n ๐Ÿชฃ Amazon S3 bucket name must begin with \"aws-waf-logs-\" followed by at least one \n of the following characters [a-z0-9_.-]\n\n","\x1b[0m" + "\n\n"); + if (afwfHelper.wrongLoggingConfiguration(config)) { + console.error( + "\u001B[31m", + " ๐Ÿšจ ERROR: Amazon S3 bucket name is invalid ๐Ÿšจ ", + "\x1b[0m" + + "\n ๐Ÿชฃ Amazon S3 bucket name must begin with \"aws-waf-logs-\" followed by at least one \n of the following characters [a-z0-9_.-]\n\n", + "\x1b[0m" + "\n\n" + ); + process.exit(1); } - new WafStack(app, `${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${config.General.DeployHash ? "-"+config.General.DeployHash.toUpperCase() : ""}`, { // NOSONAR -> SonarQube is identitfying this line as a Major Issue, but it is not. Error: Either remove this useless object instantiation or use it. - config, runtimeProperties: runtimeProperties, - env: { - region: deploymentRegion, - account: process.env.CDK_DEFAULT_ACCOUNT - }, - }); + new WafStack( + app, + `${config.General.Prefix.toUpperCase()}-WAF-${config.WebAcl.Name.toUpperCase()}-${config.General.Stage.toUpperCase()}${ + config.General.DeployHash + ? "-" + config.General.DeployHash.toUpperCase() + : "" + }`, + { + // NOSONAR -> SonarQube is identitfying this line as a Major Issue, but it is not. Error: Either remove this useless object instantiation or use it. + config, + runtimeProperties: runtimeProperties, + env: { + region: deploymentRegion, + account: process.env.CDK_DEFAULT_ACCOUNT, + }, + } + ); - await pricingHelper.isWafPriceCalculated(PriceRegions[deploymentRegion as RegionString], runtimeProperties, config,deploymentRegion); - await guidanceHelper.outputGuidance(config, runtimeProperties); + await pricingHelper.isWafPriceCalculated( + PriceRegions[deploymentRegion as RegionString], + runtimeProperties, + config, + deploymentRegion + ); + await guidanceHelper.outputGuidance(runtimeProperties, config); } -})(); \ No newline at end of file +})(); diff --git a/cdk.json b/cdk.json index 2e3eee33..df7032c7 100644 --- a/cdk.json +++ b/cdk.json @@ -1,5 +1,5 @@ { - "app": "npx ts-node --prefer-ts-exts bin/aws-firewall-factory.ts", + "app": "npx ts-node --prefer-ts-exts ./bin/aws-firewall-factory.ts", "context": { "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": true, "@aws-cdk/core:stackRelativeExports": true, diff --git a/lib/_prerequisites-stack.ts b/lib/_prerequisites-stack.ts index 6b144812..b77e2c6a 100644 --- a/lib/_prerequisites-stack.ts +++ b/lib/_prerequisites-stack.ts @@ -2,17 +2,33 @@ import * as cdk from "aws-cdk-lib"; import { Construct } from "constructs"; import { Prerequisites } from "./types/config"; import { RuntimeProperties } from "./types/runtimeprops"; -import { aws_s3 as s3, aws_kms as kms, aws_iam as iam, aws_lambda as lambda, aws_lambda_nodejs as NodejsFunction, aws_logs as logs, aws_glue as glue, aws_stepfunctions as sfn, - aws_stepfunctions_tasks as tasks, aws_sns as sns, aws_fms as fms} from "aws-cdk-lib"; -import { EventbridgeToStepfunctions, EventbridgeToStepfunctionsProps } from "@aws-solutions-constructs/aws-eventbridge-stepfunctions"; +import { + aws_s3 as s3, + aws_kms as kms, + aws_iam as iam, + aws_lambda as lambda, + aws_lambda_nodejs as NodejsFunction, + aws_logs as logs, + aws_glue as glue, + aws_stepfunctions as sfn, + aws_stepfunctions_tasks as tasks, + aws_sns as sns, + aws_fms as fms, + aws_athena as athena, + aws_cloudwatch as cloudwatch, + aws_cloudwatch_actions as cloudwatch_actions, +} from "aws-cdk-lib"; +import { + EventbridgeToStepfunctions, + EventbridgeToStepfunctionsProps, +} from "@aws-solutions-constructs/aws-eventbridge-stepfunctions"; import * as path from "path"; import { SopsSyncProvider, SopsSecret } from "cdk-sops-secrets"; export interface StackProps extends cdk.StackProps { - readonly prerequisites: Prerequisites; - runtimeProperties: RuntimeProperties; - } - + readonly prerequisites: Prerequisites; + runtimeProperties: RuntimeProperties; +} export class PrerequisitesStack extends cdk.Stack { constructor(scope: Construct, id: string, props: StackProps) { @@ -21,252 +37,417 @@ export class PrerequisitesStack extends cdk.Stack { const region = cdk.Aws.REGION; // Create SOPS SecretProvider Construct - const sopsSyncProvider = new SopsSyncProvider( - this, - "SopsSyncProvider" - ); + const sopsSyncProvider = new SopsSyncProvider(this, "SopsSyncProvider"); + if (props.prerequisites.Information) { + console.log( + "๐Ÿ“ข Creating Lambda Function to send AWS managed rule group change status notifications to messengers (Slack/Teams)" + ); - if(props.prerequisites.Information){ - console.log("๐Ÿ“ข Creating Lambda Function to send AWS managed rule group change status notifications to messengers (Slack/Teams)"); - - const InformationSecret = new SopsSecret(this, "InformationSopsSecret", { + const InformationSecret = new SopsSecret(this, "InformationSopsSecret", { sopsFilePath: props.prerequisites.Information.WebhookSopsFile, sopsProvider: sopsSyncProvider, }); - const ManagedRuleGroupInfo = new NodejsFunction.NodejsFunction(this, "AwsFirewallFactoryManagedRuleGroupInfo", { - architecture: lambda.Architecture.ARM_64, - entry: path.join(__dirname, "../lib/lambda/ManagedRuleGroupInfo/index.ts"), - handler: "handler", - timeout: cdk.Duration.seconds(30), - environment: { - "WEBHOOK_SECRET": InformationSecret.secretName, - }, - runtime: lambda.Runtime.NODEJS_20_X, - memorySize: 128, - bundling: { - minify: true, - }, - description: "Lambda Function to send AWS managed rule group change status notifications (like upcoming new versions and urgent security updates) to messengers (Slack/Teams)", - }); + const ManagedRuleGroupInfo = new NodejsFunction.NodejsFunction( + this, + "AwsFirewallFactoryManagedRuleGroupInfo", + { + architecture: lambda.Architecture.ARM_64, + entry: path.join( + __dirname, + "../lib/lambda/ManagedRuleGroupInfo/index.ts" + ), + handler: "handler", + timeout: cdk.Duration.seconds(30), + environment: { + WEBHOOK_SECRET: InformationSecret.secretName, + }, + runtime: lambda.Runtime.NODEJS_20_X, + memorySize: 128, + bundling: { + minify: true, + }, + description: + "Lambda Function to send AWS managed rule group change status notifications (like upcoming new versions and urgent security updates) to messengers (Slack/Teams)", + } + ); InformationSecret.grantRead(ManagedRuleGroupInfo); - new logs.LogGroup(this, "AWS-Firewall-Factory-ManagedRuleGroupInfo-LogGroup",{ - logGroupName: "/aws/lambda/"+ManagedRuleGroupInfo.functionName, - retention: logs.RetentionDays.ONE_WEEK, - }); - - ManagedRuleGroupInfo.addToRolePolicy(new iam.PolicyStatement({ - actions: ["wafv2:ListAvailableManagedRuleGroupVersions"], - resources: ["*"], - })); + new logs.LogGroup( + this, + "AWS-Firewall-Factory-ManagedRuleGroupInfo-LogGroup", + { + logGroupName: "/aws/lambda/" + ManagedRuleGroupInfo.functionName, + retention: logs.RetentionDays.ONE_WEEK, + } + ); + + ManagedRuleGroupInfo.addToRolePolicy( + new iam.PolicyStatement({ + actions: ["wafv2:ListAvailableManagedRuleGroupVersions"], + resources: ["*"], + }) + ); ManagedRuleGroupInfo.addPermission("InvokeByAwsSnsTopic", { action: "lambda:InvokeFunction", principal: new iam.ServicePrincipal("sns.amazonaws.com"), - sourceArn: "arn:aws:sns:us-east-1:248400274283:aws-managed-waf-rule-notifications", + sourceArn: + "arn:aws:sns:us-east-1:248400274283:aws-managed-waf-rule-notifications", }); } - if(props.prerequisites.UnutilizedWafs){ - console.log("๐Ÿ“ข Creating StepFunction to send notification about unutilized Firewalls to messengers (Slack/Teams)"); - - const UnutilizedWafsSecret = new SopsSecret(this, "UnutilizedWafsSopsSecret", { - sopsFilePath: props.prerequisites.UnutilizedWafs.WebhookSopsFile, - sopsProvider: sopsSyncProvider, - }); - const unutilizedWafsBucket = new s3.Bucket(this, "AWS-Firewall-Factory-Unused-Resources", { - blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, - encryption: s3.BucketEncryption.S3_MANAGED, - enforceSSL: true, - removalPolicy: cdk.RemovalPolicy.RETAIN, - bucketName: props.prerequisites.General.Prefix.toLocaleLowerCase() + "-afwf-unutilized-resources-" + accountId + "-" + region - }); - - const GetMemberAccountsofFms = new NodejsFunction.NodejsFunction(this, "GetMemberAccountsofFms", { - architecture: lambda.Architecture.ARM_64, - entry: path.join(__dirname, "../lib/lambda/GetMemberAccountsofFms/index.ts"), - handler: "handler", - logRetention: logs.RetentionDays.ONE_WEEK, - timeout: cdk.Duration.seconds(30), - runtime: lambda.Runtime.NODEJS_20_X, - memorySize: 128, - bundling: { - minify: true, - }, - description: "Lambda Function to get all member accounts of AWS Firewall Manager", - }); - - GetMemberAccountsofFms.addToRolePolicy(new iam.PolicyStatement({ - actions: ["fms:ListMemberAccounts"], - resources: ["*"], - })); - - - - const CheckUnusedWebApplicationFirewalls = new NodejsFunction.NodejsFunction(this, "CheckUnusedWebApplicationFirewalls", { - architecture: lambda.Architecture.ARM_64, - entry: path.join(__dirname, "../lib/lambda/CheckUnusedWebApplicationFirewalls/index.ts"), - handler: "handler", - timeout: cdk.Duration.seconds(900), - runtime: lambda.Runtime.NODEJS_20_X, - memorySize: 128, - logRetention: logs.RetentionDays.ONE_WEEK, - bundling: { - minify: true, - }, - environment: { - "BUCKET_NAME": unutilizedWafsBucket.bucketName, - "CROSS_ACCOUNT_ROLE_NAME": props.prerequisites.UnutilizedWafs.CrossAccountRoleName, - "REGEX_STRING": props.prerequisites.UnutilizedWafs.SkipWafRegexString || "", - "AWS_ACCOUNT_ID": cdk.Aws.ACCOUNT_ID, - }, - description: "Lambda Function to get usage of AWS WAFv2 WebACLs", - }); - - CheckUnusedWebApplicationFirewalls.addToRolePolicy(new iam.PolicyStatement({ - actions: ["sts:AssumeRole"], - resources: ["*"], - })); + if (props.prerequisites.UnutilizedWafs) { + console.log( + "๐Ÿ“ข Creating StepFunction to send notification about unutilized Firewalls to messengers (Slack/Teams)" + ); + + const UnutilizedWafsSecret = new SopsSecret( + this, + "UnutilizedWafsSopsSecret", + { + sopsFilePath: props.prerequisites.UnutilizedWafs.WebhookSopsFile, + sopsProvider: sopsSyncProvider, + } + ); + const unutilizedWafsBucket = new s3.Bucket( + this, + "AWS-Firewall-Factory-Unused-Resources", + { + blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + encryption: s3.BucketEncryption.S3_MANAGED, + enforceSSL: true, + removalPolicy: cdk.RemovalPolicy.RETAIN, + bucketName: + props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-afwf-unutilized-resources-" + + accountId + + "-" + + region, + } + ); + + const GetMemberAccountsofFms = new NodejsFunction.NodejsFunction( + this, + "GetMemberAccountsofFms", + { + architecture: lambda.Architecture.ARM_64, + entry: path.join( + __dirname, + "../lib/lambda/GetMemberAccountsofFms/index.ts" + ), + handler: "handler", + logRetention: logs.RetentionDays.ONE_WEEK, + timeout: cdk.Duration.seconds(30), + runtime: lambda.Runtime.NODEJS_20_X, + memorySize: 128, + bundling: { + minify: true, + }, + description: + "Lambda Function to get all member accounts of AWS Firewall Manager", + } + ); + + GetMemberAccountsofFms.addToRolePolicy( + new iam.PolicyStatement({ + actions: ["fms:ListMemberAccounts"], + resources: ["*"], + }) + ); + + const CheckUnusedWebApplicationFirewalls = + new NodejsFunction.NodejsFunction( + this, + "CheckUnusedWebApplicationFirewalls", + { + architecture: lambda.Architecture.ARM_64, + entry: path.join( + __dirname, + "../lib/lambda/CheckUnusedWebApplicationFirewalls/index.ts" + ), + handler: "handler", + timeout: cdk.Duration.seconds(900), + runtime: lambda.Runtime.NODEJS_20_X, + memorySize: 128, + logRetention: logs.RetentionDays.ONE_WEEK, + bundling: { + minify: true, + }, + environment: { + BUCKET_NAME: unutilizedWafsBucket.bucketName, + CROSS_ACCOUNT_ROLE_NAME: + props.prerequisites.UnutilizedWafs.CrossAccountRoleName, + REGEX_STRING: + props.prerequisites.UnutilizedWafs.SkipWafRegexString || "", + AWS_ACCOUNT_ID: cdk.Aws.ACCOUNT_ID, + }, + description: "Lambda Function to get usage of AWS WAFv2 WebACLs", + } + ); + + CheckUnusedWebApplicationFirewalls.addToRolePolicy( + new iam.PolicyStatement({ + actions: ["sts:AssumeRole"], + resources: ["*"], + }) + ); unutilizedWafsBucket.grantReadWrite(CheckUnusedWebApplicationFirewalls); - const SendUnusedResourceNotification = new NodejsFunction.NodejsFunction(this, "SendUnusedResourceNotification", { - architecture: lambda.Architecture.ARM_64, - entry: path.join(__dirname, "../lib/lambda/SendUnusedResourceNotification/index.ts"), - handler: "handler", - timeout: cdk.Duration.seconds(30), - runtime: lambda.Runtime.NODEJS_20_X, - logRetention: logs.RetentionDays.ONE_WEEK, - memorySize: 128, - bundling: { - minify: true, - }, - environment: { - "WEBHOOK_SECRET": UnutilizedWafsSecret.secretName, - "BUCKET_NAME": unutilizedWafsBucket.bucketName, - }, - description: "Lambda Function to send notifications about unused AWS WAFv2 WebACLs", - }); - SendUnusedResourceNotification.addToRolePolicy(new iam.PolicyStatement({ - actions: ["pricing:Get*","pricing:Describe*","pricing:List*","pricing:Search*"], - resources: ["*"], - })); - SendUnusedResourceNotification.addToRolePolicy(new iam.PolicyStatement({ - actions: ["fms:ListPolicies"], - resources: ["*"], - })); - SendUnusedResourceNotification.addToRolePolicy(new iam.PolicyStatement({ - actions: ["ec2:DescribeRegions"], - resources: ["*"], - })); + const SendUnusedResourceNotification = new NodejsFunction.NodejsFunction( + this, + "SendUnusedResourceNotification", + { + architecture: lambda.Architecture.ARM_64, + entry: path.join( + __dirname, + "../lib/lambda/SendUnusedResourceNotification/index.ts" + ), + handler: "handler", + timeout: cdk.Duration.seconds(30), + runtime: lambda.Runtime.NODEJS_20_X, + logRetention: logs.RetentionDays.ONE_WEEK, + memorySize: 128, + bundling: { + minify: true, + }, + environment: { + WEBHOOK_SECRET: UnutilizedWafsSecret.secretName, + BUCKET_NAME: unutilizedWafsBucket.bucketName, + }, + description: + "Lambda Function to send notifications about unused AWS WAFv2 WebACLs", + } + ); + SendUnusedResourceNotification.addToRolePolicy( + new iam.PolicyStatement({ + actions: [ + "pricing:Get*", + "pricing:Describe*", + "pricing:List*", + "pricing:Search*", + ], + resources: ["*"], + }) + ); + SendUnusedResourceNotification.addToRolePolicy( + new iam.PolicyStatement({ + actions: ["fms:ListPolicies"], + resources: ["*"], + }) + ); + SendUnusedResourceNotification.addToRolePolicy( + new iam.PolicyStatement({ + actions: ["ec2:DescribeRegions"], + resources: ["*"], + }) + ); unutilizedWafsBucket.grantReadWrite(SendUnusedResourceNotification); UnutilizedWafsSecret.grantRead(SendUnusedResourceNotification); - const chain = sfn.Chain.start(new tasks.LambdaInvoke(this, "GetMemberAccountsofFmsLambda", { - lambdaFunction: GetMemberAccountsofFms, - retryOnServiceExceptions: true, - })).next(new sfn.Map(this, "Map", { - itemsPath: sfn.JsonPath.stringAt("$.Payload"), - resultPath: sfn.JsonPath.DISCARD, - }).itemProcessor(new tasks.LambdaInvoke(this, "CheckUnusedWebApplicationFirewallsLambda", { - lambdaFunction: CheckUnusedWebApplicationFirewalls, - payloadResponseOnly: true, - retryOnServiceExceptions: true, - }))).next(new tasks.LambdaInvoke(this, "SendUnsuedResourceNotificationLambda", { - lambdaFunction: SendUnusedResourceNotification, - retryOnServiceExceptions: true, - })); + const chain = sfn.Chain.start( + new tasks.LambdaInvoke(this, "GetMemberAccountsofFmsLambda", { + lambdaFunction: GetMemberAccountsofFms, + retryOnServiceExceptions: true, + }) + ) + .next( + new sfn.Map(this, "Map", { + itemsPath: sfn.JsonPath.stringAt("$.Payload"), + resultPath: sfn.JsonPath.DISCARD, + }).itemProcessor( + new tasks.LambdaInvoke( + this, + "CheckUnusedWebApplicationFirewallsLambda", + { + lambdaFunction: CheckUnusedWebApplicationFirewalls, + payloadResponseOnly: true, + retryOnServiceExceptions: true, + } + ) + ) + ) + .next( + new tasks.LambdaInvoke(this, "SendUnsuedResourceNotificationLambda", { + lambdaFunction: SendUnusedResourceNotification, + retryOnServiceExceptions: true, + }) + ); const constructProps: EventbridgeToStepfunctionsProps = { stateMachineProps: { - stateMachineName: "aws-firewall-factory-unutilizedWafs-"+ accountId + "-" + region, + stateMachineName: + "aws-firewall-factory-unutilizedWafs-" + accountId + "-" + region, definitionBody: sfn.DefinitionBody.fromChainable(chain), }, eventRuleProps: { schedule: props.prerequisites.UnutilizedWafs.ScheduleExpression, - }}; - new EventbridgeToStepfunctions(this, "eventbridge-stepfunction-invoke", constructProps); + }, + }; + new EventbridgeToStepfunctions( + this, + "eventbridge-stepfunction-invoke", + constructProps + ); } - if(props.prerequisites.Logging) { - if(props.prerequisites.Logging.FireHoseKey) { + if (props.prerequisites.Logging) { + if (props.prerequisites.Logging.FireHoseKey) { console.log("๐Ÿ”‘ Creating KMS Key for Kinesis FireHose."); - const fireHoseKey = new kms.Key(this, "AWS-Firewall-Factory-FireHoseEncryptionKey", { - enableKeyRotation: true, - alias: props.prerequisites.General.Prefix.toLocaleLowerCase() + "-AWS-Firewall-Factory-FireHoseKey" - }); - if(props.prerequisites.Logging.CrossAccountIdforPermissions) { - console.log("โž• Adding CrossAccount Permission for KMS Key: " + props.prerequisites.General.Prefix.toLocaleLowerCase() + "-AWS-Firewall-Factory-FireHoseKey \n\n"); - fireHoseKey.grantEncryptDecrypt(new iam.AccountPrincipal(props.prerequisites.Logging.CrossAccountIdforPermissions)); + const fireHoseKey = new kms.Key( + this, + "AWS-Firewall-Factory-FireHoseEncryptionKey", + { + enableKeyRotation: true, + alias: + props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-AWS-Firewall-Factory-FireHoseKey", + } + ); + if (props.prerequisites.Logging.CrossAccountIdforPermissions) { + console.log( + "โž• Adding CrossAccount Permission for KMS Key: " + + props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-AWS-Firewall-Factory-FireHoseKey \n\n" + ); + fireHoseKey.grantEncryptDecrypt( + new iam.AccountPrincipal( + props.prerequisites.Logging.CrossAccountIdforPermissions + ) + ); } } - if(props.prerequisites.Logging.BucketProperties){ - console.log("\n๐Ÿชฃ Creating Bucket with Name: AWS-Firewall-Factory-Logging"); + if (props.prerequisites.Logging.BucketProperties) { + console.log( + "\n๐Ÿชฃ Creating Bucket with Name: AWS-Firewall-Factory-Logging" + ); let encryptionKey = undefined; - if(props.prerequisites.Logging.BucketProperties?.KmsEncryptionKey){ - console.log(" ๐Ÿ”‘ Creating KMS Key for: AWS-Firewall-Factory-Logging Bucket."); - encryptionKey = new kms.Key(this, "AWS-Firewall-Factory-LoggingEncryptionKey", { - enableKeyRotation: true, - alias: props.prerequisites.General.Prefix.toLocaleLowerCase() + "-AWS-Firewall-Factory-" + "LogsKey" - }); + if (props.prerequisites.Logging.BucketProperties?.KmsEncryptionKey) { + console.log( + " ๐Ÿ”‘ Creating KMS Key for: AWS-Firewall-Factory-Logging Bucket." + ); + encryptionKey = new kms.Key( + this, + "AWS-Firewall-Factory-LoggingEncryptionKey", + { + enableKeyRotation: true, + alias: + props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-AWS-Firewall-Factory-" + + "LogsKey", + } + ); } /** * Move all objects to IA after 90 days - */ + */ const lifecycleRule: s3.LifecycleRule = { enabled: false, id: "objects-after90days-to-ia", prefix: "*", - transitions: [{ - storageClass: s3.StorageClass.INFREQUENT_ACCESS, - transitionAfter: cdk.Duration.days(90) - }], + transitions: [ + { + storageClass: s3.StorageClass.INFREQUENT_ACCESS, + transitionAfter: cdk.Duration.days(90), + }, + ], }; - - const accesslogsbucket = new s3.Bucket(this, "AWS-Firewall-Factory-LoggingBucket-AccessLogs", { - blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, - encryption: s3.BucketEncryption.S3_MANAGED, - enforceSSL: true, - lifecycleRules: [lifecycleRule], - versioned: true, - objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED, - removalPolicy: cdk.RemovalPolicy.RETAIN, - bucketName: props.prerequisites.Logging.BucketProperties?.BucketName ? props.prerequisites.General.Prefix.toLocaleLowerCase().toLocaleLowerCase() + "-" + props.prerequisites.Logging.BucketProperties?.BucketName + "-access-logs" : props.prerequisites.General.Prefix.toLocaleLowerCase() + "-awsfirewallfactory-logging-access-logs" + accountId + "-" + region - }); - - const bucket = new s3.Bucket(this, "AWS-Firewall-Factory-LoggingBucket", { - blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, - encryption: props.prerequisites.Logging.BucketProperties?.KmsEncryptionKey ? s3.BucketEncryption.KMS : s3.BucketEncryption.S3_MANAGED, - encryptionKey, - enforceSSL: true, - lifecycleRules: [lifecycleRule], - serverAccessLogsBucket: accesslogsbucket, - versioned: props.prerequisites.Logging.BucketProperties?.ObjectLock ? true : false, - objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED, - removalPolicy: cdk.RemovalPolicy.RETAIN, - bucketName: props.prerequisites.Logging.BucketProperties?.BucketName ? props.prerequisites.General.Prefix.toLocaleLowerCase() + "-" + props.prerequisites.Logging.BucketProperties?.BucketName : props.prerequisites.General.Prefix.toLocaleLowerCase() + "-awsfirewallfactory-logging-" + accountId + "-" + region - }); - - if(props.prerequisites.Logging.CrossAccountIdforPermissions) { - console.log(" โž• Adding CrossAccount Permission for Bucket: AWS-Firewall-Factory-Logging"); - bucket.grantReadWrite(new iam.AccountPrincipal(props.prerequisites.Logging.CrossAccountIdforPermissions)); + const accesslogsbucket = new s3.Bucket( + this, + "AWS-Firewall-Factory-LoggingBucket-AccessLogs", + { + blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + encryption: s3.BucketEncryption.S3_MANAGED, + enforceSSL: true, + lifecycleRules: [lifecycleRule], + versioned: true, + objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED, + removalPolicy: cdk.RemovalPolicy.RETAIN, + bucketName: props.prerequisites.Logging.BucketProperties?.BucketName + ? props.prerequisites.General.Prefix.toLocaleLowerCase().toLocaleLowerCase() + + "-" + + props.prerequisites.Logging.BucketProperties?.BucketName + + "-access-logs" + : props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-awsfirewallfactory-logging-access-logs" + + accountId + + "-" + + region, + } + ); + + const bucket = new s3.Bucket( + this, + "AWS-Firewall-Factory-LoggingBucket", + { + blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + encryption: props.prerequisites.Logging.BucketProperties + ?.KmsEncryptionKey + ? s3.BucketEncryption.KMS + : s3.BucketEncryption.S3_MANAGED, + encryptionKey, + enforceSSL: true, + lifecycleRules: [lifecycleRule], + serverAccessLogsBucket: accesslogsbucket, + versioned: props.prerequisites.Logging.BucketProperties?.ObjectLock + ? true + : false, + objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED, + removalPolicy: cdk.RemovalPolicy.RETAIN, + bucketName: props.prerequisites.Logging.BucketProperties?.BucketName + ? props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-" + + props.prerequisites.Logging.BucketProperties?.BucketName + : props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-awsfirewallfactory-logging-" + + accountId + + "-" + + region, + } + ); + + if (props.prerequisites.Logging.CrossAccountIdforPermissions) { + console.log( + " โž• Adding CrossAccount Permission for Bucket: AWS-Firewall-Factory-Logging" + ); + bucket.grantReadWrite( + new iam.AccountPrincipal( + props.prerequisites.Logging.CrossAccountIdforPermissions + ) + ); } - if(props.prerequisites.Logging.BucketProperties?.ObjectLock) { - console.log(" โž• Adding ObjectLock to Bucket: AWS-Firewall-Factory-Logging \n"); + if (props.prerequisites.Logging.BucketProperties?.ObjectLock) { + console.log( + " โž• Adding ObjectLock to Bucket: AWS-Firewall-Factory-Logging \n" + ); // eslint-disable-next-line @typescript-eslint/restrict-plus-operands - console.log(" โš™๏ธ Settings: \n ๐Ÿ—“๏ธ Retention-Days: " + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Days + "\n ๐Ÿ›ก๏ธ Retention-Mode: " + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Mode + "\n\n"); + console.log( + " โš™๏ธ Settings: \n ๐Ÿ—“๏ธ Retention-Days: " + + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Days + + "\n ๐Ÿ›ก๏ธ Retention-Mode: " + + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Mode + + "\n\n" + ); // Get the CloudFormation resource because L2 Construct doenst support this Property const cfnBucket = bucket.node.defaultChild as s3.CfnBucket; // Add the ObjectLockConfiguration prop to the Bucket's CloudFormation output. cfnBucket.addPropertyOverride("ObjectLockEnabled", true); - cfnBucket.addPropertyOverride("ObjectLockConfiguration.ObjectLockEnabled", "Enabled"); - cfnBucket.addPropertyOverride("ObjectLockConfiguration.Rule.DefaultRetention.Days", props.prerequisites.Logging.BucketProperties?.ObjectLock?.Days); + cfnBucket.addPropertyOverride( + "ObjectLockConfiguration.ObjectLockEnabled", + "Enabled" + ); + cfnBucket.addPropertyOverride( + "ObjectLockConfiguration.Rule.DefaultRetention.Days", + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Days + ); // Can be `GOVERNANCE` or `COMPLIANCE` - https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html - cfnBucket.addPropertyOverride("ObjectLockConfiguration.Rule.DefaultRetention.Mode", props.prerequisites.Logging.BucketProperties?.ObjectLock?.Mode); + cfnBucket.addPropertyOverride( + "ObjectLockConfiguration.Rule.DefaultRetention.Mode", + props.prerequisites.Logging.BucketProperties?.ObjectLock?.Mode + ); } - } - if(props.prerequisites.Logging.Athena){ + if (props.prerequisites.Logging.Athena) { // WAF Athena Log comlumn Properties const columnProperties = { timestamp: { name: "timestamp", type: "bigint" }, @@ -277,45 +458,53 @@ export class PrerequisitesStack extends cdk.Stack { action: { name: "action", type: "string" }, terminatingrulematchdetails: { name: "terminatingrulematchdetails", - type: "array>>" + type: "array>>", }, httpsourcename: { name: "httpsourcename", type: "string" }, httpsourceid: { name: "httpsourceid", type: "string" }, rulegrouplist: { name: "rulegrouplist", - type: "array,nonterminatingmatchingrules:array>>>>,excludedrules:string>>" + type: "array,nonterminatingmatchingrules:array>>>>,excludedrules:string>>", }, ratebasedrulelist: { name: "ratebasedrulelist", - type: "array>" + type: "array>", }, nonterminatingmatchingrules: { name: "nonterminatingmatchingrules", - type: "array>" + type: "array>", + }, + requestheadersinserted: { + name: "requestheadersinserted", + type: "string", }, - requestheadersinserted: { name: "requestheadersinserted", type: "string" }, responsecodesent: { name: "responsecodesent", type: "string" }, httprequest: { name: "httprequest", - type: "struct>,uri:string,args:string,httpversion:string,httpmethod:string,requestid:string>" + type: "struct>,uri:string,args:string,httpversion:string,httpmethod:string,requestid:string>", }, labels: { name: "labels", type: "array>" }, accountidspartition: { name: "accountids", type: "string" }, regionpartition: { name: "region", type: "string" }, - daypartition: { name: "day", type: "string" } + daypartition: { name: "day", type: "string" }, }; // WAF Athena Table new glue.CfnTable(this, "FmsLogsAthenaTable", { - databaseName: props.prerequisites.Logging.Athena.DatabaseName ? props.prerequisites.Logging.Athena.DatabaseName : "default", + databaseName: props.prerequisites.Logging.Athena.DatabaseName + ? props.prerequisites.Logging.Athena.DatabaseName + : "default", catalogId: cdk.Aws.ACCOUNT_ID, tableInput: { description: "description", name: props.prerequisites.Logging.Athena.TableName, owner: "hadoop", parameters: { - "EXTERNAL": "TRUE", - "projection.accountids.values": props.prerequisites.Logging.CrossAccountIdforPermissions ? props.prerequisites.Logging.CrossAccountIdforPermissions : cdk.Aws.ACCOUNT_ID, + EXTERNAL: "TRUE", + "projection.accountids.values": props.prerequisites.Logging + .CrossAccountIdforPermissions + ? props.prerequisites.Logging.CrossAccountIdforPermissions + : cdk.Aws.ACCOUNT_ID, "projection.accountids.type": "enum", "projection.day.format": "yyyy/MM/dd", "projection.day.interval": "1", @@ -324,78 +513,275 @@ export class PrerequisitesStack extends cdk.Stack { "projection.day.type": "date", "projection.enabled": "true", "projection.region.type": "enum", - "projection.region.values": props.prerequisites.Logging.Athena.Regions ? props.prerequisites.Logging.Athena.Regions : props.runtimeProperties.AllAwsRegions.toString(), - "storage.location.template": `s3://${props.prerequisites.Logging.BucketProperties?.BucketName ? props.prerequisites.General.Prefix.toLocaleLowerCase() + "-" + props.prerequisites.Logging.BucketProperties?.BucketName : props.prerequisites.General.Prefix.toLocaleLowerCase() + "-awsfirewallfactory-logging-" + accountId + "-" + region}/AWSLogs/\${accountids}/FirewallManager/\${region}/\${day}`, + "projection.region.values": props.prerequisites.Logging.Athena + .Regions + ? props.prerequisites.Logging.Athena.Regions + : props.runtimeProperties.AllAwsRegions.toString(), + "storage.location.template": `s3://${ + props.prerequisites.Logging.BucketProperties?.BucketName + ? props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-" + + props.prerequisites.Logging.BucketProperties?.BucketName + : props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-awsfirewallfactory-logging-" + + accountId + + "-" + + region + }/AWSLogs/\${accountids}/FirewallManager/\${region}/\${day}`, }, retention: 0, storageDescriptor: { columns: Object.values(columnProperties), compressed: false, inputFormat: "org.apache.hadoop.mapred.TextInputFormat", - location: `s3://${props.prerequisites.Logging.BucketProperties?.BucketName ? props.prerequisites.General.Prefix.toLocaleLowerCase() + "-" + props.prerequisites.Logging.BucketProperties?.BucketName : props.prerequisites.General.Prefix.toLocaleLowerCase() + "-awsfirewallfactory-logging-" + accountId + "-" + region}/`, + location: `s3://${ + props.prerequisites.Logging.BucketProperties?.BucketName + ? props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-" + + props.prerequisites.Logging.BucketProperties?.BucketName + : props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-awsfirewallfactory-logging-" + + accountId + + "-" + + region + }/`, numberOfBuckets: -1, serdeInfo: { serializationLibrary: "org.openx.data.jsonserde.JsonSerDe", parameters: { - "serialization.format": "1" - } + "serialization.format": "1", + }, }, - outputFormat: "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat", + outputFormat: + "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat", storedAsSubDirectories: false, }, partitionKeys: [ columnProperties.accountidspartition, columnProperties.regionpartition, - columnProperties.daypartition - ] + columnProperties.daypartition, + ], }, }); } } - if(props.prerequisites.DdosNotifications) { - console.log("๐Ÿ“ข Creating Lambda Function that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams)"); - - const DdosFmsNotificationSecret = new SopsSecret(this, "DdosFmsNotificationSopsSecret", { - sopsFilePath: props.prerequisites.DdosNotifications.WebhookSopsFile, - sopsProvider: sopsSyncProvider, - }); - - const DdosFmsNotification = new NodejsFunction.NodejsFunction(this, "AWS-Firewall-Factory-FMS-Notifications", { - architecture: lambda.Architecture.ARM_64, - entry: path.join(__dirname, "../lib/lambda/FmsDdosNotification/index.ts"), - handler: "handler", - timeout: cdk.Duration.seconds(60), - runtime: lambda.Runtime.NODEJS_20_X, - memorySize: 128, - logRetention: logs.RetentionDays.ONE_WEEK, - bundling: { - minify: true, - }, - environment: { - "WEBHOOK_SECRET": DdosFmsNotificationSecret.secretName, - }, - description: "Lambda Function that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams)", - }); + if (props.prerequisites.DdosNotifications) { + console.log( + "๐Ÿ“ข Creating Lambda Function that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams)" + ); + + const DdosFmsNotificationSecret = new SopsSecret( + this, + "DdosFmsNotificationSopsSecret", + { + sopsFilePath: props.prerequisites.DdosNotifications.WebhookSopsFile, + sopsProvider: sopsSyncProvider, + } + ); + + const DdosFmsNotification = new NodejsFunction.NodejsFunction( + this, + "AWS-Firewall-Factory-FMS-Notifications", + { + architecture: lambda.Architecture.ARM_64, + entry: path.join( + __dirname, + "../lib/lambda/FmsDdosNotification/index.ts" + ), + handler: "handler", + timeout: cdk.Duration.seconds(60), + runtime: lambda.Runtime.NODEJS_20_X, + memorySize: 128, + logRetention: logs.RetentionDays.ONE_WEEK, + bundling: { + minify: true, + }, + environment: { + WEBHOOK_SECRET: DdosFmsNotificationSecret.secretName, + }, + description: + "Lambda Function that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams)", + } + ); DdosFmsNotificationSecret.grantRead(DdosFmsNotification); - const snsRoleName = iam.Role.fromRoleName(this, "AWSServiceRoleForFMS", "aws-service-role/fms.amazonaws.com/AWSServiceRoleForFMS").roleArn; + const snsRole = iam.Role.fromRoleName( + this, + "AWSServiceRoleForFMS", + "aws-service-role/fms.amazonaws.com/AWSServiceRoleForFMS" + ); + const snsRoleName = snsRole.roleArn; + const cwService = new iam.ServicePrincipal("cloudwatch.amazonaws.com"); const FmsTopic = new sns.Topic(this, "FMS-Notifications-Topic"); - FmsTopic.addToResourcePolicy(new iam.PolicyStatement({ - actions: ["sns:Publish"], - principals: [iam.Role.fromRoleArn(this, "AWSServiceRoleForFMS",snsRoleName)], - })); + FmsTopic.addToResourcePolicy( + new iam.PolicyStatement({ + actions: ["sns:Publish"], + // Add permission for CloudWatchand FMS to publish to the SNS topic + principals: [snsRole, cwService], + resources: [FmsTopic.topicArn], + }) + ); + DdosFmsNotification.addPermission("InvokeByFmsSnsTopic", { action: "lambda:InvokeFunction", principal: new iam.ServicePrincipal("sns.amazonaws.com"), sourceArn: FmsTopic.topicArn, }); - new fms.CfnNotificationChannel(this, "AWS-Firewall-Factory-FMS-NotificationChannel", { - snsRoleName, - snsTopicArn: FmsTopic.topicArn, + new sns.Subscription(this, "FMSNotificationsTopicSubscription", { + topic: FmsTopic, + protocol: sns.SubscriptionProtocol.LAMBDA, + endpoint: DdosFmsNotification.functionArn, + }); + new fms.CfnNotificationChannel( + this, + "AWS-Firewall-Factory-FMS-NotificationChannel", + { + snsRoleName, + snsTopicArn: FmsTopic.topicArn, + } + ); + // Create a CloudWatch Alarm for DDoS attack metrics and add the SNS topic as an action + const ddosAlarm = new cloudwatch.Alarm(this, "DdosAlarm", { + metric: new cloudwatch.Metric({ + namespace: "AWS/DDoSProtection", + metricName: "DDoSDetected", + statistic: "Sum", + period: cdk.Duration.minutes(1), + }), + threshold: 0, + evaluationPeriods: 1, + alarmDescription: "Alarm when a DDoS attack is detected", + actionsEnabled: true, }); + + ddosAlarm.addAlarmAction(new cloudwatch_actions.SnsAction(FmsTopic)); } + if (props.prerequisites.Grafana) { + console.log( + "๐Ÿ“ข Amazon Athena table and an Amazon Athena view to build a Managed Grafana dashboard to visualize the events in near real time." + ); + + const FmsDelegatedAdminAccountId = props.prerequisites.Grafana + .DelegatedAdminAccountId + ? props.prerequisites.Grafana.DelegatedAdminAccountId + : cdk.Aws.ACCOUNT_ID; + const AthenaWorkGroupKey = new kms.Key( + this, + "AWS-Firewall-Factory-Grafana-AthenaWorkGroupKey", + { + enableKeyRotation: true, + alias: + props.prerequisites.General.Prefix.toLocaleLowerCase() + + "-AWS-Firewall-Factory-Grafana-AthenaWorkGroupKey", + } + ); + + const GlueCrawlerRole = new iam.Role( + this, + "AWS-Firewall-Factory-Grafana-Crawler-Role", + { + assumedBy: new iam.ServicePrincipal("glue.amazonaws.com"), + } + ); + GlueCrawlerRole.addManagedPolicy( + iam.ManagedPolicy.fromAwsManagedPolicyName( + "service-role/AWSGlueServiceRole" + ) + ); + GlueCrawlerRole.addToPolicy( + new iam.PolicyStatement({ + actions: ["s3:GetObject", "s3:ListBucket"], + resources: [ + `arn:aws:s3:::${props.prerequisites.Grafana.BucketName}/*`, + ], + }) + ); + + GlueCrawlerRole.addToPolicy( + new iam.PolicyStatement({ + actions: ["s3:PutObject", "s3:GetObject"], + resources: [ + `arn:aws:s3:::${props.prerequisites.Grafana.BucketName}/${FmsDelegatedAdminAccountId}/AwsFirewallFactory/Grafana/*`, + ], + }) + ); + + if (props.prerequisites.Grafana.BucketKmsKey) { + GlueCrawlerRole.addToPolicy( + new iam.PolicyStatement({ + actions: ["kms:Decrypt", "kms:Encrypt"], + resources: [ + props.prerequisites.Grafana.BucketKmsKey, + AthenaWorkGroupKey.keyArn, + ], + }) + ); + } + const GlueDatabase = new glue.CfnDatabase( + this, + "AWS-Firewall-Factory-Grafana-Database", + { + catalogId: cdk.Aws.ACCOUNT_ID, + databaseInput: { + name: "aws_firewall_factory_grafana", + description: "Database for AWS Firewall Factory Grafana Dashboards", + }, + } + ); + new glue.CfnCrawler(this, "AWS-Firewall-Factory-Grafana-Crawler", { + name: "aws-firewall-factory-grafana-crawler", + role: GlueCrawlerRole.roleArn, + databaseName: GlueDatabase.ref, + targets: { + s3Targets: [ + { + path: `s3://${props.prerequisites.Grafana.BucketName}/${FmsDelegatedAdminAccountId}/FirewallManager/`, + }, + ], + }, + schedule: { + scheduleExpression: "cron(0 */1 * * ? *)", + }, + }); + + const AthenaWorkgroup = new athena.CfnWorkGroup( + this, + "AWS-Firewall-Factory-Grafana-WorkGroup", + { + name: "aws_firewall_factory_db", + state: "ENABLED", + workGroupConfiguration: { + enforceWorkGroupConfiguration: true, + publishCloudWatchMetricsEnabled: true, + resultConfiguration: { + outputLocation: `s3://${props.prerequisites.Grafana.BucketName}/${FmsDelegatedAdminAccountId}/AwsFirewallFactory/Grafana/`, + }, + customerContentEncryptionConfiguration: { + kmsKey: AthenaWorkGroupKey.keyArn, + }, + }, + tags: [{ key: "GrafanaDataSource", value: "true" }], + } + ); + + new athena.CfnNamedQuery( + this, + "AWS-Firewall-Factory-Grafana-NamedQuery", + { + database: GlueDatabase.ref, + queryString: `CREATE OR REPLACE VIEW "waflogs" AS + SELECT DISTINCT * + FROM + "AwsDataCatalog".${props.prerequisites.Grafana.FmsLogAthenaDatabase}.${props.prerequisites.Grafana.FmsLogsAthenaTable} + WHERE cast(date_parse(day, '%Y/%m/%d') as date) > current_date - interval '${props.prerequisites.Grafana.TimeWindow}' day`, + name: "aws_firewall_factory_waf_centralized_logging", + description: "AWS WAF Logging dashboard summary view", + workGroup: AthenaWorkgroup.ref, + } + ); + } } -} \ No newline at end of file +} diff --git a/lib/_shield-advanced-stack.ts b/lib/_shield-advanced-stack.ts new file mode 100644 index 00000000..cd06cf0a --- /dev/null +++ b/lib/_shield-advanced-stack.ts @@ -0,0 +1,75 @@ +import * as cdk from "aws-cdk-lib"; +import { Construct } from "constructs"; +import { aws_fms as fms } from "aws-cdk-lib"; +import { ManagedServiceData } from "./types/fms"; +import { getGuidance } from "./tools/helpers/guidance"; +import { RuntimeProperties } from "./types/runtimeprops"; +import { ShieldConfig } from "./types/config"; +import { ShieldDashboard } from "./constructs/ShieldDashboard"; + +export interface shield_props extends cdk.StackProps { + readonly shieldConfig: ShieldConfig; + readonly runtimeProperties: RuntimeProperties; +} +export class ShieldStack extends cdk.Stack { + readonly oamSinkArn: string; + + constructor(scope: Construct, id: string, props: shield_props) { + super(scope, id, props); + const preProcessRuleGroups: never[] = []; + const postProcessRuleGroups: never[] = []; + let loggingConfiguration; + const managedServiceData: ManagedServiceData = { + type: "SHIELD_ADVANCED", + defaultAction: { type: props.shieldConfig.defaultActionType }, + preProcessRuleGroups: preProcessRuleGroups, + postProcessRuleGroups: postProcessRuleGroups, + overrideCustomerWebACLAssociation: props.shieldConfig.WebAcl + .OverrideCustomerWebACLAssociation + ? props.shieldConfig.WebAcl.OverrideCustomerWebACLAssociation + : false, + loggingConfiguration: { + logDestinationConfigs: [loggingConfiguration || ""], + }, + }; + + props.shieldConfig.remediationEnabled === false + ? getGuidance("remediationNotEnabled", props.runtimeProperties) + : null; + const cfnShieldPolicyProps: fms.CfnPolicyProps = { + remediationEnabled: props.shieldConfig.remediationEnabled, + // https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_fms.CfnPolicy.html#resourcetype:~:text=fms%2Dpolicy%2Dresourcetags-,resourceType,-%3F + resourceTypeList: props.shieldConfig.resourceTypeList, + resourceType: props.shieldConfig.resourceType, + policyName: `${props.shieldConfig.General.Prefix.toUpperCase()}-${ + props.shieldConfig.General.Stage + }`, + includeMap: props.shieldConfig.includeMap, + excludeMap: props.shieldConfig.excludeMap, + excludeResourceTags: props.shieldConfig.excludeResourceTags, + //https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_fms.CfnPolicy.html#:~:text=Specification%20for%20SHIELD_ADVANCED%20for%20Amazon%20CloudFront%20distributions + securityServicePolicyData: { + type: "SHIELD_ADVANCED", + managedServiceData: cdk.Fn.sub(JSON.stringify(managedServiceData), {}), + }, + }; + /* eslint-disable @typescript-eslint/no-unused-vars */ + const fmspolicy = new fms.CfnPolicy( + this, + "CfnPolicy", + cfnShieldPolicyProps + ); // NOSONAR -> SonarQube is identitfying this line as a Major Issue, but it is not. Sonarqube identify the following Error: Either remove this useless object instantiation or use it. + /* eslint-enable @typescript-eslint/no-unused-vars */ + if (props.shieldConfig.General.CreateDashboard === true) { + new ShieldDashboard(this, "ShieldDashboardConstruct", { + shieldConfig: { + General: { + Prefix: props.shieldConfig.General.Prefix, + Stage: props.shieldConfig.General.Stage, + }, + includeMap: props.shieldConfig.includeMap, + }, + }); + } + } +} diff --git a/lib/constructs/CrossAccountSink.ts b/lib/constructs/CrossAccountSink.ts new file mode 100644 index 00000000..af50f077 --- /dev/null +++ b/lib/constructs/CrossAccountSink.ts @@ -0,0 +1,48 @@ +import * as cdk from "aws-cdk-lib"; +import { Construct } from "constructs"; +import { + PolicyDocument, + PolicyStatement, + AnyPrincipal, +} from "aws-cdk-lib/aws-iam"; +import { CfnSink } from "aws-cdk-lib/aws-oam"; +import { StringParameter } from "aws-cdk-lib/aws-ssm"; + +export interface CrossAccountSinkProps extends cdk.StackProps { + principalOrgID: string; + sinkName: string; +} + +export class CrossAccountSink extends Construct { + public readonly sinkArn: string; + + constructor(scope: Construct, id: string, props: CrossAccountSinkProps) { + super(scope, id); + + const sinkPolicy = new PolicyDocument({ + statements: [ + new PolicyStatement({ + actions: ["oam:CreateLink", "oam:UpdateLink"], + resources: ["*"], + principals: [new AnyPrincipal()], + conditions: { + "ForAllValues:StringEquals": { + "oam:PrincipalOrgID": props.principalOrgID, + }, + }, + }), + ], + }); + + const sink = new CfnSink(this, props.sinkName, { + name: props.sinkName, + policy: sinkPolicy, + }); + + new StringParameter(this, "SinkArnParameter", { + parameterName: `/oam/${props.sinkName}/arn`, + stringValue: sink.attrArn, + description: `The ARN of the OAM sink for region: ${process.env.AWS_REGION}`, + }); + } +} diff --git a/lib/constructs/ShieldDashboard.ts b/lib/constructs/ShieldDashboard.ts new file mode 100644 index 00000000..df97ef88 --- /dev/null +++ b/lib/constructs/ShieldDashboard.ts @@ -0,0 +1,64 @@ +import * as cdk from "aws-cdk-lib"; +import * as cloudwatch from "aws-cdk-lib/aws-cloudwatch"; +import { Construct } from "constructs"; + +export interface ShieldDashboardProps extends cdk.StackProps { + shieldConfig: { + General: { + Prefix: string; + Stage: string; + }; + includeMap?: { + account?: string[]; + }; + }; +} + +export class ShieldDashboard extends Construct { + constructor(scope: Construct, id: string, props: ShieldDashboardProps) { + super(scope, id); + + const REGION = process.env.AWS_REGION; + + const dashboard = new cloudwatch.Dashboard(this, "ShieldDashboard", { + dashboardName: `ShieldAdvancedDashboard-${props.shieldConfig.General.Prefix.toUpperCase()}-${ + props.shieldConfig.General.Stage + }-${REGION}`, + periodOverride: cloudwatch.PeriodOverride.AUTO, + start: "-PT24H", + }); + + const infoWidget = new cloudwatch.TextWidget({ + markdown: `# ๐Ÿ›ก๏ธ Shield Advanced Dashboard\n\n๐ŸŒŽ Region: ${REGION}\n\n๐Ÿ’ก Type: Shield Advanced`, + width: 24, + height: 4, + }); + + dashboard.addWidgets(infoWidget); + + const metricsAccounts = props.shieldConfig.includeMap?.account || []; + for (const account of metricsAccounts) { + const ddosDetected = new cloudwatch.GraphWidget({ + title: `DDoS Detected in ${account}`, + width: 24, + height: 6, + left: [ + new cloudwatch.MathExpression({ + expression: `SEARCH('{AWS/DDoSProtection,ResourceArn} :aws.AccountId=${account}', 'Sum', 300)`, + searchAccount: account, + searchRegion: REGION, + label: "DDoS Detected", + color: "#00FF00", + }), + ], + leftYAxis: { + label: "Count", + showUnits: true, + min: 0, + }, + }); + + dashboard.addWidgets(ddosDetected); + } + } +} diff --git a/lib/lambda/FmsDdosNotification/index.ts b/lib/lambda/FmsDdosNotification/index.ts index 75c06d24..e05ba491 100644 --- a/lib/lambda/FmsDdosNotification/index.ts +++ b/lib/lambda/FmsDdosNotification/index.ts @@ -1,16 +1,15 @@ import { SNSEvent } from "aws-lambda"; - -import {ddosNotificationTeams} from "./messengers/teams/notification"; -import {ddosNotificationSlack} from "./messengers/slack/notification"; +import { ddosNotificationTeams } from "./messengers/teams/notification"; +import { ddosNotificationSlack } from "./messengers/slack/notification"; import { getWebhook } from "../SharedComponents/services/secretsmanager"; const WEBHOOK_SECRET = process.env.WEBHOOK_SECRET || ""; -export async function handler(Event: SNSEvent){ +export async function handler(Event: SNSEvent) { console.log("Lambda is invoked with:" + JSON.stringify(Event)); - for(const record of Event.Records){ + for (const record of Event.Records) { const WebhookSecret = await getWebhook(WEBHOOK_SECRET); - switch(WebhookSecret.Messenger){ + switch (WebhookSecret.Messenger) { case "Slack": await ddosNotificationSlack(record, WebhookSecret.WebhookUrl); break; @@ -19,4 +18,4 @@ export async function handler(Event: SNSEvent){ break; } } -} \ No newline at end of file +} diff --git a/lib/lambda/FmsDdosNotification/messengers/slack/notification.ts b/lib/lambda/FmsDdosNotification/messengers/slack/notification.ts index ac3f5cf9..d2bab140 100644 --- a/lib/lambda/FmsDdosNotification/messengers/slack/notification.ts +++ b/lib/lambda/FmsDdosNotification/messengers/slack/notification.ts @@ -2,20 +2,32 @@ import { IncomingWebhook } from "@slack/webhook"; import { MessageAttachment } from "@slack/types"; import { SNSEventRecord } from "aws-lambda"; -export async function ddosNotificationSlack(Record: SNSEventRecord, Webhook: string) { +export async function ddosNotificationSlack( + Record: SNSEventRecord, + Webhook: string +) { const url = Webhook; - const attachments: MessageAttachment ={ - "fallback": `Detailed information on ${Record.Sns.Type}.`, - "color": "green", - "title": Record.Sns.Subject, - "text": Record.Sns.Message, - }; - const webhook = new IncomingWebhook(url, + const attachments: MessageAttachment[] = [ { - "username": `WAF ${Record.Sns.Type}`, - "icon_emoji": ":managedrule:", - "text": Record.Sns.Subject, - }); - const response = await webhook.send(attachments); - console.log("โ„น๏ธ Slack Notification reponse-Code: " + response?.text); + fallback: `Detailed information on ${Record.Sns.Subject}.`, + color: "danger", + title: `๐Ÿšจ Alert: ${Record.Sns.Subject}`, + text: `${Record.Sns.Message}`, + mrkdwn_in: ["text", "pretext"], + }, + ]; + + const webhook = new IncomingWebhook(url); + const payload = { + username: `WAF ${Record.Sns.Type}`, + icon_emoji: ":managedrule:", + text: "*DDoS Alert Notification*", + attachments: attachments, + }; + + console.log("webhook payload is " + JSON.stringify(payload)); + + const response = await webhook.send(payload); + console.log("response is " + JSON.stringify(response)); + console.log("โ„น๏ธ Slack Notification response-Code: " + response?.text); } diff --git a/lib/tools/generate-shield-skeleton.ts b/lib/tools/generate-shield-skeleton.ts new file mode 100644 index 00000000..1f9d74eb --- /dev/null +++ b/lib/tools/generate-shield-skeleton.ts @@ -0,0 +1,32 @@ +import { ShieldConfig } from "../types/config"; +import util from "util"; +import { afwfHelper } from "./helpers"; + +/** + * The script will output a example WAF Skeleton Config to the terminal + */ + +const skeletonConfig : ShieldConfig = { + General: { + Prefix: "AFWF", + Stage: "TEST", + S3LoggingBucketName: "aws-waf-logs-aws-firewall-factory-test", + LoggingConfiguration: "S3", + SecuredDomain: ["test.aws-firewall-factory.com"], + }, + WebAcl: { OverrideCustomerWebACLAssociation: false }, + defaultActionType:"ALLOW", + remediationEnabled: true, + resourceType: "AWS::ElasticLoadBalancing::LoadBalancer", + policyName: "ACS-FIREWALL-FACTORY-SHIELD-ADVANCED", + includeMap: { account: ["123456189012"] }, + excludeMap: {}, + excludeResourceTags: false, +}; + +afwfHelper.outputInfoBanner(); +afwfHelper.outputInfoBanner(); +console.log("โ„น๏ธ Use the following snippet to create a skeleton config file for your Firewall. โ„น๏ธ\n"); +console.log("import { ShieldConfig } from \"../../lib/types/config\";\nexport const config: Config = {"); +console.log(util.inspect(skeletonConfig, false, null, true)); +console.log("};"); \ No newline at end of file diff --git a/lib/tools/generate-skeleton.ts b/lib/tools/generate-waf-skeleton.ts similarity index 100% rename from lib/tools/generate-skeleton.ts rename to lib/tools/generate-waf-skeleton.ts diff --git a/lib/tools/helpers/aws-firewall-factory.ts b/lib/tools/helpers/aws-firewall-factory.ts index 2d85136d..4d8ae924 100644 --- a/lib/tools/helpers/aws-firewall-factory.ts +++ b/lib/tools/helpers/aws-firewall-factory.ts @@ -2,47 +2,81 @@ import cfonts = require("cfonts"); import * as packageJsonObject from "../../../package.json"; import { RuntimeProperties } from "../../types/runtimeprops"; -import { Config } from "../../types/config"; +import { Config, ShieldConfig } from "../../types/config"; /** * Version of the AWS Firewall Factory - extracted from package.json */ const FIREWALL_FACTORY_VERSION = packageJsonObject.version; - /** * The function will display info banner and returns deploymentRegion for WAF Stack * @param config configuration object of the values.json * @return deploymentRegion AWS region, e.g. eu-central-1 */ -export const outputInfoBanner = (config?:Config) => { +export const outputInfoBanner = ( + config?: Config, + shieldConfig?: ShieldConfig +) => { /** * the region into which the stack is deployed */ let deploymentRegion = ""; // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call - cfonts.say("AWS FIREWALL FACTORY", {font: "block",align: "center",colors: ["#00ecbd"],background: "transparent",letterSpacing: 0,lineHeight: 0,space: true,maxLength: "13",gradient: false,independentGradient: false,transitionGradient: false,env: "node",width:"80%"}); + cfonts.say("AWS FIREWALL FACTORY", { + font: "block", + align: "center", + colors: ["#00ecbd"], + background: "transparent", + letterSpacing: 0, + lineHeight: 0, + space: true, + maxLength: "13", + gradient: false, + independentGradient: false, + transitionGradient: false, + env: "node", + width: "80%", + }); console.log("\n ยฉ by globaldatanet"); - console.log("\n๐Ÿท Version: ","\x1B[1m",FIREWALL_FACTORY_VERSION,"\x1b[0m"); - if(config){ + console.log("\n๐Ÿท Version: ", "\x1B[1m", FIREWALL_FACTORY_VERSION, "\x1b[0m"); + if (shieldConfig || config) { console.log("\n๐Ÿ‘ค AWS FMS Administrator Account: "); - console.log("\x1b[33m",` ${process.env.CDK_DEFAULT_ACCOUNT}`,"\x1b[0m"); - if(process.env.PREREQUISITE === "true"){ - console.log("๐ŸŒŽ Deployment region:"); - console.log("\x1b[32m",` ${process.env.AWS_REGION}`,"\x1b[0m \n\n"); + console.log( + "\x1b[33m", + ` ${process.env.CDK_DEFAULT_ACCOUNT}`, + "\x1b[0m" + ); + } + if (shieldConfig) { + if (shieldConfig.resourceType === "AWS::CloudFront::Distribution") { + deploymentRegion = "us-east-1"; + } else { + deploymentRegion = process.env.AWS_REGION || "eu-central-1"; } - else{ - if(config.WebAcl.Scope === "CLOUDFRONT"){ + } + if (config) { + if (process.env.PREREQUISITE === "true") { + console.log("๐ŸŒŽ Deployment region:"); + console.log( + "\x1b[32m", + ` ${process.env.AWS_REGION}`, + "\x1b[0m \n\n" + ); + } else { + if (config.WebAcl.Scope === "CLOUDFRONT") { deploymentRegion = "us-east-1"; - } - else{ + } else { deploymentRegion = process.env.REGION || "eu-central-1"; } console.log("๐ŸŒŽ CDK deployment region:"); - console.log("\x1b[32m",` ${deploymentRegion}`,"\x1b[0m \n"); + console.log( + "\x1b[32m", + ` ${deploymentRegion}`, + "\x1b[0m \n" + ); } - } - else{ + } else { deploymentRegion = process.env.REGION || "eu-central-1"; } return deploymentRegion; @@ -52,7 +86,7 @@ export const outputInfoBanner = (config?:Config) => { * initialize a runtime properties object * @returns the runtime properties object */ -export function initRuntimeProperties() : RuntimeProperties { +export function initRuntimeProperties(): RuntimeProperties { return { AllAwsRegions: [], GuidanceSummary: [], @@ -80,7 +114,7 @@ export function initRuntimeProperties() : RuntimeProperties { CustomRuleCount: 0, IpReputationListCount: 0, CustomRuleGroupCount: 0, - CustomCaptchaRuleCount: 0 + CustomCaptchaRuleCount: 0, }, PreProcess: { Capacity: 0, @@ -94,7 +128,7 @@ export function initRuntimeProperties() : RuntimeProperties { IpReputationListCount: 0, CustomRuleCount: 0, CustomRuleGroupCount: 0, - CustomCaptchaRuleCount: 0 + CustomCaptchaRuleCount: 0, }, Pricing: { Policy: 0, @@ -106,8 +140,8 @@ export function initRuntimeProperties() : RuntimeProperties { Captcha: 0, AccountTakeoverPrevention: 0, AccountTakeoverPreventionRequest: 0, - Dashboard: 0 - } + Dashboard: 0, + }, }; } @@ -115,9 +149,9 @@ export function initRuntimeProperties() : RuntimeProperties { * The function will check if s3 bucket is Parameter is starting with aws-waf-logs- if Logging Configuration is set to S3 * @param config Config */ -export function wrongLoggingConfiguration(config: Config): boolean{ - if(config.General.LoggingConfiguration === "S3"){ - if(!config.General.S3LoggingBucketName.startsWith("aws-waf-logs-")){ +export function wrongLoggingConfiguration(config: Config): boolean { + if (config.General.LoggingConfiguration === "S3") { + if (!config.General.S3LoggingBucketName.startsWith("aws-waf-logs-")) { return true; } return false; diff --git a/lib/tools/helpers/guidance.ts b/lib/tools/helpers/guidance.ts index 80f0c321..2111dc7d 100644 --- a/lib/tools/helpers/guidance.ts +++ b/lib/tools/helpers/guidance.ts @@ -39,6 +39,9 @@ export function getGuidance(context: string, runtimeProperties: RuntimePropertie case "wrongEvaluationWindowSec": runtimeProperties.GuidanceSummary.push("\x1b[31m",`\n ๐Ÿšจ ${source} is not a EvaluationWindowSec for RateBasedStatements - Valid Settings are 60, 120, 300, and 600. \n https://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedStatement.html.`,"\x1b[0m"); break; + case "remediationNotEnabled": + runtimeProperties.GuidanceSummary.push("\x1b[33m","\n โš ๏ธ Remediation is not enabled for your Shield Policy. \n Remediation takes care that the policy is automatically be applied to new resources.","\x1b[0m"); + break; default: break; } @@ -49,7 +52,7 @@ export function getGuidance(context: string, runtimeProperties: RuntimePropertie This function will print out the collected guidance for your Firewall. @param runtimeProperties - The runtimeProperties object. */ -export function outputGuidance(config: Config, runtimeProperties: RuntimeProperties) { +export function outputGuidance(runtimeProperties: RuntimeProperties, config?: Config) { if(runtimeProperties.GuidanceSummary.length !== 0 || runtimeProperties.Guidance.nestedRateStatementCount !== 0 || runtimeProperties.Guidance.overrideActionManagedRuleGroupCount !== 0 || runtimeProperties.Guidance.noRuleLabelsCount !== 0 || runtimeProperties.Guidance.byteMatchStatementPositionalConstraintCount !== 0){ console.log("\x1b[0m","\n๐Ÿ›Ÿ Guidance:","\x1b[0m"); runtimeProperties.GuidanceSummary.forEach(element => { @@ -84,7 +87,7 @@ export function outputGuidance(config: Config, runtimeProperties: RuntimePropert console.log(" โˆ’ "+element); }); } - if(runtimeProperties.Guidance.rateBasedStatementCount === 0 && config.WebAcl.Type === "AWS::ElasticLoadBalancingV2::LoadBalancer"){ + if(runtimeProperties.Guidance.rateBasedStatementCount === 0 && config?.WebAcl.Type === "AWS::ElasticLoadBalancingV2::LoadBalancer"){ console.log("\x1b[0m","\n โ„น๏ธ You are securing a LoadBalancer with your Firewall with usage of a RateBasedStatement.\n RateBasedStatements empower you to automatically block requests originating from problematic source IPs until their request rate diminishes below a predetermined threshold.","\x1b[0m"); } console.log("\n\n"); diff --git a/lib/tools/helpers/pricing/calculator.ts b/lib/tools/helpers/pricing/calculator.ts index 4f6b17c4..06f9be94 100644 --- a/lib/tools/helpers/pricing/calculator.ts +++ b/lib/tools/helpers/pricing/calculator.ts @@ -7,26 +7,36 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ /* eslint-disable @typescript-eslint/no-for-in-array */ /* eslint-disable @typescript-eslint/no-unsafe-return */ -import { PricingClient, GetProductsCommand, GetProductsCommandInput, FilterType } from "@aws-sdk/client-pricing"; +import { + PricingClient, + GetProductsCommand, + GetProductsCommandInput, + FilterType, +} from "@aws-sdk/client-pricing"; import { RuntimeProperties } from "../../../types/runtimeprops"; -import { Config, PriceRegions } from "../../../types/config"; -import {CloudWatchClient, ListDashboardsCommand, ListDashboardsCommandInput } from "@aws-sdk/client-cloudwatch"; -import { ShieldClient, GetSubscriptionStateCommand } from "@aws-sdk/client-shield"; - +import { Config, PriceRegions, ShieldConfig } from "../../../types/config"; +import { + CloudWatchClient, + ListDashboardsCommand, + ListDashboardsCommandInput, +} from "@aws-sdk/client-cloudwatch"; +import { + ShieldClient, + GetSubscriptionStateCommand, +} from "@aws-sdk/client-shield"; /** * Amazon Web Services Price List Service API Endpoint */ const PRICING_API_ENDPOINT_REGION = "us-east-1"; - /** * Find Values in Object - Needed for aws pricing api * @param obj object where the key is included * @param key key which includes the needed value * @returns value from key */ -function findValues(obj: any, key: string){ +function findValues(obj: any, key: string) { return findValuesHelper(obj, key, []); } @@ -37,7 +47,7 @@ function findValues(obj: any, key: string){ * @param list any * @returns list */ -function findValuesHelper(obj:any, key:string, list: any) { +function findValuesHelper(obj: any, key: string, list: any) { if (!obj) return list; if (obj instanceof Array) { for (const i of obj) { @@ -62,24 +72,66 @@ function findValuesHelper(obj:any, key:string, list: any) { * @param runtimeProps runtime properties object, where to store prices * @returns true if prices are update in runtimeprops */ -async function getCurrentWafPrices(deploymentRegion: PriceRegions, runtimeProps: RuntimeProperties, config: Config, awsregion: string): Promise { - console.log(" ๐Ÿ”Ž Getting current prices for: ", deploymentRegion,"\n"); - try{ - runtimeProps.Pricing.Policy = Number(await getProductPrice(deploymentRegion,"AWSFMS","WAFv2")); - runtimeProps.Pricing.Rule = Number(await getProductPrice(deploymentRegion,"awswaf",undefined,"Rule")); - runtimeProps.Pricing.WebACL = Number(await getProductPrice(deploymentRegion,"awswaf",undefined,"Web ACL")); - runtimeProps.Pricing.Request = (await getProductPrice(deploymentRegion,"awswaf",undefined,"Request") * 1000000); - runtimeProps.Pricing.BotControl = Number(await getProductPrice(deploymentRegion,"awswaf",undefined,"AMR Bot Control Entity")); - const botControlRequest: any = await getProductPrice(deploymentRegion,"awswaf",undefined,undefined,"AMR Bot Control Request Processed"); - runtimeProps.Pricing.BotControlRequest = (botControlRequest[0] * 1000000); +async function getCurrentWafPrices( + deploymentRegion: PriceRegions, + runtimeProps: RuntimeProperties, + config: Config, + awsregion: string +): Promise { + console.log(" ๐Ÿ”Ž Getting current prices for: ", deploymentRegion, "\n"); + try { + runtimeProps.Pricing.Policy = Number( + await getProductPrice(deploymentRegion, "AWSFMS", "WAFv2") + ); + runtimeProps.Pricing.Rule = Number( + await getProductPrice(deploymentRegion, "awswaf", undefined, "Rule") + ); + runtimeProps.Pricing.WebACL = Number( + await getProductPrice(deploymentRegion, "awswaf", undefined, "Web ACL") + ); + runtimeProps.Pricing.Request = + (await getProductPrice( + deploymentRegion, + "awswaf", + undefined, + "Request" + )) * 1000000; + runtimeProps.Pricing.BotControl = Number( + await getProductPrice( + deploymentRegion, + "awswaf", + undefined, + "AMR Bot Control Entity" + ) + ); + const botControlRequest: any = await getProductPrice( + deploymentRegion, + "awswaf", + undefined, + undefined, + "AMR Bot Control Request Processed" + ); + runtimeProps.Pricing.BotControlRequest = botControlRequest[0] * 1000000; runtimeProps.Pricing.Captcha = 0.4; - runtimeProps.Pricing.AccountTakeoverPrevention = Number(await getProductPrice(deploymentRegion,"awswaf",undefined,"AMR ATP Entity")); - const accountTakeoverPreventionRequest: any = await getProductPrice(deploymentRegion,"awswaf",undefined,"AMR ATP Login Attempt"); - runtimeProps.Pricing.AccountTakeoverPreventionRequest = (accountTakeoverPreventionRequest[0] * 1000); - runtimeProps.Pricing.Dashboard = await getDashboardPrice(awsregion,config); + runtimeProps.Pricing.AccountTakeoverPrevention = Number( + await getProductPrice( + deploymentRegion, + "awswaf", + undefined, + "AMR ATP Entity" + ) + ); + const accountTakeoverPreventionRequest: any = await getProductPrice( + deploymentRegion, + "awswaf", + undefined, + "AMR ATP Login Attempt" + ); + runtimeProps.Pricing.AccountTakeoverPreventionRequest = + accountTakeoverPreventionRequest[0] * 1000; + runtimeProps.Pricing.Dashboard = await getDashboardPrice(awsregion, config); return true; - } - catch{ + } catch { return false; } } @@ -89,33 +141,32 @@ async function getCurrentWafPrices(deploymentRegion: PriceRegions, runtimeProps: * @param deploymentRegion AWS region, e.g. eu-central-1 * @returns price for dashboard */ -async function getDashboardPrice(deploymentRegion: string, config: Config ): Promise { - const client = new CloudWatchClient({region: deploymentRegion}); +async function getDashboardPrice( + deploymentRegion: string, + config: Config +): Promise { + const client = new CloudWatchClient({ region: deploymentRegion }); const input: ListDashboardsCommandInput = {}; const command = new ListDashboardsCommand(input); - const response : any = await client.send(command); + const response: any = await client.send(command); if (!response.DashboardEntries || !response.DashboardEntries[0]) { throw new Error("Cant list Dashboards"); } - if(config.General.CreateDashboard){ + if (config.General.CreateDashboard) { const dashboardcount = response.DashboardEntries.length + 1; - if(dashboardcount > 3){ + if (dashboardcount > 3) { const usd = 3; return usd; - } - else{ + } else { const usd = 0; return usd; } - } - else{ + } else { const usd = 0; return usd; } - } - /** * * @param deploymentRegion AWS region, e.g. eu-central-1 @@ -123,107 +174,172 @@ async function getDashboardPrice(deploymentRegion: string, config: Config ): Pro * @param operation * @returns price for one product */ -export async function getProductPrice(deploymentRegion: PriceRegions, servicecode: string, operation?: string,group?: string, groupDescription?: string): Promise { - const client = new PricingClient({region: PRICING_API_ENDPOINT_REGION}); - const filters: {Type: FilterType, Field: string, Value: string}[] = []; - if(groupDescription){ +export async function getProductPrice( + deploymentRegion: PriceRegions, + servicecode: string, + operation?: string, + group?: string, + groupDescription?: string +): Promise { + const client = new PricingClient({ region: PRICING_API_ENDPOINT_REGION }); + const filters: { Type: FilterType; Field: string; Value: string }[] = []; + if (groupDescription) { filters.push({ Type: FilterType.TERM_MATCH, Field: "groupDescription", - Value: groupDescription}); + Value: groupDescription, + }); } - if(group){ + if (group) { filters.push({ Type: FilterType.TERM_MATCH, Field: "group", - Value: group}); + Value: group, + }); } - if(operation){ + if (operation) { filters.push({ Type: FilterType.TERM_MATCH, Field: "operation", - Value: operation + Value: operation, }); } filters.push({ Type: FilterType.TERM_MATCH, Field: "location", - Value: deploymentRegion + Value: deploymentRegion, }); const input: GetProductsCommandInput = { Filters: filters, - ServiceCode: servicecode + ServiceCode: servicecode, }; const command = new GetProductsCommand(input); - const response : any = await client.send(command); + const response: any = await client.send(command); if (!response.PriceList || !response.PriceList[0]) { throw new Error("Price list does not exist"); } const priceList = response.PriceList[0]; - const usd = findValues(JSON.parse(priceList.toJSON()),"USD"); + const usd = findValues(JSON.parse(priceList.toJSON()), "USD"); return usd || 0; } - /** * The function calculated the price of the deployed WAF * @param runtimeProps runtime properties object, where to get prices * @returns whether price is successfully calculated or not */ -export async function isWafPriceCalculated(deploymentRegion: PriceRegions,runtimeProps: RuntimeProperties, config: Config, awsregion: string): Promise { +export async function isWafPriceCalculated( + deploymentRegion: PriceRegions, + runtimeProps: RuntimeProperties, + config: Config, + awsregion: string +): Promise { const shieldSubscriptionState = await getShieldSubscriptionState(); console.log("\n๐Ÿ›ก๏ธ Shield Advanced State: " + shieldSubscriptionState); console.log("\n๐Ÿ’ฐ Cost: \n"); await getCurrentWafPrices(deploymentRegion, runtimeProps, config, awsregion); - const preprocessfixedcost = (runtimeProps.PreProcess.CustomRuleCount * runtimeProps.Pricing.Rule) + runtimeProps.PreProcess.CustomRuleGroupCount + runtimeProps.PreProcess.ManagedRuleGroupCount; - const postprocessfixedcost = (runtimeProps.PostProcess.CustomRuleCount * runtimeProps.Pricing.Rule) + runtimeProps.PostProcess.CustomRuleGroupCount + runtimeProps.PostProcess.ManagedRuleGroupCount; - const captchacost = (runtimeProps.PostProcess.CustomCaptchaRuleCount + runtimeProps.PreProcess.CustomCaptchaRuleCount) * runtimeProps.Pricing.Captcha; - const botcontrolfixedcost = (runtimeProps.PostProcess.ManagedRuleBotControlCount + runtimeProps.PreProcess.ManagedRuleBotControlCount) * runtimeProps.Pricing.BotControl; - const atpfixedcost = (runtimeProps.PostProcess.ManagedRuleATPCount + runtimeProps.PreProcess.ManagedRuleATPCount) * runtimeProps.Pricing.AccountTakeoverPrevention; + const preprocessfixedcost = + runtimeProps.PreProcess.CustomRuleCount * runtimeProps.Pricing.Rule + + runtimeProps.PreProcess.CustomRuleGroupCount + + runtimeProps.PreProcess.ManagedRuleGroupCount; + const postprocessfixedcost = + runtimeProps.PostProcess.CustomRuleCount * runtimeProps.Pricing.Rule + + runtimeProps.PostProcess.CustomRuleGroupCount + + runtimeProps.PostProcess.ManagedRuleGroupCount; + const captchacost = + (runtimeProps.PostProcess.CustomCaptchaRuleCount + + runtimeProps.PreProcess.CustomCaptchaRuleCount) * + runtimeProps.Pricing.Captcha; + const botcontrolfixedcost = + (runtimeProps.PostProcess.ManagedRuleBotControlCount + + runtimeProps.PreProcess.ManagedRuleBotControlCount) * + runtimeProps.Pricing.BotControl; + const atpfixedcost = + (runtimeProps.PostProcess.ManagedRuleATPCount + + runtimeProps.PreProcess.ManagedRuleATPCount) * + runtimeProps.Pricing.AccountTakeoverPrevention; - let fixedcost = runtimeProps.Pricing.Policy + runtimeProps.Pricing.WebACL + postprocessfixedcost + preprocessfixedcost + botcontrolfixedcost + atpfixedcost + runtimeProps.Pricing.Dashboard; + let fixedcost = + runtimeProps.Pricing.Policy + + runtimeProps.Pricing.WebACL + + postprocessfixedcost + + preprocessfixedcost + + botcontrolfixedcost + + atpfixedcost + + runtimeProps.Pricing.Dashboard; const requestscost = runtimeProps.Pricing.Request; - const totalcost = fixedcost + (requestscost * 5) + (captchacost * 5); + const totalcost = fixedcost + requestscost * 5 + captchacost * 5; if (shieldSubscriptionState && shieldSubscriptionState === "ACTIVE") { - fixedcost = botcontrolfixedcost + atpfixedcost + runtimeProps.Pricing.Dashboard; + fixedcost = + botcontrolfixedcost + atpfixedcost + runtimeProps.Pricing.Dashboard; } console.log(" WAF Rules cost: " + fixedcost + " $ per month"); - console.log(" WAF Requests: " + requestscost.toFixed(2) + " $ pro 1 mio requests"); + console.log( + " WAF Requests: " + requestscost.toFixed(2) + " $ pro 1 mio requests" + ); if (captchacost > 0) { - console.log(" WAF Analysis fee:\n Captcha: " + captchacost + "$ per thousand challenge attempts analyzed"); + console.log( + " WAF Analysis fee:\n Captcha: " + + captchacost + + "$ per thousand challenge attempts analyzed" + ); } else { console.log(" "); } - console.log("\n Total WAF cost (monthly): "+ totalcost + " $ *"); - console.log("\n * This costs are based on the expectation that the WAF gets 5 mio requests per month. "); + console.log("\n Total WAF cost (monthly): " + totalcost + " $ *"); + console.log( + "\n * This costs are based on the expectation that the WAF gets 5 mio requests per month. " + ); if (atpfixedcost !== 0) { - console.log("\n * This costs are based on the expectation that 10.000 login attempts were analyzed. "); + console.log( + "\n * This costs are based on the expectation that 10.000 login attempts were analyzed. " + ); } - console.log("\n โ„น The costs are calculated based on the provided information at https://aws.amazon.com/waf/pricing/. "); + console.log( + "\n โ„น The costs are calculated based on the provided information at https://aws.amazon.com/waf/pricing/. " + ); if (botcontrolfixedcost !== 0) { - console.log(" The deployed WAF includes BotControl rules this costs an extra fee of " + runtimeProps.Pricing.BotControl + " $ and " + runtimeProps.Pricing.BotControlRequest + "$ pro 1 mio requests (10 mio request Free Tier). \n These costs are already included in the price calculation."); + console.log( + " The deployed WAF includes BotControl rules this costs an extra fee of " + + runtimeProps.Pricing.BotControl + + " $ and " + + runtimeProps.Pricing.BotControlRequest + + "$ pro 1 mio requests (10 mio request Free Tier). \n These costs are already included in the price calculation." + ); } if (atpfixedcost !== 0) { - console.log(" The deployed WAF includes Account Takeover Prevention rules this costs an extra fee of " + runtimeProps.Pricing.AccountTakeoverPrevention + " $ and " + runtimeProps.Pricing.AccountTakeoverPreventionRequest + " $ per thousand login attempts analyzed (10,000 attempts analyzed Free Tier). \n These costs are already included in the price calculation."); + console.log( + " The deployed WAF includes Account Takeover Prevention rules this costs an extra fee of " + + runtimeProps.Pricing.AccountTakeoverPrevention + + " $ and " + + runtimeProps.Pricing.AccountTakeoverPreventionRequest + + " $ per thousand login attempts analyzed (10,000 attempts analyzed Free Tier). \n These costs are already included in the price calculation." + ); } if (runtimeProps.Pricing.Dashboard !== 0) { - console.log(" The deployed WAF includes CloudWatch Dashboard and you have more than 3 Dashboards (Free tier), so you will need to pay " + runtimeProps.Pricing.Dashboard + "$ for this CloudWatch Dashboard. \n These costs are already included in the price calculation."); + console.log( + " The deployed WAF includes CloudWatch Dashboard and you have more than 3 Dashboards (Free tier), so you will need to pay " + + runtimeProps.Pricing.Dashboard + + "$ for this CloudWatch Dashboard. \n These costs are already included in the price calculation." + ); } if (shieldSubscriptionState === "ACTIVE") { - console.log(" AWS WAF WebACLs or Rules created by Firewall Manager - are Included in AWS Shield Advanced. More information at https://aws.amazon.com/firewall-manager/pricing/."); + console.log( + " AWS WAF WebACLs or Rules created by Firewall Manager - are Included in AWS Shield Advanced. More information at https://aws.amazon.com/firewall-manager/pricing/." + ); } console.log("\n\n"); @@ -231,10 +347,50 @@ export async function isWafPriceCalculated(deploymentRegion: PriceRegions,runtim return pricecalculated; } -async function getShieldSubscriptionState(){ - const client = new ShieldClient({region: PRICING_API_ENDPOINT_REGION}); +async function getShieldSubscriptionState() { + const client = new ShieldClient({ region: PRICING_API_ENDPOINT_REGION }); const input = {}; const command = new GetSubscriptionStateCommand(input); const subscriptionState = (await client.send(command)).SubscriptionState; return subscriptionState; -} \ No newline at end of file +} + +/** + * The function calculated the price of the deployed WAF + * @param runtimeProps runtime properties object, where to get prices + * @returns whether price is successfully calculated or not + */ +export async function isShieldPriceCalculated( + shieldconfig: ShieldConfig +): Promise { + const shieldSubscriptionState = await getShieldSubscriptionState(); + console.log("\n๐Ÿ›ก๏ธ Shield Advanced State: " + shieldSubscriptionState); + + console.log("\n๐Ÿ’ฐ Cost: \n"); + console.log( + " ๐Ÿ›ก๏ธ Shield Advanced Subscription: \n 3000 $ per month (whole Organization)\n" + ); + console.log(" โŒ— Data Transfer Out Usage Fees: \n"); + + if ( + shieldconfig.resourceType === "AWS::CloudFront::Distribution" || + shieldconfig.resourceType === "AWS::GlobalAccelerator::Accelerator" + ) { + console.log( + " first 100 TB 0.025 $ per GB \n next 400 TB 0.020 $ per GB" + ); + } else if ( + shieldconfig.resourceType === "AWS::ElasticLoadBalancingV2::LoadBalancer" || + shieldconfig.resourceType === "AWS::ElasticLoadBalancing::LoadBalancer" || + shieldconfig.resourceType === "AWS::EC2::EIP" + ) { + console.log( + " first 100 TB 0.05 $ per GB \n next 400 TB 0.04 $ per GB" + ); + } + console.log( + "\n โ„น The costs are calculated based on the provided information at https://aws.amazon.com/shield/pricing/. " + ); + + return true; +} diff --git a/lib/tools/helpers/web-application-firewall/quotas-and-capacity.ts b/lib/tools/helpers/web-application-firewall/quotas-and-capacity.ts index 90a68bc1..2f04e2ce 100644 --- a/lib/tools/helpers/web-application-firewall/quotas-and-capacity.ts +++ b/lib/tools/helpers/web-application-firewall/quotas-and-capacity.ts @@ -61,7 +61,7 @@ async function getTotalCapacityOfRules(config: Config, runtimeProperties: Runtim const response : any = await client.send(command); return response.Capacity || 0; } catch(err) { - guidanceHelper.outputGuidance(config, runtimeProperties); + guidanceHelper.outputGuidance(runtimeProperties, config); console.log(); console.log("๐Ÿšจ Error in checking capacity of rules!"); console.log(); diff --git a/lib/types/config.ts b/lib/types/config.ts index 59883ea0..bab81526 100644 --- a/lib/types/config.ts +++ b/lib/types/config.ts @@ -2,7 +2,7 @@ import { Rule, ManagedRuleGroup } from "./fms"; import { aws_fms as fms, CfnTag, aws_events as events } from "aws-cdk-lib"; import * as fwmEnums from "./enums"; - +import * as cdk from "aws-cdk-lib"; /** * Settings for the AWS WAF policy (type WAFV2) that specifies rule groups to run first in the corresponding AWS WAF Web ACL and rule groups to run last in the Web ACL. */ @@ -11,42 +11,43 @@ export interface Config { /** * Defines a Prefix which will be added to all resources. */ - readonly Prefix: string, + readonly Prefix: string; /** * Defines a Stage which will be added to all resources. */ - readonly Stage: string, + readonly Stage: string; /** * Defines the selected logging option for the WAF. */ - readonly LoggingConfiguration: "S3" | "Firehose" + readonly LoggingConfiguration: "S3" | "Firehose"; /** * Define KMS Key to be used for Kinesis Firehose. */ - readonly FireHoseKeyArn?: string, + readonly FireHoseKeyArn?: string; /** * Define Name of the S3 Bucket where the Firewall logs will be stored. */ - readonly S3LoggingBucketName: string, - readonly DeployHash?: string, + readonly S3LoggingBucketName: string; + readonly DeployHash?: string; /** * Defines the domain(s) that can be checked to audit your WAF. */ - readonly SecuredDomain: Array, + readonly SecuredDomain: Array; /** * Defines whether to set up a dashboard for your firewall in the central security account. To use this feature, cross-account functionality must be enabled in CloudWatch. */ - readonly CreateDashboard?: boolean, - }, - readonly WebAcl:{ + readonly CreateDashboard?: boolean; + }; + + readonly WebAcl: { /** * Defines Name of your web application firewall. */ - readonly Name: string, + readonly Name: string; /** * Defines Description of your web application firewall. */ - readonly Description?: string, + readonly Description?: string; /** * Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to include from the policy. * @@ -64,7 +65,7 @@ export interface Config { * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html */ - readonly IncludeMap: fms.CfnPolicy.IEMapProperty, + readonly IncludeMap: fms.CfnPolicy.IEMapProperty; /** * Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to exclude from the policy. * @@ -82,11 +83,11 @@ export interface Config { * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html */ - readonly ExcludeMap?: fms.CfnPolicy.IEMapProperty, + readonly ExcludeMap?: fms.CfnPolicy.IEMapProperty; /** * Replace web ACLs that are currently associated with in-scope resources with the web ACLs created by this policy - Default is False */ - readonly OverrideCustomerWebACLAssociation?: boolean, + readonly OverrideCustomerWebACLAssociation?: boolean; /** * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. * A regional application can be @@ -101,150 +102,299 @@ export interface Config { * * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html */ - readonly Scope: fwmEnums.WebAclScope | "CLOUDFRONT" | "REGIONAL", + readonly Scope: fwmEnums.WebAclScope | "CLOUDFRONT" | "REGIONAL"; /** * The type of resource protected by or in scope of the policy. To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList. */ - readonly Type: fwmEnums.WebAclTypeEnum | "ResourceTypeList" | WebAclType, + readonly Type: fwmEnums.WebAclTypeEnum | "ResourceTypeList" | WebAclType; /** * enum for supportd webacl types */ - readonly TypeList?: fwmEnums.WebAclTypeEnum[] | WebAclType[], + readonly TypeList?: fwmEnums.WebAclTypeEnum[] | WebAclType[]; /** * An array of ResourceTag objects, used to explicitly include resources in the policy scope or explicitly exclude them. If this isn't set, then tags aren't used to modify policy scope. See also ExcludeResourceTags. */ - readonly ResourceTags?: Array, + readonly ResourceTags?: Array; /** * Used only when tags are specified in the ResourceTags property. If this property is True, resources with the specified tags are not in scope of the policy. If it's False, only resources with the specified tags are in scope of the policy. */ - readonly ExcludeResourceTags?: boolean, + readonly ExcludeResourceTags?: boolean; /** * Indicates if the policy should be automatically applied to new resources. */ - readonly RemediationEnabled?: boolean, + readonly RemediationEnabled?: boolean; /** * Indicates whether AWS Firewall Manager should automatically remove protections from resources that leave the policy scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected customer resource when the customer resource leaves policy scope. */ - readonly ResourcesCleanUp?: boolean, + readonly ResourcesCleanUp?: boolean; /** * Contains one or more IP addresses or blocks of IP addresses specified in Classless Inter-Domain Routing (CIDR) notation. AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. */ - readonly IPSets?: IPSet[], + readonly IPSets?: IPSet[]; /** * The RegexPatternSet specifies the regular expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. - */ + */ readonly RegexPatternSets?: RegexPatternSet[]; /** * Defines a Set of Custom Rules and AWS ManagedRulesGroups. */ - readonly PreProcess: RuleGroupSet, + readonly PreProcess: RuleGroupSet; /** * Defines a Set of Custom Rules and AWS ManagedRulesGroups. */ - readonly PostProcess: RuleGroupSet, - }, + readonly PostProcess: RuleGroupSet; + }; } +export interface ShieldConfig { + readonly General: { + /** + * Defines a Prefix which will be added to all resources. + */ + readonly Prefix: string; + /** + * Defines a Stage which will be added to all resources. + */ + readonly Stage: string; + /** + * Defines the selected logging option for the WAF. + */ + readonly LoggingConfiguration: "S3" | "Firehose"; + /** + * Define KMS Key to be used for Kinesis Firehose. + */ + readonly FireHoseKeyArn?: string; + /** + * Define Name of the S3 Bucket where the Firewall logs will be stored. + */ + readonly S3LoggingBucketName: string; + readonly DeployHash?: string; + /** + * Defines the domain(s) that can be checked to audit your WAF. + */ + readonly SecuredDomain: Array; + /** + * Defines whether to set up a dashboard for your firewall in the central security account. To use this feature, cross-account functionality must be enabled in CloudWatch. + */ + readonly CreateDashboard?: boolean; + }; + readonly WebAcl: { + /** + * Replace web ACLs that are currently associated with in-scope resources with the web ACLs created by this policy - Default is False + */ + readonly OverrideCustomerWebACLAssociation?: boolean; + }; + + defaultActionType: "ALLOW" | "DENY" | "COUNT" | "NONE"; + /** + * Indicates if the policy should be automatically applied to new resources. + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-remediationenabled + */ + readonly remediationEnabled: boolean | cdk.IResolvable; + /** + * An array of `ResourceType` objects. + * + * Use this only to specify multiple resource types. To specify a single resource type, use `ResourceType` . + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-resourcetypelist + */ + readonly resourceTypeList?: Array; + /** + * The type of resource protected by or in scope of the policy. + * + * This is in the format shown in the [AWS Resource Types Reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) . To apply this policy to multiple resource types, specify a resource type of `ResourceTypeList` and then specify the resource types in a `ResourceTypeList` . + * + * The following are valid resource types for each Firewall Manager policy type: + * + * - AWS WAF Classic - `AWS::ApiGateway::Stage` , `AWS::CloudFront::Distribution` , and `AWS::ElasticLoadBalancingV2::LoadBalancer` . + * - AWS WAF - `AWS::ApiGateway::Stage` , `AWS::ElasticLoadBalancingV2::LoadBalancer` , and `AWS::CloudFront::Distribution` . + * - DNS Firewall, AWS Network Firewall , and third-party firewall - `AWS::EC2::VPC` . + * - AWS Shield Advanced - `AWS::ElasticLoadBalancingV2::LoadBalancer` , `AWS::ElasticLoadBalancing::LoadBalancer` , `AWS::EC2::EIP` , and `AWS::CloudFront::Distribution` . + * - Security group content audit - `AWS::EC2::SecurityGroup` , `AWS::EC2::NetworkInterface` , and `AWS::EC2::Instance` . + * - Security group usage audit - `AWS::EC2::SecurityGroup` . + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-resourcetype + */ + readonly resourceType?: string; + /** + * The name of the AWS Firewall Manager policy. + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-policyname + */ + readonly policyName: string; + /** + * Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to include in the policy. + * + * Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time. + * + * You can specify inclusions or exclusions, but not both. If you specify an `IncludeMap` , AWS Firewall Manager applies the policy to all accounts specified by the `IncludeMap` , and does not evaluate any `ExcludeMap` specifications. If you do not specify an `IncludeMap` , then Firewall Manager applies the policy to all accounts except for those specified by the `ExcludeMap` . + * + * You can specify account IDs, OUs, or a combination: + * + * - Specify account IDs by setting the key to `ACCOUNT` . For example, the following is a valid map: `{โ€œACCOUNTโ€ : [โ€œaccountID1โ€, โ€œaccountID2โ€]}` . + * - Specify OUs by setting the key to `ORGUNIT` . For example, the following is a valid map: `{โ€œORGUNITโ€ : [โ€œouid111โ€, โ€œouid112โ€]}` . + * - Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: `{โ€œACCOUNTโ€ : [โ€œaccountID1โ€, โ€œaccountID2โ€], โ€œORGUNITโ€ : [โ€œouid111โ€, โ€œouid112โ€]}` . + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-includemap + */ + readonly includeMap?: fms.CfnPolicy.IEMapProperty; + /** + * Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to exclude from the policy. + * + * Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time. + * + * You can specify inclusions or exclusions, but not both. If you specify an `IncludeMap` , AWS Firewall Manager applies the policy to all accounts specified by the `IncludeMap` , and does not evaluate any `ExcludeMap` specifications. If you do not specify an `IncludeMap` , then Firewall Manager applies the policy to all accounts except for those specified by the `ExcludeMap` . + * + * You can specify account IDs, OUs, or a combination: + * + * - Specify account IDs by setting the key to `ACCOUNT` . For example, the following is a valid map: `{โ€œACCOUNTโ€ : [โ€œaccountID1โ€, โ€œaccountID2โ€]}` . + * - Specify OUs by setting the key to `ORGUNIT` . For example, the following is a valid map: `{โ€œORGUNITโ€ : [โ€œouid111โ€, โ€œouid112โ€]}` . + * - Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: `{โ€œACCOUNTโ€ : [โ€œaccountID1โ€, โ€œaccountID2โ€], โ€œORGUNITโ€ : [โ€œouid111โ€, โ€œouid112โ€]}` . + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-excludemap + */ + readonly excludeMap?: fms.CfnPolicy.IEMapProperty; + /** + * Used only when tags are specified in the `ResourceTags` property. + * + * If this property is `True` , resources with the specified tags are not in scope of the policy. If it's `False` , only resources with the specified tags are in scope of the policy. + * + * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html#cfn-fms-policy-excluderesourcetags + */ + readonly excludeResourceTags: boolean; +} /** * The type of resource protected by or in scope of the policy. To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList. */ -export type WebAclType= "AWS::ElasticLoadBalancingV2::LoadBalancer" | "AWS::CloudFront::Distribution" | "AWS::ApiGatewayV2::Api" | "AWS::ApiGateway::Stage" +export type WebAclType = + | "AWS::ElasticLoadBalancingV2::LoadBalancer" + | "AWS::CloudFront::Distribution" + | "AWS::ApiGatewayV2::Api" + | "AWS::ApiGateway::Stage"; // | "AWS::Cognito::UserPool" | "AWS::AppSync::GraphQLApi" - waiting for support if you need a GraphQLApi Firewall just use an ApiGateway:Stage Firewall export interface Prerequisites { readonly General: { /** * Defines a Prefix which will be added to all resources. */ - readonly Prefix: string, - }, + readonly Prefix: string; + }; /** - * Will add a Lambda function to the prerequisite stack that sends notifications when new versions and updates to a AWS ManagedRuleGroup appear in messengers (Slack/Teams). - */ - readonly Information?:{ - WebhookSopsFile: string, - } + * Will add a Lambda function to the prerequisite stack that sends notifications when new versions and updates to a AWS ManagedRuleGroup appear in messengers (Slack/Teams). + */ + readonly Information?: { + WebhookSopsFile: string; + }; + /** + * Will add a StepFunction which is indentifying and sending information about unutilized WAFs to messengers (Slack/Teams). + */ + readonly UnutilizedWafs?: { + /** + * Define a Schedule for the StepFunction. The ScheduleExpression is a cron expression that specifies when the rule is triggered. + */ + ScheduleExpression: events.Schedule; /** - * Will add a StepFunction which is indentifying and sending information about unutilized WAFs to messengers (Slack/Teams). - */ - readonly UnutilizedWafs?:{ + * Define a Sops File for the Webhook URL with the Slack or Teams Webhook URL. + * https://github.com/dbsystel/cdk-sops-secrets + */ + WebhookSopsFile: string; + /** + * Define a Regex to skip WAFs with specific names + */ + SkipWafRegexString?: string; + /** + * Define a Cross Account Role Name for the Lambda which is identifying unutilized WAFs in the managed accounts. + */ + CrossAccountRoleName: string; + }; + /** + * Will add a Lambda function to prerequisite Stack that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams) + * This feature, coupled with [AWS Shield Advanced](https://aws.amazon.com/shield/). + */ + readonly DdosNotifications?: { + /** + * Define a Sops File for the Webhook URL with the Slack or Teams Webhook URL. + * https://github.com/dbsystel/cdk-sops-secrets + */ + WebhookSopsFile: string; + }; + readonly Logging?: { + readonly BucketProperties?: { /** - * Define a Schedule for the StepFunction. The ScheduleExpression is a cron expression that specifies when the rule is triggered. + * A name for the bucket. Allowed Pattern: ^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$ */ - ScheduleExpression: events.Schedule, + readonly BucketName?: string; /** - * Define a Sops File for the Webhook URL with the Slack or Teams Webhook URL. - * https://github.com/dbsystel/cdk-sops-secrets + * Define if a KMS Key for the bucket will be created. */ - WebhookSopsFile: string, + readonly KmsEncryptionKey: boolean; /** - * Define a Regex to skip WAFs with specific names + * Will add Object Lock (write-once-read-many (WORM)) to the S3 Bucket (Object Lock can help prevent objects from being deleted or overwritten for a fixed amount of time or indefinitely.) */ - SkipWafRegexString?: string, + readonly ObjectLock?: { + readonly Days: number; + readonly Mode: "GOVERNANCE" | "COMPLIANCE"; + }; + }; + /** + * Define if a KMS Key for Kinesis FireHose will be created. + */ + readonly FireHoseKey?: { /** - * Define a Cross Account Role Name for the Lambda which is identifying unutilized WAFs in the managed accounts. + * Define if a Alias for the KMS Key */ - CrossAccountRoleName: string, - } - /** - * Will add a Lambda function to prerequisite Stack that send notifications about potential DDoS activity for protected resources to messengers (Slack/Teams) - * This feature, coupled with [AWS Shield Advanced](https://aws.amazon.com/shield/). - */ - readonly DdosNotifications?:{ + readonly KeyAlias: string; + }; /** - * Define a Sops File for the Webhook URL with the Slack or Teams Webhook URL. - * https://github.com/dbsystel/cdk-sops-secrets + * Defines access to a central security account. Please specify a account ID such as 123456789012.This is necessary if you want to use a different account for all your firewalls. */ - WebhookSopsFile: string - } - readonly Logging?: { - readonly BucketProperties?: { - /** - * A name for the bucket. Allowed Pattern: ^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$ - */ - readonly BucketName?: string, - /** - * Define if a KMS Key for the bucket will be created. - */ - readonly KmsEncryptionKey: boolean, - /** - * Will add Object Lock (write-once-read-many (WORM)) to the S3 Bucket (Object Lock can help prevent objects from being deleted or overwritten for a fixed amount of time or indefinitely.) - */ - readonly ObjectLock?: { - readonly Days: number, - readonly Mode: "GOVERNANCE" | "COMPLIANCE" - } - - }, + readonly CrossAccountIdforPermissions?: string; + readonly Athena?: { /** - * Define if a KMS Key for Kinesis FireHose will be created. + * Define a Athena Table for the Firewall Logs will be created. */ - readonly FireHoseKey?: { - /** - * Define if a Alias for the KMS Key - */ - readonly KeyAlias: string - }, + readonly TableName: string; /** - * Defines access to a central security account. Please specify a account ID such as 123456789012.This is necessary if you want to use a different account for all your firewalls. + * Define a Athena DatabaseName where the Table will be created. */ - readonly CrossAccountIdforPermissions?: string, - readonly Athena?: { - /** - * Define a Athena Table for the Firewall Logs will be created. - */ - readonly TableName: string, - /** - * Define a Athena DatabaseName where the Table will be created. - */ - readonly DatabaseName?: string, - /** - * Define a AWS Regions where FMS WAFs will be created. This value is used to create Index for regions on Athena Table. - * If this value is not set, the Index will be created for all AWS Regions using [public region parameter](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters-global-infrastructure.html). - */ - readonly Regions?: string, - } - } + readonly DatabaseName?: string; + /** + * Define a AWS Regions where FMS WAFs will be created. This value is used to create Index for regions on Athena Table. + * If this value is not set, the Index will be created for all AWS Regions using [public region parameter](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters-global-infrastructure.html). + */ + readonly Regions?: string; + }; + }; + + readonly Grafana?: { + /** + * S3 Bucket where the FMS Logs are beeing stored. Allowed Pattern: ^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$ + */ + readonly BucketName?: string; + /* + * Specify the KMS Key for the S3 Bucket - if its KMS Encrypted + */ + readonly BucketKmsKey?: string; + /** + * Firewall Manager Delegated Admin Account Id + * @TJS-pattern "^[0-9]{12}$" + */ + readonly DelegatedAdminAccountId?: string; + /* + * Specify the Athena Table Name for the FMS Logs + */ + readonly FmsLogsAthenaTable: string; + /* + * Specify the Athena Database Name for the FMS Logs + */ + readonly FmsLogAthenaDatabase: string; + /* + * Specify the Time Window in Days for the FMS Logs to be Queried - This will be used to create the Athena View for Grafana + */ + readonly TimeWindow: number; + }; } /** * S3 Object Lock provides two retention modes: @@ -253,82 +403,107 @@ export interface Prerequisites { */ export enum ObjectLockMode { GOVERNANCE = "GOVERNANCE", - COMPLIANCE = "COMPLIANCE" + COMPLIANCE = "COMPLIANCE", } /** * Represents all AWS Regions */ -export type RegionString = "us-west-2" | "us-west-1" | "us-east-2" | "us-east-1" | "ap-south-1"| "ap-northeast-2" | "ap-northeast-1" | "ap-southeast-1" | "ap-southeast-2" | "ca-central-1" | "cn-north-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "sa-east-1" | "us-gov-west-1" | "ap-east-1" | "ap-southeast-3" | "ap-northeast-3" | "eu-south-1" | "eu-north-1" | "me-south-1"; +export type RegionString = + | "us-west-2" + | "us-west-1" + | "us-east-2" + | "us-east-1" + | "ap-south-1" + | "ap-northeast-2" + | "ap-northeast-1" + | "ap-southeast-1" + | "ap-southeast-2" + | "ca-central-1" + | "cn-north-1" + | "eu-central-1" + | "eu-west-1" + | "eu-west-2" + | "eu-west-3" + | "sa-east-1" + | "us-gov-west-1" + | "ap-east-1" + | "ap-southeast-3" + | "ap-northeast-3" + | "eu-south-1" + | "eu-north-1" + | "me-south-1"; /** * Represents Region Codes for all AWS Regions */ -export enum PriceRegions{ - "us-west-2"= "US West (Oregon)", - "us-west-1"= "US West (N. California)", - "us-east-2"= "US East (Ohio)", - "us-east-1"= "US East (N. Virginia)", - "ap-south-1"= "Asia Pacific (Mumbai)", - "ap-northeast-2"= "Asia Pacific (Seoul)", - "ap-northeast-1"= "Asia Pacific (Tokyo)", - "ap-southeast-1"= "Asia Pacific (Singapore)", - "ap-southeast-2"= "Asia Pacific (Sydney)", - "ca-central-1"= "Canada (Central)", - "cn-north-1"= "China (Beijing)", - "eu-central-1"= "EU (Frankfurt)", - "eu-west-1"= "EU (Ireland)", - "eu-west-2"= "EU (London)", - "eu-west-3"= "EU (Paris)", - "sa-east-1"= "South America (Sรฃo Paulo)", - "us-gov-west-1"= "AWS GovCloud (US)", +export enum PriceRegions { + "us-west-2" = "US West (Oregon)", + "us-west-1" = "US West (N. California)", + "us-east-2" = "US East (Ohio)", + "us-east-1" = "US East (N. Virginia)", + "ap-south-1" = "Asia Pacific (Mumbai)", + "ap-northeast-2" = "Asia Pacific (Seoul)", + "ap-northeast-1" = "Asia Pacific (Tokyo)", + "ap-southeast-1" = "Asia Pacific (Singapore)", + "ap-southeast-2" = "Asia Pacific (Sydney)", + "ca-central-1" = "Canada (Central)", + "cn-north-1" = "China (Beijing)", + "eu-central-1" = "EU (Frankfurt)", + "eu-west-1" = "EU (Ireland)", + "eu-west-2" = "EU (London)", + "eu-west-3" = "EU (Paris)", + "sa-east-1" = "South America (Sรฃo Paulo)", + "us-gov-west-1" = "AWS GovCloud (US)", "ap-east-1" = "Asia Pacific (Hong Kong)", "ap-southeast-3" = "Asia Pacific (Jakarta)", "ap-northeast-3" = "Asia Pacific (Osaka)", "eu-south-1" = "Europe (Milan)", "eu-north-1" = "Europe (Stockholm)", - "me-south-1" = "Middle East (Bahrain)" + "me-south-1" = "Middle East (Bahrain)", } /** * A custom response to send to the client. You can define a custom response for rule actions and default web ACL actions that are set to the block action. -*/ -export type CustomResponseBodies = { [key:string]: { - /** - * @TJS-pattern [\s\S]* - */ - Content: string, - /** - * AWS WAF Content Type - * - * The type of content in the payload that you are defining in the Content string. - * - * @see https://docs.aws.amazon.com/waf/latest/APIReference/API_CustomResponseBody.html - */ - ContentType: fwmEnums.CustomResponseBodiesContentType, -}}; + */ +export type CustomResponseBodies = { + [key: string]: { + /** + * @TJS-pattern [\s\S]* + */ + Content: string; + /** + * AWS WAF Content Type + * + * The type of content in the payload that you are defining in the Content string. + * + * @see https://docs.aws.amazon.com/waf/latest/APIReference/API_CustomResponseBody.html + */ + ContentType: fwmEnums.CustomResponseBodiesContentType; + }; +}; /** * Defines a Set of Custom Rules and AWS ManagedRulesGroups. */ export interface RuleGroupSet { - CustomResponseBodies?: CustomResponseBodies, - CustomRules?: Rule[], + CustomResponseBodies?: CustomResponseBodies; + CustomRules?: Rule[]; ManagedRuleGroups?: ManagedRuleGroup[]; } /** - * The regex above matches both IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 - * @TJS-pattern (?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}\/(3[0-2]|[12]?[0-9])$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$) -*/ + * The regex above matches both IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 + * @TJS-pattern (?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}\/(3[0-2]|[12]?[0-9])$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$) + */ export type IPAddress = string; export interface IPAddressWithDescription { - description: string, + description: string; /** - * Defines a Ip Address - IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 + * Defines a Ip Address - IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 */ - ip: IPAddress + ip: IPAddress; } /** @@ -336,52 +511,58 @@ export interface IPAddressWithDescription { */ export interface IPSet { /** - * @TJS-pattern ^[a-zA-Z0-9]+$ - */ - name: string, // This name will be used as a CloudFormation logical ID, so it can't have a already used name and must be alphanumeric + * @TJS-pattern ^[a-zA-Z0-9]+$ + */ + name: string; // This name will be used as a CloudFormation logical ID, so it can't have a already used name and must be alphanumeric /* - * @TJS-pattern ^[\w+=:#@\/\-,\.][\w+=:#@\/\-,\.\s]+[\w+=:#@\/\-,\.]$ - */ - description?: string, + * @TJS-pattern ^[\w+=:#@\/\-,\.][\w+=:#@\/\-,\.\s]+[\w+=:#@\/\-,\.]$ + */ + description?: string; /** - * Defines an Array of Ip Address - IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 or IpAddress with Description + * Defines an Array of Ip Address - IPv4 and IPv6 in CIDR notation, e.g. 123.4.3.0/32 or IpAddress with Description */ - addresses: Array, + addresses: Array; /** * Defines the IP address version of the set. Valid Values are IPV4 and IPV6. */ - ipAddressVersion: "IPV4" | "IPV6", + ipAddressVersion: "IPV4" | "IPV6"; /** * Defines Array of Tags to be added to the IPSet * More info: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html */ - tags?: CfnTag[] + tags?: CfnTag[]; } /** * The RegexPatternSet specifies the regular expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. -*/ + */ export interface RegexPatternSet { /** - * @TJS-pattern ^[a-zA-Z0-9]+$ - */ - name: string, // This name will be used as a CloudFormation logical ID, so it can't have a already used name and must be alphanumeric + * @TJS-pattern ^[a-zA-Z0-9]+$ + */ + name: string; // This name will be used as a CloudFormation logical ID, so it can't have a already used name and must be alphanumeric /* - * @TJS-pattern ^[\w+=:#@\/\-,\.][\w+=:#@\/\-,\.\s]+[\w+=:#@\/\-,\.]$ - */ - description?: string, + * @TJS-pattern ^[\w+=:#@\/\-,\.][\w+=:#@\/\-,\.\s]+[\w+=:#@\/\-,\.]$ + */ + description?: string; /** - * Defines an Array of Regular Expressions + * Defines an Array of Regular Expressions */ - regularExpressionList: string[], + regularExpressionList: string[]; /** * Defines Array of Tags to be added to the RegexPatternSet * More info: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html */ - tags?: CfnTag[] + tags?: CfnTag[]; } /** * Represents all AWS ManagedRuleGroups which are not versioned */ -export const NONEVERSIONEDMANAGEDRULEGRPOUP = ["AWSManagedRulesBotControlRuleSet","AWSManagedRulesATPRuleSet","AWSManagedRulesACFPRuleSet","AWSManagedRulesAmazonIpReputationList","AWSManagedRulesAnonymousIpList"]; \ No newline at end of file +export const NONEVERSIONEDMANAGEDRULEGRPOUP = [ + "AWSManagedRulesBotControlRuleSet", + "AWSManagedRulesATPRuleSet", + "AWSManagedRulesACFPRuleSet", + "AWSManagedRulesAmazonIpReputationList", + "AWSManagedRulesAnonymousIpList", +]; diff --git a/options.sh b/options.sh new file mode 100755 index 00000000..064caaa9 --- /dev/null +++ b/options.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +# Check if STACK_NAME environment variable is set +if [ -z "$STACK_NAME" ]; then + + # Array to hold selected options + choices=() + + # Options array + options=("PreRequisiteStack" "WAFStack" "ShieldAdvancedStack") + + # Calculate the height (number of options + 5) + height=$(( ${#options[@]} + 5 )) + + # Function to display menu and capture selections using fzf + display_menu() { + npx cfonts "AWS FIREWALL FACTORY" \ + --font block \ + --align center \ + --colors "#00ecbd" \ + --background "transparent" \ + --letter-spacing 0 \ + --line-height 0 \ + --space true \ + --max-length 13 \ + --env "node" \ + --width "80%" + echo "ยฉ by globaldatanet" + selections=$(printf "%s\n" "${options[@]}" | fzf --multi --prompt="Select which stack you want to deploy: " --height=${height} --bind 'space:toggle' --no-info) + + # Add selections to choices array + for choice in $selections; do + choices+=("$choice") + done + } + + # Function to process selections + process_choices() { + echo "You selected:" + for choice in "${choices[@]}"; do + echo "- $choice" + export "STACK_NAME=$choice" + echo "Environment variable STACK_NAME set to $STACK_NAME" + done + } + + # Main script + display_menu + process_choices + +else + echo "STACK_NAME environment variable is already set to '$STACK_NAME'" +fi diff --git a/package-lock.json b/package-lock.json index 599ecff0..5db10298 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,61 +1,62 @@ { "name": "aws-firewall-factory", - "version": "4.3.1", + "version": "4.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "aws-firewall-factory", - "version": "4.3.1", + "version": "4.5.0", "hasInstallScript": true, "dependencies": { - "@aws-sdk/client-cloudformation": "3.556.0", - "@aws-sdk/client-cloudfront": "^3.557.0", - "@aws-sdk/client-cloudwatch": "3.556.0", - "@aws-sdk/client-config-service": "^3.557.0", - "@aws-sdk/client-ec2": "^3.557.0", - "@aws-sdk/client-fms": "3.556.0", - "@aws-sdk/client-pricing": "3.556.0", - "@aws-sdk/client-s3": "^3.557.0", - "@aws-sdk/client-secrets-manager": "^3.583.0", - "@aws-sdk/client-service-quotas": "3.556.0", - "@aws-sdk/client-shield": "3.556.0", - "@aws-sdk/client-ssm": "3.556.0", - "@aws-sdk/client-wafv2": "3.556.0", - "@aws-solutions-constructs/aws-eventbridge-stepfunctions": "^2.57.0", - "@babel/traverse": "^7.23.7", - "@mhlabs/cfn-diagram": "^1.1.38", - "@slack/types": "^2.11.0", + "@aws-sdk/client-cloudformation": "3.606.0", + "@aws-sdk/client-cloudfront": "^3.606.0", + "@aws-sdk/client-cloudwatch": "3.606.0", + "@aws-sdk/client-config-service": "^3.606.0", + "@aws-sdk/client-ec2": "^3.606.0", + "@aws-sdk/client-fms": "3.606.0", + "@aws-sdk/client-iam": "3.606.0", + "@aws-sdk/client-pricing": "3.606.0", + "@aws-sdk/client-s3": "^3.606.0", + "@aws-sdk/client-secrets-manager": "^3.606.0", + "@aws-sdk/client-service-quotas": "3.606.0", + "@aws-sdk/client-shield": "3.606.0", + "@aws-sdk/client-ssm": "3.606.0", + "@aws-sdk/client-wafv2": "3.606.0", + "@aws-solutions-constructs/aws-eventbridge-stepfunctions": "^2.60.0", + "@babel/traverse": "^7.24.7", + "@mhlabs/cfn-diagram": "^1.1.40", + "@slack/types": "^2.12.0", "@slack/webhook": "^7.0.2", - "@types/aws-lambda": "^8.10.131", - "@types/lodash": "4.17.0", - "@types/uuid": "^9.0.8", - "adaptivecards": "3.0.3", - "aws-cdk-lib": "^2.142.0", + "@types/aws-lambda": "^8.10.140", + "@types/lodash": "4.17.6", + "@types/uuid": "^10.0.0", + "adaptivecards": "3.0.4", + "aws-cdk-lib": "^2.148.0", "aws-lambda": "^1.0.7", - "axios": "^1.6.8", - "cdk-sops-secrets": "^1.8.7", - "cfonts": "^3.2.0", + "axios": "^1.7.2", + "cdk-sops-secrets": "^1.12.0", + "cfonts": "^3.3.0", "constructs": "10.3.0", + "esbuild": "^0.23.0", "i": "^0.3.7", "lodash": "4.17.21", - "npm": "^10.8.0", - "table": "^6.8.1", - "typedoc-plugin-extras": "^3.0.0", - "typedoc-plugin-keywords": "^1.6.0", - "uuid": "^9.0.1" + "npm": "^10.8.1", + "table": "^6.8.2", + "typedoc-plugin-extras": "^3.1.0", + "uuid": "^10.0.0" }, "bin": { "firewallfactory": "bin/aws-firewall-factory.js" }, "devDependencies": { - "@types/node": "^20.11.19", - "@typescript-eslint/eslint-plugin": "7.9.0", - "@typescript-eslint/parser": "7.9.0", - "aws-cdk": "2.142.0", - "eslint": "8.56.0", + "@types/node": "^20.14.9", + "@typescript-eslint/eslint-plugin": "7.14.1", + "@typescript-eslint/parser": "7.14.1", + "aws-cdk": "2.148.0", + "eslint": "8.57.0", "jest": "29.7.0", - "ts-jest": "29.1.2", + "ts-jest": "29.1.5", "ts-node": "10.9.2", "typescript": "5.4.5" } @@ -89,242 +90,316 @@ "integrity": "sha512-twhuEG+JPOYCYPx/xy5uH2+VUsIEhPTzDY0F1KuB+ocjWWB/KEDiOVL19nHvbPCB6fhWnkykXEMJ4HHcKvjtvg==" }, "node_modules/@aws-cdk/integ-tests-alpha": { - "version": "2.138.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/integ-tests-alpha/-/integ-tests-alpha-2.138.0-alpha.0.tgz", - "integrity": "sha512-TqLcJbC9VX05X2Py2GpFZ8quO7Mj3i1NuerekzqM8RV8AiU3aPMcZFGRK+MdXHNIiGzYx9ZGfMPERVT4Qqwn6A==", + "version": "2.147.3-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/integ-tests-alpha/-/integ-tests-alpha-2.147.3-alpha.0.tgz", + "integrity": "sha512-82FOJbT0Dd42dmfEBht2ZBIl8Kh8yAA751kp0zqp9cfhc/EEQQ7/5rs0zEG8z00iFnLPhLxqm7MO+TYBGKihzA==", "engines": { "node": ">= 14.15.0" }, "peerDependencies": { - "aws-cdk-lib": "^2.138.0", + "aws-cdk-lib": "^2.147.3", "constructs": "^10.0.0" } }, "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz", + "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==", "dependencies": { - "@aws-crypto/util": "^3.0.0", + "@aws-crypto/util": "^5.2.0", "@aws-sdk/types": "^3.222.0", - "tslib": "^1.11.1" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz", + "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==", "dependencies": { - "@aws-crypto/util": "^3.0.0", + "@aws-crypto/util": "^5.2.0", "@aws-sdk/types": "^3.222.0", - "tslib": "^1.11.1" + "tslib": "^2.6.2" } }, - "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==", + "node_modules/@aws-crypto/sha1-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz", + "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==", "dependencies": { - "tslib": "^1.11.1" + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "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/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } }, - "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==", + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "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" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "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/sha1-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } }, "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", "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-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.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" + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "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-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } }, "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", "dependencies": { - "@aws-crypto/util": "^3.0.0", + "@aws-crypto/util": "^5.2.0", "@aws-sdk/types": "^3.222.0", - "tslib": "^1.11.1" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", "dependencies": { - "tslib": "^1.11.1" + "tslib": "^2.6.2" } }, - "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==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", "dependencies": { "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "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-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } }, "node_modules/@aws-sdk/client-cloudformation": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.556.0.tgz", - "integrity": "sha512-qsqAZVFg1QQdS0lINII9xpZo6p5VcNqupnugxkqZ7BlzBGQaNuovlcLkWjBNM7rufRTxWThqPpRqc7/CAD4kvQ==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "@smithy/util-waiter": "^2.2.0", + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.606.0.tgz", + "integrity": "sha512-ti58HgFwpoxkjSzWUjBrlEDyZ/KYhN2sKkAt0me2IkZH+pBdKrWU5EpXeNNRy5EycMWcf5RYx5q2/HQnrtOnww==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/client-cloudformation/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" } }, "node_modules/@aws-sdk/client-cloudfront": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.577.0.tgz", - "integrity": "sha512-uF43Nwu7MKUoTHmV+tVogwXa3G5odcky1VxYkcVDYdCNtOIXK3xcSwgQTUoy+imBJhwjzxZ5SKi1D7FF08fx4A==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/client-sts": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@aws-sdk/xml-builder": "3.575.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.609.0.tgz", + "integrity": "sha512-nG/vhAYlNCJ2BrDGLT/NYqjgewNhBGEk8HxqSiRYWTePvnTuN5z+Qqo+MzC4q9fnBfUcdLcwBbFFlIjgBPBbCQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/client-sts": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@aws-sdk/xml-builder": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-stream": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-stream": "^3.0.5", "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.0.0", + "@smithy/util-waiter": "^3.1.2", "tslib": "^2.6.2" }, "engines": { @@ -332,96 +407,148 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/client-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.577.0.tgz", - "integrity": "sha512-BwujdXrydlk6UEyPmewm5GqG4nkQ6OVyRhS/SyZP/6UKSFv2/sf391Cmz0hN0itUTH1rR4XeLln8XCOtarkrzg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.609.0.tgz", + "integrity": "sha512-gqXGFDkIpKHCKAbeJK4aIDt3tiwJ26Rf5Tqw9JS6BYXsdMeOB8FTzqD9R+Yc1epHd8s5L94sdqXT5PapgxFZrg==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.609.0.tgz", + "integrity": "sha512-0bNPAyPdkWkS9EGB2A9BZDkBNrnVCBzk5lYRezoT4K3/gi9w1DTYH5tuRdwaTZdxW19U1mq7CV0YJJARKO1L9Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/client-sts": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.577.0.tgz", - "integrity": "sha512-509Kklimva1XVlhGbpTpeX3kOP6ORpm44twJxDHpa9TURbmoaxj7veWlnLCbDorxDTrbsDghvYZshvcLsojVpg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.609.0.tgz", + "integrity": "sha512-A0B3sDKFoFlGo8RYRjDBWHXpbgirer2bZBkCIzhSPHc1vOFHt/m2NcUoE2xnBKXJFrptL1xDkvo1P+XYp/BfcQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -430,15 +557,15 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/core": { - "version": "3.576.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.576.0.tgz", - "integrity": "sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==", - "dependencies": { - "@smithy/core": "^2.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.609.0.tgz", + "integrity": "sha512-ptqw+DTxLr01+pKjDUuo53SEDzI+7nFM3WfQaEo0yhDg8vWw8PER4sWj1Ysx67ksctnZesPUjqxd5SHbtdBxiA==", + "dependencies": { + "@smithy/core": "^2.2.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", "fast-xml-parser": "4.2.5", "tslib": "^2.6.2" }, @@ -447,13 +574,13 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz", + "integrity": "sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -461,18 +588,18 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.577.0.tgz", - "integrity": "sha512-n++yhCp67b9+ZRGEdY1jhamB5E/O+QsIDOPSuRmdaSGMCOd82oUEKPgIVEU1bkqxDsBxgiEWuvtfhK6sNiDS0A==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.609.0.tgz", + "integrity": "sha512-GQQfB9Mk4XUZwaPsk4V3w8MqleS6ApkZKVQn3vTLAKa8Y7B2Imcpe5zWbKYjDd8MPpMWjHcBGFTVlDRFP4zwSQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { @@ -480,44 +607,45 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.577.0.tgz", - "integrity": "sha512-q7lHPtv6BjRvChUE3m0tIaEZKxPTaZ1B3lKxGYsFl3VLAu5N8yGCUKwuA1izf4ucT+LyKscVGqK6VDZx1ev3nw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.609.0.tgz", + "integrity": "sha512-hwaBfXuBTv6/eAdEsDfGcteYUW6Km7lvvubbxEdxIuJNF3vswR7RMGIXaEC37hhPkTTgd3H0TONammhwZIfkog==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.577.0.tgz", - "integrity": "sha512-epZ1HOMsrXBNczc0HQpv0VMjqAEpc09DUA7Rg3gUJfn8umhML7A7bXnUyqPA+S54q397UYg1leQKdSn23OiwQQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.577.0", - "@aws-sdk/credential-provider-ini": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.609.0.tgz", + "integrity": "sha512-4J8/JRuqfxJDGD9jTHVCBxCvYt7/Vgj2Stlhj930mrjFPO/yRw8ilAAZxBWe0JHPX3QwepCmh4ErZe53F5ysxQ==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-ini": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -525,14 +653,14 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.609.0.tgz", + "integrity": "sha512-Ux35nGOSJKZWUIM3Ny0ROZ8cqPRUEkh+tR3X2o9ydEbFiLq3eMMyEnHJqx4EeUjLRchidlm4CCid9GxMe5/gdw==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -540,16 +668,16 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.577.0.tgz", - "integrity": "sha512-iVm5SQvS7EgZTJsRaqUOmDQpBQPPPat42SCbWFvFQOLrl8qewq8OP94hFS5w2mP62zngeYzqhJnDel79HXbxew==", - "dependencies": { - "@aws-sdk/client-sso": "3.577.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.609.0.tgz", + "integrity": "sha512-oQPGDKMMIxjvTcm86g07RPYeC7mCNk+29dPpY15ZAPRpAF7F0tircsC3wT9fHzNaKShEyK5LuI5Kg/uxsdy+Iw==", + "dependencies": { + "@aws-sdk/client-sso": "3.609.0", + "@aws-sdk/token-providers": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -557,30 +685,30 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz", + "integrity": "sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz", + "integrity": "sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -588,12 +716,12 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", + "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -601,13 +729,13 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz", + "integrity": "sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -615,14 +743,14 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.577.0.tgz", - "integrity": "sha512-P55HAXgwmiHHpFx5JEPvOnAbfhN7v6sWv9PBQs+z2tC7QiBcPS0cdJR6PfV7J1n4VPK52/OnrK3l9VxdQ7Ms0g==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.609.0.tgz", + "integrity": "sha512-nbq7MXRmeXm4IDqh+sJRAxGPAq0OfGmGIwKvJcw66hLoG8CmhhVMZmIAEBDFr57S+YajGwnLLRt+eMI05MMeVA==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -630,15 +758,15 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.609.0.tgz", + "integrity": "sha512-lMHBG8zg9GWYBc9/XVPKyuAUd7iKqfPP7z04zGta2kGNOKbUTeqmAdc1gJGku75p4kglIPlGBorOxti8DhRmKw==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { @@ -646,29 +774,29 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.609.0.tgz", + "integrity": "sha512-WvhW/7XSf+H7YmtiIigQxfDVZVZI7mbKikQ09YpzN7FeN3TmYib1+0tB+EE9TbICkwssjiFc71FEBEh4K9grKQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" + "@aws-sdk/client-sso-oidc": "^3.609.0" } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -676,13 +804,13 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/util-endpoints": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.577.0.tgz", - "integrity": "sha512-FjuUz1Kdy4Zly2q/c58tpdqHd6z7iOdU/caYzoc8jwgAHBDBbIJNQLCU9hXJnPV2M8pWxQDyIZsoVwtmvErPzw==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.609.0.tgz", + "integrity": "sha512-Rh+3V8dOvEeE1aQmUy904DYWtLUEJ7Vf5XBPlQ6At3pBhp+zpXbsnpZzVL33c8lW1xfj6YPwtO6gOeEsl1juCQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", + "@smithy/util-endpoints": "^2.0.4", "tslib": "^2.6.2" }, "engines": { @@ -690,24 +818,24 @@ } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", + "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/client-cloudfront/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.609.0.tgz", + "integrity": "sha512-DlZBwQ/HkZyf3pOWc7+wjJRk5R7x9YxHhs2szHwtv1IW30KMabjjjX0GMlGJ9LLkBHkbaaEY/w9Tkj12XRLhRg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -722,85 +850,253 @@ } } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", - "dependencies": { - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-cloudwatch": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch/-/client-cloudwatch-3.606.0.tgz", + "integrity": "sha512-9ykjdcvRMtzptUwcxrjS/0JnWFSRsvaYAWXz0c3270SN+hAD1k6i+Ck9by/Ar1XOXp4aDwWWPPY6M5WToSV40A==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-compression": "^3.0.2", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.0.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-config-service": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-config-service/-/client-config-service-3.609.0.tgz", + "integrity": "sha512-96zsehsjWD2CXGghoLOUr5w+sLBBYqTpwLI0nEpGGZco2B0VTErV5xvaH6S/1NgcTuVHRf7MraRqs/vHS4vqRw==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/client-sts": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/client-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.609.0.tgz", + "integrity": "sha512-gqXGFDkIpKHCKAbeJK4aIDt3tiwJ26Rf5Tqw9JS6BYXsdMeOB8FTzqD9R+Yc1epHd8s5L94sdqXT5PapgxFZrg==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.609.0.tgz", + "integrity": "sha512-0bNPAyPdkWkS9EGB2A9BZDkBNrnVCBzk5lYRezoT4K3/gi9w1DTYH5tuRdwaTZdxW19U1mq7CV0YJJARKO1L9Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/client-sts": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.609.0.tgz", + "integrity": "sha512-A0B3sDKFoFlGo8RYRjDBWHXpbgirer2bZBkCIzhSPHc1vOFHt/m2NcUoE2xnBKXJFrptL1xDkvo1P+XYp/BfcQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", - "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -808,465 +1104,395 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", - "dependencies": { - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/core": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.609.0.tgz", + "integrity": "sha512-ptqw+DTxLr01+pKjDUuo53SEDzI+7nFM3WfQaEo0yhDg8vWw8PER4sWj1Ysx67ksctnZesPUjqxd5SHbtdBxiA==", + "dependencies": { + "@smithy/core": "^2.2.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "fast-xml-parser": "4.2.5", "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz", + "integrity": "sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ==", "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.609.0.tgz", + "integrity": "sha512-GQQfB9Mk4XUZwaPsk4V3w8MqleS6ApkZKVQn3vTLAKa8Y7B2Imcpe5zWbKYjDd8MPpMWjHcBGFTVlDRFP4zwSQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.609.0.tgz", + "integrity": "sha512-hwaBfXuBTv6/eAdEsDfGcteYUW6Km7lvvubbxEdxIuJNF3vswR7RMGIXaEC37hhPkTTgd3H0TONammhwZIfkog==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.609.0.tgz", + "integrity": "sha512-4J8/JRuqfxJDGD9jTHVCBxCvYt7/Vgj2Stlhj930mrjFPO/yRw8ilAAZxBWe0JHPX3QwepCmh4ErZe53F5ysxQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-ini": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.609.0.tgz", + "integrity": "sha512-Ux35nGOSJKZWUIM3Ny0ROZ8cqPRUEkh+tR3X2o9ydEbFiLq3eMMyEnHJqx4EeUjLRchidlm4CCid9GxMe5/gdw==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.609.0.tgz", + "integrity": "sha512-oQPGDKMMIxjvTcm86g07RPYeC7mCNk+29dPpY15ZAPRpAF7F0tircsC3wT9fHzNaKShEyK5LuI5Kg/uxsdy+Iw==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/client-sso": "3.609.0", + "@aws-sdk/token-providers": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz", + "integrity": "sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg==", "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz", + "integrity": "sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-logger": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", + "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz", + "integrity": "sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.609.0.tgz", + "integrity": "sha512-nbq7MXRmeXm4IDqh+sJRAxGPAq0OfGmGIwKvJcw66hLoG8CmhhVMZmIAEBDFr57S+YajGwnLLRt+eMI05MMeVA==", "dependencies": { - "@smithy/types": "^3.0.0" + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.609.0.tgz", + "integrity": "sha512-lMHBG8zg9GWYBc9/XVPKyuAUd7iKqfPP7z04zGta2kGNOKbUTeqmAdc1gJGku75p4kglIPlGBorOxti8DhRmKw==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/token-providers": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.609.0.tgz", + "integrity": "sha512-WvhW/7XSf+H7YmtiIigQxfDVZVZI7mbKikQ09YpzN7FeN3TmYib1+0tB+EE9TbICkwssjiFc71FEBEh4K9grKQ==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.609.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-endpoints": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.609.0.tgz", + "integrity": "sha512-Rh+3V8dOvEeE1aQmUy904DYWtLUEJ7Vf5XBPlQ6At3pBhp+zpXbsnpZzVL33c8lW1xfj6YPwtO6gOeEsl1juCQ==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", + "@smithy/util-endpoints": "^2.0.4", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", + "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", + "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.609.0.tgz", + "integrity": "sha512-DlZBwQ/HkZyf3pOWc7+wjJRk5R7x9YxHhs2szHwtv1IW30KMabjjjX0GMlGJ9LLkBHkbaaEY/w9Tkj12XRLhRg==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", - "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "peerDependencies": { + "aws-crt": ">=1.0.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-cloudfront/node_modules/@smithy/util-waiter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.0.0.tgz", - "integrity": "sha512-+fEXJxGDLCoqRKVSmo0auGxaqbiCo+8oph+4auefYjaNxjOLKSY2MxVQfRzo65PaZv4fr+5lWg+au7vSuJJ/zw==", - "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@aws-sdk/client-ec2": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.609.0.tgz", + "integrity": "sha512-yLvx4M5ieDYtPqhP/JnB4Ax/OQLfrwbe/4+IUbjdY10Krk26l4CWTHWWA9HsUjMGC22uFOh2pczvexPPDdqfAQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/client-sts": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-sdk-ec2": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.1.2", + "tslib": "^2.6.2", + "uuid": "^9.0.1" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch/-/client-cloudwatch-3.556.0.tgz", - "integrity": "sha512-ZaOzvfiskGMdeUglzvjvddXfl37NpzV5kGbn+C8mkM8HD4wg1hJoDw14pelz+j2JOfEaK/iwRirMxIv/z+OWgw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-compression": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "@smithy/util-waiter": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-config-service": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-config-service/-/client-config-service-3.577.0.tgz", - "integrity": "sha512-SYa4l1zD4h/Q78WQ2icMhESzUb9FY2BfJ6NX/cGgnoFsqC8l9mCjIluBd6bK04R8tp58Hr0p0dhhv5LLMx65mw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/client-sts": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.609.0.tgz", + "integrity": "sha512-gqXGFDkIpKHCKAbeJK4aIDt3tiwJ26Rf5Tqw9JS6BYXsdMeOB8FTzqD9R+Yc1epHd8s5L94sdqXT5PapgxFZrg==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -1274,97 +1500,101 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/client-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.577.0.tgz", - "integrity": "sha512-BwujdXrydlk6UEyPmewm5GqG4nkQ6OVyRhS/SyZP/6UKSFv2/sf391Cmz0hN0itUTH1rR4XeLln8XCOtarkrzg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.609.0.tgz", + "integrity": "sha512-0bNPAyPdkWkS9EGB2A9BZDkBNrnVCBzk5lYRezoT4K3/gi9w1DTYH5tuRdwaTZdxW19U1mq7CV0YJJARKO1L9Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/client-sts": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.577.0.tgz", - "integrity": "sha512-509Kklimva1XVlhGbpTpeX3kOP6ORpm44twJxDHpa9TURbmoaxj7veWlnLCbDorxDTrbsDghvYZshvcLsojVpg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sts": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.609.0.tgz", + "integrity": "sha512-A0B3sDKFoFlGo8RYRjDBWHXpbgirer2bZBkCIzhSPHc1vOFHt/m2NcUoE2xnBKXJFrptL1xDkvo1P+XYp/BfcQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -1372,16 +1602,16 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/core": { - "version": "3.576.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.576.0.tgz", - "integrity": "sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==", - "dependencies": { - "@smithy/core": "^2.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/core": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.609.0.tgz", + "integrity": "sha512-ptqw+DTxLr01+pKjDUuo53SEDzI+7nFM3WfQaEo0yhDg8vWw8PER4sWj1Ysx67ksctnZesPUjqxd5SHbtdBxiA==", + "dependencies": { + "@smithy/core": "^2.2.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", "fast-xml-parser": "4.2.5", "tslib": "^2.6.2" }, @@ -1389,268 +1619,269 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz", + "integrity": "sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.577.0.tgz", - "integrity": "sha512-n++yhCp67b9+ZRGEdY1jhamB5E/O+QsIDOPSuRmdaSGMCOd82oUEKPgIVEU1bkqxDsBxgiEWuvtfhK6sNiDS0A==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.609.0.tgz", + "integrity": "sha512-GQQfB9Mk4XUZwaPsk4V3w8MqleS6ApkZKVQn3vTLAKa8Y7B2Imcpe5zWbKYjDd8MPpMWjHcBGFTVlDRFP4zwSQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.577.0.tgz", - "integrity": "sha512-q7lHPtv6BjRvChUE3m0tIaEZKxPTaZ1B3lKxGYsFl3VLAu5N8yGCUKwuA1izf4ucT+LyKscVGqK6VDZx1ev3nw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.609.0.tgz", + "integrity": "sha512-hwaBfXuBTv6/eAdEsDfGcteYUW6Km7lvvubbxEdxIuJNF3vswR7RMGIXaEC37hhPkTTgd3H0TONammhwZIfkog==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.577.0.tgz", - "integrity": "sha512-epZ1HOMsrXBNczc0HQpv0VMjqAEpc09DUA7Rg3gUJfn8umhML7A7bXnUyqPA+S54q397UYg1leQKdSn23OiwQQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.577.0", - "@aws-sdk/credential-provider-ini": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.609.0.tgz", + "integrity": "sha512-4J8/JRuqfxJDGD9jTHVCBxCvYt7/Vgj2Stlhj930mrjFPO/yRw8ilAAZxBWe0JHPX3QwepCmh4ErZe53F5ysxQ==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-ini": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.609.0.tgz", + "integrity": "sha512-Ux35nGOSJKZWUIM3Ny0ROZ8cqPRUEkh+tR3X2o9ydEbFiLq3eMMyEnHJqx4EeUjLRchidlm4CCid9GxMe5/gdw==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.577.0.tgz", - "integrity": "sha512-iVm5SQvS7EgZTJsRaqUOmDQpBQPPPat42SCbWFvFQOLrl8qewq8OP94hFS5w2mP62zngeYzqhJnDel79HXbxew==", - "dependencies": { - "@aws-sdk/client-sso": "3.577.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.609.0.tgz", + "integrity": "sha512-oQPGDKMMIxjvTcm86g07RPYeC7mCNk+29dPpY15ZAPRpAF7F0tircsC3wT9fHzNaKShEyK5LuI5Kg/uxsdy+Iw==", + "dependencies": { + "@aws-sdk/client-sso": "3.609.0", + "@aws-sdk/token-providers": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz", + "integrity": "sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz", + "integrity": "sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-logger": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", + "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz", + "integrity": "sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.577.0.tgz", - "integrity": "sha512-P55HAXgwmiHHpFx5JEPvOnAbfhN7v6sWv9PBQs+z2tC7QiBcPS0cdJR6PfV7J1n4VPK52/OnrK3l9VxdQ7Ms0g==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.609.0.tgz", + "integrity": "sha512-nbq7MXRmeXm4IDqh+sJRAxGPAq0OfGmGIwKvJcw66hLoG8CmhhVMZmIAEBDFr57S+YajGwnLLRt+eMI05MMeVA==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.609.0.tgz", + "integrity": "sha512-lMHBG8zg9GWYBc9/XVPKyuAUd7iKqfPP7z04zGta2kGNOKbUTeqmAdc1gJGku75p4kglIPlGBorOxti8DhRmKw==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.609.0.tgz", + "integrity": "sha512-WvhW/7XSf+H7YmtiIigQxfDVZVZI7mbKikQ09YpzN7FeN3TmYib1+0tB+EE9TbICkwssjiFc71FEBEh4K9grKQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" + "@aws-sdk/client-sso-oidc": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-endpoints": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.577.0.tgz", - "integrity": "sha512-FjuUz1Kdy4Zly2q/c58tpdqHd6z7iOdU/caYzoc8jwgAHBDBbIJNQLCU9hXJnPV2M8pWxQDyIZsoVwtmvErPzw==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.609.0.tgz", + "integrity": "sha512-Rh+3V8dOvEeE1aQmUy904DYWtLUEJ7Vf5XBPlQ6At3pBhp+zpXbsnpZzVL33c8lW1xfj6YPwtO6gOeEsl1juCQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", + "@smithy/util-endpoints": "^2.0.4", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", + "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.609.0.tgz", + "integrity": "sha512-DlZBwQ/HkZyf3pOWc7+wjJRk5R7x9YxHhs2szHwtv1IW30KMabjjjX0GMlGJ9LLkBHkbaaEY/w9Tkj12XRLhRg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1665,85 +1896,281 @@ } } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", - "dependencies": { - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-ec2/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@aws-sdk/client-fms": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-fms/-/client-fms-3.606.0.tgz", + "integrity": "sha512-yDDBWAYA4YPaCFGrUgkn/kx2pgrWv5HjFsC3iif+eaNTFLv2D/XqfEGh3aLw+SCCjuNUHFqjYgtDwHDIZTGLUA==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-iam": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-iam/-/client-iam-3.606.0.tgz", + "integrity": "sha512-Ji2Byyph9Liq+0/q5kKj1N7GXBnlndpgX00tRoihfMo+z1w2Y5Jaq3n/QvrI9s3dY5iI7uCYM65/b/neRSyxBA==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.0.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-pricing": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-pricing/-/client-pricing-3.606.0.tgz", + "integrity": "sha512-ET4WxxvY9GdV0d8tpYQVtNUeeJu1xeWniK+E8TnOkb7+fV6zLefv3Big9Y7FEi7d6HqH2APBqm1KWmcKppIx7A==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-s3": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.609.0.tgz", + "integrity": "sha512-lh8NxL9qm8eSphEcsTGjNMArYRlga4yTZCr3d7UPCRFiV1oz3e0EIA5EnxSriYi9P5Houi5d9GSWtPOel2mAow==", + "dependencies": { + "@aws-crypto/sha1-browser": "5.2.0", + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/client-sts": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-bucket-endpoint": "3.609.0", + "@aws-sdk/middleware-expect-continue": "3.609.0", + "@aws-sdk/middleware-flexible-checksums": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-location-constraint": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-sdk-s3": "3.609.0", + "@aws-sdk/middleware-signing": "3.609.0", + "@aws-sdk/middleware-ssec": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/signature-v4-multi-region": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@aws-sdk/xml-builder": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/eventstream-serde-browser": "^3.0.4", + "@smithy/eventstream-serde-config-resolver": "^3.0.3", + "@smithy/eventstream-serde-node": "^3.0.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-blob-browser": "^3.1.2", + "@smithy/hash-node": "^3.0.3", + "@smithy/hash-stream-node": "^3.1.2", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/md5-js": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-stream": "^3.0.5", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.1.2", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.609.0.tgz", + "integrity": "sha512-gqXGFDkIpKHCKAbeJK4aIDt3tiwJ26Rf5Tqw9JS6BYXsdMeOB8FTzqD9R+Yc1epHd8s5L94sdqXT5PapgxFZrg==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", - "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -1751,501 +2178,597 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.609.0.tgz", + "integrity": "sha512-0bNPAyPdkWkS9EGB2A9BZDkBNrnVCBzk5lYRezoT4K3/gi9w1DTYH5tuRdwaTZdxW19U1mq7CV0YJJARKO1L9Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sts": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.609.0.tgz", + "integrity": "sha512-A0B3sDKFoFlGo8RYRjDBWHXpbgirer2bZBkCIzhSPHc1vOFHt/m2NcUoE2xnBKXJFrptL1xDkvo1P+XYp/BfcQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/core": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.609.0.tgz", + "integrity": "sha512-ptqw+DTxLr01+pKjDUuo53SEDzI+7nFM3WfQaEo0yhDg8vWw8PER4sWj1Ysx67ksctnZesPUjqxd5SHbtdBxiA==", + "dependencies": { + "@smithy/core": "^2.2.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz", + "integrity": "sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.609.0.tgz", + "integrity": "sha512-GQQfB9Mk4XUZwaPsk4V3w8MqleS6ApkZKVQn3vTLAKa8Y7B2Imcpe5zWbKYjDd8MPpMWjHcBGFTVlDRFP4zwSQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.609.0.tgz", + "integrity": "sha512-hwaBfXuBTv6/eAdEsDfGcteYUW6Km7lvvubbxEdxIuJNF3vswR7RMGIXaEC37hhPkTTgd3H0TONammhwZIfkog==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.609.0.tgz", + "integrity": "sha512-4J8/JRuqfxJDGD9jTHVCBxCvYt7/Vgj2Stlhj930mrjFPO/yRw8ilAAZxBWe0JHPX3QwepCmh4ErZe53F5ysxQ==", "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-ini": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.609.0.tgz", + "integrity": "sha512-Ux35nGOSJKZWUIM3Ny0ROZ8cqPRUEkh+tR3X2o9ydEbFiLq3eMMyEnHJqx4EeUjLRchidlm4CCid9GxMe5/gdw==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.609.0.tgz", + "integrity": "sha512-oQPGDKMMIxjvTcm86g07RPYeC7mCNk+29dPpY15ZAPRpAF7F0tircsC3wT9fHzNaKShEyK5LuI5Kg/uxsdy+Iw==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/client-sso": "3.609.0", + "@aws-sdk/token-providers": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz", + "integrity": "sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz", + "integrity": "sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ==", "dependencies": { - "@smithy/types": "^3.0.0" + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", + "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz", + "integrity": "sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.609.0.tgz", + "integrity": "sha512-nbq7MXRmeXm4IDqh+sJRAxGPAq0OfGmGIwKvJcw66hLoG8CmhhVMZmIAEBDFr57S+YajGwnLLRt+eMI05MMeVA==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.609.0.tgz", + "integrity": "sha512-lMHBG8zg9GWYBc9/XVPKyuAUd7iKqfPP7z04zGta2kGNOKbUTeqmAdc1gJGku75p4kglIPlGBorOxti8DhRmKw==", "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/token-providers": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.609.0.tgz", + "integrity": "sha512-WvhW/7XSf+H7YmtiIigQxfDVZVZI7mbKikQ09YpzN7FeN3TmYib1+0tB+EE9TbICkwssjiFc71FEBEh4K9grKQ==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.609.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-endpoints": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.609.0.tgz", + "integrity": "sha512-Rh+3V8dOvEeE1aQmUy904DYWtLUEJ7Vf5XBPlQ6At3pBhp+zpXbsnpZzVL33c8lW1xfj6YPwtO6gOeEsl1juCQ==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", + "@smithy/util-endpoints": "^2.0.4", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", + "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.609.0.tgz", + "integrity": "sha512-DlZBwQ/HkZyf3pOWc7+wjJRk5R7x9YxHhs2szHwtv1IW30KMabjjjX0GMlGJ9LLkBHkbaaEY/w9Tkj12XRLhRg==", "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", - "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "peerDependencies": { + "aws-crt": ">=1.0.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-config-service/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@aws-sdk/client-secrets-manager": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.609.0.tgz", + "integrity": "sha512-1vDLUl0TuZx7TATsYkIaKj9etNzTpFVF95FpfFnJeyen397tYLot5sUNkcMCJvOLbdNVnJo1o5F8GNfU776EIQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/client-sts": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2", + "uuid": "^9.0.1" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.577.0.tgz", - "integrity": "sha512-drJ9WPr5ap6fiRKc6hP5TYk7+uMEwUpFzWWgHX9Jd8XGUq/7AcWGd/FO7Y1TmfGoSJ//BcyCS+/dri926fsbaA==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/client-sts": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-sdk-ec2": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.609.0.tgz", + "integrity": "sha512-gqXGFDkIpKHCKAbeJK4aIDt3tiwJ26Rf5Tqw9JS6BYXsdMeOB8FTzqD9R+Yc1epHd8s5L94sdqXT5PapgxFZrg==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.577.0.tgz", - "integrity": "sha512-BwujdXrydlk6UEyPmewm5GqG4nkQ6OVyRhS/SyZP/6UKSFv2/sf391Cmz0hN0itUTH1rR4XeLln8XCOtarkrzg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.609.0.tgz", + "integrity": "sha512-0bNPAyPdkWkS9EGB2A9BZDkBNrnVCBzk5lYRezoT4K3/gi9w1DTYH5tuRdwaTZdxW19U1mq7CV0YJJARKO1L9Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sts": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.577.0.tgz", - "integrity": "sha512-509Kklimva1XVlhGbpTpeX3kOP6ORpm44twJxDHpa9TURbmoaxj7veWlnLCbDorxDTrbsDghvYZshvcLsojVpg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sts": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.609.0.tgz", + "integrity": "sha512-A0B3sDKFoFlGo8RYRjDBWHXpbgirer2bZBkCIzhSPHc1vOFHt/m2NcUoE2xnBKXJFrptL1xDkvo1P+XYp/BfcQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.609.0", + "@aws-sdk/core": "3.609.0", + "@aws-sdk/credential-provider-node": "3.609.0", + "@aws-sdk/middleware-host-header": "3.609.0", + "@aws-sdk/middleware-logger": "3.609.0", + "@aws-sdk/middleware-recursion-detection": "3.609.0", + "@aws-sdk/middleware-user-agent": "3.609.0", + "@aws-sdk/region-config-resolver": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@aws-sdk/util-user-agent-browser": "3.609.0", + "@aws-sdk/util-user-agent-node": "3.609.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/core": "^2.2.4", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.3", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.7", + "@smithy/util-defaults-mode-node": "^3.0.7", + "@smithy/util-endpoints": "^2.0.4", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -2253,16 +2776,16 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/core": { - "version": "3.576.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.576.0.tgz", - "integrity": "sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==", - "dependencies": { - "@smithy/core": "^2.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/core": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.609.0.tgz", + "integrity": "sha512-ptqw+DTxLr01+pKjDUuo53SEDzI+7nFM3WfQaEo0yhDg8vWw8PER4sWj1Ysx67ksctnZesPUjqxd5SHbtdBxiA==", + "dependencies": { + "@smithy/core": "^2.2.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", "fast-xml-parser": "4.2.5", "tslib": "^2.6.2" }, @@ -2270,268 +2793,269 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz", + "integrity": "sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.577.0.tgz", - "integrity": "sha512-n++yhCp67b9+ZRGEdY1jhamB5E/O+QsIDOPSuRmdaSGMCOd82oUEKPgIVEU1bkqxDsBxgiEWuvtfhK6sNiDS0A==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.609.0.tgz", + "integrity": "sha512-GQQfB9Mk4XUZwaPsk4V3w8MqleS6ApkZKVQn3vTLAKa8Y7B2Imcpe5zWbKYjDd8MPpMWjHcBGFTVlDRFP4zwSQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.577.0.tgz", - "integrity": "sha512-q7lHPtv6BjRvChUE3m0tIaEZKxPTaZ1B3lKxGYsFl3VLAu5N8yGCUKwuA1izf4ucT+LyKscVGqK6VDZx1ev3nw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.609.0.tgz", + "integrity": "sha512-hwaBfXuBTv6/eAdEsDfGcteYUW6Km7lvvubbxEdxIuJNF3vswR7RMGIXaEC37hhPkTTgd3H0TONammhwZIfkog==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.577.0.tgz", - "integrity": "sha512-epZ1HOMsrXBNczc0HQpv0VMjqAEpc09DUA7Rg3gUJfn8umhML7A7bXnUyqPA+S54q397UYg1leQKdSn23OiwQQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.577.0", - "@aws-sdk/credential-provider-ini": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.609.0.tgz", + "integrity": "sha512-4J8/JRuqfxJDGD9jTHVCBxCvYt7/Vgj2Stlhj930mrjFPO/yRw8ilAAZxBWe0JHPX3QwepCmh4ErZe53F5ysxQ==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.609.0", + "@aws-sdk/credential-provider-http": "3.609.0", + "@aws-sdk/credential-provider-ini": "3.609.0", + "@aws-sdk/credential-provider-process": "3.609.0", + "@aws-sdk/credential-provider-sso": "3.609.0", + "@aws-sdk/credential-provider-web-identity": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.609.0.tgz", + "integrity": "sha512-Ux35nGOSJKZWUIM3Ny0ROZ8cqPRUEkh+tR3X2o9ydEbFiLq3eMMyEnHJqx4EeUjLRchidlm4CCid9GxMe5/gdw==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.577.0.tgz", - "integrity": "sha512-iVm5SQvS7EgZTJsRaqUOmDQpBQPPPat42SCbWFvFQOLrl8qewq8OP94hFS5w2mP62zngeYzqhJnDel79HXbxew==", - "dependencies": { - "@aws-sdk/client-sso": "3.577.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.609.0.tgz", + "integrity": "sha512-oQPGDKMMIxjvTcm86g07RPYeC7mCNk+29dPpY15ZAPRpAF7F0tircsC3wT9fHzNaKShEyK5LuI5Kg/uxsdy+Iw==", + "dependencies": { + "@aws-sdk/client-sso": "3.609.0", + "@aws-sdk/token-providers": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz", + "integrity": "sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sts": "^3.609.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz", + "integrity": "sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-logger": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", + "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz", + "integrity": "sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.577.0.tgz", - "integrity": "sha512-P55HAXgwmiHHpFx5JEPvOnAbfhN7v6sWv9PBQs+z2tC7QiBcPS0cdJR6PfV7J1n4VPK52/OnrK3l9VxdQ7Ms0g==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.609.0.tgz", + "integrity": "sha512-nbq7MXRmeXm4IDqh+sJRAxGPAq0OfGmGIwKvJcw66hLoG8CmhhVMZmIAEBDFr57S+YajGwnLLRt+eMI05MMeVA==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-endpoints": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.609.0.tgz", + "integrity": "sha512-lMHBG8zg9GWYBc9/XVPKyuAUd7iKqfPP7z04zGta2kGNOKbUTeqmAdc1gJGku75p4kglIPlGBorOxti8DhRmKw==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/token-providers": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.609.0.tgz", + "integrity": "sha512-WvhW/7XSf+H7YmtiIigQxfDVZVZI7mbKikQ09YpzN7FeN3TmYib1+0tB+EE9TbICkwssjiFc71FEBEh4K9grKQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" + "@aws-sdk/client-sso-oidc": "^3.609.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.577.0.tgz", - "integrity": "sha512-FjuUz1Kdy4Zly2q/c58tpdqHd6z7iOdU/caYzoc8jwgAHBDBbIJNQLCU9hXJnPV2M8pWxQDyIZsoVwtmvErPzw==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-endpoints": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.609.0.tgz", + "integrity": "sha512-Rh+3V8dOvEeE1aQmUy904DYWtLUEJ7Vf5XBPlQ6At3pBhp+zpXbsnpZzVL33c8lW1xfj6YPwtO6gOeEsl1juCQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", + "@smithy/util-endpoints": "^2.0.4", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", + "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.609.0.tgz", + "integrity": "sha512-DlZBwQ/HkZyf3pOWc7+wjJRk5R7x9YxHhs2szHwtv1IW30KMabjjjX0GMlGJ9LLkBHkbaaEY/w9Tkj12XRLhRg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2546,85 +3070,226 @@ } } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "node_modules/@aws-sdk/client-secrets-manager/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-service-quotas": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-service-quotas/-/client-service-quotas-3.606.0.tgz", + "integrity": "sha512-VPchfl2KhdHZ8KXZ3pFaZhyXR62zHIdMUdL/8D4qyPnYddbv8V9Zt8iZCUp0JPA/dQlAWhw3Bt3vrMXKl9auUw==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-shield": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-shield/-/client-shield-3.606.0.tgz", + "integrity": "sha512-MO90qMOAhINAA3CFz81ZrD2UggYw/x1NunYzosNzB9X6KAZ8QYNaMVrlqF0wf+OXd/rZO6BP1UCwOj2ks70lbQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@aws-sdk/client-ssm": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.606.0.tgz", + "integrity": "sha512-s4vRPltot8HsnmBvhgBrY/tmtdQ14/dxG3S1+076pJzb2BfdxKap3GA2gO+n+/1whQtXxeq5Jx/wkIn+3yRDuQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.0.1", + "tslib": "^2.6.2", + "uuid": "^9.0.1" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@aws-sdk/client-ssm/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", - "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", + "node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -2632,236 +3297,370 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", - "dependencies": { - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.606.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", + "node_modules/@aws-sdk/client-wafv2": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-wafv2/-/client-wafv2-3.606.0.tgz", + "integrity": "sha512-UVKFNWgjW+uobJ/HXqXxzTKjVPmJMJWdZmhWOHsow5ThgLjZKRzzlzZyRYpQtl8lJAdIoMxqOOv1AkKTIjAV3w==", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" + "node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "dependencies": { + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", + "node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", + "node_modules/@aws-sdk/middleware-bucket-endpoint": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.609.0.tgz", + "integrity": "sha512-QhHRfr4e7FqaMUAnOAFdQVOR3yDLw40i1IZPo+TeiKyev9LEyYEX2l6DbdaIwAztofOpAxfFNj/IJ0V/efzz/w==", "dependencies": { - "@smithy/types": "^3.0.0" + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-arn-parser": "3.568.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", + "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", + "node_modules/@aws-sdk/middleware-expect-continue": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.609.0.tgz", + "integrity": "sha512-+zeg//mSer4JZRxOB/4mUOMUJyuYPwATnIC5moBB8P8Xe+mJaVRFy8qlCtzYNj2TycnlsBPzTK0j7P1yvDh97w==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "node_modules/@aws-sdk/middleware-flexible-checksums": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.609.0.tgz", + "integrity": "sha512-TJ4WE+ehT+qcrhr7/yJCzmJJPmUoPPWIbCnFzqGxauH/dpVBCslmd1vZg3h2VnfRiaDkc6f68dqYVc29CaurhQ==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", + "@aws-crypto/crc32": "5.2.0", + "@aws-crypto/crc32c": "5.2.0", + "@aws-sdk/types": "3.609.0", + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -2869,677 +3668,369 @@ "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", + "node_modules/@aws-sdk/middleware-location-constraint": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz", + "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", + "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@aws-sdk/middleware-sdk-ec2": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.609.0.tgz", + "integrity": "sha512-4VdR5WU3f6XJ0iMvy0kLkjXU6IuXy0Nq/VtRIZPtYDjYA1pnOe7SVfsvRIXHHEclURDQ/bZeXIPePIz4RijLbQ==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-format-url": "3.609.0", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@smithy/util-waiter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.0.0.tgz", - "integrity": "sha512-+fEXJxGDLCoqRKVSmo0auGxaqbiCo+8oph+4auefYjaNxjOLKSY2MxVQfRzo65PaZv4fr+5lWg+au7vSuJJ/zw==", + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-fms": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-fms/-/client-fms-3.556.0.tgz", - "integrity": "sha512-Q6D++gY+ggURFQC9WSPhPv36vTSRW5MD7EbuilgGBqjcSxakbh92tulaal6LsdkAsbGW5kX8X3GVQq1KviiJuw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-pricing": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-pricing/-/client-pricing-3.556.0.tgz", - "integrity": "sha512-7FXvuru5nuMOQPW+czmzoghkIv0bcHIdlTFq6YRXVDOVqXTx3H1oiJGhRIci8RcUZMSc3I1iIQsduGTHPVA18w==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-s3": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.577.0.tgz", - "integrity": "sha512-mQYXwn6E4Rwggn6teF6EIWJtK8jsKcxnPj2QVETkSmD8QaFLm4g/DgLPdamDE97UI8k1k0cmWqXcTOLIaZ7wQg==", - "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-sso-oidc": "3.577.0", - "@aws-sdk/client-sts": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-bucket-endpoint": "3.577.0", - "@aws-sdk/middleware-expect-continue": "3.577.0", - "@aws-sdk/middleware-flexible-checksums": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-location-constraint": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-sdk-s3": "3.577.0", - "@aws-sdk/middleware-signing": "3.577.0", - "@aws-sdk/middleware-ssec": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/signature-v4-multi-region": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@aws-sdk/xml-builder": "3.575.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/eventstream-serde-browser": "^3.0.0", - "@smithy/eventstream-serde-config-resolver": "^3.0.0", - "@smithy/eventstream-serde-node": "^3.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-blob-browser": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/hash-stream-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/md5-js": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-stream": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.0.0", + "node_modules/@aws-sdk/middleware-sdk-s3": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.609.0.tgz", + "integrity": "sha512-kvwjL6OJFhAGWoYaIWR7HmILjiVk6xVj6QEU6qZMA7FtGgvlKi4pLfs8Of+hQqo+2TEhUoxG/5t6WqwB8uxjsw==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@aws-sdk/util-arn-parser": "3.568.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.577.0.tgz", - "integrity": "sha512-BwujdXrydlk6UEyPmewm5GqG4nkQ6OVyRhS/SyZP/6UKSFv2/sf391Cmz0hN0itUTH1rR4XeLln8XCOtarkrzg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sts": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.577.0.tgz", - "integrity": "sha512-509Kklimva1XVlhGbpTpeX3kOP6ORpm44twJxDHpa9TURbmoaxj7veWlnLCbDorxDTrbsDghvYZshvcLsojVpg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.609.0.tgz", + "integrity": "sha512-2w3dBLjQVKIajYzokO4hduq8/0hSMUYHHmIo1Kdl+MSY8uwRBt12bLL6pyreobTcRMxizvn2ph/CQ9I1ST/WGQ==", + "dependencies": { + "@aws-sdk/types": "3.609.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/core": { - "version": "3.576.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.576.0.tgz", - "integrity": "sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==", - "dependencies": { - "@smithy/core": "^2.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "fast-xml-parser": "4.2.5", + "node_modules/@aws-sdk/middleware-signing/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "node_modules/@aws-sdk/middleware-ssec": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz", + "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.577.0.tgz", - "integrity": "sha512-n++yhCp67b9+ZRGEdY1jhamB5E/O+QsIDOPSuRmdaSGMCOd82oUEKPgIVEU1bkqxDsBxgiEWuvtfhK6sNiDS0A==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.0", + "node_modules/@aws-sdk/middleware-ssec/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.577.0.tgz", - "integrity": "sha512-q7lHPtv6BjRvChUE3m0tIaEZKxPTaZ1B3lKxGYsFl3VLAu5N8yGCUKwuA1izf4ucT+LyKscVGqK6VDZx1ev3nw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" - }, - "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.577.0.tgz", - "integrity": "sha512-epZ1HOMsrXBNczc0HQpv0VMjqAEpc09DUA7Rg3gUJfn8umhML7A7bXnUyqPA+S54q397UYg1leQKdSn23OiwQQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.577.0", - "@aws-sdk/credential-provider-ini": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/signature-v4-multi-region": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.609.0.tgz", + "integrity": "sha512-FJs0BxVMyYOKNu7nzFI1kehfgWoYmdto5B8BSS29geUACF7jlOoeCfNZWVrnMjvAxVlSQ5O7Mr575932BnsycA==", + "dependencies": { + "@aws-sdk/middleware-sdk-s3": "3.609.0", + "@aws-sdk/types": "3.609.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/signature-v4": "^3.1.2", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.577.0.tgz", - "integrity": "sha512-iVm5SQvS7EgZTJsRaqUOmDQpBQPPPat42SCbWFvFQOLrl8qewq8OP94hFS5w2mP62zngeYzqhJnDel79HXbxew==", - "dependencies": { - "@aws-sdk/client-sso": "3.577.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", + "node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@aws-sdk/client-sso-oidc": "^3.598.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", + "node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", + "node_modules/@aws-sdk/util-arn-parser": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", + "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.577.0.tgz", - "integrity": "sha512-P55HAXgwmiHHpFx5JEPvOnAbfhN7v6sWv9PBQs+z2tC7QiBcPS0cdJR6PfV7J1n4VPK52/OnrK3l9VxdQ7Ms0g==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", + "node_modules/@aws-sdk/util-format-url": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.609.0.tgz", + "integrity": "sha512-fuk29BI/oLQlJ7pfm6iJ4gkEpHdavffAALZwXh9eaY1vQ0ip0aKfRTiNudPoJjyyahnz5yJ1HkmlcDitlzsOrQ==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.609.0", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" - }, - "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", + "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/types": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", + "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-endpoints": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.577.0.tgz", - "integrity": "sha512-FjuUz1Kdy4Zly2q/c58tpdqHd6z7iOdU/caYzoc8jwgAHBDBbIJNQLCU9hXJnPV2M8pWxQDyIZsoVwtmvErPzw==", + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", "tslib": "^2.6.2" }, "engines": { @@ -3554,6619 +4045,2594 @@ } } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", + "node_modules/@aws-sdk/xml-builder": { + "version": "3.609.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz", + "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", + "node_modules/@aws-solutions-constructs/aws-eventbridge-stepfunctions": { + "version": "2.61.0", + "resolved": "https://registry.npmjs.org/@aws-solutions-constructs/aws-eventbridge-stepfunctions/-/aws-eventbridge-stepfunctions-2.61.0.tgz", + "integrity": "sha512-KX58fEstY6lAPwKdMm4vxwdAyclc2hqOKlPGRHejK+j78jYQygqg2Nb9V7tgxZzTKkPbqM2bJDWHBGLAmyxjrg==", "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "@aws-cdk/integ-tests-alpha": "2.147.3-alpha.0", + "@aws-solutions-constructs/core": "2.61.0", + "constructs": "^10.0.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@aws-solutions-constructs/core": "2.61.0", + "aws-cdk-lib": "^2.147.3", + "constructs": "^10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", + "node_modules/@aws-solutions-constructs/core": { + "version": "2.61.0", + "resolved": "https://registry.npmjs.org/@aws-solutions-constructs/core/-/core-2.61.0.tgz", + "integrity": "sha512-JNGpLqv5HTogjRQLcxSK1BzxVjiVm8cX2koBRGWq3k+fR9wF/2wmmXEZU74GpeSWwsi75kEejGwLbDWS37oduQ==", + "bundleDependencies": [ + "deepmerge", + "npmlog", + "deep-diff" + ], "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "tslib": "^2.6.2" + "@aws-cdk/integ-tests-alpha": "2.147.3-alpha.0", + "constructs": "^10.0.0", + "deep-diff": "^1.0.2", + "deepmerge": "^4.0.0", + "npmlog": "^7.0.0" }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" + "peerDependencies": { + "aws-cdk-lib": "^2.147.3", + "constructs": "^10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", - "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@aws-solutions-constructs/core/node_modules/ansi-regex": { + "version": "5.0.1", + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } + "node_modules/@aws-solutions-constructs/core/node_modules/aproba": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC" }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@aws-solutions-constructs/core/node_modules/are-we-there-yet": { + "version": "4.0.2", + "inBundle": true, + "license": "ISC", "engines": { - "node": ">=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "node_modules/@aws-solutions-constructs/core/node_modules/color-support": { + "version": "1.1.3", + "inBundle": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" - }, + "node_modules/@aws-solutions-constructs/core/node_modules/console-control-strings": { + "version": "1.1.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/@aws-solutions-constructs/core/node_modules/deep-diff": { + "version": "1.0.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/@aws-solutions-constructs/core/node_modules/deepmerge": { + "version": "4.3.1", + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", + "node_modules/@aws-solutions-constructs/core/node_modules/emoji-regex": { + "version": "8.0.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/@aws-solutions-constructs/core/node_modules/gauge": { + "version": "5.0.2", + "inBundle": true, + "license": "ISC", "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^4.0.1", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": ">=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-stack": { + "node_modules/@aws-solutions-constructs/core/node_modules/has-unicode": { + "version": "2.0.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/@aws-solutions-constructs/core/node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", + "node_modules/@aws-solutions-constructs/core/node_modules/npmlog": { + "version": "7.0.1", + "inBundle": true, + "license": "ISC", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", - "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@aws-solutions-constructs/core/node_modules/set-blocking": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/@aws-solutions-constructs/core/node_modules/signal-exit": { + "version": "4.1.0", + "inBundle": true, + "license": "ISC", "engines": { - "node": ">=16.0.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", + "node_modules/@aws-solutions-constructs/core/node_modules/string-width": { + "version": "4.2.3", + "inBundle": true, + "license": "MIT", "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", + "node_modules/@aws-solutions-constructs/core/node_modules/strip-ansi": { + "version": "6.0.1", + "inBundle": true, + "license": "MIT", "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", + "node_modules/@aws-solutions-constructs/core/node_modules/wide-align": { + "version": "1.1.5", + "inBundle": true, + "license": "ISC", "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dependencies": { - "@smithy/types": "^3.0.0" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@babel/compat-data": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", + "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", + "node_modules/@babel/core": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", + "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", + "dev": true, "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helpers": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/template": "^7.24.7", + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", "dependencies": { - "tslib": "^2.6.2" + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", + "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", + "dev": true, "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "@babel/compat-data": "^7.24.7", + "@babel/helper-validator-option": "^7.24.7", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", "dependencies": { - "tslib": "^2.6.2" + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", + "node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" + "@babel/types": "^7.24.7" }, "engines": { - "node": ">= 10.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">= 10.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", + "node_modules/@babel/helper-module-transforms": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", + "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz", + "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-waiter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.0.0.tgz", - "integrity": "sha512-+fEXJxGDLCoqRKVSmo0auGxaqbiCo+8oph+4auefYjaNxjOLKSY2MxVQfRzo65PaZv4fr+5lWg+au7vSuJJ/zw==", - "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.583.0.tgz", - "integrity": "sha512-iYJ1fB2hr8PRu2fXx1dYVul+biW46yvAXN65NvKpuvfq0YU6gSJURBFJOEHYgHTB7/rS9ptTZ+U6zHA4yOC1Aw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.583.0", - "@aws-sdk/client-sts": "3.583.0", - "@aws-sdk/core": "3.582.0", - "@aws-sdk/credential-provider-node": "3.583.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.583.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.583.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.1", - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.1", - "@smithy/util-defaults-mode-node": "^3.0.1", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" - }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.583.0.tgz", - "integrity": "sha512-FNJ2MmiBtZZwgkj4+GLVrzqwmD6D8FBptrFZk7PnGkSf7v1Q8txYNI6gY938RRhYJ4lBW4cNbhPvWoDxAl90Hw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.582.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.583.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.583.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.1", - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.1", - "@smithy/util-defaults-mode-node": "^3.0.1", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", + "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.583.0.tgz", - "integrity": "sha512-LO3wmrFXPi2kNE46lD1XATfRrvdNxXd4DlTFouoWmr7lvqoUkcbmtkV2r/XChZA2z0HiDauphC1e8b8laJVeSg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.583.0", - "@aws-sdk/core": "3.582.0", - "@aws-sdk/credential-provider-node": "3.583.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.583.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.583.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.1", - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.1", - "@smithy/util-defaults-mode-node": "^3.0.1", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/helpers": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", + "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sts": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.583.0.tgz", - "integrity": "sha512-xDMxiemPDWr9dY2Q4AyixkRnk/hvS6fs6OWxuVCz1WO47YhaAfOsEGAgQMgDLLaOfj/oLU5D14uTNBEPGh4rBA==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.583.0", - "@aws-sdk/core": "3.582.0", - "@aws-sdk/credential-provider-node": "3.583.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.583.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.583.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.1", - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.1", - "@smithy/util-defaults-mode-node": "^3.0.1", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/core": { - "version": "3.582.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.582.0.tgz", - "integrity": "sha512-ofmD96IQc9g1dbyqlCyxu5fCG7kIl9p1NoN5+vGBUyLdbmPCV3Pdg99nRHYEJuv2MgGx5AUFGDPMHcqbJpnZIw==", - "dependencies": { - "@smithy/core": "^2.0.1", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "fast-xml-parser": "4.2.5", - "tslib": "^2.6.2" + "node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.0.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.582.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.582.0.tgz", - "integrity": "sha512-kGOUKw5ryPkDIYB69PjK3SicVLTbWB06ouFN2W1EvqUJpkQGPAUGzYcomKtt3mJaCTf/1kfoaHwARAl6KKSP8Q==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.583.0.tgz", - "integrity": "sha512-8I0oWNg/yps6ctjhEeL/qJ9BIa/+xXP7RPDQqFKZ2zBkWbmLLOoMWXRvl8uKUBD6qCe+DGmcu9skfVXeXSesEQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.583.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.583.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.583.0.tgz", - "integrity": "sha512-yBNypBXny7zJH85SzxDj8s1mbLXv9c/Vbq0qR3R3POj2idZ6ywB/qlIRC1XwBuv49Wvg8kA1wKXk3K3jrpcVIw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.582.0", - "@aws-sdk/credential-provider-ini": "3.583.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.583.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.583.0.tgz", - "integrity": "sha512-G/1EvL9tBezSiU+06tG4K/kOvFfPjnheT4JSXqjPM7+vjKzgp2jxp1J9MMd69zs4jVWon932zMeGgjrCplzMEg==", - "dependencies": { - "@aws-sdk/client-sso": "3.583.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz", + "integrity": "sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.583.0.tgz", - "integrity": "sha512-xVNXXXDWvBVI/AeVtSdA9SVumqxiZaESk/JpUn9GMkmtTKfter0Cweap+1iQ9j8bRAO0vNhmIkbcvdB1S4WVUw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.583.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz", + "integrity": "sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-plugin-utils": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-endpoints": { - "version": "3.583.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.583.0.tgz", - "integrity": "sha512-ZC9mb2jq6BFXPYsUsD2tmYcnlmd+9PGNwnFNn8jk4abna5Jjk2wDknN81ybktmBR5ttN9W8ugmktuKtvAMIDCQ==", + "node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "tslib": "^2.6.2" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" + "node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" }, "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } + "node": ">=6.9.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@jridgewell/trace-mapping": "0.3.9" }, "engines": { - "node": ">=16.0.0" + "node": ">=12" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", + "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/android-arm": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", + "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@esbuild/android-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", + "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", - "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/android-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", + "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@esbuild/darwin-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", + "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", + "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", + "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" - }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", + "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-arm": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", + "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", + "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", + "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", - "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", + "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", + "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", + "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", + "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", - "dependencies": { - "@smithy/types": "^3.0.0" - }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", + "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/linux-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", + "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", + "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.0.tgz", + "integrity": "sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", + "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", + "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", + "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", + "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", - "dependencies": { - "tslib": "^2.6.2" - }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", + "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=16.0.0" + "node": ">=18" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">= 10.0.0" + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=16.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-secrets-manager/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=16.0.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@aws-sdk/client-service-quotas": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-service-quotas/-/client-service-quotas-3.556.0.tgz", - "integrity": "sha512-4UKqCaXOGc6E/KEMxrFvcul8B2ZswMA2aSGZudz69IuvfNT+8jm+1MZTXcHga0Cx7nHuSjp6M7Nx433/5kWB6Q==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=14.0.0" + "node": "*" } }, - "node_modules/@aws-sdk/client-shield": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-shield/-/client-shield-3.556.0.tgz", - "integrity": "sha512-ltbe30JoIThrqDLaseN/lcZwo+mRcypx2PowKe359sgRp0htQWv4n+RwkqQ1TpfFZeLX79BYAoqY4Me0FVz03w==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-ssm": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.556.0.tgz", - "integrity": "sha512-uGrzSEcxcldW2vOirEYyr/lbO5n4FV5O36Sm4Q/eXtBO8FOUM5Fydi8mg+3xAIW7I3wEU79ygp7+FpM6u9W+9g==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "@smithy/util-waiter": "^2.2.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" - }, + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@aws-sdk/client-sso": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.556.0.tgz", - "integrity": "sha512-unXdWS7uvHqCcOyC1de+Fr8m3F2vMg2m24GPea0bg7rVGTYmiyn9mhUX11VCt+ozydrw+F50FQwL6OqoqPocmw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">=14.0.0" + "node": ">=10.10.0" } }, - "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.577.0.tgz", - "integrity": "sha512-njmKSPDWueWWYVFpFcZ2P3fI6/pdQVDa0FgCyYZhOnJLgEHZIcBBg1AsnkVWacBuLopp9XVt2m+7hO6ugY1/1g==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/client-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.577.0.tgz", - "integrity": "sha512-BwujdXrydlk6UEyPmewm5GqG4nkQ6OVyRhS/SyZP/6UKSFv2/sf391Cmz0hN0itUTH1rR4XeLln8XCOtarkrzg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=16.0.0" + "node": "*" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/client-sts": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.577.0.tgz", - "integrity": "sha512-509Kklimva1XVlhGbpTpeX3kOP6ORpm44twJxDHpa9TURbmoaxj7veWlnLCbDorxDTrbsDghvYZshvcLsojVpg==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sso-oidc": "3.577.0", - "@aws-sdk/core": "3.576.0", - "@aws-sdk/credential-provider-node": "3.577.0", - "@aws-sdk/middleware-host-header": "3.577.0", - "@aws-sdk/middleware-logger": "3.577.0", - "@aws-sdk/middleware-recursion-detection": "3.577.0", - "@aws-sdk/middleware-user-agent": "3.577.0", - "@aws-sdk/region-config-resolver": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@aws-sdk/util-user-agent-browser": "3.577.0", - "@aws-sdk/util-user-agent-node": "3.577.0", - "@smithy/config-resolver": "^3.0.0", - "@smithy/core": "^2.0.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/hash-node": "^3.0.0", - "@smithy/invalid-dependency": "^3.0.0", - "@smithy/middleware-content-length": "^3.0.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.0", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.0", - "@smithy/util-defaults-mode-node": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/core": { - "version": "3.576.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.576.0.tgz", - "integrity": "sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==", + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, "dependencies": { - "@smithy/core": "^2.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "fast-xml-parser": "4.2.5", - "tslib": "^2.6.2" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.577.0.tgz", - "integrity": "sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-http": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.577.0.tgz", - "integrity": "sha512-n++yhCp67b9+ZRGEdY1jhamB5E/O+QsIDOPSuRmdaSGMCOd82oUEKPgIVEU1bkqxDsBxgiEWuvtfhK6sNiDS0A==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/fetch-http-handler": "^3.0.0", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.0", - "tslib": "^2.6.2" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.577.0.tgz", - "integrity": "sha512-q7lHPtv6BjRvChUE3m0tIaEZKxPTaZ1B3lKxGYsFl3VLAu5N8yGCUKwuA1izf4ucT+LyKscVGqK6VDZx1ev3nw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" }, "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.577.0.tgz", - "integrity": "sha512-epZ1HOMsrXBNczc0HQpv0VMjqAEpc09DUA7Rg3gUJfn8umhML7A7bXnUyqPA+S54q397UYg1leQKdSn23OiwQQ==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.577.0", - "@aws-sdk/credential-provider-http": "3.577.0", - "@aws-sdk/credential-provider-ini": "3.577.0", - "@aws-sdk/credential-provider-process": "3.577.0", - "@aws-sdk/credential-provider-sso": "3.577.0", - "@aws-sdk/credential-provider-web-identity": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=6" }, - "engines": { - "node": ">=16.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.577.0.tgz", - "integrity": "sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.577.0.tgz", - "integrity": "sha512-iVm5SQvS7EgZTJsRaqUOmDQpBQPPPat42SCbWFvFQOLrl8qewq8OP94hFS5w2mP62zngeYzqhJnDel79HXbxew==", - "dependencies": { - "@aws-sdk/client-sso": "3.577.0", - "@aws-sdk/token-providers": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.577.0.tgz", - "integrity": "sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "@aws-sdk/client-sts": "^3.577.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.577.0.tgz", - "integrity": "sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/middleware-logger": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.577.0.tgz", - "integrity": "sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.577.0.tgz", - "integrity": "sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==", + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.577.0.tgz", - "integrity": "sha512-P55HAXgwmiHHpFx5JEPvOnAbfhN7v6sWv9PBQs+z2tC7QiBcPS0cdJR6PfV7J1n4VPK52/OnrK3l9VxdQ7Ms0g==", + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-endpoints": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/region-config-resolver": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.577.0.tgz", - "integrity": "sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=8" }, - "engines": { - "node": ">=16.0.0" + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/token-providers": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.577.0.tgz", - "integrity": "sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==", + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.577.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=10" }, - "engines": { - "node": ">=16.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/util-endpoints": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.577.0.tgz", - "integrity": "sha512-FjuUz1Kdy4Zly2q/c58tpdqHd6z7iOdU/caYzoc8jwgAHBDBbIJNQLCU9hXJnPV2M8pWxQDyIZsoVwtmvErPzw==", + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "@smithy/util-endpoints": "^2.0.0", - "tslib": "^2.6.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.577.0.tgz", - "integrity": "sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.577.0.tgz", - "integrity": "sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==", + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { - "aws-crt": ">=1.0.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "peerDependenciesMeta": { - "aws-crt": { + "node-notifier": { "optional": true } } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.0.tgz", - "integrity": "sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==", + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.0.1.tgz", - "integrity": "sha512-rcMkjvwxH/bER+oZUPR0yTA0ELD6m3A+d92+CFkdF6HJFCBB1bXo7P5pm21L66XwTN01B6bUhSCQ7cymWRD8zg==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-retry": "^3.0.1", - "@smithy/middleware-serde": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=10" }, - "engines": { - "node": ">=16.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/credential-provider-imds": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.0.0.tgz", - "integrity": "sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==", + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "tslib": "^2.6.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", - "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" + "node": ">=8" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/hash-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.0.tgz", - "integrity": "sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==", + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/invalid-dependency": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.0.tgz", - "integrity": "sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==", + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/middleware-content-length": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.0.tgz", - "integrity": "sha512-3C4s4d/iGobgCtk2tnWW6+zSTOBg1PRAm2vtWZLdriwTroFbbWNSr3lcyzHdrQHnEXYCC5K52EbpfodaIUY8sg==", + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "jest-get-type": "^29.6.3" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/middleware-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.1.tgz", - "integrity": "sha512-hBhSEuL841FhJBK/19WpaGk5YWSzFk/P2UaVjANGKRv3eYNO8Y1lANWgqnuPWjOyCEWMPr58vELFDWpxvRKANw==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/service-error-classification": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-retry": "^3.0.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", - "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/service-error-classification": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.0.tgz", - "integrity": "sha512-3BsBtOUt2Gsnc3X23ew+r2M71WwtpHfEDGhHYHSDg6q1t8FrWh15jT25DLajFV1H+PpxAJ6gqe9yYeRUsmSdFA==", - "dependencies": { - "@smithy/types": "^3.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-body-length-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-body-length-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.1.tgz", - "integrity": "sha512-nW5kEzdJn1Bn5TF+gOPHh2rcPli8JU9vSSXLbfg7uPnfR1TMRQqs9zlYRhIb87NeSxIbpdXOI94tvXSy+fvDYg==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.1.tgz", - "integrity": "sha512-TFk+Qb+elLc/MOhtSp+50fstyfZ6avQbgH2d96xUBpeScu+Al9elxv+UFAjaTHe0HQe5n+wem8ZLpXvU8lwV6Q==", - "dependencies": { - "@smithy/config-resolver": "^3.0.0", - "@smithy/credential-provider-imds": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/smithy-client": "^3.0.1", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-endpoints": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.0.tgz", - "integrity": "sha512-+exaXzEY3DNt2qtA2OtRNSDlVrE4p32j1JSsQkzA5AdP0YtJNjkYbYhJxkFmPYcjI1abuwopOZCwUmv682QkiQ==", - "dependencies": { - "@smithy/node-config-provider": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-retry": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.0.tgz", - "integrity": "sha512-nK99bvJiziGv/UOKJlDvFF45F00WgPLKVIGUfAK+mDhzVN2hb/S33uW2Tlhg5PVBoqY7tDVqL0zmu4OxAHgo9g==", - "dependencies": { - "@smithy/service-error-classification": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/client-sts": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.556.0.tgz", - "integrity": "sha512-TsK3js7Suh9xEmC886aY+bv0KdLLYtzrcmVt6sJ/W6EnDXYQhBuKYFhp03NrN2+vSvMGpqJwR62DyfKe1G0QzQ==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "@aws-sdk/credential-provider-node": "^3.556.0" - } - }, - "node_modules/@aws-sdk/client-wafv2": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-wafv2/-/client-wafv2-3.556.0.tgz", - "integrity": "sha512-fmgl3Z4PYr1zAGELuGSiGIRwqoLFKer5axxWhapBuMwhSHLQUcCt8WaP5XDCFNcQuaJn2s4xn22WajBmVPYqWA==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/credential-provider-node": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/core": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.556.0.tgz", - "integrity": "sha512-vJaSaHw2kPQlo11j/Rzuz0gk1tEaKdz+2ser0f0qZ5vwFlANjt08m/frU17ctnVKC1s58bxpctO/1P894fHLrA==", - "dependencies": { - "@smithy/core": "^1.4.2", - "@smithy/protocol-http": "^3.3.0", - "@smithy/signature-v4": "^2.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "fast-xml-parser": "4.2.5", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.535.0.tgz", - "integrity": "sha512-XppwO8c0GCGSAvdzyJOhbtktSEaShg14VJKg8mpMa1XcgqzmcqqHQjtDWbx5rZheY1VdpXZhpEzJkB6LpQejpA==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.552.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.552.0.tgz", - "integrity": "sha512-vsmu7Cz1i45pFEqzVb4JcFmAmVnWFNLsGheZc8SCptlqCO5voETrZZILHYIl4cjKkSDk3pblBOf0PhyjqWW6WQ==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/util-stream": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/util-hex-encoding": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.2.0.tgz", - "integrity": "sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/util-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.2.0.tgz", - "integrity": "sha512-17faEXbYWIRst1aU9SvPZyMdWmqIrduZjVOqCPMIsWFNxs5yQQgFrJL6b2SdiCzyW9mJoDjFtgi53xx7EH+BXA==", - "dependencies": { - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/types": "^2.12.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-buffer-from": "^2.2.0", - "@smithy/util-hex-encoding": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.556.0.tgz", - "integrity": "sha512-0Nz4ErOlXhe3muxWYMbPwRMgfKmVbBp36BAE2uv/z5wTbfdBkcgUwaflEvlKCLUTdHzuZsQk+BFS/gVyaUeOuA==", - "dependencies": { - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/credential-provider-env": "3.535.0", - "@aws-sdk/credential-provider-process": "3.535.0", - "@aws-sdk/credential-provider-sso": "3.556.0", - "@aws-sdk/credential-provider-web-identity": "3.556.0", - "@aws-sdk/types": "3.535.0", - "@smithy/credential-provider-imds": "^2.3.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.556.0.tgz", - "integrity": "sha512-s1xVtKjyGc60O8qcNIzS1X3H+pWEwEfZ7TgNznVDNyuXvLrlNWiAcigPWGl2aAkc8tGcsSG0Qpyw2KYC939LFg==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.535.0", - "@aws-sdk/credential-provider-http": "3.552.0", - "@aws-sdk/credential-provider-ini": "3.556.0", - "@aws-sdk/credential-provider-process": "3.535.0", - "@aws-sdk/credential-provider-sso": "3.556.0", - "@aws-sdk/credential-provider-web-identity": "3.556.0", - "@aws-sdk/types": "3.535.0", - "@smithy/credential-provider-imds": "^2.3.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.535.0.tgz", - "integrity": "sha512-9O1OaprGCnlb/kYl8RwmH7Mlg8JREZctB8r9sa1KhSsWFq/SWO0AuJTyowxD7zL5PkeS4eTvzFFHWCa3OO5epA==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.556.0.tgz", - "integrity": "sha512-ETuBgcnpfxqadEAqhQFWpKoV1C/NAgvs5CbBc5EJbelJ8f4prTdErIHjrRtVT8c02MXj92QwczsiNYd5IoOqyw==", - "dependencies": { - "@aws-sdk/client-sso": "3.556.0", - "@aws-sdk/token-providers": "3.556.0", - "@aws-sdk/types": "3.535.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.556.0.tgz", - "integrity": "sha512-R/YAL8Uh8i+dzVjzMnbcWLIGeeRi2mioHVGnVF+minmaIkCiQMZg2HPrdlKm49El+RljT28Nl5YHRuiqzEIwMA==", - "dependencies": { - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/types": "3.535.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.577.0.tgz", - "integrity": "sha512-twlkNX2VofM6kHXzDEiJOiYCc9tVABe5cbyxMArRWscIsCWG9mamPhC77ezG4XsN9dFEwVdxEYD5Crpm/5EUiw==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.577.0.tgz", - "integrity": "sha512-6dPp8Tv4F0of4un5IAyG6q++GrRrNQQ4P2NAMB1W0VO4JoEu1C8GievbbDLi88TFIFmtKpnHB0ODCzwnoe8JsA==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.577.0.tgz", - "integrity": "sha512-IHAUEipIfagjw92LV8SOSBiCF7ZnqfHcw14IkcZW2/mfrCy1Fh/k40MoS/t3Tro2tQ91rgQPwUoSgB/QCi2Org==", - "dependencies": { - "@aws-crypto/crc32": "3.0.0", - "@aws-crypto/crc32c": "3.0.0", - "@aws-sdk/types": "3.577.0", - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.535.0.tgz", - "integrity": "sha512-0h6TWjBWtDaYwHMQJI9ulafeS4lLaw1vIxRjbpH0svFRt6Eve+Sy8NlVhECfTU2hNz/fLubvrUxsXoThaLBIew==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.577.0.tgz", - "integrity": "sha512-DKPTD2D2s+t2QUo/IXYtVa/6Un8GZ+phSTBkyBNx2kfZz4Kwavhl/JJzSqTV3GfCXkVdFu7CrjoX7BZ6qWeTUA==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-logger": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.535.0.tgz", - "integrity": "sha512-huNHpONOrEDrdRTvSQr1cJiRMNf0S52NDXtaPzdxiubTkP+vni2MohmZANMOai/qT0olmEVX01LhZ0ZAOgmg6A==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.535.0.tgz", - "integrity": "sha512-am2qgGs+gwqmR4wHLWpzlZ8PWhm4ktj5bYSgDrsOfjhdBlWNxvPoID9/pDAz5RWL48+oH7I6SQzMqxXsFDikrw==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.577.0.tgz", - "integrity": "sha512-+WzJWsU8b4bjjb0Tk5g8chbWTpM+742kb2+XBWF9DX4NBbqYuu4XhEkjIjLLDK0IGn1A7VfJdevpRMApGMKO5Q==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-format-url": "3.577.0", - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.577.0.tgz", - "integrity": "sha512-/t8Shvy6lGIRdTEKG6hA8xy+oon/CDF5H8Ksms/cd/uvIy/MYbNjOJ/Arwk8H5W6LB4DP/1O+tOzOpGx1MCufA==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/smithy-client": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-config-provider": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-endpoint": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.0.tgz", - "integrity": "sha512-aXOAWztw/5qAfp0NcA2OWpv6ZI/E+Dh9mByif7i91D/0iyYNUcKvskmXiowKESFkuZ7PIMd3VOR4fTibZDs2OQ==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.0", - "@smithy/node-config-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/url-parser": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-serde": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.0.tgz", - "integrity": "sha512-I1vKG1foI+oPgG9r7IMY1S+xBnmAn1ISqployvqkwHoSb8VPsngHDTOgYGYBonuOKndaWRUGJZrKYYLB+Ane6w==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-stack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.0.tgz", - "integrity": "sha512-+H0jmyfAyHRFXm6wunskuNAqtj7yfmwFB6Fp37enytp2q047/Od9xetEaUbluyImOlGnGpaVGaVfjwawSr+i6Q==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/node-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.0.0.tgz", - "integrity": "sha512-buqfaSdDh0zo62EPLf8rGDvcpKwGpO5ho4bXS2cdFhlOta7tBkWJt+O5uiaAeICfIOfPclNOndshDNSanX2X9g==", - "dependencies": { - "@smithy/property-provider": "^3.0.0", - "@smithy/shared-ini-file-loader": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/querystring-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.0.tgz", - "integrity": "sha512-UzHwthk0UEccV4dHzPySnBy34AWw3V9lIqUTxmozQ+wPDAO9csCWMfOLe7V9A2agNYy7xE+Pb0S6K/J23JSzfQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/shared-ini-file-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.0.0.tgz", - "integrity": "sha512-REVw6XauXk8xE4zo5aGL7Rz4ywA8qNMUn8RtWeTRQsgAlmlvbJ7CEPBcaXU2NDC3AYBgYAXrGyWD8XrN8UGDog==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/smithy-client": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.0.1.tgz", - "integrity": "sha512-KAiFY4Y4jdHxR+4zerH/VBhaFKM8pbaVmJZ/CWJRwtM/CmwzTfXfvYwf6GoUwiHepdv+lwiOXCuOl6UBDUEINw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.0.0", - "@smithy/middleware-stack": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-stream": "^3.0.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/url-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.0.tgz", - "integrity": "sha512-2XLazFgUu+YOGHtWihB3FSLAfCUajVfNBXGGYjOaVKjLAuAxx3pSBY3hBgLzIgB17haf59gOG3imKqTy8mcrjw==", - "dependencies": { - "@smithy/querystring-parser": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.577.0.tgz", - "integrity": "sha512-QS/dh3+NqZbXtY0j/DZ867ogP413pG5cFGqBy9OeOhDMsolcwLrQbi0S0c621dc1QNq+er9ffaMhZ/aPkyXXIg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/property-provider": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/property-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.0.0.tgz", - "integrity": "sha512-LmbPgHBswdXCrkWWuUwBm9w72S2iLWyC/5jet9/Y9cGHtzqxi+GVjfCfahkvNV4KXEwgnH8EMpcrD9RUYe0eLQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-signing/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.577.0.tgz", - "integrity": "sha512-i2BPJR+rp8xmRVIGc0h1kDRFcM2J9GnClqqpc+NLSjmYadlcg4mPklisz9HzwFVcRPJ5XcGf3U4BYs5G8+iTyg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-ssec/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-ssec/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.540.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.540.0.tgz", - "integrity": "sha512-8Rd6wPeXDnOYzWj1XCmOKcx/Q87L0K1/EHqOBocGjLVbN3gmRxBvpmR1pRTjf7IsWfnnzN5btqtcAkfDPYQUMQ==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.535.0.tgz", - "integrity": "sha512-IXOznDiaItBjsQy4Fil0kzX/J3HxIOknEphqHbOfUf+LpA5ugcsxuQQONrbEQusCBnfJyymrldBvBhFmtlU9Wg==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/types": "^2.12.0", - "@smithy/util-config-provider": "^2.3.0", - "@smithy/util-middleware": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/region-config-resolver/node_modules/@smithy/util-config-provider": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.3.0.tgz", - "integrity": "sha512-HZkzrRcuFN1k70RLqlNK4FnPXKOpkik1+4JaBoHNJn+RnJGYqaa3c5/+XtLOXhlKzlRgNvyaLieHTW2VwGN0VQ==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.577.0.tgz", - "integrity": "sha512-mMykGRFBYmlDcMhdbhNM0z1JFUaYYZ8r9WV7Dd0T2PWELv2brSAjDAOBHdJLHObDMYRnM6H0/Y974qTl3icEcQ==", - "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.577.0", - "@aws-sdk/types": "3.577.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/signature-v4": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/signature-v4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.0.0.tgz", - "integrity": "sha512-kXFOkNX+BQHe2qnLxpMEaCRGap9J6tUGLzc3A9jdn+nD4JdMwCKTJ+zFwQ20GkY+mAXGatyTw3HcoUlR39HwmA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/util-middleware": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.0.tgz", - "integrity": "sha512-q5ITdOnV2pXHSVDnKWrwgSNTDBAMHLptFE07ua/5Ty5WJ11bvr0vk2a7agu7qRhrCFRQlno5u3CneU5EELK+DQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", - "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/token-providers": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.556.0.tgz", - "integrity": "sha512-tvIiugNF0/+2wfuImMrpKjXMx4nCnFWQjQvouObny+wrif/PGqqQYrybwxPJDvzbd965bu1I+QuSv85/ug7xsg==", - "dependencies": { - "@aws-sdk/client-sso-oidc": "3.556.0", - "@aws-sdk/types": "3.535.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/token-providers/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.556.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.556.0.tgz", - "integrity": "sha512-AXKd2TB6nNrksu+OfmHl8uI07PdgzOo4o8AxoRO8SHlwoMAGvcT9optDGVSYoVfgOKTymCoE7h8/UoUfPc11wQ==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.556.0", - "@aws-sdk/core": "3.556.0", - "@aws-sdk/middleware-host-header": "3.535.0", - "@aws-sdk/middleware-logger": "3.535.0", - "@aws-sdk/middleware-recursion-detection": "3.535.0", - "@aws-sdk/middleware-user-agent": "3.540.0", - "@aws-sdk/region-config-resolver": "3.535.0", - "@aws-sdk/types": "3.535.0", - "@aws-sdk/util-endpoints": "3.540.0", - "@aws-sdk/util-user-agent-browser": "3.535.0", - "@aws-sdk/util-user-agent-node": "3.535.0", - "@smithy/config-resolver": "^2.2.0", - "@smithy/core": "^1.4.2", - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/hash-node": "^2.2.0", - "@smithy/invalid-dependency": "^2.2.0", - "@smithy/middleware-content-length": "^2.2.0", - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-body-length-browser": "^2.2.0", - "@smithy/util-body-length-node": "^2.3.0", - "@smithy/util-defaults-mode-browser": "^2.2.1", - "@smithy/util-defaults-mode-node": "^2.3.1", - "@smithy/util-endpoints": "^1.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "@aws-sdk/credential-provider-node": "^3.556.0" - } - }, - "node_modules/@aws-sdk/types": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.535.0.tgz", - "integrity": "sha512-aY4MYfduNj+sRR37U7XxYR8wemfbKP6lx00ze2M2uubn7mZotuVrWYAafbMSXrdEMSToE5JDhr28vArSOoLcSg==", - "dependencies": { - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", - "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/util-endpoints": { - "version": "3.540.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.540.0.tgz", - "integrity": "sha512-1kMyQFAWx6f8alaI6UT65/5YW/7pDWAKAdNwL6vuJLea03KrZRX3PMoONOSJpAS5m3Ot7HlWZvf3wZDNTLELZw==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/types": "^2.12.0", - "@smithy/util-endpoints": "^1.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/util-format-url": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.577.0.tgz", - "integrity": "sha512-SyEGC2J+y/krFRuPgiF02FmMYhqbiIkOjDE6k4nYLJQRyS6XEAGxZoG+OHeOVEM+bsDgbxokXZiM3XKGu6qFIg==", - "dependencies": { - "@aws-sdk/types": "3.577.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/types": { - "version": "3.577.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.577.0.tgz", - "integrity": "sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/util-format-url/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/util-locate-window": { - "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", - "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.535.0.tgz", - "integrity": "sha512-RWMcF/xV5n+nhaA/Ff5P3yNP3Kur/I+VNZngog4TEs92oB/nwOdAg/2JL8bVAhUbMrjTjpwm7PItziYFQoqyig==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/types": "^2.12.0", - "bowser": "^2.11.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.535.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.535.0.tgz", - "integrity": "sha512-dRek0zUuIT25wOWJlsRm97nTkUlh1NDcLsQZIN2Y8KxhwoXXWtJs5vaDPT+qAg+OpcNj80i1zLR/CirqlFg/TQ==", - "dependencies": { - "@aws-sdk/types": "3.535.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "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.575.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.575.0.tgz", - "integrity": "sha512-cWgAwmbFYNCFzPwxL705+lWps0F3ZvOckufd2KKoEZUmtpVw9/txUXNrPySUXSmRTSRhoatIMABNfStWR043bQ==", - "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-sdk/xml-builder/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-solutions-constructs/aws-eventbridge-stepfunctions": { - "version": "2.57.0", - "resolved": "https://registry.npmjs.org/@aws-solutions-constructs/aws-eventbridge-stepfunctions/-/aws-eventbridge-stepfunctions-2.57.0.tgz", - "integrity": "sha512-3exLBmb2jEl5Fs4ZLEl5U5mKoLX+LQ+0R/KL0KLHyBSipIhW2SVFQ4o1KxGh8l7N9Y2Gwhrl6KLlvISCClhAfA==", - "dependencies": { - "@aws-cdk/integ-tests-alpha": "2.138.0-alpha.0", - "@aws-solutions-constructs/core": "2.57.0", - "constructs": "^10.0.0" - }, - "peerDependencies": { - "@aws-solutions-constructs/core": "2.57.0", - "aws-cdk-lib": "^2.138.0", - "constructs": "^10.0.0" - } - }, - "node_modules/@aws-solutions-constructs/core": { - "version": "2.57.0", - "resolved": "https://registry.npmjs.org/@aws-solutions-constructs/core/-/core-2.57.0.tgz", - "integrity": "sha512-AGDqfup4vfo1ueum44M70lcnUPVFM1jZhK9XVksxEQdQJA1T6O1OdcGGJO3aw3vQVC+9YS9upTYCfHUyC5j3qw==", - "bundleDependencies": [ - "deepmerge", - "npmlog", - "deep-diff" - ], - "dependencies": { - "@aws-cdk/integ-tests-alpha": "2.138.0-alpha.0", - "constructs": "^10.0.0", - "deep-diff": "^1.0.2", - "deepmerge": "^4.0.0", - "npmlog": "^7.0.0" - }, - "peerDependencies": { - "aws-cdk-lib": "^2.138.0", - "constructs": "^10.0.0" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/ansi-regex": { - "version": "5.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/aproba": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/are-we-there-yet": { - "version": "4.0.2", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/color-support": { - "version": "1.1.3", - "inBundle": true, - "license": "ISC", - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/console-control-strings": { - "version": "1.1.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/deep-diff": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/deepmerge": { - "version": "4.3.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/emoji-regex": { - "version": "8.0.0", - "inBundle": true, - "license": "MIT" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/gauge": { - "version": "5.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^4.0.1", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/has-unicode": { - "version": "2.0.1", - "inBundle": true, - "license": "ISC" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/npmlog": { - "version": "7.0.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/set-blocking": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/@aws-solutions-constructs/core/node_modules/signal-exit": { - "version": "4.1.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/string-width": { - "version": "4.2.3", - "inBundle": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/strip-ansi": { - "version": "6.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@aws-solutions-constructs/core/node_modules/wide-align": { - "version": "1.1.5", - "inBundle": true, - "license": "ISC", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dependencies": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", - "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.24.5", - "@babel/helpers": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", - "dependencies": { - "@babel/types": "^7.24.5", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", - "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.24.3", - "@babel/helper-simple-access": "^7.24.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/helper-validator-identifier": "^7.24.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", - "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", - "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", - "dependencies": { - "@babel/types": "^7.24.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", - "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", - "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", - "dependencies": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", - "debug": "^4.3.1", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", - "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", - "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/console/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", - "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/reporters": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-resolve-dependencies": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "jest-watcher": "^29.7.0", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", - "dev": true, - "dependencies": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", - "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", - "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", - "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/reporters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "dev": true, - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", - "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", - "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" }, "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mhlabs/cfn-diagram": { - "version": "1.1.40", - "resolved": "https://registry.npmjs.org/@mhlabs/cfn-diagram/-/cfn-diagram-1.1.40.tgz", - "integrity": "sha512-kKafq1aE2Ygupb0ump41k6V8UnTpTJVzFAxg7u6po62HpMa0q8xCAopG/f23er5bLZ/tfn8STtzzUDD00U6zvg==", - "dependencies": { - "@aws-sdk/client-cloudformation": "^3.445.0", - "@aws-sdk/credential-provider-sso": "^3.445.0", - "aws-icons-directory": "^0.0.6", - "cli-color": "^2.0.0", - "color-convert": "^2.0.1", - "color-hash": "^1.0.3", - "commander": "^7.1.0", - "fast-xml-parser": "^4.3.2", - "inquirer": "^8.2.0", - "jdom": "^3.1.11", - "jsdom": "^16.4.0", - "mxgraph": "^4.1.1", - "open": "^8.4.0", - "open-in-editor": "^2.2.0", - "temp-dir": "^2.0.0", - "yaml-cfn": "^0.2.3" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, - "bin": { - "cfn-dia": "index.js", - "cfn-diagram": "index.js" - } - }, - "node_modules/@mhlabs/cfn-diagram/node_modules/fast-xml-parser": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.3.6.tgz", - "integrity": "sha512-M2SovcRxD4+vC493Uc2GZVcZaj66CCJhWurC4viynVSTvrpErCShNcDz1lAho6n9REQKvL/ll4A4/fw6Y9z8nw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - }, - { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "peerDependenciesMeta": { + "node-notifier": { + "optional": true } - ], - "dependencies": { - "strnum": "^1.0.5" - }, - "bin": { - "fxparser": "src/cli/cli.js" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@slack/types": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@slack/types/-/types-2.11.0.tgz", - "integrity": "sha512-UlIrDWvuLaDly3QZhCPnwUSI/KYmV1N9LyhuH6EDKCRS1HWZhyTG3Ja46T3D0rYfqdltKYFXbJSSRPwZpwO0cQ==", - "engines": { - "node": ">= 12.13.0", - "npm": ">= 6.12.0" - } - }, - "node_modules/@slack/webhook": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@slack/webhook/-/webhook-7.0.2.tgz", - "integrity": "sha512-dsrO/ow6a6+xkLm/lZKbUNTsFJlBc679tD+qwlVTztsQkDxPLH6odM7FKALz1IHa+KpLX8HKUIPV13a7y7z29w==", - "dependencies": { - "@slack/types": "^2.9.0", - "@types/node": ">=18.0.0", - "axios": "^1.6.3" - }, - "engines": { - "node": ">= 18", - "npm": ">= 8.6.0" - } - }, - "node_modules/@smithy/abort-controller": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.2.0.tgz", - "integrity": "sha512-wRlta7GuLWpTqtFfGo+nZyOO1vEvewdNR1R4rTxpC8XU6vG/NDyrFBhwLZsqg1NUoR1noVaXJPC/7ZK47QCySw==", - "dependencies": { - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/chunked-blob-reader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", - "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@smithy/chunked-blob-reader-native": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", - "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", - "dependencies": { - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" } }, - "node_modules/@smithy/chunked-blob-reader-native/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@smithy/chunked-blob-reader-native/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@smithy/chunked-blob-reader-native/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@smithy/config-resolver": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.2.0.tgz", - "integrity": "sha512-fsiMgd8toyUba6n1WRmr+qACzXltpdDkPTAaDqc8QqPBUzO+/JKwL6bUBseHVi8tu9l+3JOK+tSf7cay+4B3LA==", + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^2.3.0", - "@smithy/types": "^2.12.0", - "@smithy/util-config-provider": "^2.3.0", - "@smithy/util-middleware": "^2.2.0", - "tslib": "^2.6.2" + "@sinclair/typebox": "^0.27.8" }, "engines": { - "node": ">=14.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/config-resolver/node_modules/@smithy/util-config-provider": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.3.0.tgz", - "integrity": "sha512-HZkzrRcuFN1k70RLqlNK4FnPXKOpkik1+4JaBoHNJn+RnJGYqaa3c5/+XtLOXhlKzlRgNvyaLieHTW2VwGN0VQ==", + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" }, "engines": { - "node": ">=14.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/core": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-1.4.2.tgz", - "integrity": "sha512-2fek3I0KZHWJlRLvRTqxTEri+qV0GRHrJIoLFuBMZB4EMg4WgeBGfF0X6abnrNYpq55KJ6R4D6x4f0vLnhzinA==", - "dependencies": { - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-retry": "^2.3.1", - "@smithy/middleware-serde": "^2.3.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/util-middleware": "^2.2.0", - "tslib": "^2.6.2" + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" }, "engines": { - "node": ">=14.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/credential-provider-imds": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.3.0.tgz", - "integrity": "sha512-BWB9mIukO1wjEOo1Ojgl6LrG4avcaC7T/ZP6ptmAaW4xluhSIPZhY+/PI5YKzlk+jsm+4sQZB45Bt1OfMeQa3w==", + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, "dependencies": { - "@smithy/node-config-provider": "^2.3.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "tslib": "^2.6.2" + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/eventstream-codec": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.0.0.tgz", - "integrity": "sha512-PUtyEA0Oik50SaEFCZ0WPVtF9tz/teze2fDptW6WRXl+RrEenH8UbEjudOz8iakiMl3lE3lCVqYf2Y+znL8QFQ==", - "dependencies": { - "@aws-crypto/crc32": "3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "tslib": "^2.6.2" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/eventstream-codec/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/eventstream-serde-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.0.tgz", - "integrity": "sha512-NB7AFiPN4NxP/YCAnrvYR18z2/ZsiHiF7VtG30gshO9GbFrIb1rC8ep4NGpJSWrz6P64uhPXeo4M0UsCLnZKqw==", + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@smithy/eventstream-serde-browser/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.0.tgz", - "integrity": "sha512-RUQG3vQ3LX7peqqHAbmayhgrF5aTilPnazinaSGF1P0+tgM3vvIRWPHmlLIz2qFqB9LqFIxditxc8O2Z6psrRw==", + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@smithy/eventstream-serde-config-resolver/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" }, "engines": { - "node": ">=16.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@smithy/eventstream-serde-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.0.tgz", - "integrity": "sha512-baRPdMBDMBExZXIUAoPGm/hntixjt/VFpU6+VmCyiYJYzRHRxoaI1MN+5XE+hIS8AJ2GCHLMFEIOLzq9xx1EgQ==", + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@smithy/eventstream-serde-node/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@smithy/eventstream-serde-universal": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.0.tgz", - "integrity": "sha512-HNFfShmotWGeAoW4ujP8meV9BZavcpmerDbPIjkJbxKbN8RsUcpRQ/2OyIxWNxXNH2GWCAxuSB7ynmIGJlQ3Dw==", + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@smithy/eventstream-codec": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=8" } }, - "node_modules/@smithy/eventstream-serde-universal/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dependencies": { - "tslib": "^2.6.2" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@smithy/fetch-http-handler": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.5.0.tgz", - "integrity": "sha512-BOWEBeppWhLn/no/JxUL/ghTfANTjT7kg3Ww2rPqTUY9R4yHPXxJ9JhMe3Z03LN3aPwiwlpDIUcVw1xDyHqEhw==", - "dependencies": { - "@smithy/protocol-http": "^3.3.0", - "@smithy/querystring-builder": "^2.2.0", - "@smithy/types": "^2.12.0", - "@smithy/util-base64": "^2.3.0", - "tslib": "^2.6.2" + "node": ">=6.0.0" } }, - "node_modules/@smithy/fetch-http-handler/node_modules/@smithy/querystring-builder": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.2.0.tgz", - "integrity": "sha512-L1kSeviUWL+emq3CUVSgdogoM/D9QMFaqxL/dd0X7PCNWmPXqt+ExtrBjqT0V7HLN03Vs9SuiLrG3zy3JGnE5A==", - "dependencies": { - "@smithy/types": "^2.12.0", - "@smithy/util-uri-escape": "^2.2.0", - "tslib": "^2.6.2" - }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "engines": { - "node": ">=14.0.0" + "node": ">=6.0.0" } }, - "node_modules/@smithy/fetch-http-handler/node_modules/@smithy/util-uri-escape": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.2.0.tgz", - "integrity": "sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA==", - "dependencies": { - "tslib": "^2.6.2" - }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "engines": { - "node": ">=14.0.0" + "node": ">=6.0.0" } }, - "node_modules/@smithy/hash-blob-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.0.0.tgz", - "integrity": "sha512-/Wbpdg+bwJvW7lxR/zpWAc1/x/YkcqguuF2bAzkJrvXriZu1vm8r+PUdE4syiVwQg7PPR2dXpi3CLBb9qRDaVQ==", - "dependencies": { - "@smithy/chunked-blob-reader": "^3.0.0", - "@smithy/chunked-blob-reader-native": "^3.0.0", - "@smithy/types": "^3.0.0", - "tslib": "^2.6.2" - } + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, - "node_modules/@smithy/hash-blob-browser/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@smithy/hash-node": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.2.0.tgz", - "integrity": "sha512-zLWaC/5aWpMrHKpoDF6nqpNtBhlAYKF/7+9yMN7GpdR8CzohnWfGtMznPybnwSS8saaXBMxIGwJqR4HmRp6b3g==", + "node_modules/@mhlabs/cfn-diagram": { + "version": "1.1.40", + "resolved": "https://registry.npmjs.org/@mhlabs/cfn-diagram/-/cfn-diagram-1.1.40.tgz", + "integrity": "sha512-kKafq1aE2Ygupb0ump41k6V8UnTpTJVzFAxg7u6po62HpMa0q8xCAopG/f23er5bLZ/tfn8STtzzUDD00U6zvg==", "dependencies": { - "@smithy/types": "^2.12.0", - "@smithy/util-buffer-from": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" + "@aws-sdk/client-cloudformation": "^3.445.0", + "@aws-sdk/credential-provider-sso": "^3.445.0", + "aws-icons-directory": "^0.0.6", + "cli-color": "^2.0.0", + "color-convert": "^2.0.1", + "color-hash": "^1.0.3", + "commander": "^7.1.0", + "fast-xml-parser": "^4.3.2", + "inquirer": "^8.2.0", + "jdom": "^3.1.11", + "jsdom": "^16.4.0", + "mxgraph": "^4.1.1", + "open": "^8.4.0", + "open-in-editor": "^2.2.0", + "temp-dir": "^2.0.0", + "yaml-cfn": "^0.2.3" }, - "engines": { - "node": ">=14.0.0" + "bin": { + "cfn-dia": "index.js", + "cfn-diagram": "index.js" } }, - "node_modules/@smithy/hash-stream-node": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.0.0.tgz", - "integrity": "sha512-J0i7de+EgXDEGITD4fxzmMX8CyCNETTIRXlxjMiNUvvu76Xn3GJ31wQR85ynlPk2wI1lqoknAFJaD1fiNDlbIA==", + "node_modules/@mhlabs/cfn-diagram/node_modules/fast-xml-parser": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.0.tgz", + "integrity": "sha512-kLY3jFlwIYwBNDojclKsNAC12sfD6NwW74QB2CoNGPvtVxjliYehVunB3HYyNi+n4Tt1dAcgwYvmKF/Z18flqg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + }, + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + ], "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "strnum": "^1.0.5" }, - "engines": { - "node": ">=16.0.0" + "bin": { + "fxparser": "src/cli/cli.js" } }, - "node_modules/@smithy/hash-stream-node/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=16.0.0" + "node": ">= 8" } }, - "node_modules/@smithy/hash-stream-node/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", - "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" - }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, "engines": { - "node": ">=16.0.0" + "node": ">= 8" } }, - "node_modules/@smithy/hash-stream-node/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "tslib": "^2.6.2" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">=16.0.0" + "node": ">= 8" } }, - "node_modules/@smithy/invalid-dependency": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.2.0.tgz", - "integrity": "sha512-nEDASdbKFKPXN2O6lOlTgrEEOO9NHIeO+HVvZnkqc8h5U9g3BIhWsvzFo+UcUbliMHvKNPD/zVxDrkP1Sbgp8Q==", + "node_modules/@shikijs/core": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.10.2.tgz", + "integrity": "sha512-hCtKSC0PNmidU+TVBUiddE0sF1QsOPVbBBRQlugsKy0QJBfSj9aIQQ/pNEIv58wwM/9cAlWG1yihi+5ovZfYmA==", + "peer": true, "dependencies": { - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" + "@types/hast": "^3.0.4" } }, - "node_modules/@smithy/is-array-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", - "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" + "type-detect": "4.0.8" } }, - "node_modules/@smithy/md5-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.0.tgz", - "integrity": "sha512-Tm0vrrVzjlD+6RCQTx7D3Ls58S3FUH1ZCtU1MIh/qQmaOo1H9lMN2as6CikcEwgattnA9SURSdoJJ27xMcEfMA==", + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" + "@sinonjs/commons": "^3.0.0" } }, - "node_modules/@smithy/md5-js/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", - "dependencies": { - "tslib": "^2.6.2" - }, + "node_modules/@slack/types": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/@slack/types/-/types-2.12.0.tgz", + "integrity": "sha512-yFewzUomYZ2BYaGJidPuIgjoYj5wqPDmi7DLSaGIkf+rCi4YZ2Z3DaiYIbz7qb/PL2NmamWjCvB7e9ArI5HkKg==", "engines": { - "node": ">=16.0.0" + "node": ">= 12.13.0", + "npm": ">= 6.12.0" } }, - "node_modules/@smithy/md5-js/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@slack/webhook": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@slack/webhook/-/webhook-7.0.2.tgz", + "integrity": "sha512-dsrO/ow6a6+xkLm/lZKbUNTsFJlBc679tD+qwlVTztsQkDxPLH6odM7FKALz1IHa+KpLX8HKUIPV13a7y7z29w==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", - "tslib": "^2.6.2" + "@slack/types": "^2.9.0", + "@types/node": ">=18.0.0", + "axios": "^1.6.3" }, "engines": { - "node": ">=16.0.0" + "node": ">= 18", + "npm": ">= 8.6.0" } }, - "node_modules/@smithy/md5-js/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/middleware-compression": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-compression/-/middleware-compression-2.2.0.tgz", - "integrity": "sha512-4NHl84M/Yz9fIQH+NckoAExUOr0D8tZ5ng6rtr5eMzHwa8/bRTg4kUnpZW7S4yw7jT1NXDZ66M8r04uFiT4Ccw==", + "node_modules/@smithy/chunked-blob-reader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", + "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "@smithy/util-config-provider": "^2.3.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "fflate": "0.8.1", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/middleware-compression/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "node_modules/@smithy/chunked-blob-reader-native": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", + "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", "dependencies": { + "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/middleware-compression/node_modules/@smithy/util-config-provider": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.3.0.tgz", - "integrity": "sha512-HZkzrRcuFN1k70RLqlNK4FnPXKOpkik1+4JaBoHNJn+RnJGYqaa3c5/+XtLOXhlKzlRgNvyaLieHTW2VwGN0VQ==", + "node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/middleware-content-length": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.2.0.tgz", - "integrity": "sha512-5bl2LG1Ah/7E5cMSC+q+h3IpVHMeOkG0yLRyQT1p2aMJkSrZG7RlXHPuAgb7EyaFeidKEnnd/fNaLLaKlHGzDQ==", + "node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", "dependencies": { - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/middleware-endpoint": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.5.1.tgz", - "integrity": "sha512-1/8kFp6Fl4OsSIVTWHnNjLnTL8IqpIb/D3sTSczrKFnrE9VMNWxnrRKNvpUHOJ6zpGD5f62TPm7+17ilTJpiCQ==", - "dependencies": { - "@smithy/middleware-serde": "^2.3.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", - "@smithy/url-parser": "^2.2.0", - "@smithy/util-middleware": "^2.2.0", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/middleware-retry": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.3.1.tgz", - "integrity": "sha512-P2bGufFpFdYcWvqpyqqmalRtwFUNUA8vHjJR5iGqbfR6mp65qKOLcUd6lTr4S9Gn/enynSrSf3p3FVgVAf6bXA==", - "dependencies": { - "@smithy/node-config-provider": "^2.3.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/service-error-classification": "^2.1.5", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-retry": "^2.2.0", - "tslib": "^2.6.2", - "uuid": "^9.0.1" - }, - "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/middleware-serde": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.3.0.tgz", - "integrity": "sha512-sIADe7ojwqTyvEQBe1nc/GXB9wdHhi9UwyX0lTyttmUWDJLP655ZYE1WngnNyXREme8I27KCaUhyhZWRXL0q7Q==", + "node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", "dependencies": { - "@smithy/types": "^2.12.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/middleware-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.2.0.tgz", - "integrity": "sha512-Qntc3jrtwwrsAC+X8wms8zhrTr0sFXnyEGhZd9sLtsJ/6gGQKFzNB+wWbOcpJd7BR8ThNCoKt76BuQahfMvpeA==", + "node_modules/@smithy/eventstream-codec": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz", + "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==", "dependencies": { - "@smithy/types": "^2.12.0", + "@aws-crypto/crc32": "5.2.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/node-config-provider": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.3.0.tgz", - "integrity": "sha512-0elK5/03a1JPWMDPaS726Iw6LpQg80gFut1tNpPfxFuChEEklo2yL823V94SpTZTxmKlXFtFgsP55uh3dErnIg==", + "node_modules/@smithy/eventstream-serde-browser": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.4.tgz", + "integrity": "sha512-Eo4anLZX6ltGJTZ5yJMc80gZPYYwBn44g0h7oFq6et+TYr5dUsTpIcDbz2evsOKIZhZ7zBoFWHtBXQ4QQeb5xA==", "dependencies": { - "@smithy/property-provider": "^2.2.0", - "@smithy/shared-ini-file-loader": "^2.4.0", - "@smithy/types": "^2.12.0", + "@smithy/eventstream-serde-universal": "^3.0.4", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/node-http-handler": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.5.0.tgz", - "integrity": "sha512-mVGyPBzkkGQsPoxQUbxlEfRjrj6FPyA3u3u2VXGr9hT8wilsoQdZdvKpMBFMB8Crfhv5dNkKHIW0Yyuc7eABqA==", + "node_modules/@smithy/eventstream-serde-config-resolver": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz", + "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==", "dependencies": { - "@smithy/abort-controller": "^2.2.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/querystring-builder": "^2.2.0", - "@smithy/types": "^2.12.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/node-http-handler/node_modules/@smithy/querystring-builder": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.2.0.tgz", - "integrity": "sha512-L1kSeviUWL+emq3CUVSgdogoM/D9QMFaqxL/dd0X7PCNWmPXqt+ExtrBjqT0V7HLN03Vs9SuiLrG3zy3JGnE5A==", + "node_modules/@smithy/eventstream-serde-node": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.4.tgz", + "integrity": "sha512-mjlG0OzGAYuUpdUpflfb9zyLrBGgmQmrobNT8b42ZTsGv/J03+t24uhhtVEKG/b2jFtPIHF74Bq+VUtbzEKOKg==", "dependencies": { - "@smithy/types": "^2.12.0", - "@smithy/util-uri-escape": "^2.2.0", + "@smithy/eventstream-serde-universal": "^3.0.4", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/node-http-handler/node_modules/@smithy/util-uri-escape": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.2.0.tgz", - "integrity": "sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA==", + "node_modules/@smithy/eventstream-serde-universal": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.4.tgz", + "integrity": "sha512-Od9dv8zh3PgOD7Vj4T3HSuox16n0VG8jJIM2gvKASL6aCtcS8CfHZDWe1Ik3ZXW6xBouU+45Q5wgoliWDZiJ0A==", "dependencies": { + "@smithy/eventstream-codec": "^3.1.2", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/property-provider": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.2.0.tgz", - "integrity": "sha512-+xiil2lFhtTRzXkx8F053AV46QnIw6e7MV8od5Mi68E1ICOjCeCHw2XfLnDEUHnT9WGUIkwcqavXjfwuJbGlpg==", + "node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", "dependencies": { - "@smithy/types": "^2.12.0", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/protocol-http": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.3.0.tgz", - "integrity": "sha512-Xy5XK1AFWW2nlY/biWZXu6/krgbaf2dg0q492D8M5qthsnU2H+UgFeZLbM76FnH7s6RO/xhQRkj+T6KBO3JzgQ==", + "node_modules/@smithy/hash-blob-browser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz", + "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==", "dependencies": { - "@smithy/types": "^2.12.0", + "@smithy/chunked-blob-reader": "^3.0.0", + "@smithy/chunked-blob-reader-native": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/querystring-builder": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.0.tgz", - "integrity": "sha512-bW8Fi0NzyfkE0TmQphDXr1AmBDbK01cA4C1Z7ggwMAU5RDz5AAv/KmoRwzQAS0kxXNf/D2ALTEgwK0U2c4LtRg==", + "node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", "dependencies": { - "@smithy/types": "^3.0.0", - "@smithy/util-uri-escape": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/querystring-builder/node_modules/@smithy/types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "node_modules/@smithy/hash-stream-node": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz", + "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==", "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/querystring-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.2.0.tgz", - "integrity": "sha512-BvHCDrKfbG5Yhbpj4vsbuPV2GgcpHiAkLeIlcA1LtfpMz3jrqizP1+OguSNSj1MwBHEiN+jwNisXLGdajGDQJA==", + "node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", "dependencies": { - "@smithy/types": "^2.12.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/service-error-classification": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.1.5.tgz", - "integrity": "sha512-uBDTIBBEdAQryvHdc5W8sS5YX7RQzF683XrHePVdFmAgKiMofU15FLSM0/HU03hKTnazdNRFa0YHS7+ArwoUSQ==", + "node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", "dependencies": { - "@smithy/types": "^2.12.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/shared-ini-file-loader": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.4.0.tgz", - "integrity": "sha512-WyujUJL8e1B6Z4PBfAqC/aGY1+C7T0w20Gih3yrvJSk97gpiVfB+y7c46T4Nunk+ZngLq0rOIdeVeIklk0R3OA==", + "node_modules/@smithy/md5-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz", + "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==", "dependencies": { - "@smithy/types": "^2.12.0", + "@smithy/types": "^3.3.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/signature-v4": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.3.0.tgz", - "integrity": "sha512-ui/NlpILU+6HAQBfJX8BBsDXuKSNrjTSuOYArRblcrErwKFutjrCNb/OExfVRyj9+26F9J+ZmfWT+fKWuDrH3Q==", + "node_modules/@smithy/middleware-compression": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-compression/-/middleware-compression-3.0.4.tgz", + "integrity": "sha512-wxqn17tgnepjqmt0OyQA/cJnQYY2SpTx2kSKxMo71vVhomIUFPOVkwYSJY27OQWomPWy5E8va2kLfwi8Ap9wKQ==", "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "@smithy/types": "^2.12.0", - "@smithy/util-hex-encoding": "^2.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-uri-escape": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", + "fflate": "0.8.1", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", "dependencies": { + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/util-hex-encoding": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.2.0.tgz", - "integrity": "sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ==", + "node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", "dependencies": { + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/util-uri-escape": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.2.0.tgz", - "integrity": "sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA==", - "dependencies": { - "tslib": "^2.6.2" + "node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/smithy-client": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.5.1.tgz", - "integrity": "sha512-jrbSQrYCho0yDaaf92qWgd+7nAeap5LtHTI51KXqmpIFCceKU3K9+vIVTUH72bOJngBMqa4kyu1VJhRcSrk/CQ==", - "dependencies": { - "@smithy/middleware-endpoint": "^2.5.1", - "@smithy/middleware-stack": "^2.2.0", - "@smithy/protocol-http": "^3.3.0", - "@smithy/types": "^2.12.0", - "@smithy/util-stream": "^2.2.0", + "node_modules/@smithy/middleware-retry/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/smithy-client/node_modules/@smithy/util-hex-encoding": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.2.0.tgz", - "integrity": "sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ==", + "node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/smithy-client/node_modules/@smithy/util-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.2.0.tgz", - "integrity": "sha512-17faEXbYWIRst1aU9SvPZyMdWmqIrduZjVOqCPMIsWFNxs5yQQgFrJL6b2SdiCzyW9mJoDjFtgi53xx7EH+BXA==", + "node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", "dependencies": { - "@smithy/fetch-http-handler": "^2.5.0", - "@smithy/node-http-handler": "^2.5.0", - "@smithy/types": "^2.12.0", - "@smithy/util-base64": "^2.3.0", - "@smithy/util-buffer-from": "^2.2.0", - "@smithy/util-hex-encoding": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/types": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.12.0.tgz", - "integrity": "sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==", + "node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", "dependencies": { + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/url-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.2.0.tgz", - "integrity": "sha512-hoA4zm61q1mNTpksiSWp2nEl1dt3j726HdRhiNgVJQMj7mLp7dprtF57mOB6JvEk/x9d2bsuL5hlqZbBuHQylQ==", + "node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", "dependencies": { - "@smithy/querystring-parser": "^2.2.0", - "@smithy/types": "^2.12.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-base64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.3.0.tgz", - "integrity": "sha512-s3+eVwNeJuXUwuMbusncZNViuhv2LjVJ1nMwTqSA0XAC7gjKhqqxRdJPhR8+YrkoZ9IiIbFk/yK6ACe/xlF+hw==", + "node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", "dependencies": { - "@smithy/util-buffer-from": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-body-length-browser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.2.0.tgz", - "integrity": "sha512-dtpw9uQP7W+n3vOtx0CfBD5EWd7EPdIdsQnWTDoFf77e3VUf05uA7R7TGipIo8e4WL2kuPdnsr3hMQn9ziYj5w==", + "node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-body-length-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.3.0.tgz", - "integrity": "sha512-ITWT1Wqjubf2CJthb0BuT9+bpzBfXeMokH/AAa5EJQgbv9aPMVfnM76iFIZVFf50hYXGbtiV71BHAthNWd6+dw==", + "node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-buffer-from": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "tslib": "^2.6.2" + "@smithy/types": "^3.3.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-buffer-from/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", "dependencies": { + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-config-provider": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", - "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", "dependencies": { + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-defaults-mode-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.2.1.tgz", - "integrity": "sha512-RtKW+8j8skk17SYowucwRUjeh4mCtnm5odCL0Lm2NtHQBsYKrNW0od9Rhopu9wF1gHMfHeWF7i90NwBz/U22Kw==", + "node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", "dependencies": { - "@smithy/property-provider": "^2.2.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", - "bowser": "^2.11.0", + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", "tslib": "^2.6.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-defaults-mode-node": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.3.1.tgz", - "integrity": "sha512-vkMXHQ0BcLFysBMWgSBLSk3+leMpFSyyFj8zQtv5ZyUBx8/owVh1/pPEkzmW/DR/Gy/5c8vjLDD9gZjXNKbrpA==", - "dependencies": { - "@smithy/config-resolver": "^2.2.0", - "@smithy/credential-provider-imds": "^2.3.0", - "@smithy/node-config-provider": "^2.3.0", - "@smithy/property-provider": "^2.2.0", - "@smithy/smithy-client": "^2.5.1", - "@smithy/types": "^2.12.0", + "node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "dependencies": { "tslib": "^2.6.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-endpoints": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-1.2.0.tgz", - "integrity": "sha512-BuDHv8zRjsE5zXd3PxFXFknzBG3owCpjq8G3FcsXW3CykYXuEqM3nTSsmLzw5q+T12ZYuDlVUZKBdpNbhVtlrQ==", + "node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", "dependencies": { - "@smithy/node-config-provider": "^2.3.0", - "@smithy/types": "^2.12.0", + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">= 14.0.0" } }, - "node_modules/@smithy/util-hex-encoding": { + "node_modules/@smithy/util-base64": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", - "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-middleware": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.2.0.tgz", - "integrity": "sha512-L1qpleXf9QD6LwLCJ5jddGkgWyuSvWBkJwWAZ6kFkdifdso+sk3L3O1HdmPvCdnCK3IS4qWyPxev01QMnfHSBw==", + "node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", "dependencies": { - "@smithy/types": "^2.12.0", "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@smithy/util-retry": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.2.0.tgz", - "integrity": "sha512-q9+pAFPTfftHXRytmZ7GzLFFrEGavqapFc06XxzZFcSIGERXMerXxCitjOG1prVDR9QdjqotF40SWvbqcCpf8g==", + "node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", "dependencies": { - "@smithy/service-error-classification": "^2.1.5", - "@smithy/types": "^2.12.0", "tslib": "^2.6.2" }, "engines": { - "node": ">= 14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.1.tgz", - "integrity": "sha512-7F7VNNhAsfMRA8I986YdOY5fE0/T1/ZjFF6OLsqkvQVNP3vZ/szYDfGCyphb7ioA09r32K/0qbSFfNFU68aSzA==", + "node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", "dependencies": { - "@smithy/fetch-http-handler": "^3.0.1", - "@smithy/node-http-handler": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@smithy/is-array-buffer": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/abort-controller": { + "node_modules/@smithy/util-config-provider": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", "dependencies": { - "@smithy/types": "^3.0.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.0.1.tgz", - "integrity": "sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==", + "node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", "dependencies": { - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", - "@smithy/util-base64": "^3.0.0", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/node-http-handler": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.0.0.tgz", - "integrity": "sha512-3trD4r7NOMygwLbUJo4eodyQuypAWr7uvPnebNJ9a70dQhVn+US8j/lCnvoJS6BXfZeF7PkkkI0DemVJw+n+eQ==", + "node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", "dependencies": { - "@smithy/abort-controller": "^3.0.0", - "@smithy/protocol-http": "^4.0.0", - "@smithy/querystring-builder": "^3.0.0", - "@smithy/types": "^3.0.0", + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=16.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/protocol-http": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.0.tgz", - "integrity": "sha512-qOQZOEI2XLWRWBO9AgIYuHuqjZ2csyr8/IlgFDHDNuIgLAMRx2Bl8ck5U5D6Vh9DPdoaVpuzwWMa0xcdL4O/AQ==", + "node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", "dependencies": { - "@smithy/types": "^3.0.0", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/types": { + "node_modules/@smithy/util-hex-encoding": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.0.0.tgz", - "integrity": "sha512-VvWuQk2RKFuOr98gFhjca7fkBS+xLLURT8bUjk5XQoV0ZLm7WPwWPPY3/AwzTLuUBDeoKDCthfe1AsTUWaSEhw==", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", "dependencies": { "tslib": "^2.6.2" }, @@ -10174,37 +6640,43 @@ "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/util-base64": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", "dependencies": { - "@smithy/util-buffer-from": "^3.0.0", - "@smithy/util-utf8": "^3.0.0", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/util-buffer-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", "dependencies": { - "@smithy/is-array-buffer": "^3.0.0", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" } }, - "node_modules/@smithy/util-stream/node_modules/@smithy/util-utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", "dependencies": { + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, "engines": { @@ -10223,28 +6695,28 @@ } }, "node_modules/@smithy/util-utf8": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", - "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", "dependencies": { - "@smithy/util-buffer-from": "^2.2.0", + "@smithy/util-buffer-from": "^3.0.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, "node_modules/@smithy/util-waiter": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-2.2.0.tgz", - "integrity": "sha512-IHk53BVw6MPMi2Gsn+hCng8rFA3ZmR3Rk7GllxDUW9qFJl/hiSvskn7XldkECapQVkIg/1dHpMAxI9xSTaLLSA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz", + "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==", "dependencies": { - "@smithy/abort-controller": "^2.2.0", - "@smithy/types": "^2.12.0", + "@smithy/abort-controller": "^3.1.1", + "@smithy/types": "^3.3.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, "node_modules/@tootallnate/once": { @@ -10280,9 +6752,9 @@ "dev": true }, "node_modules/@types/aws-lambda": { - "version": "8.10.137", - "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.137.tgz", - "integrity": "sha512-YNFwzVarXAOXkjuFxONyDw1vgRNzyH8AuyN19s0bM+ChSu/bzxb5XPxYFLXoqoM+tvgzwR3k7fXcEOW125yJxg==" + "version": "8.10.140", + "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.140.tgz", + "integrity": "sha512-4Dh3dk2TUcbdfHrX0Al90mNGJDvA9NBiTQPzbrjGi/dLxzKCGOYgT8YQ47jUKNFALkAJAadifq0pzyjIUlhVhg==" }, "node_modules/@types/babel__core": { "version": "7.20.5", @@ -10317,9 +6789,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", "dev": true, "dependencies": { "@babel/types": "^7.20.7" @@ -10334,6 +6806,15 @@ "@types/node": "*" } }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "peer": true, + "dependencies": { + "@types/unist": "*" + } + }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", @@ -10359,14 +6840,14 @@ } }, "node_modules/@types/lodash": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", - "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==" + "version": "4.17.6", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.6.tgz", + "integrity": "sha512-OpXEVoCKSS3lQqjx9GGGOapBeuW5eUboYHRlHP9urXPX25IKZ6AnP5ZRxtVf63iieUbsHxLn8NQ5Nlftc6yzAA==" }, "node_modules/@types/node": { - "version": "20.12.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", - "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", "dependencies": { "undici-types": "~5.26.4" } @@ -10377,10 +6858,16 @@ "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, + "node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==", + "peer": true + }, "node_modules/@types/uuid": { - "version": "9.0.8", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz", - "integrity": "sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==" + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==" }, "node_modules/@types/yargs": { "version": "17.0.32", @@ -10398,16 +6885,16 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.9.0.tgz", - "integrity": "sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.14.1.tgz", + "integrity": "sha512-aAJd6bIf2vvQRjUG3ZkNXkmBpN+J7Wd0mfQiiVCJMu9Z5GcZZdcc0j8XwN/BM97Fl7e3SkTXODSk4VehUv7CGw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.9.0", - "@typescript-eslint/type-utils": "7.9.0", - "@typescript-eslint/utils": "7.9.0", - "@typescript-eslint/visitor-keys": "7.9.0", + "@typescript-eslint/scope-manager": "7.14.1", + "@typescript-eslint/type-utils": "7.14.1", + "@typescript-eslint/utils": "7.14.1", + "@typescript-eslint/visitor-keys": "7.14.1", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -10430,16 +6917,17 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.9.0.tgz", - "integrity": "sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==", + "node_modules/@typescript-eslint/parser": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.14.1.tgz", + "integrity": "sha512-8lKUOebNLcR0D7RvlcloOacTOWzOqemWEWkKSVpMZVF/XVcwjPR+3MD08QzbW9TCGJ+DwIc6zUSGZ9vd8cO1IA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.9.0", - "@typescript-eslint/utils": "7.9.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "@typescript-eslint/scope-manager": "7.14.1", + "@typescript-eslint/types": "7.14.1", + "@typescript-eslint/typescript-estree": "7.14.1", + "@typescript-eslint/visitor-keys": "7.14.1", + "debug": "^4.3.4" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -10457,16 +6945,14 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.9.0.tgz", - "integrity": "sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.14.1.tgz", + "integrity": "sha512-gPrFSsoYcsffYXTOZ+hT7fyJr95rdVe4kGVX1ps/dJ+DfmlnjFN/GcMxXcVkeHDKqsq6uAcVaQaIi3cFffmAbA==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.9.0", - "@typescript-eslint/types": "7.9.0", - "@typescript-eslint/typescript-estree": "7.9.0" + "@typescript-eslint/types": "7.14.1", + "@typescript-eslint/visitor-keys": "7.14.1" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -10474,22 +6960,18 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" } }, - "node_modules/@typescript-eslint/parser": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.9.0.tgz", - "integrity": "sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==", + "node_modules/@typescript-eslint/type-utils": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.14.1.tgz", + "integrity": "sha512-/MzmgNd3nnbDbOi3LfasXWWe292+iuo+umJ0bCCMCPc1jLO/z2BQmWUUUXvXLbrQey/JgzdF/OV+I5bzEGwJkQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.9.0", - "@typescript-eslint/types": "7.9.0", - "@typescript-eslint/typescript-estree": "7.9.0", - "@typescript-eslint/visitor-keys": "7.9.0", - "debug": "^4.3.4" + "@typescript-eslint/typescript-estree": "7.14.1", + "@typescript-eslint/utils": "7.14.1", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -10507,27 +6989,10 @@ } } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.9.0.tgz", - "integrity": "sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.9.0", - "@typescript-eslint/visitor-keys": "7.9.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, "node_modules/@typescript-eslint/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.9.0.tgz", - "integrity": "sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.14.1.tgz", + "integrity": "sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -10538,13 +7003,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.9.0.tgz", - "integrity": "sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.14.1.tgz", + "integrity": "sha512-k5d0VuxViE2ulIO6FbxxSZaxqDVUyMbXcidC8rHvii0I56XZPv8cq+EhMns+d/EVIL41sMXqRbK3D10Oza1bbA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.9.0", - "@typescript-eslint/visitor-keys": "7.9.0", + "@typescript-eslint/types": "7.14.1", + "@typescript-eslint/visitor-keys": "7.14.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -10565,13 +7030,35 @@ } } }, + "node_modules/@typescript-eslint/utils": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.14.1.tgz", + "integrity": "sha512-CMmVVELns3nak3cpJhZosDkm63n+DwBlDX8g0k4QUa9BMnF+lH2lr3d130M1Zt1xxmB3LLk3NV7KQCq86ZBBhQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "7.14.1", + "@typescript-eslint/types": "7.14.1", + "@typescript-eslint/typescript-estree": "7.14.1" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.9.0.tgz", - "integrity": "sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.14.1.tgz", + "integrity": "sha512-Crb+F75U1JAEtBeQGxSKwI60hZmmzaqA3z9sYsVm8X7W5cwLEm5bRe0/uXS6+MR/y8CVpKSR/ontIAIEPFcEkA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.9.0", + "@typescript-eslint/types": "7.14.1", "eslint-visitor-keys": "^3.4.3" }, "engines": { @@ -10595,9 +7082,9 @@ "deprecated": "Use your platform's native atob() and btoa() methods instead" }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", "bin": { "acorn": "bin/acorn" }, @@ -10643,9 +7130,9 @@ } }, "node_modules/adaptivecards": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/adaptivecards/-/adaptivecards-3.0.3.tgz", - "integrity": "sha512-9DMTZWpttEPcFJMS7TUjeMZpyp808ZVJUNFXBRaywIWp98+CJfr+LRTeQZQXh+o1ZshuEjQwiLavKIe9DsLjPQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/adaptivecards/-/adaptivecards-3.0.4.tgz", + "integrity": "sha512-9gloqhEFpeinQta+UouODbVnGYKxGWRVK918pslhdx3lUyDJcOCfcX6mzDX3Csc47c5hnsNxKXNPtjs6wbazQQ==", "peerDependencies": { "swiper": "^8.2.6" } @@ -10699,12 +7186,6 @@ "node": ">=8" } }, - "node_modules/ansi-sequence-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", - "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", - "peer": true - }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -10793,9 +7274,9 @@ } }, "node_modules/aws-cdk": { - "version": "2.142.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.142.0.tgz", - "integrity": "sha512-vrEO02gY2G+38GIbYpYyR9/+KZV2ZE0MgGG3a515IkU6lHU3CkebxIgsmO4gHwFXNsePwcnAq3HQXhCS8SfXmw==", + "version": "2.148.0", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.148.0.tgz", + "integrity": "sha512-nuCWY8I0xkIz7B2LjIL4h/xLHWTFhINL8i2fdA0BPq8t0byhLaNw5wggvztDjWH5xq5I1DM3laiv4/q5S21Xrg==", "dev": true, "bin": { "cdk": "bin/cdk" @@ -10808,9 +7289,9 @@ } }, "node_modules/aws-cdk-lib": { - "version": "2.142.0", - "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.142.0.tgz", - "integrity": "sha512-WQc+1jk6mC3QrJnWyvZCmjQHcBcsrhSP3rCqLVvDcjOiZIvCRUHXDtkVmB5iUgaf2RhPu15sPwYegkCPpa7afQ==", + "version": "2.148.0", + "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.148.0.tgz", + "integrity": "sha512-Pa0pyIHlhnsqtMkPJS3tnptYhoOSNDOgoFurNB4Qfa0vnAkjYQ+JKQkR1tNNr8+UtO9jUfXRklQgjEqlFlrgBA==", "bundleDependencies": [ "@balena/dockerignore", "case", @@ -10836,7 +7317,7 @@ "mime-types": "^2.1.35", "minimatch": "^3.1.2", "punycode": "^2.3.1", - "semver": "^7.6.0", + "semver": "^7.6.2", "table": "^6.8.2", "yaml": "1.10.2" }, @@ -10853,7 +7334,7 @@ "license": "Apache-2.0" }, "node_modules/aws-cdk-lib/node_modules/ajv": { - "version": "8.13.0", + "version": "8.16.0", "inBundle": true, "license": "MIT", "dependencies": { @@ -11013,17 +7494,6 @@ "inBundle": true, "license": "MIT" }, - "node_modules/aws-cdk-lib/node_modules/lru-cache": { - "version": "6.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/aws-cdk-lib/node_modules/mime-db": { "version": "1.52.0", "inBundle": true, @@ -11071,12 +7541,9 @@ } }, "node_modules/aws-cdk-lib/node_modules/semver": { - "version": "7.6.0", + "version": "7.6.2", "inBundle": true, "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -11155,11 +7622,6 @@ "punycode": "^2.1.0" } }, - "node_modules/aws-cdk-lib/node_modules/yallist": { - "version": "4.0.0", - "inBundle": true, - "license": "ISC" - }, "node_modules/aws-cdk-lib/node_modules/yaml": { "version": "1.10.2", "inBundle": true, @@ -11193,9 +7655,9 @@ "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==" }, "node_modules/aws-sdk": { - "version": "2.1621.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1621.0.tgz", - "integrity": "sha512-v6rxF1u0GpQG1Y9Wul9iaqulSV2uEnp0kHKd6/lZcvEgTYhtJ8N0hOLfqRSWHjH5PaIa46hR9zSAp51r8DJ/OA==", + "version": "2.1655.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1655.0.tgz", + "integrity": "sha512-Tec0/ZHK8ES6NvAEJhgEm3znyoPb4QUuyQZ2RdvbNTbpJDbeeDuu4BaCAR5HbEVXREVk1/8OBDMsWW1B5lkcww==", "hasInstallScript": true, "dependencies": { "buffer": "4.9.2", @@ -11222,9 +7684,9 @@ } }, "node_modules/axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz", + "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -11461,12 +7923,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -11478,9 +7940,9 @@ "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.23.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", + "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", "dev": true, "funding": [ { @@ -11497,10 +7959,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", + "caniuse-lite": "^1.0.30001629", + "electron-to-chromium": "^1.4.796", "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "update-browserslist-db": "^1.0.16" }, "bin": { "browserslist": "cli.js" @@ -11583,9 +8045,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001620", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz", - "integrity": "sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==", + "version": "1.0.30001640", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001640.tgz", + "integrity": "sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==", "dev": true, "funding": [ { @@ -11603,21 +8065,21 @@ ] }, "node_modules/cdk-sops-secrets": { - "version": "1.8.7", - "resolved": "https://registry.npmjs.org/cdk-sops-secrets/-/cdk-sops-secrets-1.8.7.tgz", - "integrity": "sha512-nNmwB9zZ+GGgG3DS2Djd7LGboN8J7el20D6wiAUEJR1v8cdaqVPmX0OW+9eSm6P+jJT2OH7tCywh25LQ9ZE8hg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/cdk-sops-secrets/-/cdk-sops-secrets-1.12.0.tgz", + "integrity": "sha512-bQAX9EFMPKPTHmLFx/fZqBN0HoqukP4gY/PXnLlFn6rpyzM2wU8lmtxoNm9VTD+Y4W0H9J2gQF5hFtzXp+YQeg==", "peerDependencies": { - "aws-cdk-lib": "^2.1.0", + "aws-cdk-lib": "^2.144.0", "constructs": "^10.0.5" } }, "node_modules/cfonts": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cfonts/-/cfonts-3.2.0.tgz", - "integrity": "sha512-CFGxRY6aBuOgK85bceCpmMMhuyO6IwcAyyeapB//DtRzm7NbAEsDuuZzBoQxVonz+C2BmZ3swqB/YgcmW+rh3A==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/cfonts/-/cfonts-3.3.0.tgz", + "integrity": "sha512-RlVxeEw2FXWI5Bs9LD0/Ef3bsQIc9m6lK/DINN20HIW0Y0YHUO2jjy88cot9YKZITiRTCdWzTfLmTyx47HeSLA==", "dependencies": { "supports-color": "^8", - "window-size": "^1.1.1" + "window-size": "^1" }, "bin": { "cfonts": "bin/index.js" @@ -11676,7 +8138,6 @@ "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, "funding": [ { "type": "github", @@ -11912,8 +8373,7 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, "node_modules/constructs": { "version": "10.3.0", @@ -12060,9 +8520,9 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "dependencies": { "ms": "2.1.2" }, @@ -12104,7 +8564,6 @@ "version": "4.3.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -12244,9 +8703,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.772", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.772.tgz", - "integrity": "sha512-jFfEbxR/abTTJA3ci+2ok1NTuOBBtB4jH+UT6PUmRN+DY3WSD4FFRsgoVQ+QNIJ0T7wrXwzsWCI2WKC46b++2A==", + "version": "1.4.818", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.818.tgz", + "integrity": "sha512-eGvIk2V0dGImV9gWLq8fDfTTsCAeMDwZqEPMr+jMInxZdnp9Us8UpovYpRCf9NQ7VOFgrN2doNSgvISbsbNpxA==", "dev": true }, "node_modules/emittery": { @@ -12266,6 +8725,18 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -12342,6 +8813,44 @@ "es6-symbol": "^3.1.1" } }, + "node_modules/esbuild": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", + "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.0", + "@esbuild/android-arm": "0.23.0", + "@esbuild/android-arm64": "0.23.0", + "@esbuild/android-x64": "0.23.0", + "@esbuild/darwin-arm64": "0.23.0", + "@esbuild/darwin-x64": "0.23.0", + "@esbuild/freebsd-arm64": "0.23.0", + "@esbuild/freebsd-x64": "0.23.0", + "@esbuild/linux-arm": "0.23.0", + "@esbuild/linux-arm64": "0.23.0", + "@esbuild/linux-ia32": "0.23.0", + "@esbuild/linux-loong64": "0.23.0", + "@esbuild/linux-mips64el": "0.23.0", + "@esbuild/linux-ppc64": "0.23.0", + "@esbuild/linux-riscv64": "0.23.0", + "@esbuild/linux-s390x": "0.23.0", + "@esbuild/linux-x64": "0.23.0", + "@esbuild/netbsd-x64": "0.23.0", + "@esbuild/openbsd-arm64": "0.23.0", + "@esbuild/openbsd-x64": "0.23.0", + "@esbuild/sunos-x64": "0.23.0", + "@esbuild/win32-arm64": "0.23.0", + "@esbuild/win32-ia32": "0.23.0", + "@esbuild/win32-x64": "0.23.0" + } + }, "node_modules/escalade": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", @@ -12380,16 +8889,16 @@ } }, "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -12869,9 +9378,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -12959,8 +9468,7 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { "version": "2.3.2", @@ -13045,7 +9553,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, + "deprecated": "Glob versions prior to v9 are no longer supported", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -13082,7 +9590,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -13092,7 +9599,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -13314,7 +9820,6 @@ "version": "5.3.1", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, "engines": { "node": ">= 4" } @@ -13358,7 +9863,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, "engines": { "node": ">=0.8.19" } @@ -13367,7 +9871,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -13492,12 +9996,15 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -13684,8 +10191,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", @@ -13697,9 +10203,9 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, "dependencies": { "@babel/core": "^7.23.9", @@ -15015,8 +11521,7 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -15042,12 +11547,6 @@ "node": ">=6" } }, - "node_modules/jsonc-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==", - "peer": true - }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -15105,6 +11604,15 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "peer": true, + "dependencies": { + "uc.micro": "^2.0.0" + } + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -15250,31 +11758,51 @@ "tmpl": "1.0.5" } }, - "node_modules/marked": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", - "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "node_modules/markdown-it": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", "peer": true, - "bin": { - "marked": "bin/marked.js" + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" }, - "engines": { - "node": ">= 12" + "bin": { + "markdown-it": "bin/markdown-it.mjs" } }, + "node_modules/markdown-it/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "peer": true + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "peer": true + }, "node_modules/memoizee": { - "version": "0.4.15", - "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", - "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", + "version": "0.4.17", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.17.tgz", + "integrity": "sha512-DGqD7Hjpi/1or4F/aYAspXKNm5Yili0QDAFAY4QYvpqpgiY6+1jOfqpmByzjxbWd/T9mChbCArXAbDAsTm5oXA==", "dependencies": { - "d": "^1.0.1", - "es5-ext": "^0.10.53", + "d": "^1.0.2", + "es5-ext": "^0.10.64", "es6-weak-map": "^2.0.3", "event-emitter": "^0.3.5", "is-promise": "^2.2.2", "lru-queue": "^0.1.0", "next-tick": "^1.1.0", "timers-ext": "^0.1.7" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/merge-stream": { @@ -15293,12 +11821,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -15333,9 +11861,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -15395,9 +11923,9 @@ } }, "node_modules/npm": { - "version": "10.8.0", - "resolved": "https://registry.npmjs.org/npm/-/npm-10.8.0.tgz", - "integrity": "sha512-wh93uRczgp7HDnPMiLXcCkv2hagdJS0zJ9KT/31d0FoXP02+qgN2AOwpaW85fxRWkinl2rELfPw+CjBXW48/jQ==", + "version": "10.8.1", + "resolved": "https://registry.npmjs.org/npm/-/npm-10.8.1.tgz", + "integrity": "sha512-Dp1C6SvSMYQI7YHq/y2l94uvI+59Eqbu1EpuKQHQ8p16txXRuRit5gH3Lnaagk2aXDIjg/Iru9pd05bnneKgdw==", "bundleDependencies": [ "@isaacs/string-locale-compare", "@npmcli/arborist", @@ -15470,15 +11998,15 @@ ], "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/arborist": "^7.5.2", - "@npmcli/config": "^8.3.2", + "@npmcli/arborist": "^7.5.3", + "@npmcli/config": "^8.3.3", "@npmcli/fs": "^3.1.1", "@npmcli/map-workspaces": "^3.0.6", - "@npmcli/package-json": "^5.1.0", + "@npmcli/package-json": "^5.1.1", "@npmcli/promise-spawn": "^7.0.2", "@npmcli/redact": "^2.0.0", "@npmcli/run-script": "^8.1.0", - "@sigstore/tuf": "^2.3.3", + "@sigstore/tuf": "^2.3.4", "abbrev": "^2.0.0", "archy": "~1.0.0", "cacache": "^18.0.3", @@ -15487,24 +12015,24 @@ "cli-columns": "^4.0.0", "fastest-levenshtein": "^1.0.16", "fs-minipass": "^3.0.3", - "glob": "^10.3.15", + "glob": "^10.4.1", "graceful-fs": "^4.2.11", "hosted-git-info": "^7.0.2", - "ini": "^4.1.2", + "ini": "^4.1.3", "init-package-json": "^6.0.3", - "is-cidr": "^5.0.5", + "is-cidr": "^5.1.0", "json-parse-even-better-errors": "^3.0.2", "libnpmaccess": "^8.0.6", - "libnpmdiff": "^6.1.2", - "libnpmexec": "^8.1.1", - "libnpmfund": "^5.0.10", + "libnpmdiff": "^6.1.3", + "libnpmexec": "^8.1.2", + "libnpmfund": "^5.0.11", "libnpmhook": "^10.0.5", "libnpmorg": "^6.0.6", - "libnpmpack": "^7.0.2", - "libnpmpublish": "^9.0.8", - "libnpmsearch": "^7.0.5", + "libnpmpack": "^7.0.3", + "libnpmpublish": "^9.0.9", + "libnpmsearch": "^7.0.6", "libnpmteam": "^6.0.5", - "libnpmversion": "^6.0.2", + "libnpmversion": "^6.0.3", "make-fetch-happen": "^13.0.1", "minimatch": "^9.0.4", "minipass": "^7.1.1", @@ -15641,7 +12169,7 @@ } }, "node_modules/npm/node_modules/@npmcli/arborist": { - "version": "7.5.2", + "version": "7.5.3", "inBundle": true, "license": "ISC", "dependencies": { @@ -15689,7 +12217,7 @@ } }, "node_modules/npm/node_modules/@npmcli/config": { - "version": "8.3.2", + "version": "8.3.3", "inBundle": true, "license": "ISC", "dependencies": { @@ -15796,7 +12324,7 @@ } }, "node_modules/npm/node_modules/@npmcli/package-json": { - "version": "5.1.0", + "version": "5.1.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -15868,11 +12396,11 @@ } }, "node_modules/npm/node_modules/@sigstore/bundle": { - "version": "2.3.1", + "version": "2.3.2", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.1" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -15895,13 +12423,13 @@ } }, "node_modules/npm/node_modules/@sigstore/sign": { - "version": "2.3.1", + "version": "2.3.2", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.0", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.1", + "@sigstore/protobuf-specs": "^0.3.2", "make-fetch-happen": "^13.0.1", "proc-log": "^4.2.0", "promise-retry": "^2.0.1" @@ -15911,11 +12439,11 @@ } }, "node_modules/npm/node_modules/@sigstore/tuf": { - "version": "2.3.3", + "version": "2.3.4", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.0", + "@sigstore/protobuf-specs": "^0.3.2", "tuf-js": "^2.2.1" }, "engines": { @@ -15923,13 +12451,13 @@ } }, "node_modules/npm/node_modules/@sigstore/verify": { - "version": "1.2.0", + "version": "1.2.1", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.1", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.1.0", - "@sigstore/protobuf-specs": "^0.3.1" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -16109,7 +12637,7 @@ } }, "node_modules/npm/node_modules/cidr-regex": { - "version": "4.0.5", + "version": "4.1.1", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { @@ -16315,15 +12843,15 @@ } }, "node_modules/npm/node_modules/glob": { - "version": "10.3.15", + "version": "10.4.1", "inBundle": true, "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.6", - "minimatch": "^9.0.1", - "minipass": "^7.0.4", - "path-scurry": "^1.11.0" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -16431,7 +12959,7 @@ } }, "node_modules/npm/node_modules/ini": { - "version": "4.1.2", + "version": "4.1.3", "inBundle": true, "license": "ISC", "engines": { @@ -16479,11 +13007,11 @@ } }, "node_modules/npm/node_modules/is-cidr": { - "version": "5.0.5", + "version": "5.1.0", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "cidr-regex": "^4.0.4" + "cidr-regex": "^4.1.1" }, "engines": { "node": ">=14" @@ -16519,7 +13047,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/jackspeak": { - "version": "2.3.6", + "version": "3.1.2", "inBundle": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -16587,11 +13115,11 @@ } }, "node_modules/npm/node_modules/libnpmdiff": { - "version": "6.1.2", + "version": "6.1.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^7.5.2", + "@npmcli/arborist": "^7.5.3", "@npmcli/installed-package-contents": "^2.1.0", "binary-extensions": "^2.3.0", "diff": "^5.1.0", @@ -16605,11 +13133,11 @@ } }, "node_modules/npm/node_modules/libnpmexec": { - "version": "8.1.1", + "version": "8.1.2", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^7.5.2", + "@npmcli/arborist": "^7.5.3", "@npmcli/run-script": "^8.1.0", "ci-info": "^4.0.0", "npm-package-arg": "^11.0.2", @@ -16625,11 +13153,11 @@ } }, "node_modules/npm/node_modules/libnpmfund": { - "version": "5.0.10", + "version": "5.0.11", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^7.5.2" + "@npmcli/arborist": "^7.5.3" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -16660,11 +13188,11 @@ } }, "node_modules/npm/node_modules/libnpmpack": { - "version": "7.0.2", + "version": "7.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^7.5.2", + "@npmcli/arborist": "^7.5.3", "@npmcli/run-script": "^8.1.0", "npm-package-arg": "^11.0.2", "pacote": "^18.0.6" @@ -16674,7 +13202,7 @@ } }, "node_modules/npm/node_modules/libnpmpublish": { - "version": "9.0.8", + "version": "9.0.9", "inBundle": true, "license": "ISC", "dependencies": { @@ -16692,7 +13220,7 @@ } }, "node_modules/npm/node_modules/libnpmsearch": { - "version": "7.0.5", + "version": "7.0.6", "inBundle": true, "license": "ISC", "dependencies": { @@ -16715,7 +13243,7 @@ } }, "node_modules/npm/node_modules/libnpmversion": { - "version": "6.0.2", + "version": "6.0.3", "inBundle": true, "license": "ISC", "dependencies": { @@ -16774,7 +13302,7 @@ } }, "node_modules/npm/node_modules/minipass": { - "version": "7.1.1", + "version": "7.1.2", "inBundle": true, "license": "ISC", "engines": { @@ -17204,7 +13732,7 @@ } }, "node_modules/npm/node_modules/postcss-selector-parser": { - "version": "6.0.16", + "version": "6.1.0", "inBundle": true, "license": "MIT", "dependencies": { @@ -17369,16 +13897,16 @@ } }, "node_modules/npm/node_modules/sigstore": { - "version": "2.3.0", + "version": "2.3.1", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.1", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.1", - "@sigstore/sign": "^2.3.0", - "@sigstore/tuf": "^2.3.1", - "@sigstore/verify": "^1.2.0" + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -17452,7 +13980,7 @@ } }, "node_modules/npm/node_modules/spdx-license-ids": { - "version": "3.0.17", + "version": "3.0.18", "inBundle": true, "license": "CC0-1.0" }, @@ -17809,7 +14337,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, "dependencies": { "wrappy": "1" } @@ -18041,7 +14568,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -18234,6 +14760,15 @@ "node": ">=6" } }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "peer": true, + "engines": { + "node": ">=6" + } + }, "node_modules/pure-rand": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", @@ -18407,6 +14942,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -18501,7 +15037,6 @@ "version": "7.6.2", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true, "bin": { "semver": "bin/semver.js" }, @@ -18547,15 +15082,13 @@ } }, "node_modules/shiki": { - "version": "0.14.7", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", - "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.10.2.tgz", + "integrity": "sha512-wrddjiCJ6D8zB1MuAGZ37G37rGw+6Ntnqqbl2uXh3P8g5JxneJRRhccPnex/gqorJoXkbpTRC2x54QIsdx2b1Q==", "peer": true, "dependencies": { - "ansi-sequence-parser": "^1.1.0", - "jsonc-parser": "^3.2.0", - "vscode-oniguruma": "^1.7.0", - "vscode-textmate": "^8.0.0" + "@shikijs/core": "1.10.2", + "@types/hast": "^3.0.4" } }, "node_modules/signal-exit": { @@ -18810,9 +15343,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", "dependencies": { "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", @@ -18876,8 +15409,7 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, "node_modules/through": { "version": "2.3.8", @@ -18885,12 +15417,15 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "node_modules/timers-ext": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", - "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.8.tgz", + "integrity": "sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww==", "dependencies": { - "es5-ext": "~0.10.46", - "next-tick": "1" + "es5-ext": "^0.10.64", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/tmp": { @@ -18968,9 +15503,9 @@ } }, "node_modules/ts-jest": { - "version": "29.1.2", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", - "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", + "version": "29.1.5", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.5.tgz", + "integrity": "sha512-UuClSYxM7byvvYfyWdFI+/2UxMmwNyJb0NPkZPQE2hew3RurV7l7zURgOHAd/1I1ZdPpe3GUsXNXAcN8TFKSIg==", "dev": true, "dependencies": { "bs-logger": "0.x", @@ -18986,10 +15521,11 @@ "ts-jest": "cli.js" }, "engines": { - "node": "^16.10.0 || ^18.0.0 || >=20.0.0" + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", "@jest/types": "^29.0.0", "babel-jest": "^29.0.0", "jest": "^29.0.0", @@ -18999,6 +15535,9 @@ "@babel/core": { "optional": true }, + "@jest/transform": { + "optional": true + }, "@jest/types": { "optional": true }, @@ -19054,23 +15593,26 @@ } }, "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", + "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==" }, "node_modules/type-check": { "version": "0.4.0", @@ -19105,43 +15647,33 @@ } }, "node_modules/typedoc": { - "version": "0.25.13", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.13.tgz", - "integrity": "sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ==", + "version": "0.26.3", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.26.3.tgz", + "integrity": "sha512-6d2Sw9disvvpdk4K7VNjKr5/3hzijtfQVHRthhDqJgnhMHy1wQz4yPMJVKXElvnZhFr0nkzo+GzjXDTRV5yLpg==", "peer": true, "dependencies": { "lunr": "^2.3.9", - "marked": "^4.3.0", - "minimatch": "^9.0.3", - "shiki": "^0.14.7" + "markdown-it": "^14.1.0", + "minimatch": "^9.0.5", + "shiki": "^1.9.1", + "yaml": "^2.4.5" }, "bin": { "typedoc": "bin/typedoc" }, "engines": { - "node": ">= 16" + "node": ">= 18" }, "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x" + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x" } }, "node_modules/typedoc-plugin-extras": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/typedoc-plugin-extras/-/typedoc-plugin-extras-3.0.0.tgz", - "integrity": "sha512-eiAe3qtm2WbV5owdncpt0zHZPqsNZH2mzNGILPd4zqrvEZie3Et9es4cpGZ+8lHO/SI0pVKwsAj7IuMxPNOdYg==", - "peerDependencies": { - "typedoc": "0.25.x" - } - }, - "node_modules/typedoc-plugin-keywords": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/typedoc-plugin-keywords/-/typedoc-plugin-keywords-1.6.0.tgz", - "integrity": "sha512-URyCIHw6+Lwil0ywy6lVb2TckfDVGjAWnRnTAiiSZaRaglI6vaaP1EhhwEipOIlHaJSnHZfdwpWe1t4mffTIpA==", - "dependencies": { - "typescript": "^5.3.2" - }, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/typedoc-plugin-extras/-/typedoc-plugin-extras-3.1.0.tgz", + "integrity": "sha512-8tNeq2fgl2HCUZ6eZuAoLLKEvB/WrRS4He9MtTfo3X3Pa8Iw3TS5D0g8krDhUXUk1uHpXVAVHm8rSOMS2mdJRw==", "peerDependencies": { - "typedoc": "^0.25.4" + "typedoc": "0.26.x" } }, "node_modules/typescript": { @@ -19156,6 +15688,12 @@ "node": ">=14.17" } }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "peer": true + }, "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", @@ -19170,9 +15708,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "dev": true, "funding": [ { @@ -19248,9 +15786,9 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -19266,9 +15804,9 @@ "dev": true }, "node_modules/v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, "dependencies": { "@jridgewell/trace-mapping": "^0.3.12", @@ -19279,18 +15817,6 @@ "node": ">=10.12.0" } }, - "node_modules/vscode-oniguruma": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", - "peer": true - }, - "node_modules/vscode-textmate": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", - "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", - "peer": true - }, "node_modules/w3c-hr-time": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", @@ -19378,7 +15904,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -19472,14 +15997,12 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" @@ -19489,9 +16012,9 @@ } }, "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "engines": { "node": ">=8.3.0" }, @@ -19553,6 +16076,17 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, + "node_modules/yaml": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", + "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/yaml-cfn": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/yaml-cfn/-/yaml-cfn-0.2.3.tgz", diff --git a/package.json b/package.json index a0796368..c30dffff 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aws-firewall-factory", - "version": "4.3.1", + "version": "4.5.0", "bin": { "firewallfactory": "bin/aws-firewall-factory.js" }, @@ -13,52 +13,52 @@ "preinstall": "npx only-allow npm" }, "devDependencies": { - "@types/node": "^20.11.19", - "@typescript-eslint/eslint-plugin": "7.9.0", - "@typescript-eslint/parser": "7.9.0", - "aws-cdk": "2.142.0", - "eslint": "8.56.0", + "@types/node": "^20.14.9", + "@typescript-eslint/eslint-plugin": "7.14.1", + "@typescript-eslint/parser": "7.14.1", + "aws-cdk": "2.148.0", + "eslint": "8.57.0", "jest": "29.7.0", - "ts-jest": "29.1.2", + "ts-jest": "29.1.5", "ts-node": "10.9.2", "typescript": "5.4.5" }, "dependencies": { - "@aws-sdk/client-cloudformation": "3.556.0", - "@aws-sdk/client-cloudfront": "^3.557.0", - "@aws-sdk/client-cloudwatch": "3.556.0", - "@aws-sdk/client-config-service": "^3.557.0", - "@aws-sdk/client-ec2": "^3.557.0", - "@aws-sdk/client-fms": "3.556.0", - "@aws-sdk/client-pricing": "3.556.0", - "@aws-sdk/client-s3": "^3.557.0", - "@aws-sdk/client-secrets-manager": "^3.583.0", - "@aws-sdk/client-service-quotas": "3.556.0", - "@aws-sdk/client-shield": "3.556.0", - "@aws-sdk/client-ssm": "3.556.0", - "@aws-sdk/client-wafv2": "3.556.0", - "@aws-solutions-constructs/aws-eventbridge-stepfunctions": "^2.57.0", - "@babel/traverse": "^7.23.7", - "@mhlabs/cfn-diagram": "^1.1.38", - "@slack/types": "^2.11.0", + "@aws-sdk/client-cloudformation": "3.606.0", + "@aws-sdk/client-cloudfront": "^3.606.0", + "@aws-sdk/client-cloudwatch": "3.606.0", + "@aws-sdk/client-config-service": "^3.606.0", + "@aws-sdk/client-ec2": "^3.606.0", + "@aws-sdk/client-fms": "3.606.0", + "@aws-sdk/client-pricing": "3.606.0", + "@aws-sdk/client-s3": "^3.606.0", + "@aws-sdk/client-secrets-manager": "^3.606.0", + "@aws-sdk/client-service-quotas": "3.606.0", + "@aws-sdk/client-shield": "3.606.0", + "@aws-sdk/client-iam": "3.606.0", + "@aws-sdk/client-ssm": "3.606.0", + "@aws-sdk/client-wafv2": "3.606.0", + "@aws-solutions-constructs/aws-eventbridge-stepfunctions": "^2.60.0", + "@babel/traverse": "^7.24.7", + "@mhlabs/cfn-diagram": "^1.1.40", + "@slack/types": "^2.12.0", "@slack/webhook": "^7.0.2", - "@types/aws-lambda": "^8.10.131", - "@types/lodash": "4.17.0", - "@types/uuid": "^9.0.8", - "adaptivecards": "3.0.3", - "aws-cdk-lib": "^2.142.0", + "@types/aws-lambda": "^8.10.140", + "@types/lodash": "4.17.6", + "@types/uuid": "^10.0.0", + "adaptivecards": "3.0.4", + "aws-cdk-lib": "^2.148.0", "aws-lambda": "^1.0.7", - "axios": "^1.6.8", - "cdk-sops-secrets": "^1.8.7", - "cfonts": "^3.2.0", + "axios": "^1.7.2", + "cdk-sops-secrets": "^1.12.0", + "cfonts": "^3.3.0", "constructs": "10.3.0", - "i": "^0.3.7", "lodash": "4.17.21", - "npm": "^10.8.0", - "table": "^6.8.1", - "typedoc-plugin-extras": "^3.0.0", - "typedoc-plugin-keywords": "^1.6.0", - "uuid": "^9.0.1" + "npm": "^10.8.1", + "table": "^6.8.2", + "i": "^0.3.7", + "typedoc-plugin-extras": "^3.1.0", + "uuid": "^10.0.0" }, "overrides": { "adaptivecards": { diff --git a/static/AWSFIREWALLMANAGER.drawio.xml b/static/AWSFIREWALLMANAGER.drawio.xml index db03b515..fcef4368 100644 --- a/static/AWSFIREWALLMANAGER.drawio.xml +++ b/static/AWSFIREWALLMANAGER.drawio.xml @@ -1,61 +1,66 @@ - + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -63,44 +68,20 @@ - - - - - - - - - - - - + - - + + - + + + - - - - - - - - - - - - - - - - - - + + + @@ -120,74 +101,80 @@ - + + + + - + - + - + - - + + + + + - + - - - - - - - - - - + + + + + + + - - + + - + - - - - - - + + - - - - + + - + - - - - - - + + - - - - + + + + + + + + + + + + + + + + + diff --git a/static/AWSFIREWALLMANAGER.png b/static/AWSFIREWALLMANAGER.png index 7d4421e3ee7f7c778d80706589de078621999aac..7f28c1ebe8f9b1b3ad0cfce8492f3da8743bdd5a 100644 GIT binary patch literal 193683 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%0D) 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≤^q^TAj+hJQ=^#tjx(inhRI4OAD_7UspNrX^%K;b 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 F{|l}>?C$^o literal 0 HcmV?d00001 diff --git a/static/grafana/waf-dashboard.json b/static/grafana/waf-dashboard.json new file mode 100644 index 00000000..fd6cabf0 --- /dev/null +++ b/static/grafana/waf-dashboard.json @@ -0,0 +1,809 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "column": "timestamp", + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "format": 1, + "limit": 100, + "matchAny": false, + "rawSQL": "", + "table": "waflogs", + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "description": "Deep Dive AWS Web Application Firewall Insights", + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 72, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "description": "", + "gridPos": { + "h": 4, + "w": 23, + "x": 0, + "y": 0 + }, + "id": 123153, + "options": { + "code": { + "language": "plaintext", + "showLineNumbers": false, + "showMiniMap": false + }, + "content": "

๐Ÿท Repo
๐Ÿ“„ Docs

\n", + "mode": "html" + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "column": "day", + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "", + "refId": "A", + "table": "waflogs" + }, + { + "column": "day", + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "hide": false, + "rawSQL": "", + "refId": "B", + "table": "waflogs" + } + ], + "title": "AWS FIREWALL FACTORY", + "transparent": true, + "type": "text" + }, + { + "datasource": { + "type": "prometheus", + "uid": "rqQqNANIk" + }, + "gridPos": { + "h": 4, + "w": 1, + "x": 23, + "y": 0 + }, + "id": 123157, + "options": { + "code": { + "language": "plaintext", + "showLineNumbers": false, + "showMiniMap": false + }, + "content": "", + "mode": "html" + }, + "pluginVersion": "9.4.7", + "transparent": true, + "type": "text" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "continuous-BlYlRd" + }, + "custom": { + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 17, + "w": 12, + "x": 0, + "y": 4 + }, + "id": 123145, + "options": { + "basemap": { + "config": {}, + "name": "Layer 0", + "type": "default" + }, + "controls": { + "mouseWheelZoom": true, + "showAttribution": true, + "showDebug": false, + "showMeasure": false, + "showScale": true, + "showZoom": true + }, + "layers": [ + { + "config": { + "showLegend": true, + "style": { + "color": { + "field": "count", + "fixed": "dark-green" + }, + "opacity": 0.4, + "rotation": { + "fixed": 0, + "max": 360, + "min": -360, + "mode": "mod" + }, + "size": { + "field": "count", + "fixed": 5, + "max": 15, + "min": 4 + }, + "symbol": { + "fixed": "img/icons/marker/circle.svg", + "mode": "fixed" + }, + "text": { + "field": "country", + "fixed": "", + "mode": "field" + }, + "textConfig": { + "fontSize": 17, + "offsetX": 25, + "offsetY": 0, + "textAlign": "center", + "textBaseline": "middle" + } + } + }, + "location": { + "lookup": "country", + "mode": "lookup" + }, + "name": "Countries", + "tooltip": false, + "type": "markers" + } + ], + "tooltip": { + "mode": "details" + }, + "view": { + "allLayers": true, + "id": "coords", + "lat": 0, + "lon": 0, + "shared": false, + "zoom": 1.35 + } + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "\nSELECT \n COUNT(httpRequest.country) as count, \n httpRequest.country \nFROM \"waflogs\" \ngroup by httpRequest.country ", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Request Map Across Countries", + "transparent": true, + "type": "geomap" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "purple", + "mode": "palette-classic" + }, + "mappings": [], + "max": 6, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "purple", + "value": null + }, + { + "color": "#EAB839", + "value": 0 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 17, + "w": 11, + "x": 12, + "y": 4 + }, + "id": 123127, + "options": { + "orientation": "auto", + "reduceOptions": { + "calcs": [], + "fields": "", + "values": true + }, + "showThresholdLabels": false, + "showThresholdMarkers": false, + "text": {} + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "hide": false, + "rawSQL": "select count(*) as AllRequests\nfrom \"waflogs\"", + "refId": "A", + "table": "newjsons3_aws_waf_logs_firewall_manager_central" + }, + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "hide": false, + "rawSQL": "select count(*) as AllRequests, action\nfrom \"waflogs\" \ngroup by action", + "refId": "B", + "table": "waflogs" + } + ], + "title": "Request Count by Action", + "transparent": true, + "type": "gauge" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "continuous-BlPu" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMin": 0, + "fillOpacity": 80, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineWidth": 1, + "scaleDistribution": { + "type": "linear" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 13, + "w": 12, + "x": 0, + "y": 21 + }, + "id": 123141, + "options": { + "barRadius": 0.05, + "barWidth": 0.59, + "colorByField": "httpsourceid", + "fullHighlight": false, + "groupWidth": 0.7, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "right", + "showLegend": false + }, + "orientation": "horizontal", + "showValue": "never", + "stacking": "none", + "tooltip": { + "mode": "single", + "sort": "none" + }, + "xTickLabelMaxLength": 0, + "xTickLabelRotation": 0, + "xTickLabelSpacing": 0 + }, + "pluginVersion": "8.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "SELECT COUNT(*) AS count, httpsourceid\nFROM waflogs\nGROUP BY httpsourceid\nORDER BY count DESC\nLIMIT 10;", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Request by Endpoint (TOP 10)", + "transparent": true, + "type": "barchart" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 13, + "w": 12, + "x": 12, + "y": 21 + }, + "id": 123143, + "options": { + "footer": { + "countRows": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "select count(*) as Requests, httprequest.clientIp\nfrom \"waflogs\" \ngroup by httprequest.clientIp ORDER BY Requests DESC LIMIT 10;\n", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Request Count By IP (TOP10)", + "transparent": true, + "type": "table" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "custom": { + "align": "auto", + "cellOptions": { + "type": "color-text" + }, + "filterable": true, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 4, + "x": 0, + "y": 34 + }, + "id": 123149, + "options": { + "footer": { + "countRows": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "SELECT \n COUNT(httpRequest.uri) as count, \n httpRequest.httpMethod \nFROM \"waflogs\" \nGROUP BY httpRequest.httpMethod\nlimit 10;\n", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Top HTTP Methods", + "transparent": true, + "type": "table" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "custom": { + "align": "auto", + "cellOptions": { + "type": "color-text" + }, + "filterable": true, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 4, + "y": 34 + }, + "id": 123147, + "options": { + "footer": { + "countRows": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "SELECT \n COUNT(httpRequest.uri) as count, \n httpRequest.uri \nFROM \"waflogs\" \nGROUP BY httpRequest.uri\nlimit 10;\n", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Top 10 URIs", + "transparent": true, + "type": "table" + }, + { + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + } + }, + "mappings": [] + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 34 + }, + "id": 123155, + "options": { + "legend": { + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "pieType": "pie", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.4.7", + "targets": [ + { + "connectionArgs": { + "catalog": "__default", + "database": "__default", + "region": "__default", + "resultReuseEnabled": false, + "resultReuseMaxAgeInMinutes": 60 + }, + "datasource": { + "type": "grafana-athena-datasource", + "uid": "WZNSmrQSz" + }, + "format": 1, + "rawSQL": "SELECT terminatingruleid, count (*) as Count FROM waflogs GROUP by terminatingruleid LIMIT 10", + "refId": "A", + "table": "waflogs" + } + ], + "title": "Top 10 Terminating Rule Groups", + "transparent": true, + "type": "piechart" + } + ], + "refresh": "", + "revision": 1, + "schemaVersion": 38, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "hidden": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ], + "type": "timepicker" + }, + "timezone": "browser", + "title": "AWS Firewall Factory - WAF Dashboard", + "uid": "exO6hEB4k", + "version": 2, + "weekStart": "" +} \ No newline at end of file diff --git a/static/options.jpg b/static/options.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4730a111f0fa1636527e4613a8047be0b7f0f5be GIT binary patch literal 14149 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 GL;nL~&>&v` literal 0 HcmV?d00001 diff --git a/typedoc.json b/typedoc.json index f41281e9..0ed8d09b 100644 --- a/typedoc.json +++ b/typedoc.json @@ -1,13 +1,12 @@ { "$schema": "https://typedoc.org/schema.json", - "entryPoints": ["lib/_web-application-firewall-stack.ts","lib/_prerequisites-stack.ts","lib/types/config.ts", "lib/types/enums.ts", "lib/types/fms.ts", "node_modules/aws-cdk-lib/aws-fms", "node_modules/aws-cdk-lib/aws-wafv2", "node_modules/aws-cdk-lib/core/lib/cfn-tag.d.ts", "node_modules/aws-cdk-lib/core/lib/tag-manager.d.ts","lib/tools/helpers"], + "entryPoints": ["lib/_shield-advanced-stack.ts","lib/_web-application-firewall-stack.ts","lib/_prerequisites-stack.ts","lib/types/config.ts", "lib/types/enums.ts", "lib/types/fms.ts", "node_modules/aws-cdk-lib/aws-fms", "node_modules/aws-cdk-lib/aws-wafv2", "node_modules/aws-cdk-lib/core/lib/cfn-tag.d.ts", "node_modules/aws-cdk-lib/core/lib/tag-manager.d.ts","lib/tools/helpers"], "readme": "./static/docs/README.md", "customCss": "./static/docs/custom.css", "name": "AWS Firewall Factory Documentation", "entryPointStrategy": "Expand", "exclude": ["**/gotestwaf/**","**/bin/**","**/values/**","**/lambda/**","**/constructs/**","**/adaptivecards/**"], "plugin": ["typedoc-plugin-extras", "typedoc-plugin-keywords"], - "keywords": ["aws", "firewall", "waf", "fms", "factory", "globaldatanet", "cdk"], "favicon": "static/icon/aws_firewall_factory_favicon.ico", "searchInComments": true, "hideGenerator": true, diff --git a/values/examples/asciiart-load-test.yml b/values/examples/asciiart-load-test.yml new file mode 100644 index 00000000..0f8635d5 --- /dev/null +++ b/values/examples/asciiart-load-test.yml @@ -0,0 +1,39 @@ +config: + # This is a test server run by team Artillery + # It's designed to be highly scalable + target: http://asciiart.artillery.io:8080 + phases: + - duration: 60 + arrivalRate: 1 + rampTo: 5 + name: Warm up phase + - duration: 60 + arrivalRate: 5 + rampTo: 10 + name: Ramp up load + - duration: 30 + arrivalRate: 10 + rampTo: 30 + name: Spike phase + # Load & configure a couple of useful plugins + # https://docs.art/reference/extensions + plugins: + ensure: {} + apdex: {} + metrics-by-endpoint: {} + apdex: + threshold: 100 + ensure: + thresholds: + - http.response_time.p99: 100 + - http.response_time.p95: 75 +scenarios: + - flow: + - loop: + - get: + url: '/dino' + - get: + url: '/pony' + - get: + url: '/armadillo' + count: 100 \ No newline at end of file diff --git a/values/examples/index.ts b/values/examples/index.ts index 63cfd2c6..545ceb57 100644 --- a/values/examples/index.ts +++ b/values/examples/index.ts @@ -1,3 +1,4 @@ export { config as owasptopTen } from "./owasptop10"; export { prequisites as prequisites } from "./prequisites"; -export { config as ipSetsManagedTest } from "./ip-sets-managed-test"; \ No newline at end of file +export { config as ipSetsManagedTest } from "./ip-sets-managed-test"; +export { shieldConfig as shieldConfigExample } from "./shield-advanced"; \ No newline at end of file diff --git a/values/examples/prequisites.ts b/values/examples/prequisites.ts index 6f0c2c34..1ef00fa8 100644 --- a/values/examples/prequisites.ts +++ b/values/examples/prequisites.ts @@ -16,5 +16,6 @@ export const prequisites: Prerequisites = { KeyAlias: "aws-firewall-factory-firehosekey" }, CrossAccountIdforPermissions: "123456789012", - } + }, + DdosNotifications:{WebhookSopsFile: "./values/examples/webhooks/slack.json"} }; \ No newline at end of file diff --git a/values/examples/shield-advanced.ts b/values/examples/shield-advanced.ts new file mode 100644 index 00000000..2746f347 --- /dev/null +++ b/values/examples/shield-advanced.ts @@ -0,0 +1,19 @@ +import { ShieldConfig } from "../../lib/types/config"; +export const shieldConfig: ShieldConfig = { + General: { + Prefix: "aws-firewall-factory1", + Stage: "test", + S3LoggingBucketName: "aws-waf-logs-aws-firewall-factory-test", + LoggingConfiguration: "S3", + SecuredDomain: ["test.aws-firewall-factory.com"], + CreateDashboard: true, + }, + WebAcl: { OverrideCustomerWebACLAssociation: false }, + defaultActionType:"ALLOW", + remediationEnabled: true, + resourceType: "AWS::ElasticLoadBalancing::LoadBalancer", + policyName: "ACS-FIREWALL-FACTORY-SHIELD-ADVANCED", + includeMap: { account: ["123456189012"] }, + excludeMap: {}, + excludeResourceTags: false, +}; diff --git a/values/examples/webhooks/slack.json b/values/examples/webhooks/slack.json new file mode 100644 index 00000000..533f8c9f --- /dev/null +++ b/values/examples/webhooks/slack.json @@ -0,0 +1,4 @@ +{ + "WebhookUrl": " Your Webhook URL", + "Messenger": "Either Slack or Teams" +} \ No newline at end of file diff --git a/values/index.ts b/values/index.ts index ddb2b5c5..74ec9c4f 100644 --- a/values/index.ts +++ b/values/index.ts @@ -1,13 +1,15 @@ -import {Config, Prerequisites} from "../lib/types/config"; +import {Config, Prerequisites, ShieldConfig} from "../lib/types/config"; -import { owasptopTen, prequisites, ipSetsManagedTest} from "./examples"; +import { owasptopTen, prequisites, ipSetsManagedTest, shieldConfigExample} from "./examples"; import * as tests from "./tests"; export const configs : { [key: string]: Config } = { owasptopTen, ipSetsManagedTest, ...tests, }; - +export const shieldConfigs : { [key: string]: ShieldConfig } = { + shieldConfigExample +}; export const prereq : { [key: string]: Prerequisites } = { prequisites, }; \ No newline at end of file From 5cd92cf5f6eaf8fe0aa1f1c23caa8703bba6e1b5 Mon Sep 17 00:00:00 2001 From: memehadi Date: Mon, 8 Jul 2024 17:23:34 +0200 Subject: [PATCH 2/2] add WAF workflows --- .github/workflows/waf_test_ipSets.yml | 2 ++ .github/workflows/waf_test_onlymanagedrulegroups.yml | 2 ++ .github/workflows/waf_test_rateBasedwithScopeDown.yml | 2 ++ .github/workflows/waf_test_regexPatternSets.yml | 2 ++ .gitignore | 10 ++++++++++ 5 files changed, 18 insertions(+) create mode 100644 .gitignore diff --git a/.github/workflows/waf_test_ipSets.yml b/.github/workflows/waf_test_ipSets.yml index 2ccfd49d..9c190e84 100644 --- a/.github/workflows/waf_test_ipSets.yml +++ b/.github/workflows/waf_test_ipSets.yml @@ -69,7 +69,9 @@ jobs: uses: docker/setup-buildx-action@v3.3.0 - name: ๐Ÿ”ฅ Deploy Firewall to AWS run: | + export STACK_NAME=WAFStack task deploy config=ipSetsTests - name: ๐Ÿ—‘๏ธ Remove Firewall from AWS run: | + export STACK_NAME=WAFStack task destroy config=ipSetsTests \ No newline at end of file diff --git a/.github/workflows/waf_test_onlymanagedrulegroups.yml b/.github/workflows/waf_test_onlymanagedrulegroups.yml index 1982bcf9..b23cf384 100644 --- a/.github/workflows/waf_test_onlymanagedrulegroups.yml +++ b/.github/workflows/waf_test_onlymanagedrulegroups.yml @@ -68,7 +68,9 @@ jobs: uses: docker/setup-buildx-action@v3.3.0 - name: ๐Ÿ”ฅ Deploy Firewall to AWS run: | + export STACK_NAME=WAFStack task deploy config=onlyManagedRuleGroupsTests - name: ๐Ÿ—‘๏ธ Remove Firewall from AWS run: | + export STACK_NAME=WAFStack task destroy config=onlyManagedRuleGroupsTests \ No newline at end of file diff --git a/.github/workflows/waf_test_rateBasedwithScopeDown.yml b/.github/workflows/waf_test_rateBasedwithScopeDown.yml index ee7076f7..5fc7264f 100644 --- a/.github/workflows/waf_test_rateBasedwithScopeDown.yml +++ b/.github/workflows/waf_test_rateBasedwithScopeDown.yml @@ -69,7 +69,9 @@ jobs: uses: docker/setup-buildx-action@v3.3.0 - name: ๐Ÿ”ฅ Deploy Firewall to AWS run: | + export STACK_NAME=WAFStack task deploy config=rateBasedwithScopeDownTests - name: ๐Ÿ—‘๏ธ Remove Firewall from AWS run: | + export STACK_NAME=WAFStack task destroy config=rateBasedwithScopeDownTests \ No newline at end of file diff --git a/.github/workflows/waf_test_regexPatternSets.yml b/.github/workflows/waf_test_regexPatternSets.yml index 1c509254..f52550a3 100644 --- a/.github/workflows/waf_test_regexPatternSets.yml +++ b/.github/workflows/waf_test_regexPatternSets.yml @@ -68,7 +68,9 @@ jobs: uses: docker/setup-buildx-action@v3.3.0 - name: ๐Ÿ”ฅ Deploy Firewall to AWS run: | + export STACK_NAME=WAFStack task deploy config=regexPatternSetsTests - name: ๐Ÿ—‘๏ธ Remove Firewall from AWS run: | + export STACK_NAME=WAFStack task destroy config=regexPatternSetsTests \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..177fb932 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +*.js +!jest.config.js +*.d.ts +node_modules +*.DS_Store +*.tgz +# CDK asset staging directory +.cdk.staging +cdk.out +cdk.context.json