@angular/core 20.0.0-rc.0 → 20.0.0-rc.2

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 (75) hide show
  1. package/{api.d-CRxC7NlU.d.ts → api.d-B0vztftH.d.ts} +15 -15
  2. package/{chrome_dev_tools_performance.d-B0FzTuRf.d.ts → chrome_dev_tools_performance.d-DvzAxqBc.d.ts} +9 -29
  3. package/{discovery.d-CBxzK1ay.d.ts → discovery.d-Cf_r2Ojk.d.ts} +7 -13
  4. package/{event_dispatcher.d-DlbccpYq.d.ts → event_dispatcher.d-BReQpZfC.d.ts} +27 -1
  5. package/fesm2022/attribute-BWp59EjE.mjs +1 -1
  6. package/fesm2022/attribute-BWp59EjE.mjs.map +1 -1
  7. package/fesm2022/core.mjs +21 -14
  8. package/fesm2022/core.mjs.map +1 -1
  9. package/fesm2022/{debug_node-3mmnD06K.mjs → debug_node-Nc-zr65s.mjs} +11161 -11262
  10. package/fesm2022/debug_node-Nc-zr65s.mjs.map +1 -0
  11. package/fesm2022/primitives/di.mjs +1 -1
  12. package/fesm2022/primitives/di.mjs.map +1 -1
  13. package/fesm2022/primitives/event-dispatch.mjs +3 -2
  14. package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
  15. package/fesm2022/primitives/signals.mjs +1 -1
  16. package/fesm2022/primitives/signals.mjs.map +1 -1
  17. package/fesm2022/{resource-nrAenwIA.mjs → resource-DOwetGLU.mjs} +64 -14
  18. package/fesm2022/resource-DOwetGLU.mjs.map +1 -0
  19. package/fesm2022/{root_effect_scheduler-B_EWGyLU.mjs → root_effect_scheduler-BgGHQ80j.mjs} +29 -17
  20. package/fesm2022/root_effect_scheduler-BgGHQ80j.mjs.map +1 -0
  21. package/fesm2022/rxjs-interop.mjs +27 -12
  22. package/fesm2022/rxjs-interop.mjs.map +1 -1
  23. package/fesm2022/signal-ePSl6jXn.mjs +1 -1
  24. package/fesm2022/signal-ePSl6jXn.mjs.map +1 -1
  25. package/fesm2022/testing.mjs +86 -77
  26. package/fesm2022/testing.mjs.map +1 -1
  27. package/fesm2022/untracked-2ouAFbCz.mjs +1 -1
  28. package/fesm2022/untracked-2ouAFbCz.mjs.map +1 -1
  29. package/fesm2022/weak_ref-BaIq-pgY.mjs +1 -1
  30. package/fesm2022/weak_ref-BaIq-pgY.mjs.map +1 -1
  31. package/graph.d-BcIOep_B.d.ts +1 -1
  32. package/index.d.ts +205 -325
  33. package/package.json +3 -3
  34. package/primitives/di/index.d.ts +1 -1
  35. package/primitives/event-dispatch/index.d.ts +3 -3
  36. package/primitives/signals/index.d.ts +1 -1
  37. package/rxjs-interop/index.d.ts +4 -4
  38. package/schematics/bundles/{apply_import_manager-Coc7Hewu.js → apply_import_manager-BqwxKJiu.cjs} +3 -3
  39. package/schematics/bundles/{change_tracker-CDJPOAni.js → change_tracker-B1qegJFu.cjs} +3 -3
  40. package/schematics/bundles/{checker-BAl7CJ0l.js → checker-DmucNdBi.cjs} +55 -45
  41. package/schematics/bundles/{cleanup-unused-imports.js → cleanup-unused-imports.cjs} +30 -62
  42. package/schematics/bundles/{compiler-BSv6JWRF.js → compiler-DPq1iS19.cjs} +142 -95
  43. package/schematics/bundles/{compiler_host-CAfDJO3W.js → compiler_host-CAfDJO3W.cjs} +1 -1
  44. package/schematics/bundles/{control-flow-migration.js → control-flow-migration.cjs} +4 -4
  45. package/schematics/bundles/{document-core.js → document-core.cjs} +9 -9
  46. package/schematics/bundles/{imports-CIX-JgAN.js → imports-CIX-JgAN.cjs} +1 -1
  47. package/schematics/bundles/{index-CxuDmkeg.js → index-1H-qYSW6.cjs} +101 -37
  48. package/schematics/bundles/{index-CnKffIJ6.js → index-CFmTQ_wx.cjs} +29 -20
  49. package/schematics/bundles/{inject-flags.js → inject-flags.cjs} +9 -9
  50. package/schematics/bundles/{inject-migration.js → inject-migration.cjs} +9 -9
  51. package/schematics/bundles/{leading_space-D9nQ8UQC.js → leading_space-D9nQ8UQC.cjs} +1 -1
  52. package/schematics/bundles/{migrate_ts_type_references-DE1AlxIs.js → migrate_ts_type_references-B2aJNuIK.cjs} +7 -7
  53. package/schematics/bundles/{ng_decorators-DznZ5jMl.js → ng_decorators-B5HCqr20.cjs} +2 -2
  54. package/schematics/bundles/{nodes-B16H9JUd.js → nodes-B16H9JUd.cjs} +1 -1
  55. package/schematics/bundles/{output-migration.js → output-migration.cjs} +14 -17
  56. package/schematics/bundles/{project_paths-Bl-H7Vlb.js → project_paths-DmvzlTQL.cjs} +71 -42
  57. package/schematics/bundles/{project_tsconfig_paths-CDVxT6Ov.js → project_tsconfig_paths-CDVxT6Ov.cjs} +1 -1
  58. package/schematics/bundles/{property_name-BBwFuqMe.js → property_name-BBwFuqMe.cjs} +1 -1
  59. package/schematics/bundles/{route-lazy-loading.js → route-lazy-loading.cjs} +7 -7
  60. package/schematics/bundles/{self-closing-tags-migration.js → self-closing-tags-migration.cjs} +17 -34
  61. package/schematics/bundles/{signal-input-migration.js → signal-input-migration.cjs} +28 -27
  62. package/schematics/bundles/{signal-queries-migration.js → signal-queries-migration.cjs} +18 -21
  63. package/schematics/bundles/{signals.js → signals.cjs} +13 -13
  64. package/schematics/bundles/{standalone-migration.js → standalone-migration.cjs} +11 -11
  65. package/schematics/bundles/{symbol-VPWguRxr.js → symbol-VPWguRxr.cjs} +1 -1
  66. package/schematics/bundles/{test-bed-get.js → test-bed-get.cjs} +9 -9
  67. package/schematics/collection.json +9 -9
  68. package/schematics/migrations.json +4 -4
  69. package/signal.d-D6VJ67xi.d.ts +1 -1
  70. package/testing/index.d.ts +21 -7
  71. package/weak_ref.d-eGOEP9S1.d.ts +1 -1
  72. package/fesm2022/debug_node-3mmnD06K.mjs.map +0 -1
  73. package/fesm2022/resource-nrAenwIA.mjs.map +0 -1
  74. package/fesm2022/root_effect_scheduler-B_EWGyLU.mjs.map +0 -1
  75. package/schematics/package.json +0 -3
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-rc.0
3
+ * @license Angular v20.0.0-rc.2
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
7
7
  'use strict';
