@angular/core 19.2.11 → 19.2.12

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 (53) hide show
  1. package/event_dispatcher.d-K56StcHr.d.ts +1 -1
  2. package/fesm2022/core.mjs +108 -45
  3. package/fesm2022/core.mjs.map +1 -1
  4. package/fesm2022/primitives/di.mjs +1 -1
  5. package/fesm2022/primitives/di.mjs.map +1 -1
  6. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  7. package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
  8. package/fesm2022/primitives/signals.mjs +1 -1
  9. package/fesm2022/primitives/signals.mjs.map +1 -1
  10. package/fesm2022/rxjs-interop.mjs +10 -3
  11. package/fesm2022/rxjs-interop.mjs.map +1 -1
  12. package/fesm2022/testing.mjs +2 -2
  13. package/fesm2022/testing.mjs.map +1 -1
  14. package/fesm2022/untracked-BKcld_ew.mjs +1 -1
  15. package/fesm2022/untracked-BKcld_ew.mjs.map +1 -1
  16. package/index.d.ts +16 -5
  17. package/navigation_types.d-fAxd92YV.d.ts +1 -1
  18. package/package.json +1 -1
  19. package/primitives/di/index.d.ts +1 -1
  20. package/primitives/event-dispatch/index.d.ts +1 -1
  21. package/primitives/signals/index.d.ts +1 -1
  22. package/rxjs-interop/index.d.ts +1 -1
  23. package/schematics/bundles/{apply_import_manager-DdHXpkne.js → apply_import_manager-Celp9ClC.cjs} +3 -3
  24. package/schematics/bundles/{checker-CGGdizaF.js → checker-5pyJrZ9G.cjs} +81 -63
  25. package/schematics/bundles/{cleanup-unused-imports.js → cleanup-unused-imports.cjs} +6 -6
  26. package/schematics/bundles/{compiler_host-BmQrIxJT.js → compiler_host-B1Gyeytz.cjs} +2 -2
  27. package/schematics/bundles/{control-flow-migration.js → control-flow-migration.cjs} +3 -3
  28. package/schematics/bundles/{explicit-standalone-flag.js → explicit-standalone-flag.cjs} +5 -5
  29. package/schematics/bundles/{imports-CIX-JgAN.js → imports-CIX-JgAN.cjs} +1 -1
  30. package/schematics/bundles/{index-BF06LaCS.js → index-BIvVb6in.cjs} +26 -26
  31. package/schematics/bundles/{index-DGcgCgNa.js → index-DZhSIkG9.cjs} +28 -19
  32. package/schematics/bundles/{inject-migration.js → inject-migration.cjs} +7 -7
  33. package/schematics/bundles/{leading_space-D9nQ8UQC.js → leading_space-D9nQ8UQC.cjs} +1 -1
  34. package/schematics/bundles/{migrate_ts_type_references-CE_V0IM9.js → migrate_ts_type_references-CjGOIOBV.cjs} +6 -6
  35. package/schematics/bundles/{ng_decorators-DznZ5jMl.js → ng_decorators-B5HCqr20.cjs} +2 -2
  36. package/schematics/bundles/{nodes-B16H9JUd.js → nodes-B16H9JUd.cjs} +1 -1
  37. package/schematics/bundles/{output-migration.js → output-migration.cjs} +7 -7
  38. package/schematics/bundles/{pending-tasks.js → pending-tasks.cjs} +5 -5
  39. package/schematics/bundles/{project_paths-CmS2U6KE.js → project_paths-HwOMxrvM.cjs} +4 -4
  40. package/schematics/bundles/{project_tsconfig_paths-CDVxT6Ov.js → project_tsconfig_paths-CDVxT6Ov.cjs} +1 -1
  41. package/schematics/bundles/{property_name-BBwFuqMe.js → property_name-BBwFuqMe.cjs} +1 -1
  42. package/schematics/bundles/{provide-initializer.js → provide-initializer.cjs} +5 -5
  43. package/schematics/bundles/{route-lazy-loading.js → route-lazy-loading.cjs} +5 -5
  44. package/schematics/bundles/{self-closing-tags-migration.js → self-closing-tags-migration.cjs} +8 -8
  45. package/schematics/bundles/{signal-input-migration.js → signal-input-migration.cjs} +9 -9
  46. package/schematics/bundles/{signal-queries-migration.js → signal-queries-migration.cjs} +9 -9
  47. package/schematics/bundles/{signals.js → signals.cjs} +12 -12
  48. package/schematics/bundles/{standalone-migration.js → standalone-migration.cjs} +8 -8
  49. package/schematics/collection.json +10 -10
  50. package/schematics/migrations.json +3 -3
  51. package/testing/index.d.ts +1 -1
  52. package/weak_ref.d-DWHPG08n.d.ts +1 -1
  53. package/schematics/package.json +0 -3
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -514,6 +514,28 @@ function parseSelectorToR3Selector(selector) {
514
514
  return selector ? CssSelector.parse(selector).map(parserSelectorToR3Selector) : [];
515
515
  }
