@angular/cli 22.1.0-next.1 → 22.1.0-next.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/cli",
3
- "version": "22.1.0-next.1",
3
+ "version": "22.1.0-next.3",
4
4
  "description": "CLI tool for Angular",
5
5
  "main": "lib/cli/index.js",
6
6
  "bin": {
@@ -15,33 +15,33 @@
15
15
  "sdk"
16
16
  ],
17
17
  "dependencies": {
18
- "@angular-devkit/architect": "0.2201.0-next.1",
19
- "@angular-devkit/core": "22.1.0-next.1",
20
- "@angular-devkit/schematics": "22.1.0-next.1",
18
+ "@angular-devkit/architect": "0.2201.0-next.3",
19
+ "@angular-devkit/core": "22.1.0-next.3",
20
+ "@angular-devkit/schematics": "22.1.0-next.3",
21
21
  "@inquirer/prompts": "8.5.2",
22
22
  "@listr2/prompt-adapter-inquirer": "4.2.4",
23
23
  "@modelcontextprotocol/sdk": "1.29.0",
24
- "@schematics/angular": "22.1.0-next.1",
25
- "algoliasearch": "5.55.0",
24
+ "@schematics/angular": "22.1.0-next.3",
25
+ "algoliasearch": "5.55.1",
26
26
  "jsonc-parser": "3.3.1",
27
27
  "listr2": "10.2.1",
28
28
  "npm-package-arg": "14.0.0",
29
29
  "parse5-html-rewriting-stream": "8.0.1",
30
- "semver": "7.8.4",
30
+ "semver": "7.8.5",
31
31
  "yargs": "18.0.0",
32
32
  "zod": "4.4.3"
33
33
  },
34
34
  "ng-update": {
35
35
  "migrations": "@schematics/angular/migrations/migration-collection.json",
36
36
  "packageGroup": {
37
- "@angular/cli": "22.1.0-next.1",
38
- "@angular/build": "22.1.0-next.1",
39
- "@angular/ssr": "22.1.0-next.1",
40
- "@angular-devkit/architect": "0.2201.0-next.1",
41
- "@angular-devkit/build-angular": "22.1.0-next.1",
42
- "@angular-devkit/build-webpack": "0.2201.0-next.1",
43
- "@angular-devkit/core": "22.1.0-next.1",
44
- "@angular-devkit/schematics": "22.1.0-next.1"
37
+ "@angular/cli": "22.1.0-next.3",
38
+ "@angular/build": "22.1.0-next.3",
39
+ "@angular/ssr": "22.1.0-next.3",
40
+ "@angular-devkit/architect": "0.2201.0-next.3",
41
+ "@angular-devkit/build-angular": "22.1.0-next.3",
42
+ "@angular-devkit/build-webpack": "0.2201.0-next.3",
43
+ "@angular-devkit/core": "22.1.0-next.3",
44
+ "@angular-devkit/schematics": "22.1.0-next.3"
45
45
  }
46
46
  },
