@rxap/schematic-composer 16.0.2-dev.1 → 16.1.0-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 +17 -0
- package/README.md +1 -1
- package/package.json +97 -22
- package/src/schematics/compose/index.js +49 -13
- package/src/schematics/compose/index.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [16.1.0-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@16.1.0-dev.0...@rxap/schematic-composer@16.1.0-dev.1) (2024-03-31)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- ensure the generator package is installed ([cfd7821](https://gitlab.com/rxap/packages/commit/cfd78219b3896aca9617404342b560ab8ae8e3dc))
|
|
11
|
+
- install packages before executing external schematic ([dc72a5c](https://gitlab.com/rxap/packages/commit/dc72a5c60713559de146d000120c75550f9f8440))
|
|
12
|
+
|
|
13
|
+
# [16.1.0-dev.0](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@16.0.2-dev.1...@rxap/schematic-composer@16.1.0-dev.0) (2024-03-14)
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
- use the project root instead of source root ([21cc75f](https://gitlab.com/rxap/packages/commit/21cc75fb02a0ae5bbe08c2b0b5ff1cd3c14335a0))
|
|
18
|
+
|
|
19
|
+
### Features
|
|
20
|
+
|
|
21
|
+
- support project detection ([db4e7b6](https://gitlab.com/rxap/packages/commit/db4e7b66c799adaddea874725aac21607748b2ff))
|
|
22
|
+
|
|
6
23
|
## [16.0.2-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@16.0.2-dev.0...@rxap/schematic-composer@16.0.2-dev.1) (2024-03-11)
|
|
7
24
|
|
|
8
25
|
**Note:** Version bump only for package @rxap/schematic-composer
|
package/README.md
CHANGED
|
@@ -17,5 +17,5 @@ yarn add @rxap/schematic-composer
|
|
|
17
17
|
```
|
|
18
18
|
**Install peer dependencies:**
|
|
19
19
|
```bash
|
|
20
|
-
yarn add @angular-devkit/schematics@^16.1.4 @rxap/schematics-ts-morph@^16.1.0-dev.
|
|
20
|
+
yarn add @angular-devkit/schematics@^16.1.4 @rxap/schematics-ts-morph@^16.1.0-dev.24 @rxap/schematics-utilities@^16.0.1-dev.3 @rxap/utilities@^16.1.0-dev.8 @rxap/workspace-utilities@^16.1.0-dev.5 tslib@2.6.2
|
|
21
21
|
```
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "16.0
|
|
2
|
+
"version": "16.1.0-dev.1",
|
|
3
3
|
"name": "@rxap/schematic-composer",
|
|
4
4
|
"license": "GPL-3.0-or-later",
|
|
5
5
|
"dependencies": {
|
|
6
|
+
"colors": "^1.4.0",
|
|
6
7
|
"handlebars": "4.7.7",
|
|
7
8
|
"ignore": "5.2.4",
|
|
8
9
|
"process": "0.11.10",
|
|
@@ -13,36 +14,46 @@
|
|
|
13
14
|
},
|
|
14
15
|
"peerDependencies": {
|
|
15
16
|
"@angular-devkit/schematics": "^16.1.4",
|
|
16
|
-
"@rxap/schematics-ts-morph": "^16.1.0-dev.
|
|
17
|
-
"@rxap/schematics-utilities": "^16.0.1-dev.
|
|
18
|
-
"@rxap/utilities": "^16.1.0-dev.
|
|
19
|
-
"
|
|
17
|
+
"@rxap/schematics-ts-morph": "^16.1.0-dev.24",
|
|
18
|
+
"@rxap/schematics-utilities": "^16.0.1-dev.3",
|
|
19
|
+
"@rxap/utilities": "^16.1.0-dev.8",
|
|
20
|
+
"@rxap/workspace-utilities": "^16.1.0-dev.5",
|
|
20
21
|
"tslib": "2.6.2",
|
|
21
22
|
"@apidevtools/json-schema-ref-parser": "9.0.9",
|
|
22
23
|
"@rxap/generator-ts-morph": "1.0.2-dev.0",
|
|
23
|
-
"@rxap/
|
|
24
|
-
"@rxap/json-schema-to-typescript": "16.0.1-dev.0",
|
|
24
|
+
"@rxap/json-schema-to-typescript": "16.0.1-dev.5",
|
|
25
25
|
"@rxap/mixin": "16.0.1-dev.1",
|
|
26
|
-
"@rxap/node-utilities": "1.2.0-dev.
|
|
27
|
-
"@rxap/plugin-
|
|
28
|
-
"@rxap/plugin-
|
|
29
|
-
"@rxap/plugin-
|
|
30
|
-
"@rxap/plugin-
|
|
31
|
-
"@rxap/plugin-
|
|
26
|
+
"@rxap/node-utilities": "1.2.0-dev.1",
|
|
27
|
+
"@rxap/plugin-angular": "16.2.0-dev.3",
|
|
28
|
+
"@rxap/plugin-application": "16.2.0-dev.2",
|
|
29
|
+
"@rxap/plugin-docker": "16.1.0-dev.7",
|
|
30
|
+
"@rxap/plugin-gitlab-ci": "16.1.0",
|
|
31
|
+
"@rxap/plugin-gpt": "16.0.2-dev.1",
|
|
32
|
+
"@rxap/plugin-library": "16.1.0-dev.9",
|
|
33
|
+
"@rxap/plugin-localazy": "16.1.1-dev.2",
|
|
34
|
+
"@rxap/plugin-nestjs": "16.2.0-dev.8",
|
|
35
|
+
"@rxap/plugin-open-api": "16.1.1-dev.3",
|
|
36
|
+
"@rxap/plugin-utilities": "16.1.1-dev.4",
|
|
37
|
+
"@rxap/plugin-web3-storage": "16.0.2-dev.0",
|
|
38
|
+
"@rxap/plugin-workspace": "16.2.0-dev.5",
|
|
32
39
|
"@rxap/reflect-metadata": "1.0.2-dev.1",
|
|
33
|
-
"@rxap/schematic-angular": "16.2.0-dev.
|
|
34
|
-
"@rxap/schematic-nestjs": "16.0.2-dev.
|
|
40
|
+
"@rxap/schematic-angular": "16.2.0-dev.52",
|
|
41
|
+
"@rxap/schematic-nestjs": "16.0.2-dev.5",
|
|
35
42
|
"@rxap/schematics-open-api": "16.0.1-dev.0",
|
|
36
43
|
"@rxap/schematics-xml-parser": "16.0.1-dev.1",
|
|
37
|
-
"@rxap/ts-morph": "1.1.0-dev.
|
|
44
|
+
"@rxap/ts-morph": "1.1.0-dev.22",
|
|
45
|
+
"@rxap/workspace-open-api": "16.0.2-dev.2",
|
|
38
46
|
"@rxap/workspace-ts-morph": "16.0.2-dev.2",
|
|
39
|
-
"@rxap/workspace-utilities": "16.1.0-dev.1",
|
|
40
47
|
"@rxap/xml-parser": "16.0.1-dev.1",
|
|
48
|
+
"files-from-path": "1.0.0",
|
|
41
49
|
"fs-extra": "11.1.1",
|
|
42
50
|
"glob": "10.3.10",
|
|
51
|
+
"gpt-3-encoder": "1.1.4",
|
|
52
|
+
"openai": "3.3.0",
|
|
43
53
|
"openapi-types": "10.0.0",
|
|
44
54
|
"reflect-metadata": "0.1.13",
|
|
45
55
|
"util": "0.12.5",
|
|
56
|
+
"web3.storage": "4.5.5",
|
|
46
57
|
"xmldom": "0.6.0"
|
|
47
58
|
},
|
|
48
59
|
"author": {
|
|
@@ -63,21 +74,85 @@
|
|
|
63
74
|
],
|
|
64
75
|
"nx-migrations": {
|
|
65
76
|
"packageGroup": [
|
|
77
|
+
{
|
|
78
|
+
"package": "@rxap/plugin-angular",
|
|
79
|
+
"version": "16.2.0-dev.3"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"package": "@rxap/plugin-application",
|
|
83
|
+
"version": "16.2.0-dev.2"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"package": "@rxap/plugin-docker",
|
|
87
|
+
"version": "16.1.0-dev.7"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"package": "@rxap/plugin-gitlab-ci",
|
|
91
|
+
"version": "16.1.0"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"package": "@rxap/plugin-gpt",
|
|
95
|
+
"version": "16.0.2-dev.1"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"package": "@rxap/plugin-library",
|
|
99
|
+
"version": "16.1.0-dev.9"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"package": "@rxap/plugin-localazy",
|
|
103
|
+
"version": "16.1.1-dev.2"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"package": "@rxap/plugin-nestjs",
|
|
107
|
+
"version": "16.2.0-dev.8"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"package": "@rxap/plugin-open-api",
|
|
111
|
+
"version": "16.1.1-dev.3"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"package": "@rxap/plugin-utilities",
|
|
115
|
+
"version": "16.1.1-dev.4"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"package": "@rxap/plugin-web3-storage",
|
|
119
|
+
"version": "16.0.2-dev.0"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"package": "@rxap/plugin-workspace",
|
|
123
|
+
"version": "16.2.0-dev.5"
|
|
124
|
+
},
|
|
66
125
|
{
|
|
67
126
|
"package": "@rxap/schematic-angular",
|
|
68
|
-
"version": "16.2.0-dev.
|
|
127
|
+
"version": "16.2.0-dev.52"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"package": "@rxap/schematic-nestjs",
|
|
131
|
+
"version": "16.0.2-dev.5"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"package": "@rxap/schematics-open-api",
|
|
135
|
+
"version": "16.0.1-dev.0"
|
|
69
136
|
},
|
|
70
137
|
{
|
|
71
138
|
"package": "@rxap/schematics-ts-morph",
|
|
72
|
-
"version": "16.1.0-dev.
|
|
139
|
+
"version": "16.1.0-dev.24"
|
|
73
140
|
},
|
|
74
141
|
{
|
|
75
142
|
"package": "@rxap/schematics-utilities",
|
|
76
|
-
"version": "16.0.1-dev.
|
|
143
|
+
"version": "16.0.1-dev.3"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"package": "@rxap/schematics-xml-parser",
|
|
147
|
+
"version": "16.0.1-dev.1"
|
|
77
148
|
},
|
|
78
149
|
{
|
|
79
150
|
"package": "@rxap/utilities",
|
|
80
|
-
"version": "16.1.0-dev.
|
|
151
|
+
"version": "16.1.0-dev.8"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"package": "@rxap/workspace-utilities",
|
|
155
|
+
"version": "16.1.0-dev.5"
|
|
81
156
|
}
|
|
82
157
|
]
|
|
83
158
|
},
|
|
@@ -92,7 +167,7 @@
|
|
|
92
167
|
},
|
|
93
168
|
"schematics": "./collection.json",
|
|
94
169
|
"type": "commonjs",
|
|
95
|
-
"gitHead": "
|
|
170
|
+
"gitHead": "88bb83e5ae16a958b2618d657587390058b48a3f",
|
|
96
171
|
"main": "./src/index.js",
|
|
97
172
|
"types": "./src/index.d.ts"
|
|
98
173
|
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
4
|
+
const tasks_1 = require("@angular-devkit/schematics/tasks");
|
|
4
5
|
const schematics_ts_morph_1 = require("@rxap/schematics-ts-morph");
|
|
5
6
|
const schematics_utilities_1 = require("@rxap/schematics-utilities");
|
|
6
7
|
const utilities_1 = require("@rxap/utilities");
|
|
8
|
+
const workspace_utilities_1 = require("@rxap/workspace-utilities");
|
|
7
9
|
const path_1 = require("path");
|
|
8
10
|
const yaml_1 = require("yaml");
|
|
9
11
|
require("colors");
|
|
10
|
-
function detectedFeature(
|
|
11
|
-
const fragments =
|
|
12
|
+
function detectedFeature(schematicCommandFilePath) {
|
|
13
|
+
const fragments = schematicCommandFilePath.split('/').reverse();
|
|
12
14
|
let last = fragments.pop();
|
|
13
15
|
for (const fragment of fragments) {
|
|
14
16
|
if (fragment === 'feature') {
|
|
@@ -18,6 +20,20 @@ function detectedFeature(path) {
|
|
|
18
20
|
}
|
|
19
21
|
return undefined;
|
|
20
22
|
}
|
|
23
|
+
function detectedProject(host, schematicCommandFilePath) {
|
|
24
|
+
const fragments = schematicCommandFilePath.split('/');
|
|
25
|
+
fragments.pop();
|
|
26
|
+
while (fragments.length) {
|
|
27
|
+
const path = fragments.join('/');
|
|
28
|
+
if (host.exists((0, path_1.join)(path, 'project.json'))) {
|
|
29
|
+
const content = JSON.parse(host.read((0, path_1.join)(path, 'project.json')).toString('utf-8'));
|
|
30
|
+
if (content.name) {
|
|
31
|
+
return content.name;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
21
37
|
function parseSchematicCommandFile(host, filePath) {
|
|
22
38
|
var _a;
|
|
23
39
|
const schematicCommandFile = (_a = host.read(filePath)) === null || _a === void 0 ? void 0 : _a.toString('utf-8');
|
|
@@ -38,13 +54,18 @@ function parseSchematicCommandFile(host, filePath) {
|
|
|
38
54
|
}
|
|
39
55
|
return (0, utilities_1.coerceArray)(parsed);
|
|
40
56
|
}
|
|
41
|
-
function executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions
|
|
42
|
-
var _a;
|
|
57
|
+
function executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions) {
|
|
58
|
+
var _a, _b;
|
|
43
59
|
const schematicCommandList = parseSchematicCommandFile(host, schematicCommandFilePath);
|
|
44
60
|
const ruleList = [];
|
|
45
61
|
for (const command of schematicCommandList) {
|
|
46
62
|
const options = Object.assign(Object.assign({}, globalOptions), command.options);
|
|
47
|
-
(_a = options.
|
|
63
|
+
(_a = options.project) !== null && _a !== void 0 ? _a : (options.project = detectedProject(host, schematicCommandFilePath));
|
|
64
|
+
(_b = options.feature) !== null && _b !== void 0 ? _b : (options.feature = detectedFeature(schematicCommandFilePath));
|
|
65
|
+
if (!options.project) {
|
|
66
|
+
throw new schematics_1.SchematicsException(`The project option is required for the schematic command file '${schematicCommandFilePath}'`);
|
|
67
|
+
}
|
|
68
|
+
const projectSourceRoot = (0, schematics_utilities_1.GetProjectSourceRoot)(host, options.project);
|
|
48
69
|
const directoryParts = (0, path_1.relative)(projectSourceRoot, (0, path_1.dirname)(schematicCommandFilePath).replace(/^\//, '')).split('/');
|
|
49
70
|
if (options.feature) {
|
|
50
71
|
if (directoryParts[0] === 'feature') {
|
|
@@ -63,6 +84,10 @@ function executeSchematicCommandFile(host, schematicCommandFilePath, globalOptio
|
|
|
63
84
|
ruleList.push((0, schematics_1.chain)([
|
|
64
85
|
() => console.log(`Execute schematic '${command.package}:${command.name}'`.green),
|
|
65
86
|
() => console.log(`Input Options: ${JSON.stringify(options)}`.grey),
|
|
87
|
+
(0, schematics_utilities_1.AddPackageJsonDevDependencyRule)(command.package, 'latest', { soft: true }),
|
|
88
|
+
(_, context) => {
|
|
89
|
+
context.addTask(new tasks_1.NodePackageInstallTask({ packageManager: 'yarn' }));
|
|
90
|
+
},
|
|
66
91
|
() => {
|
|
67
92
|
try {
|
|
68
93
|
return (0, schematics_1.externalSchematic)(command.package, command.name, options);
|
|
@@ -102,22 +127,28 @@ function getSchematicCommandList(host, sourceRoot) {
|
|
|
102
127
|
});
|
|
103
128
|
return schematicCommandList;
|
|
104
129
|
}
|
|
105
|
-
function getSchematicCommandRuleList(host, schematicCommandList, globalOptions
|
|
130
|
+
function getSchematicCommandRuleList(host, schematicCommandList, globalOptions) {
|
|
106
131
|
const ruleList = [];
|
|
107
132
|
for (const schematicCommandFilePath of schematicCommandList) {
|
|
108
133
|
ruleList.push((0, schematics_1.chain)([
|
|
109
134
|
() => console.log(`Execute schematic command file '${schematicCommandFilePath}'`.blue),
|
|
110
|
-
executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions
|
|
135
|
+
executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions),
|
|
111
136
|
]));
|
|
112
137
|
}
|
|
113
138
|
return (0, schematics_1.chain)(ruleList);
|
|
114
139
|
}
|
|
115
|
-
function executeSchematicCommand(host, sourceRoot, globalOptions, filter
|
|
140
|
+
function executeSchematicCommand(host, sourceRoot, globalOptions, filter) {
|
|
116
141
|
let schematicCommandList = getSchematicCommandList(host, sourceRoot);
|
|
117
142
|
if (filter) {
|
|
118
143
|
schematicCommandList = schematicCommandList.filter(path => (0, path_1.dirname)(path).split('/').pop() === filter);
|
|
119
144
|
}
|
|
120
|
-
|
|
145
|
+
if (!schematicCommandList.length) {
|
|
146
|
+
console.log('No schematic command files found in source root:'.yellow, sourceRoot);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
console.log('Schematic Command List:\n'.blue, schematicCommandList.map(item => ` - ${item}`).join('\n'));
|
|
150
|
+
}
|
|
151
|
+
return getSchematicCommandRuleList(host, schematicCommandList, globalOptions);
|
|
121
152
|
}
|
|
122
153
|
function forFeature(host, projectName, featureName, globalOptions, filter) {
|
|
123
154
|
const projectSourceRoot = (0, schematics_utilities_1.GetProjectSourceRoot)(host, projectName);
|
|
@@ -129,12 +160,16 @@ function forFeature(host, projectName, featureName, globalOptions, filter) {
|
|
|
129
160
|
})) {
|
|
130
161
|
throw new schematics_1.SchematicsException(`The feature '${featureName}' does not exists in project '${projectName}'`);
|
|
131
162
|
}
|
|
132
|
-
return executeSchematicCommand(host, featureSourceRoot, globalOptions, filter
|
|
163
|
+
return executeSchematicCommand(host, featureSourceRoot, globalOptions, filter);
|
|
133
164
|
}
|
|
134
165
|
function forProject(host, projectName, globalOptions, filter) {
|
|
135
|
-
const
|
|
136
|
-
console.log('Use project
|
|
137
|
-
return executeSchematicCommand(host,
|
|
166
|
+
const projectRoot = (0, workspace_utilities_1.GetProjectRoot)(host, projectName);
|
|
167
|
+
console.log('Use project root:', projectRoot);
|
|
168
|
+
return executeSchematicCommand(host, projectRoot, globalOptions, filter);
|
|
169
|
+
}
|
|
170
|
+
function forWorkspace(host, globalOptions, filter) {
|
|
171
|
+
console.log('Use workspace source root');
|
|
172
|
+
return executeSchematicCommand(host, '/', globalOptions, filter);
|
|
138
173
|
}
|
|
139
174
|
function NormalizeComposeOptions(options) {
|
|
140
175
|
var _a, _b, _c;
|
|
@@ -167,6 +202,7 @@ function default_1(options) {
|
|
|
167
202
|
}
|
|
168
203
|
return forProject(host, project, globalOptions, filter);
|
|
169
204
|
}
|
|
205
|
+
return forWorkspace(host, globalOptions, filter);
|
|
170
206
|
throw new Error('Not yet implemented - project and feature options are required!');
|
|
171
207
|
};
|
|
172
208
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/composer/src/schematics/compose/index.ts"],"names":[],"mappings":";;AAAA,2DAMoC;AACpC,mEAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/composer/src/schematics/compose/index.ts"],"names":[],"mappings":";;AAAA,2DAMoC;AACpC,4DAA0E;AAC1E,mEAA8D;AAC9D,qEAIoC;AACpC,+CAIyB;AACzB,mEAA2D;AAC3D,+BAIc;AACd,+BAA6B;AAE7B,kBAAgB;AAQhB,SAAS,eAAe,CAAC,wBAAgC;IACvD,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,IAAI,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC;IAC3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,GAAG,QAAQ,CAAC;KACjB;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,IAAU,EAAE,wBAAgC;IACnE,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE,CAAC;IAChB,OAAO,SAAS,CAAC,MAAM,EAAE;QACvB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,cAAc,CAAC,CAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACrF,IAAI,OAAO,CAAC,IAAI,EAAE;gBAChB,OAAO,OAAO,CAAC,IAAI,CAAC;aACrB;SACF;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAU,EAAE,QAAgB;;IAE7D,MAAM,oBAAoB,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEpE,IAAI,CAAC,oBAAoB,EAAE;QACzB,MAAM,IAAI,gCAAmB,CAAC,+BAAgC,QAAS,oBAAoB,CAAC,CAAC;KAC9F;IAED,IAAI,MAA6C,CAAC;IAElD,QAAQ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACjC,KAAK,MAAM;YACT,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,KAAK,CAAC;QACX,KAAK,MAAM;YACT,MAAM,GAAG,IAAA,YAAK,EAAC,oBAAoB,CAAC,CAAC;YACrC,MAAM;QACR;YACE,MAAM,IAAI,gCAAmB,CAAC,+BAAgC,QAAS,sCAAsC,CAAC,CAAC;KAClH;IAED,OAAO,IAAA,uBAAW,EAAC,MAAM,CAAC,CAAC;AAE7B,CAAC;AAED,SAAS,2BAA2B,CAClC,IAAU,EACV,wBAAgC,EAChC,aAAqC;;IAGrC,MAAM,oBAAoB,GAAuB,yBAAyB,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;IAE3G,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE;QAC1C,MAAM,OAAO,mCACR,aAAa,GACb,OAAO,CAAC,OAAO,CACnB,CAAC;QACF,MAAA,OAAO,CAAC,OAAO,oCAAf,OAAO,CAAC,OAAO,GAAK,eAAe,CAAC,IAAI,EAAE,wBAAwB,CAAC,EAAC;QACpE,MAAA,OAAO,CAAC,OAAO,oCAAf,OAAO,CAAC,OAAO,GAAK,eAAe,CAAC,wBAAwB,CAAC,EAAC;QAE9D,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,MAAM,IAAI,gCAAmB,CAAC,kEAAmE,wBAAyB,GAAG,CAAC,CAAC;SAChI;QAED,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACtE,MAAM,cAAc,GAAG,IAAA,eAAQ,EAAC,iBAAiB,EAAE,IAAA,cAAO,EAAC,wBAAwB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpH,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;gBACnC,cAAc,CAAC,KAAK,EAAE,CAAC;aACxB;YACD,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE;gBACzC,cAAc,CAAC,KAAK,EAAE,CAAC;aACxB;SACF;QACD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,8BAA8B;SACrD;QACD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC9C;QACD,QAAQ,CAAC,IAAI,CAAC,IAAA,kBAAK,EAAC;YAClB,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAuB,OAAO,CAAC,OAAQ,IAAK,OAAO,CAAC,IAAK,GAAG,CAAC,KAAK,CAAC;YACrF,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAmB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAE,EAAE,CAAC,IAAI,CAAC;YACrE,IAAA,sDAA+B,EAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC1E,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;gBACb,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAsB,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC1E,CAAC;YACD,GAAG,EAAE;gBACH,IAAI;oBACF,OAAO,IAAA,8BAAiB,EAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;iBAClE;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,CAAC,KAAK,CAAC,oCAAqC,OAAO,CAAC,OAAQ,IAAK,OAAO,CAAC,IAAK,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC9F,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,IAAI,CAAC,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,mDAAoD,OAAO,CAAC,OAAQ,cAAe,OAAO,CAAC,OAAQ,aAAc,IAAA,cAAO,EAClI,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,EAAE,CAAC,IAAI,CAAC,CAAC;oBACtD,MAAM,CAAC,CAAC;iBACT;YACH,CAAC;SACF,CAAC,CAAC,CAAC;KACL;IAED,OAAO,IAAA,kBAAK,EAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAU,EAAE,UAAkB;IAC7D,MAAM,oBAAoB,GAAa,EAAE,CAAC;IAE1C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YAC1C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YAC1C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;YACzC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YAC3C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YAC3C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YAC1C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,SAAS,2BAA2B,CAClC,IAAU,EACV,oBAA8B,EAC9B,aAAqC;IAErC,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,wBAAwB,IAAI,oBAAoB,EAAE;QAC3D,QAAQ,CAAC,IAAI,CAAC,IAAA,kBAAK,EAAC;YAClB,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAoC,wBAAyB,GAAG,CAAC,IAAI,CAAC;YACxF,2BAA2B,CAAC,IAAI,EAAE,wBAAwB,EAAE,aAAa,CAAC;SAC3E,CAAC,CAAC,CAAC;KACL;IAED,OAAO,IAAA,kBAAK,EAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAU,EACV,UAAkB,EAClB,aAAqC,EACrC,MAAqB;IAErB,IAAI,oBAAoB,GAAG,uBAAuB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAErE,IAAI,MAAM,EAAE;QACV,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,MAAM,CAAC,CAAC;KACvG;IAED,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE;QAChC,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;KACpF;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,EAAE,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAO,IAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAC5G;IAED,OAAO,2BAA2B,CAAC,IAAI,EAAE,oBAAoB,EAAE,aAAa,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,UAAU,CACjB,IAAU,EACV,WAAmB,EACnB,WAAmB,EACnB,aAAqC,EACrC,MAAqB;IAGrB,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,IAAA,WAAI,EAAC,iBAAiB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAE1E,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAC;IAE3D,IAAI,CAAC,IAAA,uCAAiB,EACpB,IAAI,EACJ;QACE,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,WAAW;KACrB,CACF,EAAE;QACD,MAAM,IAAI,gCAAmB,CAAC,gBAAiB,WAAY,iCAAkC,WAAY,GAAG,CAAC,CAAC;KAC/G;IAED,OAAO,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAEjF,CAAC;AAED,SAAS,UAAU,CAAC,IAAU,EAAE,WAAmB,EAAE,aAAqC,EAAE,MAAqB;IAE/G,MAAM,WAAW,GAAG,IAAA,oCAAc,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;IAE9C,OAAO,uBAAuB,CAAC,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAE3E,CAAC;AAED,SAAS,YAAY,CAAC,IAAU,EAAE,aAAqC,EAAE,MAAqB;IAE5F,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,OAAO,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAEnE,CAAC;AASD,SAAS,uBAAuB,CAAC,OAA+B;;IAC9D,IAAI,SAAS,GAAG,MAAA,OAAO,CAAC,SAAS,mCAAI,KAAK,CAAC;IAC3C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QACjC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KAClC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC5D,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC5D,MAAM,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,IAAI;QAC9B,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,MAAA,OAAO,CAAC,OAAO,mCAAI,KAAK;KAClC,CAAC,CAAC;AACL,CAAC;AAED,mBAAyB,OAA+B;IACtD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,GAAG,iBAAiB,CAAC;IAEtB,MAAM,aAAa,GAA2B;QAC5C,qEAAqE;QACrE,SAAS,EAAE,SAAgB;QAC3B,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,SAAS;QAC7B,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,SAAS;KAC9B,CAAC;IAEF,OAAO,CAAC,IAAU,EAAE,EAAE;QAEpB,IAAI,OAAO,EAAE;YACX,IAAI,OAAO,EAAE;gBACX,OAAO,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;aAClE;YACD,OAAO,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;SACzD;QACD,OAAO,YAAY,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAEjD,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC,CAAC;AACJ,CAAC;AA9BD,4BA8BC"}
|