516
516
 
517
+ exports.FactoryTarget = void 0;
518
+ (function (FactoryTarget) {
519
+ FactoryTarget[FactoryTarget["Directive"] = 0] = "Directive";
520
+ FactoryTarget[FactoryTarget["Component"] = 1] = "Component";
521
+ FactoryTarget[FactoryTarget["Injectable"] = 2] = "Injectable";
522
+ FactoryTarget[FactoryTarget["Pipe"] = 3] = "Pipe";
523
+ FactoryTarget[FactoryTarget["NgModule"] = 4] = "NgModule";
524
+ })(exports.FactoryTarget || (exports.FactoryTarget = {}));
525
+ var R3TemplateDependencyKind;
526
+ (function (R3TemplateDependencyKind) {
527
+ R3TemplateDependencyKind[R3TemplateDependencyKind["Directive"] = 0] = "Directive";
528
+ R3TemplateDependencyKind[R3TemplateDependencyKind["Pipe"] = 1] = "Pipe";
529
+ R3TemplateDependencyKind[R3TemplateDependencyKind["NgModule"] = 2] = "NgModule";
530
+ })(R3TemplateDependencyKind || (R3TemplateDependencyKind = {}));
531
+ var ViewEncapsulation;
532
+ (function (ViewEncapsulation) {
533
+ ViewEncapsulation[ViewEncapsulation["Emulated"] = 0] = "Emulated";
534
+ // Historically the 1 value was for `Native` encapsulation which has been removed as of v11.
535
+ ViewEncapsulation[ViewEncapsulation["None"] = 2] = "None";
536
+ ViewEncapsulation[ViewEncapsulation["ShadowDom"] = 3] = "ShadowDom";
537
+ })(ViewEncapsulation || (ViewEncapsulation = {}));
538
+
517
539
  /**
518
540
  * A lazily created TextEncoder instance for converting strings into UTF-8 bytes
519
541
  */
@@ -2829,6 +2851,10 @@ class Identifiers {
2829
2851
  static forwardRef = { name: 'forwardRef', moduleName: CORE };
2830
2852
  static resolveForwardRef = { name: 'resolveForwardRef', moduleName: CORE };
2831
2853
  static replaceMetadata = { name: 'ɵɵreplaceMetadata', moduleName: CORE };
2854
+ static getReplaceMetadataURL = {
2855
+ name: 'ɵɵgetReplaceMetadataURL',
2856
+ moduleName: CORE,
2857
+ };
2832
2858
  static ɵɵdefineInjectable = { name: 'ɵɵdefineInjectable', moduleName: CORE };
2833
2859
  static declareInjectable = { name: 'ɵɵngDeclareInjectable', moduleName: CORE };
2834
2860
  static InjectableDeclaration = {
@@ -3823,14 +3849,6 @@ var R3FactoryDelegateType;
3823
3849
  R3FactoryDelegateType[R3FactoryDelegateType["Class"] = 0] = "Class";
3824
3850
  R3FactoryDelegateType[R3FactoryDelegateType["Function"] = 1] = "Function";
3825
3851
  })(R3FactoryDelegateType || (R3FactoryDelegateType = {}));
3826
- exports.FactoryTarget = void 0;
3827
- (function (FactoryTarget) {
3828
- FactoryTarget[FactoryTarget["Directive"] = 0] = "Directive";
3829
- FactoryTarget[FactoryTarget["Component"] = 1] = "Component";
3830
- FactoryTarget[FactoryTarget["Injectable"] = 2] = "Injectable";
3831
- FactoryTarget[FactoryTarget["Pipe"] = 3] = "Pipe";
3832
- FactoryTarget[FactoryTarget["NgModule"] = 4] = "NgModule";
3833
- })(exports.FactoryTarget || (exports.FactoryTarget = {}));
3834
3852
  /**
3835
3853
  * Construct a factory function expression for the given `R3FactoryMetadata`.
3836
3854
  */
@@ -30726,7 +30744,7 @@ function publishFacade(global) {
30726
30744
  * @description
30727
30745
  * Entry point for all public APIs of the compiler package.
30728
30746
  */
30729
- new Version('19.2.11');
30747
+ new Version('19.2.12');
30730
30748
 
30731
30749
  const _I18N_ATTR = 'i18n';
30732
30750
  const _I18N_ATTR_PREFIX = 'i18n-';
@@ -31195,15 +31213,6 @@ function isAttrNode(ast) {
31195
31213
  return ast.length === 1 && ast[0] instanceof Attribute;
31196
31214
  }
31197
31215
 
31198
- var FactoryTarget;
31199
- (function (FactoryTarget) {
31200
- FactoryTarget[FactoryTarget["Directive"] = 0] = "Directive";
31201
- FactoryTarget[FactoryTarget["Component"] = 1] = "Component";
31202
- FactoryTarget[FactoryTarget["Injectable"] = 2] = "Injectable";
31203
- FactoryTarget[FactoryTarget["Pipe"] = 3] = "Pipe";
31204
- FactoryTarget[FactoryTarget["NgModule"] = 4] = "NgModule";
31205
- })(FactoryTarget || (FactoryTarget = {}));
31206
-
31207
31216
  //////////////////////////////////////
31208
31217
  // THIS FILE HAS GLOBAL SIDE EFFECT //
31209
31218
  // (see bottom of file) //
@@ -32153,7 +32162,7 @@ class NodeJSPathManipulation {
32153
32162
  // G3-ESM-MARKER: G3 uses CommonJS, but externally everything in ESM.
32154
32163
  // CommonJS/ESM interop for determining the current file name and containing dir.
32155
32164
  const isCommonJS = typeof __filename !== 'undefined';
32156
- const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('checker-CGGdizaF.js', document.baseURI).href));
32165
+ const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('checker-5pyJrZ9G.cjs', document.baseURI).href));
32157
32166
  const currentFileName = isCommonJS ? __filename : url.fileURLToPath(currentFileUrl);
