@aws/nx-plugin 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE-THIRD-PARTY +583 -155
- package/generators.json +6 -3
- package/package.json +7 -7
- package/src/cloudscape-website/app/__snapshots__/generator.spec.ts.snap +26 -2
- package/src/cloudscape-website/app/files/common/constructs/src/__websiteNameKebabCase__/static-website.ts.template +26 -2
- package/src/cloudscape-website/app/generator.js +10 -2
- package/src/cloudscape-website/app/generator.js.map +1 -1
- package/src/cloudscape-website/app/schema.d.ts +0 -2
- package/src/cloudscape-website/app/schema.json +0 -5
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +71 -0
- package/src/ts/lib/generator.js +1 -1
- package/src/ts/lib/generator.js.map +1 -1
package/generators.json
CHANGED
|
@@ -6,12 +6,14 @@
|
|
|
6
6
|
"ts#lib": {
|
|
7
7
|
"factory": "./src/ts/lib/generator",
|
|
8
8
|
"schema": "./src/ts/lib/schema.json",
|
|
9
|
-
"description": "Generates a TypeScript library"
|
|
9
|
+
"description": "Generates a TypeScript library",
|
|
10
|
+
"hidden": true
|
|
10
11
|
},
|
|
11
12
|
"ts#cjs-to-esm": {
|
|
12
13
|
"factory": "./src/ts/cjs-to-esm/generator",
|
|
13
14
|
"schema": "./src/ts/cjs-to-esm/schema.json",
|
|
14
|
-
"description": "Convert CommonJS TypeScript/JavaScript files to ESM"
|
|
15
|
+
"description": "Convert CommonJS TypeScript/JavaScript files to ESM",
|
|
16
|
+
"hidden": true
|
|
15
17
|
},
|
|
16
18
|
"cloudscape-website#app": {
|
|
17
19
|
"factory": "./src/cloudscape-website/app/generator",
|
|
@@ -26,7 +28,8 @@
|
|
|
26
28
|
"cloudscape-website#runtime-config": {
|
|
27
29
|
"factory": "./src/cloudscape-website/runtime-config/generator",
|
|
28
30
|
"schema": "./src/cloudscape-website/runtime-config/schema.json",
|
|
29
|
-
"description": "Adds runtime config to an existing cloudscape website"
|
|
31
|
+
"description": "Adds runtime config to an existing cloudscape website",
|
|
32
|
+
"hidden": true
|
|
30
33
|
},
|
|
31
34
|
"infra#app": {
|
|
32
35
|
"factory": "./src/infra/app/generator",
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws/nx-plugin",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"main": "./src/index.js",
|
|
8
8
|
"typings": "./src/index.d.ts",
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@nx/devkit": "20.
|
|
11
|
-
"@nx/eslint": "20.
|
|
12
|
-
"@nx/js": "20.
|
|
13
|
-
"@nx/react": "20.
|
|
14
|
-
"@nx/vite": "20.
|
|
10
|
+
"@nx/devkit": "20.3.1",
|
|
11
|
+
"@nx/eslint": "20.3.1",
|
|
12
|
+
"@nx/js": "20.3.1",
|
|
13
|
+
"@nx/react": "20.3.1",
|
|
14
|
+
"@nx/vite": "20.3.1",
|
|
15
15
|
"@phenomnomnominal/tsquery": "6.1.3",
|
|
16
16
|
"lodash.kebabcase": "4.1.1",
|
|
17
17
|
"minimatch": "^10.0.1",
|
|
18
|
-
"nx": "
|
|
18
|
+
"nx": "20.3.1",
|
|
19
19
|
"typescript": "~5.5.4",
|
|
20
20
|
"vite": "^5.4.0",
|
|
21
21
|
"vitest": "^1.6.0",
|
|
@@ -258,7 +258,7 @@ exports[`cloudscape-website generator > should generate shared constructs > stat
|
|
|
258
258
|
SPDX-License-Identifier: Apache-2.0 */
|
|
259
259
|
import * as url from 'url';
|
|
260
260
|
import { PDKNag } from '@aws/pdk/pdk-nag';
|
|
261
|
-
import { CfnOutput, RemovalPolicy, Stack } from 'aws-cdk-lib';
|
|
261
|
+
import { CfnJson, CfnOutput, Lazy, RemovalPolicy, Stack, Token } from 'aws-cdk-lib';
|
|
262
262
|
import { Distribution, ViewerProtocolPolicy } from 'aws-cdk-lib/aws-cloudfront';
|
|
263
263
|
import { S3BucketOrigin } from 'aws-cdk-lib/aws-cloudfront-origins';
|
|
264
264
|
import {
|
|
@@ -371,7 +371,7 @@ export class StaticWebsite extends Construct {
|
|
|
371
371
|
)
|
|
372
372
|
),
|
|
373
373
|
...(Object.keys(runtimeConfig).length > 0
|
|
374
|
-
? [Source.jsonData(DEFAULT_RUNTIME_CONFIG_FILENAME, runtimeConfig)]
|
|
374
|
+
? [Source.jsonData(DEFAULT_RUNTIME_CONFIG_FILENAME, this.lazilyRender(runtimeConfig))]
|
|
375
375
|
: []),
|
|
376
376
|
],
|
|
377
377
|
destinationBucket: this.websiteBucket,
|
|
@@ -386,6 +386,30 @@ export class StaticWebsite extends Construct {
|
|
|
386
386
|
this.suppressCDKNagViolations();
|
|
387
387
|
}
|
|
388
388
|
|
|
389
|
+
private lazilyRender = (payload: any) => Lazy.any({
|
|
390
|
+
produce: () => this.resolveTokens(payload),
|
|
391
|
+
});
|
|
392
|
+
|
|
393
|
+
private resolveTokens = (payload: any) => {
|
|
394
|
+
const _payload: Record<string, any> = {};
|
|
395
|
+
|
|
396
|
+
Object.entries(payload).forEach(([key, value]) => {
|
|
397
|
+
if (Token.isUnresolved(value) || (typeof value === "string" && value.endsWith("}}"))) {
|
|
398
|
+
_payload[key] = new CfnJson(this, \`ResolveToken-\${key}\`, {
|
|
399
|
+
value,
|
|
400
|
+
}).value;
|
|
401
|
+
} else if (typeof value === "object") {
|
|
402
|
+
_payload[key] = this.resolveTokens(value);
|
|
403
|
+
} else if (Array.isArray(value)) {
|
|
404
|
+
_payload[key] = value.map((v) => this.resolveTokens(v));
|
|
405
|
+
} else {
|
|
406
|
+
_payload[key] = value;
|
|
407
|
+
}
|
|
408
|
+
});
|
|
409
|
+
|
|
410
|
+
return _payload;
|
|
411
|
+
}
|
|
412
|
+
|
|
389
413
|
private suppressCDKNagViolations = () => {
|
|
390
414
|
const stack = Stack.of(this);
|
|
391
415
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
SPDX-License-Identifier: Apache-2.0 */
|
|
3
3
|
import * as url from 'url';
|
|
4
4
|
import { PDKNag } from '@aws/pdk/pdk-nag';
|
|
5
|
-
import { CfnOutput, RemovalPolicy, Stack } from 'aws-cdk-lib';
|
|
5
|
+
import { CfnJson, CfnOutput, Lazy, RemovalPolicy, Stack, Token } from 'aws-cdk-lib';
|
|
6
6
|
import { Distribution, ViewerProtocolPolicy } from 'aws-cdk-lib/aws-cloudfront';
|
|
7
7
|
import { S3BucketOrigin } from 'aws-cdk-lib/aws-cloudfront-origins';
|
|
8
8
|
import {
|
|
@@ -115,7 +115,7 @@ export class StaticWebsite extends Construct {
|
|
|
115
115
|
)
|
|
116
116
|
),
|
|
117
117
|
...(Object.keys(runtimeConfig).length > 0
|
|
118
|
-
? [Source.jsonData(DEFAULT_RUNTIME_CONFIG_FILENAME, runtimeConfig)]
|
|
118
|
+
? [Source.jsonData(DEFAULT_RUNTIME_CONFIG_FILENAME, this.lazilyRender(runtimeConfig))]
|
|
119
119
|
: []),
|
|
120
120
|
],
|
|
121
121
|
destinationBucket: this.websiteBucket,
|
|
@@ -130,6 +130,30 @@ export class StaticWebsite extends Construct {
|
|
|
130
130
|
this.suppressCDKNagViolations();
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
+
private lazilyRender = (payload: any) => Lazy.any({
|
|
134
|
+
produce: () => this.resolveTokens(payload),
|
|
135
|
+
});
|
|
136
|
+
|
|
137
|
+
private resolveTokens = (payload: any) => {
|
|
138
|
+
const _payload: Record<string, any> = {};
|
|
139
|
+
|
|
140
|
+
Object.entries(payload).forEach(([key, value]) => {
|
|
141
|
+
if (Token.isUnresolved(value) || (typeof value === "string" && value.endsWith("}}"))) {
|
|
142
|
+
_payload[key] = new CfnJson(this, `ResolveToken-${key}`, {
|
|
143
|
+
value,
|
|
144
|
+
}).value;
|
|
145
|
+
} else if (typeof value === "object") {
|
|
146
|
+
_payload[key] = this.resolveTokens(value);
|
|
147
|
+
} else if (Array.isArray(value)) {
|
|
148
|
+
_payload[key] = value.map((v) => this.resolveTokens(v));
|
|
149
|
+
} else {
|
|
150
|
+
_payload[key] = value;
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
return _payload;
|
|
155
|
+
}
|
|
156
|
+
|
|
133
157
|
private suppressCDKNagViolations = () => {
|
|
134
158
|
const stack = Stack.of(this);
|
|
135
159
|
|
|
@@ -23,11 +23,19 @@ function appGenerator(tree, schema) {
|
|
|
23
23
|
const npmScopePrefix = (0, npm_scope_1.getNpmScopePrefix)(tree);
|
|
24
24
|
const fullyQualifiedName = `${npmScopePrefix}${schema.name}`;
|
|
25
25
|
const websiteContentPath = (0, devkit_1.joinPathFragments)((_a = schema.directory) !== null && _a !== void 0 ? _a : '.', schema.name);
|
|
26
|
-
// Nx 20 is still working on revamping the generator for the TS preset, but our generator applies
|
|
27
|
-
process.env.NX_IGNORE_UNSUPPORTED_TS_SETUP = 'true';
|
|
28
26
|
// TODO: consider exposing and supporting e2e tests
|
|
29
27
|
const e2eTestRunner = 'none';
|
|
30
28
|
yield (0, react_1.applicationGenerator)(tree, Object.assign(Object.assign({}, schema), { name: fullyQualifiedName, directory: websiteContentPath, routing: false, addPlugin: true, e2eTestRunner }));
|
|
29
|
+
if (!tree.exists(`${websiteContentPath}/project.json`)) {
|
|
30
|
+
(0, devkit_1.addProjectConfiguration)(tree, fullyQualifiedName, {
|
|
31
|
+
root: websiteContentPath,
|
|
32
|
+
name: fullyQualifiedName,
|
|
33
|
+
sourceRoot: `${websiteContentPath}/src`,
|
|
34
|
+
projectType: 'application',
|
|
35
|
+
tags: [],
|
|
36
|
+
targets: {},
|
|
37
|
+
});
|
|
38
|
+
}
|
|
31
39
|
(0, ts_project_utils_1.configureTsProject)(tree, {
|
|
32
40
|
dir: websiteContentPath,
|
|
33
41
|
fullyQualifiedName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/app/generator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/app/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
3
|
* SPDX-License-Identifier: Apache-2.0
|
|
4
4
|
*/
|
|
5
|
-
import { ProjectNameAndRootFormat } from '@nx/devkit/src/generators/project-name-and-root-utils';
|
|
6
5
|
import { SupportedStyles } from '@nx/react';
|
|
7
6
|
import { Linter } from '@nx/eslint';
|
|
8
7
|
|
|
@@ -11,7 +10,6 @@ export interface AppGeneratorSchema {
|
|
|
11
10
|
style: SupportedStyles;
|
|
12
11
|
skipFormat?: boolean;
|
|
13
12
|
directory?: string;
|
|
14
|
-
projectNameAndRootFormat?: ProjectNameAndRootFormat;
|
|
15
13
|
tags?: string;
|
|
16
14
|
unitTestRunner?: 'jest' | 'vitest' | 'none';
|
|
17
15
|
inSourceTests?: boolean;
|
|
@@ -34,11 +34,6 @@
|
|
|
34
34
|
"default": "packages",
|
|
35
35
|
"x-prompt": "What directory would you like to store your application in?"
|
|
36
36
|
},
|
|
37
|
-
"projectNameAndRootFormat": {
|
|
38
|
-
"description": "Whether to generate the project name and root directory as provided (`as-provided`) or generate them composing their values and taking the configured layout into account (`derived`).",
|
|
39
|
-
"type": "string",
|
|
40
|
-
"enum": ["as-provided", "derived"]
|
|
41
|
-
},
|
|
42
37
|
"style": {
|
|
43
38
|
"description": "The file extension to be used for style files.",
|
|
44
39
|
"type": "string",
|
|
@@ -11,6 +11,17 @@ exports[`infra generator > should add required dependencies to package.json > de
|
|
|
11
11
|
}
|
|
12
12
|
`;
|
|
13
13
|
|
|
14
|
+
exports[`infra generator > should add required dependencies to package.json > dependencies 2`] = `
|
|
15
|
+
{
|
|
16
|
+
"@aws/pdk": "^0.25.7",
|
|
17
|
+
"aws-cdk": "^2.166.0",
|
|
18
|
+
"aws-cdk-lib": "^2.166.0",
|
|
19
|
+
"constructs": "^10.4.2",
|
|
20
|
+
"esbuild": "^0.24.0",
|
|
21
|
+
"source-map-support": "^0.5.21",
|
|
22
|
+
}
|
|
23
|
+
`;
|
|
24
|
+
|
|
14
25
|
exports[`infra generator > should add required dependencies to package.json > dev-dependencies 1`] = `
|
|
15
26
|
{
|
|
16
27
|
"@eslint/js": "^9.8.0",
|
|
@@ -23,6 +34,18 @@ exports[`infra generator > should add required dependencies to package.json > de
|
|
|
23
34
|
}
|
|
24
35
|
`;
|
|
25
36
|
|
|
37
|
+
exports[`infra generator > should add required dependencies to package.json > dev-dependencies 2`] = `
|
|
38
|
+
{
|
|
39
|
+
"@eslint/js": "^9.8.0",
|
|
40
|
+
"@nx/eslint": "20.3.1",
|
|
41
|
+
"@nx/eslint-plugin": "20.3.1",
|
|
42
|
+
"eslint": "^9.8.0",
|
|
43
|
+
"eslint-config-prettier": "^9.0.0",
|
|
44
|
+
"tsx": "^4.19.2",
|
|
45
|
+
"typescript-eslint": "^8.13.0",
|
|
46
|
+
}
|
|
47
|
+
`;
|
|
48
|
+
|
|
26
49
|
exports[`infra generator > should add required dependencies to package.json > package-json 1`] = `
|
|
27
50
|
{
|
|
28
51
|
"dependencies": {
|
|
@@ -47,6 +70,54 @@ exports[`infra generator > should add required dependencies to package.json > pa
|
|
|
47
70
|
}
|
|
48
71
|
`;
|
|
49
72
|
|
|
73
|
+
exports[`infra generator > should add required dependencies to package.json > package-json 2`] = `
|
|
74
|
+
{
|
|
75
|
+
"dependencies": {
|
|
76
|
+
"@aws/pdk": "^0.25.7",
|
|
77
|
+
"aws-cdk": "^2.166.0",
|
|
78
|
+
"aws-cdk-lib": "^2.166.0",
|
|
79
|
+
"constructs": "^10.4.2",
|
|
80
|
+
"esbuild": "^0.24.0",
|
|
81
|
+
"source-map-support": "^0.5.21",
|
|
82
|
+
},
|
|
83
|
+
"devDependencies": {
|
|
84
|
+
"@eslint/js": "^9.8.0",
|
|
85
|
+
"@nx/eslint": "20.3.1",
|
|
86
|
+
"@nx/eslint-plugin": "20.3.1",
|
|
87
|
+
"eslint": "^9.8.0",
|
|
88
|
+
"eslint-config-prettier": "^9.0.0",
|
|
89
|
+
"tsx": "^4.19.2",
|
|
90
|
+
"typescript-eslint": "^8.13.0",
|
|
91
|
+
},
|
|
92
|
+
"name": "@proj/source",
|
|
93
|
+
"type": "module",
|
|
94
|
+
}
|
|
95
|
+
`;
|
|
96
|
+
|
|
97
|
+
exports[`infra generator > should add required dependencies to package.json > package-json 3`] = `
|
|
98
|
+
{
|
|
99
|
+
"dependencies": {
|
|
100
|
+
"@aws/pdk": "^0.25.7",
|
|
101
|
+
"aws-cdk": "^2.166.0",
|
|
102
|
+
"aws-cdk-lib": "^2.166.0",
|
|
103
|
+
"constructs": "^10.4.2",
|
|
104
|
+
"esbuild": "^0.24.0",
|
|
105
|
+
"source-map-support": "^0.5.21",
|
|
106
|
+
},
|
|
107
|
+
"devDependencies": {
|
|
108
|
+
"@eslint/js": "^9.8.0",
|
|
109
|
+
"@nx/eslint": "20.3.1",
|
|
110
|
+
"@nx/eslint-plugin": "20.3.1",
|
|
111
|
+
"eslint": "^9.8.0",
|
|
112
|
+
"eslint-config-prettier": "^9.0.0",
|
|
113
|
+
"tsx": "^4.19.2",
|
|
114
|
+
"typescript-eslint": "^8.13.0",
|
|
115
|
+
},
|
|
116
|
+
"name": "@proj/source",
|
|
117
|
+
"type": "module",
|
|
118
|
+
}
|
|
119
|
+
`;
|
|
120
|
+
|
|
50
121
|
exports[`infra generator > should configure project.json with correct targets > build-target 1`] = `
|
|
51
122
|
{
|
|
52
123
|
"cache": true,
|
package/src/ts/lib/generator.js
CHANGED
|
@@ -26,7 +26,7 @@ exports.getTsLibDetails = getTsLibDetails;
|
|
|
26
26
|
*/
|
|
27
27
|
const tsLibGenerator = (tree, schema) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
28
28
|
const { fullyQualifiedName, dir } = (0, exports.getTsLibDetails)(tree, schema);
|
|
29
|
-
yield (0, js_1.libraryGenerator)(tree, Object.assign(Object.assign({}, schema), { name: fullyQualifiedName, directory: dir,
|
|
29
|
+
yield (0, js_1.libraryGenerator)(tree, Object.assign(Object.assign({}, schema), { name: fullyQualifiedName, directory: dir, skipPackageJson: true, bundler: 'tsc' }));
|
|
30
30
|
// Replace with simpler sample source code
|
|
31
31
|
tree.delete((0, devkit_1.joinPathFragments)(dir, 'src'));
|
|
32
32
|
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'src'), (0, devkit_1.joinPathFragments)(dir, 'src'), {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAMoB;AAEpB,+BAA0C;AAC1C,qDAA0D;AAC1D,yDAAwD;AAaxD;;GAEG;AACI,MAAM,eAAe,GAAG,CAC7B,IAAU,EACV,MAA4B,EACd,EAAE;;IAChB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,kBAAkB,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,GAAG,GAAG,IAAA,0BAAiB,EAC3B,MAAA,MAAM,CAAC,SAAS,mCAAI,GAAG,EACvB,MAAA,MAAM,CAAC,YAAY,mCAAI,MAAM,CAAC,IAAI,CACnC,CAAC;IAEF,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC;AACrC,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B;AAEF;;GAEG;AACI,MAAM,cAAc,GAAG,CAC5B,IAAU,EACV,MAA4B,EACA,EAAE;IAC9B,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,IAAA,qBAAgB,EAAC,IAAI,kCACtB,MAAM,KACT,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,GAAG,EACd,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAMoB;AAEpB,+BAA0C;AAC1C,qDAA0D;AAC1D,yDAAwD;AAaxD;;GAEG;AACI,MAAM,eAAe,GAAG,CAC7B,IAAU,EACV,MAA4B,EACd,EAAE;;IAChB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,kBAAkB,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,GAAG,GAAG,IAAA,0BAAiB,EAC3B,MAAA,MAAM,CAAC,SAAS,mCAAI,GAAG,EACvB,MAAA,MAAM,CAAC,YAAY,mCAAI,MAAM,CAAC,IAAI,CACnC,CAAC;IAEF,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC;AACrC,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B;AAEF;;GAEG;AACI,MAAM,cAAc,GAAG,CAC5B,IAAU,EACV,MAA4B,EACA,EAAE;IAC9B,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,IAAA,qBAAgB,EAAC,IAAI,kCACtB,MAAM,KACT,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,GAAG,EACd,eAAe,EAAE,IAAI,EACrB,OAAO,EAAE,KAAK,IACd,CAAC;IAEH,0CAA0C;IAC1C,IAAI,CAAC,MAAM,CAAC,IAAA,0BAAiB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3C,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,EAC5C,IAAA,0BAAiB,EAAC,GAAG,EAAE,KAAK,CAAC,EAC7B,EAAE,CACH,CAAC;IAEF,IAAA,qCAAkB,EAAC,IAAI,EAAE;QACvB,GAAG;QACH,kBAAkB;KACnB,CAAC,CAAC;IAEH,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAA,CAAC;AAjCW,QAAA,cAAc,kBAiCzB;AAEF,kBAAe,sBAAc,CAAC"}
|