@angular/compiler-cli 20.0.6 → 20.1.0-next.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.
Files changed (65) hide show
  1. package/bundles/{chunk-TPEB2IXF.js → chunk-3AHGFMNS.js} +7 -7
  2. package/bundles/{chunk-RYBZ5OMY.js → chunk-CY4WXRF2.js} +5 -5
  3. package/bundles/{chunk-LMRFLQ2K.js → chunk-CZ5FD3CS.js} +6 -17
  4. package/bundles/{chunk-LMRFLQ2K.js.map → chunk-CZ5FD3CS.js.map} +1 -1
  5. package/bundles/{chunk-7FGS2TFN.js → chunk-FPJJEIPU.js} +11 -11
  6. package/bundles/{chunk-SEKYV57I.js → chunk-H5Y7P5GQ.js} +3 -3
  7. package/bundles/{chunk-LYJARAHL.js → chunk-N3B6BMGR.js} +31 -31
  8. package/bundles/{chunk-PML5JK7B.js → chunk-NVYT6OPE.js} +7 -7
  9. package/bundles/{chunk-ZWSVOOGU.js → chunk-OOYRM3V7.js} +237 -385
  10. package/bundles/chunk-OOYRM3V7.js.map +6 -0
  11. package/bundles/{chunk-M7MXAQMK.js → chunk-OVACIG5Q.js} +3 -3
  12. package/bundles/{chunk-3NKMA2JO.js → chunk-U5SKOFKE.js} +2 -2
  13. package/bundles/{chunk-SILQIVD4.js → chunk-UMD7AW7S.js} +1689 -1077
  14. package/bundles/chunk-UMD7AW7S.js.map +6 -0
  15. package/bundles/index.js +12 -12
  16. package/bundles/linker/babel/index.js +12 -12
  17. package/bundles/linker/index.js +3 -3
  18. package/bundles/private/localize.js +4 -4
  19. package/bundles/private/migrations.js +4 -4
  20. package/bundles/private/tooling.js +6 -6
  21. package/bundles/src/bin/ng_xi18n.js +10 -10
  22. package/bundles/src/bin/ngc.js +8 -8
  23. package/linker/src/file_linker/partial_linkers/util.d.ts +1 -1
  24. package/package.json +3 -3
  25. package/src/ngtsc/annotations/component/src/handler.d.ts +5 -2
  26. package/src/ngtsc/annotations/component/src/metadata.d.ts +7 -0
  27. package/src/ngtsc/annotations/component/src/selectorless.d.ts +16 -0
  28. package/src/ngtsc/annotations/directive/src/handler.d.ts +2 -1
  29. package/src/ngtsc/annotations/directive/src/shared.d.ts +2 -2
  30. package/src/ngtsc/annotations/ng_module/src/handler.d.ts +2 -1
  31. package/src/ngtsc/annotations/src/pipe.d.ts +1 -1
  32. package/src/ngtsc/core/api/src/public_options.d.ts +13 -0
  33. package/src/ngtsc/core/src/compiler.d.ts +1 -0
  34. package/src/ngtsc/diagnostics/src/error_code.d.ts +4 -0
  35. package/src/ngtsc/docs/src/entities.d.ts +1 -1
  36. package/src/ngtsc/indexer/src/api.d.ts +20 -8
  37. package/src/ngtsc/metadata/src/api.d.ts +9 -3
  38. package/src/ngtsc/scope/index.d.ts +2 -1
  39. package/src/ngtsc/scope/src/api.d.ts +12 -2
  40. package/src/ngtsc/scope/src/selectorless_scope.d.ts +25 -0
  41. package/src/ngtsc/scope/src/typecheck.d.ts +5 -3
  42. package/src/ngtsc/transform/index.d.ts +1 -0
  43. package/src/ngtsc/transform/src/api.d.ts +0 -2
  44. package/src/ngtsc/transform/src/compilation.d.ts +2 -1
  45. package/src/ngtsc/transform/src/implicit_signal_debug_name_transform.d.ts +74 -0
  46. package/src/ngtsc/transform/src/transform.d.ts +1 -1
  47. package/src/ngtsc/translator/src/translator.d.ts +0 -3
  48. package/src/ngtsc/typecheck/api/api.d.ts +3 -0
  49. package/src/ngtsc/typecheck/api/checker.d.ts +24 -6
  50. package/src/ngtsc/typecheck/api/scope.d.ts +17 -1
  51. package/src/ngtsc/typecheck/api/symbols.d.ts +39 -3
  52. package/src/ngtsc/typecheck/src/checker.d.ts +12 -4
  53. package/src/ngtsc/typecheck/src/completion.d.ts +7 -2
  54. package/src/ngtsc/typecheck/src/oob.d.ts +7 -10
  55. package/src/ngtsc/typecheck/src/template_symbol_builder.d.ts +6 -2
  56. package/bundles/chunk-SILQIVD4.js.map +0 -6
  57. package/bundles/chunk-ZWSVOOGU.js.map +0 -6
  58. /package/bundles/{chunk-TPEB2IXF.js.map → chunk-3AHGFMNS.js.map} +0 -0
  59. /package/bundles/{chunk-RYBZ5OMY.js.map → chunk-CY4WXRF2.js.map} +0 -0
  60. /package/bundles/{chunk-7FGS2TFN.js.map → chunk-FPJJEIPU.js.map} +0 -0
  61. /package/bundles/{chunk-SEKYV57I.js.map → chunk-H5Y7P5GQ.js.map} +0 -0
  62. /package/bundles/{chunk-LYJARAHL.js.map → chunk-N3B6BMGR.js.map} +0 -0
  63. /package/bundles/{chunk-PML5JK7B.js.map → chunk-NVYT6OPE.js.map} +0 -0
  64. /package/bundles/{chunk-M7MXAQMK.js.map → chunk-OVACIG5Q.js.map} +0 -0
  65. /package/bundles/{chunk-3NKMA2JO.js.map → chunk-U5SKOFKE.js.map} +0 -0
@@ -4,7 +4,7 @@
4
4
 
5
5
  import {
6
6
  angularJitApplicationTransform
7
- } from "./chunk-7FGS2TFN.js";
7
+ } from "./chunk-FPJJEIPU.js";
8
8
  import {
9
9
  AbsoluteModuleStrategy,
10
10
  ActivePerfRecorder,
@@ -59,6 +59,7 @@ import {
59
59
  ReferenceEmitter,
60
60
  RelativePathStrategy,
61
61
  ResourceRegistry,
62
+ SelectorlessComponentScopeReader,
62
63
  SemanticDepGraphUpdater,
63
64
  ShimAdapter,
64
65
  ShimReferenceTagger,
@@ -87,10 +88,11 @@ import {
87
88
  relativePathBetween,
88
89
  replaceTsWithNgInErrors,
89
90
  retagAllTsFiles,
91
+ signalMetadataTransform,
90
92
  toUnredirectedSourceFile,
91
93
  tryParseInitializerApi,
92
94
  untagAllTsFiles
93
- } from "./chunk-SILQIVD4.js";
95
+ } from "./chunk-UMD7AW7S.js";
94
96
  import {
95
97
  LogicalFileSystem,
96
98
  absoluteFrom,
@@ -100,9 +102,9 @@ import {
100
102
  getFileSystem,
101
103
  join,
102
104
  resolve
103
- } from "./chunk-TPEB2IXF.js";
105
+ } from "./chunk-3AHGFMNS.js";
104
106
 
105
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/transformers/api.js
107
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/api.js
106
108
  var DEFAULT_ERROR_CODE = 100;
107
109
  var UNKNOWN_ERROR_CODE = 500;
108
110
  var SOURCE = "angular";
@@ -120,7 +122,7 @@ var EmitFlags;
120
122
  EmitFlags2[EmitFlags2["All"] = 31] = "All";
121
123
  })(EmitFlags || (EmitFlags = {}));
122
124
 
123
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/transformers/compiler_host.js
125
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/compiler_host.js
124
126
  import ts from "typescript";
125
127
  var wrapHostForTest = null;