32158
32167
  /**
32159
32168
  * A wrapper around the Node.js file-system that supports readonly operations and path manipulation.
@@ -32956,14 +32965,14 @@ exports.ClassMemberKind = void 0;
32956
32965
  ClassMemberKind[ClassMemberKind["Method"] = 4] = "Method";
32957
32966
  })(exports.ClassMemberKind || (exports.ClassMemberKind = {}));
32958
32967
  /** Possible access levels of a class member. */
32959
- var ClassMemberAccessLevel;
32968
+ exports.ClassMemberAccessLevel = void 0;
32960
32969
  (function (ClassMemberAccessLevel) {
32961
32970
  ClassMemberAccessLevel[ClassMemberAccessLevel["PublicWritable"] = 0] = "PublicWritable";
32962
32971
  ClassMemberAccessLevel[ClassMemberAccessLevel["PublicReadonly"] = 1] = "PublicReadonly";
32963
32972
  ClassMemberAccessLevel[ClassMemberAccessLevel["Protected"] = 2] = "Protected";
32964
32973
  ClassMemberAccessLevel[ClassMemberAccessLevel["Private"] = 3] = "Private";
32965
32974
  ClassMemberAccessLevel[ClassMemberAccessLevel["EcmaScriptPrivate"] = 4] = "EcmaScriptPrivate";
32966
- })(ClassMemberAccessLevel || (ClassMemberAccessLevel = {}));
32975
+ })(exports.ClassMemberAccessLevel || (exports.ClassMemberAccessLevel = {}));
32967
32976
  /** Indicates that a declaration is referenced through an ambient type. */
32968
32977
  const AmbientImport = {};
32969
32978
 
