@angular/compiler-cli 16.2.0-next.4 → 16.2.0-rc.0

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 (48) hide show
  1. package/bundles/{chunk-GRJYX2PA.js → chunk-5GPIY4NW.js} +5 -5
  2. package/bundles/{chunk-WF3L5COT.js → chunk-CS2FNZXR.js} +774 -47
  3. package/bundles/chunk-CS2FNZXR.js.map +6 -0
  4. package/bundles/{chunk-TBUSSXUA.js → chunk-EC5K6QPP.js} +7 -7
  5. package/bundles/{chunk-SJLWUYXS.js → chunk-EMPTJWPY.js} +5 -7
  6. package/bundles/chunk-EMPTJWPY.js.map +6 -0
  7. package/bundles/{chunk-EKTJ7622.js → chunk-GYHDNUIK.js} +7 -7
  8. package/bundles/{chunk-7PCPPTTO.js → chunk-HJOPJLIM.js} +5 -5
  9. package/bundles/{chunk-IPC76KA7.js → chunk-LRT6BBZP.js} +8 -8
  10. package/bundles/{chunk-E72KZKRK.js → chunk-NFCNUCPF.js} +97 -97
  11. package/bundles/chunk-NFCNUCPF.js.map +6 -0
  12. package/bundles/{chunk-YZ3WOD5G.js → chunk-NYVNWJZI.js} +207 -111
  13. package/bundles/chunk-NYVNWJZI.js.map +6 -0
  14. package/bundles/{chunk-LYJKWJUC.js → chunk-SBDNBITT.js} +3 -3
  15. package/bundles/{chunk-DKWZY2MH.js → chunk-TU4LAK6J.js} +33 -31
  16. package/bundles/{chunk-DKWZY2MH.js.map → chunk-TU4LAK6J.js.map} +1 -1
  17. package/bundles/chunk-UHYH6BYB.js +12 -0
  18. package/bundles/chunk-UHYH6BYB.js.map +6 -0
  19. package/bundles/index.js +13 -13
  20. package/bundles/linker/babel/index.js +13 -13
  21. package/bundles/linker/index.js +5 -5
  22. package/bundles/ngcc/index.js +1 -1
  23. package/bundles/private/bazel.js +1 -1
  24. package/bundles/private/localize.js +3 -3
  25. package/bundles/private/migrations.js +7 -8
  26. package/bundles/private/tooling.js +4 -4
  27. package/bundles/src/bin/ng_xi18n.js +11 -11
  28. package/bundles/src/bin/ngc.js +9 -9
  29. package/bundles_metadata.json +1 -1
  30. package/package.json +2 -2
  31. package/src/ngtsc/annotations/component/src/handler.d.ts +8 -2
  32. package/src/ngtsc/annotations/component/src/metadata.d.ts +1 -1
  33. package/src/ngtsc/imports/index.d.ts +1 -0
  34. package/src/ngtsc/imports/src/deferred_symbol_tracker.d.ts +47 -0
  35. package/src/ngtsc/reflection/src/host.d.ts +4 -0
  36. package/src/ngtsc/reflection/src/typescript.d.ts +5 -0
  37. package/bundles/chunk-E72KZKRK.js.map +0 -6
  38. package/bundles/chunk-NIK4FIWB.js +0 -643
  39. package/bundles/chunk-NIK4FIWB.js.map +0 -6
  40. package/bundles/chunk-SJLWUYXS.js.map +0 -6
  41. package/bundles/chunk-WF3L5COT.js.map +0 -6
  42. package/bundles/chunk-YZ3WOD5G.js.map +0 -6
  43. /package/bundles/{chunk-GRJYX2PA.js.map → chunk-5GPIY4NW.js.map} +0 -0
  44. /package/bundles/{chunk-TBUSSXUA.js.map → chunk-EC5K6QPP.js.map} +0 -0
  45. /package/bundles/{chunk-EKTJ7622.js.map → chunk-GYHDNUIK.js.map} +0 -0
  46. /package/bundles/{chunk-7PCPPTTO.js.map → chunk-HJOPJLIM.js.map} +0 -0
  47. /package/bundles/{chunk-IPC76KA7.js.map → chunk-LRT6BBZP.js.map} +0 -0
  48. /package/bundles/{chunk-LYJKWJUC.js.map → chunk-SBDNBITT.js.map} +0 -0
@@ -2,48 +2,46 @@
2
2
  import {createRequire as __cjsCompatRequire} from 'module';
3
3
  const require = __cjsCompatRequire(import.meta.url);
4
4
 
5
- import {
6
- ClassMemberKind,
7
- filterToMembersWithDecorator,
8
- isNamedClassDeclaration,
9
- reflectObjectLiteral,
10
- reflectTypeEntityToDeclaration,
11
- typeNodeToValueExpr
12
- } from "./chunk-NIK4FIWB.js";
13
5
  import {
14
6
  ImportManager,
15
7
  translateExpression,
16
8
  translateStatement,
17
9
  translateType
18
- } from "./chunk-IPC76KA7.js";
10
+ } from "./chunk-LRT6BBZP.js";
19
11
  import {
12
+ ClassMemberKind,
20
13
  ErrorCode,
21
14
  FatalDiagnosticError,
22
15
  ImportFlags,
23
16
  Reference,
24
17
  assertSuccessfulReferenceEmit,
25
18
  attachDefaultImportDeclaration,
19
+ filterToMembersWithDecorator,
26
20
  getDefaultImportDeclaration,
27
21
  getSourceFile,
28
22
  identifierOfNode,
29
23
  isDeclaration,
30
24
  isFromDtsFile,
25
+ isNamedClassDeclaration,
31
26
  makeDiagnostic,
32
27
  makeRelatedInformation,
33
28
  nodeDebugInfo,
34
- nodeNameForError
35
- } from "./chunk-WF3L5COT.js";
29
+ nodeNameForError,
30
+ reflectObjectLiteral,
31
+ reflectTypeEntityToDeclaration,
32
+ typeNodeToValueExpr
33
+ } from "./chunk-CS2FNZXR.js";
36
34
  import {
37
35
  PerfEvent,
38
36
  PerfPhase
39
- } from "./chunk-7PCPPTTO.js";
37
+ } from "./chunk-HJOPJLIM.js";
40
38
  import {
41
39
  absoluteFrom,
42
40
  absoluteFromSourceFile,
43
41
  relative
44
- } from "./chunk-TBUSSXUA.js";
42
+ } from "./chunk-EC5K6QPP.js";
45
43
 
46
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/util.mjs
44
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/util.mjs
47
45
  import { ExternalExpr, ParseLocation, ParseSourceFile, ParseSourceSpan, ReadPropExpr, WrappedNodeExpr } from "@angular/compiler";
48
46
  import ts from "typescript";
