@rxap/schematics-ts-morph 19.2.0-dev.2 → 19.2.1-dev.1

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/CHANGELOG.md CHANGED
@@ -1,8 +1,152 @@
1
+ ## 19.2.1-dev.1 (2026-06-19)
2
+
3
+ ### 🚀 Features
4
+
5
+ - **schematic:** support dynamic project name generation in Nest module coercion
6
+ - replace buildNestProjectName with buildOperationServerId
7
+ - update to buildable open api client sdk
8
+ - support autocomplete controls
9
+ - improve table action processing
10
+ - add propertyValue handlebare helper
11
+ - add CoercePipe function
12
+ - support to options mapper
13
+ - support custom mappers
14
+ - add ToDtoInstanceList
15
+ - support string utilities in handlebar templates
16
+ - support form group and form array
17
+ - support form group and form array
18
+ - generate table select resolve method
19
+ - support custom properties for accordion controllers
20
+ - extend support for upstream options
21
+ - add CoerceGetOperation function
22
+ - support table parameters in tree tables
23
+ - support upstream configurations
24
+ - support custom handlebars partials and helpers
25
+ - support handlebars for component generator
26
+ - move WriteType to ts-morph package
27
+ - support simple type
28
+ - support custom id property
29
+ - support complex and importable types
30
+ - add open api table action
31
+ - support overwrite array
32
+ - add CoerceTableHeaderButtonMethod function
33
+ - support replace option
34
+ - support open api backend
35
+ - merge external changes
36
+
37
+ ### 🩹 Fixes
38
+
39
+ - **generators:** read package.json and node_modules from disk, not the virtual Tree
40
+ - **generators:** match package name with .some() in init devDependency coercion
41
+ - **schematic:** update test utilities import paths and enhance Nest module handling
42
+ - **schematic:** adjust base path generation for application projects
43
+ - **schematic:** improve component feature validation logic
44
+ - **nest:** handle null serverId in operation ID generation
45
+ - **schematic:** ensure modules are added to the AppModule only in application projects
46
+ - add missing imports
47
+ - dont overwrite UseFormControl props
48
+ - dont overwrite form definition decorators
49
+ - use the correct property
50
+ - pass backend option
51
+ - base path creation
52
+ - correctly generate the tree methods
53
+ - add if utilities
54
+ - add rowId option
55
+ - support non upstream nestjs backends
56
+ - print the required commands to setup projects
57
+ - ensure the options are handled correctly
58
+ - only coerce import if required
59
+ - add Overwrite options type
60
+ - add Overwrite options type
61
+ - support complex data properties
62
+ - support complex data properties
63
+ - support autocomplete controls
64
+ - add default get tree operation mapper
65
+ - add default options operation mapper
66
+ - select form backend generation
67
+ - ensure the cell component are valid
68
+ - ensure the coerce array items function is used instead of unshift
69
+ - use defined identifier property
70
+ - ensure submit and load can have different interfaces
71
+ - ensure all properties are set correctly
72
+ - ensure all imports are added
73
+ - improve operation naming and return types
74
+ - ensure nestModule is passed to the operation generators
75
+ - return type generation
76
+ - correctly coerce the operation method parameters
77
+ - respect the identifier option
78
+ - import missing type
79
+ - ensure all required modules and services are imported
80
+ - support non service commands
81
+ - align the controller name processing
82
+ - add the open api upstream command to the module providers
83
+ - use the command class name as member name
84
+ - generate tree table column dto types
85
+ - small issues
86
+ - initial component class creation
87
+ - add is modifier functions
88
+ - mark CoercePropertyDeclaration as deprected
89
+ - support TypeImport
90
+ - use correct function return type
91
+ - unify coerce component functions
92
+ - unify type import concept
93
+ - merge the property and table property interface
94
+ - remove FlexLayout dependency
95
+ - use coerce component utility function
96
+ - only add used interfaces
97
+ - ensure formatting is correct
98
+ - include property list in operation dto generation
99
+ - add custom dto property types
100
+ - use Object.freeze instead of Object.seal
101
+ - support relativeTo parameter
102
+ - support custom form component
103
+ - add utility function
104
+ - use ToMappingObject function
105
+ - use correct var check name
106
+ - unify transformation
107
+ - use utility CreateProject function to create a ts-morph Project instance
108
+ - ensure the plain text of the nodes is used
109
+ - only add validators import if used
110
+ - ensure the filter method property has not an question token
111
+ - import dtos from nest-dto
112
+ - add deprecation comment
113
+ - peer dependency issue
114
+ - ensure new class property is inserted at the top
115
+ - add move deprecated hint
116
+ - add project ts-morph
117
+ - ensure the project name is not included in the project tag list
118
+ - change from commonjs to es2022
119
+ - coerce getPageData method
120
+ - controller name composition
121
+ - controller naming and route
122
+ - add licence file to publishable packages
123
+ - allow null or undefined for scope parameter
124
+ - update package dependency versions
125
+ - restructure and merge mono repos packages, schematics, plugins and nest
126
+
127
+ ### 🔥 Performance
128
+
129
+ - improve project json file search
130
+
131
+ ### 🧱 Updated Dependencies
132
+
133
+ - Updated workspace-utilities to 19.9.1-dev.1
134
+ - Updated utilities to 16.5.1-dev.1
135
+ - Updated ts-morph to 1.7.0-dev.1
136
+
137
+ ### ❤️ Thank You
138
+
139
+ - Merzough Münker
140
+
1
141
  # Change Log
