@aws/nx-plugin 0.32.3 → 0.33.0
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 +0 -39510
- package/package.json +1 -1
- package/src/cloudscape-website/cognito-auth/__snapshots__/generator.spec.ts.snap +3 -1
- package/src/cloudscape-website/cognito-auth/generator.js +6 -0
- package/src/cloudscape-website/cognito-auth/generator.js.map +1 -1
- package/src/cloudscape-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -1
- package/src/cloudscape-website/runtime-config/generator.js +6 -0
- package/src/cloudscape-website/runtime-config/generator.js.map +1 -1
- package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +1 -0
- package/src/trpc/react/__snapshots__/generator.spec.ts.snap +1 -0
- package/src/utils/ast/website.d.ts +7 -0
- package/src/utils/ast/website.js +135 -0
- package/src/utils/ast/website.js.map +1 -0
package/package.json
CHANGED
|
@@ -430,7 +430,9 @@ export default AppLayout;
|
|
|
430
430
|
`;
|
|
431
431
|
|
|
432
432
|
exports[`cognito-auth generator > should update main.tsx when RuntimeConfigProvider exists > main-tsx-with-runtime-config 1`] = `
|
|
433
|
-
"import
|
|
433
|
+
"import { useAuth } from 'react-oidc-context';
|
|
434
|
+
import CognitoAuth from './components/CognitoAuth';
|
|
435
|
+
import { useRuntimeConfig } from './hooks/useRuntimeConfig';
|
|
434
436
|
import RuntimeConfigProvider from './components/RuntimeConfig';
|
|
435
437
|
import { RuntimeConfigProvider } from './components/RuntimeConfig';
|
|
436
438
|
import { RouterProvider, createRouter } from '@tanstack/react-router';
|
|
@@ -17,6 +17,7 @@ const ast_1 = require("../../utils/ast");
|
|
|
17
17
|
const format_1 = require("../../utils/format");
|
|
18
18
|
const nx_1 = require("../../utils/nx");
|
|
19
19
|
const metrics_1 = require("../../utils/metrics");
|
|
20
|
+
const website_1 = require("../../utils/ast/website");
|
|
20
21
|
exports.COGNITO_AUTH_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
21
22
|
function tsCloudScapeWebsiteAuthGenerator(tree, options) {
|
|
22
23
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
@@ -69,6 +70,11 @@ function tsCloudScapeWebsiteAuthGenerator(tree, options) {
|
|
|
69
70
|
}
|
|
70
71
|
const mainTsxPath = (0, devkit_1.joinPathFragments)(srcRoot, 'main.tsx');
|
|
71
72
|
(0, ast_1.addSingleImport)(tree, mainTsxPath, 'CognitoAuth', './components/CognitoAuth');
|
|
73
|
+
(0, website_1.addHookResultToRouterProviderContext)(tree, mainTsxPath, {
|
|
74
|
+
hook: 'useAuth',
|
|
75
|
+
module: 'react-oidc-context',
|
|
76
|
+
contextProp: 'auth',
|
|
77
|
+
});
|
|
72
78
|
(0, ast_1.replace)(tree, mainTsxPath, 'JsxElement[openingElement.tagName.name="RuntimeConfigProvider"]', (node) => (0, ast_1.createJsxElement)(node.openingElement, [(0, ast_1.createJsxElementFromIdentifier)('CognitoAuth', node.children)], node.closingElement));
|
|
73
79
|
// Update App Layout
|
|
74
80
|
const appLayoutTsxPath = (0, devkit_1.joinPathFragments)(srcRoot, 'components', 'AppLayout', 'index.tsx');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/cognito-auth/generator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/cognito-auth/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,7 +104,8 @@ export class RuntimeConfig extends Construct {
|
|
|
104
104
|
`;
|
|
105
105
|
|
|
106
106
|
exports[`runtime-config generator > should modify main.tsx correctly > modified-main.tsx 1`] = `
|
|
107
|
-
"import
|
|
107
|
+
"import { useRuntimeConfig } from './hooks/useRuntimeConfig';
|
|
108
|
+
import RuntimeConfigProvider from './components/RuntimeConfig';
|
|
108
109
|
import { RouterProvider } from '@tanstack/react-router';
|
|
109
110
|
|
|
110
111
|
export function App() {
|
|
@@ -15,6 +15,7 @@ const format_1 = require("../../utils/format");
|
|
|
15
15
|
const ast_1 = require("../../utils/ast");
|
|
16
16
|
const nx_1 = require("../../utils/nx");
|
|
17
17
|
const metrics_1 = require("../../utils/metrics");
|
|
18
|
+
const website_1 = require("../../utils/ast/website");
|
|
18
19
|
exports.RUNTIME_CONFIG_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
19
20
|
function runtimeConfigGenerator(tree, options) {
|
|
20
21
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
@@ -49,6 +50,11 @@ function runtimeConfigGenerator(tree, options) {
|
|
|
49
50
|
if (!locatedTargetNode) {
|
|
50
51
|
throw new Error('Could not locate the App element in main.tsx');
|
|
51
52
|
}
|
|
53
|
+
(0, website_1.addHookResultToRouterProviderContext)(tree, mainTsxPath, {
|
|
54
|
+
hook: 'useRuntimeConfig',
|
|
55
|
+
module: './hooks/useRuntimeConfig',
|
|
56
|
+
contextProp: 'runtimeConfig',
|
|
57
|
+
});
|
|
52
58
|
yield (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.RUNTIME_CONFIG_GENERATOR_INFO]);
|
|
53
59
|
yield (0, format_1.formatFilesInSubtree)(tree);
|
|
54
60
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/runtime-config/generator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/cloudscape-website/runtime-config/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -210,6 +210,7 @@ export default TestApiProvider;
|
|
|
210
210
|
exports[`fastapi react generator > should instrument providers in main.tsx > main.tsx 1`] = `
|
|
211
211
|
"import TestApiProvider from './components/TestApiProvider';
|
|
212
212
|
import QueryClientProvider from './components/QueryClientProvider';
|
|
213
|
+
import { useRuntimeConfig } from './hooks/useRuntimeConfig';
|
|
213
214
|
import RuntimeConfigProvider from './components/RuntimeConfig';
|
|
214
215
|
import { RouterProvider } from '@tanstack/react-router';
|
|
215
216
|
|
|
@@ -217,6 +217,7 @@ export const useSigV4 = () => {
|
|
|
217
217
|
exports[`trpc react generator > should modify main.tsx correctly > main.tsx 1`] = `
|
|
218
218
|
"import TestApiClientProvider from './components/TestApiClientProvider';
|
|
219
219
|
import QueryClientProvider from './components/QueryClientProvider';
|
|
220
|
+
import { useRuntimeConfig } from './hooks/useRuntimeConfig';
|
|
220
221
|
import RuntimeConfigProvider from './components/RuntimeConfig';
|
|
221
222
|
import { RouterProvider } from '@tanstack/react-router';
|
|
222
223
|
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Tree } from '@nx/devkit';
|
|
2
|
+
export interface AddHookResultToRouterProviderContextProps {
|
|
3
|
+
hook: string;
|
|
4
|
+
module: string;
|
|
5
|
+
contextProp: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const addHookResultToRouterProviderContext: (tree: Tree, mainTsxPath: string, { hook, module, contextProp }: AddHookResultToRouterProviderContextProps) => void;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addHookResultToRouterProviderContext = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
+
*/
|
|
8
|
+
const typescript_1 = require("typescript");
|
|
9
|
+
const ast_1 = require("../ast");
|
|
10
|
+
const addHookResultToRouterProviderContext = (tree, mainTsxPath, { hook, module, contextProp }) => {
|
|
11
|
+
(0, ast_1.addDestructuredImport)(tree, mainTsxPath, [hook], module);
|
|
12
|
+
// Update RouterProviderContext interface to include auth (if it exists)
|
|
13
|
+
const routerProviderContextSelector = 'TypeAliasDeclaration[name.text="RouterProviderContext"] > TypeLiteral';
|
|
14
|
+
const hasRouterProviderContext = (0, ast_1.query)(tree, mainTsxPath, routerProviderContextSelector).length > 0;
|
|
15
|
+
const routerSelector = 'CallExpression[expression.name="createRouter"] > ObjectLiteralExpression';
|
|
16
|
+
const hasRouter = (0, ast_1.query)(tree, mainTsxPath, routerSelector).length > 0;
|
|
17
|
+
const appSelector = 'VariableDeclaration[name.text="App"] > ArrowFunction';
|
|
18
|
+
const hasApp = (0, ast_1.query)(tree, mainTsxPath, appSelector).length > 0;
|
|
19
|
+
const routerProviderComponentSelector = 'JsxSelfClosingElement:has(Identifier[name="RouterProvider"])';
|
|
20
|
+
const hasRouterProviderComponent = (0, ast_1.query)(tree, mainTsxPath, routerProviderComponentSelector).length > 0;
|
|
21
|
+
if (!hasRouterProviderContext ||
|
|
22
|
+
!hasRouter ||
|
|
23
|
+
!hasApp ||
|
|
24
|
+
!hasRouterProviderComponent) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
(0, ast_1.replace)(tree, mainTsxPath, routerProviderContextSelector, (node) => {
|
|
28
|
+
// Check if auth property already exists
|
|
29
|
+
if (node && node.members) {
|
|
30
|
+
const hasContextProp = node.members.some((member) => member.name &&
|
|
31
|
+
'text' in member.name &&
|
|
32
|
+
member.name.text === contextProp);
|
|
33
|
+
if (!hasContextProp) {
|
|
34
|
+
return typescript_1.factory.createTypeLiteralNode([
|
|
35
|
+
...node.members,
|
|
36
|
+
typescript_1.factory.createPropertySignature(undefined, typescript_1.factory.createIdentifier(contextProp), typescript_1.factory.createToken(typescript_1.SyntaxKind.QuestionToken), typescript_1.factory.createTypeReferenceNode(typescript_1.factory.createIdentifier('ReturnType'), [typescript_1.factory.createTypeQueryNode(typescript_1.factory.createIdentifier(hook))])),
|
|
37
|
+
]);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return node;
|
|
41
|
+
});
|
|
42
|
+
// Update router context to include context property
|
|
43
|
+
(0, ast_1.replace)(tree, mainTsxPath, routerSelector, (node) => {
|
|
44
|
+
const routerContext = node.properties.find((prop) => prop.name && 'text' in prop.name && prop.name.text === 'context');
|
|
45
|
+
const existingContextProps = routerContext &&
|
|
46
|
+
routerContext.initializer.kind === typescript_1.SyntaxKind.ObjectLiteralExpression
|
|
47
|
+
? routerContext.initializer.properties
|
|
48
|
+
: [];
|
|
49
|
+
return typescript_1.factory.createObjectLiteralExpression([
|
|
50
|
+
...node.properties.filter((prop) => prop.name && 'text' in prop.name && prop.name.text !== 'context'),
|
|
51
|
+
typescript_1.factory.createPropertyAssignment('context', typescript_1.factory.createObjectLiteralExpression([
|
|
52
|
+
...existingContextProps.filter((prop) => prop.name &&
|
|
53
|
+
'text' in prop.name &&
|
|
54
|
+
prop.name.text !== contextProp),
|
|
55
|
+
typescript_1.factory.createPropertyAssignment(contextProp, typescript_1.factory.createIdentifier('undefined')),
|
|
56
|
+
], true)),
|
|
57
|
+
], true);
|
|
58
|
+
});
|
|
59
|
+
// Update App component to use the hook in RouterProvider context
|
|
60
|
+
(0, ast_1.replace)(tree, mainTsxPath, appSelector, (node) => {
|
|
61
|
+
// Create a block which either is the arrow function's block or is a block with a single statement which returns the expression if it's an expression
|
|
62
|
+
const isBlockBody = node.body.kind === typescript_1.SyntaxKind.Block;
|
|
63
|
+
const existingBlock = isBlockBody ? node.body : null;
|
|
64
|
+
const existingStatements = existingBlock ? existingBlock.statements : [];
|
|
65
|
+
const hasHookCall = existingStatements.find((statement) => {
|
|
66
|
+
if (statement.kind === typescript_1.SyntaxKind.VariableStatement) {
|
|
67
|
+
const variableStatement = statement;
|
|
68
|
+
const declaration = variableStatement.declarationList.declarations[0];
|
|
69
|
+
if (declaration &&
|
|
70
|
+
declaration.name.kind === typescript_1.SyntaxKind.Identifier &&
|
|
71
|
+
declaration.name.text === contextProp &&
|
|
72
|
+
declaration.initializer &&
|
|
73
|
+
declaration.initializer.kind === typescript_1.SyntaxKind.CallExpression) {
|
|
74
|
+
const callExpression = declaration.initializer;
|
|
75
|
+
if (callExpression.expression.kind === typescript_1.SyntaxKind.Identifier &&
|
|
76
|
+
callExpression.expression.text === hook) {
|
|
77
|
+
return true;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return false;
|
|
82
|
+
});
|
|
83
|
+
if (!hasHookCall) {
|
|
84
|
+
// Prepend the following statement: `const <contextProp> = <hook>();`
|
|
85
|
+
const newStatements = [
|
|
86
|
+
typescript_1.factory.createVariableStatement(undefined, typescript_1.factory.createVariableDeclarationList([
|
|
87
|
+
typescript_1.factory.createVariableDeclaration(typescript_1.factory.createIdentifier(contextProp), undefined, undefined, typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier(hook), undefined, [])),
|
|
88
|
+
], typescript_1.NodeFlags.Const)),
|
|
89
|
+
// Add existing statements or create return statement for expression body
|
|
90
|
+
...(isBlockBody
|
|
91
|
+
? existingStatements
|
|
92
|
+
: [typescript_1.factory.createReturnStatement(node.body)]),
|
|
93
|
+
];
|
|
94
|
+
return typescript_1.factory.createArrowFunction(node.modifiers, node.typeParameters, node.parameters, node.type, node.equalsGreaterThanToken, typescript_1.factory.createBlock(newStatements, true));
|
|
95
|
+
}
|
|
96
|
+
return node;
|
|
97
|
+
});
|
|
98
|
+
// Add the context prop to the RouterProvider context prop, eg: <RouterProvider router={router} context={{ ...existing, <contextProp> }} />;
|
|
99
|
+
(0, ast_1.replace)(tree, mainTsxPath, routerProviderComponentSelector, (node) => {
|
|
100
|
+
// Find existing context attribute
|
|
101
|
+
const existingContextAttr = node.attributes.properties.find((attr) => attr.kind === typescript_1.SyntaxKind.JsxAttribute &&
|
|
102
|
+
attr.name &&
|
|
103
|
+
attr.name.kind === typescript_1.SyntaxKind.Identifier &&
|
|
104
|
+
attr.name.text === 'context');
|
|
105
|
+
// Get existing context properties if they exist
|
|
106
|
+
const existingContextProps = existingContextAttr &&
|
|
107
|
+
existingContextAttr.initializer &&
|
|
108
|
+
existingContextAttr.initializer.kind === typescript_1.SyntaxKind.JsxExpression &&
|
|
109
|
+
existingContextAttr.initializer.expression &&
|
|
110
|
+
existingContextAttr.initializer.expression.kind ===
|
|
111
|
+
typescript_1.SyntaxKind.ObjectLiteralExpression
|
|
112
|
+
? existingContextAttr.initializer
|
|
113
|
+
.expression.properties
|
|
114
|
+
: [];
|
|
115
|
+
// Create new context attribute with existing props plus the new context prop
|
|
116
|
+
const newContextAttr = typescript_1.factory.createJsxAttribute(typescript_1.factory.createIdentifier('context'), typescript_1.factory.createJsxExpression(undefined, typescript_1.factory.createObjectLiteralExpression([
|
|
117
|
+
// Add existing properties
|
|
118
|
+
...existingContextProps,
|
|
119
|
+
// Add the new context prop as shorthand property assignment
|
|
120
|
+
typescript_1.factory.createShorthandPropertyAssignment(typescript_1.factory.createIdentifier(contextProp)),
|
|
121
|
+
])));
|
|
122
|
+
// Create new JSX self-closing element with all existing attributes except 'context', plus the new context attribute
|
|
123
|
+
return typescript_1.factory.createJsxSelfClosingElement(node.tagName, node.typeArguments, typescript_1.factory.createJsxAttributes([
|
|
124
|
+
// Include all existing attributes except 'context'
|
|
125
|
+
...node.attributes.properties.filter((attr) => !(attr.kind === typescript_1.SyntaxKind.JsxAttribute &&
|
|
126
|
+
attr.name &&
|
|
127
|
+
attr.name.kind === typescript_1.SyntaxKind.Identifier &&
|
|
128
|
+
attr.name.text === 'context')),
|
|
129
|
+
// Add the new context attribute
|
|
130
|
+
newContextAttr,
|
|
131
|
+
]));
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
exports.addHookResultToRouterProviderContext = addHookResultToRouterProviderContext;
|
|
135
|
+
//# sourceMappingURL=website.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/ast/website.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,2CAgBoB;AACpB,gCAA+D;AASxD,MAAM,oCAAoC,GAAG,CAClD,IAAU,EACV,WAAmB,EACnB,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAA6C,EACxE,EAAE;IACF,IAAA,2BAAqB,EAAC,IAAI,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzD,wEAAwE;IACxE,MAAM,6BAA6B,GACjC,uEAAuE,CAAC;IAC1E,MAAM,wBAAwB,GAC5B,IAAA,WAAK,EAAC,IAAI,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAErE,MAAM,cAAc,GAClB,0EAA0E,CAAC;IAC7E,MAAM,SAAS,GAAG,IAAA,WAAK,EAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEtE,MAAM,WAAW,GAAG,sDAAsD,CAAC;IAC3E,MAAM,MAAM,GAAG,IAAA,WAAK,EAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEhE,MAAM,+BAA+B,GACnC,8DAA8D,CAAC;IACjE,MAAM,0BAA0B,GAC9B,IAAA,WAAK,EAAC,IAAI,EAAE,WAAW,EAAE,+BAA+B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEvE,IACE,CAAC,wBAAwB;QACzB,CAAC,SAAS;QACV,CAAC,MAAM;QACP,CAAC,0BAA0B,EAC3B,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAA,aAAO,EACL,IAAI,EACJ,WAAW,EACX,6BAA6B,EAC7B,CAAC,IAAqB,EAAE,EAAE;QACxB,wCAAwC;QACxC,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CACtC,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,IAAI;gBACX,MAAM,IAAI,MAAM,CAAC,IAAI;gBACrB,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CACnC,CAAC;YAEF,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO,oBAAO,CAAC,qBAAqB,CAAC;oBACnC,GAAG,IAAI,CAAC,OAAO;oBACf,oBAAO,CAAC,uBAAuB,CAC7B,SAAS,EACT,oBAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACrC,oBAAO,CAAC,WAAW,CAAC,uBAAU,CAAC,aAAa,CAAC,EAC7C,oBAAO,CAAC,uBAAuB,CAC7B,oBAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,EACtC,CAAC,oBAAO,CAAC,mBAAmB,CAAC,oBAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAC9D,CACF;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CACF,CAAC;IAEF,oDAAoD;IACpD,IAAA,aAAO,EACL,IAAI,EACJ,WAAW,EACX,cAAc,EACd,CAAC,IAA6B,EAAE,EAAE;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CACxC,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CACjC,CAAC;QACpC,MAAM,oBAAoB,GACxB,aAAa;YACb,aAAa,CAAC,WAAW,CAAC,IAAI,KAAK,uBAAU,CAAC,uBAAuB;YACnE,CAAC,CAAE,aAAa,CAAC,WAAuC,CAAC,UAAU;YACnE,CAAC,CAAC,EAAE,CAAC;QACT,OAAO,oBAAO,CAAC,6BAA6B,CAC1C;YACE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CACvB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CACnE;YACD,oBAAO,CAAC,wBAAwB,CAC9B,SAAS,EACT,oBAAO,CAAC,6BAA6B,CACnC;gBACE,GAAG,oBAAoB,CAAC,MAAM,CAC5B,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI;oBACT,MAAM,IAAI,IAAI,CAAC,IAAI;oBACnB,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CACjC;gBACD,oBAAO,CAAC,wBAAwB,CAC9B,WAAW,EACX,oBAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CACtC;aACF,EACD,IAAI,CACL,CACF;SACF,EACD,IAAI,CACL,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,iEAAiE;IAEjE,IAAA,aAAO,EAAC,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,IAAmB,EAAE,EAAE;QAC9D,qJAAqJ;QACrJ,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,KAAK,CAAC;QACxD,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAE,IAAI,CAAC,IAAc,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,MAAM,kBAAkB,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAEzE,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YACxD,IAAI,SAAS,CAAC,IAAI,KAAK,uBAAU,CAAC,iBAAiB,EAAE,CAAC;gBACpD,MAAM,iBAAiB,GAAG,SAA8B,CAAC;gBACzD,MAAM,WAAW,GAAG,iBAAiB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAEtE,IACE,WAAW;oBACX,WAAW,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,UAAU;oBAC9C,WAAW,CAAC,IAAmB,CAAC,IAAI,KAAK,WAAW;oBACrD,WAAW,CAAC,WAAW;oBACvB,WAAW,CAAC,WAAW,CAAC,IAAI,KAAK,uBAAU,CAAC,cAAc,EAC1D,CAAC;oBACD,MAAM,cAAc,GAAG,WAAW,CAAC,WAA6B,CAAC;oBACjE,IACE,cAAc,CAAC,UAAU,CAAC,IAAI,KAAK,uBAAU,CAAC,UAAU;wBACvD,cAAc,CAAC,UAAyB,CAAC,IAAI,KAAK,IAAI,EACvD,CAAC;wBACD,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,qEAAqE;YACrE,MAAM,aAAa,GAAG;gBACpB,oBAAO,CAAC,uBAAuB,CAC7B,SAAS,EACT,oBAAO,CAAC,6BAA6B,CACnC;oBACE,oBAAO,CAAC,yBAAyB,CAC/B,oBAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACrC,SAAS,EACT,SAAS,EACT,oBAAO,CAAC,oBAAoB,CAC1B,oBAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC9B,SAAS,EACT,EAAE,CACH,CACF;iBACF,EACD,sBAAS,CAAC,KAAK,CAChB,CACF;gBACD,yEAAyE;gBACzE,GAAG,CAAC,WAAW;oBACb,CAAC,CAAC,kBAAkB;oBACpB,CAAC,CAAC,CAAC,oBAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aAChD,CAAC;YAEF,OAAO,oBAAO,CAAC,mBAAmB,CAChC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,sBAAsB,EAC3B,oBAAO,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CACzC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,4IAA4I;IAC5I,IAAA,aAAO,EACL,IAAI,EACJ,WAAW,EACX,+BAA+B,EAC/B,CAAC,IAA2B,EAAE,EAAE;QAC9B,kCAAkC;QAClC,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CACzD,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,YAAY;YACrC,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,UAAU;YACxC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CACH,CAAC;QAE9B,gDAAgD;QAChD,MAAM,oBAAoB,GACxB,mBAAmB;YACnB,mBAAmB,CAAC,WAAW;YAC/B,mBAAmB,CAAC,WAAW,CAAC,IAAI,KAAK,uBAAU,CAAC,aAAa;YAChE,mBAAmB,CAAC,WAA6B,CAAC,UAAU;YAC5D,mBAAmB,CAAC,WAA6B,CAAC,UAAW,CAAC,IAAI;gBACjE,uBAAU,CAAC,uBAAuB;YAClC,CAAC,CACI,mBAAmB,CAAC,WAA6B;iBAC/C,UACJ,CAAC,UAAU;YACd,CAAC,CAAC,EAAE,CAAC;QAET,6EAA6E;QAC7E,MAAM,cAAc,GAAG,oBAAO,CAAC,kBAAkB,CAC/C,oBAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACnC,oBAAO,CAAC,mBAAmB,CACzB,SAAS,EACT,oBAAO,CAAC,6BAA6B,CAAC;YACpC,0BAA0B;YAC1B,GAAG,oBAAoB;YACvB,4DAA4D;YAC5D,oBAAO,CAAC,iCAAiC,CACvC,oBAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CACtC;SACF,CAAC,CACH,CACF,CAAC;QAEF,oHAAoH;QACpH,OAAO,oBAAO,CAAC,2BAA2B,CACxC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,oBAAO,CAAC,mBAAmB,CAAC;YAC1B,mDAAmD;YACnD,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,CACC,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,YAAY;gBACrC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAU,CAAC,UAAU;gBACxC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAC7B,CACJ;YACD,gCAAgC;YAChC,cAAc;SACf,CAAC,CACH,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AA1PW,QAAA,oCAAoC,wCA0P/C"}
|