diff --git a/.projen/deps.json b/.projen/deps.json
index ff2ccaf..77efaab 100644
--- a/.projen/deps.json
+++ b/.projen/deps.json
@@ -49,6 +49,7 @@
},
{
"name": "jsii-docgen",
+ "version": "10.x",
"type": "build"
},
{
@@ -57,7 +58,7 @@
},
{
"name": "jsii-rosetta",
- "version": "1.x",
+ "version": "5.x",
"type": "build"
},
{
diff --git a/.projen/tasks.json b/.projen/tasks.json
index 1137a79..ef43291 100644
--- a/.projen/tasks.json
+++ b/.projen/tasks.json
@@ -286,7 +286,7 @@
},
"steps": [
{
- "exec": "npx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev,peer,prod,optional --filter=eslint-import-resolver-typescript,eslint-plugin-import,jsii-diff,jsii-docgen,jsii-pacmak,projen,ts-node,typescript"
+ "exec": "npx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev,peer,prod,optional --filter=eslint-import-resolver-typescript,eslint-plugin-import,jsii-diff,jsii-pacmak,projen,ts-node,typescript"
},
{
"exec": "yarn install --check-files"
diff --git a/.projenrc.ts b/.projenrc.ts
index e428907..56f5e1a 100644
--- a/.projenrc.ts
+++ b/.projenrc.ts
@@ -74,4 +74,7 @@ project.tryFindObjectFile('.github/workflows/release.yml')?.addToArray(
},
);
+project.addDevDeps('jsii-docgen@10.x');
+project.addDevDeps('jsii-rosetta@5.x');
+
project.synth();
\ No newline at end of file
diff --git a/API.md b/API.md
index 388030e..23ea3a4 100644
--- a/API.md
+++ b/API.md
@@ -1,81 +1,3 @@
-# Django CDK
-
-## About this construct library
-
-`cdk-django` is a construct library for AWS Cloud Development Kit (CDK) that I wrote to learn more about infrastructure as code. It it focuses on showing how to build AWS infrastructure to support Django applications. I recommend that you only use this construct library as a reference for your own applications.
-
-There are four major constructs in this library:
-
-- ad hoc base
-- ad hoc app
-- prod base
-- prod app
-
-Ad hoc environments (or on-demand environments) are application environments that teams use internally for testing, QA, internal demos, etc. Multiple ad hoc environments build on top of a single "an hoc base" environment that provides shared resources such as:
-
-- VPC
-- security groups
-- IAM roles
-- Load balancer
-- RDS instance
-
-The ad hoc environments themselves consist of :
-
-- ECS cluster
-- task definitions
-- ECS services
-- Route 53 record
-- target groups
-- listener rules
-
-I wrote about ad hoc environments in an article on my blog here: [https://briancaffey.github.io/2022/03/27/ad-hoc-developer-environments-for-django-with-aws-ecs-terraform-and-github-actions](https://briancaffey.github.io/2022/03/27/ad-hoc-developer-environments-for-django-with-aws-ecs-terraform-and-github-actions).
-
-The prod base and prod app constructs are used for setting up infrastructure for production environments.
-
-I have written a very similar library that will deploy almost the exact same infrastructure (both for ad hoc and production environments) using Terraform which can be found here: [https://github.com/briancaffey/terraform-aws-django](https://github.com/briancaffey/terraform-aws-django). The directory structures for these two repositories are very similar. `cdk-django` is published to npm and `terraform-aws-django` is published to the Terraform registry.
-
-This construct library focuses on security, best practices, scalability, flexibility and cost-efficiency.
-
-## Companion Django application
-
-I developed this construct library together with a sample reference Django application that I wrote for learning, testing and experimentation. This Django application is a simple blogging application called **μblog**. This repo for μblog can be found here: [https://github.com/briancaffey/django-step-by-step](https://github.com/briancaffey/django-step-by-step).
-
-This repo shows how to set up local development environments using docker and docker-compose, and also contains multiple GitHub Actions workflows that demonstrate how to use `cdk-django` to build and deploy the applications using CI/CD automation. There are GitHub Actions workflows for both `cdk-django` and `terraform-aws-django`.
-
-## Important points
-
-Here are some highlights of the features of this library:
-
-### Serverless infrastructure, containerized application
-
-The Django application is packaged into a docker container and runs on ECS Fargate, a serverless runtime that abstracts the operating system. This gives up our control over the underlying operating system that runs our application's containers, but it also enforces best practices for security and scalability.
-
-### Access patterns
-
-This application demonstrates how development teams can access both the application server and the database using AWS Systems Manager (SSM). This removes the need to manage overhead associated with SSH and allows for access to be controlled through IAM roles.
-
-This follows AWS best practices for access patterns. EcsExec can be used in production for "break glass" scenarios where engineers may need to open an interactive shell that provides access to the application.
-
-Port forwarding patterns are demonstrated to show how tools like DBeaver can be used to directly connect to the database over a secure Bastion Host placed in a private subnet.
-
-### Scalability
-
-This construct library demonstrates how to apply autoscaling to our ECS services so we that we can scale in and out horizontally as needed by adding or removing instances in response to load on our application.
-
-
-### Safe Operations
-
-Another major focus of this project is to show best practices for secure and safe application operations and change management. This includes patterns for safely rolling out both infrastructure updates and application updates with zero downtime.
-
-### Cost efficiency
-
-The production environment is quite expensive to run compared to other alternatives, so it may not be a best fit for all organizations and development teams. ECS Fargate is more expensive for comparable amounts of compute that be purchased using EC2 instances.
-
-Ad hoc environments take advantage of Fargate Spot instances which are less expensive than regular Fargate instances. Similar to EC2 spot instances, this allows us to use "left-over" compute resources at a discount with the caveat that the instances may be shut down for rescheduling by AWS at any time (with a 2 minute warning).
-
-## Redeploying package
-
-Old versions have been removed. The package was deleted from npm and is being re-published.
# API Reference
## Constructs
diff --git a/package.json b/package.json
index 6e1ffe3..e63eafe 100644
--- a/package.json
+++ b/package.json
@@ -50,9 +50,9 @@
"jest-junit": "^15",
"jsii": "1.x",
"jsii-diff": "^1.98.0",
- "jsii-docgen": "^7.2.9",
+ "jsii-docgen": "10.x",
"jsii-pacmak": "^1.98.0",
- "jsii-rosetta": "1.x",
+ "jsii-rosetta": "5.x",
"projen": "^0.81.5",
"standard-version": "^9",
"ts-jest": "^27",
diff --git a/yarn.lock b/yarn.lock
index df8ac0c..eb88dbd 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -604,6 +604,14 @@
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
+"@jsii/check-node@1.97.0":
+ version "1.97.0"
+ resolved "https://registry.yarnpkg.com/@jsii/check-node/-/check-node-1.97.0.tgz#aeeb3fd1a9f4d5c7a2f24faeb106f31e6015cc4f"
+ integrity sha512-n7t4p2JNyr6iBkAv/+9pDPU6hV/sa3Kqdp6oPw5v4/TqNyopGSGtxyOtNXtsBcN6zMibAVXmvhzZA+OBaX1FiQ==
+ dependencies:
+ chalk "^4.1.2"
+ semver "^7.5.4"
+
"@jsii/check-node@1.98.0":
version "1.98.0"
resolved "https://registry.yarnpkg.com/@jsii/check-node/-/check-node-1.98.0.tgz#140860478009834aa35dc8479a26db1a221439d5"
@@ -612,7 +620,7 @@
chalk "^4.1.2"
semver "^7.5.4"
-"@jsii/spec@1.98.0", "@jsii/spec@^1.80.0", "@jsii/spec@^1.98.0":
+"@jsii/spec@^1.97.0", "@jsii/spec@^1.98.0":
version "1.98.0"
resolved "https://registry.yarnpkg.com/@jsii/spec/-/spec-1.98.0.tgz#7495f2d123b95b67ba0da4d3a18cac763d401da2"
integrity sha512-5FCJedjFrxKt0wrcSnXetHHTXQV6OQM2NlE/WJNvjwqlk+RYfw+BwZOBYHsoaQx1Qh0pTwN7ZM9WmEusN3GdNw==
@@ -741,7 +749,7 @@
dependencies:
"@babel/types" "^7.3.0"
-"@types/glob@*":
+"@types/glob@^8.0.0":
version "8.1.0"
resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.1.0.tgz#b63e70155391b0584dce44e7ea25190bbc38f2fc"
integrity sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==
@@ -1493,6 +1501,16 @@ commonmark@^0.30.0:
minimist ">=1.2.2"
string.prototype.repeat "^0.2.0"
+commonmark@^0.31.0:
+ version "0.31.0"
+ resolved "https://registry.yarnpkg.com/commonmark/-/commonmark-0.31.0.tgz#4ac57c61f0d7f5ef82d79447a972c61226ef5abc"
+ integrity sha512-nuDsQ34gjmgAqjyIz6mbRWBW/XPE9wsBempAMBk2V/AA88ekztjTM46oi07J6c6Y/2Y8TdYCZi9L0pIBt/oMZw==
+ dependencies:
+ entities "~3.0.1"
+ mdurl "~1.0.1"
+ minimist "~1.2.5"
+ string.prototype.repeat "^1.0.0"
+
compare-func@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3"
@@ -1847,7 +1865,7 @@ define-data-property@^1.0.1, define-data-property@^1.1.4:
es-errors "^1.3.0"
gopd "^1.0.1"
-define-properties@^1.2.0, define-properties@^1.2.1:
+define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
@@ -1934,6 +1952,15 @@ dotgitignore@^2.1.0:
find-up "^3.0.0"
minimatch "^3.0.4"
+downlevel-dts@^0.11.0:
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/downlevel-dts/-/downlevel-dts-0.11.0.tgz#514a2d723009c5845730c1db6c994484c596ed9c"
+ integrity sha512-vo835pntK7kzYStk7xUHDifiYJvXxVhUapt85uk2AI94gUUAQX9HNRtrcMHNSc3YHJUEHGbYIGsM99uIbgAtxw==
+ dependencies:
+ semver "^7.3.2"
+ shelljs "^0.8.3"
+ typescript next
+
electron-to-chromium@^1.4.668:
version "1.4.754"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.754.tgz#20a9f3cc80e0fb6a804b86605e55da16918a58b0"
@@ -1962,6 +1989,11 @@ entities@~2.0:
resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f"
integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==
+entities@~3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4"
+ integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==
+
error-ex@^1.3.1:
version "1.3.2"
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
@@ -1969,7 +2001,7 @@ error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
-es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2:
+es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2:
version "1.23.3"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0"
integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==
@@ -2561,14 +2593,14 @@ glob-parent@^6.0.2:
dependencies:
is-glob "^4.0.3"
-glob-promise@^3.4.0:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-3.4.0.tgz#b6b8f084504216f702dc2ce8c9bc9ac8866fdb20"
- integrity sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw==
+glob-promise@^6.0.5:
+ version "6.0.5"
+ resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-6.0.5.tgz#3d56331b324fd7d097b43ba9e9959e9c7e200e2c"
+ integrity sha512-uUzvxo60yo/vMLXZHCNAlfdM5U5A07jCnUO8xTK44Z0Vc58poGDXhDx8ju1DmPdprOORh+4Lpog64hl+AJ5piA==
dependencies:
- "@types/glob" "*"
+ "@types/glob" "^8.0.0"
-glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.2.3:
+glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4:
version "7.2.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
@@ -2580,7 +2612,7 @@ glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.2.3:
once "^1.3.0"
path-is-absolute "^1.0.0"
-glob@^8:
+glob@^8, glob@^8.1.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
@@ -3544,19 +3576,18 @@ jsii-diff@^1.98.0:
log4js "^6.9.1"
yargs "^16.2.0"
-jsii-docgen@^7.2.9:
- version "7.2.9"
- resolved "https://registry.yarnpkg.com/jsii-docgen/-/jsii-docgen-7.2.9.tgz#869c8064c5df62cad0c665f6f237ccdc48165fbf"
- integrity sha512-cPDQJ/NgHxVcekZh79jy1VwvFpS9Vlo2U9bnP/FMOIWBUSd6bTbi0VAMC5VBvec6/TUslw+JEBBErdEqop+EZA==
+jsii-docgen@10.x:
+ version "10.4.4"
+ resolved "https://registry.yarnpkg.com/jsii-docgen/-/jsii-docgen-10.4.4.tgz#404507d99d8d73db6e6a3c2b684a9e33cf89f414"
+ integrity sha512-WsrY9xRlknfGwlTCu+DQWiADpO5H317YcL4kYubGuR6b+DA8AsSdrGG3T6Xr8RfkJ5GY6maJbk3q6HbQsqhpuQ==
dependencies:
- "@jsii/spec" "^1.80.0"
+ "@jsii/spec" "^1.98.0"
case "^1.6.3"
fs-extra "^10.1.0"
- glob "^7.2.3"
- glob-promise "^3.4.0"
- jsii-reflect "^1.80.0"
- jsii-rosetta "^1.80.0"
- semver "^7.5.0"
+ glob "^8.1.0"
+ glob-promise "^6.0.5"
+ jsii-reflect "^1.98.0"
+ semver "^7.6.0"
yargs "^16.2.0"
jsii-pacmak@^1.98.0:
@@ -3577,7 +3608,7 @@ jsii-pacmak@^1.98.0:
xmlbuilder "^15.1.1"
yargs "^16.2.0"
-jsii-reflect@^1.80.0, jsii-reflect@^1.98.0:
+jsii-reflect@^1.98.0:
version "1.98.0"
resolved "https://registry.yarnpkg.com/jsii-reflect/-/jsii-reflect-1.98.0.tgz#e370e901d2e93ec8d5ea7bc6348e2dba498a8cf1"
integrity sha512-HulKk6pQOk0zkqJXRaweV5PezvAghZAX4cuB7i0sBA0/kz1ypqB1KFhBiZ1PLeeMzAfb1/WmCF2UTu9xzQit4w==
@@ -3589,25 +3620,26 @@ jsii-reflect@^1.80.0, jsii-reflect@^1.98.0:
oo-ascii-tree "^1.98.0"
yargs "^16.2.0"
-jsii-rosetta@1.x, jsii-rosetta@^1.80.0:
- version "1.98.0"
- resolved "https://registry.yarnpkg.com/jsii-rosetta/-/jsii-rosetta-1.98.0.tgz#b03cf8ca6b60807cfba94a2e68a3a4a4df83a4c3"
- integrity sha512-3f28gd2t5GkYEjxm6oZ8U2kgF3c/0FPx+AL5GOtwhiOG6Lxt9Uy8jgJPqFZ0Ynr9JOWQSiNXmMEq/Iw/LnH+3A==
+jsii-rosetta@5.x:
+ version "5.4.10"
+ resolved "https://registry.yarnpkg.com/jsii-rosetta/-/jsii-rosetta-5.4.10.tgz#f1077ad6322235548609c604b5644d610583541c"
+ integrity sha512-PMY7ajhvX8hiHBq7xqydV9jALktwEYOhgAwAe8E9jaYHpEUz/21MwaqU+Q6sjXOtVGnvJXZacvPrVMoW7gnbKQ==
dependencies:
- "@jsii/check-node" "1.98.0"
- "@jsii/spec" "1.98.0"
+ "@jsii/check-node" "1.97.0"
+ "@jsii/spec" "^1.97.0"
"@xmldom/xmldom" "^0.8.10"
- commonmark "^0.30.0"
+ chalk "^4"
+ commonmark "^0.31.0"
fast-glob "^3.3.2"
- jsii "1.98.0"
- semver "^7.5.4"
- semver-intersect "^1.4.0"
+ jsii "~5.4.0"
+ semver "^7.6.0"
+ semver-intersect "^1.5.0"
stream-json "^1.8.0"
- typescript "~3.9.10"
+ typescript "~5.4"
workerpool "^6.5.1"
- yargs "^16.2.0"
+ yargs "^17.7.2"
-jsii@1.98.0, jsii@1.x:
+jsii@1.x:
version "1.98.0"
resolved "https://registry.yarnpkg.com/jsii/-/jsii-1.98.0.tgz#884f414670885c201bc9e14151e5d3f162ddf97d"
integrity sha512-P/Q/mlcbZsJqZDE4zJ+GyLLZRyMPqlx+Fb/p6oDei9JA+fBmBX5Adbw4B8+VClZqvr8I0PxHxLk06n+EVQn3cQ==
@@ -3626,6 +3658,25 @@ jsii@1.98.0, jsii@1.x:
typescript "~3.9.10"
yargs "^16.2.0"
+jsii@~5.4.0:
+ version "5.4.9"
+ resolved "https://registry.yarnpkg.com/jsii/-/jsii-5.4.9.tgz#8a45ab4747536779aed8fcf5930ce697cc939b23"
+ integrity sha512-FnDNf93NnY3+4fwbKMGsfK+T0ojDzo5JSoEDYHa6YIgQNcAIsag+eUJyIsCsjND0y5dkdMPmnGjlq0U+DrF9QQ==
+ dependencies:
+ "@jsii/check-node" "1.97.0"
+ "@jsii/spec" "^1.97.0"
+ case "^1.6.3"
+ chalk "^4"
+ downlevel-dts "^0.11.0"
+ fast-deep-equal "^3.1.3"
+ log4js "^6.9.1"
+ semver "^7.6.0"
+ semver-intersect "^1.5.0"
+ sort-json "^2.0.1"
+ spdx-license-list "^6.9.0"
+ typescript "~5.4"
+ yargs "^17.7.2"
+
json-buffer@3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
@@ -3945,7 +3996,7 @@ minimist-options@4.1.0:
is-plain-obj "^1.1.0"
kind-of "^6.0.3"
-minimist@>=1.2.2, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6:
+minimist@>=1.2.2, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6, minimist@~1.2.5:
version "1.2.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
@@ -4555,7 +4606,7 @@ saxes@^5.0.1:
dependencies:
xmlchars "^2.2.0"
-semver-intersect@^1.4.0:
+semver-intersect@^1.4.0, semver-intersect@^1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/semver-intersect/-/semver-intersect-1.5.0.tgz#bb3aa0ea504935410d34cf15f49818d56906bd48"
integrity sha512-BDjWX7yCC0haX4W/zrnV2JaMpVirwaEkGOBmgRQtH++F1N3xl9v7k9H44xfTqwl+yLNNSbMKosoVSTIiJVQ2Pw==
@@ -4567,7 +4618,7 @@ semver-intersect@^1.4.0:
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
-semver@7.x, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0:
+semver@7.x, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0:
version "7.6.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d"
integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==
@@ -4613,7 +4664,7 @@ shebang-regex@^3.0.0:
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-shelljs@^0.8.5:
+shelljs@^0.8.3, shelljs@^0.8.5:
version "0.8.5"
resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c"
integrity sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==
@@ -4717,7 +4768,7 @@ spdx-license-ids@^3.0.0:
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c"
integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==
-spdx-license-list@^6.8.0:
+spdx-license-list@^6.8.0, spdx-license-list@^6.9.0:
version "6.9.0"
resolved "https://registry.yarnpkg.com/spdx-license-list/-/spdx-license-list-6.9.0.tgz#5543abb3a15f985a12808f642a622d2721c372ad"
integrity sha512-L2jl5vc2j6jxWcNCvcVj/BW9A8yGIG02Dw+IUw0ZxDM70f7Ylf5Hq39appV1BI9yxyWQRpq2TQ1qaXvf+yjkqA==
@@ -4811,6 +4862,14 @@ string.prototype.repeat@^0.2.0:
resolved "https://registry.yarnpkg.com/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz#aba36de08dcee6a5a337d49b2ea1da1b28fc0ecf"
integrity sha512-1BH+X+1hSthZFW+X+JaUkjkkUPwIlLEMJBLANN3hOob3RhEk5snLWNECDnYbgn/m5c5JV7Ersu1Yubaf+05cIA==
+string.prototype.repeat@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz#e90872ee0308b29435aa26275f6e1b762daee01a"
+ integrity sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==
+ dependencies:
+ define-properties "^1.1.3"
+ es-abstract "^1.17.5"
+
string.prototype.trim@^1.2.9:
version "1.2.9"
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4"
@@ -5184,11 +5243,21 @@ typescript@^4.9.5:
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
+typescript@next:
+ version "5.5.0-dev.20240502"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.0-dev.20240502.tgz#5c5c87e7c1b1b07d61c476ec5ba26da2b472e961"
+ integrity sha512-k2os5k45m5icuXipmT6PBBA2byI+V9WhDS5StUQbU1m9NYvivVPurukxM7otJSRfYPMgpLerkvsRM/bLAykaxg==
+
typescript@~3.9.10:
version "3.9.10"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8"
integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==
+typescript@~5.4:
+ version "5.4.5"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611"
+ integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==
+
uglify-js@^3.1.4:
version "3.17.4"
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c"