49
47
  function valueReferenceToExpression(valueRef) {
@@ -284,7 +282,7 @@ function isAbstractClassDeclaration(clazz) {
284
282
  return ts.canHaveModifiers(clazz) && clazz.modifiers !== void 0 ? clazz.modifiers.some((mod) => mod.kind === ts.SyntaxKind.AbstractKeyword) : false;
285
283
  }
286
284
 
287
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/dynamic.mjs
285
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/dynamic.mjs
288
286
  var DynamicValue = class {
289
287
  constructor(node, reason, code) {
290
288
  this.node = node;
@@ -374,10 +372,10 @@ var DynamicValue = class {
374
372
  }
375
373
  };
376
374
 
377
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter.mjs
375
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter.mjs
378
376
  import ts2 from "typescript";
379
377
 
380
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/result.mjs
378
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/result.mjs
381
379
  var ResolvedModule = class {
382
380
  constructor(exports, evaluate) {
383
381
  this.exports = exports;
@@ -407,7 +405,7 @@ var EnumValue = class {
407
405
  var KnownFn = class {
408
406
  };
409
407
 
410
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/builtin.mjs
408
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/builtin.mjs
411
409
  var ArraySliceBuiltinFn = class extends KnownFn {
412
410
  constructor(lhs) {
413
411
  super();
@@ -459,14 +457,14 @@ var StringConcatBuiltinFn = class extends KnownFn {
459
457
  }
460
458
  };
461
459
 
462
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/synthetic.mjs
460
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/synthetic.mjs
463
461
  var SyntheticValue = class {
464
462
  constructor(value) {
465
463
  this.value = value;
466
464
  }
467
465
  };
468
466
 
469
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter.mjs
467
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter.mjs
470
468
  function literalBinaryOp(op) {
471
469
  return { op, literal: true };
472
470
  }
@@ -1047,7 +1045,7 @@ function getOriginalKeywordKind(identifier) {
1047
1045
  return typeof ts2.identifierToKeywordKind === "function" ? ts2.identifierToKeywordKind(identifier) : identifier.originalKeywordKind;
1048
1046
  }
1049
1047
 
1050
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interface.mjs
1048
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/interface.mjs
1051
1049
  var PartialEvaluator = class {
1052
1050
  constructor(host, checker, dependencyTracker) {
1053
1051
  this.host = host;
@@ -1067,7 +1065,7 @@ var PartialEvaluator = class {
1067
1065
  }
1068
1066
  };
1069
1067
 
1070
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/diagnostics.mjs
1068
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/diagnostics.mjs
1071
1069
  import ts3 from "typescript";
1072
1070
  function describeResolvedType(value, maxDepth = 1) {
1073
1071
  var _a, _b;
@@ -1197,7 +1195,7 @@ function getContainerNode(node) {
1197
1195
  return node.getSourceFile();
1198
1196
  }
1199
1197
 
1200
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/di.mjs
1198
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/di.mjs
1201
1199
  import { LiteralExpr, WrappedNodeExpr as WrappedNodeExpr2 } from "@angular/compiler";
1202
1200
  import ts4 from "typescript";
1203
1201
  function getConstructorDependencies(clazz, reflector, isCore) {
@@ -1341,10 +1339,10 @@ function createUnsuitableInjectionTokenError(clazz, error) {
1341
1339
  return new FatalDiagnosticError(ErrorCode.PARAM_MISSING_TOKEN, param.nameNode, chain, hints);
1342
1340
  }
1343
1341
 
1344
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/diagnostics.mjs
1342
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/diagnostics.mjs
1345
1343
  import ts7 from "typescript";
1346
1344
 
1347
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/api.mjs
1345
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/api.mjs
1348
1346
  var MetaKind;
1349
1347
  (function(MetaKind2) {
1350
1348
  MetaKind2[MetaKind2["Directive"] = 0] = "Directive";
@@ -1357,10 +1355,10 @@ var MatchSource;
1357
1355
  MatchSource2[MatchSource2["HostDirective"] = 1] = "HostDirective";
1358
1356
  })(MatchSource || (MatchSource = {}));
1359
1357
 
1360
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/dts.mjs
1358
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/dts.mjs
1361
1359
  import ts6 from "typescript";
1362
1360
 
1363
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/property_mapping.mjs
1361
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/property_mapping.mjs
1364
1362
  var ClassPropertyMapping = class {
1365
1363
  constructor(forwardMap) {
1366
1364
  this.forwardMap = forwardMap;
@@ -1438,7 +1436,7 @@ function reverseMapFromForwardMap(forwardMap) {
1438
1436
  return reverseMap;
1439
1437
  }
1440
1438
 
1441
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/util.mjs
1439
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/util.mjs
1442
1440
  import ts5 from "typescript";
1443
1441
  function extractReferencesFromType(checker, def, bestGuessOwningModule) {
1444
1442
  if (!ts5.isTupleTypeNode(def)) {
@@ -1623,7 +1621,7 @@ function hasInjectableFields(clazz, host) {
1623
1621
  return members.some(({ isStatic, name }) => isStatic && (name === "\u0275prov" || name === "\u0275fac"));
1624
1622
  }
1625
1623
 
1626
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/dts.mjs
1624
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/dts.mjs
1627
1625
  var DtsMetadataReader = class {
1628
1626
  constructor(checker, reflector) {
1629
1627
  this.checker = checker;
@@ -1798,7 +1796,7 @@ function readHostDirectivesType(checker, type, bestGuessOwningModule) {
1798
1796
  return result.length > 0 ? result : null;
1799
1797
  }
1800
1798
 
1801
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/inheritance.mjs
1799
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/inheritance.mjs
1802
1800
  function flattenInheritedDirectiveMetadata(reader, dir) {
1803
1801
  const topMeta = reader.getDirectiveMetadata(dir);
1804
1802
  if (topMeta === null) {
@@ -1856,7 +1854,7 @@ function flattenInheritedDirectiveMetadata(reader, dir) {
1856
1854
  };
1857
1855
  }
1858
1856
 
1859
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/registry.mjs
1857
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/registry.mjs
1860
1858
  var LocalMetadataRegistry = class {
1861
1859
  constructor() {
1862
1860
  this.directives = /* @__PURE__ */ new Map();
@@ -1913,7 +1911,7 @@ var CompoundMetadataRegistry = class {
1913
1911
  }
1914
1912
  };
1915
1913
 
1916
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/resource_registry.mjs
1914
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/resource_registry.mjs
1917
1915
  var ResourceRegistry = class {
1918
1916
  constructor() {
1919
1917
  this.externalTemplateToComponentsMap = /* @__PURE__ */ new Map();
@@ -1978,7 +1976,7 @@ var ResourceRegistry = class {
1978
1976
  }
1979
1977
  };
1980
1978
 
1981
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/providers.mjs
1979
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/providers.mjs
1982
1980
  var ExportedProviderStatusResolver = class {
1983
1981
  constructor(metaReader) {
1984
1982
  this.metaReader = metaReader;
@@ -2022,7 +2020,7 @@ var ExportedProviderStatusResolver = class {
2022
2020
  }
2023
2021
  };
2024
2022
 
2025
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/host_directives_resolver.mjs
2023
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/metadata/src/host_directives_resolver.mjs
2026
2024
  var EMPTY_ARRAY = [];
2027
2025
  var HostDirectivesResolver = class {
2028
2026
  constructor(metaReader) {
@@ -2084,7 +2082,7 @@ function resolveOutput(bindingName) {
2084
2082
  return bindingName;
2085
2083
  }
2086
2084
 
2087
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/diagnostics.mjs
2085
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/diagnostics.mjs
2088
2086
  function makeDuplicateDeclarationError(node, data, kind) {
2089
2087
  const context = [];
2090
2088
  for (const decl of data) {
@@ -2280,7 +2278,7 @@ function getInheritedUndecoratedCtorDiagnostic(node, baseClass, kind) {
2280
2278
  return makeDiagnostic(ErrorCode.DIRECTIVE_INHERITS_UNDECORATED_CTOR, node.name, `The ${kind.toLowerCase()} ${node.name.text} inherits its constructor from ${baseClassName}, but the latter does not have an Angular decorator of its own. Dependency injection will not be able to resolve the parameters of ${baseClassName}'s constructor. Either add a @${baseNeedsDecorator} decorator to ${baseClassName}, or add an explicit constructor to ${node.name.text}.`);
2281
2279
  }
2282
2280
 
2283
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/evaluation.mjs
2281
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/evaluation.mjs
2284
2282
  import ts8 from "typescript";
2285
2283
  function resolveEnumValue(evaluator, metadata, field, enumSymbolName) {
2286
2284
  let resolved = null;
@@ -2313,7 +2311,7 @@ function resolveLiteral(decorator, literalCache) {
2313
2311
  return meta;
2314
2312
  }
2315
2313
 
2316
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/factory.mjs
2314
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/factory.mjs
2317
2315
  import { compileDeclareFactoryFunction, compileFactoryFunction } from "@angular/compiler";
2318
2316
  function compileNgFactoryDefField(metadata) {
2319
2317
  const res = compileFactoryFunction(metadata);
@@ -2324,7 +2322,7 @@ function compileDeclareFactory(metadata) {
2324
2322
  return { name: "\u0275fac", initializer: res.expression, statements: res.statements, type: res.type };
2325
2323
  }
2326
2324
 
2327
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/injectable_registry.mjs
2325
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/injectable_registry.mjs
2328
2326
  var InjectableClassRegistry = class {
2329
2327
  constructor(host, isCore) {
2330
2328
  this.host = host;
@@ -2350,7 +2348,7 @@ var InjectableClassRegistry = class {
2350
2348
  }
2351
2349
  };
2352
2350
 
2353
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/metadata.mjs
2351
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/metadata.mjs
2354
2352
  import { FunctionExpr, LiteralArrayExpr, LiteralExpr as LiteralExpr2, literalMap, ReturnStatement, WrappedNodeExpr as WrappedNodeExpr3 } from "@angular/compiler";
2355
2353
  import ts9 from "typescript";
2356
2354
  function extractClassMetadata(clazz, reflection, isCore, annotateForClosureCompiler, angularDecoratorTransform = (dec) => dec) {
@@ -2437,13 +2435,13 @@ function removeIdentifierReferences(node, name) {
2437
2435
  return result.transformed[0];
2438
2436
  }
2439
2437
 
2440
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/references_registry.mjs
2438
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/references_registry.mjs
2441
2439
  var NoopReferencesRegistry = class {
2442
2440
  add(source, ...references) {
2443
2441
  }
2444
2442
  };
2445
2443
 
2446
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/schema.mjs
2444
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/schema.mjs
2447
2445
  import { CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from "@angular/compiler";
2448
2446
  function extractSchemas(rawExpr, evaluator, context) {
2449
2447
  const schemas = [];
@@ -2473,7 +2471,7 @@ function extractSchemas(rawExpr, evaluator, context) {
2473
2471
  return schemas;
2474
2472
  }
2475
2473
 
2476
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/input_transforms.mjs
2474
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/common/src/input_transforms.mjs
2477
2475
  import { outputAst } from "@angular/compiler";
2478
2476
  function compileInputTransformFields(inputs) {
2479
2477
  const extraFields = [];
@@ -2490,11 +2488,11 @@ function compileInputTransformFields(inputs) {
2490
2488
  return extraFields;
2491
2489
  }
2492
2490
 
2493
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/handler.mjs
2491
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/handler.mjs
2494
2492
  import { compileClassMetadata as compileClassMetadata3, compileComponentFromMetadata, compileDeclareClassMetadata as compileDeclareClassMetadata3, compileDeclareComponentFromMetadata, CssSelector as CssSelector2, DEFAULT_INTERPOLATION_CONFIG as DEFAULT_INTERPOLATION_CONFIG2, DomElementSchemaRegistry, FactoryTarget as FactoryTarget3, makeBindingParser as makeBindingParser2, R3TargetBinder, R3TemplateDependencyKind, SelectorMatcher as SelectorMatcher2, ViewEncapsulation, WrappedNodeExpr as WrappedNodeExpr7 } from "@angular/compiler";
2495
2493
  import ts24 from "typescript";
2496
2494
 
2497
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/api.mjs
2495
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/api.mjs
2498
2496
  import ts10 from "typescript";
2499
2497
  var SemanticSymbol = class {
2500
2498
  constructor(decl) {
@@ -2510,7 +2508,7 @@ function getSymbolIdentifier(decl) {
2510
2508
  return decl.name.text;
2511
2509
  }
2512
2510
 
2513
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/graph.mjs
2511
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/graph.mjs
2514
2512
  import { ExternalExpr as ExternalExpr2 } from "@angular/compiler";
2515
2513
  var OpaqueSymbol = class extends SemanticSymbol {
2516
2514
  isPublicApiAffected() {
@@ -2653,10 +2651,10 @@ function getImportPath(expr) {
2653
2651
  }
2654
2652
  }
2655
2653
 
2656
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs
2654
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs
2657
2655
  import ts11 from "typescript";
2658
2656
 
2659
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/util.mjs
2657
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/util.mjs
2660
2658
  function isSymbolEqual(a, b) {
2661
2659
  if (a.decl === b.decl) {
2662
2660
  return true;
@@ -2706,7 +2704,7 @@ function isSetEqual(a, b, equalityTester = referenceEquality) {
2706
2704
  return true;
2707
2705
  }
2708
2706
 
2709
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs
2707
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs
2710
2708
  function extractSemanticTypeParameters(node) {
2711
2709
  if (!ts11.isClassDeclaration(node) || node.typeParameters === void 0) {
2712
2710
  return null;
@@ -2726,14 +2724,14 @@ function isTypeParameterEqual(a, b) {
2726
2724
  return a.hasGenericTypeBound === b.hasGenericTypeBound;
2727
2725
  }
2728
2726
 
2729
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/api.mjs
2727
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/api.mjs
2730
2728
  var ComponentScopeKind;
2731
2729
  (function(ComponentScopeKind2) {
2732
2730
  ComponentScopeKind2[ComponentScopeKind2["NgModule"] = 0] = "NgModule";
2733
2731
  ComponentScopeKind2[ComponentScopeKind2["Standalone"] = 1] = "Standalone";
2734
2732
  })(ComponentScopeKind || (ComponentScopeKind = {}));
2735
2733
 
2736
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/component_scope.mjs
2734
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/component_scope.mjs
2737
2735
  var CompoundComponentScopeReader = class {
2738
2736
  constructor(readers) {
2739
2737
  this.readers = readers;
@@ -2758,7 +2756,7 @@ var CompoundComponentScopeReader = class {
2758
2756
  }
2759
2757
  };
2760
2758
 
2761
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/dependency.mjs
2759
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/dependency.mjs
2762
2760
  var MetadataDtsModuleScopeResolver = class {
2763
2761
  constructor(dtsMetaReader, aliasingHost) {
2764
2762
  this.dtsMetaReader = dtsMetaReader;
@@ -2834,11 +2832,11 @@ var MetadataDtsModuleScopeResolver = class {
2834
2832
  }
2835
2833
  };
2836
2834
 
2837
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/local.mjs
2835
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/local.mjs
2838
2836
  import { ExternalExpr as ExternalExpr3 } from "@angular/compiler";
2839
2837
  import ts12 from "typescript";
2840
2838
 
2841
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/util.mjs
2839
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/util.mjs
2842
2840
  function getDiagnosticNode(ref, rawExpr) {
2843
2841
  return rawExpr !== null ? ref.getOriginForDiagnostics(rawExpr) : ref.node.name;
2844
2842
  }
@@ -2861,7 +2859,7 @@ function makeUnknownComponentImportDiagnostic(ref, rawExpr) {
2861
2859
  return makeDiagnostic(ErrorCode.COMPONENT_UNKNOWN_IMPORT, getDiagnosticNode(ref, rawExpr), `Component imports must be standalone components, directives, pipes, or must be NgModules.`);
2862
2860
  }
2863
2861
 
2864
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/local.mjs
2862
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/local.mjs
2865
2863
  var LocalModuleScopeRegistry = class {
2866
2864
  constructor(localReader, fullReader, dependencyScopeReader, refEmitter, aliasingHost) {
2867
2865
  this.localReader = localReader;
@@ -3200,7 +3198,7 @@ function reexportCollision(module, refA, refB) {
3200
3198
  ]);
3201
3199
  }
3202
3200
 
3203
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/typecheck.mjs
3201
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/typecheck.mjs
3204
3202
  import { CssSelector, SelectorMatcher } from "@angular/compiler";
3205
3203
  import ts13 from "typescript";
3206
3204
  var TypeCheckScopeRegistry = class {
@@ -3269,7 +3267,7 @@ var TypeCheckScopeRegistry = class {
3269
3267
  }
3270
3268
  };
3271
3269
 
3272
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/api.mjs
3270
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/api.mjs
3273
3271
  var CompilationMode;
3274
3272
  (function(CompilationMode2) {
3275
3273
  CompilationMode2[CompilationMode2["FULL"] = 0] = "FULL";
@@ -3283,7 +3281,7 @@ var HandlerPrecedence;
3283
3281
  HandlerPrecedence2[HandlerPrecedence2["WEAK"] = 2] = "WEAK";
3284
3282
  })(HandlerPrecedence || (HandlerPrecedence = {}));
3285
3283
 
3286
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/alias.mjs
3284
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/alias.mjs
3287
3285
  import ts14 from "typescript";
3288
3286
  function aliasTransformFactory(exportStatements) {
3289
3287
  return () => {
@@ -3306,10 +3304,10 @@ function aliasTransformFactory(exportStatements) {
3306
3304
  };
3307
3305
  }
3308
3306
 
3309
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/compilation.mjs
3307
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/compilation.mjs
3310
3308
  import ts15 from "typescript";
3311
3309
 
3312
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/trait.mjs
3310
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/trait.mjs
3313
3311
  var TraitState;
3314
3312
  (function(TraitState2) {
3315
3313
  TraitState2[TraitState2["Pending"] = 0] = "Pending";
@@ -3366,7 +3364,7 @@ var TraitImpl = class {
3366
3364
  }
3367
3365
  };
3368
3366
 
3369
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/compilation.mjs
3367
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/compilation.mjs
3370
3368
  var TraitCompiler = class {
3371
3369
  constructor(handlers, reflector, perf, incrementalBuild, compileNonExportedClasses, compilationMode, dtsTransforms, semanticDepGraphUpdater, sourceFileTypeIdentifier) {
3372
3370
  this.handlers = handlers;
@@ -3814,10 +3812,10 @@ function containsErrors(diagnostics) {
3814
3812
  return diagnostics !== null && diagnostics.some((diag) => diag.category === ts15.DiagnosticCategory.Error);
3815
3813
  }
3816
3814
 
3817
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/declaration.mjs
3815
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/declaration.mjs
3818
3816
  import ts17 from "typescript";
3819
3817
 
3820
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/utils.mjs
3818
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/utils.mjs
3821
3819
  import ts16 from "typescript";
3822
3820
  function addImports(importManager, sf, extraStatements = []) {
3823
3821
  const addedImports = importManager.getAllImports(sf.fileName).map((i) => {
@@ -3853,7 +3851,7 @@ function isImportStatement(stmt) {
3853
3851
  return ts16.isImportDeclaration(stmt) || ts16.isImportEqualsDeclaration(stmt) || ts16.isNamespaceImport(stmt);
3854
3852
  }
3855
3853
 
3856
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/declaration.mjs
3854
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/declaration.mjs
3857
3855
  var DtsTransformRegistry = class {
3858
3856
  constructor() {
3859
3857
  this.ivyDeclarationTransforms = /* @__PURE__ */ new Map();
@@ -4000,11 +3998,11 @@ function markForEmitAsSingleLine(node) {
4000
3998
  ts17.forEachChild(node, markForEmitAsSingleLine);
4001
3999
  }
4002
4000
 
4003
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/transform.mjs
4001
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/transform.mjs
4004
4002
  import { ConstantPool } from "@angular/compiler";
4005
4003
  import ts19 from "typescript";
4006
4004
 
4007
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/util/src/visitor.mjs
4005
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/util/src/visitor.mjs
4008
4006
  import ts18 from "typescript";
4009
4007
  function visit(node, visitor, context) {
4010
4008
  return visitor._visit(node, context);
@@ -4065,7 +4063,7 @@ var Visitor = class {
4065
4063
  }
4066
4064
  };
4067
4065
 
4068
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/transform.mjs
4066
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/transform/src/transform.mjs
4069
4067
  var NO_DECORATORS = /* @__PURE__ */ new Set();
4070
4068
  var CLOSURE_FILE_OVERVIEW_REGEXP = /\s+@fileoverview\s+/i;
4071
4069
  function ivyTransformFactory(compilation, reflector, importRewriter, defaultImportTracker, perf, isCore, isClosureCompilerEnabled) {
@@ -4276,10 +4274,10 @@ function nodeArrayFromDecoratorsArray(decorators) {
4276
4274
  return array;
4277
4275
  }
4278
4276
 
4279
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/handler.mjs
4277
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/handler.mjs
4280
4278
  import { compileClassMetadata, compileDeclareClassMetadata, compileDeclareDirectiveFromMetadata, compileDirectiveFromMetadata, FactoryTarget, makeBindingParser, WrappedNodeExpr as WrappedNodeExpr5 } from "@angular/compiler";
4281
4279
 
4282
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/shared.mjs
4280
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/shared.mjs
4283
4281
  import { createMayBeForwardRefExpression, emitDistinctChangesOnlyDefaultValue, ExternalExpr as ExternalExpr4, getSafePropertyAccessString, parseHostBindings, verifyHostBindings, WrappedNodeExpr as WrappedNodeExpr4 } from "@angular/compiler";
4284
4282
  import ts20 from "typescript";
4285
4283
  var EMPTY_OBJECT = {};
@@ -4843,7 +4841,7 @@ function toR3InputMetadata(mapping) {
4843
4841
  };
4844
4842
  }
4845
4843
 
4846
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/symbol.mjs
4844
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/symbol.mjs
4847
4845
  var DirectiveSymbol = class extends SemanticSymbol {
4848
4846
  constructor(decl, selector, inputs, outputs, exportAs, typeCheckMeta, typeParameters) {
4849
4847
  super(decl);
@@ -4923,7 +4921,7 @@ function isBaseClassEqual(current, previous) {
4923
4921
  return isSymbolEqual(current, previous);
4924
4922
  }
4925
4923
 
4926
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/handler.mjs
4924
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/directive/src/handler.mjs
4927
4925
  var FIELD_DECORATORS = [
4928
4926
  "Input",
4929
4927
  "Output",
@@ -5094,11 +5092,11 @@ var DirectiveDecoratorHandler = class {
5094
5092
  }
5095
5093
  };
5096
5094
 
5097
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/handler.mjs
5095
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/handler.mjs
5098
5096
  import { compileClassMetadata as compileClassMetadata2, compileDeclareClassMetadata as compileDeclareClassMetadata2, compileDeclareInjectorFromMetadata, compileDeclareNgModuleFromMetadata, compileInjector, compileNgModule, ExternalExpr as ExternalExpr5, FactoryTarget as FactoryTarget2, FunctionExpr as FunctionExpr2, InvokeFunctionExpr, LiteralArrayExpr as LiteralArrayExpr2, R3Identifiers, R3NgModuleMetadataKind, R3SelectorScopeMode, ReturnStatement as ReturnStatement2, WrappedNodeExpr as WrappedNodeExpr6 } from "@angular/compiler";
5099
5097
  import ts22 from "typescript";
5100
5098
 
5101
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/module_with_providers.mjs
5099
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/module_with_providers.mjs
5102
5100
  import ts21 from "typescript";
5103
5101
  function createModuleWithProvidersResolver(reflector, isCore) {
5104
5102
  function _reflectModuleFromTypeParam(type, node) {
@@ -5165,7 +5163,7 @@ function isResolvedModuleWithProviders(sv) {
5165
5163
  return typeof sv.value === "object" && sv.value != null && sv.value.hasOwnProperty("ngModule") && sv.value.hasOwnProperty("mwpCall");
5166
5164
  }
5167
5165
 
5168
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/handler.mjs
5166
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/ng_module/src/handler.mjs
5169
5167
  var NgModuleSymbol = class extends SemanticSymbol {
5170
5168
  constructor(decl, hasProviders) {
5171
5169
  super(decl);
@@ -5718,7 +5716,7 @@ function isSyntheticReference(ref) {
5718
5716
  return ref.synthetic;
5719
5717
  }
5720
5718
 
5721
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/diagnostics.mjs
5719
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/diagnostics.mjs
5722
5720
  function makeCyclicImportInfo(ref, type, cycle) {
5723
5721
  const name = ref.debugName || "(unknown)";
5724
5722
  const path = cycle.getPath().map((sf) => sf.fileName).join(" -> ");
@@ -5741,7 +5739,7 @@ function checkCustomElementSelectorForErrors(selector) {
5741
5739
  return null;
5742
5740
  }
5743
5741
 
5744
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/resources.mjs
5742
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/resources.mjs
5745
5743
  import { DEFAULT_INTERPOLATION_CONFIG, InterpolationConfig, ParseSourceFile as ParseSourceFile2, parseTemplate } from "@angular/compiler";
5746
5744
  import ts23 from "typescript";
5747
5745
  function getTemplateDeclarationNodeForError(declaration) {
@@ -6056,7 +6054,7 @@ function _extractTemplateStyleUrls(template) {
6056
6054
  return template.styleUrls.map((url) => ({ url, source: 1, nodeForError }));
6057
6055
  }
6058
6056
 
6059
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/symbol.mjs
6057
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/symbol.mjs
6060
6058
  var ComponentSymbol = class extends DirectiveSymbol {
6061
6059
  constructor() {
6062
6060
  super(...arguments);
@@ -6091,7 +6089,7 @@ var ComponentSymbol = class extends DirectiveSymbol {
6091
6089
  }
6092
6090
  };
6093
6091
 
6094
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/util.mjs
6092
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/util.mjs
6095
6093
  function collectAnimationNames(value, animationTriggerNames) {
6096
6094
  if (value instanceof Map) {
6097
6095
  const name = value.get("name");
@@ -6167,10 +6165,12 @@ function isLikelyModuleWithProviders(value) {
6167
6165
  return false;
6168
6166
  }
6169
6167
 
6170
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/handler.mjs
6168
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/component/src/handler.mjs
6171
6169
  var EMPTY_ARRAY2 = [];
6170
+ var isUsedDirective = (decl) => decl.kind === R3TemplateDependencyKind.Directive;
6171
+ var isUsedPipe = (decl) => decl.kind === R3TemplateDependencyKind.Pipe;
6172
6172
  var ComponentDecoratorHandler = class {
6173
- constructor(reflector, evaluator, metaRegistry, metaReader, scopeReader, dtsScopeReader, scopeRegistry, typeCheckScopeRegistry, resourceRegistry, isCore, strictCtorDeps, resourceLoader, rootDirs, defaultPreserveWhitespaces, i18nUseExternalIds, enableI18nLegacyMessageIdFormat, usePoisonedData, i18nNormalizeLineEndingsInICUs, enabledBlockTypes, moduleResolver, cycleAnalyzer, cycleHandlingStrategy, refEmitter, referencesRegistry, depTracker, injectableRegistry, semanticDepGraphUpdater, annotateForClosureCompiler, perf, hostDirectivesResolver, includeClassMetadata, compilationMode) {
6173
+ constructor(reflector, evaluator, metaRegistry, metaReader, scopeReader, dtsScopeReader, scopeRegistry, typeCheckScopeRegistry, resourceRegistry, isCore, strictCtorDeps, resourceLoader, rootDirs, defaultPreserveWhitespaces, i18nUseExternalIds, enableI18nLegacyMessageIdFormat, usePoisonedData, i18nNormalizeLineEndingsInICUs, enabledBlockTypes, moduleResolver, cycleAnalyzer, cycleHandlingStrategy, refEmitter, referencesRegistry, depTracker, injectableRegistry, semanticDepGraphUpdater, annotateForClosureCompiler, perf, hostDirectivesResolver, includeClassMetadata, compilationMode, deferredSymbolTracker) {
6174
6174
  this.reflector = reflector;
6175
6175
  this.evaluator = evaluator;
6176
6176
  this.metaRegistry = metaRegistry;
@@ -6203,6 +6203,7 @@ var ComponentDecoratorHandler = class {
6203
6203
  this.hostDirectivesResolver = hostDirectivesResolver;
6204
6204
  this.includeClassMetadata = includeClassMetadata;
6205
6205
  this.compilationMode = compilationMode;
6206
+ this.deferredSymbolTracker = deferredSymbolTracker;
6206
6207
  this.literalCache = /* @__PURE__ */ new Map();
6207
6208
  this.elementSchemaRegistry = new DomElementSchemaRegistry();
6208
6209
  this.preanalyzeTemplateCache = /* @__PURE__ */ new Map();
@@ -6564,7 +6565,9 @@ var ComponentDecoratorHandler = class {
6564
6565
  const metadata = analysis.meta;
6565
6566
  const data = {
6566
6567
  declarations: EMPTY_ARRAY2,
6567
- declarationListEmitMode: 0
6568
+ declarationListEmitMode: 0,
6569
+ deferBlocks: /* @__PURE__ */ new Map(),
6570
+ deferrableDeclToImportDecl: /* @__PURE__ */ new Map()
6568
6571
  };
6569
6572
  const diagnostics = [];
6570
6573
  const scope = this.scopeReader.getScopeForComponent(node);
@@ -6581,31 +6584,45 @@ var ComponentDecoratorHandler = class {
6581
6584
  }
6582
6585
  const binder = new R3TargetBinder(matcher);
6583
6586
  const bound = binder.bind({ template: metadata.template.nodes });
6584
- const used = /* @__PURE__ */ new Set();
6585
- for (const dir of bound.getUsedDirectives()) {
6586
- used.add(dir.ref.node);
6587
+ const deferBlocks = /* @__PURE__ */ new Map();
6588
+ for (const deferBlock of bound.getDeferBlocks()) {
6589
+ deferBlocks.set(deferBlock, binder.bind({ template: deferBlock.children }));
6587
6590
  }
6588
- for (const name of bound.getUsedPipes()) {
6591
+ const eagerlyUsed = /* @__PURE__ */ new Set();
6592
+ for (const dir of bound.getEagerlyUsedDirectives()) {
6593
+ eagerlyUsed.add(dir.ref.node);
6594
+ }
6595
+ for (const name of bound.getEagerlyUsedPipes()) {
6589
6596
  if (!pipes.has(name)) {
6590
6597
  continue;
6591
6598
  }
6592
- used.add(pipes.get(name).ref.node);
6599
+ eagerlyUsed.add(pipes.get(name).ref.node);
6593
6600
  }
6594
- const declarations = [];
6595
- const seen = /* @__PURE__ */ new Set();
6601
+ const wholeTemplateUsed = new Set(eagerlyUsed);
6602
+ for (const bound2 of deferBlocks.values()) {
6603
+ for (const dir of bound2.getEagerlyUsedDirectives()) {
6604
+ wholeTemplateUsed.add(dir.ref.node);
6605
+ }
6606
+ for (const name of bound2.getEagerlyUsedPipes()) {
6607
+ if (!pipes.has(name)) {
6608
+ continue;
6609
+ }
6610
+ wholeTemplateUsed.add(pipes.get(name).ref.node);
6611
+ }
6612
+ }
6613
+ const declarations = /* @__PURE__ */ new Map();
6596
6614
  for (const dep of dependencies) {
6597
- if (seen.has(dep.ref.node)) {
6615
+ if (declarations.has(dep.ref.node)) {
6598
6616
  continue;
6599
6617
  }
6600
- seen.add(dep.ref.node);
6601
6618
  switch (dep.kind) {
6602
6619
  case MetaKind.Directive:
6603
- if (!used.has(dep.ref.node) || dep.matchSource !== MatchSource.Selector) {
6620
+ if (!wholeTemplateUsed.has(dep.ref.node) || dep.matchSource !== MatchSource.Selector) {
6604
6621
  continue;
6605
6622
  }
6606
6623
  const dirType = this.refEmitter.emit(dep.ref, context);
6607
6624
  assertSuccessfulReferenceEmit(dirType, node.name, dep.isComponent ? "component" : "directive");
6608
- declarations.push({
6625
+ declarations.set(dep.ref.node, {
6609
6626
  kind: R3TemplateDependencyKind.Directive,
6610
6627
  ref: dep.ref,
6611
6628
  type: dirType.expression,
@@ -6618,12 +6635,12 @@ var ComponentDecoratorHandler = class {
6618
6635
  });
6619
6636
  break;
6620
6637
  case MetaKind.Pipe:
6621
- if (!used.has(dep.ref.node)) {
6638
+ if (!wholeTemplateUsed.has(dep.ref.node)) {
6622
6639
  continue;
6623
6640
  }
6624
6641
  const pipeType = this.refEmitter.emit(dep.ref, context);
6625
6642
  assertSuccessfulReferenceEmit(pipeType, node.name, "pipe");
6626
- declarations.push({
6643
+ declarations.set(dep.ref.node, {
6627
6644
  kind: R3TemplateDependencyKind.Pipe,
6628
6645
  type: pipeType.expression,
6629
6646
  name: dep.name,
@@ -6634,7 +6651,7 @@ var ComponentDecoratorHandler = class {
6634
6651
  case MetaKind.NgModule:
6635
6652
  const ngModuleType = this.refEmitter.emit(dep.ref, context);
6636
6653
  assertSuccessfulReferenceEmit(ngModuleType, node.name, "NgModule");
6637
- declarations.push({
6654
+ declarations.set(dep.ref.node, {
6638
6655
  kind: R3TemplateDependencyKind.NgModule,
6639
6656
  type: ngModuleType.expression,
6640
6657
  importedFile: ngModuleType.importedFile
@@ -6642,17 +6659,17 @@ var ComponentDecoratorHandler = class {
6642
6659
  break;
6643
6660
  }
6644
6661
  }
6645
- const isUsedDirective = (decl) => decl.kind === R3TemplateDependencyKind.Directive;
6646
- const isUsedPipe = (decl) => decl.kind === R3TemplateDependencyKind.Pipe;
6647
6662
  const getSemanticReference = (decl) => this.semanticDepGraphUpdater.getSemanticReference(decl.ref.node, decl.type);
6648
6663
  if (this.semanticDepGraphUpdater !== null) {
6649
- symbol.usedDirectives = declarations.filter(isUsedDirective).map(getSemanticReference);
6650
- symbol.usedPipes = declarations.filter(isUsedPipe).map(getSemanticReference);
6664
+ symbol.usedDirectives = Array.from(declarations.values()).filter(isUsedDirective).map(getSemanticReference);
6665
+ symbol.usedPipes = Array.from(declarations.values()).filter(isUsedPipe).map(getSemanticReference);
6651
6666
  }
6667
+ const eagerDeclarations = Array.from(declarations.values()).filter((decl) => decl.kind === R3TemplateDependencyKind.NgModule || eagerlyUsed.has(decl.ref.node));
6668
+ this.resolveDeferBlocks(deferBlocks, declarations, data, analysis, eagerlyUsed);
6652
6669
  const cyclesFromDirectives = /* @__PURE__ */ new Map();
6653
6670
  const cyclesFromPipes = /* @__PURE__ */ new Map();
6654
6671
  if (!metadata.isStandalone) {
6655
- for (const usedDep of declarations) {
6672
+ for (const usedDep of eagerDeclarations) {
6656
6673
  const cycle = this._checkForCyclicImport(usedDep.importedFile, usedDep.type, context);
6657
6674
  if (cycle !== null) {
6658
6675
  switch (usedDep.kind) {
@@ -6669,16 +6686,16 @@ var ComponentDecoratorHandler = class {
6669
6686
  const standaloneImportMayBeForwardDeclared = analysis.resolvedImports !== null && analysis.resolvedImports.some((ref) => ref.synthetic);
6670
6687
  const cycleDetected = cyclesFromDirectives.size !== 0 || cyclesFromPipes.size !== 0;
6671
6688
  if (!cycleDetected) {
6672
- for (const { type, importedFile } of declarations) {
6689
+ for (const { type, importedFile } of eagerDeclarations) {
6673
6690
  this.maybeRecordSyntheticImport(importedFile, type, context);
6674
6691
  }
6675
- const declarationIsForwardDeclared = declarations.some((decl) => isExpressionForwardReference(decl.type, node.name, context));
6692
+ const declarationIsForwardDeclared = eagerDeclarations.some((decl) => isExpressionForwardReference(decl.type, node.name, context));
6676
6693
  const wrapDirectivesAndPipesInClosure = declarationIsForwardDeclared || standaloneImportMayBeForwardDeclared;
6677
- data.declarations = declarations;
6694
+ data.declarations = eagerDeclarations;
6678
6695
  data.declarationListEmitMode = wrapDirectivesAndPipesInClosure ? 1 : 0;
6679
6696
  } else {
6680
6697
  if (this.cycleHandlingStrategy === 0) {
6681
- this.scopeRegistry.setComponentRemoteScope(node, declarations.filter(isUsedDirective).map((dir) => dir.ref), declarations.filter(isUsedPipe).map((pipe) => pipe.ref));
6698
+ this.scopeRegistry.setComponentRemoteScope(node, eagerDeclarations.filter(isUsedDirective).map((dir) => dir.ref), eagerDeclarations.filter(isUsedPipe).map((pipe) => pipe.ref));
6682
6699
  symbol.isRemotelyScoped = true;
6683
6700
  if (this.semanticDepGraphUpdater !== null && scope.kind === ComponentScopeKind.NgModule && scope.ngModule !== null) {
6684
6701
  const moduleSymbol = this.semanticDepGraphUpdater.getSymbol(scope.ngModule);
@@ -6756,9 +6773,21 @@ var ComponentDecoratorHandler = class {
6756
6773
  analysis.meta.styles = styles.filter((s) => s.trim().length > 0);
6757
6774
  }
6758
6775
  compileFull(node, analysis, resolution, pool) {
6776
+ var _a;
6759
6777
  if (analysis.template.errors !== null && analysis.template.errors.length > 0) {
6760
6778
  return [];
6761
6779
  }
6780
+ for (const [_, deferBlockDeps] of resolution.deferBlocks) {
6781
+ for (const deferBlockDep of deferBlockDeps) {
6782
+ const dep = deferBlockDep;
6783
+ const classDecl = dep.classDeclaration;
6784
+ const importDecl = (_a = resolution.deferrableDeclToImportDecl.get(classDecl)) != null ? _a : null;
6785
+ if (importDecl && this.deferredSymbolTracker.canDefer(importDecl)) {
6786
+ deferBlockDep.isDeferrable = true;
6787
+ deferBlockDep.importPath = importDecl.moduleSpecifier.text;
6788
+ }
6789
+ }
6790
+ }
6762
6791
  const meta = { ...analysis.meta, ...resolution };
6763
6792
  const fac = compileNgFactoryDefField(toFactoryMetadata(meta, FactoryTarget3.Component));
6764
6793
  const def = compileComponentFromMetadata(meta, pool, makeBindingParser2());
@@ -6790,7 +6819,9 @@ var ComponentDecoratorHandler = class {
6790
6819
  const meta = {
6791
6820
  ...analysis.meta,
6792
6821
  declarationListEmitMode: 0,
6793
- declarations: []
6822
+ declarations: [],
6823
+ deferBlocks: /* @__PURE__ */ new Map(),
6824
+ deferrableDeclToImportDecl: /* @__PURE__ */ new Map()
6794
6825
  };
6795
6826
  const fac = compileNgFactoryDefField(toFactoryMetadata(meta, FactoryTarget3.Component));
6796
6827
  const def = compileComponentFromMetadata(meta, pool, makeBindingParser2());
@@ -6812,6 +6843,71 @@ var ComponentDecoratorHandler = class {
6812
6843
  }
6813
6844
  this.cycleAnalyzer.recordSyntheticImport(origin, imported);
6814
6845
  }
6846
+ resolveDeferBlocks(deferBlocks, deferrableDecls, resolutionData, analysisData, eagerlyUsedDecls) {
6847
+ const allDeferredDecls = /* @__PURE__ */ new Set();
6848
+ for (const [deferBlock, bound] of deferBlocks) {
6849
+ const usedDirectives = new Set(bound.getEagerlyUsedDirectives().map((d) => d.ref.node));
6850
+ const usedPipes = new Set(bound.getEagerlyUsedPipes());
6851
+ const deps = [];
6852
+ for (const decl of Array.from(deferrableDecls.values())) {
6853
+ if (decl.kind === R3TemplateDependencyKind.NgModule) {
6854
+ continue;
6855
+ }
6856
+ if (decl.kind === R3TemplateDependencyKind.Directive && !usedDirectives.has(decl.ref.node)) {
6857
+ continue;
6858
+ }
6859
+ if (decl.kind === R3TemplateDependencyKind.Pipe && !usedPipes.has(decl.name)) {
6860
+ continue;
6861
+ }
6862
+ deps.push({
6863
+ type: decl.type,
6864
+ symbolName: decl.ref.node.name.escapedText,
6865
+ isDeferrable: false,
6866
+ importPath: null,
6867
+ classDeclaration: decl.ref.node
6868
+ });
6869
+ allDeferredDecls.add(decl.ref.node);
6870
+ }
6871
+ resolutionData.deferBlocks.set(deferBlock, deps);
6872
+ }
6873
+ if (analysisData.meta.isStandalone && analysisData.rawImports !== null && ts24.isArrayLiteralExpression(analysisData.rawImports)) {
6874
+ for (const node of analysisData.rawImports.elements) {
6875
+ if (!ts24.isIdentifier(node)) {
6876
+ continue;
6877
+ }
6878
+ const imp = this.reflector.getImportOfIdentifier(node);
6879
+ if (imp === null) {
6880
+ continue;
6881
+ }
6882
+ const decl = this.reflector.getDeclarationOfIdentifier(node);
6883
+ if (decl === null) {
6884
+ continue;
6885
+ }
6886
+ if (!isNamedClassDeclaration(decl.node)) {
6887
+ continue;
6888
+ }
6889
+ if (!allDeferredDecls.has(decl.node)) {
6890
+ continue;
6891
+ }
6892
+ if (eagerlyUsedDecls.has(decl.node)) {
6893
+ continue;
6894
+ }
6895
+ const dirMeta = this.metaReader.getDirectiveMetadata(new Reference(decl.node));
6896
+ if (dirMeta !== null && !dirMeta.isStandalone) {
6897
+ continue;
6898
+ }
6899
+ const pipeMeta = this.metaReader.getPipeMetadata(new Reference(decl.node));
6900
+ if (pipeMeta !== null && !pipeMeta.isStandalone) {
6901
+ continue;
6902
+ }
6903
+ if (dirMeta === null && pipeMeta === null) {
6904
+ continue;
6905
+ }
6906
+ resolutionData.deferrableDeclToImportDecl.set(decl.node, imp.node);
6907
+ this.deferredSymbolTracker.markAsDeferrableCandidate(node, imp.node);
6908
+ }
6909
+ }
6910
+ }
6815
6911
  };
6816
6912
  function validateStandaloneImports(importRefs, importExpr, metaReader, scopeReader) {
6817
6913
  const diagnostics = [];
@@ -6839,7 +6935,7 @@ function validateStandaloneImports(importRefs, importExpr, metaReader, scopeRead
6839
6935
  return diagnostics;
6840
6936
  }
6841
6937
 
6842
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/src/injectable.mjs
6938
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/src/injectable.mjs
6843
6939
  import { compileClassMetadata as compileClassMetadata4, compileDeclareClassMetadata as compileDeclareClassMetadata4, compileDeclareInjectableFromMetadata, compileInjectable, createMayBeForwardRefExpression as createMayBeForwardRefExpression2, FactoryTarget as FactoryTarget4, LiteralExpr as LiteralExpr3, WrappedNodeExpr as WrappedNodeExpr8 } from "@angular/compiler";
6844
6940
  import ts25 from "typescript";
6845
6941
  var InjectableDecoratorHandler = class {
@@ -7058,7 +7154,7 @@ function getDep(dep, reflector) {
7058
7154
  return meta;
7059
7155
  }
7060
7156
 
7061
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/src/pipe.mjs
7157
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/annotations/src/pipe.mjs
7062
7158
  import { compileClassMetadata as compileClassMetadata5, compileDeclareClassMetadata as compileDeclareClassMetadata5, compileDeclarePipeFromMetadata, compilePipeFromMetadata, FactoryTarget as FactoryTarget5 } from "@angular/compiler";
7063
7159
  import ts26 from "typescript";
7064
7160
  var PipeSymbol = class extends SemanticSymbol {
@@ -7209,14 +7305,14 @@ var PipeDecoratorHandler = class {
7209
7305
  }
7210
7306
  };
7211
7307
 
7212
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/checker.mjs
7308
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/checker.mjs
7213
7309
  var OptimizeFor;
7214
7310
  (function(OptimizeFor2) {
7215
7311
  OptimizeFor2[OptimizeFor2["SingleFile"] = 0] = "SingleFile";
7216
7312
  OptimizeFor2[OptimizeFor2["WholeProgram"] = 1] = "WholeProgram";
7217
7313
  })(OptimizeFor || (OptimizeFor = {}));
7218
7314
 
7219
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/scope.mjs
7315
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/scope.mjs
7220
7316
  var PotentialImportKind;
7221
7317
  (function(PotentialImportKind2) {
7222
7318
  PotentialImportKind2[PotentialImportKind2["NgModule"] = 0] = "NgModule";
@@ -7228,14 +7324,14 @@ var PotentialImportMode;
7228
7324
  PotentialImportMode2[PotentialImportMode2["ForceDirect"] = 1] = "ForceDirect";
7229
7325
  })(PotentialImportMode || (PotentialImportMode = {}));
7230
7326
 
7231
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/completion.mjs
7327
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/completion.mjs
7232
7328
  var CompletionKind;
7233
7329
  (function(CompletionKind2) {
7234
7330
  CompletionKind2[CompletionKind2["Reference"] = 0] = "Reference";
7235
7331
  CompletionKind2[CompletionKind2["Variable"] = 1] = "Variable";
7236
7332
  })(CompletionKind || (CompletionKind = {}));
7237
7333
 
7238
- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/symbols.mjs
7334
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/symbols.mjs
7239
7335
  var SymbolKind;
7240
7336
  (function(SymbolKind2) {
7241
7337
  SymbolKind2[SymbolKind2["Input"] = 0] = "Input";
@@ -7303,4 +7399,4 @@ export {
7303
7399
  * Use of this source code is governed by an MIT-style license that can be
7304
7400
  * found in the LICENSE file at https://angular.io/license
7305
7401
  */
7306
- //# sourceMappingURL=chunk-YZ3WOD5G.js.map
7402
+ //# sourceMappingURL=chunk-NYVNWJZI.js.map