126
128
  function createCompilerHost({ options, tsHost = ts.createCompilerHost(options, true) }) {
@@ -130,7 +132,7 @@ function createCompilerHost({ options, tsHost = ts.createCompilerHost(options, t
130
132
  return tsHost;
131
133
  }
132
134
 
133
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/entities.js
135
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/entities.js
134
136
  var EntryType;
135
137
  (function(EntryType2) {
136
138
  EntryType2["Block"] = "block";
@@ -177,22 +179,22 @@ function isDocEntryWithSourceInfo(entry) {
177
179
  return "source" in entry;
178
180
  }
179
181
 
180
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/extractor.js
182
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/extractor.js
181
183
  import ts12 from "typescript";
182
184
 
183
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/class_extractor.js
185
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/class_extractor.js
184
186
  import ts6 from "typescript";
185
187
 
186
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/filters.js
188
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/filters.js
187
189
  function isAngularPrivateName(name) {
188
190
  const firstChar = name[0] ?? "";
189
191
  return firstChar === "\u0275" || firstChar === "_";
190
192
  }
191
193
 
192
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/function_extractor.js
194
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/function_extractor.js
193
195
  import ts4 from "typescript";
194
196
 
195
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/generics_extractor.js
197
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/generics_extractor.js
196
198
  function extractGenerics(declaration) {
197
199
  return declaration.typeParameters?.map((typeParam) => ({
198
200
  name: typeParam.name.getText(),
@@ -201,7 +203,7 @@ function extractGenerics(declaration) {
201
203
  })) ?? [];
202
204
  }
203
205
 
204
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/jsdoc_extractor.js
206
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/jsdoc_extractor.js
205
207
  import ts2 from "typescript";
206
208
  var decoratorExpression = /@(?=(Injectable|Component|Directive|Pipe|NgModule|Input|Output|HostBinding|HostListener|Inject|Optional|Self|Host|SkipSelf|ViewChild|ViewChildren|ContentChild|ContentChildren))/g;
207
209
  function extractJsDocTags(node) {
@@ -242,13 +244,13 @@ function unescapeAngularDecorators(comment) {
242
244
  return comment.replace(/_NG_AT_/g, "@");
243
245
  }
244
246
 
245
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/type_extractor.js
247
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/type_extractor.js
246
248
  import ts3 from "typescript";
247
249
  function extractResolvedTypeString(node, checker) {
248
250
  return checker.typeToString(checker.getTypeAtLocation(node), void 0, ts3.TypeFormatFlags.NoTruncation);
249
251
  }
250
252
 
251
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/function_extractor.js
253
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/function_extractor.js
252
254
  var FunctionExtractor = class {
253
255
  name;
254
256
  exportDeclaration;
@@ -358,7 +360,7 @@ function findImplementationOfFunction(node, typeChecker) {
358
360
  return implementation;
359
361
  }
360
362
 
361
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/internal.js
363
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/internal.js
362
364
  import ts5 from "typescript";
363
365
  function isInternal(member) {
364
366
  return extractJsDocTags(member).some((tag) => tag.name === "internal") || hasLeadingInternalComment(member);
@@ -376,7 +378,7 @@ function hasLeadingInternalComment(member) {
376
378
  ) ?? false;
377
379
  }
378
380
 
379
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/class_extractor.js
381
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/class_extractor.js
380
382
  var ClassExtractor = class {
381
383
  declaration;
382
384
  typeChecker;
@@ -694,7 +696,7 @@ function extractPipeSyntax(metadata, classDeclaration) {
694
696
  return `{{ value_expression | ${metadata.name}${paramNames.length ? ":" + paramNames.join(":") : ""} }}`;
695
697
  }
696
698
 
697
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/constant_extractor.js
699
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/constant_extractor.js
698
700
  import ts7 from "typescript";
699
701
  var LITERAL_AS_ENUM_TAG = "object-literal-as-enum";
700
702
  function extractConstant(declaration, typeChecker) {
@@ -752,7 +754,7 @@ function extractLiteralPropertiesAsEnumMembers(declaration) {
752
754
  });
753
755
  }
754
756
 
755
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/decorator_extractor.js
757
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/decorator_extractor.js
756
758
  import ts8 from "typescript";
757
759
  function extractorDecorator(declaration, typeChecker) {
758
760
  const documentedNode = getDecoratorJsDocNode(declaration);
@@ -823,7 +825,7 @@ function getDecoratorJsDocNode(declaration) {
823
825
  return callSignature;
824
826
  }
825
827
 
826
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/enum_extractor.js
828
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/enum_extractor.js
827
829
  import ts9 from "typescript";
828
830
  function extractEnum(declaration, typeChecker) {
829
831
  return {
@@ -853,7 +855,7 @@ function getEnumMemberValue(memberNode) {
853
855
  return literal?.getText() ?? "";
854
856
  }
855
857
 
856
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/initializer_api_function_extractor.js
858
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/initializer_api_function_extractor.js
857
859
  import ts10 from "typescript";
858
860
  var initializerApiTag = "initializerApiFunction";
859
861
  function isInitializerApiFunction(node, typeChecker) {
@@ -961,7 +963,7 @@ function extractFunctionWithOverloads(name, type, typeChecker) {
961
963
  };
962
964
  }
963
965
 
964
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/type_alias_extractor.js
966
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/type_alias_extractor.js
965
967
  function extractTypeAlias(declaration) {
966
968
  return {
967
969
  name: declaration.name.getText(),
@@ -974,7 +976,7 @@ function extractTypeAlias(declaration) {
974
976
  };
975
977
  }
976
978
 
977
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/import_extractor.js
979
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/import_extractor.js
978
980
  import ts11 from "typescript";
979
981
  function getImportedSymbols(sourceFile) {
980
982
  const importSpecifiers = /* @__PURE__ */ new Map();
@@ -998,7 +1000,7 @@ function getImportedSymbols(sourceFile) {
998
1000
  return importSpecifiers;
999
1001
  }
1000
1002
 
1001
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/extractor.js
1003
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/docs/src/extractor.js
1002
1004
  var DocsExtractor = class {
1003
1005
  typeChecker;
1004
1006
  metadataReader;
@@ -1085,11 +1087,11 @@ function getRelativeFilePath(sourceFile, rootDir) {
1085
1087
  return relativePath;
1086
1088
  }
1087
1089
 
1088
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.js
1090
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.js
1089
1091
  import { HtmlParser, MessageBundle } from "@angular/compiler";
1090
1092
  import ts27 from "typescript";
1091
1093
 
1092
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/transformers/i18n.js
1094
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/i18n.js
1093
1095
  import { Xliff, Xliff2, Xmb } from "@angular/compiler";
1094
1096
  import * as path from "path";
1095
1097
  function i18nGetExtension(formatName) {
@@ -1140,10 +1142,10 @@ function getPathNormalizer(basePath) {
1140
1142
  };
1141
1143
  }
1142
1144
 
1143
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/typescript_support.js
1145
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/typescript_support.js
1144
1146
  import ts13 from "typescript";
1145
1147
 
1146
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/version_helpers.js
1148
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/version_helpers.js
1147
1149
  function toNumbers(value) {
1148
1150
  const suffixIndex = value.lastIndexOf("-");
1149
1151
  return value.slice(0, suffixIndex === -1 ? value.length : suffixIndex).split(".").map((segment) => {
@@ -1178,7 +1180,7 @@ function compareVersions(v1, v2) {
1178
1180
  return compareNumbers(toNumbers(v1), toNumbers(v2));
1179
1181
  }
1180
1182
 
1181
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/typescript_support.js
1183
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/typescript_support.js
1182
1184
  var MIN_TS_VERSION = "5.8.0";
1183
1185
  var MAX_TS_VERSION = "5.9.0";
1184
1186
  var tsVersion = ts13.version;
@@ -1191,10 +1193,10 @@ function verifySupportedTypeScriptVersion() {
1191
1193
  checkVersion(tsVersion, MIN_TS_VERSION, MAX_TS_VERSION);
1192
1194
  }
1193
1195
 
1194
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.js
1196
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.js
1195
1197
  import ts25 from "typescript";
1196
1198
 
1197
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/analyzer.js
1199
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/analyzer.js
1198
1200
  var CycleAnalyzer = class {
1199
1201
  importGraph;
1200
1202
  cachedResults = null;
@@ -1271,7 +1273,7 @@ var Cycle = class {
1271
1273
  }
1272
1274
  };
1273
1275
 
1274
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/imports.js
1276
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/imports.js
1275
1277
  import ts14 from "typescript";
1276
1278
  var ImportGraph = class {
1277
1279
  checker;
@@ -1367,7 +1369,7 @@ var Found = class {
1367
1369
  }
1368
1370
  };
1369
1371
 
1370
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/generator.js
1372
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/generator.js
1371
1373
  import ts15 from "typescript";
1372
1374
  var FlatIndexGenerator = class {
1373
1375
  entryPoint;
@@ -1395,7 +1397,7 @@ export * from '${relativeEntryPoint}';
1395
1397
  }
1396
1398
  };
1397
1399
 
1398
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/logic.js
1400
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/logic.js
1399
1401
  function findFlatIndexEntryPoint(rootFiles) {
1400
1402
  const tsFiles = rootFiles.filter((file) => isNonDeclarationTsPath(file));
1401
1403
  let resolvedEntryPoint = null;
@@ -1411,7 +1413,7 @@ function findFlatIndexEntryPoint(rootFiles) {
1411
1413
  return resolvedEntryPoint;
1412
1414
  }
1413
1415
 
1414
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/private_export_checker.js
1416
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/private_export_checker.js
1415
1417
  import ts16 from "typescript";
1416
1418
  function checkForPrivateExports(entryPoint, checker, refGraph) {
1417
1419
  const diagnostics = [];
@@ -1491,7 +1493,7 @@ function getDescriptorOfDeclaration(decl) {
1491
1493
  }
1492
1494
  }
1493
1495
 
1494
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/reference_graph.js
1496
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/reference_graph.js
1495
1497
  var ReferenceGraph = class {
1496
1498
  references = /* @__PURE__ */ new Map();
1497
1499
  add(from, to) {
@@ -1543,7 +1545,7 @@ var ReferenceGraph = class {
1543
1545
  }
1544
1546
  };
1545
1547
 
1546
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/dependency_tracking.js
1548
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/dependency_tracking.js
1547
1549
  var FileDependencyGraph = class {
1548
1550
  nodes = /* @__PURE__ */ new Map();
1549
1551
  addDependency(from, on) {
@@ -1608,7 +1610,7 @@ function isLogicallyChanged(sf, node, changedTsPaths, deletedTsPaths, changedRes
1608
1610
  return false;
1609
1611
  }
1610
1612
 
1611
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/state.js
1613
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/state.js
1612
1614
  var IncrementalStateKind;
1613
1615
  (function(IncrementalStateKind2) {
1614
1616
  IncrementalStateKind2[IncrementalStateKind2["Fresh"] = 0] = "Fresh";
@@ -1616,7 +1618,7 @@ var IncrementalStateKind;
1616
1618
  IncrementalStateKind2[IncrementalStateKind2["Analyzed"] = 2] = "Analyzed";
1617
1619
  })(IncrementalStateKind || (IncrementalStateKind = {}));
1618
1620
 
1619
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/incremental.js
1621
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/incremental.js
1620
1622
  var PhaseKind;
1621
1623
  (function(PhaseKind2) {
1622
1624
  PhaseKind2[PhaseKind2["Analysis"] = 0] = "Analysis";
@@ -1822,7 +1824,7 @@ function toOriginalSourceFile(sf) {
1822
1824
  }
1823
1825
  }
1824
1826
 
1825
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/strategy.js
1827
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/strategy.js
1826
1828
  var TrackedIncrementalBuildStrategy = class {
1827
1829
  state = null;
1828
1830
  isSet = false;
@@ -1856,7 +1858,7 @@ var PatchedProgramIncrementalBuildStrategy = class {
1856
1858
  };
1857
1859
  var SYM_INCREMENTAL_STATE = Symbol("NgIncrementalState");
1858
1860
 
1859
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/api.js
1861
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/api.js
1860
1862
  var IdentifierKind;
1861
1863
  (function(IdentifierKind2) {
1862
1864
  IdentifierKind2[IdentifierKind2["Property"] = 0] = "Property";
@@ -1867,6 +1869,8 @@ var IdentifierKind;
1867
1869
  IdentifierKind2[IdentifierKind2["Reference"] = 5] = "Reference";
1868
1870
  IdentifierKind2[IdentifierKind2["Variable"] = 6] = "Variable";
1869
1871
  IdentifierKind2[IdentifierKind2["LetDeclaration"] = 7] = "LetDeclaration";
1872
+ IdentifierKind2[IdentifierKind2["Component"] = 8] = "Component";
1873
+ IdentifierKind2[IdentifierKind2["Directive"] = 9] = "Directive";
1870
1874
  })(IdentifierKind || (IdentifierKind = {}));
1871
1875
  var AbsoluteSourceSpan = class {
1872
1876
  start;
@@ -1877,7 +1881,7 @@ var AbsoluteSourceSpan = class {
1877
1881
  }
1878
1882
  };
1879
1883
 
1880
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/context.js
1884
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/context.js
1881
1885
  var IndexingContext = class {
1882
1886
  components = /* @__PURE__ */ new Set();
1883
1887
  addComponent(info) {
@@ -1885,207 +1889,104 @@ var IndexingContext = class {
1885
1889
  }
1886
1890
  };
1887
1891
 
1888
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.js
1892
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.js
1889
1893
  import { ParseSourceFile } from "@angular/compiler";
1890
1894
 
1891
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/template.js
1892
- import { ASTWithSource, ImplicitReceiver, PropertyRead, PropertyWrite, RecursiveAstVisitor, TmplAstBoundDeferredTrigger, TmplAstComponent, TmplAstDirective, TmplAstElement, TmplAstRecursiveVisitor, TmplAstReference, TmplAstTemplate, TmplAstVariable } from "@angular/compiler";
1893
- var ExpressionVisitor = class extends RecursiveAstVisitor {
1894
- expressionStr;
1895
- absoluteOffset;
1896
- boundTemplate;
1897
- targetToIdentifier;
1898
- identifiers = [];
1899
- errors = [];
1900
- constructor(expressionStr, absoluteOffset, boundTemplate, targetToIdentifier) {
1901
- super();
1902
- this.expressionStr = expressionStr;
1903
- this.absoluteOffset = absoluteOffset;
1904
- this.boundTemplate = boundTemplate;
1905
- this.targetToIdentifier = targetToIdentifier;
1906
- }
1907
- static getIdentifiers(ast, source, absoluteOffset, boundTemplate, targetToIdentifier) {
1908
- const visitor = new ExpressionVisitor(source, absoluteOffset, boundTemplate, targetToIdentifier);
1909
- visitor.visit(ast);
1910
- return { identifiers: visitor.identifiers, errors: visitor.errors };
1911
- }
1912
- visit(ast) {
1913
- ast.visit(this);
1914
- }
1915
- visitPropertyRead(ast, context) {
1916
- this.visitIdentifier(ast, IdentifierKind.Property);
1917
- super.visitPropertyRead(ast, context);
1918
- }
1919
- visitPropertyWrite(ast, context) {
1920
- this.visitIdentifier(ast, IdentifierKind.Property);
1921
- super.visitPropertyWrite(ast, context);
1922
- }
1923
- visitIdentifier(ast, kind) {
1924
- if (!(ast.receiver instanceof ImplicitReceiver)) {
1925
- return;
1926
- }
1927
- let identifierStart = ast.sourceSpan.start - this.absoluteOffset;
1928
- if (ast instanceof PropertyRead || ast instanceof PropertyWrite) {
1929
- identifierStart = ast.nameSpan.start - this.absoluteOffset;
1930
- }
1931
- if (!this.expressionStr.substring(identifierStart).startsWith(ast.name)) {
1932
- this.errors.push(new Error(`Impossible state: "${ast.name}" not found in "${this.expressionStr}" at location ${identifierStart}`));
1933
- return;
1934
- }
1935
- const absoluteStart = this.absoluteOffset + identifierStart;
1936
- const span = new AbsoluteSourceSpan(absoluteStart, absoluteStart + ast.name.length);
1937
- const targetAst = this.boundTemplate.getExpressionTarget(ast);
1938
- const target = targetAst ? this.targetToIdentifier(targetAst) : null;
1939
- const identifier = {
1940
- name: ast.name,
1941
- span,
1942
- kind,
1943
- target
1944
- };
1945
- this.identifiers.push(identifier);
1946
- }
1947
- };
1948
- var TemplateVisitor = class extends TmplAstRecursiveVisitor {
1895
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/template.js
1896
+ import { ASTWithSource, CombinedRecursiveAstVisitor, ImplicitReceiver, PropertyRead, TmplAstComponent, TmplAstDirective, TmplAstElement, TmplAstReference, TmplAstTemplate, TmplAstVariable, tmplAstVisitAll } from "@angular/compiler";
1897
+ var TemplateVisitor = class extends CombinedRecursiveAstVisitor {
1949
1898
  boundTemplate;
1950
1899
  identifiers = /* @__PURE__ */ new Set();
1951
1900
  errors = [];
1901
+ currentAstWithSource = null;
1952
1902
  targetIdentifierCache = /* @__PURE__ */ new Map();
1953
- elementAndTemplateIdentifierCache = /* @__PURE__ */ new Map();
1903
+ directiveHostIdentifierCache = /* @__PURE__ */ new Map();
1954
1904
  constructor(boundTemplate) {
1955
1905
  super();
1956
1906
  this.boundTemplate = boundTemplate;
1957
1907
  }
1958
- visit(node) {
1959
- node.visit(this);
1960
- }
1961
- visitAll(nodes) {
1962
- nodes.forEach((node) => this.visit(node));
1963
- }
1964
1908
  visitElement(element) {
1965
- const elementIdentifier = this.elementOrTemplateToIdentifier(element);
1909
+ const elementIdentifier = this.directiveHostToIdentifier(element);
1966
1910
  if (elementIdentifier !== null) {
1967
1911
  this.identifiers.add(elementIdentifier);
1968
1912
  }
1969
- this.visitAll(element.references);
1970
- this.visitAll(element.inputs);
1971
- this.visitAll(element.attributes);
1972
- this.visitAll(element.directives);
1973
- this.visitAll(element.children);
1974
- this.visitAll(element.outputs);
1913
+ super.visitElement(element);
1975
1914
  }
1976
1915
  visitTemplate(template) {
1977
- const templateIdentifier = this.elementOrTemplateToIdentifier(template);
1916
+ const templateIdentifier = this.directiveHostToIdentifier(template);
1978
1917
  if (templateIdentifier !== null) {
1979
1918
  this.identifiers.add(templateIdentifier);
1980
1919
  }
1981
- this.visitAll(template.directives);
1982
- this.visitAll(template.variables);
1983
- this.visitAll(template.attributes);
1984
- this.visitAll(template.templateAttrs);
1985
- this.visitAll(template.children);
1986
- this.visitAll(template.references);
1987
- }
1988
- visitBoundAttribute(attribute) {
1989
- if (attribute.valueSpan === void 0) {
1990
- return;
1991
- }
1992
- const { identifiers, errors } = ExpressionVisitor.getIdentifiers(attribute.value, attribute.valueSpan.toString(), attribute.valueSpan.start.offset, this.boundTemplate, this.targetToIdentifier.bind(this));
1993
- identifiers.forEach((id) => this.identifiers.add(id));
1994
- this.errors.push(...errors);
1995
- }
1996
- visitBoundEvent(attribute) {
1997
- this.visitExpression(attribute.handler);
1998
- }
1999
- visitBoundText(text) {
2000
- this.visitExpression(text.value);
1920
+ super.visitTemplate(template);
2001
1921
  }
2002
1922
  visitReference(reference) {
2003
1923
  const referenceIdentifier = this.targetToIdentifier(reference);
2004
- if (referenceIdentifier === null) {
2005
- return;
1924
+ if (referenceIdentifier !== null) {
1925
+ this.identifiers.add(referenceIdentifier);
2006
1926
  }
2007
- this.identifiers.add(referenceIdentifier);
1927
+ super.visitReference(reference);
2008
1928
  }
2009
1929
  visitVariable(variable) {
2010
1930
  const variableIdentifier = this.targetToIdentifier(variable);
2011
- if (variableIdentifier === null) {
2012
- return;
1931
+ if (variableIdentifier !== null) {
1932
+ this.identifiers.add(variableIdentifier);
2013
1933
  }
2014
- this.identifiers.add(variableIdentifier);
2015
- }
2016
- visitDeferredBlock(deferred) {
2017
- deferred.visitAll(this);
2018
- }
2019
- visitDeferredBlockPlaceholder(block) {
2020
- this.visitAll(block.children);
2021
- }
2022
- visitDeferredBlockError(block) {
2023
- this.visitAll(block.children);
2024
- }
2025
- visitDeferredBlockLoading(block) {
2026
- this.visitAll(block.children);
2027
- }
2028
- visitDeferredTrigger(trigger) {
2029
- if (trigger instanceof TmplAstBoundDeferredTrigger) {
2030
- this.visitExpression(trigger.value);
2031
- }
2032
- }
2033
- visitSwitchBlock(block) {
2034
- this.visitExpression(block.expression);
2035
- this.visitAll(block.cases);
2036
- }
2037
- visitSwitchBlockCase(block) {
2038
- block.expression && this.visitExpression(block.expression);
2039
- this.visitAll(block.children);
2040
- }
2041
- visitForLoopBlock(block) {
2042
- block.item.visit(this);
2043
- this.visitAll(block.contextVariables);
2044
- this.visitExpression(block.expression);
2045
- this.visitAll(block.children);
2046
- block.empty?.visit(this);
2047
- }
2048
- visitForLoopBlockEmpty(block) {
2049
- this.visitAll(block.children);
2050
- }
2051
- visitIfBlock(block) {
2052
- this.visitAll(block.branches);
2053
- }
2054
- visitIfBlockBranch(block) {
2055
- block.expression && this.visitExpression(block.expression);
2056
- block.expressionAlias?.visit(this);
2057
- this.visitAll(block.children);
1934
+ super.visitVariable(variable);
2058
1935
  }
2059
1936
  visitLetDeclaration(decl) {
2060
1937
  const identifier = this.targetToIdentifier(decl);
2061
1938
  if (identifier !== null) {
2062
1939
  this.identifiers.add(identifier);
2063
1940
  }
2064
- this.visitExpression(decl.value);
1941
+ super.visitLetDeclaration(decl);
2065
1942
  }
2066
1943
  visitComponent(component) {
2067
- throw new Error("TODO");
1944
+ const identifier = this.directiveHostToIdentifier(component);
1945
+ if (identifier !== null) {
1946
+ this.identifiers.add(identifier);
1947
+ }
1948
+ super.visitComponent(component);
2068
1949
  }
2069
1950
  visitDirective(directive) {
2070
- throw new Error("TODO");
2071
- }
2072
- elementOrTemplateToIdentifier(node) {
2073
- if (node instanceof TmplAstComponent || node instanceof TmplAstDirective) {
2074
- throw new Error("TODO");
1951
+ const identifier = this.directiveHostToIdentifier(directive);
1952
+ if (identifier !== null) {
1953
+ this.identifiers.add(identifier);
2075
1954
  }
2076
- if (this.elementAndTemplateIdentifierCache.has(node)) {
2077
- return this.elementAndTemplateIdentifierCache.get(node);
1955
+ super.visitDirective(directive);
1956
+ }
1957
+ visitPropertyRead(ast) {
1958
+ this.visitIdentifier(ast, IdentifierKind.Property);
1959
+ super.visitPropertyRead(ast, null);
1960
+ }
1961
+ visitBoundAttribute(attribute) {
1962
+ const previous = this.currentAstWithSource;
1963
+ this.currentAstWithSource = {
1964
+ source: attribute.valueSpan?.toString() || null,
1965
+ absoluteOffset: attribute.valueSpan ? attribute.valueSpan.start.offset : -1
1966
+ };
1967
+ this.visit(attribute.value instanceof ASTWithSource ? attribute.value.ast : attribute.value);
1968
+ this.currentAstWithSource = previous;
1969
+ }
1970
+ directiveHostToIdentifier(node) {
1971
+ if (this.directiveHostIdentifierCache.has(node)) {
1972
+ return this.directiveHostIdentifierCache.get(node);
2078
1973
  }
2079
1974
  let name;
2080
1975
  let kind;
2081
1976
  if (node instanceof TmplAstTemplate) {
2082
1977
  name = node.tagName ?? "ng-template";
2083
1978
  kind = IdentifierKind.Template;
2084
- } else {
1979
+ } else if (node instanceof TmplAstElement) {
2085
1980
  name = node.name;
2086
1981
  kind = IdentifierKind.Element;
1982
+ } else if (node instanceof TmplAstComponent) {
1983
+ name = node.fullName;
1984
+ kind = IdentifierKind.Component;
1985
+ } else {
1986
+ name = node.name;
1987
+ kind = IdentifierKind.Directive;
2087
1988
  }
2088
- if (name.startsWith(":")) {
1989
+ if ((node instanceof TmplAstTemplate || node instanceof TmplAstElement) && name.startsWith(":")) {
2089
1990
  name = name.split(":").pop();
2090
1991
  }
2091
1992
  const sourceSpan = node.startSourceSpan;
@@ -2114,7 +2015,7 @@ var TemplateVisitor = class extends TmplAstRecursiveVisitor {
2114
2015
  };
2115
2016
  }))
2116
2017
  };
2117
- this.elementAndTemplateIdentifierCache.set(node, identifier);
2018
+ this.directiveHostIdentifierCache.set(node, identifier);
2118
2019
  return identifier;
2119
2020
  }
2120
2021
  targetToIdentifier(node) {
@@ -2135,9 +2036,9 @@ var TemplateVisitor = class extends TmplAstRecursiveVisitor {
2135
2036
  let node2 = null;
2136
2037
  let directive = null;
2137
2038
  if (refTarget instanceof TmplAstElement || refTarget instanceof TmplAstTemplate || refTarget instanceof TmplAstComponent || refTarget instanceof TmplAstDirective) {
2138
- node2 = this.elementOrTemplateToIdentifier(refTarget);
2039
+ node2 = this.directiveHostToIdentifier(refTarget);
2139
2040
  } else {
2140
- node2 = this.elementOrTemplateToIdentifier(refTarget.node);
2041
+ node2 = this.directiveHostToIdentifier(refTarget.node);
2141
2042
  directive = refTarget.directive.ref.node;
2142
2043
  }
2143
2044
  if (node2 === null) {
@@ -2178,25 +2079,54 @@ var TemplateVisitor = class extends TmplAstRecursiveVisitor {
2178
2079
  }
2179
2080
  return context.start.offset + localStr.indexOf(name);
2180
2081
  }
2181
- visitExpression(ast) {
2182
- if (ast instanceof ASTWithSource && ast.source !== null) {
2183
- const targetToIdentifier = this.targetToIdentifier.bind(this);
2184
- const absoluteOffset = ast.sourceSpan.start;
2185
- const { identifiers, errors } = ExpressionVisitor.getIdentifiers(ast, ast.source, absoluteOffset, this.boundTemplate, targetToIdentifier);
2186
- identifiers.forEach((id) => this.identifiers.add(id));
2187
- this.errors.push(...errors);
2082
+ visit(node) {
2083
+ if (node instanceof ASTWithSource) {
2084
+ const previous = this.currentAstWithSource;
2085
+ this.currentAstWithSource = { source: node.source, absoluteOffset: node.sourceSpan.start };
2086
+ super.visit(node.ast);
2087
+ this.currentAstWithSource = previous;
2088
+ } else {
2089
+ super.visit(node);
2188
2090
  }
2189
2091
  }
2092
+ visitIdentifier(ast, kind) {
2093
+ if (this.currentAstWithSource === null || this.currentAstWithSource.source === null) {
2094
+ return;
2095
+ }
2096
+ if (!(ast.receiver instanceof ImplicitReceiver)) {
2097
+ return;
2098
+ }
2099
+ const { absoluteOffset, source: expressionStr } = this.currentAstWithSource;
2100
+ let identifierStart = ast.sourceSpan.start - absoluteOffset;
2101
+ if (ast instanceof PropertyRead) {
2102
+ identifierStart = ast.nameSpan.start - absoluteOffset;
2103
+ }
2104
+ if (!expressionStr.substring(identifierStart).startsWith(ast.name)) {
2105
+ this.errors.push(new Error(`Impossible state: "${ast.name}" not found in "${expressionStr}" at location ${identifierStart}`));
2106
+ return;
2107
+ }
2108
+ const absoluteStart = absoluteOffset + identifierStart;
2109
+ const span = new AbsoluteSourceSpan(absoluteStart, absoluteStart + ast.name.length);
2110
+ const targetAst = this.boundTemplate.getExpressionTarget(ast);
2111
+ const target = targetAst ? this.targetToIdentifier(targetAst) : null;
2112
+ const identifier = {
2113
+ name: ast.name,
2114
+ span,
2115
+ kind,
2116
+ target
2117
+ };
2118
+ this.identifiers.add(identifier);
2119
+ }
2190
2120
  };
2191
2121
  function getTemplateIdentifiers(boundTemplate) {
2192
2122
  const visitor = new TemplateVisitor(boundTemplate);
2193
2123
  if (boundTemplate.target.template !== void 0) {
2194
- visitor.visitAll(boundTemplate.target.template);
2124
+ tmplAstVisitAll(visitor, boundTemplate.target.template);
2195
2125
  }
2196
2126
  return { identifiers: visitor.identifiers, errors: visitor.errors };
2197
2127
  }
2198
2128
 
2199
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.js
2129
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.js
2200
2130
  function generateAnalysis(context) {
2201
2131
  const analysis = /* @__PURE__ */ new Map();
2202
2132
  context.components.forEach(({ declaration, selector, boundTemplate, templateMeta }) => {
@@ -2232,7 +2162,7 @@ function generateAnalysis(context) {
2232
2162
  return analysis;
2233
2163
  }
2234
2164
 
2235
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/ng_module_index.js
2165
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/ng_module_index.js
2236
2166
  var NgModuleIndexImpl = class {
2237
2167
  metaReader;
2238
2168
  localReader;
@@ -2322,7 +2252,7 @@ var NgModuleIndexImpl = class {
2322
2252
  }
2323
2253
  };
2324
2254
 
2325
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/resource/src/loader.js
2255
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/resource/src/loader.js
2326
2256
  import ts17 from "typescript";
2327
2257
  var CSS_PREPROCESSOR_EXT = /(\.scss|\.sass|\.less|\.styl)$/;
2328
2258
  var RESOURCE_MARKER = ".$ngresource$";
@@ -2479,7 +2409,7 @@ function createLookupResolutionHost(adapter) {
2479
2409
  };
2480
2410
  }
2481
2411
 
2482
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/standalone.js
2412
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/standalone.js
2483
2413
  var StandaloneComponentScopeReader = class {
2484
2414
  metaReader;
2485
2415
  localModuleReader;
@@ -2494,7 +2424,7 @@ var StandaloneComponentScopeReader = class {
2494
2424
  if (!this.cache.has(clazz)) {
2495
2425
  const clazzRef = new Reference(clazz);
2496
2426
  const clazzMeta = this.metaReader.getDirectiveMetadata(clazzRef);
2497
- if (clazzMeta === null || !clazzMeta.isComponent || !clazzMeta.isStandalone) {
2427
+ if (clazzMeta === null || !clazzMeta.isComponent || !clazzMeta.isStandalone || clazzMeta.selectorlessEnabled) {
2498
2428
  this.cache.set(clazz, null);
2499
2429
  return null;
2500
2430
  }
@@ -2577,10 +2507,10 @@ var StandaloneComponentScopeReader = class {
2577
2507
  }
2578
2508
  };
2579
2509
 
2580
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/interpolated_signal_not_invoked/index.js
2581
- import { ASTWithSource as ASTWithSource3, BindingType, Interpolation, PropertyRead as PropertyRead2, TmplAstBoundAttribute } from "@angular/compiler";
2510
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/interpolated_signal_not_invoked/index.js
2511
+ import { ASTWithSource as ASTWithSource2, BindingType, Interpolation, PrefixNot, PropertyRead as PropertyRead2, TmplAstBoundAttribute } from "@angular/compiler";
2582
2512
 
2583
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/symbol_util.js
2513
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/symbol_util.js
2584
2514
  import ts18 from "typescript";
2585
2515
  var SIGNAL_FNS = /* @__PURE__ */ new Set([
2586
2516
  "WritableSignal",
@@ -2600,8 +2530,8 @@ function isSignalSymbol(symbol) {
2600
2530
  });
2601
2531
  }
2602
2532
 
2603
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/api/api.js
2604
- import { ASTWithSource as ASTWithSource2, RecursiveAstVisitor as RecursiveAstVisitor2, TmplAstBoundDeferredTrigger as TmplAstBoundDeferredTrigger2 } from "@angular/compiler";
2533
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/api/api.js
2534
+ import { CombinedRecursiveAstVisitor as CombinedRecursiveAstVisitor2 } from "@angular/compiler";
2605
2535
  var TemplateCheckWithVisitor = class {
2606
2536
  canVisitStructuralAttributes = true;
2607
2537
  run(ctx, component, template) {
@@ -2609,7 +2539,7 @@ var TemplateCheckWithVisitor = class {
2609
2539
  return visitor.getDiagnostics(template);
2610
2540
  }
2611
2541
  };
2612
- var TemplateVisitor2 = class extends RecursiveAstVisitor2 {
2542
+ var TemplateVisitor2 = class extends CombinedRecursiveAstVisitor2 {
2613
2543
  ctx;
2614
2544
  component;
2615
2545
  check;
@@ -2620,157 +2550,65 @@ var TemplateVisitor2 = class extends RecursiveAstVisitor2 {
2620
2550
  this.component = component;
2621
2551
  this.check = check;
2622
2552
  }
2623
- visit(node, context) {
2553
+ visit(node) {
2624
2554
  this.diagnostics.push(...this.check.visitNode(this.ctx, this.component, node));
2625
- node.visit(this);
2626
- }
2627
- visitAllNodes(nodes) {
2628
- for (const node of nodes) {
2629
- this.visit(node);
2630
- }
2631
- }
2632
- visitAst(ast) {
2633
- if (ast instanceof ASTWithSource2) {
2634
- ast = ast.ast;
2635
- }
2636
- this.visit(ast);
2637
- }
2638
- visitElement(element) {
2639
- this.visitAllNodes(element.attributes);
2640
- this.visitAllNodes(element.inputs);
2641
- this.visitAllNodes(element.outputs);
2642
- this.visitAllNodes(element.directives);
2643
- this.visitAllNodes(element.references);
2644
- this.visitAllNodes(element.children);
2555
+ super.visit(node);
2645
2556
  }
2646
2557
  visitTemplate(template) {
2647
2558
  const isInlineTemplate = template.tagName === "ng-template";
2648
- this.visitAllNodes(template.attributes);
2559
+ this.visitAllTemplateNodes(template.attributes);
2649
2560
  if (isInlineTemplate) {
2650
- this.visitAllNodes(template.inputs);
2651
- this.visitAllNodes(template.outputs);
2561
+ this.visitAllTemplateNodes(template.inputs);
2562
+ this.visitAllTemplateNodes(template.outputs);
2652
2563
  }
2653
- this.visitAllNodes(template.directives);
2564
+ this.visitAllTemplateNodes(template.directives);
2654
2565
  if (this.check.canVisitStructuralAttributes || isInlineTemplate) {
2655
- this.visitAllNodes(template.templateAttrs);
2566
+ this.visitAllTemplateNodes(template.templateAttrs);
2656
2567
  }
2657
- this.visitAllNodes(template.variables);
2658
- this.visitAllNodes(template.references);
2659
- this.visitAllNodes(template.children);
2660
- }
2661
- visitContent(content) {
2662
- this.visitAllNodes(content.children);
2663
- }
2664
- visitVariable(variable) {
2665
- }
2666
- visitReference(reference) {
2667
- }
2668
- visitTextAttribute(attribute) {
2669
- }
2670
- visitUnknownBlock(block) {
2671
- }
2672
- visitBoundAttribute(attribute) {
2673
- this.visitAst(attribute.value);
2674
- }
2675
- visitBoundEvent(attribute) {
2676
- this.visitAst(attribute.handler);
2677
- }
2678
- visitText(text) {
2679
- }
2680
- visitBoundText(text) {
2681
- this.visitAst(text.value);
2682
- }
2683
- visitIcu(icu) {
2684
- Object.keys(icu.vars).forEach((key) => this.visit(icu.vars[key]));
2685
- Object.keys(icu.placeholders).forEach((key) => this.visit(icu.placeholders[key]));
2686
- }
2687
- visitDeferredBlock(deferred) {
2688
- deferred.visitAll(this);
2689
- }
2690
- visitDeferredTrigger(trigger) {
2691
- if (trigger instanceof TmplAstBoundDeferredTrigger2) {
2692
- this.visitAst(trigger.value);
2693
- }
2694
- }
2695
- visitDeferredBlockPlaceholder(block) {
2696
- this.visitAllNodes(block.children);
2697
- }
2698
- visitDeferredBlockError(block) {
2699
- this.visitAllNodes(block.children);
2700
- }
2701
- visitDeferredBlockLoading(block) {
2702
- this.visitAllNodes(block.children);
2703
- }
2704
- visitSwitchBlock(block) {
2705
- this.visitAst(block.expression);
2706
- this.visitAllNodes(block.cases);
2707
- }
2708
- visitSwitchBlockCase(block) {
2709
- block.expression && this.visitAst(block.expression);
2710
- this.visitAllNodes(block.children);
2711
- }
2712
- visitForLoopBlock(block) {
2713
- block.item.visit(this);
2714
- this.visitAllNodes(block.contextVariables);
2715
- this.visitAst(block.expression);
2716
- this.visitAllNodes(block.children);
2717
- block.empty?.visit(this);
2718
- }
2719
- visitForLoopBlockEmpty(block) {
2720
- this.visitAllNodes(block.children);
2721
- }
2722
- visitIfBlock(block) {
2723
- this.visitAllNodes(block.branches);
2724
- }
2725
- visitIfBlockBranch(block) {
2726
- block.expression && this.visitAst(block.expression);
2727
- block.expressionAlias?.visit(this);
2728
- this.visitAllNodes(block.children);
2729
- }
2730
- visitLetDeclaration(decl) {
2731
- this.visitAst(decl.value);
2732
- }
2733
- visitComponent(component) {
2734
- this.visitAllNodes(component.attributes);
2735
- this.visitAllNodes(component.inputs);
2736
- this.visitAllNodes(component.outputs);
2737
- this.visitAllNodes(component.directives);
2738
- this.visitAllNodes(component.references);
2739
- this.visitAllNodes(component.children);
2740
- }
2741
- visitDirective(directive) {
2742
- this.visitAllNodes(directive.attributes);
2743
- this.visitAllNodes(directive.inputs);
2744
- this.visitAllNodes(directive.outputs);
2745
- this.visitAllNodes(directive.references);
2568
+ this.visitAllTemplateNodes(template.variables);
2569
+ this.visitAllTemplateNodes(template.references);
2570
+ this.visitAllTemplateNodes(template.children);
2746
2571
  }
2747
2572
  getDiagnostics(template) {
2748
2573
  this.diagnostics = [];
2749
- this.visitAllNodes(template);
2574
+ this.visitAllTemplateNodes(template);
2750
2575
  return this.diagnostics;
2751
2576
  }
2752
2577
  };
2753
2578
 
2754
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/interpolated_signal_not_invoked/index.js
2579
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/interpolated_signal_not_invoked/index.js
2755
2580
  var SIGNAL_INSTANCE_PROPERTIES = /* @__PURE__ */ new Set(["set", "update", "asReadonly"]);
2756
2581
  var FUNCTION_INSTANCE_PROPERTIES = /* @__PURE__ */ new Set(["name", "length", "prototype"]);
2757
2582
  var InterpolatedSignalCheck = class extends TemplateCheckWithVisitor {
2758
2583
  code = ErrorCode.INTERPOLATED_SIGNAL_NOT_INVOKED;
2759
2584
  visitNode(ctx, component, node) {
2760
2585
  if (node instanceof Interpolation) {
2761
- return node.expressions.filter((item) => item instanceof PropertyRead2).flatMap((item) => buildDiagnosticForSignal(ctx, item, component));
2586
+ return node.expressions.map((item) => item instanceof PrefixNot ? item.expression : item).filter((item) => item instanceof PropertyRead2).flatMap((item) => buildDiagnosticForSignal(ctx, item, component));
2762
2587
  } else if (node instanceof TmplAstBoundAttribute) {
2763
2588
  const usedDirectives = ctx.templateTypeChecker.getUsedDirectives(component);
2764
2589
  if (usedDirectives !== null && usedDirectives.some((dir) => dir.inputs.getByBindingPropertyName(node.name) !== null)) {
2765
2590
  return [];
2766
2591
  }
2767
- if ((node.type === BindingType.Property || node.type === BindingType.Class || node.type === BindingType.Style || node.type === BindingType.Attribute || node.type === BindingType.Animation) && node.value instanceof ASTWithSource3 && node.value.ast instanceof PropertyRead2) {
2768
- return buildDiagnosticForSignal(ctx, node.value.ast, component);
2592
+ const nodeAst = isPropertyReadNodeAst(node);
2593
+ if ((node.type === BindingType.Property || node.type === BindingType.Class || node.type === BindingType.Style || node.type === BindingType.Attribute || node.type === BindingType.Animation) && nodeAst) {
2594
+ return buildDiagnosticForSignal(ctx, nodeAst, component);
2769
2595
  }
2770
2596
  }
2771
2597
  return [];
2772
2598
  }
2773
2599
  };
2600
+ function isPropertyReadNodeAst(node) {
2601
+ if (node.value instanceof ASTWithSource2 === false) {
2602
+ return void 0;
2603
+ }
2604
+ if (node.value.ast instanceof PrefixNot && node.value.ast.expression instanceof PropertyRead2) {
2605
+ return node.value.ast.expression;
2606
+ }
2607
+ if (node.value.ast instanceof PropertyRead2) {
2608
+ return node.value.ast;
2609
+ }
2610
+ return void 0;
2611
+ }
2774
2612
  function isFunctionInstanceProperty(name) {
2775
2613
  return FUNCTION_INSTANCE_PROPERTIES.has(name);
2776
2614
  }
@@ -2800,7 +2638,7 @@ var factory = {
2800
2638
  create: () => new InterpolatedSignalCheck()
2801
2639
  };
2802
2640
 
2803
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.js
2641
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.js
2804
2642
  import { TmplAstBoundEvent } from "@angular/compiler";
2805
2643
  var InvalidBananaInBoxCheck = class extends TemplateCheckWithVisitor {
2806
2644
  code = ErrorCode.INVALID_BANANA_IN_BOX;
@@ -2823,7 +2661,7 @@ var factory2 = {
2823
2661
  create: () => new InvalidBananaInBoxCheck()
2824
2662
  };
2825
2663
 
2826
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_control_flow_directive/index.js
2664
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_control_flow_directive/index.js
2827
2665
  import { TmplAstTemplate as TmplAstTemplate2 } from "@angular/compiler";
2828
2666
  var KNOWN_CONTROL_FLOW_DIRECTIVES = /* @__PURE__ */ new Map([
2829
2667
  ["ngIf", { directive: "NgIf", builtIn: "@if" }],
@@ -2865,7 +2703,7 @@ var factory3 = {
2865
2703
  }
2866
2704
  };
2867
2705
 
2868
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_ngforof_let/index.js
2706
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_ngforof_let/index.js
2869
2707
  import { TmplAstTemplate as TmplAstTemplate3 } from "@angular/compiler";
2870
2708
  var MissingNgForOfLetCheck = class extends TemplateCheckWithVisitor {
2871
2709
  code = ErrorCode.MISSING_NGFOROF_LET;
@@ -2895,7 +2733,7 @@ var factory4 = {
2895
2733
  create: () => new MissingNgForOfLetCheck()
2896
2734
  };
2897
2735
 
2898
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_structural_directive/index.js
2736
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/missing_structural_directive/index.js
2899
2737
  import { TmplAstTemplate as TmplAstTemplate4 } from "@angular/compiler";
2900
2738
  var KNOWN_CONTROL_FLOW_DIRECTIVES2 = /* @__PURE__ */ new Set([
2901
2739
  "ngIf",
@@ -2935,7 +2773,7 @@ var factory5 = {
2935
2773
  create: () => new MissingStructuralDirectiveCheck()
2936
2774
  };
2937
2775
 
2938
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.js
2776
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.js
2939
2777
  import { Binary } from "@angular/compiler";
2940
2778
  import ts19 from "typescript";
2941
2779
  var NullishCoalescingNotNullableCheck = class extends TemplateCheckWithVisitor {
@@ -2978,7 +2816,7 @@ var factory6 = {
2978
2816
  }
2979
2817
  };
2980
2818
 
2981
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/optional_chain_not_nullable/index.js
2819
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/optional_chain_not_nullable/index.js
2982
2820
  import { SafeCall, SafeKeyedRead, SafePropertyRead } from "@angular/compiler";
2983
2821
  import ts20 from "typescript";
2984
2822
  var OptionalChainNotNullableCheck = class extends TemplateCheckWithVisitor {
@@ -3022,7 +2860,7 @@ var factory7 = {
3022
2860
  }
3023
2861
  };
3024
2862
 
3025
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/skip_hydration_not_static/index.js
2863
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/skip_hydration_not_static/index.js
3026
2864
  import { TmplAstBoundAttribute as TmplAstBoundAttribute2, TmplAstTextAttribute } from "@angular/compiler";
3027
2865
  var NG_SKIP_HYDRATION_ATTR_NAME = "ngSkipHydration";
3028
2866
  var NgSkipHydrationSpec = class extends TemplateCheckWithVisitor {
@@ -3048,7 +2886,7 @@ var factory8 = {
3048
2886
  create: () => new NgSkipHydrationSpec()
3049
2887
  };
3050
2888
 
3051
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/suffix_not_supported/index.js
2889
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/suffix_not_supported/index.js
3052
2890
  import { TmplAstBoundAttribute as TmplAstBoundAttribute3 } from "@angular/compiler";
3053
2891
  var STYLE_SUFFIXES = ["px", "%", "em"];
3054
2892
  var SuffixNotSupportedCheck = class extends TemplateCheckWithVisitor {
@@ -3069,7 +2907,7 @@ var factory9 = {
3069
2907
  create: () => new SuffixNotSupportedCheck()
3070
2908
  };
3071
2909
 
3072
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/text_attribute_not_binding/index.js
2910
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/text_attribute_not_binding/index.js
3073
2911
  import { TmplAstTextAttribute as TmplAstTextAttribute2 } from "@angular/compiler";
3074
2912
  var TextAttributeNotBindingSpec = class extends TemplateCheckWithVisitor {
3075
2913
  code = ErrorCode.TEXT_ATTRIBUTE_NOT_BINDING;
@@ -3105,8 +2943,8 @@ var factory10 = {
3105
2943
  create: () => new TextAttributeNotBindingSpec()
3106
2944
  };
3107
2945
 
3108
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/uninvoked_function_in_event_binding/index.js
3109
- import { ASTWithSource as ASTWithSource4, Call, Chain, Conditional, ParsedEventType, PropertyRead as PropertyRead3, SafeCall as SafeCall2, SafePropertyRead as SafePropertyRead2, TmplAstBoundEvent as TmplAstBoundEvent2 } from "@angular/compiler";
2946
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/uninvoked_function_in_event_binding/index.js
2947
+ import { ASTWithSource as ASTWithSource3, Call, Chain, Conditional, ParsedEventType, PropertyRead as PropertyRead3, SafeCall as SafeCall2, SafePropertyRead as SafePropertyRead2, TmplAstBoundEvent as TmplAstBoundEvent2 } from "@angular/compiler";
3110
2948
  var UninvokedFunctionInEventBindingSpec = class extends TemplateCheckWithVisitor {
3111
2949
  code = ErrorCode.UNINVOKED_FUNCTION_IN_EVENT_BINDING;
3112
2950
  visitNode(ctx, component, node) {
@@ -3114,7 +2952,7 @@ var UninvokedFunctionInEventBindingSpec = class extends TemplateCheckWithVisitor
3114
2952
  return [];
3115
2953
  if (node.type !== ParsedEventType.Regular && node.type !== ParsedEventType.Animation)
3116
2954
  return [];
3117
- if (!(node.handler instanceof ASTWithSource4))
2955
+ if (!(node.handler instanceof ASTWithSource3))
3118
2956
  return [];
3119
2957
  const sourceExpressionText = node.handler.source || "";
3120
2958
  if (node.handler.ast instanceof Chain) {
@@ -3153,7 +2991,7 @@ var factory11 = {
3153
2991
  create: () => new UninvokedFunctionInEventBindingSpec()
3154
2992
  };
3155
2993
 
3156
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/unparenthesized_nullish_coalescing/index.js
2994
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/unparenthesized_nullish_coalescing/index.js
3157
2995
  import { Binary as Binary2 } from "@angular/compiler";
3158
2996
  var UnparenthesizedNullishCoalescing = class extends TemplateCheckWithVisitor {
3159
2997
  code = ErrorCode.UNPARENTHESIZED_NULLISH_COALESCING;
@@ -3183,8 +3021,8 @@ var factory12 = {
3183
3021
  create: () => new UnparenthesizedNullishCoalescing()
3184
3022
  };
3185
3023
 
3186
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/unused_let_declaration/index.js
3187
- import { AST, ASTWithSource as ASTWithSource5, TmplAstLetDeclaration } from "@angular/compiler";
3024
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/unused_let_declaration/index.js
3025
+ import { AST, ASTWithSource as ASTWithSource4, TmplAstLetDeclaration } from "@angular/compiler";
3188
3026
  var UnusedLetDeclarationCheck = class extends TemplateCheckWithVisitor {
3189
3027
  code = ErrorCode.UNUSED_LET_DECLARATION;
3190
3028
  analysis = /* @__PURE__ */ new Map();
@@ -3204,7 +3042,7 @@ var UnusedLetDeclarationCheck = class extends TemplateCheckWithVisitor {
3204
3042
  if (node instanceof TmplAstLetDeclaration) {
3205
3043
  this.getAnalysis(component).allLetDeclarations.add(node);
3206
3044
  } else if (node instanceof AST) {
3207
- const unwrappedNode = node instanceof ASTWithSource5 ? node.ast : node;
3045
+ const unwrappedNode = node instanceof ASTWithSource4 ? node.ast : node;
3208
3046
  const target = ctx.templateTypeChecker.getExpressionTarget(unwrappedNode, component);
3209
3047
  if (target !== null && target instanceof TmplAstLetDeclaration) {
3210
3048
  this.getAnalysis(component).usedLetDeclarations.add(target);
@@ -3225,7 +3063,7 @@ var factory13 = {
3225
3063
  create: () => new UnusedLetDeclarationCheck()
3226
3064
  };
3227
3065
 
3228
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/uninvoked_track_function/index.js
3066
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/uninvoked_track_function/index.js
3229
3067
  import { Call as Call2, PropertyRead as PropertyRead4, SafeCall as SafeCall3, SafePropertyRead as SafePropertyRead3, TmplAstForLoopBlock } from "@angular/compiler";
3230
3068
  var UninvokedTrackFunctionCheck = class extends TemplateCheckWithVisitor {
3231
3069
  code = ErrorCode.UNINVOKED_TRACK_FUNCTION;
@@ -3257,10 +3095,10 @@ var factory14 = {
3257
3095
  create: () => new UninvokedTrackFunctionCheck()
3258
3096
  };
3259
3097
 
3260
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.js
3098
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.js
3261
3099
  import ts21 from "typescript";
3262
3100
 
3263
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/api/src/public_options.js
3101
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/api/src/public_options.js
3264
3102
  var DiagnosticCategoryLabel;
3265
3103
  (function(DiagnosticCategoryLabel2) {
3266
3104
  DiagnosticCategoryLabel2["Warning"] = "warning";
@@ -3268,7 +3106,7 @@ var DiagnosticCategoryLabel;
3268
3106
  DiagnosticCategoryLabel2["Suppress"] = "suppress";
3269
3107
  })(DiagnosticCategoryLabel || (DiagnosticCategoryLabel = {}));
3270
3108
 
3271
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.js
3109
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.js
3272
3110
  var ExtendedTemplateCheckerImpl = class {
3273
3111
  partialCtx;
3274
3112
  templateChecks;
@@ -3322,7 +3160,7 @@ function assertNever(value) {
3322
3160
  ${value}`);
3323
3161
  }
3324
3162
 
3325
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/index.js
3163
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/index.js
3326
3164
  var ALL_DIAGNOSTIC_FACTORIES = [
3327
3165
  factory2,
3328
3166
  factory6,
@@ -3345,8 +3183,8 @@ var SUPPORTED_DIAGNOSTIC_NAMES = /* @__PURE__ */ new Set([
3345
3183
  ...ALL_DIAGNOSTIC_FACTORIES.map((factory15) => factory15.name)
3346
3184
  ]);
3347
3185
 
3348
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/template_semantics/src/template_semantics_checker.js
3349
- import { ASTWithSource as ASTWithSource6, ImplicitReceiver as ImplicitReceiver2, ParsedEventType as ParsedEventType2, RecursiveAstVisitor as RecursiveAstVisitor3, TmplAstBoundEvent as TmplAstBoundEvent3, TmplAstLetDeclaration as TmplAstLetDeclaration2, TmplAstRecursiveVisitor as TmplAstRecursiveVisitor2, TmplAstVariable as TmplAstVariable2 } from "@angular/compiler";
3186
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/template_semantics/src/template_semantics_checker.js
3187
+ import { ASTWithSource as ASTWithSource5, ImplicitReceiver as ImplicitReceiver2, ParsedEventType as ParsedEventType2, PropertyRead as PropertyRead5, RecursiveAstVisitor, TmplAstBoundEvent as TmplAstBoundEvent3, TmplAstLetDeclaration as TmplAstLetDeclaration2, TmplAstRecursiveVisitor, TmplAstVariable as TmplAstVariable2 } from "@angular/compiler";
3350
3188
  import ts22 from "typescript";
3351
3189
  var TemplateSemanticsCheckerImpl = class {
3352
3190
  templateTypeChecker;
@@ -3358,7 +3196,7 @@ var TemplateSemanticsCheckerImpl = class {
3358
3196
  return template !== null ? TemplateSemanticsVisitor.visit(template, component, this.templateTypeChecker) : [];
3359
3197
  }
3360
3198
  };
3361
- var TemplateSemanticsVisitor = class extends TmplAstRecursiveVisitor2 {
3199
+ var TemplateSemanticsVisitor = class extends TmplAstRecursiveVisitor {
3362
3200
  expressionVisitor;
3363
3201
  constructor(expressionVisitor) {
3364
3202
  super();
@@ -3376,7 +3214,7 @@ var TemplateSemanticsVisitor = class extends TmplAstRecursiveVisitor2 {
3376
3214
  event.handler.visit(this.expressionVisitor, event);
3377
3215
  }
3378
3216
  };
3379
- var ExpressionsSemanticsVisitor = class extends RecursiveAstVisitor3 {
3217
+ var ExpressionsSemanticsVisitor = class extends RecursiveAstVisitor {
3380
3218
  templateTypeChecker;
3381
3219
  component;
3382
3220
  diagnostics;
@@ -3386,9 +3224,12 @@ var ExpressionsSemanticsVisitor = class extends RecursiveAstVisitor3 {
3386
3224
  this.component = component;
3387
3225
  this.diagnostics = diagnostics;
3388
3226
  }
3389
- visitPropertyWrite(ast, context) {
3390
- super.visitPropertyWrite(ast, context);
3391
- this.checkForIllegalWriteInEventBinding(ast, context);
3227
+ visitBinary(ast, context) {
3228
+ if (ast.operation === "=" && ast.left instanceof PropertyRead5) {
3229
+ this.checkForIllegalWriteInEventBinding(ast.left, context);
3230
+ } else {
3231
+ super.visitBinary(ast, context);
3232
+ }
3392
3233
  }
3393
3234
  visitPropertyRead(ast, context) {
3394
3235
  super.visitPropertyRead(ast, context);
@@ -3438,10 +3279,10 @@ var ExpressionsSemanticsVisitor = class extends RecursiveAstVisitor3 {
3438
3279
  }
3439
3280
  };
3440
3281
  function unwrapAstWithSource(ast) {
3441
- return ast instanceof ASTWithSource6 ? ast.ast : ast;
3282
+ return ast instanceof ASTWithSource5 ? ast.ast : ast;
3442
3283
  }
3443
3284
 
3444
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/rules/initializer_api_usage_rule.js
3285
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/rules/initializer_api_usage_rule.js
3445
3286
  import ts23 from "typescript";
3446
3287
  var APIS_TO_CHECK = [
3447
3288
  INPUT_INITIALIZER_FN,
@@ -3493,7 +3334,7 @@ var InitializerApiUsageRule = class {
3493
3334
  }
3494
3335
  };
3495
3336
 
3496
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/rules/unused_standalone_imports_rule.js
3337
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/rules/unused_standalone_imports_rule.js
3497
3338
  import ts24 from "typescript";
3498
3339
  var UnusedStandaloneImportsRule = class {
3499
3340
  templateTypeChecker;
@@ -3551,7 +3392,7 @@ var UnusedStandaloneImportsRule = class {
3551
3392
  continue;
3552
3393
  }
3553
3394
  const pipeMeta = this.templateTypeChecker.getPipeMetadata(currentNode);
3554
- if (pipeMeta !== null && pipeMeta.isStandalone && !usedPipes.has(pipeMeta.name) && !this.isPotentialSharedReference(current, rawImports)) {
3395
+ if (pipeMeta !== null && pipeMeta.isStandalone && pipeMeta.name !== null && !usedPipes.has(pipeMeta.name) && !this.isPotentialSharedReference(current, rawImports)) {
3555
3396
  unused ??= [];
3556
3397
  unused.push(current);
3557
3398
  }
@@ -3584,7 +3425,7 @@ function closestNode(start, predicate) {
3584
3425
  return null;
3585
3426
  }
3586
3427
 
3587
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/source_file_validator.js
3428
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/validation/src/source_file_validator.js
3588
3429
  var SourceFileValidator = class {
3589
3430
  rules;
3590
3431
  constructor(reflector, importedSymbolsTracker, templateTypeChecker, typeCheckingConfig) {
@@ -3624,7 +3465,7 @@ var SourceFileValidator = class {
3624
3465
  }
3625
3466
  };
3626
3467
 
3627
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/feature_detection.js
3468
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/feature_detection.js
3628
3469
  import semver from "semver";
3629
3470
  function coreVersionSupportsFeature(coreVersion, minVersion) {
3630
3471
  if (coreVersion === `0.0.0-${"PLACEHOLDER"}`) {
@@ -3633,7 +3474,7 @@ function coreVersionSupportsFeature(coreVersion, minVersion) {
3633
3474
  return semver.satisfies(coreVersion, minVersion, { includePrerelease: true });
3634
3475
  }
3635
3476
 
3636
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.js
3477
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.js
3637
3478
  var CompilationTicketKind;
3638
3479
  (function(CompilationTicketKind2) {
3639
3480
  CompilationTicketKind2[CompilationTicketKind2["Fresh"] = 0] = "Fresh";
@@ -3718,6 +3559,7 @@ var NgCompiler = class {
3718
3559
  enableHmr;
3719
3560
  implicitStandaloneValue;
3720
3561
  enableSelectorless;
3562
+ emitDeclarationOnly;
3721
3563
  delegatingPerfRecorder;
3722
3564
  static fromTicket(ticket, adapter) {
3723
3565
  switch (ticket.kind) {
@@ -3747,6 +3589,7 @@ var NgCompiler = class {
3747
3589
  this.enableBlockSyntax = options["_enableBlockSyntax"] ?? true;
3748
3590
  this.enableLetSyntax = options["_enableLetSyntax"] ?? true;
3749
3591
  this.enableSelectorless = options["_enableSelectorless"] ?? false;
3592
+ this.emitDeclarationOnly = !!options.emitDeclarationOnly && !!options._experimentalAllowEmitDeclarationOnly;
3750
3593
  this.implicitStandaloneValue = this.angularCoreVersion === null || coreVersionSupportsFeature(this.angularCoreVersion, ">= 19.0.0");
3751
3594
  this.enableHmr = !!options["_enableHmr"];
3752
3595
  this.constructionDiagnostics.push(...this.adapter.constructionDiagnostics, ...verifyCompatibleTypeCheckOptions(this.options));
@@ -3941,7 +3784,7 @@ var NgCompiler = class {
3941
3784
  }
3942
3785
  const defaultImportTracker = new DefaultImportTracker();
3943
3786
  const before = [
3944
- ivyTransformFactory(compilation.traitCompiler, compilation.reflector, importRewriter, defaultImportTracker, compilation.localCompilationExtraImportsTracker, this.delegatingPerfRecorder, compilation.isCore, this.closureCompilerEnabled),
3787
+ ivyTransformFactory(compilation.traitCompiler, compilation.reflector, importRewriter, defaultImportTracker, compilation.localCompilationExtraImportsTracker, this.delegatingPerfRecorder, compilation.isCore, this.closureCompilerEnabled, this.emitDeclarationOnly),
3945
3788
  aliasTransformFactory(compilation.traitCompiler.exportStatements),
3946
3789
  defaultImportTracker.importPreservingTransformer()
3947
3790
  ];
@@ -3964,8 +3807,12 @@ var NgCompiler = class {
3964
3807
  };
3965
3808
  });
3966
3809
  }
3810
+ before.push(signalMetadataTransform(this.inputProgram));
3967
3811
  const afterDeclarations = [];
3968
- if (this.options.compilationMode !== "experimental-local" && compilation.dtsTransforms !== null) {
3812
+ if ((this.options.compilationMode !== "experimental-local" || this.emitDeclarationOnly) && compilation.dtsTransforms !== null) {
3813
+ if (this.emitDeclarationOnly) {
3814
+ afterDeclarations.push(...before);
3815
+ }
3969
3816
  afterDeclarations.push(declarationTransformFactory(compilation.dtsTransforms, compilation.reflector, compilation.refEmitter, importRewriter));
3970
3817
  }
3971
3818
  if (compilation.aliasingHost !== null && compilation.aliasingHost.aliasExportsInDts) {
@@ -4229,6 +4076,9 @@ var NgCompiler = class {
4229
4076
  break;
4230
4077
  }
4231
4078
  }
4079
+ if (this.emitDeclarationOnly) {
4080
+ compilationMode = CompilationMode.LOCAL;
4081
+ }
4232
4082
  const checker = this.inputProgram.getTypeChecker();
4233
4083
  const reflector = new TypeScriptReflectionHost(checker, compilationMode === CompilationMode.LOCAL);
4234
4084
  let refEmitter;
@@ -4267,8 +4117,10 @@ var NgCompiler = class {
4267
4117
  const ngModuleIndex = new NgModuleIndexImpl(metaReader, localMetaReader);
4268
4118
  const ngModuleScopeRegistry = new LocalModuleScopeRegistry(localMetaReader, metaReader, depScopeReader, refEmitter, aliasingHost);
4269
4119
  const standaloneScopeReader = new StandaloneComponentScopeReader(metaReader, ngModuleScopeRegistry, depScopeReader);
4120
+ const selectorlessScopeReader = new SelectorlessComponentScopeReader(metaReader, reflector);
4270
4121
  const scopeReader = new CompoundComponentScopeReader([
4271
4122
  ngModuleScopeRegistry,
4123
+ selectorlessScopeReader,
4272
4124
  standaloneScopeReader
4273
4125
  ]);
4274
4126
  const semanticDepGraphUpdater = this.incrementalCompilation.semanticDepGraphUpdater;
@@ -4310,13 +4162,13 @@ var NgCompiler = class {
4310
4162
  }
4311
4163
  const jitDeclarationRegistry = new JitDeclarationRegistry();
4312
4164
  const handlers = [
4313
- new ComponentDecoratorHandler(reflector, evaluator, metaRegistry, metaReader, scopeReader, this.adapter, ngModuleScopeRegistry, typeCheckScopeRegistry, resourceRegistry, isCore, strictCtorDeps, this.resourceManager, this.adapter.rootDirs, this.options.preserveWhitespaces || false, this.options.i18nUseExternalIds !== false, this.options.enableI18nLegacyMessageIdFormat !== false, this.usePoisonedData, this.options.i18nNormalizeLineEndingsInICUs === true, this.moduleResolver, this.cycleAnalyzer, cycleHandlingStrategy, refEmitter, referencesRegistry, this.incrementalCompilation.depGraph, injectableRegistry, semanticDepGraphUpdater, this.closureCompilerEnabled, this.delegatingPerfRecorder, hostDirectivesResolver, importTracker, supportTestBed, compilationMode, deferredSymbolsTracker, !!this.options.forbidOrphanComponents, this.enableBlockSyntax, this.enableLetSyntax, externalRuntimeStyles, localCompilationExtraImportsTracker, jitDeclarationRegistry, this.options.i18nPreserveWhitespaceForLegacyExtraction ?? true, !!this.options.strictStandalone, this.enableHmr, this.implicitStandaloneValue, typeCheckHostBindings, this.enableSelectorless),
4314
- new DirectiveDecoratorHandler(reflector, evaluator, metaRegistry, ngModuleScopeRegistry, metaReader, injectableRegistry, refEmitter, referencesRegistry, isCore, strictCtorDeps, semanticDepGraphUpdater, this.closureCompilerEnabled, this.delegatingPerfRecorder, importTracker, supportTestBed, typeCheckScopeRegistry, compilationMode, jitDeclarationRegistry, resourceRegistry, !!this.options.strictStandalone, this.implicitStandaloneValue, this.usePoisonedData, typeCheckHostBindings),
4165
+ new ComponentDecoratorHandler(reflector, evaluator, metaRegistry, metaReader, scopeReader, this.adapter, ngModuleScopeRegistry, typeCheckScopeRegistry, resourceRegistry, isCore, strictCtorDeps, this.resourceManager, this.adapter.rootDirs, this.options.preserveWhitespaces || false, this.options.i18nUseExternalIds !== false, this.options.enableI18nLegacyMessageIdFormat !== false, this.usePoisonedData, this.options.i18nNormalizeLineEndingsInICUs === true, this.moduleResolver, this.cycleAnalyzer, cycleHandlingStrategy, refEmitter, referencesRegistry, this.incrementalCompilation.depGraph, injectableRegistry, semanticDepGraphUpdater, this.closureCompilerEnabled, this.delegatingPerfRecorder, hostDirectivesResolver, importTracker, supportTestBed, compilationMode, deferredSymbolsTracker, !!this.options.forbidOrphanComponents, this.enableBlockSyntax, this.enableLetSyntax, externalRuntimeStyles, localCompilationExtraImportsTracker, jitDeclarationRegistry, this.options.i18nPreserveWhitespaceForLegacyExtraction ?? true, !!this.options.strictStandalone, this.enableHmr, this.implicitStandaloneValue, typeCheckHostBindings, this.enableSelectorless, this.emitDeclarationOnly),
4166
+ new DirectiveDecoratorHandler(reflector, evaluator, metaRegistry, ngModuleScopeRegistry, metaReader, injectableRegistry, refEmitter, referencesRegistry, isCore, strictCtorDeps, semanticDepGraphUpdater, this.closureCompilerEnabled, this.delegatingPerfRecorder, importTracker, supportTestBed, typeCheckScopeRegistry, compilationMode, jitDeclarationRegistry, resourceRegistry, !!this.options.strictStandalone, this.implicitStandaloneValue, this.usePoisonedData, typeCheckHostBindings, this.emitDeclarationOnly),
4315
4167
  new PipeDecoratorHandler(reflector, evaluator, metaRegistry, ngModuleScopeRegistry, injectableRegistry, isCore, this.delegatingPerfRecorder, supportTestBed, compilationMode, !!this.options.generateExtraImportsInLocalMode, !!this.options.strictStandalone, this.implicitStandaloneValue),
4316
4168
  new InjectableDecoratorHandler(reflector, evaluator, isCore, strictCtorDeps, injectableRegistry, this.delegatingPerfRecorder, supportTestBed, compilationMode),
4317
- new NgModuleDecoratorHandler(reflector, evaluator, metaReader, metaRegistry, ngModuleScopeRegistry, referencesRegistry, exportedProviderStatusResolver, semanticDepGraphUpdater, isCore, refEmitter, this.closureCompilerEnabled, this.options.onlyPublishPublicTypingsForNgModules ?? false, injectableRegistry, this.delegatingPerfRecorder, supportTestBed, supportJitMode, compilationMode, localCompilationExtraImportsTracker, jitDeclarationRegistry)
4169
+ new NgModuleDecoratorHandler(reflector, evaluator, metaReader, metaRegistry, ngModuleScopeRegistry, referencesRegistry, exportedProviderStatusResolver, semanticDepGraphUpdater, isCore, refEmitter, this.closureCompilerEnabled, this.options.onlyPublishPublicTypingsForNgModules ?? false, injectableRegistry, this.delegatingPerfRecorder, supportTestBed, supportJitMode, compilationMode, localCompilationExtraImportsTracker, jitDeclarationRegistry, this.emitDeclarationOnly)
4318
4170
  ];
4319
- const traitCompiler = new TraitCompiler(handlers, reflector, this.delegatingPerfRecorder, this.incrementalCompilation, this.options.compileNonExportedClasses !== false, compilationMode, dtsTransforms, semanticDepGraphUpdater, this.adapter);
4171
+ const traitCompiler = new TraitCompiler(handlers, reflector, this.delegatingPerfRecorder, this.incrementalCompilation, this.options.compileNonExportedClasses !== false, compilationMode, dtsTransforms, semanticDepGraphUpdater, this.adapter, this.emitDeclarationOnly);
4320
4172
  const notifyingDriver = new NotifyingProgramDriverWrapper(this.programDriver, (program) => {
4321
4173
  this.incrementalStrategy.setIncrementalState(this.incrementalCompilation.state, program);
4322
4174
  this.currentProgram = program;
@@ -4510,7 +4362,7 @@ function versionMapFromProgram(program, driver) {
4510
4362
  return versions;
4511
4363
  }
4512
4364
 
4513
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/host.js
4365
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/host.js
4514
4366
  import ts26 from "typescript";
4515
4367
  var DelegatingCompilerHost = class {
4516
4368
  delegate;
@@ -4684,7 +4536,7 @@ var NgCompilerHost = class extends DelegatingCompilerHost {
4684
4536
  }
4685
4537
  };
4686
4538
 
4687
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.js
4539
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.js
4688
4540
  var NgtscProgram = class {
4689
4541
  options;
4690
4542
  compiler;
@@ -4912,15 +4764,15 @@ function mergeEmitResults(emitResults) {
4912
4764
  return { diagnostics, emitSkipped, emittedFiles };
4913
4765
  }
4914
4766
 
4915
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/transformers/program.js
4767
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/program.js
4916
4768
  function createProgram({ rootNames, options, host, oldProgram }) {
4917
4769
  return new NgtscProgram(rootNames, options, host, oldProgram);
4918
4770
  }
4919
4771
 
4920
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/perform_compile.js
4772
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/perform_compile.js
4921
4773
  import ts29 from "typescript";
4922
4774
 
4923
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/transformers/util.js
4775
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/util.js
4924
4776
  import ts28 from "typescript";
4925
4777
  function createMessageDiagnostic(messageText) {
4926
4778
  return {
@@ -4934,7 +4786,7 @@ function createMessageDiagnostic(messageText) {
4934
4786
  };
4935
4787
  }
4936
4788
 
4937
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/perform_compile.js
4789
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/perform_compile.js
4938
4790
  var defaultFormatHost = {
4939
4791
  getCurrentDirectory: () => ts29.sys.getCurrentDirectory(),
4940
4792
  getCanonicalFileName: (fileName) => fileName,
@@ -5164,4 +5016,4 @@ export {
5164
5016
  * Use of this source code is governed by an MIT-style license that can be
5165
5017
  * found in the LICENSE file at https://angular.dev/license
5166
5018
  */
5167
- //# sourceMappingURL=chunk-ZWSVOOGU.js.map
5019
+ //# sourceMappingURL=chunk-OOYRM3V7.js.map