@o3r/schematics 9.3.0-alpha.45 → 9.3.0-alpha.47
Sign up to get free protection for your applications and to get access to all the features.
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@o3r/schematics",
|
3
|
-
"version": "9.3.0-alpha.
|
3
|
+
"version": "9.3.0-alpha.47",
|
4
4
|
"description": "Schematics module of the Otter framework",
|
5
5
|
"main": "./src/public_api.js",
|
6
6
|
"keywords": [
|
@@ -58,9 +58,9 @@
|
|
58
58
|
"@nx/jest": "~16.8.0",
|
59
59
|
"@nx/js": "~16.8.0",
|
60
60
|
"@nx/linter": "~16.8.0",
|
61
|
-
"@o3r/build-helpers": "^9.3.0-alpha.
|
62
|
-
"@o3r/dev-tools": "^9.3.0-alpha.
|
63
|
-
"@o3r/eslint-plugin": "^9.3.0-alpha.
|
61
|
+
"@o3r/build-helpers": "^9.3.0-alpha.47",
|
62
|
+
"@o3r/dev-tools": "^9.3.0-alpha.47",
|
63
|
+
"@o3r/eslint-plugin": "^9.3.0-alpha.47",
|
64
64
|
"@schematics/angular": "~16.2.0",
|
65
65
|
"@types/jest": "~29.5.2",
|
66
66
|
"@types/node": "^18.0.0",
|
@@ -85,7 +85,7 @@
|
|
85
85
|
"zone.js": "~0.13.1"
|
86
86
|
},
|
87
87
|
"engines": {
|
88
|
-
"node": ">=
|
88
|
+
"node": ">=18.0.0"
|
89
89
|
},
|
90
90
|
"schematics": "./collection.json",
|
91
91
|
"type": "commonjs",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,IAAI,EAAqC,MAAM,4BAA4B,CAAC;AAGrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,IAAI,EAAqC,MAAM,4BAA4B,CAAC;AAGrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAI9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAA;CAAE,EAAE,eAAe,SAAkB,GAAG,IAAI,CA0HzL;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,gCAAiD,EAC5I,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,CAAC,EAAE,MAAM,QAgBzD;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAQ5G;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAsB3I"}
|
@@ -4,10 +4,10 @@ exports.setupSchematicsDefaultParams = exports.registerPackageCollectionSchemati
|
|
4
4
|
const schematics_1 = require("@angular-devkit/schematics");
|
5
5
|
const tasks_1 = require("@angular-devkit/schematics/tasks");
|
6
6
|
const dependencies_1 = require("@schematics/angular/utility/dependencies");
|
7
|
-
const rxjs_1 = require("rxjs");
|
8
|
-
const index_1 = require("../../utility/index");
|
9
7
|
const node_fs_1 = require("node:fs");
|
10
8
|
const path = require("node:path");
|
9
|
+
const rxjs_1 = require("rxjs");
|
10
|
+
const index_1 = require("../../utility/index");
|
11
11
|
/**
|
12
12
|
* Install via `ng add` a list of npm packages.
|
13
13
|
*
|
@@ -20,28 +20,38 @@ function ngAddPackages(packages, options, packageJsonPath = '/package.json') {
|
|
20
20
|
return schematics_1.noop;
|
21
21
|
}
|
22
22
|
const cwd = process.cwd().replace(/[\\/]+/g, '/');
|
23
|
-
// FileSystem working directory might be different
|
23
|
+
// FileSystem working directory might be different from Tree working directory (when using `yarn workspace` for example)
|
24
24
|
const fsWorkingDirectory = (options?.workingDirectory && !cwd.endsWith(options.workingDirectory)) ? options.workingDirectory : '.';
|
25
25
|
const versions = Object.fromEntries(packages.map((packageName, index) => [packageName, typeof options?.version === 'object' ? options.version[index] : options?.version]));
|
26
26
|
if (options?.workingDirectory && !packageJsonPath.startsWith(options.workingDirectory)) {
|
27
27
|
packageJsonPath = path.join(options.workingDirectory, packageJsonPath);
|
28
28
|
}
|
29
29
|
const getInstalledVersion = (packageName) => {
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
30
|
+
let versionFound;
|
31
|
+
for (const workingDirectory of new Set([fsWorkingDirectory, '.'])) {
|
32
|
+
try {
|
33
|
+
const fileSystemPackageJson = JSON.parse((0, node_fs_1.readFileSync)(path.join(workingDirectory, 'package.json'), { encoding: 'utf8' }));
|
34
|
+
let version;
|
35
|
+
if (options?.dependencyType === dependencies_1.NodeDependencyType.Dev) {
|
36
|
+
version = fileSystemPackageJson.devDependencies[packageName];
|
37
|
+
}
|
38
|
+
else if (options?.dependencyType === dependencies_1.NodeDependencyType.Peer) {
|
39
|
+
version = fileSystemPackageJson.peerDependencies[packageName];
|
40
|
+
}
|
41
|
+
else {
|
42
|
+
version = fileSystemPackageJson.dependencies[packageName];
|
43
|
+
}
|
44
|
+
if (versionFound && version !== versionFound) {
|
45
|
+
// In case of conflict between package.json files, we consider the package as not installed to force its update
|
46
|
+
return;
|
47
|
+
}
|
48
|
+
versionFound = version;
|
37
49
|
}
|
38
|
-
|
39
|
-
return
|
50
|
+
catch (e) {
|
51
|
+
return;
|
40
52
|
}
|
41
53
|
}
|
42
|
-
|
43
|
-
return;
|
44
|
-
}
|
54
|
+
return versionFound;
|
45
55
|
};
|
46
56
|
const getNgAddSchema = (packageName, context) => {
|
47
57
|
try {
|
@@ -62,66 +72,69 @@ function ngAddPackages(packages, options, packageJsonPath = '/package.json') {
|
|
62
72
|
return accOptions;
|
63
73
|
}, {});
|
64
74
|
};
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
latestInstalledVersions.forEach(([packageName, latestInstalledVersion]) => {
|
98
|
-
if (options?.dependencyType === dependencies_1.NodeDependencyType.Dev) {
|
99
|
-
packageJson.devDependencies = { ...packageJson.devDependencies, [packageName]: latestInstalledVersion };
|
100
|
-
}
|
101
|
-
else if (options?.dependencyType === dependencies_1.NodeDependencyType.Peer) {
|
102
|
-
packageJson.peerDependencies = { ...packageJson.peerDependencies, [packageName]: latestInstalledVersion };
|
75
|
+
const installedVersions = packages.map((packageName) => getInstalledVersion(packageName));
|
76
|
+
const packageManager = (0, index_1.getPackageManager)();
|
77
|
+
const packagesToInstall = packages.filter((packageName, index) => !installedVersions[index] || installedVersions[index] !== versions[packageName]);
|
78
|
+
if (packagesToInstall.length < 1) {
|
79
|
+
return schematics_1.noop;
|
80
|
+
}
|
81
|
+
return (0, schematics_1.chain)([
|
82
|
+
// Update package.json in tree
|
83
|
+
(tree) => {
|
84
|
+
const sortDependencies = (packageJson, depType) => {
|
85
|
+
packageJson[depType] = packageJson[depType] ?
|
86
|
+
Object.fromEntries(Object.entries(packageJson[depType]).sort(([key1, _val1], [key2, _val2]) => key1.localeCompare(key2))) :
|
87
|
+
undefined;
|
88
|
+
};
|
89
|
+
for (const filePath of new Set([packageJsonPath, './package.json'])) {
|
90
|
+
const packageJson = tree.readJson(filePath);
|
91
|
+
packages.forEach((packageName) => {
|
92
|
+
const version = versions[packageName] || 'latest';
|
93
|
+
if (options?.dependencyType === dependencies_1.NodeDependencyType.Dev) {
|
94
|
+
packageJson.devDependencies = { ...packageJson.devDependencies, [packageName]: version };
|
95
|
+
}
|
96
|
+
else if (options?.dependencyType === dependencies_1.NodeDependencyType.Peer) {
|
97
|
+
packageJson.peerDependencies = { ...packageJson.peerDependencies, [packageName]: version };
|
98
|
+
}
|
99
|
+
else {
|
100
|
+
packageJson.dependencies = { ...packageJson.dependencies, [packageName]: version };
|
101
|
+
}
|
102
|
+
});
|
103
|
+
['dependencies', 'devDependencies', 'peerDependencies'].forEach((depType) => {
|
104
|
+
sortDependencies(packageJson, depType);
|
105
|
+
});
|
106
|
+
tree.overwrite(filePath, JSON.stringify(packageJson, null, 2));
|
103
107
|
}
|
104
|
-
|
105
|
-
|
108
|
+
},
|
109
|
+
// Run ng-adds
|
110
|
+
async (tree, context) => {
|
111
|
+
if (options?.skipNgAddSchematicRun) {
|
112
|
+
context.logger.info(`Package(s) '${packagesToInstall.join(', ')}' was(were) installed.
|
113
|
+
The run of 'ng-add' schematics for the package(s) is intentionally skipped. You can do the run standalone, later.`);
|
114
|
+
return schematics_1.noop;
|
106
115
|
}
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
116
|
+
new Set([packageJsonPath, './package.json']).forEach((filePath) => {
|
117
|
+
(0, node_fs_1.mkdirSync)(path.join(process.cwd(), path.dirname(filePath)), { recursive: true });
|
118
|
+
(0, node_fs_1.writeFileSync)(path.join(process.cwd(), filePath), tree.readText(filePath));
|
119
|
+
});
|
120
|
+
context.addTask(new tasks_1.NodePackageInstallTask({
|
121
|
+
packageManager: packageManager,
|
122
|
+
hideOutput: false,
|
123
|
+
quiet: false
|
124
|
+
}));
|
125
|
+
await (0, rxjs_1.lastValueFrom)(context.engine.executePostTasks());
|
126
|
+
const ngAddsToApply = packagesToInstall
|
127
|
+
.map((packageName) => ({ packageName, ngAddCollection: getNgAddSchema(packageName, context) }))
|
128
|
+
.filter(({ packageName, ngAddCollection }) => {
|
129
|
+
if (!ngAddCollection) {
|
130
|
+
context.logger.info(`No ng-add schematic found for: '${packageName}'. Skipping ng add for: ${packageName}${versions[packageName] ? ' with version: ' + versions[packageName] : ''}`);
|
131
|
+
}
|
132
|
+
return !!ngAddCollection;
|
133
|
+
})
|
134
|
+
.map(({ packageName, ngAddCollection }) => (0, schematics_1.externalSchematic)(packageName, 'ng-add', getOptions(ngAddCollection)));
|
135
|
+
return (0, schematics_1.chain)(ngAddsToApply);
|
113
136
|
}
|
114
|
-
|
115
|
-
.map((packageName) => ({ packageName, ngAddCollection: getNgAddSchema(packageName, context) }))
|
116
|
-
.filter(({ packageName, ngAddCollection }) => {
|
117
|
-
if (!ngAddCollection) {
|
118
|
-
context.logger.info(`No ng-add schematic found for: '${packageName}'. Skipping ng add for: ${packageName}${versions[packageName] ? ' with version: ' + versions[packageName] : ''}`);
|
119
|
-
}
|
120
|
-
return !!ngAddCollection;
|
121
|
-
})
|
122
|
-
.map(({ packageName, ngAddCollection }) => (0, schematics_1.externalSchematic)(packageName, 'ng-add', getOptions(ngAddCollection)));
|
123
|
-
return (0, schematics_1.chain)(ngAddsToApply);
|
124
|
-
};
|
137
|
+
]);
|
125
138
|
}
|
126
139
|
exports.ngAddPackages = ngAddPackages;
|
127
140
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/index.ts"],"names":[],"mappings":";;;AAAA,2DAAqH;AACrH,4DAA0E;AAE1E,2EAA8E;AAC9E,+BAAqC;AAIrC,+CAAqL;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/index.ts"],"names":[],"mappings":";;;AAAA,2DAAqH;AACrH,4DAA0E;AAE1E,2EAA8E;AAC9E,qCAAiE;AACjE,kCAAkC;AAClC,+BAAqC;AAIrC,+CAAqL;AAErL;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,QAAkB,EAAE,OAA8F,EAAE,eAAe,GAAG,eAAe;IACjL,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;QACpB,OAAO,iBAAI,CAAC;KACb;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAClD,wHAAwH;IACxH,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,gBAAgB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC;IACnI,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAA+B,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CACpG,CAAC,WAAW,EAAE,OAAO,OAAO,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpG,IAAI,OAAO,EAAE,gBAAgB,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;QACtF,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;KACxE;IAED,MAAM,mBAAmB,GAAG,CAAC,WAAmB,EAAE,EAAE;QAClD,IAAI,YAAiC,CAAC;QACtC,KAAK,MAAM,gBAAgB,IAAI,IAAI,GAAG,CAAC,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC,EAAE;YACjE,IAAI;gBACF,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC,CAAC;gBACxH,IAAI,OAA2B,CAAC;gBAChC,IAAI,OAAO,EAAE,cAAc,KAAK,iCAAkB,CAAC,GAAG,EAAE;oBACtD,OAAO,GAAG,qBAAqB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;iBAC9D;qBAAM,IAAI,OAAO,EAAE,cAAc,KAAK,iCAAkB,CAAC,IAAI,EAAE;oBAC9D,OAAO,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;iBAC/D;qBAAM;oBACL,OAAO,GAAG,qBAAqB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;iBAC3D;gBACD,IAAI,YAAY,IAAI,OAAO,KAAK,YAAY,EAAE;oBAC5C,+GAA+G;oBAC/G,OAAO;iBACR;gBACD,YAAY,GAAG,OAAO,CAAC;aACxB;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO;aACR;SACF;QACD,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,WAAmB,EAAE,OAAyB,EAAE,EAAE;QACxE,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;YAChE,OAAO,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;SAC7C;QAAC,MAAM;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,WAAW,EAAE,CAAC,CAAC;YAC1D,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAA2B,EAAE,EAAE;QACjD,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,IAAI,EAAE,CAAC;QACtE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAsB,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,KAAK,CAAgB,EAAE,EAAE;YAC3G,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE;gBACtB,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACzB;YACD,OAAO,UAAU,CAAC;QACpB,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,cAAc,GAAG,IAAA,yBAAiB,GAAE,CAAC;IAC3C,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACnJ,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;QAChC,OAAO,iBAAI,CAAC;KACb;IACD,OAAO,IAAA,kBAAK,EAAC;QACX,8BAA8B;QAC9B,CAAC,IAAI,EAAE,EAAE;YACP,MAAM,gBAAgB,GAAG,CAAC,WAAgB,EAAE,OAAgE,EAAE,EAAE;gBAC9G,WAAW,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC3C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3H,SAAS,CAAC;YACd,CAAC,CAAC;YACF,KAAK,MAAM,QAAQ,IAAI,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,EAAE;gBACnE,MAAM,WAAW,GAAgB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAgB,CAAC;gBACxE,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;oBAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC;oBAClD,IAAI,OAAO,EAAE,cAAc,KAAK,iCAAkB,CAAC,GAAG,EAAE;wBACtD,WAAW,CAAC,eAAe,GAAG,EAAC,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,CAAC;qBACxF;yBAAM,IAAI,OAAO,EAAE,cAAc,KAAK,iCAAkB,CAAC,IAAI,EAAE;wBAC9D,WAAW,CAAC,gBAAgB,GAAG,EAAC,GAAG,WAAW,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,CAAC;qBAC1F;yBAAM;wBACL,WAAW,CAAC,YAAY,GAAG,EAAC,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,CAAC;qBAClF;gBACH,CAAC,CAAC,CAAC;gBACF,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACrF,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;aAChE;QACH,CAAC;QACD,cAAc;QACd,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACtB,IAAI,OAAO,EAAE,qBAAqB,EAAE;gBAClC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;wHACiD,CAAC,CAAC;gBAClH,OAAO,iBAAI,CAAC;aACb;YAED,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAChE,IAAA,mBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;gBAC/E,IAAA,uBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7E,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAsB,CAAC;gBACzC,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,KAAK;aACN,CAAC,CAAC,CAAC;YACX,MAAM,IAAA,oBAAa,EAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAEvD,MAAM,aAAa,GAAG,iBAAiB;iBACpC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAC,WAAW,EAAE,eAAe,EAAE,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,EAAC,CAAC,CAAC;iBAC5F,MAAM,CAAC,CAAC,EAAC,WAAW,EAAE,eAAe,EAAC,EAAE,EAAE;gBACzC,IAAI,CAAC,eAAe,EAAE;oBACpB,OAAO,CAAC,MAAM,CAAC,IAAI,CACjB,mCAAmC,WAAW,2BAA2B,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB,GAAI,QAAQ,CAAC,WAAW,CAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBAChL;gBACD,OAAO,CAAC,CAAC,eAAe,CAAC;YAC3B,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,EAAC,WAAW,EAAE,eAAe,EAAC,EAAE,EAAE,CAAC,IAAA,8BAAiB,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,eAAgB,CAAC,CAAC,CAAC,CAAC;YACnH,OAAO,IAAA,kBAAK,EAAC,aAAa,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AA1HD,sCA0HC;AAED;;;;;;;;GAQG;AACH,SAAgB,2BAA2B,CAAC,QAAkB,EAAE,eAAuB,EAAE,OAA2B,iCAAkB,CAAC,OAAO,EAC5I,OAA4B,EAAE,iBAA0B;IACxD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;QACpB,OAAO,iBAAI,CAAC;KACb;IACD,MAAM,YAAY,GAAqB,IAAA,6BAAqB,EAC1D,IAAA,2CAAmC,EAAC,QAAQ,EAAE,eAAe,CAAC,EAC9D,IAAI,CACL,CAAC;IACF,OAAO,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;QACvD,GAAG,OAAO;QACV,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE,CAAC,OAAO,CAAC;QACjD,iBAAiB;QACjB,cAAc,EAAE,IAAI;QACpB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC3C,CAAC,CAAC;AACL,CAAC;AAjBD,kEAiBC;AAED;;;;;GAKG;AACH,SAAgB,mCAAmC,CAAC,WAAwB,EAAE,eAAwB;IACpG,OAAO,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YACrB,OAAO,IAAI,CAAC;SACb;QACD,MAAM,SAAS,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACzD,OAAO,IAAA,wBAAgB,EAAC,IAAI,EAAE,IAAA,oCAA4B,EAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,CAAC;IAC5G,CAAC,CAAC;AACJ,CAAC;AARD,kFAQC;AAED;;;;;GAKG;AACH,SAAgB,4BAA4B,CAAC,uBAA8D,EAAE,eAAwB;IACnI,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACzD,SAAS,CAAC,UAAU,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,EAAE;YACjF,SAAS,CAAC,UAAW,CAAC,aAAa,CAAC,GAAG;gBACrC,GAAG,SAAS,CAAC,UAAW,CAAC,aAAa,CAAC;gBACvC,GAAG,aAAa;aACjB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACpD,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,EAAE;gBACjF,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,EAAE;oBACvC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG;wBAClC,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;wBACpC,GAAG,aAAa;qBACjB,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAA,wBAAgB,EAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC5D,CAAC,CAAC;AACJ,CAAC;AAtBD,oEAsBC"}
|