From e26d9242b7e64b71066b3a3f0c8b25cf091ec858 Mon Sep 17 00:00:00 2001 From: Gary Sassano <10464497+garysassano@users.noreply.github.com> Date: Sun, 6 Sep 2026 03:56:33 +0200 Subject: [PATCH] feat!: raise CDK and Node minimums for native references BREAKING CHANGE: Requires aws-cdk-lib >= 2.268.0, constructs >= 10.8.1, and Node.js >= 22. The jsii and TypeScript toolchain moves to 6. --- .github/workflows/build.yml | 6 +- .github/workflows/release.yml | 8 +- .github/workflows/upgrade-main.yml | 2 +- .projen/deps.json | 22 +- .projen/tasks.json | 2 +- .projenrc.ts | 24 +- API.md | 913 ++++++++++++++++++++----- README.md | 5 +- package-lock.json | 1021 ++++++++++------------------ package.json | 31 +- src/aws-fsx/ontap-file-system.ts | 2 +- tsconfig.dev.json | 7 +- 12 files changed, 1162 insertions(+), 881 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ca837cb..364d1a2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,7 +22,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Install dependencies run: npm install - name: build @@ -102,7 +102,7 @@ jobs: steps: - uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Download build artifacts uses: actions/download-artifact@v5 with: @@ -136,7 +136,7 @@ jobs: steps: - uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - uses: actions/setup-python@v6 with: python-version: 3.x diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 034e483..50b64f3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,7 +31,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Install dependencies run: npm ci - name: release @@ -72,7 +72,7 @@ jobs: steps: - uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Download build artifacts uses: actions/download-artifact@v5 with: @@ -96,7 +96,7 @@ jobs: steps: - uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Download build artifacts uses: actions/download-artifact@v5 with: @@ -136,7 +136,7 @@ jobs: steps: - uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - uses: actions/setup-python@v6 with: python-version: 3.x diff --git a/.github/workflows/upgrade-main.yml b/.github/workflows/upgrade-main.yml index acbde90..28c3dde 100644 --- a/.github/workflows/upgrade-main.yml +++ b/.github/workflows/upgrade-main.yml @@ -21,7 +21,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v5 with: - node-version: 18.x + node-version: 24.x - name: Install dependencies run: npm ci - name: Upgrade dependencies diff --git a/.projen/deps.json b/.projen/deps.json index 4bf821c..75778fb 100644 --- a/.projen/deps.json +++ b/.projen/deps.json @@ -2,12 +2,12 @@ "dependencies": [ { "name": "@aws-cdk/integ-runner", - "version": "2.168.0-alpha.0", + "version": "2.205.3", "type": "build" }, { "name": "@aws-cdk/integ-tests-alpha", - "version": "2.168.0-alpha.0", + "version": "2.268.0-alpha.0", "type": "build" }, { @@ -16,17 +16,17 @@ }, { "name": "@types/node", - "version": "^18", + "version": "^22", "type": "build" }, { "name": "@typescript-eslint/eslint-plugin", - "version": "^8", + "version": "^8.69.0", "type": "build" }, { "name": "@typescript-eslint/parser", - "version": "^8", + "version": "^8.69.0", "type": "build" }, { @@ -70,7 +70,7 @@ }, { "name": "jsii-docgen", - "version": "^10.5.0", + "version": "^10.12.6", "type": "build" }, { @@ -79,12 +79,12 @@ }, { "name": "jsii-rosetta", - "version": "~5.7.0", + "version": "~6.0.0", "type": "build" }, { "name": "jsii", - "version": "~5.7.0", + "version": "~6.0.0", "type": "build" }, { @@ -97,6 +97,7 @@ }, { "name": "ts-jest", + "version": "^29.4.12", "type": "build" }, { @@ -105,16 +106,17 @@ }, { "name": "typescript", + "version": "~6.0.0", "type": "build" }, { "name": "aws-cdk-lib", - "version": "^2.168.0", + "version": "^2.268.0", "type": "peer" }, { "name": "constructs", - "version": "^10.3.0", + "version": "^10.8.1", "type": "peer" } ], diff --git a/.projen/tasks.json b/.projen/tasks.json index 14df8ef..4f99653 100644 --- a/.projen/tasks.json +++ b/.projen/tasks.json @@ -308,7 +308,7 @@ }, "steps": [ { - "exec": "npx npm-check-updates@18 --upgrade --target=minor --peer --no-deprecated --dep=dev,peer,prod,optional --filter=@types/jest,eslint-config-prettier,eslint-import-resolver-typescript,eslint-plugin-import,eslint-plugin-prettier,jest,jsii-diff,jsii-pacmak,prettier,projen,ts-jest,ts-node,typescript" + "exec": "npx npm-check-updates@18 --upgrade --target=minor --peer --no-deprecated --dep=dev,peer,prod,optional --filter=@types/jest,eslint-config-prettier,eslint-import-resolver-typescript,eslint-plugin-import,eslint-plugin-prettier,jest,jsii-diff,jsii-pacmak,prettier,projen,ts-node" }, { "exec": "npm install" diff --git a/.projenrc.ts b/.projenrc.ts index 016c72f..70db4f2 100644 --- a/.projenrc.ts +++ b/.projenrc.ts @@ -2,14 +2,18 @@ import { ReleasableCommits, awscdk, github, javascript, release } from 'projen'; import { ArrowParens, NodePackageManager } from 'projen/lib/javascript'; import { SubPathExports } from './projenrc/sub-path-exports'; -let cdkVersion = '2.168.0'; +const cdkVersion = '2.268.0'; const project = new awscdk.AwsCdkConstructLibrary({ author: 'Open Construct Foundation', authorAddress: 'thorsten.hoeger@taimos.de', cdkVersion: cdkVersion, defaultReleaseBranch: 'main', - jsiiVersion: '~5.7.0', - constructsVersion: '10.3.0', + jsiiVersion: '~6.0.0', + typescriptVersion: '~6.0.0', + tsconfigDev: { compilerOptions: { types: ['node', 'jest'], rootDir: '.' } }, + // CDK/jsii tests use enough memory that Jest's CPU-based default can exhaust WSL and CI workers. + jestOptions: { jestConfig: { maxWorkers: 1 } }, + constructsVersion: '10.8.1', name: '@open-constructs/aws-cdk', projenrcTs: true, repositoryUrl: 'https://github.com/open-constructs/aws-cdk-library.git', @@ -66,8 +70,8 @@ Closes #. distName: 'open-constructs-aws-cdk', module: 'open_constructs_aws_cdk', }, - workflowNodeVersion: '18.x', - minNodeVersion: '18.0.0', + workflowNodeVersion: '24.x', + minNodeVersion: '22.0.0', // publishToMaven: { // mavenGroupId: 'org.open-constructs', // mavenArtifactId: 'aws-cdk', @@ -77,7 +81,7 @@ Closes #. // packageId: 'OpenConstructs.AwsCdk', // dotNetNamespace: 'OpenConstructs.AwsCdk', // }, - devDeps: [`@aws-cdk/integ-runner@${cdkVersion}-alpha.0`, `@aws-cdk/integ-tests-alpha@${cdkVersion}-alpha.0`], + devDeps: ['@aws-cdk/integ-runner@2.205.3', `@aws-cdk/integ-tests-alpha@${cdkVersion}-alpha.0`], eslintOptions: { dirs: ['src', 'test'], prettier: true, @@ -109,4 +113,12 @@ project.addTask('integ:update', { new SubPathExports(project); +// These releases support the jsii 6 / TypeScript 6 compiler family. +project.addDevDeps( + 'ts-jest@^29.4.12', + 'jsii-docgen@^10.12.6', + '@typescript-eslint/parser@^8.69.0', + '@typescript-eslint/eslint-plugin@^8.69.0', +); + project.synth(); diff --git a/API.md b/API.md index 67011c9..b61cb5f 100644 --- a/API.md +++ b/API.md @@ -58,6 +58,8 @@ new aws_cur.CostReport(scope: Construct, id: string, props: CostReportProps) | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -70,6 +72,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -171,7 +214,7 @@ Check whether the given construct is a Resource. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | costReportName | string | The name of the cost report. | | reportBucket | aws-cdk-lib.aws_s3.IBucket | The S3 bucket that stores the cost report. | @@ -196,16 +239,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -291,6 +335,8 @@ new aws_codeartifact.Domain(scope: Construct, id: string, props: DomainProps) | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | addToResourcePolicy | Adds a statement to the Codeartifact domain resource policy. | | grant | Grants permissions to the specified grantee on this CodeArtifact domain. | @@ -306,6 +352,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -539,7 +626,7 @@ The attributes of the domain to import. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | domainArn | string | The ARN (Amazon Resource Name) of this CodeArtifact domain. | | domainName | string | The name of this CodeArtifact domain. | @@ -567,16 +654,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -711,6 +799,8 @@ new aws_elasticache.IamUser(scope: Construct, id: string, props?: IamUserProps) | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | grant | Grant the given identity the specified actions. | | grantConnect | Permits an IAM principal to perform connect to the user. | @@ -725,6 +815,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -901,7 +1032,7 @@ Imports an existing IAM-enabled user from userId. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -927,16 +1058,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -1053,6 +1185,8 @@ new aws_ec2.InstanceConnectEndpoint(scope: Construct, id: string, props: Instanc | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -1065,6 +1199,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -1195,7 +1370,7 @@ Import an existing endpoint to the stack from its attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The connection object associated with the EC2 Instance Connect Endpoint. | | instanceConnectEndpointId | string | The ID of the EC2 Instance Connect Endpoint. | @@ -1220,16 +1395,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -1328,6 +1504,8 @@ new aws_redshiftserverless.Namespace(scope: Construct, id: string, props: Namesp | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | addIamRole | Adds a role to the namespace. | @@ -1341,6 +1519,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -1487,7 +1706,7 @@ Imports an existing Namespace from attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | namespaceArn | string | The namespace Arn. | | namespaceId | string | The namespace id. | @@ -1513,16 +1732,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -1634,6 +1854,8 @@ new aws_elasticache.NoPasswordRequiredUser(scope: Construct, id: string, props?: | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -1646,6 +1868,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -1776,7 +2039,7 @@ Imports an existing no password required user from attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -1802,16 +2065,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -1909,6 +2173,8 @@ new aws_fsx.OntapFileSystem(scope: Construct, id: string, props: OntapFileSystem | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -1921,6 +2187,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -2051,7 +2358,7 @@ Import an existing FSx for NetApp ONTAP file system from the given properties. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The security groups/rules used to allow network connections to the file system. | | dnsName | string | The management endpoint DNS name assigned to this file system. | @@ -2078,16 +2385,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -2213,6 +2521,8 @@ new aws_elasticache.PasswordUser(scope: Construct, id: string, props: PasswordUs | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -2225,6 +2535,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -2355,7 +2706,7 @@ Imports an existing password authentication user from attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | generatedSecret | aws-cdk-lib.aws_secretsmanager.ISecret | The secret containing the generated password. | | userArn | string | The ARN of the user. | @@ -2382,16 +2733,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -2503,6 +2855,8 @@ new aws_codeartifact.Repository(scope: Construct, id: string, props: RepositoryP | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | addToResourcePolicy | Adds a statement to the CodeArtifact repository resource policy. | | grant | Grants permissions to the specified grantee on this CodeArtifact repository. | @@ -2519,6 +2873,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -2762,7 +3157,7 @@ The attributes of the repository to import. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | domain | @open-constructs/aws-cdk.aws_codeartifact.IDomain | The domain that contains this repository. | | repositoryArn | string | The ARN (Amazon Resource Name) of this CodeArtifact repository. | @@ -2790,16 +3185,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -2938,6 +3334,8 @@ new aws_elasticache.ServerlessCache(scope: Construct, id: string, props: Serverl | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | grant | Grant the given identity the specified actions. | | grantConnect | Permits an IAM principal to perform connect to the serverless cache. | @@ -2955,6 +3353,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -3185,7 +3624,7 @@ Imports an existing ServerlessCache from attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The connection object associated with the ElastiCache Serverless Cache. | | endpointAddress | string | The DNS hostname of the cache node. | @@ -3213,16 +3652,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -3359,6 +3799,8 @@ new aws_elasticache.UserGroup(scope: Construct, id: string, props: UserGroupProp | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | addUser | Adds a user to the user group. | @@ -3372,6 +3814,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -3518,7 +4001,7 @@ Imports an existing user group from attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userGroupArn | string | The ARN of the user group. | | userGroupId | string | The ID of the user group. | @@ -3543,16 +4026,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -3656,6 +4140,8 @@ new aws_redshiftserverless.Workgroup(scope: Construct, id: string, props: Workgr | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | +| with | Applies one or more mixins to this construct. | +| applyCrossStackReferenceStrength | Override the cross-stack reference strength for this resource. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- @@ -3668,6 +4154,47 @@ public toString(): string Returns a string representation of this construct. +##### `with` + +```typescript +public with(mixins: ...IMixin[]): IConstruct +``` + +Applies one or more mixins to this construct. + +Mixins are applied in order. The list of constructs is captured at the +start of the call, so constructs added by a mixin will not be visited. +Use multiple `with()` calls if subsequent mixins should apply to added +constructs. + +###### `mixins`Required + +- *Type:* ...constructs.IMixin[] + +--- + +##### `applyCrossStackReferenceStrength` + +```typescript +public applyCrossStackReferenceStrength(strength: ReferenceStrength): void +``` + +Override the cross-stack reference strength for this resource. + +When set, any cross-stack reference to this resource will use the specified +mechanism instead of the global default determined by the +`@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for +selectively weakening specific references to avoid the "deadly embrace" problem +without changing the app-wide default. + +###### `strength`Required + +- *Type:* aws-cdk-lib.ReferenceStrength + +The reference strength to use for this resource. + +--- + ##### `applyRemovalPolicy` ```typescript @@ -3798,7 +4325,7 @@ Import an existing workgroup to the stack from its attributes. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The connection object associated with the Redshift Serverless Workgroup. | | endpointAddress | string | The workgroup endpoint address. | @@ -3827,16 +4354,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -5212,7 +5740,7 @@ const ontapFileSystemProps: aws_fsx.OntapFileSystemProps = { ... } | storageCapacityGiB | number | The storage capacity of the file system being created. | | vpc | aws-cdk-lib.aws_ec2.IVpc | The VPC to launch the file system in. | | backupId | string | The ID of the backup. | -| kmsKey | aws-cdk-lib.aws_kms.IKey | The KMS key used for encryption to protect your data at rest. | +| kmsKey | aws-cdk-lib.interfaces.aws_kms.IKeyRef | The KMS key used for encryption to protect your data at rest. | | removalPolicy | aws-cdk-lib.RemovalPolicy | Policy to apply when the file system is removed from the stack. | | securityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | Security Group to assign to this file system. | | storageType | aws-cdk-lib.aws_fsx.StorageType | The storage type for the file system that you're creating. | @@ -5268,10 +5796,10 @@ Specifies the backup to use if you're creating a file system from an existing ba ##### `kmsKey`Optional ```typescript -public readonly kmsKey: IKey; +public readonly kmsKey: IKeyRef; ``` -- *Type:* aws-cdk-lib.aws_kms.IKey +- *Type:* aws-cdk-lib.interfaces.aws_kms.IKeyRef - *Default:* the aws/fsx default KMS key for the AWS account being deployed into. The KMS key used for encryption to protect your data at rest. @@ -7441,7 +7969,7 @@ The principal to grant contribute permissions to. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | domainArn | string | The ARN of the Domain. | | domainName | string | The name of the Domain. | @@ -7469,16 +7997,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -7610,7 +8139,7 @@ Grant connect permissions to this user. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -7636,16 +8165,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -7712,7 +8242,7 @@ An EC2 Instance Connect Endpoint. | --- | --- | --- | | connections | aws-cdk-lib.aws_ec2.Connections | The network connections associated with this resource. | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | instanceConnectEndpointId | string | The ID of the EC2 Instance Connect Endpoint. | @@ -7748,16 +8278,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -7799,7 +8330,7 @@ A Redshift Serverless Namespace. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | namespaceArn | string | The namespace ARN. | | namespaceId | string | The namespace id. | @@ -7825,16 +8356,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -7900,7 +8432,7 @@ Interface for no password required users. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -7926,16 +8458,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8001,7 +8534,7 @@ Interface for password-authenticated users. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -8027,16 +8560,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8184,7 +8718,7 @@ The principal to grant permissions to. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | domain | @open-constructs/aws-cdk.aws_codeartifact.IDomain | The domain that contains the repository. | | repositoryArn | string | The ARN of the repository. | @@ -8212,16 +8746,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8374,7 +8909,7 @@ Create a CloudWatch metric. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The network connections associated with this resource. | | endpointAddress | string | The DNS hostname of the cache node. | @@ -8402,16 +8937,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8501,7 +9037,7 @@ Interface for a User. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userArn | string | The ARN of the user. | | userId | string | The ID of the user. | @@ -8527,16 +9063,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8602,7 +9139,7 @@ Interface for a User Group. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | userGroupArn | string | The ARN of the user group. | | userGroupId | string | The ID of the user group. | @@ -8627,16 +9164,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- @@ -8690,7 +9228,7 @@ A Redshift Serverless Workgroup. | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | -| env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | +| env | aws-cdk-lib.interfaces.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | connections | aws-cdk-lib.aws_ec2.Connections | The network connections associated with this resource. | | endpointAddress | string | The workgroup endpoint address. | @@ -8719,16 +9257,17 @@ The tree node. public readonly env: ResourceEnvironment; ``` -- *Type:* aws-cdk-lib.ResourceEnvironment +- *Type:* aws-cdk-lib.interfaces.ResourceEnvironment The environment this resource belongs to. -For resources that are created and managed by the CDK -(generally, those created by creating new class instances like Role, Bucket, etc.), -this is always the same as the environment of the stack they belong to; -however, for imported resources -(those obtained from static methods like fromRoleArn, fromBucketName, etc.), -that might be different than the stack they were imported into. +For resources that are created and managed in a Stack (those created by +creating new class instances like `new Role()`, `new Bucket()`, etc.), this +is always the same as the environment of the stack they belong to. + +For referenced resources (those obtained from referencing methods like +`Role.fromRoleArn()`, `Bucket.fromBucketName()`, etc.), they might be +different than the stack they were imported into. --- diff --git a/README.md b/README.md index 6feed6e..118e7b4 100644 --- a/README.md +++ b/README.md @@ -21,8 +21,9 @@ To get started with the Open Constructs Library, you'll need to have Node.js and ### Prerequisites -- Node.js (version 18.x or later) -- AWS CDK (version 2.120.0 or later) +- Node.js (version 22.0.0 or later) +- AWS CDK library (version 2.268.0 or later) +- Constructs (version 10.8.1 or later) ### Installation diff --git a/package-lock.json b/package-lock.json index d7c737f..61b8a2d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,15 +9,15 @@ "version": "0.0.0", "license": "Apache-2.0", "devDependencies": { - "@aws-cdk/integ-runner": "2.168.0-alpha.0", - "@aws-cdk/integ-tests-alpha": "2.168.0-alpha.0", + "@aws-cdk/integ-runner": "2.205.3", + "@aws-cdk/integ-tests-alpha": "2.268.0-alpha.0", "@types/jest": "^29.5.14", - "@types/node": "^18", - "@typescript-eslint/eslint-plugin": "^8", - "@typescript-eslint/parser": "^8", - "aws-cdk-lib": "2.168.0", + "@types/node": "^22", + "@typescript-eslint/eslint-plugin": "^8.69.0", + "@typescript-eslint/parser": "^8.69.0", + "aws-cdk-lib": "2.268.0", "commit-and-tag-version": "^12", - "constructs": "10.3.0", + "constructs": "10.8.1", "eslint": "^9", "eslint-config-prettier": "^10.1.8", "eslint-import-resolver-typescript": "^3.10.1", @@ -25,23 +25,23 @@ "eslint-plugin-prettier": "^5.5.4", "jest": "^29.7.0", "jest-junit": "^16", - "jsii": "~5.7.0", + "jsii": "~6.0.0", "jsii-diff": "^1.121.0", - "jsii-docgen": "^10.5.0", + "jsii-docgen": "^10.12.6", "jsii-pacmak": "^1.121.0", - "jsii-rosetta": "~5.7.0", + "jsii-rosetta": "~6.0.0", "prettier": "^3.7.4", "projen": "^0.98.30", - "ts-jest": "^29.4.6", + "ts-jest": "^29.4.12", "ts-node": "^10.9.2", - "typescript": "^5.9.3" + "typescript": "~6.0.0" }, "engines": { - "node": ">= 18.0.0" + "node": ">= 22.0.0" }, "peerDependencies": { - "aws-cdk-lib": "^2.168.0", - "constructs": "^10.3.0" + "aws-cdk-lib": "^2.268.0", + "constructs": "^10.8.1" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -65,41 +65,34 @@ } }, "node_modules/@aws-cdk/asset-awscli-v1": { - "version": "2.2.237", - "resolved": "https://registry.npmjs.org/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.237.tgz", - "integrity": "sha512-OlXylbXI52lboFVJBFLae+WB99qWmI121x/wXQHEMj2RaVNVbWE+OAHcDk2Um1BitUQCaTf9ki57B0Fuqx0Rvw==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/@aws-cdk/asset-kubectl-v20": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@aws-cdk/asset-kubectl-v20/-/asset-kubectl-v20-2.1.4.tgz", - "integrity": "sha512-Ps2MkmjYgMyflagqQ4dgTElc7Vwpqj8spw8dQVFiSeaaMPsuDSNsPax3/HjuDuwqsmLdaCZc6umlxYLpL0kYDA==", + "version": "2.2.292", + "resolved": "https://registry.npmjs.org/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.292.tgz", + "integrity": "sha512-d4aMFsAFj19FtxVyw8IzlUKv5Zu4sIvgnEjI2IU6IWBJgVbJ4aFnadANqYa+6MwB1CQbGOg0jh8WE77M+Nb/9A==", "dev": true, "license": "Apache-2.0" }, "node_modules/@aws-cdk/asset-node-proxy-agent-v6": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.0.tgz", - "integrity": "sha512-7bY3J8GCVxLupn/kNmpPc5VJz8grx+4RKfnnJiO1LG+uxkZfANZG3RMHhE+qQxxwkyQ9/MfPtTpf748UhR425A==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.2.tgz", + "integrity": "sha512-pDiuqH+qY3zM9lhhLjbKJ1tnKOHzQ2V4Wr/3qsxyKeKAkuPMI/BVGvZG1PbrikUw949cGVTfVEt4ETKKYnrj0Q==", "dev": true, "license": "Apache-2.0" }, "node_modules/@aws-cdk/aws-service-spec": { - "version": "0.1.33", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-service-spec/-/aws-service-spec-0.1.33.tgz", - "integrity": "sha512-Hj9DwC00pLFt2SdRpmOskyVRMHZT55jhG2SWfAPlp8I29ectVziFe1p2OB/281AiFwmQ3Kx3f66T0XJHnzS55Q==", + "version": "0.1.210", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-service-spec/-/aws-service-spec-0.1.210.tgz", + "integrity": "sha512-NBL/O9NphlgnoonDjGUuHwQv4ZMAFwdHmJsLqmoplfPnSEZXGNg2Fqobsf3ZEuhwZEV5cWKOarhWJQm5A7T0jw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-cdk/service-spec-types": "^0.0.100", - "@cdklabs/tskb": "^0.0.3" + "@aws-cdk/service-spec-types": "^0.0.276", + "@cdklabs/tskb": "^0.0.4" } }, "node_modules/@aws-cdk/cloud-assembly-schema": { - "version": "38.0.1", - "resolved": "https://registry.npmjs.org/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-38.0.1.tgz", - "integrity": "sha512-KvPe+NMWAulfNVwY7jenFhzhuLhLqJ/OPy5jx7wUstbjnYnjRVLpUHPU3yCjXFE0J8cuJVdx95BJ4rOs66Pi9w==", + "version": "54.22.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-54.22.0.tgz", + "integrity": "sha512-vsOuFw4+UC5+m2YZLhCecxt6wibIOmXCszA4uXaBcde2tZWx06vp1z5ByHnJeLS83A11XpAkW/TiIBGCL6jxuQ==", "bundleDependencies": [ "jsonschema", "semver" @@ -107,12 +100,15 @@ "dev": true, "license": "Apache-2.0", "dependencies": { - "jsonschema": "^1.4.1", - "semver": "^7.6.3" + "jsonschema": "^1.5.0", + "semver": "^7.8.5" + }, + "engines": { + "node": ">= 18.0.0" } }, "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema": { - "version": "1.4.1", + "version": "1.5.0", "dev": true, "inBundle": true, "license": "MIT", @@ -121,7 +117,7 @@ } }, "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver": { - "version": "7.6.3", + "version": "7.8.5", "dev": true, "inBundle": true, "license": "ISC", @@ -133,47 +129,43 @@ } }, "node_modules/@aws-cdk/integ-runner": { - "version": "2.168.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/integ-runner/-/integ-runner-2.168.0-alpha.0.tgz", - "integrity": "sha512-QGPaIOjdAwm406NXe4hgiW4UMoGnTYAgwwPMooPW+rx/WgwmFKOzCTOpm+3A2hykbwTMSep9gS74iCs5WgxmdA==", + "version": "2.205.3", + "resolved": "https://registry.npmjs.org/@aws-cdk/integ-runner/-/integ-runner-2.205.3.tgz", + "integrity": "sha512-0N2rDiJWn1EU+WqMFM6OFwrxBkz7YnNldDsAwTCpGp8mW4zCX6tHMc0uGqVUI9rkGi4VaHVsmY8jW57VzIWkxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-cdk/aws-service-spec": "0.1.33", - "aws-cdk": "2.168.0" + "@aws-cdk/aws-service-spec": "0.1.210" }, "bin": { "integ-runner": "bin/integ-runner" }, "engines": { - "node": ">= 14.15.0" - }, - "optionalDependencies": { - "fsevents": "2.3.2" + "node": ">= 18.0.0" } }, "node_modules/@aws-cdk/integ-tests-alpha": { - "version": "2.168.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/integ-tests-alpha/-/integ-tests-alpha-2.168.0-alpha.0.tgz", - "integrity": "sha512-4r2q4X+iDKef1xpOASP93oC8H7Q8HqsJwYG+6XILcA1lYHrstrf1lZBZHcZWVO8oEXaZTdz8/dZhtDWgum8nGg==", + "version": "2.268.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/integ-tests-alpha/-/integ-tests-alpha-2.268.0-alpha.0.tgz", + "integrity": "sha512-+ztFgUZODWS6tBAar5H2e3nTMfFXTiTu3rdfKovSCsuPiWovABkOXyRbBodaJEkI+ybVYvotlnhvwQM8yybW4Q==", "dev": true, "license": "Apache-2.0", "engines": { - "node": ">= 14.15.0" + "node": ">= 20.0.0" }, "peerDependencies": { - "aws-cdk-lib": "^2.168.0", - "constructs": "^10.0.0" + "aws-cdk-lib": "^2.268.0", + "constructs": "^10.5.0" } }, "node_modules/@aws-cdk/service-spec-types": { - "version": "0.0.100", - "resolved": "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.100.tgz", - "integrity": "sha512-z+jaWh3AIIGK3IHFXd7E3jc4ltkHoVQoB9O1MngIp1UluC0l0eZNwwSkWGGI5Ov+5BHhCwmtviOZQTu2BhU7Kw==", + "version": "0.0.276", + "resolved": "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.276.tgz", + "integrity": "sha512-8mlFXIFB84Jogyehe4aLdgSFtdad1lKOy7xfHsPbSKJk4rcihZNWKtzodu0yU12s9R2epTioMPLud3k3MGMgaw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@cdklabs/tskb": "^0.0.3" + "@cdklabs/tskb": "^0.0.4" } }, "node_modules/@babel/code-frame": { @@ -714,9 +706,9 @@ "license": "MIT" }, "node_modules/@cdklabs/tskb": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@cdklabs/tskb/-/tskb-0.0.3.tgz", - "integrity": "sha512-JR+MuD4awAXvutu7HArephXfZm09GPTaSAQUqNcJB5+ZENRm4kV+L6vJL6Tn1xHjCcHksO+HAqj3gYtm5K94vA==", + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@cdklabs/tskb/-/tskb-0.0.4.tgz", + "integrity": "sha512-NFx1X0l7p5DyHtLLEyNeh1hPN4UN9hTkZkzFs/Mp+kFk7dpdINGmGVpCfRDjJ2DrcNSNENUmT+w8g73TvmBbTw==", "dev": true, "license": "Apache-2.0" }, @@ -775,9 +767,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", - "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", "dev": true, "license": "MIT", "dependencies": { @@ -794,9 +786,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", "dev": true, "license": "MIT", "engines": { @@ -1046,14 +1038,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/console/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jest/core": { "version": "29.7.0", "dev": true, @@ -1100,14 +1084,6 @@ } } }, - "node_modules/@jest/core/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jest/environment": { "version": "29.7.0", "dev": true, @@ -1122,14 +1098,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/environment/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jest/expect": { "version": "29.7.0", "dev": true, @@ -1169,14 +1137,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/fake-timers/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jest/globals": { "version": "29.7.0", "dev": true, @@ -1233,14 +1193,6 @@ } } }, - "node_modules/@jest/reporters/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jest/schemas": { "version": "29.6.3", "dev": true, @@ -1334,14 +1286,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/types/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.5", "dev": true, @@ -1386,14 +1330,14 @@ } }, "node_modules/@jsii/check-node": { - "version": "1.113.0", - "resolved": "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.113.0.tgz", - "integrity": "sha512-6iPLiQiSVn8/D89ycIpj78cMfmxOIU/F9RUTVYwLqKPw4cxpR+BCC4N83WKyGkZxhOxULLa9f5q+rkWq/vAMpA==", + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.140.0.tgz", + "integrity": "sha512-NTiY2Nd9ZtACPZjaU+k9+oiaD191Yw0FoiUR7bB+NoOtB5nMEhrLKn5O/PYmCIZGK0G1JaJs+PmLcyj68J6RKw==", "dev": true, "license": "Apache-2.0", "dependencies": { "chalk": "^4.1.2", - "semver": "^7.7.2" + "semver": "^7.8.5" }, "engines": { "node": ">= 14.17.0" @@ -1611,14 +1555,6 @@ "@types/node": "*" } }, - "node_modules/@types/graceful-fs/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", "dev": true, @@ -1669,13 +1605,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "18.19.130", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.130.tgz", - "integrity": "sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==", + "version": "22.20.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.20.1.tgz", + "integrity": "sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~6.21.0" } }, "node_modules/@types/normalize-package-data": { @@ -1702,20 +1638,20 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.50.0.tgz", - "integrity": "sha512-O7QnmOXYKVtPrfYzMolrCTfkezCJS9+ljLdKW/+DCvRsc3UAz+sbH6Xcsv7p30+0OwUbeWfUDAQE0vpabZ3QLg==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.69.0.tgz", + "integrity": "sha512-t5jQTKPIgVW1PE6dR6H6Qz5gm8zjMlX5/2gRaOGd9eO6V7J+tQc6iWKukEe7dY8u9HyYasQ0yfF0/FSSTEO2gA==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.50.0", - "@typescript-eslint/type-utils": "8.50.0", - "@typescript-eslint/utils": "8.50.0", - "@typescript-eslint/visitor-keys": "8.50.0", - "ignore": "^7.0.0", + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.69.0", + "@typescript-eslint/type-utils": "8.69.0", + "@typescript-eslint/utils": "8.69.0", + "@typescript-eslint/visitor-keys": "8.69.0", + "ignore": "^7.0.5", "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1725,23 +1661,23 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.50.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" + "@typescript-eslint/parser": "^8.69.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/parser": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.50.0.tgz", - "integrity": "sha512-6/cmF2piao+f6wSxUsJLZjck7OQsYyRtcOZS02k7XINSNlz93v6emM8WutDQSXnroG2xwYlEVHJI+cPA7CPM3Q==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.69.0.tgz", + "integrity": "sha512-l4b0DhWioGg6Gt2ebGlvfkFMOjRsauxtsnDRwUSRX1qHq3HdTfQHV8wW9zEXeciai6HfeaKOedQn2Zoofx3WBw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.50.0", - "@typescript-eslint/types": "8.50.0", - "@typescript-eslint/typescript-estree": "8.50.0", - "@typescript-eslint/visitor-keys": "8.50.0", - "debug": "^4.3.4" + "@typescript-eslint/scope-manager": "8.69.0", + "@typescript-eslint/types": "8.69.0", + "@typescript-eslint/typescript-estree": "8.69.0", + "@typescript-eslint/visitor-keys": "8.69.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1751,20 +1687,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.50.0.tgz", - "integrity": "sha512-Cg/nQcL1BcoTijEWyx4mkVC56r8dj44bFDvBdygifuS20f3OZCHmFbjF34DPSi07kwlFvqfv/xOLnJ5DquxSGQ==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.69.0.tgz", + "integrity": "sha512-yi4obFrHMmnsesWehHbkg9zMA7Jt8cXT+mKM08G999pH1yT6nqgsHx7MYm0uY1wAj8CqiBXYRJ7WAT0QdQHQXg==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.50.0", - "@typescript-eslint/types": "^8.50.0", - "debug": "^4.3.4" + "@typescript-eslint/tsconfig-utils": "^8.69.0", + "@typescript-eslint/types": "^8.69.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1774,18 +1710,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.50.0.tgz", - "integrity": "sha512-xCwfuCZjhIqy7+HKxBLrDVT5q/iq7XBVBXLn57RTIIpelLtEIZHXAF/Upa3+gaCpeV1NNS5Z9A+ID6jn50VD4A==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.69.0.tgz", + "integrity": "sha512-ewfspqWvSxKSOaplqAUNbaSFO0eB6w1EtQ+esfYFRm3614Ty4uNtExkcbgd6nWsXphbqKyf9ZYdbZdv2xEoWEQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.50.0", - "@typescript-eslint/visitor-keys": "8.50.0" + "@typescript-eslint/types": "8.69.0", + "@typescript-eslint/visitor-keys": "8.69.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1796,9 +1732,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.50.0.tgz", - "integrity": "sha512-vxd3G/ybKTSlm31MOA96gqvrRGv9RJ7LGtZCn2Vrc5htA0zCDvcMqUkifcjrWNNKXHUU3WCkYOzzVSFBd0wa2w==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.69.0.tgz", + "integrity": "sha512-xNqK7YTDZsLniQMV/4rpFR8Z5JlqeRvVjuG1YgF/mdPVH84HSD19L8CczMA0qg2RfwEV231GHH3VnToJDo4MfQ==", "dev": true, "license": "MIT", "engines": { @@ -1809,21 +1745,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.50.0.tgz", - "integrity": "sha512-7OciHT2lKCewR0mFoBrvZJ4AXTMe/sYOe87289WAViOocEmDjjv8MvIOT2XESuKj9jp8u3SZYUSh89QA4S1kQw==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.69.0.tgz", + "integrity": "sha512-ZfoJAVg3JZndQEpEl9petVlxau3lRuElc4HRMuAlLCf8to04/iHz692RUSNmXKDjEuJmIL+KZ2/BsOcBc16dsA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.50.0", - "@typescript-eslint/typescript-estree": "8.50.0", - "@typescript-eslint/utils": "8.50.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/types": "8.69.0", + "@typescript-eslint/typescript-estree": "8.69.0", + "@typescript-eslint/utils": "8.69.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1833,14 +1769,14 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", - "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.69.0.tgz", + "integrity": "sha512-K3VrubUPhlo9VDBS6QdI8YB5j7ClpqLRdefcz6PFrhnwicehBweqQ9Evhl4l+FYz0HdDmMqIiSX0aldGRYtDCA==", "dev": true, "license": "MIT", "engines": { @@ -1852,21 +1788,21 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.50.0.tgz", - "integrity": "sha512-W7SVAGBR/IX7zm1t70Yujpbk+zdPq/u4soeFSknWFdXIFuWsBGBOUu/Tn/I6KHSKvSh91OiMuaSnYp3mtPt5IQ==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.69.0.tgz", + "integrity": "sha512-AdFkgqck3Vudb/kWnxlyafU/4aBhHrbQ9locP2N4psXTy5mOBg0SHJumnLvx7r6g1gV4DKvUFwV2nJZBoqOD8w==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.50.0", - "@typescript-eslint/tsconfig-utils": "8.50.0", - "@typescript-eslint/types": "8.50.0", - "@typescript-eslint/visitor-keys": "8.50.0", - "debug": "^4.3.4", - "minimatch": "^9.0.4", - "semver": "^7.6.0", + "@typescript-eslint/project-service": "8.69.0", + "@typescript-eslint/tsconfig-utils": "8.69.0", + "@typescript-eslint/types": "8.69.0", + "@typescript-eslint/visitor-keys": "8.69.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.1.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1876,36 +1812,36 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", "dev": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^5.0.8" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "18 || 20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@typescript-eslint/utils": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.50.0.tgz", - "integrity": "sha512-87KgUXET09CRjGCi2Ejxy3PULXna63/bMYv72tCAlDJC3Yqwln0HiFJ3VJMst2+mEtNtZu5oFvX4qJGjKsnAgg==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.69.0.tgz", + "integrity": "sha512-tUbx60BBqQa31kXF5MCsOOLL5E/WzUuxIn7YpAvq+eaUlqvk8/NXnXMBNAdLCr0icjkzem7iUA5QqWHe/hJ1aw==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.50.0", - "@typescript-eslint/types": "8.50.0", - "@typescript-eslint/typescript-estree": "8.50.0" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.69.0", + "@typescript-eslint/types": "8.69.0", + "@typescript-eslint/typescript-estree": "8.69.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1915,19 +1851,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.50.0.tgz", - "integrity": "sha512-Xzmnb58+Db78gT/CCj/PVCvK+zxbnsw6F+O1oheYszJbBSdEjVhQi3C/Xttzxgi/GLmpvOggRs1RFpiJ8+c34Q==", + "version": "8.69.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.69.0.tgz", + "integrity": "sha512-+rmdgPA+EXkNgKYvHvFfhrs35utXbwaC5PGpDquSXcoXQDKUA5UjV0LmTucG/4JXkM31BTu4TilHtrN8IVBe8w==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.50.0", - "eslint-visitor-keys": "^4.2.1" + "@typescript-eslint/types": "8.69.0", + "eslint-visitor-keys": "^5.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1938,13 +1874,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" @@ -2220,9 +2156,9 @@ ] }, "node_modules/@xmldom/xmldom": { - "version": "0.9.8", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", - "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", + "version": "0.9.12", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.12.tgz", + "integrity": "sha512-5AXjrcMClTryPe9LgZrygpB1lj7s0S9E0+W+AHaVKAVyHanafK86iPSvG5xHVSp/jC+VH1UXu0TAEmY279xH7A==", "dev": true, "license": "MIT", "engines": { @@ -2513,28 +2449,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/aws-cdk": { - "version": "2.168.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.168.0.tgz", - "integrity": "sha512-jYsHcXBknuocRsdDUMZbcDN4E9EQE2F8oxNb7DtD38bn4/7TJehexxYg9yeAOH1pA120bGwLDX8STcAmf0kGIg==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "cdk": "bin/cdk" - }, - "engines": { - "node": ">= 14.15.0" - }, - "optionalDependencies": { - "fsevents": "2.3.2" - } - }, "node_modules/aws-cdk-lib": { - "version": "2.168.0", - "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.168.0.tgz", - "integrity": "sha512-eZkXYJaCLKRY1XzFKWHPr/7vSMMRmhz8p2oZacfxzr6XrzWcD5xtoNx2qIf215jaAI5Hewg31AMGZvQRQVNajw==", + "version": "2.268.0", + "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.268.0.tgz", + "integrity": "sha512-bm0mWG0xxIJtV0vhkmnFy6TFgwqBowvXeRKudhAsjM0TMOEcyFPBbwjUNlAA6S1+AjUwEt5yaMrT0A/P97lUqg==", "bundleDependencies": [ + "@aws/cloudformation-validate", "@balena/dockerignore", + "@aws-cdk/cloud-assembly-api", "case", "fs-extra", "ignore", @@ -2542,105 +2464,85 @@ "minimatch", "punycode", "semver", - "table", "yaml", "mime-types" ], "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-cdk/asset-awscli-v1": "^2.2.208", - "@aws-cdk/asset-kubectl-v20": "^2.1.3", - "@aws-cdk/asset-node-proxy-agent-v6": "^2.1.0", - "@aws-cdk/cloud-assembly-schema": "^38.0.1", + "@aws-cdk/asset-awscli-v1": "2.2.292", + "@aws-cdk/asset-node-proxy-agent-v6": "^2.1.2", + "@aws-cdk/cloud-assembly-api": "^2.2.6", + "@aws-cdk/cloud-assembly-schema": "^54.11.0", + "@aws/cloudformation-validate": "1.8.0-beta", "@balena/dockerignore": "^1.0.2", "case": "1.6.3", - "fs-extra": "^11.2.0", + "fs-extra": "^11.3.6", "ignore": "^5.3.2", - "jsonschema": "^1.4.1", + "jsonschema": "^1.5.0", "mime-types": "^2.1.35", - "minimatch": "^3.1.2", + "minimatch": "^10.2.5", "punycode": "^2.3.1", - "semver": "^7.6.3", - "table": "^6.8.2", - "yaml": "1.10.2" + "semver": "^7.8.5", + "yaml": "1.10.3" }, "engines": { - "node": ">= 14.15.0" + "node": ">= 20.0.0" }, "peerDependencies": { - "constructs": "^10.0.0" + "constructs": "^10.5.0" } }, - "node_modules/aws-cdk-lib/node_modules/@balena/dockerignore": { - "version": "1.0.2", + "node_modules/aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api": { + "version": "2.2.6", "dev": true, "inBundle": true, - "license": "Apache-2.0" - }, - "node_modules/aws-cdk-lib/node_modules/ajv": { - "version": "8.17.1", - "dev": true, - "inBundle": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" + "jsonschema": "^1.5.0", + "semver": "^7.8.4" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">= 18.0.0" + }, + "peerDependencies": { + "@aws-cdk/cloud-assembly-schema": ">=54.5.0" } }, - "node_modules/aws-cdk-lib/node_modules/ansi-regex": { - "version": "5.0.1", + "node_modules/aws-cdk-lib/node_modules/@aws/cloudformation-validate": { + "version": "1.8.0-beta", "dev": true, "inBundle": true, - "license": "MIT", + "license": "Apache-2.0", "engines": { - "node": ">=8" + "node": ">=20.0.0" } }, - "node_modules/aws-cdk-lib/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/aws-cdk-lib/node_modules/@balena/dockerignore": { + "version": "1.0.2", "dev": true, "inBundle": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } + "license": "Apache-2.0" }, - "node_modules/aws-cdk-lib/node_modules/astral-regex": { - "version": "2.0.0", + "node_modules/aws-cdk-lib/node_modules/balanced-match": { + "version": "4.0.4", "dev": true, "inBundle": true, "license": "MIT", "engines": { - "node": ">=8" + "node": "18 || 20 || >=22" } }, - "node_modules/aws-cdk-lib/node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "inBundle": true, - "license": "MIT" - }, "node_modules/aws-cdk-lib/node_modules/brace-expansion": { - "version": "1.1.11", + "version": "5.0.9", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" } }, "node_modules/aws-cdk-lib/node_modules/case": { @@ -2652,50 +2554,8 @@ "node": ">= 0.8.0" } }, - "node_modules/aws-cdk-lib/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/aws-cdk-lib/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "inBundle": true, - "license": "MIT" - }, - "node_modules/aws-cdk-lib/node_modules/concat-map": { - "version": "0.0.1", - "dev": true, - "inBundle": true, - "license": "MIT" - }, - "node_modules/aws-cdk-lib/node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "inBundle": true, - "license": "MIT" - }, - "node_modules/aws-cdk-lib/node_modules/fast-deep-equal": { - "version": "3.1.3", - "dev": true, - "inBundle": true, - "license": "MIT" - }, - "node_modules/aws-cdk-lib/node_modules/fast-uri": { - "version": "3.0.3", - "dev": true, - "inBundle": true, - "license": "BSD-3-Clause" - }, "node_modules/aws-cdk-lib/node_modules/fs-extra": { - "version": "11.2.0", + "version": "11.3.6", "dev": true, "inBundle": true, "license": "MIT", @@ -2723,23 +2583,8 @@ "node": ">= 4" } }, - "node_modules/aws-cdk-lib/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/aws-cdk-lib/node_modules/json-schema-traverse": { - "version": "1.0.0", - "dev": true, - "inBundle": true, - "license": "MIT" - }, "node_modules/aws-cdk-lib/node_modules/jsonfile": { - "version": "6.1.0", + "version": "6.2.1", "dev": true, "inBundle": true, "license": "MIT", @@ -2751,7 +2596,7 @@ } }, "node_modules/aws-cdk-lib/node_modules/jsonschema": { - "version": "1.4.1", + "version": "1.5.0", "dev": true, "inBundle": true, "license": "MIT", @@ -2759,12 +2604,6 @@ "node": "*" } }, - "node_modules/aws-cdk-lib/node_modules/lodash.truncate": { - "version": "4.4.2", - "dev": true, - "inBundle": true, - "license": "MIT" - }, "node_modules/aws-cdk-lib/node_modules/mime-db": { "version": "1.52.0", "dev": true, @@ -2787,15 +2626,18 @@ } }, "node_modules/aws-cdk-lib/node_modules/minimatch": { - "version": "3.1.2", + "version": "10.2.5", "dev": true, "inBundle": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^5.0.5" }, "engines": { - "node": "*" + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/aws-cdk-lib/node_modules/punycode": { @@ -2807,17 +2649,8 @@ "node": ">=6" } }, - "node_modules/aws-cdk-lib/node_modules/require-from-string": { - "version": "2.0.2", - "dev": true, - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/aws-cdk-lib/node_modules/semver": { - "version": "7.6.3", + "version": "7.8.5", "dev": true, "inBundle": true, "license": "ISC", @@ -2828,65 +2661,6 @@ "node": ">=10" } }, - "node_modules/aws-cdk-lib/node_modules/slice-ansi": { - "version": "4.0.0", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/aws-cdk-lib/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "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-cdk-lib/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/aws-cdk-lib/node_modules/table": { - "version": "6.8.2", - "dev": true, - "inBundle": true, - "license": "BSD-3-Clause", - "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/aws-cdk-lib/node_modules/universalify": { "version": "2.0.1", "dev": true, @@ -2897,7 +2671,7 @@ } }, "node_modules/aws-cdk-lib/node_modules/yaml": { - "version": "1.10.2", + "version": "1.10.3", "dev": true, "inBundle": true, "license": "ISC", @@ -3020,13 +2794,26 @@ "license": "MIT" }, "node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/brace-expansion/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" } }, "node_modules/braces": { @@ -3834,13 +3621,11 @@ } }, "node_modules/constructs": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.3.0.tgz", - "integrity": "sha512-vbK8i3rIb/xwZxSpTjz3SagHn1qq9BChLEfy5Hf6fB3/2eFbrwt2n9kHwQcS0CPTRBesreeAcsJfMq2229FnbQ==", + "version": "10.8.1", + "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.8.1.tgz", + "integrity": "sha512-98yGXYyhePqPYh3cYu8nzBERmAhC0DONe3UD03okK0nehZ7hYP4wgZuf02a04+uOWxnTJ5Rpp5m0GRNpwyLGGA==", "dev": true, - "engines": { - "node": ">= 16.14.0" - } + "license": "Apache-2.0" }, "node_modules/conventional-changelog-config-spec": { "version": "2.1.0", @@ -5103,21 +4888,6 @@ "dev": true, "license": "ISC" }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { "version": "1.1.2", "dev": true, @@ -5437,7 +5207,9 @@ "license": "ISC" }, "node_modules/handlebars": { - "version": "4.7.8", + "version": "4.7.9", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.9.tgz", + "integrity": "sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6270,14 +6042,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-circus/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-cli": { "version": "29.7.0", "dev": true, @@ -6392,16 +6156,6 @@ } } }, - "node_modules/jest-config/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-diff": { "version": "29.7.0", "dev": true, @@ -6458,14 +6212,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-environment-node/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-get-type": { "version": "29.6.3", "dev": true, @@ -6498,14 +6244,6 @@ "fsevents": "^2.3.2" } }, - "node_modules/jest-haste-map/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-haste-map/node_modules/fsevents": { "version": "2.3.3", "dev": true, @@ -6592,14 +6330,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-mock/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-pnp-resolver": { "version": "1.2.3", "dev": true, @@ -6686,14 +6416,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-runner/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-runtime": { "version": "29.7.0", "dev": true, @@ -6726,14 +6448,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-runtime/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-runtime/node_modules/strip-bom": { "version": "4.0.0", "dev": true, @@ -6788,14 +6502,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-util/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-validate": { "version": "29.7.0", "dev": true, @@ -6841,14 +6547,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-watcher/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-worker": { "version": "29.7.0", "dev": true, @@ -6863,14 +6561,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-worker/node_modules/@types/node": { - "version": "20.11.30", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/jest-worker/node_modules/supports-color": { "version": "8.1.1", "dev": true, @@ -6914,30 +6604,30 @@ } }, "node_modules/jsii": { - "version": "5.7.22", - "resolved": "https://registry.npmjs.org/jsii/-/jsii-5.7.22.tgz", - "integrity": "sha512-hphnBdNJMhiNOreQX/rdY2hifdKEY2SZ/sQSIxNkAWftj+hhgv34Y1wNijZAKfzUbHykGJCkD6ksSUbeCy6RyA==", + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/jsii/-/jsii-6.0.12.tgz", + "integrity": "sha512-QGi87rQ853gJhjc2+M/UHHRAhIPxShGmhtZPGgVA1vmmPEOn0kKiP+3pWziDmPNZojXtgpCCdfF8neOMWUA+yA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@jsii/check-node": "1.113.0", - "@jsii/spec": "^1.113.0", + "@jsii/check-node": "1.140.0", + "@jsii/spec": "1.140.0", "case": "^1.6.3", "chalk": "^4", "fast-deep-equal": "^3.1.3", "log4js": "^6.9.1", - "semver": "^7.7.2", + "semver": "^7.8.5", "semver-intersect": "^1.5.0", "sort-json": "^2.0.1", - "spdx-license-list": "^6.10.0", - "typescript": "~5.7", - "yargs": "^17.7.2" + "spdx-license-list": "^6.12.0", + "typescript": "~6.0", + "yargs": "^17.7.3" }, "bin": { "jsii": "bin/jsii" }, "engines": { - "node": ">= 18.12.0" + "node": ">= 20.16.0" } }, "node_modules/jsii-diff": { @@ -7020,26 +6710,55 @@ } }, "node_modules/jsii-docgen": { - "version": "10.11.7", - "resolved": "https://registry.npmjs.org/jsii-docgen/-/jsii-docgen-10.11.7.tgz", - "integrity": "sha512-B92spJU5Pv4AAcAeIJPa0D5JtQLcJan/O7IlbsWGcfSRe9I4HlyzjAkFVjN37dbO7eYCfSBPxwfZdgGZLNzdRQ==", + "version": "10.12.6", + "resolved": "https://registry.npmjs.org/jsii-docgen/-/jsii-docgen-10.12.6.tgz", + "integrity": "sha512-MShAZLUkLLO2B8UG4rm7nlLRaBY7ePdZVagl1I4d0r9qnResexL7cqJN4qEmxB7qsRZhpCY2tLhb3wlpZlH3cg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@jsii/spec": "^1.121.0", + "@jsii/spec": "^1.140.0", "case": "^1.6.3", "fast-glob": "^3.3.3", "fs-extra": "^10.1.0", - "jsii-reflect": "^1.121.0", - "json-stream-stringify": "^3.1.6", - "semver": "^7.7.3", - "yargs": "^16.2.0" + "jsii-reflect": "^1.140.0", + "json-stream-stringify": "^3.1.7", + "semver": "^7.8.5", + "yargs": "^16.2.2" }, "bin": { "jsii-docgen": "bin/jsii-docgen" }, "peerDependencies": { - "jsii-rosetta": "^1.85.0 || ~5.0.14 || ~5.1.2 || ~5.2.0 || ~5.3.0 || ~5.4.0 || ~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ~5.9.1" + "jsii-rosetta": "^1.85.0 || ~5.0.14 || ~5.1.2 || ~5.2.0 || ~5.3.0 || ~5.4.0 || ~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ~5.9.1 || ~6.0.0" + } + }, + "node_modules/jsii-docgen/node_modules/@jsii/spec": { + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/@jsii/spec/-/spec-1.140.0.tgz", + "integrity": "sha512-1rGS+iJtejQ3ybSJfV0if9PzZuSQmORbVF3MkqE0csatF//Rj8raCqptZLMX6rkdfZ8C2Jsw5hU4PrmuCzBk6A==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 14.17.0" + } + }, + "node_modules/jsii-docgen/node_modules/yargs": { + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.2.tgz", + "integrity": "sha512-Nt9ZJjXTv5R8MHbqby/wXQ6Gi0Bb3TcYZkR1bzuL4yB2OxWPkXknz513gEF0GoA6tn00UpbPvERW8rzCuWCA6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" } }, "node_modules/jsii-pacmak": { @@ -7142,18 +6861,18 @@ } }, "node_modules/jsii-reflect": { - "version": "1.121.0", - "resolved": "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.121.0.tgz", - "integrity": "sha512-TqZdP8GwGq5+Qv96yuNMWapkd8oXEYVRKEqIGwR1UICcLOOXwF5CKzVG9tzNk37neWkIkE4U2PG/4I+bvIcFMQ==", + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.140.0.tgz", + "integrity": "sha512-8bRD6WSQfWrB6/31sz92bi21HWaMVzvxZUgaJt/IiT3RqGKc57dO+idekn8WNpTBneE9vVhj24UDExHH8YfJAQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@jsii/check-node": "1.121.0", - "@jsii/spec": "1.121.0", + "@jsii/check-node": "1.140.0", + "@jsii/spec": "1.140.0", "chalk": "^4", "fs-extra": "^10.1.0", - "oo-ascii-tree": "^1.121.0", - "yargs": "^17.7.2" + "oo-ascii-tree": "^1.140.0", + "yargs": "^17.7.3" }, "bin": { "jsii-query": "bin/jsii-query", @@ -7163,16 +6882,12 @@ "node": ">= 14.17.0" } }, - "node_modules/jsii-reflect/node_modules/@jsii/check-node": { - "version": "1.121.0", - "resolved": "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.121.0.tgz", - "integrity": "sha512-0mPTsD9PDx/+Kvi6xNfOMzcxWW/nzo74rp96vN5qVg8pZThtzHqR14X0z4E/SqfYVs6Tv+Xiu4ctRRFmwe4xtQ==", + "node_modules/jsii-reflect/node_modules/@jsii/spec": { + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/@jsii/spec/-/spec-1.140.0.tgz", + "integrity": "sha512-1rGS+iJtejQ3ybSJfV0if9PzZuSQmORbVF3MkqE0csatF//Rj8raCqptZLMX6rkdfZ8C2Jsw5hU4PrmuCzBk6A==", "dev": true, "license": "Apache-2.0", - "dependencies": { - "chalk": "^4.1.2", - "semver": "^7.7.2" - }, "engines": { "node": ">= 14.17.0" } @@ -7193,9 +6908,9 @@ } }, "node_modules/jsii-reflect/node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "version": "17.7.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.3.tgz", + "integrity": "sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==", "dev": true, "license": "MIT", "dependencies": { @@ -7222,35 +6937,47 @@ } }, "node_modules/jsii-rosetta": { - "version": "5.7.23", - "resolved": "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-5.7.23.tgz", - "integrity": "sha512-NRvHqYH8Pb9D4S+O0nQrEKwCBp7m9cC/EtmagDKjABX93d5lE4KHpLfRvac9lpYgQkn0GaLQu9yYmVgsqR38sA==", + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-6.0.13.tgz", + "integrity": "sha512-Ru3fbLNvCYIwsdrhIAjr/HFk0qfg15ssCqq1Ie6TL8V1Rq56fBbIzmDsH8CF60WJA2ZLXrUXrmbtKgzdQvHjNg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@jsii/check-node": "1.113.0", - "@jsii/spec": "^1.113.0", - "@xmldom/xmldom": "^0.9.8", + "@jsii/check-node": "^1.140.0", + "@jsii/spec": "^1.140.0", + "@xmldom/xmldom": "^0.9.12", "chalk": "^4", "commonmark": "^0.31.2", "fast-glob": "^3.3.3", - "jsii": "~5.7.0", - "semver": "^7.7.2", + "jsii": "~6.0.0", + "semver": "^7.8.5", "semver-intersect": "^1.5.0", "stream-json": "^1.9.1", - "typescript": "~5.7", + "typescript": "~6.0", "workerpool": "^6.5.1", - "yargs": "^17.7.2" + "yargs": "^17.7.3" }, "bin": { "jsii-rosetta": "bin/jsii-rosetta" }, "engines": { - "node": ">= 18.12.0" + "node": ">= 20.16.0" + } + }, + "node_modules/jsii-rosetta/node_modules/@jsii/spec": { + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/@jsii/spec/-/spec-1.140.0.tgz", + "integrity": "sha512-1rGS+iJtejQ3ybSJfV0if9PzZuSQmORbVF3MkqE0csatF//Rj8raCqptZLMX6rkdfZ8C2Jsw5hU4PrmuCzBk6A==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 14.17.0" } }, "node_modules/jsii-rosetta/node_modules/cliui": { "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "license": "ISC", "dependencies": { @@ -7262,22 +6989,10 @@ "node": ">=12" } }, - "node_modules/jsii-rosetta/node_modules/typescript": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", - "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/jsii-rosetta/node_modules/yargs": { - "version": "17.7.2", + "version": "17.7.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.3.tgz", + "integrity": "sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==", "dev": true, "license": "MIT", "dependencies": { @@ -7295,14 +7010,28 @@ }, "node_modules/jsii-rosetta/node_modules/yargs-parser": { "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "license": "ISC", "engines": { "node": ">=12" } }, + "node_modules/jsii/node_modules/@jsii/spec": { + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/@jsii/spec/-/spec-1.140.0.tgz", + "integrity": "sha512-1rGS+iJtejQ3ybSJfV0if9PzZuSQmORbVF3MkqE0csatF//Rj8raCqptZLMX6rkdfZ8C2Jsw5hU4PrmuCzBk6A==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 14.17.0" + } + }, "node_modules/jsii/node_modules/cliui": { "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "license": "ISC", "dependencies": { @@ -7314,22 +7043,10 @@ "node": ">=12" } }, - "node_modules/jsii/node_modules/typescript": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", - "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/jsii/node_modules/yargs": { - "version": "17.7.2", + "version": "17.7.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.3.tgz", + "integrity": "sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==", "dev": true, "license": "MIT", "dependencies": { @@ -7347,6 +7064,8 @@ }, "node_modules/jsii/node_modules/yargs-parser": { "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "license": "ISC", "engines": { @@ -7383,9 +7102,9 @@ "license": "MIT" }, "node_modules/json-stream-stringify": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", - "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.7.tgz", + "integrity": "sha512-F4MWetLtY42YMaAKw5cV4e47zMD5aOT+tjjQWjX18ACtdkQ5Y/vrcfbcQ107Rh+MXjOCIx4KhW0wPmOvG8iQ5w==", "dev": true, "license": "MIT", "engines": { @@ -8042,9 +7761,9 @@ } }, "node_modules/oo-ascii-tree": { - "version": "1.121.0", - "resolved": "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.121.0.tgz", - "integrity": "sha512-Dwzge50NT4bUxynVLtn/eFnl5Vv+8thNDVhw2MFZf6t5DmtIWKCDdQGUrIhN6PMEloDXVvPIW//oZtooSkp79g==", + "version": "1.140.0", + "resolved": "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.140.0.tgz", + "integrity": "sha512-swJJN43RwwtZAtNQu03W8rqNtTUvq9T4eGU4KupRq7I9/R3exHobbF/OOm5sl6tGcumsQrNU97NBx7x+LEIPgA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -9762,9 +9481,9 @@ } }, "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", "dev": true, "license": "ISC", "bin": { @@ -10025,9 +9744,9 @@ "license": "CC0-1.0" }, "node_modules/spdx-license-list": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/spdx-license-list/-/spdx-license-list-6.10.0.tgz", - "integrity": "sha512-wF3RhDFoqdu14d1Prv6c8aNU0FSRuSFJpNjWeygIZcNZEwPxp7I5/Hwo8j6lSkBKWAIkSQrKefrC5N0lvOP0Gw==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/spdx-license-list/-/spdx-license-list-6.12.0.tgz", + "integrity": "sha512-+nUYqm3aZMSHbjsthK+i/HHI2okTElCvqwUd4k8QcSk+FTGgjq+fsdFj2wZOaX6XmR2JdWhf/NeflNnvKOjcnQ==", "dev": true, "license": "CC0-1.0", "engines": { @@ -10480,9 +10199,9 @@ } }, "node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", "dev": true, "license": "MIT", "engines": { @@ -10493,19 +10212,19 @@ } }, "node_modules/ts-jest": { - "version": "29.4.6", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", - "integrity": "sha512-fSpWtOO/1AjSNQguk43hb/JCo16oJDnMJf3CdEGNkqsEX3t0KX96xvyX1D7PfLCpVoKu4MfVrqUkFyblYoY4lA==", + "version": "29.4.12", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.12.tgz", + "integrity": "sha512-Ov6ClY53Fflh6BGAnY2DlTq1hYDrTycz2PVTXBWFW2CU+9zrEqAp9fWdGXl42EXO5RLSFAcAZ2JFKbP+zBTFfw==", "dev": true, "license": "MIT", "dependencies": { "bs-logger": "^0.2.6", "fast-json-stable-stringify": "^2.1.0", - "handlebars": "^4.7.8", + "handlebars": "^4.7.9", "json5": "^2.2.3", "lodash.memoize": "^4.1.2", "make-error": "^1.3.6", - "semver": "^7.7.3", + "semver": "^7.8.5", "type-fest": "^4.41.0", "yargs-parser": "^21.1.1" }, @@ -10522,7 +10241,7 @@ "babel-jest": "^29.0.0 || ^30.0.0", "jest": "^29.0.0 || ^30.0.0", "jest-util": "^29.0.0 || ^30.0.0", - "typescript": ">=4.3 <6" + "typescript": ">=4.3 <7" }, "peerDependenciesMeta": { "@babel/core": { @@ -10741,9 +10460,9 @@ "license": "MIT" }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -10786,7 +10505,9 @@ } }, "node_modules/undici-types": { - "version": "5.26.5", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", "dev": true, "license": "MIT" }, diff --git a/package.json b/package.json index cff92fc..dd3d8b2 100644 --- a/package.json +++ b/package.json @@ -37,15 +37,15 @@ "organization": false }, "devDependencies": { - "@aws-cdk/integ-runner": "2.168.0-alpha.0", - "@aws-cdk/integ-tests-alpha": "2.168.0-alpha.0", + "@aws-cdk/integ-runner": "2.205.3", + "@aws-cdk/integ-tests-alpha": "2.268.0-alpha.0", "@types/jest": "^29.5.14", - "@types/node": "^18", - "@typescript-eslint/eslint-plugin": "^8", - "@typescript-eslint/parser": "^8", - "aws-cdk-lib": "2.168.0", + "@types/node": "^22", + "@typescript-eslint/eslint-plugin": "^8.69.0", + "@typescript-eslint/parser": "^8.69.0", + "aws-cdk-lib": "2.268.0", "commit-and-tag-version": "^12", - "constructs": "10.3.0", + "constructs": "10.8.1", "eslint": "^9", "eslint-config-prettier": "^10.1.8", "eslint-import-resolver-typescript": "^3.10.1", @@ -53,26 +53,26 @@ "eslint-plugin-prettier": "^5.5.4", "jest": "^29.7.0", "jest-junit": "^16", - "jsii": "~5.7.0", + "jsii": "~6.0.0", "jsii-diff": "^1.121.0", - "jsii-docgen": "^10.5.0", + "jsii-docgen": "^10.12.6", "jsii-pacmak": "^1.121.0", - "jsii-rosetta": "~5.7.0", + "jsii-rosetta": "~6.0.0", "prettier": "^3.7.4", "projen": "^0.98.30", - "ts-jest": "^29.4.6", + "ts-jest": "^29.4.12", "ts-node": "^10.9.2", - "typescript": "^5.9.3" + "typescript": "~6.0.0" }, "peerDependencies": { - "aws-cdk-lib": "^2.168.0", - "constructs": "^10.3.0" + "aws-cdk-lib": "^2.268.0", + "constructs": "^10.8.1" }, "keywords": [ "cdk" ], "engines": { - "node": ">= 18.0.0" + "node": ">= 22.0.0" }, "main": "lib/index.js", "license": "Apache-2.0", @@ -82,6 +82,7 @@ "version": "0.0.0", "jest": { "coverageProvider": "v8", + "maxWorkers": 1, "testMatch": [ "/@(src|test)/**/*(*.)@(spec|test).ts?(x)", "/@(src|test)/**/__tests__/**/*.ts?(x)", diff --git a/src/aws-fsx/ontap-file-system.ts b/src/aws-fsx/ontap-file-system.ts index 41975a4..dcd7e33 100644 --- a/src/aws-fsx/ontap-file-system.ts +++ b/src/aws-fsx/ontap-file-system.ts @@ -428,7 +428,7 @@ export class OntapFileSystem extends aws_fsx.FileSystemBase { fileSystemType: OntapFileSystem.DEFAULT_FILE_SYSTEM_TYPE, subnetIds: props.vpcSubnets.map(subnet => subnet.subnetId), backupId: props.backupId, - kmsKeyId: props.kmsKey?.keyId, + kmsKeyId: props.kmsKey?.keyRef.keyId, ontapConfiguration: { automaticBackupRetentionDays: ontapConfiguration.automaticBackupRetention?.toDays() ?? 30, dailyAutomaticBackupStartTime: ontapConfiguration.dailyAutomaticBackupStartTime?.toTimestamp(), diff --git a/tsconfig.dev.json b/tsconfig.dev.json index 48eb4b9..a69d667 100644 --- a/tsconfig.dev.json +++ b/tsconfig.dev.json @@ -23,7 +23,12 @@ "strictNullChecks": true, "strictPropertyInitialization": true, "stripInternal": true, - "target": "ES2020" + "target": "ES2020", + "types": [ + "node", + "jest" + ], + "rootDir": "." }, "include": [ "src/**/*.ts",