47
47
  "repository": {
@@ -49,6 +49,7 @@ const helpers_1 = require("yargs/helpers");
49
49
  const analytics_1 = require("../analytics/analytics");
50
50
  const analytics_collector_1 = require("../analytics/analytics-collector");
51
51
  const analytics_parameters_1 = require("../analytics/analytics-parameters");
52
+ const package_managers_1 = require("../package-managers");
52
53
  const completion_1 = require("../utilities/completion");
53
54
  const memoize_1 = require("../utilities/memoize");
54
55
  const definitions_1 = require("./definitions");
@@ -95,13 +96,14 @@ let CommandModule = (() => {
95
96
  }
96
97
  async handler(args) {
97
98
  const { _, $0, ...options } = args;
99
+ const { logger } = this.context;
98
100
  // Camelize options as yargs will return the object in kebab-case when camel casing is disabled.
99
101
  const camelCasedOptions = {};
100
102
  for (const [key, value] of Object.entries(options)) {
101
103
  camelCasedOptions[helpers_1.Parser.camelCase(key)] = value;
102
104
  }
103
105
  // Set up autocompletion if appropriate.
104
- const autocompletionExitCode = await (0, completion_1.considerSettingUpAutocompletion)(this.commandName, this.context.logger);
106
+ const autocompletionExitCode = await (0, completion_1.considerSettingUpAutocompletion)(this.commandName, logger);
105
107
  if (autocompletionExitCode !== undefined) {
106
108
  process.exitCode = autocompletionExitCode;
107
109
  return;
@@ -119,7 +121,12 @@ let CommandModule = (() => {
119
121
  }
120
122
  catch (e) {
121
123
  if (e instanceof core_1.schema.SchemaValidationException) {
122
- this.context.logger.fatal(`Error: ${e.message}`);
124
+ logger.fatal(`Error: ${e.message}`);
125
+ exitCode = 1;
126
+ }
127
+ else if (e instanceof package_managers_1.PackageManagerError) {
128
+ const output = e.stderr || e.stdout;
129
+ logger.fatal(`Error: Package installation failed: ${e.message}${output ? `\nOutput: ${output}` : ''}`);
123
130
  exitCode = 1;
124
131
  }
125
132
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"command-module.js","sourceRoot":"","sources":["command-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-module.js","sourceRoot":"","sources":["command-module.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,6 @@ const npm_package_arg_1 = __importDefault(require("npm-package-arg"));
53
53
  const semver_1 = __importStar(require("semver"));
54
54
  const command_module_1 = require("../../command-builder/command-module");
55
55
  const schematics_command_module_1 = require("../../command-builder/schematics-command-module");
56
- const package_managers_1 = require("../../package-managers");
57
56
  const error_1 = require("../../utilities/error");
58
57
  const tty_1 = require("../../utilities/tty");
59
58
  const version_1 = require("../../utilities/version");
@@ -514,33 +513,22 @@ class AddCommandModule extends schematics_command_module_1.SchematicsCommandModu
514
513
  const { packageManager } = this.context;
515
514
  // Only show if installation will actually occur
516
515
  task.title = 'Installing package';
517
- try {
518
- if (context.savePackage === false) {
519
- task.title += ' in temporary location';
520
- // Temporary packages are located in a different directory
521
- // Hence we need to resolve them using the temp path
522
- const { workingDirectory } = await packageManager.acquireTempPackage(packageIdentifier.toString(), {
523
- registry,
524
- });
525
- const tempRequire = (0, node_module_1.createRequire)(workingDirectory + '/');
526
- (0, node_assert_1.default)(context.collectionName, 'Collection name should always be available');
527
- const resolvedCollectionPath = tempRequire.resolve((0, node_path_1.join)(context.collectionName, 'package.json'));
528
- context.collectionName = (0, node_path_1.dirname)(resolvedCollectionPath);
529
- }
530
- else {
531
- await packageManager.add(packageIdentifier.toString(), 'none', savePackage === 'devDependencies', false, true, {
532
- registry,
533
- });
534
- }
516
+ if (context.savePackage === false) {
517
+ task.title += ' in temporary location';
518
+ // Temporary packages are located in a different directory
519
+ // Hence we need to resolve them using the temp path
520
+ const { workingDirectory } = await packageManager.acquireTempPackage(packageIdentifier.toString(), {
521
+ registry,
522
+ });
523
+ const tempRequire = (0, node_module_1.createRequire)(workingDirectory + '/');
524
+ (0, node_assert_1.default)(context.collectionName, 'Collection name should always be available');
525
+ const resolvedCollectionPath = tempRequire.resolve((0, node_path_1.join)(context.collectionName, 'package.json'));
526
+ context.collectionName = (0, node_path_1.dirname)(resolvedCollectionPath);
535
527
  }
536
- catch (e) {
537
- if (e instanceof package_managers_1.PackageManagerError) {
538
- const output = e.stderr || e.stdout;
539
- if (output) {
540
- throw new CommandError(`Package installation failed: ${e.message}\nOutput: ${output}`);
541
- }
542
- }
543
- throw e;
528
+ else {
529
+ await packageManager.add(packageIdentifier.toString(), 'none', savePackage === 'devDependencies', false, true, {
530
+ registry,
531
+ });
544
532
  }
545
533
  }
546
534
  async isProjectVersionValid(packageIdentifier) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mCAAgF;AAChF,8DAAiC;AACjC,qCAAqC;AACrC,gEAAkC;AAClC,6CAA4C;AAC5C,yCAAoD;AACpD,sEAAkC;AAClC,iDAA0F;AAE1F,yEAK8C;AAC9C,+FAGyD;AACzD,6DAKgC;AAChC,iDAAsD;AACtD,6CAA4C;AAC5C,qDAAkD;AAElD,MAAM,YAAa,SAAQ,KAAK;CAAG;AA2BnC;;;;GAIG;AACH,MAAM,wBAAwB,GAAmC;IAC/D,gIAAgI;IAChI,mBAAmB,EAAE,SAAS;IAC9B,kFAAkF;IAClF,mBAAmB,EAAE,KAAK;CAC3B,CAAC;AAEF,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEzC;;;GAGG;AACH,MAAM,mBAAmB,GAAG;IAC1B,WAAW,EAAE;QACX,UAAU,EAAE,qBAAqB;QACjC,IAAI,EAAE,UAAU;KACjB;IACD,4BAA4B,EAAE;QAC5B,UAAU,EAAE,qBAAqB;QACjC,IAAI,EAAE,gBAAgB;KACvB;IACD,6BAA6B,EAAE;QAC7B,UAAU,EAAE,qBAAqB;QACjC,IAAI,EAAE,gBAAgB;KACvB;IACD,yBAAyB,EAAE;QACzB,UAAU,EAAE,qBAAqB;QACjC,IAAI,EAAE,gBAAgB;KACvB;CACO,CAAC;AAEX,MAAqB,gBACnB,SAAQ,mDAAuB;IAG/B,OAAO,GAAG,kBAAkB,CAAC;IAC7B,QAAQ,GAAG,uDAAuD,CAAC;IACnE,mBAAmB,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC1C,sBAAsB,GAAG,IAAI,CAAC;IAChC,aAAa,GAAG,QAAQ,CAAC;IAClC,WAAW,GAAG,IAAA,2BAAa,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAC7D,oBAAoB,GAAG,IAAI,GAAG,EAAyB,CAAC;IACxD,kBAAkB,GAA2B,IAAI,CAAC;IAEzC,KAAK,CAAC,OAAO,CAAC,IAAU;QAC/B,MAAM,UAAU,GAAG,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC3C,UAAU,CAAC,YAAY,EAAE;YACxB,WAAW,EAAE,0BAA0B;YACvC,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,IAAI;SACnB,CAAC;aACD,MAAM,CAAC,UAAU,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;aAC/E,MAAM,CAAC,SAAS,EAAE;YACjB,WAAW,EAAE,wEAAwE;YACrF,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf,CAAC;aACD,MAAM,CAAC,mBAAmB,EAAE;YAC3B,WAAW,EACT,iFAAiF;gBACjF,4DAA4D;YAC9D,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf,CAAC;aACD,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACtB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3D,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,IAAI,mCAAkB,CAAC,wCAAwC,CAAC,CAAC;QACzE,CAAC,CAAC;YACF,uGAAuG;YACvG,uEAAuE;YACvE,mDAAmD;aAClD,MAAM,CAAC,KAAK,CAAC,CAAC;QAEjB,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAChD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;QAEpE,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAEzF,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0DAA0D;YAC1D,sDAAsD;YACtD,uDAAuD;QACzD,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAA+C;QACvD,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;QAEjD,IAAI,iBAAiB,CAAC;QACtB,IAAI,CAAC;YACH,iBAAiB,GAAG,IAAA,yBAAG,EAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAExB,OAAO,CAAC,CAAC;QACX,CAAC;QAED,IACE,iBAAiB,CAAC,IAAI;YACtB,iBAAiB,CAAC,QAAQ;YAC1B,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAC/C,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;YACzE,IAAI,YAAY,EAAE,CAAC;gBACjB,0CAA0C;gBAC1C,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBAEhE,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG;YAClB,iBAAiB;YACjB,cAAc,EAAE,iBAAiB,CAAC,IAAI,KAAK,SAAS;YACpD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;YAClD,0BAA0B,EAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC;YACtE,MAAM,EAAE,OAAO,CAAC,MAAM;SACE,CAAC;QAE3B,MAAM,KAAK,GAAG,IAAI,cAAK,CACrB;YACE;gBACE,KAAK,EAAE,6BAA6B;gBACpC,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CACvB,CAAC,IAAI,CAAC,MAAM,GAAG,0BAA0B,cAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzF,eAAe,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;aAC5C;YACD;gBACE,KAAK,EAAE,0CAA0C;gBACjD,OAAO,EAAE,iBAAiB,CAAC,IAAI,KAAK,OAAO,IAAI,iBAAiB,CAAC,OAAO,KAAK,GAAG;gBAChF,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gCAAgC,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;gBACtF,eAAe,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;aAC5C;YACD;gBACE,KAAK,EAAE,6BAA6B;gBACpC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;gBACzE,eAAe,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;aAC5C;YACD;gBACE,KAAK,EAAE,yBAAyB;gBAChC,OAAO,EAAE,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC;gBACpE,eAAe,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;aAC5C;YACD;gBACE,KAAK,EAAE,oBAAoB;gBAC3B,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;oBAChB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;wBACnB,OAAO,wDAAwD,cAAK,CAAC,IAAI,CACvE,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACrC,GAAG,CAAC;oBACP,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;gBACxE,eAAe,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE;aACzC;YACD,6DAA6D;SAC9D,EACD;QACE,aAAa;SACd,CACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5C,IAAA,qBAAM,EAAC,MAAM,CAAC,cAAc,EAAE,4CAA4C,CAAC,CAAC;YAE5E,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC7C,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBACvE,IAAI,eAAe,IAAI,IAAA,oBAAU,EAAC,eAAe,CAAC,EAAE,CAAC;oBACnD,IAAI,CAAC;wBACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,kBAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;wBAC9E,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;4BAC7B,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;4BAC5B,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,KAAK,EAAE,CAAC;gCAC5C,aAAa,GAAG,IAAI,CAAC;4BACvB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAA,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,uFAAuF;YACvF,IAAI,MAAM,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC3E,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAE3E,oFAAoF;gBACpF,kDAAkD;gBAClD,oFAAoF;gBACpF,IAAI,CAAC;oBACH,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;gBACvD,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC1B,sFAAsF;gBACtF,MAAM,WAAW,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC;gBAClD,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,gBAAgB,GACpB,mBAAmB,CAAC,WAA+C,CAAC,CAAC;oBACvE,IAAI,gBAAgB,EAAE,CAAC;wBACrB,MAAM,CAAC,IAAI,CACT,OAAO,cAAK,CAAC,IAAI,CAAC,WAAW,CAAC,+CAA+C,CAC9E,CAAC;wBACF,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;wBAEpF,OAAO,IAAI,CAAC,gBAAgB,CAAC;4BAC3B,GAAG,OAAO;4BACV,UAAU,EAAE,gBAAgB,CAAC,UAAU;4BACvC,aAAa,EAAE,gBAAgB,CAAC,IAAI;4BACpC,OAAO,EAAE,WAAW;yBACrB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,IAAI,OAAO,GAAG,OAAO,CAAC,MAAM;oBAC1B,CAAC,CAAC,0FAA0F;oBAC5F,CAAC,CAAC,sHAAsH,CAAC;gBAE3H,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACpB,OAAO,IAAI,oEAAoE,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACnG,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAErB,OAAO;YACT,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBAEtE,OAAO;YACT,CAAC;YAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;gBACpD,GAAG,OAAO;gBACV,UAAU,EAAE,MAAM,CAAC,cAAc;aAClC,CAAC,CAAC;YAEH,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,YAAY,EAAE,CAAC;gBAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBAExB,OAAO,CAAC,CAAC;YACX,CAAC;YAED,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,OAA8B,EAC9B,IAA2B,EAC3B,OAAgC;QAEhC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACtC,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QACtC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACxC,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC;QAE3C,IAAA,qBAAM,EAAC,WAAW,EAAE,yDAAyD,CAAC,CAAC;QAE/E,MAAM,gBAAgB,GAAa,EAAE,CAAC;QAEtC,qDAAqD;QACrD,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,GAAG,WAAW,SAAS,EAAE;gBAC/E,QAAQ;aACT,CAAC,CAAC;YAEH,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;gBACxE,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,CAAC,iBAAiB,GAAG,yBAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;oBACrF,IAAI,CAAC,MAAM,GAAG,qCAAqC,cAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;oBAEzF,OAAO;gBACT,CAAC;gBACD,gBAAgB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,YAAY,CAAC,qDAAqD,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC,MAAM;YACT,wFAAwF,CAAC;QAE3F,IAAI,eAAe,CAAC;QACpB,IAAI,CAAC;YACH,eAAe,GAAG,MAAM,cAAc,CAAC,mBAAmB,CAAC,WAAW,EAAE;gBACtE,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,YAAY,CAAC,qDAAqD,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,YAAY,CAAC,mDAAmD,CAAC,CAAC;QAC9E,CAAC;QAED,8EAA8E;QAC9E,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAA,mBAAU,EAAC,iBAAO,CAAC,IAAI,CAAC,IAAI,iBAAO,CAAC,IAAI,KAAK,OAAO,CAAC;QAChF,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;QAExF,gFAAgF;QAChF,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;QAChE,IAAI,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,aAAa,EAAE;YACpE,QAAQ;YACR,OAAO;YACP,gBAAgB;SACjB,CAAC,CAAC;QAEH,kGAAkG;QAClG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACnF,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,EAAE;gBACpE,QAAQ;gBACR,OAAO;gBACP,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,OAAO,GAAG,oCAAoC,CAAC;YACnD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO;oBACL,8DAA8D;wBAC9D,gEAAgE;wBAChE,gBAAgB;6BACb,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC;6BAC9D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;6BACtB,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,GAAG,qCAAqC,cAAK,CAAC,IAAI,CAC3D,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACrC,GAAG,CAAC;QACP,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,OAA8B,EAC9B,QAAkB,EAClB,OAIC;QAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QACtC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;QACxD,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC;QAC3C,IAAA,qBAAM,EAAC,WAAW,EAAE,+BAA+B,CAAC,CAAC;QAErD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,GAAG,WAAW,IAAI,OAAO,EAAE,EAAE;gBAC7E,QAAQ;aACT,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;YAClE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,OAAO,IAAI,gBAAgB,CAAC,MAAM,GAAG,8BAA8B,EAAE,CAAC;oBACxE,gBAAgB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;gBACtC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,OAAO,CAAC,iBAAiB,GAAG,yBAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAEzE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB,CAAC,eAAgC,EAAE,gBAAyB;QAC/E,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE7D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YAC1E,sCAAsC;YACtC,IAAI,aAAa,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;gBAC/C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,6EAA6E;YAC7E,IAAI,CAAC,gBAAgB,IAAI,IAAA,mBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,qDAAqD;YACrD,IAAI,iBAAiB,IAAI,IAAA,kBAAS,EAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC5F,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,+EAA+E;QAC/E,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAO,EAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,iBAAiB,CAAC,QAAkB;QAClC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;QAChD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,IAAI,gBAAM,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC9C,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAO,EAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,OAA8B,EAC9B,IAA2B,EAC3B,OAAgC;QAEhC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE7B,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE;gBAClF,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,YAAY,CACpB,4CAA4C,OAAO,CAAC,iBAAiB,MAAM,CAAC,CAAC,OAAO,EAAE,CACvF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,YAAY,CACpB,4CAA4C,OAAO,CAAC,iBAAiB,IAAI,CAC1E,CAAC;QACJ,CAAC;QAED,mFAAmF;QACnF,IAAI,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAA,qBAAM,EAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,8CAA8C,CAAC,CAAC;YACvF,OAAO,CAAC,iBAAiB,GAAG,yBAAG,CAAC,OAAO,CACrC,OAAO,CAAC,iBAAiB,CAAC,IAAI;YAC9B,4FAA4F;YAC5F,yDAAyD;YACzD,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,OAAO,CACvD,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC9C,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;QAC/C,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC;QACvC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAErC,IAAI,MAAM,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,MAAM,GAAG,cAAK,CAAC,MAAM,CACxB,gBAAO,CAAC,OAAO;gBACb,2EAA2E,CAC9E,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,OAA8B,EAC9B,IAA2B;QAE3B,IAAI,CAAC,IAAA,WAAK,GAAE,EAAE,CAAC;YACb,IAAI,CAAC,MAAM;gBACT,yEAAyE;oBACzE,6EAA6E,CAAC;YAChF,MAAM,IAAI,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,EAAE,0BAA0B,EAAE,GAAG,wDAAa,iCAAiC,GAAC,CAAC;QACvF,MAAM,EAAE,OAAO,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QACtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE;YAC/E,OAAO,EACL,eAAe,cAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,oCAAoC;gBACnG,4BAA4B;YAC9B,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,WAAmB;QAC1D,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,WAAW,MAAM,CAAC,CAAC;YAEjF,mCAAmC;YACnC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxD,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;oBACjC,OAAO,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;gBACnD,CAAC;gBACD,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;oBACpC,OAAO,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;gBACtD,CAAC;gBAED,MAAM,kBAAE,CAAC,SAAS,CAChB,IAAA,gBAAI,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,EACvC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAChD,CAAC;YACJ,CAAC;YAED,kFAAkF;YAClF,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACtB,4CAA4C,WAAW,KAAK;gBAC1D,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CACtD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,OAA8B,EAC9B,IAA2B,EAC3B,OAAgC;QAEhC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAC7B,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACnD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAExC,gDAAgD;QAChD,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC;QAElC,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,IAAI,wBAAwB,CAAC;gBAEvC,0DAA0D;gBAC1D,oDAAoD;gBACpD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,cAAc,CAAC,kBAAkB,CAClE,iBAAiB,CAAC,QAAQ,EAAE,EAC5B;oBACE,QAAQ;iBACT,CACF,CAAC;gBAEF,MAAM,WAAW,GAAG,IAAA,2BAAa,EAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC;gBAC1D,IAAA,qBAAM,EAAC,OAAO,CAAC,cAAc,EAAE,4CAA4C,CAAC,CAAC;gBAC7E,MAAM,sBAAsB,GAAG,WAAW,CAAC,OAAO,CAChD,IAAA,gBAAI,EAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAC7C,CAAC;gBAEF,OAAO,CAAC,cAAc,GAAG,IAAA,mBAAO,EAAC,sBAAsB,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,CAAC,GAAG,CACtB,iBAAiB,CAAC,QAAQ,EAAE,EAC5B,MAAM,EACN,WAAW,KAAK,iBAAiB,EACjC,KAAK,EACL,IAAI,EACJ;oBACE,QAAQ;iBACT,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,sCAAmB,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC;gBACpC,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,IAAI,YAAY,CAAC,gCAAgC,CAAC,CAAC,OAAO,aAAa,MAAM,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YAED,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,iBAA6B;QAC/D,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,iBAAiB,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IACE,iBAAiB,CAAC,IAAI,KAAK,OAAO;YAClC,iBAAiB,CAAC,SAAS;YAC3B,iBAAiB,CAAC,SAAS,KAAK,GAAG,EACnC,CAAC;YACD,OAAO,IAAA,kBAAS,EAAC,gBAAgB,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,iBAAiB,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,EAAE,GAAG,IAAA,cAAK,EAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,EAAE,GAAG,IAAA,cAAK,EAAC,gBAAgB,CAAC,CAAC;YAEnC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,iBAAiB;QACvB,MAAM,CAAC,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QACxD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,6EAA6E;QAC7E,iEAAiE;QACjE,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAA,yBAAG,EAAC,cAAc,CAAC,CAAC,IAAI,CAAC;YAC7C,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,WAAW,CAAC;YACrB,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,OAAO,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAEO,gBAAgB,CACtB,OAA4E;QAE5E,MAAM,EACJ,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,KAAK,EACL,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,UAAU,EAAE,cAAc,EAC1B,aAAa,EACb,GAAG,gBAAgB,EACpB,GAAG,OAAO,CAAC;QAEZ,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,gBAAgB;YAChB,aAAa,EAAE,aAAa,IAAI,IAAI,CAAC,aAAa;YAClD,cAAc;YACd,gBAAgB,EAAE;gBAChB,WAAW;gBACX,KAAK;gBACL,MAAM;gBACN,QAAQ;gBACR,eAAe,EAAE,QAAQ;aAC1B;SACF,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,IAAY;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,oBAAoB,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CACjC,MAAM,kBAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAC9B,CAAC;gBACrB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAE9D,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,OAAO,GACX,eAAe,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC;YAClF,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAE7C,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE1C,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC;YACH,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAClC,MAAM,kBAAE,CAAC,QAAQ,CAAC,IAAA,gBAAI,EAAC,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CACpC,CAAC;YAErB,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChD,IAAI,SAAS,GAAG,IAAA,mBAAO,EAAC,QAAQ,CAAC,CAAC;oBAElC,mEAAmE;oBACnE,OAAO,SAAS,IAAI,IAAA,oBAAQ,EAAC,SAAS,CAAC,KAAK,cAAc,EAAE,CAAC;wBAC3D,MAAM,eAAe,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,cAAc,CAAC,CAAC;wBACxD,IAAI,IAAA,oBAAU,EAAC,eAAe,CAAC,EAAE,CAAC;4BAChC,OAAO,eAAe,CAAC;wBACzB,CAAC;wBAED,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,SAAS,CAAC,CAAC;wBAClC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACzB,MAAM;wBACR,CAAC;wBACD,SAAS,GAAG,MAAM,CAAC;oBACrB,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;oBACjB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACvB,8BAA8B,IAAI,sBAAsB,CAAC,CAAC,OAAO,EAAE,CACpE,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,QAAyB;QAChE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;YACnF,IAAI,cAAc,CAAC;YACnB,IAAI,CAAC;gBACH,cAAc,GAAG,yBAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,IAAI,oBAAoB,CAAC,CAAC;gBAE9E,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzE,2DAA2D;gBAC3D,sFAAsF;gBACtF,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACpD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,OAAO,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;gBAC5C,IACE,CAAC,IAAA,mBAAU,EAAC,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC;oBACrD,CAAC,IAAA,kBAAS,EAAC,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,EACpD,CAAC;oBACD,OAAO,CACL,YAAY,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,4CAA4C;wBACzF,GAAG,IAAI,IAAI,cAAc,CAAC,OAAO,gBAAgB,OAAO,gBAAgB,CACzE,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,iCAAiC;YACnC,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAE7F,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC;IAC3C,CAAC;CACF;AAryBD,mCAqyBC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.updateCacheConfig = updateCacheConfig;
11
11
  exports.getCacheConfig = getCacheConfig;
12
12
  const core_1 = require("@angular-devkit/core");
13
+ const node_fs_1 = require("node:fs");
13
14
  const node_path_1 = require("node:path");
14
15
  const workspace_schema_1 = require("../../../lib/config/workspace-schema");
15
16
  function updateCacheConfig(workspace, key, value) {
@@ -18,12 +19,49 @@ function updateCacheConfig(workspace, key, value) {
18
19
  cache[key] = value;
19
20
  return workspace.save();
20
21
  }
22
+ function getCacheBasePath(workspaceRoot, cachePathSetting) {
23
+ if ((0, node_path_1.isAbsolute)(cachePathSetting)) {
24
+ return cachePathSetting;
25
+ }
26
+ try {
27
+ // Find the git directory, walking up from workspaceRoot if necessary
28
+ let currentDir = workspaceRoot;
29
+ while (true) {
30
+ const gitPath = (0, node_path_1.join)(currentDir, '.git');
31
+ if ((0, node_fs_1.existsSync)(gitPath)) {
32
+ const stat = (0, node_fs_1.statSync)(gitPath);
33
+ if (stat.isFile()) {
34
+ // Could be a git worktree (or submodule)
35
+ const content = (0, node_fs_1.readFileSync)(gitPath, 'utf8');
36
+ const match = /^gitdir:\s*(.+)$/m.exec(content);
37
+ if (match) {
38
+ const gitdir = (0, node_path_1.resolve)(currentDir, match[1].trim());
39
+ const commondirPath = (0, node_path_1.join)(gitdir, 'commondir');
40
+ if ((0, node_fs_1.existsSync)(commondirPath)) {
41
+ // It's a git worktree
42
+ const commondir = (0, node_fs_1.readFileSync)(commondirPath, 'utf8').trim();
43
+ const commonGitDir = (0, node_path_1.resolve)(gitdir, commondir);
44
+ return (0, node_path_1.resolve)((0, node_path_1.dirname)(commonGitDir), cachePathSetting);
45
+ }
46
+ }
47
+ }
48
+ }
49
+ const parentDir = (0, node_path_1.dirname)(currentDir);
50
+ if (parentDir === currentDir) {
51
+ break;
52
+ }
53
+ currentDir = parentDir;
54
+ }
55
+ }
56
+ catch { }
57
+ return (0, node_path_1.resolve)(workspaceRoot, cachePathSetting);
58
+ }
21
59
  function getCacheConfig(workspace) {
22
60
  if (!workspace) {
23
61
  throw new Error(`Cannot retrieve cache configuration as workspace is not defined.`);
24
62
  }
25
63
  const defaultSettings = {
26
- path: (0, node_path_1.resolve)(workspace.basePath, '.angular/cache'),
64
+ path: getCacheBasePath(workspace.basePath, '.angular/cache'),
27
65
  environment: workspace_schema_1.Environment.Local,
28
66
  enabled: true,
29
67
  };
@@ -35,11 +73,11 @@ function getCacheConfig(workspace) {
35
73
  if (!(0, core_1.isJsonObject)(cacheSettings)) {
36
74
  return defaultSettings;
37
75
  }
38
- const { path = defaultSettings.path, environment = defaultSettings.environment, enabled = defaultSettings.enabled,
76
+ const { path = '.angular/cache', environment = defaultSettings.environment, enabled = defaultSettings.enabled,
39
77
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
78
  } = cacheSettings;
41
79
  return {
42
- path: (0, node_path_1.resolve)(workspace.basePath, path),
80
+ path: getCacheBasePath(workspace.basePath, path),
43
81
  environment,
44
82
  enabled,
45
83
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","sourceRoot":"","sources":["utilities.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAOH,8CAUC;AAED,wCAiCC;AAlDD,+CAAoD;AACpD,yCAAoC;AACpC,2EAA0E;AAG1E,SAAgB,iBAAiB,CAC/B,SAA2B,EAC3B,GAAM,EACN,KAAe;IAEf,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAA4C,CAAC;IAC5F,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACpC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAEnB,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAgB,cAAc,CAAC,SAAuC;IACpE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,eAAe,GAAoB;QACvC,IAAI,EAAE,IAAA,mBAAO,EAAC,SAAS,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACnD,WAAW,EAAE,8BAAW,CAAC,KAAK;QAC9B,OAAO,EAAE,IAAI;KACd,CAAC;IAEF,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU,IAAI,CAAC,IAAA,mBAAY,EAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAA,mBAAY,EAAC,aAAa,CAAC,EAAE,CAAC;QACjC,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,EACJ,IAAI,GAAG,eAAe,CAAC,IAAI,EAC3B,WAAW,GAAG,eAAe,CAAC,WAAW,EACzC,OAAO,GAAG,eAAe,CAAC,OAAO;IACjC,8DAA8D;MAC/D,GAAG,aAAoC,CAAC;IAEzC,OAAO;QACL,IAAI,EAAE,IAAA,mBAAO,EAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC;QACvC,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["utilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ # Comprehensive Architecture Review & Analysis: Angular CLI MCP Server
2
+
3
+ The Model Context Protocol (MCP) server implementation within the Angular CLI (`packages/angular/cli/src/commands/mcp`) represents a state-of-the-art bridge between AI assistants (LLMs/agents) and the Angular development ecosystem.
4
+
5
+ Rather than forcing AI assistants to rely on generic, error-prone shell execution tools (`run_shell_command`), the Angular CLI MCP server exposes a highly structured, secure, and context-aware suite of tools. It encapsulates complex Angular workflows—such as monorepo project discovery, background dev server management, headless testing, AST-based migrations, and RAG-assisted documentation lookups—into clean, programmatic APIs.
6
+
7
+ Below is a detailed architectural review and analysis of the implementation, broken down by core infrastructure, tool subsystems, architectural strengths, and potential areas for future enhancement.
8
+
9
+ ---
10
+
11
+ ## 1. High-Level Architecture & Security Model
12
+
13
+ ```
14
+ ┌──────────────────────────────────────────────────────────────────────────┐
15
+ │ McpCommandModule (cli.ts) │
16
+ │ Handles Yargs CLI flags (--read-only, --local-only, --exp) │
17
+ └────────────────────────────────────┬─────────────────────────────────────┘
18
+
19
+ ┌──────────────────────────────────────────────────────────────────────────┐
20
+ │ McpServer Initialization │
21
+ │ Configures Capabilities (tools, resources, roots, sampling, logging) │
22
+ └────────────────────────────────────┬─────────────────────────────────────┘
23
+
24
+ ┌──────────────────────────────────────────────────────────────────────────┐
25
+ │ Root-Restricted Host (host.ts) │
26
+ │ Sandboxes fs/child_process to client roots; resolves local ng binary │
27
+ └────────────────────────────────────┬─────────────────────────────────────┘
28
+
29
+ ┌──────────────────────────────────────────────────────────────────────────┐
30
+ │ Tool Registry & Context (tool-registry.ts) │
31
+ │ Assembles Stable & Experimental tools; injects Host & Devserver Map │
32
+ └────────────────────────────────────┬─────────────────────────────────────┘
33
+
34
+ ┌──────────────────────────────────────────────────────────────────────────┐
35
+ │ Specialized Tool Implementations │
36
+ │ [Projects] [Devserver] [Build/Test/E2E] [Doc Search] [Migrations] │
37
+ └──────────────────────────────────────────────────────────────────────────┘
38
+ ```
39
+
40
+ ### Command Module & Lifecycle (`cli.ts`, `mcp-server.ts`)
41
+ * **Interactive vs. Programmatic Execution**: The CLI command checks `isTTY()`. If a user runs `ng mcp` directly in an interactive terminal, it gracefully outputs a JSON configuration snippet demonstrating how to configure an MCP client (e.g., Claude Desktop, Cursor) to attach the server via `npx -y @angular/cli mcp`. When run in a non-TTY environment, it establishes an MCP `StdioServerTransport`.
42
+ * **Granular Security Flags**: It supports `--read-only` and `--local-only` flags. `assembleToolDeclarations` filters registered tools dynamically based on declarative tool properties (`tool.isReadOnly`, `tool.isLocalOnly`).
43
+ * **Server Instructions**: The server initializes with robust, overarching system instructions (`instructions` capability) that orient the LLM on mandatory workflows, such as discovering project structure first (`list_projects`) and fetching version-specific coding standards (`get_best_practices`).
44
+
45
+ ### Sandboxed Host Abstraction (`host.ts`)
46
+ To ensure safe execution within arbitrary client environments, all operating system and filesystem interactions are routed through a concrete `Host` interface (`LocalWorkspaceHost`), wrapped by `createRootRestrictedHost`.
47
+ * **Dynamic Root Restriction**: The server negotiates the `roots` capability with the MCP client. It resolves allowed workspace roots via `server.server.listRoots()` and actively listens for `RootsListChangedNotificationSchema` to dynamically update the sandboxed boundaries.
48
+ * **Path Traversal Prevention**: Every filesystem operation (`stat`, `existsSync`, `readFile`, `glob`) and process execution (`executeNgCommand`, `startNgProcess`) is validated against the allowed roots. It uses `realpathSync` to resolve symlinks and strictly rejects any relative path traversal (`..`) or absolute paths escaping the root hierarchy.
49
+ * **Smart Local Binary Resolution**: `resolveNgCommand` uses `createRequire` from the target working directory's `package.json` to locate `@angular/cli/package.json` and resolve the local `ng.js` binary executed via `process.execPath`. This ensures that background builds and tests always run using the exact Angular CLI version installed in the workspace rather than relying on a potentially mismatched global `ng` binary.
50
+
51
+ ---
52
+
53
+ ## 2. Deep Dive into Tool Subsystems
54
+
55
+ ### A. Project & Workspace Discovery (`projects.ts`)
56
+ The `list_projects` tool serves as the foundational entry point for the AI assistant to understand the workspace layout.
57
+ * **High-Performance BFS Traversal**: Instead of naive recursive directory searching (which risks call-stack limits or memory bloat), `findAngularJsonFiles` implements an iterative, queue-based Breadth-First Search with a strict concurrency limit (`CONCURRENCY_LIMIT = 50`) to prevent file descriptor exhaustion (`EMFILE` errors).
58
+ * **Symlink & Loop Defense**: It tracks visited directory inodes (`seenInodes`) to prevent infinite loops in complex symlinked monorepos while validating that symlink targets remain within allowed MCP roots. It explicitly skips irrelevant heavy directories (`node_modules`, `dist`, `out`, `coverage`).
59
+ * **Intelligent Project Heuristics**:
60
+ * **Test Framework Detection**: `getUnitTestFramework` inspects target builders. It distinguishes between modern `@angular/build:unit-test` (parsing the `runner` option for `karma` vs. `vitest`) and older builders (`karma`, `jest`, `web-test-runner`).
61
+ * **Style Language Heuristics**: `getProjectStyleLanguage` evaluates project-level schematics, workspace-level schematics, build target `inlineStyleLanguage`, explicit `styles` arrays, and finally probes the filesystem for `styles.(scss|sass|less|css)`.
62
+ * **Framework Versioning**: `findAngularCoreVersion` traverses upwards looking for `@angular/core` in `package.json` to determine the major framework version, caching intermediate paths to optimize monorepo scanning.
63
+
64
+ ### B. Development Server Management (`devserver.ts`, `devserver-*.ts`)
65
+ Managing long-running background processes over a request-response protocol like MCP requires sophisticated state handling.
66
+ * **Stateful Process Map**: `tool-registry.ts` injects a shared `devservers` Map into the tool context, tracking active `LocalDevserver` instances keyed by `workspacePath:projectName`.
67
+ * **Stream Parsing & Build Tracking**: `LocalDevserver` spawns `ng serve` as a background child process. It attaches listeners to `stdout`/`stderr` to monitor build lifecycle strings (`BUILD_SUCCEEDED_MESSAGE`, `BUILD_FAILED_MESSAGE`, `CHANGES_DETECTED_START_MESSAGE`). This allows the server to maintain an accurate `isBuilding()` state and cache the latest build logs.
68
+ * **Synchronous Rebuild Verification (`devserver.wait_for_build`)**: LLMs often struggle with asynchronous file watchers. This tool allows the AI to edit a file and immediately call `devserver.wait_for_build`. The tool polls `devserver.isBuilding()` (with a `WATCH_DELAY` of 1000ms and configurable timeout), blocking until the live rebuild completes and returning the fresh build status and logs.
69
+ * **Automated Port Assignment**: If a port is not provided, `host.getAvailablePort()` spins up a temporary TCP server on port `0` to let the OS assign a guaranteed free port, closing it immediately before launching `ng serve`.
70
+
71
+ ### C. Build, Test, and E2E Runners (`build.ts`, `test.ts`, `e2e.ts`)
72
+ These one-off execution tools wrap `ng build`, `ng test`, and `ng e2e` with smart environment adaptations:
73
+ * **Build Tool**: Defaults to the `development` configuration (unlike standard `ng build` which defaults to `production`), ensuring faster feedback loops for the AI. It parses the execution logs for `Output location: (.*)` to return the exact artifact path.
74
+ * **Test Tool**: Automatically configures headless execution to ensure non-interactive compatibility. If the builder is `@angular/build:unit-test` (Vitest), it appends `--headless true`. For Karma-based runners, it appends `--browsers ChromeHeadless`. It forces `--watch false` and supports granular `--filter` execution.
75
+ * **E2E Tool**: Includes pre-execution verification, checking the `angular.json` AST/model to ensure an `e2e` target actually exists before attempting execution, providing informative error messages if setup is required.
76
+
77
+ ### D. Documentation Search (`doc-search.ts`)
78
+ The `search_documentation` tool provides RAG capabilities by querying official `angular.dev` documentation via Algolia.
79
+ * **Secure API Key Decryption**: To prevent scraping or abuse of the Algolia search key, the key is stored in an encrypted form (`constants.ts`) and decrypted at runtime using `node:crypto` `createDecipheriv` (AES-256-GCM).
80
+ * **Version Clamping & Safe Harbor**: It aligns queries with the user's local Angular major version. It clamps minimum versions to v17 (`MIN_SUPPORTED_DOCS_VERSION`). To prevent race conditions when a new major Angular version is released before its Algolia index is fully published, it implements a fallback to a hardcoded stable safe harbor (`LATEST_KNOWN_DOCS_VERSION = 20`).
81
+ * **Stream-Based HTML Rewriting**: When `includeTopContent` is requested, it fetches the top hit URL (strictly validating the hostname is `angular.dev` or `*.angular.dev`). To avoid overwhelming the LLM's context window with bloated HTML (navigation, sidebars, footers), it uses `parse5-html-rewriting-stream` to stream and extract *only* the inner text of the `<main>` DOM element.
82
+
83
+ ### E. AI Tutor & Best Practices (`ai-tutor.ts`, `best-practices.ts`, `BUILD.bazel`)
84
+ * **Prompt & Persona Injection**: The `ai_tutor` tool acts as a RAG source that injects a specialized curriculum. It leverages MCP annotations (`annotations: { audience: ['assistant'], priority: 1.0 }`) to instruct the client to treat the content as high-priority system instructions rather than displaying it to the user.
85
+ * **Version-Aware Standards**: `get_best_practices` inspects the user's installed `@angular/core/package.json` for custom `angular.bestPractices` metadata to load version-matched guidelines. If missing or if path traversal/size limits (>1MB) are breached, it falls back to a generic guide bundled directly into the CLI package via Bazel genrules (`BUILD.bazel`).
86
+
87
+ ### F. OnPush & Zoneless Migration (`zoneless-migration.ts` & Subsystem)
88
+ This subsystem provides an advanced, AST-driven refactoring workflow designed for iterative execution (one actionable step at a time).
89
+ * **TypeScript AST Categorization**: It uses the TypeScript Compiler API (`ts-utils.ts`) to parse source files and categorize them into `zoneFiles` (containing unsupported `NgZone` imports), `filesWithComponents` (lacking `OnPush`), and `componentTestFiles`.
90
+ * **Advanced MCP Client Sampling (`sampling/createMessage`)**: In an elegant display of advanced MCP capabilities, when multiple component files require migration, `rankComponentFilesForMigration` invokes the MCP `sampling/createMessage` request. It asks the LLM client to evaluate the file list and rank them so that shared/common components (`shared/`, `common/`, `ui/`) are migrated first.
91
+ * **Granular Prompting**: It provides highly specific, diff-illustrated refactoring prompts for replacing `onMicrotaskEmpty`/`onStable` with `afterNextRender`/`afterEveryRender`, converting state to Signals or `markForCheck()`, and debugging test failures (`ExpressionChangedAfterItHasBeenCheckedError`).
92
+
93
+ ---
94
+
95
+ ## 3. Summary of Architectural Strengths
96
+
97
+ 1. **Flawless MCP Specification Alignment**: The implementation takes full advantage of the MCP specification, utilizing Tool Annotations (`readOnlyHint`, `openWorldHint`, `audience`, `priority`), Client Sampling (`sampling/createMessage`), Dynamic Roots (`listRoots`), and Stdio lifecycle management.
98
+ 2. **Defensive & Resilient Design**: The codebase exhibits rigorous defensive programming. It includes strict sandboxing in `host.ts`, inode cycle detection in `projects.ts`, fallback safe-harbor versioning in `doc-search.ts`, and graceful handling of ignorable filesystem locks/permission errors (`EACCES`, `EPERM`, `EBUSY`).
99
+ 3. **Token & Context Optimization**: Recognizing the bandwidth and context constraints of LLMs, the server avoids dumping raw data. It filters out non-essential files, streams only `<main>` content from documentation web pages, and forces iterative, single-action responses during complex migrations.
100
+
101
+ ---
102
+
103
+ ## 4. Potential Limitations & Recommendations for Future Enhancement
104
+
105
+ While the implementation is exceptionally robust, a thorough analysis reveals a few edge cases and opportunities for refinement:
106
+
107
+ ### 1. Devserver Log Matching Fragility
108
+ * **Observation**: In `devserver.ts`, `addLog()` evaluates build status using exact string matching (`log.startsWith(BUILD_SUCCEEDED_MESSAGE)`). If the underlying Angular CLI builder output includes ANSI color codes, terminal escape sequences, or if log formatting changes in future CLI releases, `log.startsWith` may fail to match, leaving the server in an incorrect `isBuilding() = true` state.
109
+ * **Recommendation**: Strip ANSI codes from incoming data chunks before matching, or better yet, configure the child process to use a structured JSON IPC/logging mechanism if supported by the Angular CLI dev server builder.
110
+
111
+ ### 2. Global Binary Fallback Risk
112
+ * **Observation**: In `host.ts`, `resolveNgCommand` attempts to find the local `ng.js` binary. If `createRequire` fails (e.g., in an unusual monorepo or hoisting setup), it falls back to `{ command: 'ng', args }`. If the host environment lacks a globally installed `@angular/cli` or has an outdated global version, process execution will fail unexpectedly.
113
+ * **Recommendation**: When local resolution fails, verify the existence of global `ng` via `where`/`which` or inspect `node_modules/.bin/ng` before falling back, providing a clear diagnostic warning to the logger if a global binary fallback is triggered.
114
+
115
+ ### 3. AST Decorator Matching in Migrations
116
+ * **Observation**: In `migrate-single-file.ts`, the AST visitor explicitly checks for `ts.isDecorator(node)` where the expression is a call to `Component`. If an enterprise codebase aliases the `@Component` decorator, wraps it in a custom decorator (e.g., `@CustomUIComponent`), or relies on intermediate base class inheritance for change detection strategies, the migration tool will bypass the file.
117
+ * **Recommendation**: Utilize the TypeScript type checker (if a full program can be cheaply instantiated) to resolve base classes/decorator aliases, or expand the AST heuristic to inspect imported decorator aliases.