2
142
 
3
143
  All notable changes to this project will be documented in this file.
4
144
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
145
 
146
+ # [19.2.0-dev.3](https://gitlab.com/rxap/packages/compare/@rxap/schematics-ts-morph@19.2.0-dev.2...@rxap/schematics-ts-morph@19.2.0-dev.3) (2026-02-09)
147
+
148
+ **Note:** Version bump only for package @rxap/schematics-ts-morph
149
+
6
150
  # [19.2.0-dev.2](https://gitlab.com/rxap/packages/compare/@rxap/schematics-ts-morph@19.2.0-dev.1...@rxap/schematics-ts-morph@19.2.0-dev.2) (2026-01-29)
7
151
 
8
152
  ### Bug Fixes
package/TODO.md ADDED
@@ -0,0 +1,55 @@
1
+ # TODO: @rxap/schematics-ts-morph Audit Findings & Action Plan
2
+
3
+ This file documents critical bugs, functional issues, platform-compatibility bugs, and architectural debt found during the audit of the `@rxap/schematics-ts-morph` project.
4
+
5
+ ---
6
+
7
+ ## 💻 Platform Compatibility & Path Normalization Issues
8
+
9
+ ### 1. Windows-Incompatible Backslash Import Specifiers
10
+ * **Files:**
11
+ * [add-nest-module-to-app-module.ts](file:///mnt/mmuenker/Projects/rxap/packages/packages/schematic/ts-morph/src/lib/nest/add-nest-module-to-app-module.ts#L36)
12
+ * [coerce-nest-module.ts](file:///mnt/mmuenker/Projects/rxap/packages/packages/schematic/ts-morph/src/lib/nest/coerce-nest-module.ts#L126)
13
+ * **Problem:**
14
+ Node's `'path'` module functions (`join` and `relative`) are used to compute relative paths for module specifiers. On Windows platforms, these resolve with backslashes (`\`) (e.g., `..\foo\bar.module`). When written as TypeScript import specifiers, this causes syntax/compilation errors.
15
+ * **Recommended Fix:**
16
+ Normalize generated module specifiers to always use forward slashes (`/`), either via `@angular-devkit/core`'s `normalize` function or replacing backslashes:
17
+ ```typescript
18
+ const relativePath = relative(cleanAppModulePath, modulePath).replace(/\\/g, '/');
19
+ ```
20
+
21
+ ### 2. File-to-File Relative Path Resolution Bug
22
+ * **File:** [coerce-nest-module.ts](file:///mnt/mmuenker/Projects/rxap/packages/packages/schematic/ts-morph/src/lib/nest/coerce-nest-module.ts#L126)
23
+ * **Problem:**
24
+ Calling `relative(moduleFile, moduleFilePath)` where both parameters are file paths causes two issues:
25
+ 1. `relative` treats the first file path as a folder path, leading to an extra incorrect parent traversal (`../` instead of `./`).
26
+ 2. Relative path calculation does not prepend `./` for files in the same directory, which makes compilers resolve the import from `node_modules` instead of the local folder.
27
+ * **Recommended Fix:**
28
+ Extract the directory name of the source file first before calling `relative`, and ensure the output starts with `./` or `../`:
29
+ ```typescript
30
+ import { dirname } from 'path';
31
+ ...
32
+ let relativePath = relative(dirname(moduleFile), moduleFilePath).replace(/\\/g, '/');
33
+ if (!relativePath.startsWith('.') && !relativePath.startsWith('/')) {
34
+ relativePath = './' + relativePath;
35
+ }
36
+ ```
37
+
38
+ ---
39
+
40
+ ## 🏛️ Architectural Debt & Duplicate Logic
41
+
42
+ ### 3. Local Redundant `ts-morph` Helpers
43
+ * **Folder:** `src/lib/ts-morph/`
44
+ * **Problem:**
45
+ A massive collection of typescript-manipulation helpers (like `CoerceDecorator`, `CoerceImports`, `CoerceClassProperty`, `CoerceInterface`) are duplicated in this project and marked as `@deprecated import from @rxap/ts-morph`. However, the local library code inside `lib/angular/` and `lib/nest/` still imports and uses these local deprecated copies instead of using `@rxap/ts-morph` directly.
46
+ * **Recommended Fix:**
47
+ 1. Update all relative imports pointing to `./ts-morph/` or `../ts-morph/` to import from `@rxap/ts-morph` instead.
48
+ 2. Delete the redundant files in `packages/schematic/ts-morph/src/lib/ts-morph/` to eliminate duplicate maintenance.
49
+
50
+ ### 4. Loose Equality in Handlebars Helpers
51
+ * **File:** [coerce-component.ts](file:///mnt/mmuenker/Projects/rxap/packages/packages/schematic/ts-morph/src/lib/angular/coerce-component.ts#L104-L117)
52
+ * **Problem:**
53
+ Custom Handlebars helper functions `ifeq` and `ifnoteq` use loose equality (`==` and `!=`), which is an anti-pattern and can cause unexpected type-coercion bugs.
54
+ * **Recommended Fix:**
55
+ Refactor helpers to use strict equality (`===` and `!==`).
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "19.2.0-dev.2",
2
+ "version": "19.2.1-dev.1",
3
3
  "name": "@rxap/schematics-ts-morph",
4
4
  "description": "This package provides utilities for manipulating TypeScript code using ts-morph, particularly for Angular and NestJS projects. It offers functions to add, coerce, and modify code elements like classes, methods, decorators, and imports. The package also includes specialized functions for working with Angular components, NestJS modules, and form definitions.\n",
5
5
  "license": "GPL-3.0-or-later",
@@ -8,10 +8,10 @@
8
8
  "@angular-devkit/schematics": "19.2.1",
9
9
  "@nx/devkit": "20.5.0",
10
10
  "@rxap/schematics-utilities": "^19.1.0-dev.0",
11
- "@rxap/ts-morph": "^1.6.1-dev.0",
12
- "@rxap/utilities": "^16.5.1-dev.0",
13
- "@rxap/workspace-ts-morph": "^19.1.14-dev.0",
14
- "@rxap/workspace-utilities": "^19.9.1-dev.0",
11
+ "@rxap/ts-morph": "^1.7.0-dev.1",
12
+ "@rxap/utilities": "^16.5.1-dev.1",
13
+ "@rxap/workspace-ts-morph": "^19.1.14-dev.1",
14
+ "@rxap/workspace-utilities": "^19.9.1-dev.1",
15
15
  "colors": "^1.4.0",
16
16
  "handlebars": "^4.7.8",
17
17
  "ts-morph": "^18.0.0",
@@ -46,7 +46,6 @@
46
46
  },
47
47
  "schematics": "./generators.json",
48
48
  "type": "commonjs",
49
- "gitHead": "d5679c2b9b06459349f6c196d7e0db1007e79387",
50
49
  "types": "./src/index.d.ts",
51
50
  "main": "./src/index.js"
52
51
  }
@@ -3,16 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initGenerator = initGenerator;
4
4
  const tslib_1 = require("tslib");
5
5
  const devkit_1 = require("@nx/devkit");
6
+ const fs_1 = require("fs");
6
7
  const path_1 = require("path");
7
8
  function initGenerator(tree, options) {
8
9
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
10
  var _a, _b, _c, _d, _e;
10
- const packageJsonFilePath = (0, path_1.relative)(tree.root, (0, path_1.join)(__dirname, '..', '..', '..', 'package.json'));
11
- if (!tree.exists(packageJsonFilePath)) {
11
+ // The package's own package.json lives on disk next to the compiled generator
12
+ // (inside node_modules when installed), which the virtual Tree does not track.
13
+ // Read it directly from the physical filesystem.
14
+ const packageJsonFilePath = (0, path_1.join)(__dirname, '..', '..', '..', 'package.json');
15
+ if (!(0, fs_1.existsSync)(packageJsonFilePath)) {
12
16
  console.error('package.json not found in: ' + packageJsonFilePath);
13
17
  return;
14
18
  }
15
- const { peerDependencies, name: packageName } = JSON.parse(tree.read(packageJsonFilePath, 'utf-8'));
19
+ const { peerDependencies, name: packageName } = JSON.parse((0, fs_1.readFileSync)(packageJsonFilePath, 'utf-8'));
16
20
  console.log(`Coerce peer dependencies for package: ${packageName}`);
17
21
  if (!peerDependencies || !Object.keys(peerDependencies).length) {
18
22
  console.log('No peer dependencies found');
@@ -30,11 +34,12 @@ function initGenerator(tree, options) {
30
34
  isDevDependency = false;
31
35
  tree.write('package.json', JSON.stringify(rootPackageJson, null, 2));
32
36
  }
33
- if (!isDevDependency && [
34
- /^@rxap\/plugin/,
35
- /^@rxap\/workspace/,
36
- /@rxap\/schematic/,
37
- ]) {
37
+ if (!isDevDependency &&
38
+ [
39
+ /^@rxap\/plugin/,
40
+ /^@rxap\/workspace/,
41
+ /@rxap\/schematic/,
42
+ ].some((rx) => rx.test(packageName))) {
38
43
  (_c = rootPackageJson.devDependencies) !== null && _c !== void 0 ? _c : (rootPackageJson.devDependencies = {});
39
44
  rootPackageJson.devDependencies[packageName] =
40
45
  rootPackageJson.dependencies[packageName];
@@ -63,35 +68,39 @@ function initGenerator(tree, options) {
63
68
  (0, devkit_1.installPackagesTask)(tree);
64
69
  for (const peer of Object.keys(missingPeerDependencies)) {
65
70
  console.log(`Peer dependency ${peer} added to package.json`);
66
- const peerPackageJsonFilePath = (0, path_1.join)('node_modules', ...peer.split('/'), 'package.json');
67
- if (!tree.exists(peerPackageJsonFilePath)) {
71
+ // node_modules is physical and excluded from the virtual Tree, so resolve
72
+ // peer files from disk relative to the workspace root.
73
+ const peerPackageDir = (0, path_1.join)(tree.root, 'node_modules', ...peer.split('/'));
74
+ const peerPackageJsonFilePath = (0, path_1.join)(peerPackageDir, 'package.json');
75
+ if (!(0, fs_1.existsSync)(peerPackageJsonFilePath)) {
68
76
  console.log(`Peer dependency ${peer} has no package.json`);
69
77
  continue;
70
78
  }
71
- const { generators, schematics } = JSON.parse(tree.read(peerPackageJsonFilePath, 'utf-8'));
79
+ const { generators, schematics } = JSON.parse((0, fs_1.readFileSync)(peerPackageJsonFilePath, 'utf-8'));
72
80
  if (!generators && !schematics) {
73
81
  console.log(`Peer dependency ${peer} has no generators or schematics`);
74
82
  continue;
75
83
  }
76
84
  const configFile = generators || schematics;
77
- if (!tree.exists((0, path_1.join)('node_modules', ...peer.split('/'), configFile))) {
85
+ const configFilePath = (0, path_1.join)(peerPackageDir, configFile);
86
+ if (!(0, fs_1.existsSync)(configFilePath)) {
78
87
  console.log(`Peer dependency ${peer} has no generators or schematics file`);
79
88
  continue;
80
89
  }
81
- const config = JSON.parse(tree.read((0, path_1.join)('node_modules', ...peer.split('/'), configFile), 'utf-8'));
90
+ const config = JSON.parse((0, fs_1.readFileSync)(configFilePath, 'utf-8'));
82
91
  if (!((_d = config.generators) === null || _d === void 0 ? void 0 : _d.init)) {
83
92
  console.log(`Peer dependency ${peer} has no init generator`);
84
93
  continue;
85
94
  }
86
95
  const initGeneratorFilePath = config.generators.init.factory;
87
- const fullInitGeneratorFilePath = (0, path_1.join)('node_modules', ...peer.split('/'), initGeneratorFilePath) + '.js';
88
- if (!tree.exists(fullInitGeneratorFilePath)) {
96
+ const fullInitGeneratorFilePath = (0, path_1.join)(peerPackageDir, initGeneratorFilePath) + '.js';
97
+ if (!(0, fs_1.existsSync)(fullInitGeneratorFilePath)) {
89
98
  console.log(`Peer dependency ${peer} has no init generator file: ` +
90
99
  fullInitGeneratorFilePath);
91
100
  continue;
92
101
  }
93
102
  // eslint-disable-next-line @typescript-eslint/no-var-requires
94
- const initGenerator = (_e = require((0, path_1.join)('node_modules', ...peer.split('/'), initGeneratorFilePath))) === null || _e === void 0 ? void 0 : _e.default;
103
+ const initGenerator = (_e = require((0, path_1.join)(peerPackageDir, initGeneratorFilePath))) === null || _e === void 0 ? void 0 : _e.default;
95
104
  if (typeof initGenerator !== 'function') {
96
105
  console.log(`Peer dependency ${peer} has no init generator function`);
97
106
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/generators/init/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/generators/init/generator.ts"],"names":[],"mappings":";;AAUA,sCA8HC;;AAxID,uCAKoB;AACpB,2BAA8C;AAC9C,+BAA4B;AAG5B,SAAsB,aAAa,CAAC,IAAU,EAAE,OAA4B;;;QAC1E,8EAA8E;QAC9E,+EAA+E;QAC/E,iDAAiD;QACjD,MAAM,mBAAmB,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAC9E,IAAI,CAAC,IAAA,eAAU,EAAC,mBAAmB,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,6BAA6B,GAAG,mBAAmB,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QACD,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CACxD,IAAA,iBAAY,EAAC,mBAAmB,EAAE,OAAO,CAAC,CAC3C,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,yCAAyC,WAAW,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,sBAAsB,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE9E,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAE,CAAC,CAAC;QAExE,IAAI,eAAe,GAAG,CAAC,CAAC,CAAA,MAAA,eAAe,CAAC,eAAe,0CAAG,WAAW,CAAC,CAAA,CAAC;QAEvE,IACE,eAAe;YACf,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAClE,CAAC;YACD,MAAA,eAAe,CAAC,YAAY,oCAA5B,eAAe,CAAC,YAAY,GAAK,EAAE,EAAC;YACpC,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC;gBACvC,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC/C,OAAO,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACpD,eAAe,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,IACE,CAAC,eAAe;YAChB;gBACE,gBAAgB;gBAChB,mBAAmB;gBACnB,kBAAkB;aACnB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EACpC,CAAC;YACD,MAAA,eAAe,CAAC,eAAe,oCAA/B,eAAe,CAAC,eAAe,GAAK,EAAE,EAAC;YACvC,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC;gBAC1C,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAC5C,OAAO,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACjD,eAAe,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;aAC7D,MAAM,CACL,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE;;YACR,OAAA,CAAC,CAAA,MAAA,eAAe,CAAC,YAAY,0CAAG,GAAG,CAAC,CAAA;gBACpC,CAAC,CAAA,MAAA,eAAe,CAAC,eAAe,0CAAG,GAAG,CAAC,CAAA,CAAA;SAAA,CAC1C;aACA,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,iCAAM,GAAG,KAAE,CAAC,GAAG,CAAC,EAAE,OAAO,IAAG,EAAE,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YACpB,IAAA,qCAA4B,EAAC,IAAI,EAAE,EAAE,EAAE,uBAAuB,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,IAAA,qCAA4B,EAAC,IAAI,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAExB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAE1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,wBAAwB,CAAC,CAAC;YAC7D,0EAA0E;YAC1E,uDAAuD;YACvD,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3E,MAAM,uBAAuB,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YACrE,IAAI,CAAC,IAAA,eAAU,EAAC,uBAAuB,CAAC,EAAE,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,sBAAsB,CAAC,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAC3C,IAAA,iBAAY,EAAC,uBAAuB,EAAE,OAAO,CAAC,CAC/C,CAAC;YACF,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,kCAAkC,CAAC,CAAC;gBACvE,SAAS;YACX,CAAC;YACD,MAAM,UAAU,GAAG,UAAU,IAAI,UAAU,CAAC;YAC5C,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CACT,mBAAmB,IAAI,uCAAuC,CAC/D,CAAC;gBACF,SAAS;YACX,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,CAAA,MAAA,MAAM,CAAC,UAAU,0CAAE,IAAI,CAAA,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,wBAAwB,CAAC,CAAC;gBAC7D,SAAS;YACX,CAAC;YACD,MAAM,qBAAqB,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7D,MAAM,yBAAyB,GAC7B,IAAA,WAAI,EAAC,cAAc,EAAE,qBAAqB,CAAC,GAAG,KAAK,CAAC;YACtD,IAAI,CAAC,IAAA,eAAU,EAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CACT,mBAAmB,IAAI,+BAA+B;oBACpD,yBAAyB,CAC5B,CAAC;gBACF,SAAS;YACX,CAAC;YACD,8DAA8D;YAC9D,MAAM,aAAa,GAAG,MAAA,OAAO,CAAC,IAAA,WAAI,EAChC,cAAc,EACd,qBAAqB,CACtB,CAAC,0CAAE,OAAO,CAAC;YACZ,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,iCAAiC,CAAC,CAAC;gBACtE,SAAS;YACX,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;YAC9D,MAAM,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;CAAA;AAED,kBAAe,aAAa,CAAC"}