@@ -33242,15 +33251,15 @@ function isIdentifier(node) {
33242
33251
  */
33243
33252
  function classMemberAccessLevelToString(level) {
33244
33253
  switch (level) {
33245
- case ClassMemberAccessLevel.EcmaScriptPrivate:
33254
+ case exports.ClassMemberAccessLevel.EcmaScriptPrivate:
33246
33255
  return 'ES private';
33247
- case ClassMemberAccessLevel.Private:
33256
+ case exports.ClassMemberAccessLevel.Private:
33248
33257
  return 'private';
33249
- case ClassMemberAccessLevel.Protected:
33258
+ case exports.ClassMemberAccessLevel.Protected:
33250
33259
  return 'protected';
33251
- case ClassMemberAccessLevel.PublicReadonly:
33260
+ case exports.ClassMemberAccessLevel.PublicReadonly:
33252
33261
  return 'public readonly';
33253
- case ClassMemberAccessLevel.PublicWritable:
33262
+ case exports.ClassMemberAccessLevel.PublicWritable:
33254
33263
  default:
33255
33264
  return 'public';
33256
33265
  }
@@ -33754,7 +33763,7 @@ function extractModifiersOfMember(node) {
33754
33763
  const modifiers = ts.getModifiers(node);
33755
33764
  let isStatic = false;
33756
33765
  let isReadonly = false;
33757
- let accessLevel = ClassMemberAccessLevel.PublicWritable;
33766
+ let accessLevel = exports.ClassMemberAccessLevel.PublicWritable;
33758
33767
  if (modifiers !== undefined) {
33759
33768
  for (const modifier of modifiers) {
33760
33769
  switch (modifier.kind) {
@@ -33762,10 +33771,10 @@ function extractModifiersOfMember(node) {
33762
33771
  isStatic = true;
33763
33772
  break;
33764
33773
  case ts.SyntaxKind.PrivateKeyword:
33765
- accessLevel = ClassMemberAccessLevel.Private;
33774
+ accessLevel = exports.ClassMemberAccessLevel.Private;
33766
33775
  break;
33767
33776
  case ts.SyntaxKind.ProtectedKeyword:
33768
- accessLevel = ClassMemberAccessLevel.Protected;
33777
+ accessLevel = exports.ClassMemberAccessLevel.Protected;
33769
33778
  break;
33770
33779
  case ts.SyntaxKind.ReadonlyKeyword:
33771
33780
  isReadonly = true;
@@ -33773,11 +33782,11 @@ function extractModifiersOfMember(node) {
33773
33782
  }
33774
33783
  }
33775
33784
  }
33776
- if (isReadonly && accessLevel === ClassMemberAccessLevel.PublicWritable) {
33777
- accessLevel = ClassMemberAccessLevel.PublicReadonly;
33785
+ if (isReadonly && accessLevel === exports.ClassMemberAccessLevel.PublicWritable) {
33786
+ accessLevel = exports.ClassMemberAccessLevel.PublicReadonly;
33778
33787
  }
33779
33788
  if (node.name !== undefined && ts.isPrivateIdentifier(node.name)) {
33780
- accessLevel = ClassMemberAccessLevel.EcmaScriptPrivate;
33789
+ accessLevel = exports.ClassMemberAccessLevel.EcmaScriptPrivate;
33781
33790
  }
33782
33791
  return { accessLevel, isStatic };
33783
33792
  }
@@ -38625,9 +38634,9 @@ const INPUT_INITIALIZER_FN = {
38625
38634
  // cases where the input is intentionally not part of the public API, programmatically.
38626
38635
  // Note: `private` is omitted intentionally as this would be a conceptual confusion point.
38627
38636
  allowedAccessLevels: [
38628
- ClassMemberAccessLevel.PublicWritable,
38629
- ClassMemberAccessLevel.PublicReadonly,
38630
- ClassMemberAccessLevel.Protected,
38637
+ exports.ClassMemberAccessLevel.PublicWritable,
38638
+ exports.ClassMemberAccessLevel.PublicReadonly,
38639
+ exports.ClassMemberAccessLevel.Protected,
38631
38640
  ],
38632
38641
  };
38633
38642
  /**
@@ -38666,9 +38675,9 @@ const MODEL_INITIALIZER_FN = {
38666
38675
  // accessing `protected` or `private` members works at runtime, so we can allow
38667
38676
  // cases where the input is intentionally not part of the public API, programmatically.
38668
38677
  allowedAccessLevels: [
38669
- ClassMemberAccessLevel.PublicWritable,
38670
- ClassMemberAccessLevel.PublicReadonly,
38671
- ClassMemberAccessLevel.Protected,
38678
+ exports.ClassMemberAccessLevel.PublicWritable,
38679
+ exports.ClassMemberAccessLevel.PublicReadonly,
38680
+ exports.ClassMemberAccessLevel.Protected,
38672
38681
  ],
38673
38682
  };
38674
38683
  /**
@@ -38711,9 +38720,9 @@ function tryParseSignalModelMapping(member, reflector, importTracker) {
38711
38720
  // component API, programmatically.
38712
38721
  // Note: `private` is omitted intentionally as this would be a conceptual confusion point.
38713
38722
  const allowedAccessLevels = [
38714
- ClassMemberAccessLevel.PublicWritable,
38715
- ClassMemberAccessLevel.PublicReadonly,
38716
- ClassMemberAccessLevel.Protected,
38723
+ exports.ClassMemberAccessLevel.PublicWritable,
38724
+ exports.ClassMemberAccessLevel.PublicReadonly,
38725
+ exports.ClassMemberAccessLevel.Protected,
38717
38726
  ];
38718
38727
  /** Possible functions that can declare an output. */
38719
38728
  const OUTPUT_INITIALIZER_FNS = [
@@ -38776,10 +38785,10 @@ const QUERY_INITIALIZER_FNS = queryFunctionNames.map((fnName) => ({
38776
38785
  // Support for ES private fields requires special caution and complexity when partial
38777
38786
  // output is linked— hence not supported. TS private members are allowed in static blocks.
38778
38787
  allowedAccessLevels: [
38779
- ClassMemberAccessLevel.PublicWritable,
38780
- ClassMemberAccessLevel.PublicReadonly,
38781
- ClassMemberAccessLevel.Protected,
38782
- ClassMemberAccessLevel.Private,
38788
+ exports.ClassMemberAccessLevel.PublicWritable,
38789
+ exports.ClassMemberAccessLevel.PublicReadonly,
38790
+ exports.ClassMemberAccessLevel.Protected,
38791
+ exports.ClassMemberAccessLevel.Private,
38783
38792
  ],
38784
38793
  }));
38785
38794
  // The `descendants` option is enabled by default, except for content children.
@@ -47437,6 +47446,7 @@ class TemplateTypeCheckerImpl {
47437
47446
  */
47438
47447
  elementTagCache = new Map();
47439
47448
  isComplete = false;
47449
+ priorResultsAdopted = false;
47440
47450
  constructor(originalProgram, programDriver, typeCheckAdapter, config, refEmitter, reflector, compilerHost, priorBuild, metaReader, localMetaReader, ngModuleIndex, componentScopeReader, typeCheckScopeRegistry, perf) {
47441
47451
  this.originalProgram = originalProgram;
47442
47452
  this.programDriver = programDriver;
@@ -47683,26 +47693,36 @@ class TemplateTypeCheckerImpl {
47683
47693
  this.completionCache.set(component, engine);
47684
47694
  return engine;
47685
47695
  }
47686
- maybeAdoptPriorResultsForFile(sf) {
47687
- const sfPath = absoluteFromSourceFile(sf);
47688
- if (this.state.has(sfPath)) {
47689
- const existingResults = this.state.get(sfPath);
47690
- if (existingResults.isComplete) {
47691
- // All data for this file has already been generated, so no need to adopt anything.
47692
- return;
47693
- }
47694
- }
47695
- const previousResults = this.priorBuild.priorTypeCheckingResultsFor(sf);
47696
- if (previousResults === null || !previousResults.isComplete) {
47696
+ maybeAdoptPriorResults() {
47697
+ if (this.priorResultsAdopted) {
47697
47698
  return;
47698
47699
  }
47699
- this.perf.eventCount(exports.PerfEvent.ReuseTypeCheckFile);
47700
- this.state.set(sfPath, previousResults);
47700
+ for (const sf of this.originalProgram.getSourceFiles()) {
47701
+ if (sf.isDeclarationFile || isShim(sf)) {
47702
+ continue;
47703
+ }
47704
+ const sfPath = absoluteFromSourceFile(sf);
47705
+ if (this.state.has(sfPath)) {
47706
+ const existingResults = this.state.get(sfPath);
47707
+ if (existingResults.isComplete) {
47708
+ // All data for this file has already been generated, so no need to adopt anything.
47709
+ continue;
47710
+ }
47711
+ }
47712
+ const previousResults = this.priorBuild.priorTypeCheckingResultsFor(sf);
47713
+ if (previousResults === null || !previousResults.isComplete) {
47714
+ continue;
47715
+ }
47716
+ this.perf.eventCount(exports.PerfEvent.ReuseTypeCheckFile);
47717
+ this.state.set(sfPath, previousResults);
47718
+ }
47719
+ this.priorResultsAdopted = true;
47701
47720
  }
47702
47721
  ensureAllShimsForAllFiles() {
47703
47722
  if (this.isComplete) {
47704
47723
  return;
47705
47724
  }
47725
+ this.maybeAdoptPriorResults();
47706
47726
  this.perf.inPhase(exports.PerfPhase.TcbGeneration, () => {
47707
47727
  const host = new WholeProgramTypeCheckingHost(this);
47708
47728
  const ctx = this.newContext(host);
@@ -47710,7 +47730,6 @@ class TemplateTypeCheckerImpl {
47710
47730
  if (sf.isDeclarationFile || isShim(sf)) {
47711
47731
  continue;
47712
47732
  }
47713
- this.maybeAdoptPriorResultsForFile(sf);
47714
47733
  const sfPath = absoluteFromSourceFile(sf);
47715
47734
  const fileData = this.getFileData(sfPath);
47716
47735
  if (fileData.isComplete) {
@@ -47724,8 +47743,8 @@ class TemplateTypeCheckerImpl {
47724
47743
  });
47725
47744
  }
47726
47745
  ensureAllShimsForOneFile(sf) {
47746
+ this.maybeAdoptPriorResults();
47727
47747
  this.perf.inPhase(exports.PerfPhase.TcbGeneration, () => {
47728
- this.maybeAdoptPriorResultsForFile(sf);
47729
47748
  const sfPath = absoluteFromSourceFile(sf);
47730
47749
  const fileData = this.getFileData(sfPath);
47731
47750
  if (fileData.isComplete) {
@@ -47740,10 +47759,10 @@ class TemplateTypeCheckerImpl {
47740
47759
  });
47741
47760
  }
47742
47761
  ensureShimForComponent(component) {
47762
+ this.maybeAdoptPriorResults();
47743
47763
  const sf = component.getSourceFile();
47744
47764
  const sfPath = absoluteFromSourceFile(sf);
47745
47765
  const shimPath = TypeCheckShimGenerator.shimFor(sfPath);
47746
- this.maybeAdoptPriorResultsForFile(sf);
47747
47766
  const fileData = this.getFileData(sfPath);
47748
47767
  if (fileData.shimData.has(shimPath)) {
47749
47768
  // All data for this component is available.
@@ -48248,7 +48267,6 @@ exports.IcuPlaceholder = IcuPlaceholder;
48248
48267
  exports.Identifiers = Identifiers;
48249
48268
  exports.ImplicitReceiver = ImplicitReceiver;
48250
48269
  exports.ImportManager = ImportManager;
48251
- exports.InstantiateExpr = InstantiateExpr;
48252
48270
  exports.Interpolation = Interpolation$1;
48253
48271
  exports.InterpolationConfig = InterpolationConfig;
48254
48272
  exports.InvokeFunctionExpr = InvokeFunctionExpr;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,15 +8,15 @@
8
8
 
9
9
  require('@angular-devkit/core');
10
10
  require('node:path/posix');
11
- var project_paths = require('./project_paths-CmS2U6KE.js');
11
+ var project_paths = require('./project_paths-HwOMxrvM.cjs');
12
12
  var ts = require('typescript');
13
13
  require('os');
14
- var checker = require('./checker-CGGdizaF.js');
15
- var index = require('./index-BF06LaCS.js');
14
+ var checker = require('./checker-5pyJrZ9G.cjs');
15
+ var index = require('./index-BIvVb6in.cjs');
16
16
  require('path');
17
- var apply_import_manager = require('./apply_import_manager-DdHXpkne.js');
17
+ var apply_import_manager = require('./apply_import_manager-Celp9ClC.cjs');
18
18
  require('@angular-devkit/schematics');
19
- require('./project_tsconfig_paths-CDVxT6Ov.js');
19
+ require('./project_tsconfig_paths-CDVxT6Ov.cjs');
20
20
  require('fs');
21
21
  require('module');
22
22
  require('url');
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
7
7
  'use strict';
8
8
 
9
9
  var ts = require('typescript');
10
- var checker = require('./checker-CGGdizaF.js');
10
+ var checker = require('./checker-5pyJrZ9G.cjs');
11
11
  require('os');
12
12
  var p = require('path');
13
13
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,8 +8,8 @@
8
8
 
9
9
  var schematics = require('@angular-devkit/schematics');
10
10
  var p = require('path');
11
- var compiler_host = require('./compiler_host-BmQrIxJT.js');
12
- var checker = require('./checker-CGGdizaF.js');
11
+ var compiler_host = require('./compiler_host-B1Gyeytz.cjs');
12
+ var checker = require('./checker-5pyJrZ9G.cjs');
13
13
  var ts = require('typescript');
14
14
  require('os');
15
15
  require('fs');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,12 +8,12 @@
8
8
 
9
9
  var schematics = require('@angular-devkit/schematics');
10
10
  var p = require('path');
11
- var project_tsconfig_paths = require('./project_tsconfig_paths-CDVxT6Ov.js');
12
- var compiler_host = require('./compiler_host-BmQrIxJT.js');
11
+ var project_tsconfig_paths = require('./project_tsconfig_paths-CDVxT6Ov.cjs');
12
+ var compiler_host = require('./compiler_host-B1Gyeytz.cjs');
13
13
  var ts = require('typescript');
14
- var imports = require('./imports-CIX-JgAN.js');
14
+ var imports = require('./imports-CIX-JgAN.cjs');
15
15
  require('@angular-devkit/core');
16
- require('./checker-CGGdizaF.js');
16
+ require('./checker-5pyJrZ9G.cjs');
17
17
  require('os');
18
18
  require('fs');
19
19
  require('module');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
7
7
  'use strict';
8
8
 
9
- var checker = require('./checker-CGGdizaF.js');
9
+ var checker = require('./checker-5pyJrZ9G.cjs');
10
10
  var ts = require('typescript');
11
11
  var p = require('path');
12
12
  require('os');
@@ -912,23 +912,21 @@ function compileHmrInitializer(meta) {
912
912
  ]);
913
913
  // (m) => m.default && ɵɵreplaceMetadata(...)
914
914
  const replaceCallback = checker.arrowFn([new checker.FnParam(moduleName)], defaultRead.and(replaceCall));
915
- // '<url>?c=' + id + '&t=' + encodeURIComponent(t)
916
- const urlValue = checker.literal(`./@ng/component?c=`)
917
- .plus(checker.variable(idName))
918
- .plus(checker.literal('&t='))
919
- .plus(checker.variable('encodeURIComponent').callFn([checker.variable(timestampName)]));
920
- // import.meta.url
921
- const urlBase = checker.variable('import').prop('meta').prop('url');
922
- // new URL(urlValue, urlBase).href
923
- const urlHref = new checker.InstantiateExpr(checker.variable('URL'), [urlValue, urlBase]).prop('href');
915
+ // getReplaceMetadataURL(id, timestamp, import.meta.url)
916
+ const url = checker.importExpr(checker.Identifiers.getReplaceMetadataURL)
917
+ .callFn([
918
+ checker.variable(idName),
919
+ checker.variable(timestampName),
920
+ checker.variable('import').prop('meta').prop('url'),
921
+ ]);
924
922
  // function Cmp_HmrLoad(t) {
925
- // import(/* @vite-ignore */ urlHref).then((m) => m.default && replaceMetadata(...));
923
+ // import(/* @vite-ignore */ url).then((m) => m.default && replaceMetadata(...));
926
924
  // }
927
925
  const importCallback = new checker.DeclareFunctionStmt(importCallbackName, [new checker.FnParam(timestampName)], [
928
926
  // The vite-ignore special comment is required to prevent Vite from generating a superfluous
929
927
  // warning for each usage within the development code. If Vite provides a method to
930
928
  // programmatically avoid this warning in the future, this added comment can be removed here.
931
- new checker.DynamicImportExpr(urlHref, null, '@vite-ignore')
929
+ new checker.DynamicImportExpr(url, null, '@vite-ignore')
932
930
  .prop('then')
933
931
  .callFn([replaceCallback])
934
932
  .toStmt(),
@@ -1007,7 +1005,7 @@ const MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION = '18.0.0';
1007
1005
  function compileDeclareClassMetadata(metadata) {
1008
1006
  const definitionMap = new checker.DefinitionMap();
1009
1007
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
1010
- definitionMap.set('version', checker.literal('19.2.11'));
1008
+ definitionMap.set('version', checker.literal('19.2.12'));
1011
1009
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1012
1010
  definitionMap.set('type', metadata.type);
1013
1011
  definitionMap.set('decorators', metadata.decorators);
@@ -1025,7 +1023,7 @@ function compileComponentDeclareClassMetadata(metadata, dependencies) {
1025
1023
  callbackReturnDefinitionMap.set('ctorParameters', metadata.ctorParameters ?? checker.literal(null));
1026
1024
  callbackReturnDefinitionMap.set('propDecorators', metadata.propDecorators ?? checker.literal(null));
1027
1025
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION));
1028
- definitionMap.set('version', checker.literal('19.2.11'));
1026
+ definitionMap.set('version', checker.literal('19.2.12'));
1029
1027
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1030
1028
  definitionMap.set('type', metadata.type);
1031
1029
  definitionMap.set('resolveDeferredDeps', compileComponentMetadataAsyncResolver(dependencies));
@@ -1120,7 +1118,7 @@ function createDirectiveDefinitionMap(meta) {
1120
1118
  const definitionMap = new checker.DefinitionMap();
1121
1119
  const minVersion = getMinimumVersionForPartialOutput(meta);
1122
1120
  definitionMap.set('minVersion', checker.literal(minVersion));
1123
- definitionMap.set('version', checker.literal('19.2.11'));
1121
+ definitionMap.set('version', checker.literal('19.2.12'));
1124
1122
  // e.g. `type: MyDirective`
1125
1123
  definitionMap.set('type', meta.type.value);
1126
1124
  if (meta.isStandalone !== undefined) {
@@ -1536,7 +1534,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
1536
1534
  function compileDeclareFactoryFunction(meta) {
1537
1535
  const definitionMap = new checker.DefinitionMap();
1538
1536
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
1539
- definitionMap.set('version', checker.literal('19.2.11'));
1537
+ definitionMap.set('version', checker.literal('19.2.12'));
1540
1538
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1541
1539
  definitionMap.set('type', meta.type.value);
1542
1540
  definitionMap.set('deps', compileDependencies(meta.deps));
@@ -1571,7 +1569,7 @@ function compileDeclareInjectableFromMetadata(meta) {
1571
1569
  function createInjectableDefinitionMap(meta) {
1572
1570
  const definitionMap = new checker.DefinitionMap();
1573
1571
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
1574
- definitionMap.set('version', checker.literal('19.2.11'));
1572
+ definitionMap.set('version', checker.literal('19.2.12'));
1575
1573
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1576
1574
  definitionMap.set('type', meta.type.value);
1577
1575
  // Only generate providedIn property if it has a non-null value
@@ -1622,7 +1620,7 @@ function compileDeclareInjectorFromMetadata(meta) {
1622
1620
  function createInjectorDefinitionMap(meta) {
1623
1621
  const definitionMap = new checker.DefinitionMap();
1624
1622
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
1625
- definitionMap.set('version', checker.literal('19.2.11'));
1623
+ definitionMap.set('version', checker.literal('19.2.12'));
1626
1624
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1627
1625
  definitionMap.set('type', meta.type.value);
1628
1626
  definitionMap.set('providers', meta.providers);
@@ -1655,7 +1653,7 @@ function createNgModuleDefinitionMap(meta) {
1655
1653
  throw new Error('Invalid path! Local compilation mode should not get into the partial compilation path');
1656
1654
  }
1657
1655
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
1658
- definitionMap.set('version', checker.literal('19.2.11'));
1656
+ definitionMap.set('version', checker.literal('19.2.12'));
1659
1657
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1660
1658
  definitionMap.set('type', meta.type.value);
1661
1659
  // We only generate the keys in the metadata if the arrays contain values.
@@ -1706,7 +1704,7 @@ function compileDeclarePipeFromMetadata(meta) {
1706
1704
  function createPipeDefinitionMap(meta) {
1707
1705
  const definitionMap = new checker.DefinitionMap();
1708
1706
  definitionMap.set('minVersion', checker.literal(MINIMUM_PARTIAL_LINKER_VERSION));
1709
- definitionMap.set('version', checker.literal('19.2.11'));
1707
+ definitionMap.set('version', checker.literal('19.2.12'));
1710
1708
  definitionMap.set('ngImport', checker.importExpr(checker.Identifiers.core));
1711
1709
  // e.g. `type: MyPipe`
1712
1710
  definitionMap.set('type', meta.type.value);
@@ -4510,9 +4508,11 @@ function extractClassMetadata(clazz, reflection, isCore, annotateForClosureCompi
4510
4508
  }
4511
4509
  // Do the same for property decorators.
4512
4510
  let metaPropDecorators = null;
4513
- const classMembers = reflection
4514
- .getMembersOfClass(clazz)
4515
- .filter((member) => !member.isStatic && member.decorators !== null && member.decorators.length > 0);
4511
+ const classMembers = reflection.getMembersOfClass(clazz).filter((member) => !member.isStatic &&
4512
+ member.decorators !== null &&
4513
+ member.decorators.length > 0 &&
4514
+ // Private fields are not supported in the metadata emit
4515
+ member.accessLevel !== checker.ClassMemberAccessLevel.EcmaScriptPrivate);
4516
4516
  const duplicateDecoratedMembers = classMembers.filter((member, i, arr) => arr.findIndex((arrayMember) => arrayMember.name === member.name) < i);
4517
4517
  if (duplicateDecoratedMembers.length > 0) {
4518
4518
  // This should theoretically never happen, because the only way to have duplicate instance
@@ -10730,7 +10730,7 @@ class PipeDecoratorHandler {
10730
10730
  * @description
10731
10731
  * Entry point for all public APIs of the compiler-cli package.
10732
10732
  */
10733
- new checker.Version('19.2.11');
10733
+ new checker.Version('19.2.12');
10734
10734
 
10735
10735
  /**
10736
10736
  * Whether a given decorator should be treated as an Angular decorator.
@@ -18585,7 +18585,7 @@ var semver = /*@__PURE__*/getDefaultExportFromCjs(semverExports);
18585
18585
  * @param minVersion Minimum required version for the feature.
18586
18586
  */
18587
18587
  function coreVersionSupportsFeature(coreVersion, minVersion) {
18588
- // A version of `19.2.11` usually means that core is at head so it supports
18588
+ // A version of `19.2.12` usually means that core is at head so it supports
18589
18589
  // all features. Use string interpolation prevent the placeholder from being replaced
18590
18590
  // with the current version during build time.
18591
18591
  if (coreVersion === `0.0.0-${'PLACEHOLDER'}`) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.11
3
+ * @license Angular v19.2.12
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,10 +8,10 @@
8
8
 
9
9
  var ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-CGGdizaF.js');
12
- var index = require('./index-BF06LaCS.js');
11
+ var checker = require('./checker-5pyJrZ9G.cjs');
12
+ var index = require('./index-BIvVb6in.cjs');
13
13
  require('path');
14
- var project_paths = require('./project_paths-CmS2U6KE.js');
14
+ var project_paths = require('./project_paths-HwOMxrvM.cjs');
15
15
 
16
16
  function getMemberName(member) {
17
17
  if (member.name === undefined) {
@@ -843,24 +843,33 @@ function identifyPotentialTypeScriptReference(node, programInfo, checker, knownF
843
843
  return;
844
844
  }
845
845
  let target = undefined;
846
- // Resolve binding elements to their declaration symbol.
847
- // Commonly inputs are accessed via object expansion. e.g. `const {input} = this;`.
848
- if (ts.isBindingElement(node.parent)) {
849
- // Skip binding elements that are using spread.
850
- if (node.parent.dotDotDotToken !== undefined) {
851
- return;
846
+ try {
847
+ // Resolve binding elements to their declaration symbol.
848
+ // Commonly inputs are accessed via object expansion. e.g. `const {input} = this;`.
849
+ if (ts.isBindingElement(node.parent)) {
850
+ // Skip binding elements that are using spread.
851
+ if (node.parent.dotDotDotToken !== undefined) {
852
+ return;
853
+ }
854
+ const bindingInfo = resolveBindingElement(node.parent);
855
+ if (bindingInfo === null) {
856
+ // The declaration could not be resolved. Skip analyzing this.
857
+ return;
858
+ }
859
+ const bindingType = checker.getTypeAtLocation(bindingInfo.pattern);
860
+ const resolved = lookupPropertyAccess(checker, bindingType, [bindingInfo.propertyName]);
861
+ target = resolved?.symbol;
852
862
  }
853
- const bindingInfo = resolveBindingElement(node.parent);
854
- if (bindingInfo === null) {
855
- // The declaration could not be resolved. Skip analyzing this.
856
- return;
863
+ else {
864
+ target = checker.getSymbolAtLocation(node);
857
865
  }
858
- const bindingType = checker.getTypeAtLocation(bindingInfo.pattern);
859
- const resolved = lookupPropertyAccess(checker, bindingType, [bindingInfo.propertyName]);
860
- target = resolved?.symbol;
861
866
  }
862
- else {
863
- target = checker.getSymbolAtLocation(node);
867
+ catch (e) {
868
+ console.error('Unexpected error while trying to resolve identifier reference:');
869
+ console.error(e);
870
+ // Gracefully skip analyzing. This can happen when e.g. a reference is named similar
871
+ // to an input, but is dependant on `.d.ts` that is not necessarily available (clutz dts).
872
+ return;
864
873
  }
865
874
  noTargetSymbolCheck: if (target === undefined) {
866
875
  if (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node) {