8
8
 
9
- var compiler = require('./compiler-BSv6JWRF.js');
9
+ var compiler = require('./compiler-DPq1iS19.cjs');
10
10
  var ts = require('typescript');
11
11
  var p = require('path');
12
- var checker = require('./checker-BAl7CJ0l.js');
12
+ var checker = require('./checker-DmucNdBi.cjs');
13
13
  require('os');
14
14
 
15
15
  function _interopNamespaceDefault(e) {
@@ -892,7 +892,7 @@ const MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION = '18.0.0';
892
892
  function compileDeclareClassMetadata(metadata) {
893
893
  const definitionMap = new compiler.DefinitionMap();
894
894
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
895
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
895
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
896
896
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
897
897
  definitionMap.set('type', metadata.type);
898
898
  definitionMap.set('decorators', metadata.decorators);
@@ -910,7 +910,7 @@ function compileComponentDeclareClassMetadata(metadata, dependencies) {
910
910
  callbackReturnDefinitionMap.set('ctorParameters', metadata.ctorParameters ?? compiler.literal(null));
911
911
  callbackReturnDefinitionMap.set('propDecorators', metadata.propDecorators ?? compiler.literal(null));
912
912
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION));
913
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
913
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
914
914
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
915
915
  definitionMap.set('type', metadata.type);
916
916
  definitionMap.set('resolveDeferredDeps', compileComponentMetadataAsyncResolver(dependencies));
@@ -1005,7 +1005,7 @@ function createDirectiveDefinitionMap(meta) {
1005
1005
  const definitionMap = new compiler.DefinitionMap();
1006
1006
  const minVersion = getMinimumVersionForPartialOutput(meta);
1007
1007
  definitionMap.set('minVersion', compiler.literal(minVersion));
1008
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1008
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1009
1009
  // e.g. `type: MyDirective`
1010
1010
  definitionMap.set('type', meta.type.value);
1011
1011
  if (meta.isStandalone !== undefined) {
@@ -1421,7 +1421,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
1421
1421
  function compileDeclareFactoryFunction(meta) {
1422
1422
  const definitionMap = new compiler.DefinitionMap();
1423
1423
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
1424
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1424
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1425
1425
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
1426
1426
  definitionMap.set('type', meta.type.value);
1427
1427
  definitionMap.set('deps', compileDependencies(meta.deps));
@@ -1456,7 +1456,7 @@ function compileDeclareInjectableFromMetadata(meta) {
1456
1456
  function createInjectableDefinitionMap(meta) {
1457
1457
  const definitionMap = new compiler.DefinitionMap();
1458
1458
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
1459
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1459
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1460
1460
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
1461
1461
  definitionMap.set('type', meta.type.value);
1462
1462
  // Only generate providedIn property if it has a non-null value
@@ -1507,7 +1507,7 @@ function compileDeclareInjectorFromMetadata(meta) {
1507
1507
  function createInjectorDefinitionMap(meta) {
1508
1508
  const definitionMap = new compiler.DefinitionMap();
1509
1509
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
1510
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1510
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1511
1511
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
1512
1512
  definitionMap.set('type', meta.type.value);
1513
1513
  definitionMap.set('providers', meta.providers);
@@ -1540,7 +1540,7 @@ function createNgModuleDefinitionMap(meta) {
1540
1540
  throw new Error('Invalid path! Local compilation mode should not get into the partial compilation path');
1541
1541
  }
1542
1542
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
1543
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1543
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1544
1544
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
1545
1545
  definitionMap.set('type', meta.type.value);
1546
1546
  // We only generate the keys in the metadata if the arrays contain values.
@@ -1591,7 +1591,7 @@ function compileDeclarePipeFromMetadata(meta) {
1591
1591
  function createPipeDefinitionMap(meta) {
1592
1592
  const definitionMap = new compiler.DefinitionMap();
1593
1593
  definitionMap.set('minVersion', compiler.literal(MINIMUM_PARTIAL_LINKER_VERSION));
1594
- definitionMap.set('version', compiler.literal('20.0.0-rc.0'));
1594
+ definitionMap.set('version', compiler.literal('20.0.0-rc.2'));
1595
1595
  definitionMap.set('ngImport', compiler.importExpr(compiler.Identifiers.core));
1596
1596
  // e.g. `type: MyPipe`
1597
1597
  definitionMap.set('type', meta.type.value);
@@ -1664,23 +1664,21 @@ function compileHmrInitializer(meta) {
1664
1664
  ]);
1665
1665
  // (m) => m.default && ɵɵreplaceMetadata(...)
1666
1666
  const replaceCallback = compiler.arrowFn([new compiler.FnParam(moduleName)], defaultRead.and(replaceCall));
1667
- // '<url>?c=' + id + '&t=' + encodeURIComponent(t)
1668
- const urlValue = compiler.literal(`./@ng/component?c=`)
1669
- .plus(compiler.variable(idName))
1670
- .plus(compiler.literal('&t='))
1671
- .plus(compiler.variable('encodeURIComponent').callFn([compiler.variable(timestampName)]));
1672
- // import.meta.url
1673
- const urlBase = compiler.variable('import').prop('meta').prop('url');
1674
- // new URL(urlValue, urlBase).href
1675
- const urlHref = new compiler.InstantiateExpr(compiler.variable('URL'), [urlValue, urlBase]).prop('href');
1667
+ // getReplaceMetadataURL(id, timestamp, import.meta.url)
1668
+ const url = compiler.importExpr(compiler.Identifiers.getReplaceMetadataURL)
1669
+ .callFn([
1670
+ compiler.variable(idName),
1671
+ compiler.variable(timestampName),
1672
+ compiler.variable('import').prop('meta').prop('url'),
1673
+ ]);
1676
1674
  // function Cmp_HmrLoad(t) {
1677
- // import(/* @vite-ignore */ urlHref).then((m) => m.default && replaceMetadata(...));
1675
+ // import(/* @vite-ignore */ url).then((m) => m.default && replaceMetadata(...));
1678
1676
  // }
1679
1677
  const importCallback = new compiler.DeclareFunctionStmt(importCallbackName, [new compiler.FnParam(timestampName)], [
1680
1678
  // The vite-ignore special comment is required to prevent Vite from generating a superfluous
1681
1679
  // warning for each usage within the development code. If Vite provides a method to
1682
1680
  // programmatically avoid this warning in the future, this added comment can be removed here.
1683
- new compiler.DynamicImportExpr(urlHref, null, '@vite-ignore')
1681
+ new compiler.DynamicImportExpr(url, null, '@vite-ignore')
1684
1682
  .prop('then')
1685
1683
  .callFn([replaceCallback])
1686
1684
  .toStmt(),
@@ -4539,9 +4537,11 @@ function extractClassMetadata(clazz, reflection, isCore, annotateForClosureCompi
4539
4537
  }
4540
4538
  // Do the same for property decorators.
4541
4539
  let metaPropDecorators = null;
4542
- const classMembers = reflection
4543
- .getMembersOfClass(clazz)
4544
- .filter((member) => !member.isStatic && member.decorators !== null && member.decorators.length > 0);
4540
+ const classMembers = reflection.getMembersOfClass(clazz).filter((member) => !member.isStatic &&
4541
+ member.decorators !== null &&
4542
+ member.decorators.length > 0 &&
4543
+ // Private fields are not supported in the metadata emit
4544
+ member.accessLevel !== checker.ClassMemberAccessLevel.EcmaScriptPrivate);
4545
4545
  const duplicateDecoratedMembers = classMembers.filter((member, i, arr) => arr.findIndex((arrayMember) => arrayMember.name === member.name) < i);
4546
4546
  if (duplicateDecoratedMembers.length > 0) {
4547
4547
  // This should theoretically never happen, because the only way to have duplicate instance
@@ -7192,9 +7192,27 @@ class NgModuleDecoratorHandler {
7192
7192
  }
7193
7193
  }
7194
7194
  }
7195
- const schemas = this.compilationMode !== checker.CompilationMode.LOCAL && ngModule.has('schemas')
7196
- ? extractSchemas(ngModule.get('schemas'), this.evaluator, 'NgModule')
7197
- : [];
7195
+ let schemas;
7196
+ try {
7197
+ schemas =
7198
+ this.compilationMode !== checker.CompilationMode.LOCAL && ngModule.has('schemas')
7199
+ ? extractSchemas(ngModule.get('schemas'), this.evaluator, 'NgModule')
7200
+ : [];
7201
+ }
7202
+ catch (e) {
7203
+ if (e instanceof checker.FatalDiagnosticError) {
7204
+ diagnostics.push(e.toDiagnostic());
7205
+ // Use an empty schema array if schema extract fails.
7206
+ // A build will still fail in this case. However, for the language service,
7207
+ // this allows the module to exist in the compiler registry and prevents
7208
+ // cascading diagnostics within an IDE due to "missing" components. The
7209
+ // originating schema related errors will still be reported in the IDE.
7210
+ schemas = [];
7211
+ }
7212
+ else {
7213
+ throw e;
7214
+ }
7215
+ }
7198
7216
  let id = null;
7199
7217
  if (ngModule.has('id')) {
7200
7218
  const idExpr = ngModule.get('id');
@@ -10918,7 +10936,7 @@ class PipeDecoratorHandler {
10918
10936
  * @description
10919
10937
  * Entry point for all public APIs of the compiler-cli package.
10920
10938
  */
10921
- new compiler.Version('20.0.0-rc.0');
10939
+ new compiler.Version('20.0.0-rc.2');
10922
10940
 
10923
10941
  /**
10924
10942
  * Whether a given decorator should be treated as an Angular decorator.
@@ -16250,6 +16268,7 @@ var hasRequiredConstants;
16250
16268
  function requireConstants () {
16251
16269
  if (hasRequiredConstants) return constants;
16252
16270
  hasRequiredConstants = 1;
16271
+
16253
16272
  // Note: this is the semver.org version of the spec that it implements
16254
16273
  // Not necessarily the package version of this code.
16255
16274
  const SEMVER_SPEC_VERSION = '2.0.0';
@@ -16294,6 +16313,7 @@ var hasRequiredDebug;
16294
16313
  function requireDebug () {
16295
16314
  if (hasRequiredDebug) return debug_1;
16296
16315
  hasRequiredDebug = 1;
16316
+
16297
16317
  const debug = (
16298
16318
  typeof process === 'object' &&
16299
16319
  process.env &&
@@ -16312,6 +16332,7 @@ function requireRe () {
16312
16332
  if (hasRequiredRe) return re.exports;
16313
16333
  hasRequiredRe = 1;
16314
16334
  (function (module, exports) {
16335
+
16315
16336
  const {
16316
16337
  MAX_SAFE_COMPONENT_LENGTH,
16317
16338
  MAX_SAFE_BUILD_LENGTH,
@@ -16390,12 +16411,14 @@ function requireRe () {
16390
16411
 
16391
16412
  // ## Pre-release Version Identifier
16392
16413
  // A numeric identifier, or a non-numeric identifier.
16414
+ // Non-numberic identifiers include numberic identifiers but can be longer.
16415
+ // Therefore non-numberic identifiers must go first.
16393
16416
 
16394
- createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]
16395
- }|${src[t.NONNUMERICIDENTIFIER]})`);
16417
+ createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NONNUMERICIDENTIFIER]
16418
+ }|${src[t.NUMERICIDENTIFIER]})`);
16396
16419
 
16397
- createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]
16398
- }|${src[t.NONNUMERICIDENTIFIER]})`);
16420
+ createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NONNUMERICIDENTIFIER]
16421
+ }|${src[t.NUMERICIDENTIFIERLOOSE]})`);
16399
16422
 
16400
16423
  // ## Pre-release Version
16401
16424
  // Hyphen, followed by one or more dot-separated pre-release version
@@ -16541,6 +16564,7 @@ var hasRequiredParseOptions;
16541
16564
  function requireParseOptions () {
16542
16565
  if (hasRequiredParseOptions) return parseOptions_1;
16543
16566
  hasRequiredParseOptions = 1;
16567
+
16544
16568
  // parse out just the options we care about
16545
16569
  const looseOption = Object.freeze({ loose: true });
16546
16570
  const emptyOpts = Object.freeze({ });
@@ -16565,6 +16589,7 @@ var hasRequiredIdentifiers;
16565
16589
  function requireIdentifiers () {
16566
16590
  if (hasRequiredIdentifiers) return identifiers;
16567
16591
  hasRequiredIdentifiers = 1;
16592
+
16568
16593
  const numeric = /^[0-9]+$/;
16569
16594
  const compareIdentifiers = (a, b) => {
16570
16595
  const anum = numeric.test(a);
@@ -16597,9 +16622,10 @@ var hasRequiredSemver$1;
16597
16622
  function requireSemver$1 () {
16598
16623
  if (hasRequiredSemver$1) return semver$2;
16599
16624
  hasRequiredSemver$1 = 1;
16625
+
16600
16626
  const debug = requireDebug();
16601
16627
  const { MAX_LENGTH, MAX_SAFE_INTEGER } = requireConstants();
16602
- const { safeRe: re, safeSrc: src, t } = requireRe();
16628
+ const { safeRe: re, t } = requireRe();
16603
16629
 
16604
16630
  const parseOptions = requireParseOptions();
16605
16631
  const { compareIdentifiers } = requireIdentifiers();
@@ -16781,8 +16807,7 @@ function requireSemver$1 () {
16781
16807
  }
16782
16808
  // Avoid an invalid semver results
16783
16809
  if (identifier) {
16784
- const r = new RegExp(`^${this.options.loose ? src[t.PRERELEASELOOSE] : src[t.PRERELEASE]}$`);
16785
- const match = `-${identifier}`.match(r);
16810
+ const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
16786
16811
  if (!match || match[1] !== identifier) {
16787
16812
  throw new Error(`invalid identifier: ${identifier}`)
16788
16813
  }
@@ -16924,6 +16949,7 @@ var hasRequiredParse;
16924
16949
  function requireParse () {
16925
16950
  if (hasRequiredParse) return parse_1;
16926
16951
  hasRequiredParse = 1;
16952
+
16927
16953
  const SemVer = requireSemver$1();
16928
16954
  const parse = (version, options, throwErrors = false) => {
16929
16955
  if (version instanceof SemVer) {
@@ -16949,6 +16975,7 @@ var hasRequiredValid$1;
16949
16975
  function requireValid$1 () {
16950
16976
  if (hasRequiredValid$1) return valid_1;
16951
16977
  hasRequiredValid$1 = 1;
16978
+
16952
16979
  const parse = requireParse();
16953
16980
  const valid = (version, options) => {
16954
16981
  const v = parse(version, options);
@@ -16964,6 +16991,7 @@ var hasRequiredClean;
16964
16991
  function requireClean () {
16965
16992
  if (hasRequiredClean) return clean_1;
16966
16993
  hasRequiredClean = 1;
16994
+
16967
16995
  const parse = requireParse();
16968
16996
  const clean = (version, options) => {
16969
16997
  const s = parse(version.trim().replace(/^[=v]+/, ''), options);
@@ -16979,6 +17007,7 @@ var hasRequiredInc;
16979
17007
  function requireInc () {
16980
17008
  if (hasRequiredInc) return inc_1;
16981
17009
  hasRequiredInc = 1;
17010
+
16982
17011
  const SemVer = requireSemver$1();
16983
17012
 
16984
17013
  const inc = (version, release, options, identifier, identifierBase) => {
@@ -17007,6 +17036,7 @@ var hasRequiredDiff;
17007
17036
  function requireDiff () {
17008
17037
  if (hasRequiredDiff) return diff_1;
17009
17038
  hasRequiredDiff = 1;
17039
+
17010
17040
  const parse = requireParse();
17011
17041
 
17012
17042
  const diff = (version1, version2) => {
@@ -17074,6 +17104,7 @@ var hasRequiredMajor;
17074
17104
  function requireMajor () {
17075
17105
  if (hasRequiredMajor) return major_1;
17076
17106
  hasRequiredMajor = 1;
17107
+
17077
17108
  const SemVer = requireSemver$1();
17078
17109
  const major = (a, loose) => new SemVer(a, loose).major;
17079
17110
  major_1 = major;
@@ -17086,6 +17117,7 @@ var hasRequiredMinor;
17086
17117
  function requireMinor () {
17087
17118
  if (hasRequiredMinor) return minor_1;
17088
17119
  hasRequiredMinor = 1;
17120
+
17089
17121
  const SemVer = requireSemver$1();
17090
17122
  const minor = (a, loose) => new SemVer(a, loose).minor;
17091
17123
  minor_1 = minor;
@@ -17098,6 +17130,7 @@ var hasRequiredPatch;
17098
17130
  function requirePatch () {
17099
17131
  if (hasRequiredPatch) return patch_1;
17100
17132
  hasRequiredPatch = 1;
17133
+
17101
17134
  const SemVer = requireSemver$1();
17102
17135
  const patch = (a, loose) => new SemVer(a, loose).patch;
17103
17136
  patch_1 = patch;
@@ -17110,6 +17143,7 @@ var hasRequiredPrerelease;
17110
17143
  function requirePrerelease () {
17111
17144
  if (hasRequiredPrerelease) return prerelease_1;
17112
17145
  hasRequiredPrerelease = 1;
17146
+
17113
17147
  const parse = requireParse();
17114
17148
  const prerelease = (version, options) => {
17115
17149
  const parsed = parse(version, options);
@@ -17125,6 +17159,7 @@ var hasRequiredCompare;
17125
17159
  function requireCompare () {
17126
17160
  if (hasRequiredCompare) return compare_1;
17127
17161
  hasRequiredCompare = 1;
17162
+
17128
17163
  const SemVer = requireSemver$1();
17129
17164
  const compare = (a, b, loose) =>
17130
17165
  new SemVer(a, loose).compare(new SemVer(b, loose));
@@ -17139,6 +17174,7 @@ var hasRequiredRcompare;
17139
17174
  function requireRcompare () {
17140
17175
  if (hasRequiredRcompare) return rcompare_1;
17141
17176
  hasRequiredRcompare = 1;
17177
+
17142
17178
  const compare = requireCompare();
17143
17179
  const rcompare = (a, b, loose) => compare(b, a, loose);
17144
17180
  rcompare_1 = rcompare;
@@ -17151,6 +17187,7 @@ var hasRequiredCompareLoose;
17151
17187
  function requireCompareLoose () {
17152
17188
  if (hasRequiredCompareLoose) return compareLoose_1;
17153
17189
  hasRequiredCompareLoose = 1;
17190
+
17154
17191
  const compare = requireCompare();
17155
17192
  const compareLoose = (a, b) => compare(a, b, true);
17156
17193
  compareLoose_1 = compareLoose;
@@ -17163,6 +17200,7 @@ var hasRequiredCompareBuild;
17163
17200
  function requireCompareBuild () {
17164
17201
  if (hasRequiredCompareBuild) return compareBuild_1;
17165
17202
  hasRequiredCompareBuild = 1;
17203
+
17166
17204
  const SemVer = requireSemver$1();
17167
17205
  const compareBuild = (a, b, loose) => {
17168
17206
  const versionA = new SemVer(a, loose);
@@ -17179,6 +17217,7 @@ var hasRequiredSort;
17179
17217
  function requireSort () {
17180
17218
  if (hasRequiredSort) return sort_1;
17181
17219
  hasRequiredSort = 1;
17220
+
17182
17221
  const compareBuild = requireCompareBuild();
17183
17222
  const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
17184
17223
  sort_1 = sort;
@@ -17191,6 +17230,7 @@ var hasRequiredRsort;
17191
17230
  function requireRsort () {
17192
17231
  if (hasRequiredRsort) return rsort_1;
17193
17232
  hasRequiredRsort = 1;
17233
+
17194
17234
  const compareBuild = requireCompareBuild();
17195
17235
  const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
17196
17236
  rsort_1 = rsort;
@@ -17203,6 +17243,7 @@ var hasRequiredGt;
17203
17243
  function requireGt () {
17204
17244
  if (hasRequiredGt) return gt_1;
17205
17245
  hasRequiredGt = 1;
17246
+
17206
17247
  const compare = requireCompare();
17207
17248
  const gt = (a, b, loose) => compare(a, b, loose) > 0;
17208
17249
  gt_1 = gt;
@@ -17215,6 +17256,7 @@ var hasRequiredLt;
17215
17256
  function requireLt () {
17216
17257
  if (hasRequiredLt) return lt_1;
17217
17258
  hasRequiredLt = 1;
17259
+
17218
17260
  const compare = requireCompare();
17219
17261
  const lt = (a, b, loose) => compare(a, b, loose) < 0;
17220
17262
  lt_1 = lt;
@@ -17227,6 +17269,7 @@ var hasRequiredEq;
17227
17269
  function requireEq () {
17228
17270
  if (hasRequiredEq) return eq_1;
17229
17271
  hasRequiredEq = 1;
17272
+
17230
17273
  const compare = requireCompare();
17231
17274
  const eq = (a, b, loose) => compare(a, b, loose) === 0;
17232
17275
  eq_1 = eq;
@@ -17239,6 +17282,7 @@ var hasRequiredNeq;
17239
17282
  function requireNeq () {
17240
17283
  if (hasRequiredNeq) return neq_1;
17241
17284
  hasRequiredNeq = 1;
17285
+
17242
17286
  const compare = requireCompare();
17243
17287
  const neq = (a, b, loose) => compare(a, b, loose) !== 0;
17244
17288
  neq_1 = neq;
@@ -17251,6 +17295,7 @@ var hasRequiredGte;
17251
17295
  function requireGte () {
17252
17296
  if (hasRequiredGte) return gte_1;
17253
17297
  hasRequiredGte = 1;
17298
+
17254
17299
  const compare = requireCompare();
17255
17300
  const gte = (a, b, loose) => compare(a, b, loose) >= 0;
17256
17301
  gte_1 = gte;
@@ -17263,6 +17308,7 @@ var hasRequiredLte;
17263
17308
  function requireLte () {
17264
17309
  if (hasRequiredLte) return lte_1;
17265
17310
  hasRequiredLte = 1;
17311
+
17266
17312
  const compare = requireCompare();
17267
17313
  const lte = (a, b, loose) => compare(a, b, loose) <= 0;
17268
17314
  lte_1 = lte;
@@ -17275,6 +17321,7 @@ var hasRequiredCmp;
17275
17321
  function requireCmp () {
17276
17322
  if (hasRequiredCmp) return cmp_1;
17277
17323
  hasRequiredCmp = 1;
17324
+
17278
17325
  const eq = requireEq();
17279
17326
  const neq = requireNeq();
17280
17327
  const gt = requireGt();
@@ -17336,6 +17383,7 @@ var hasRequiredCoerce;
17336
17383
  function requireCoerce () {
17337
17384
  if (hasRequiredCoerce) return coerce_1;
17338
17385
  hasRequiredCoerce = 1;
17386
+
17339
17387
  const SemVer = requireSemver$1();
17340
17388
  const parse = requireParse();
17341
17389
  const { safeRe: re, t } = requireRe();
@@ -17405,6 +17453,7 @@ var hasRequiredLrucache;
17405
17453
  function requireLrucache () {
17406
17454
  if (hasRequiredLrucache) return lrucache;
17407
17455
  hasRequiredLrucache = 1;
17456
+
17408
17457
  class LRUCache {
17409
17458
  constructor () {
17410
17459
  this.max = 1000;
@@ -17454,6 +17503,7 @@ var hasRequiredRange;
17454
17503
  function requireRange () {
17455
17504
  if (hasRequiredRange) return range;
17456
17505
  hasRequiredRange = 1;
17506
+
17457
17507
  const SPACE_CHARACTERS = /\s+/g;
17458
17508
 
17459
17509
  // hoisted class for cyclic dependency
@@ -18017,6 +18067,7 @@ var hasRequiredComparator;
18017
18067
  function requireComparator () {
18018
18068
  if (hasRequiredComparator) return comparator;
18019
18069
  hasRequiredComparator = 1;
18070
+
18020
18071
  const ANY = Symbol('SemVer ANY');
18021
18072
  // hoisted class for cyclic dependency
18022
18073
  class Comparator {
@@ -18167,6 +18218,7 @@ var hasRequiredSatisfies;
18167
18218
  function requireSatisfies () {
18168
18219
  if (hasRequiredSatisfies) return satisfies_1;
18169
18220
  hasRequiredSatisfies = 1;
18221
+
18170
18222
  const Range = requireRange();
18171
18223
  const satisfies = (version, range, options) => {
18172
18224
  try {
@@ -18186,6 +18238,7 @@ var hasRequiredToComparators;
18186
18238
  function requireToComparators () {
18187
18239
  if (hasRequiredToComparators) return toComparators_1;
18188
18240
  hasRequiredToComparators = 1;
18241
+
18189
18242
  const Range = requireRange();
18190
18243
 
18191
18244
  // Mostly just for testing and legacy API reasons
@@ -18203,6 +18256,7 @@ var hasRequiredMaxSatisfying;
18203
18256
  function requireMaxSatisfying () {
18204
18257
  if (hasRequiredMaxSatisfying) return maxSatisfying_1;
18205
18258
  hasRequiredMaxSatisfying = 1;
18259
+
18206
18260
  const SemVer = requireSemver$1();
18207
18261
  const Range = requireRange();
18208
18262
 
@@ -18237,6 +18291,7 @@ var hasRequiredMinSatisfying;
18237
18291
  function requireMinSatisfying () {
18238
18292
  if (hasRequiredMinSatisfying) return minSatisfying_1;
18239
18293
  hasRequiredMinSatisfying = 1;
18294
+
18240
18295
  const SemVer = requireSemver$1();
18241
18296
  const Range = requireRange();
18242
18297
  const minSatisfying = (versions, range, options) => {
@@ -18270,6 +18325,7 @@ var hasRequiredMinVersion;
18270
18325
  function requireMinVersion () {
18271
18326
  if (hasRequiredMinVersion) return minVersion_1;
18272
18327
  hasRequiredMinVersion = 1;
18328
+
18273
18329
  const SemVer = requireSemver$1();
18274
18330
  const Range = requireRange();
18275
18331
  const gt = requireGt();
@@ -18340,6 +18396,7 @@ var hasRequiredValid;
18340
18396
  function requireValid () {
18341
18397
  if (hasRequiredValid) return valid;
18342
18398
  hasRequiredValid = 1;
18399
+
18343
18400
  const Range = requireRange();
18344
18401
  const validRange = (range, options) => {
18345
18402
  try {
@@ -18360,6 +18417,7 @@ var hasRequiredOutside;
18360
18417
  function requireOutside () {
18361
18418
  if (hasRequiredOutside) return outside_1;
18362
18419
  hasRequiredOutside = 1;
18420
+
18363
18421
  const SemVer = requireSemver$1();
18364
18422
  const Comparator = requireComparator();
18365
18423
  const { ANY } = Comparator;
@@ -18449,6 +18507,7 @@ var hasRequiredGtr;
18449
18507
  function requireGtr () {
18450
18508
  if (hasRequiredGtr) return gtr_1;
18451
18509
  hasRequiredGtr = 1;
18510
+
18452
18511
  // Determine if version is greater than all the versions possible in the range.
18453
18512
  const outside = requireOutside();
18454
18513
  const gtr = (version, range, options) => outside(version, range, '>', options);
@@ -18462,6 +18521,7 @@ var hasRequiredLtr;
18462
18521
  function requireLtr () {
18463
18522
  if (hasRequiredLtr) return ltr_1;
18464
18523
  hasRequiredLtr = 1;
18524
+
18465
18525
  const outside = requireOutside();
18466
18526
  // Determine if version is less than all the versions possible in the range
18467
18527
  const ltr = (version, range, options) => outside(version, range, '<', options);
@@ -18475,6 +18535,7 @@ var hasRequiredIntersects;
18475
18535
  function requireIntersects () {
18476
18536
  if (hasRequiredIntersects) return intersects_1;
18477
18537
  hasRequiredIntersects = 1;
18538
+
18478
18539
  const Range = requireRange();
18479
18540
  const intersects = (r1, r2, options) => {
18480
18541
  r1 = new Range(r1, options);
@@ -18491,6 +18552,7 @@ var hasRequiredSimplify;
18491
18552
  function requireSimplify () {
18492
18553
  if (hasRequiredSimplify) return simplify;
18493
18554
  hasRequiredSimplify = 1;
18555
+
18494
18556
  // given a set of versions and a range, create a "simplified" range
18495
18557
  // that includes the same versions that the original range does
18496
18558
  // If the original range is shorter than the simplified one, return that.
@@ -18547,6 +18609,7 @@ var hasRequiredSubset;
18547
18609
  function requireSubset () {
18548
18610
  if (hasRequiredSubset) return subset_1;
18549
18611
  hasRequiredSubset = 1;
18612
+
18550
18613
  const Range = requireRange();
18551
18614
  const Comparator = requireComparator();
18552
18615
  const { ANY } = Comparator;
@@ -18803,6 +18866,7 @@ var hasRequiredSemver;
18803
18866
  function requireSemver () {
18804
18867
  if (hasRequiredSemver) return semver$1;
18805
18868
  hasRequiredSemver = 1;
18869
+
18806
18870
  // just pre-load all the stuff that index.js lazily exports
18807
18871
  const internalRe = requireRe();
18808
18872
  const constants = requireConstants();
@@ -18913,7 +18977,7 @@ var semver = /*@__PURE__*/getDefaultExportFromCjs(semverExports);
18913
18977
  * @param minVersion Minimum required version for the feature.
18914
18978
  */
18915
18979
  function coreVersionSupportsFeature(coreVersion, minVersion) {
18916
- // A version of `20.0.0-rc.0` usually means that core is at head so it supports
18980
+ // A version of `20.0.0-rc.2` usually means that core is at head so it supports
18917
18981
  // all features. Use string interpolation prevent the placeholder from being replaced
18918
18982
  // with the current version during build time.
18919
18983
  if (coreVersion === `0.0.0-${'PLACEHOLDER'}`) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-rc.0
3
+ * @license Angular v20.0.0-rc.2
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,11 +8,11 @@
8
8
 
9
9
  var ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-BAl7CJ0l.js');
12
- var compiler = require('./compiler-BSv6JWRF.js');
13
- var index = require('./index-CxuDmkeg.js');
11
+ var checker = require('./checker-DmucNdBi.cjs');
12
+ var compiler = require('./compiler-DPq1iS19.cjs');
13
+ var index = require('./index-1H-qYSW6.cjs');
14
14
  require('path');
15
- var project_paths = require('./project_paths-Bl-H7Vlb.js');
15
+ var project_paths = require('./project_paths-DmvzlTQL.cjs');
16
16
 
17
17
  function getMemberName(member) {
18
18
  if (member.name === undefined) {
@@ -845,24 +845,33 @@ function identifyPotentialTypeScriptReference(node, programInfo, checker, knownF
845
845
  return;
846
846
  }
847
847
  let target = undefined;
848
- // Resolve binding elements to their declaration symbol.
849
- // Commonly inputs are accessed via object expansion. e.g. `const {input} = this;`.
850
- if (ts.isBindingElement(node.parent)) {
851
- // Skip binding elements that are using spread.
852
- if (node.parent.dotDotDotToken !== undefined) {
853
- return;
848
+ try {
849
+ // Resolve binding elements to their declaration symbol.
850
+ // Commonly inputs are accessed via object expansion. e.g. `const {input} = this;`.
851
+ if (ts.isBindingElement(node.parent)) {
852
+ // Skip binding elements that are using spread.
853
+ if (node.parent.dotDotDotToken !== undefined) {
854
+ return;
855
+ }
856
+ const bindingInfo = resolveBindingElement(node.parent);
857
+ if (bindingInfo === null) {
858
+ // The declaration could not be resolved. Skip analyzing this.
859
+ return;
860
+ }
861
+ const bindingType = checker.getTypeAtLocation(bindingInfo.pattern);
862
+ const resolved = lookupPropertyAccess(checker, bindingType, [bindingInfo.propertyName]);
863
+ target = resolved?.symbol;
854
864
  }
855
- const bindingInfo = resolveBindingElement(node.parent);
856
- if (bindingInfo === null) {
857
- // The declaration could not be resolved. Skip analyzing this.
858
- return;
865
+ else {
866
+ target = checker.getSymbolAtLocation(node);
859
867
  }
860
- const bindingType = checker.getTypeAtLocation(bindingInfo.pattern);
861
- const resolved = lookupPropertyAccess(checker, bindingType, [bindingInfo.propertyName]);
862
- target = resolved?.symbol;
863
868
  }
864
- else {
865
- target = checker.getSymbolAtLocation(node);
869
+ catch (e) {
870
+ console.error('Unexpected error while trying to resolve identifier reference:');
871
+ console.error(e);
872
+ // Gracefully skip analyzing. This can happen when e.g. a reference is named similar
873
+ // to an input, but is dependant on `.d.ts` that is not necessarily available (clutz dts).
874
+ return;
866
875
  }
867
876
  noTargetSymbolCheck: if (target === undefined) {
868
877
  if (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-rc.0
3
+ * @license Angular v20.0.0-rc.2
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,20 +8,20 @@
8
8
 
9
9
  var ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-BAl7CJ0l.js');
12
- require('./compiler-BSv6JWRF.js');
13
- require('./index-CxuDmkeg.js');
11
+ var checker = require('./checker-DmucNdBi.cjs');
12
+ require('./compiler-DPq1iS19.cjs');
13
+ require('./index-1H-qYSW6.cjs');
14
14
  require('path');
15
- var project_paths = require('./project_paths-Bl-H7Vlb.js');
16
- var apply_import_manager = require('./apply_import_manager-Coc7Hewu.js');
17
- var imports = require('./imports-CIX-JgAN.js');
15
+ var project_paths = require('./project_paths-DmvzlTQL.cjs');
16
+ var apply_import_manager = require('./apply_import_manager-BqwxKJiu.cjs');
17
+ var imports = require('./imports-CIX-JgAN.cjs');
18
18
  require('@angular-devkit/core');
19
19
  require('node:path/posix');
20
20
  require('fs');
21
21
  require('module');
22
22
  require('url');
23
23
  require('@angular-devkit/schematics');
24
- require('./project_tsconfig_paths-CDVxT6Ov.js');
24
+ require('./project_tsconfig_paths-CDVxT6Ov.cjs');
25
25
 
26
26
  /** Mapping between `InjectFlag` enum members to their object literal equvalients. */
27
27
  const FLAGS_TO_FIELDS = {
@@ -104,7 +104,7 @@ class InjectFlagsMigration extends project_paths.TsurgeFunnelMigration {
104
104
  return project_paths.confirmAsSerializable(combinedData);
105
105
  }
106
106
  async stats() {
107
- return { counters: {} };
107
+ return project_paths.confirmAsSerializable({});
108
108
  }
109
109
  }
110
110
  /** Gets an ID that can be used to look up a node based on its location. */