@angular/core 20.0.0-next.5 → 20.0.0-next.7

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 (69) hide show
  1. package/{api.d-mxcXqDpA.d.ts → api.d-KjtSQajV.d.ts} +4 -4
  2. package/{ng_i18n_closure_mode.d-DLxSUiDr.d.ts → chrome_dev_tools_performance.d-qv7drdAl.d.ts} +20 -5
  3. package/{discovery.d-CyYpOJ7j.d.ts → discovery.d-D6xf1HH-.d.ts} +8 -79
  4. package/{event_dispatcher.d-PWnbqZDx.d.ts → event_dispatcher.d-DlbccpYq.d.ts} +3 -3
  5. package/fesm2022/{attribute-B17mgaqe.mjs → attribute-BWp59EjE.mjs} +3 -3
  6. package/fesm2022/{attribute-B17mgaqe.mjs.map → attribute-BWp59EjE.mjs.map} +1 -1
  7. package/fesm2022/core.mjs +22 -31
  8. package/fesm2022/core.mjs.map +1 -1
  9. package/fesm2022/{debug_node-xKpCIZm-.mjs → debug_node-B3CixwNH.mjs} +218 -141
  10. package/fesm2022/debug_node-B3CixwNH.mjs.map +1 -0
  11. package/fesm2022/primitives/di.mjs +1 -1
  12. package/fesm2022/primitives/event-dispatch.mjs +2 -2
  13. package/fesm2022/primitives/signals.mjs +5 -5
  14. package/fesm2022/{resource-BPpYEDic.mjs → resource-DtpS_sTw.mjs} +6 -8
  15. package/fesm2022/resource-DtpS_sTw.mjs.map +1 -0
  16. package/fesm2022/{root_effect_scheduler-D0_b1cf_.mjs → root_effect_scheduler-BK3l7wIO.mjs} +144 -68
  17. package/fesm2022/root_effect_scheduler-BK3l7wIO.mjs.map +1 -0
  18. package/fesm2022/rxjs-interop.mjs +7 -84
  19. package/fesm2022/rxjs-interop.mjs.map +1 -1
  20. package/fesm2022/{signal-DhRAAi7R.mjs → signal-B6pMq7KS.mjs} +3 -3
  21. package/fesm2022/{signal-DhRAAi7R.mjs.map → signal-B6pMq7KS.mjs.map} +1 -1
  22. package/fesm2022/testing.mjs +167 -103
  23. package/fesm2022/testing.mjs.map +1 -1
  24. package/fesm2022/{untracked-DaaW3JJm.mjs → untracked-Bz5WMeU1.mjs} +4 -4
  25. package/fesm2022/{untracked-DaaW3JJm.mjs.map → untracked-Bz5WMeU1.mjs.map} +1 -1
  26. package/fesm2022/{weak_ref-DrMdAIDh.mjs → weak_ref-BaIq-pgY.mjs} +3 -3
  27. package/fesm2022/{weak_ref-DrMdAIDh.mjs.map → weak_ref-BaIq-pgY.mjs.map} +1 -1
  28. package/{graph.d-StYigYp1.d.ts → graph.d-BcIOep_B.d.ts} +3 -3
  29. package/index.d.ts +34 -41
  30. package/package.json +2 -2
  31. package/primitives/di/index.d.ts +1 -1
  32. package/primitives/event-dispatch/index.d.ts +3 -3
  33. package/primitives/signals/index.d.ts +6 -6
  34. package/rxjs-interop/index.d.ts +8 -17
  35. package/schematics/bundles/{apply_import_manager-C-ysxahq.js → apply_import_manager-DczRKpTm.js} +6 -6
  36. package/schematics/bundles/{change_tracker-0Ktek5Xl.js → change_tracker-CWLh-wes.js} +3 -3
  37. package/schematics/bundles/{checker-DqUKCGda.js → checker-_f5wM7PH.js} +20 -3
  38. package/schematics/bundles/cleanup-unused-imports.js +25 -20
  39. package/schematics/bundles/{compiler-CuoiHqkc.js → compiler-BaCbbux6.js} +964 -298
  40. package/schematics/bundles/compiler_host-CAfDJO3W.js +1 -1
  41. package/schematics/bundles/control-flow-migration.js +2 -2
  42. package/schematics/bundles/document-core.js +12 -12
  43. package/schematics/bundles/imports-CIX-JgAN.js +1 -1
  44. package/schematics/bundles/{index-CwFQSYXZ.js → index--W6S49uu.js} +10 -10
  45. package/schematics/bundles/{index-WFXCe5Q0.js → index-rsJ8I_hu.js} +131 -64
  46. package/schematics/bundles/inject-flags.js +14 -14
  47. package/schematics/bundles/inject-migration.js +108 -19
  48. package/schematics/bundles/leading_space-D9nQ8UQC.js +1 -1
  49. package/schematics/bundles/{migrate_ts_type_references-BNuHufqZ.js → migrate_ts_type_references-C4D_SzJk.js} +21 -21
  50. package/schematics/bundles/ng_decorators-DznZ5jMl.js +1 -1
  51. package/schematics/bundles/nodes-B16H9JUd.js +1 -1
  52. package/schematics/bundles/output-migration.js +80 -22
  53. package/schematics/bundles/{run_in_devkit-CmHxABFr.js → project_paths-Ce0O2u-M.js} +254 -244
  54. package/schematics/bundles/project_tsconfig_paths-CDVxT6Ov.js +1 -1
  55. package/schematics/bundles/property_name-BBwFuqMe.js +1 -1
  56. package/schematics/bundles/route-lazy-loading.js +4 -4
  57. package/schematics/bundles/self-closing-tags-migration.js +20 -15
  58. package/schematics/bundles/signal-input-migration.js +26 -21
  59. package/schematics/bundles/signal-queries-migration.js +32 -27
  60. package/schematics/bundles/signals.js +8 -8
  61. package/schematics/bundles/standalone-migration.js +5 -5
  62. package/schematics/bundles/symbol-VPWguRxr.js +1 -1
  63. package/schematics/bundles/test-bed-get.js +13 -13
  64. package/{signal.d-BeaTIeOE.d.ts → signal.d-E0e5nW1p.d.ts} +4 -4
  65. package/testing/index.d.ts +9 -25
  66. package/{weak_ref.d-ttyj86RV.d.ts → weak_ref.d-eGOEP9S1.d.ts} +2 -2
  67. package/fesm2022/debug_node-xKpCIZm-.mjs.map +0 -1
  68. package/fesm2022/resource-BPpYEDic.mjs.map +0 -1
  69. package/fesm2022/root_effect_scheduler-D0_b1cf_.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
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-DqUKCGda.js');
12
- var compiler = require('./compiler-CuoiHqkc.js');
13
- require('./index-WFXCe5Q0.js');
11
+ var checker = require('./checker-_f5wM7PH.js');
12
+ var compiler = require('./compiler-BaCbbux6.js');
13
+ require('./index-rsJ8I_hu.js');
14
14
  require('path');
15
- var run_in_devkit = require('./run_in_devkit-CmHxABFr.js');
15
+ var project_paths = require('./project_paths-Ce0O2u-M.js');
16
16
  var ng_decorators = require('./ng_decorators-DznZ5jMl.js');
17
17
  var property_name = require('./property_name-BBwFuqMe.js');
18
18
  require('@angular-devkit/core');
@@ -298,7 +298,7 @@ class AngularElementCollector extends compiler.RecursiveVisitor$1 {
298
298
  }
299
299
  }
300
300
 
301
- class SelfClosingTagsMigration extends run_in_devkit.TsurgeFunnelMigration {
301
+ class SelfClosingTagsMigration extends project_paths.TsurgeFunnelMigration {
302
302
  config;
303
303
  constructor(config = {}) {
304
304
  super();
@@ -314,7 +314,7 @@ class SelfClosingTagsMigration extends run_in_devkit.TsurgeFunnelMigration {
314
314
  if (!ts.isClassDeclaration(node)) {
315
315
  return;
316
316
  }
317
- const file = run_in_devkit.projectFile(node.getSourceFile(), info);
317
+ const file = project_paths.projectFile(node.getSourceFile(), info);
318
318
  if (this.config.shouldMigrate && this.config.shouldMigrate(file) === false) {
319
319
  return;
320
320
  }
@@ -327,7 +327,7 @@ class SelfClosingTagsMigration extends run_in_devkit.TsurgeFunnelMigration {
327
327
  }
328
328
  const fileToMigrate = template.inline
329
329
  ? file
330
- : run_in_devkit.projectFile(template.filePath, info);
330
+ : project_paths.projectFile(template.filePath, info);
331
331
  const end = template.start + template.content.length;
332
332
  const replacements = [
333
333
  prepareTextReplacement(fileToMigrate, migrated, template.start, end),
@@ -343,20 +343,20 @@ class SelfClosingTagsMigration extends run_in_devkit.TsurgeFunnelMigration {
343
343
  });
344
344
  });
345
345
  }
346
- return run_in_devkit.confirmAsSerializable({ tagReplacements });
346
+ return project_paths.confirmAsSerializable({ tagReplacements });
347
347
  }
348
348
  async combine(unitA, unitB) {
349
349
  const uniqueReplacements = removeDuplicateReplacements([
350
350
  ...unitA.tagReplacements,
351
351
  ...unitB.tagReplacements,
352
352
  ]);
353
- return run_in_devkit.confirmAsSerializable({ tagReplacements: uniqueReplacements });
353
+ return project_paths.confirmAsSerializable({ tagReplacements: uniqueReplacements });
354
354
  }
355
355
  async globalMeta(combinedData) {
356
356
  const globalMeta = {
357
357
  tagReplacements: combinedData.tagReplacements,
358
358
  };
359
- return run_in_devkit.confirmAsSerializable(globalMeta);
359
+ return project_paths.confirmAsSerializable(globalMeta);
360
360
  }
361
361
  async stats(globalMetadata) {
362
362
  const touchedFilesCount = globalMetadata.tagReplacements.length;
@@ -373,7 +373,7 @@ class SelfClosingTagsMigration extends run_in_devkit.TsurgeFunnelMigration {
373
373
  }
374
374
  }
375
375
  function prepareTextReplacement(file, replacement, start, end) {
376
- return new run_in_devkit.Replacement(file, new run_in_devkit.TextUpdate({
376
+ return new project_paths.Replacement(file, new project_paths.TextUpdate({
377
377
  position: start,
378
378
  end: end,
379
379
  toInsert: replacement,
@@ -394,7 +394,7 @@ function removeDuplicateReplacements(replacements) {
394
394
 
395
395
  function migrate(options) {
396
396
  return async (tree, context) => {
397
- await run_in_devkit.runMigrationInDevkit({
397
+ await project_paths.runMigrationInDevkit({
398
398
  tree,
399
399
  getMigration: (fs) => new SelfClosingTagsMigration({
400
400
  shouldMigrate: (file) => {
@@ -402,8 +402,13 @@ function migrate(options) {
402
402
  !/(^|\/)node_modules\//.test(file.rootRelativePath));
403
403
  },
404
404
  }),
405
- beforeProgramCreation: (tsconfigPath) => {
406
- context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
405
+ beforeProgramCreation: (tsconfigPath, stage) => {
406
+ if (stage === project_paths.MigrationStage.Analysis) {
407
+ context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
408
+ }
409
+ else {
410
+ context.logger.info(`Running migration for: ${tsconfigPath}...`);
411
+ }
407
412
  },
408
413
  beforeUnitAnalysis: (tsconfigPath) => {
409
414
  context.logger.info(`Scanning for component tags: ${tsconfigPath}...`);
@@ -1,22 +1,22 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
7
7
  'use strict';
8
8
 
9
- var migrate_ts_type_references = require('./migrate_ts_type_references-BNuHufqZ.js');
9
+ var migrate_ts_type_references = require('./migrate_ts_type_references-C4D_SzJk.js');
10
10
  var ts = require('typescript');
11
11
  require('os');
12
- var checker = require('./checker-DqUKCGda.js');
13
- require('./compiler-CuoiHqkc.js');
14
- var index$1 = require('./index-WFXCe5Q0.js');
12
+ var checker = require('./checker-_f5wM7PH.js');
13
+ require('./compiler-BaCbbux6.js');
14
+ var index$1 = require('./index-rsJ8I_hu.js');
15
15
  require('path');
16
- var run_in_devkit = require('./run_in_devkit-CmHxABFr.js');
17
- var index = require('./index-CwFQSYXZ.js');
16
+ var project_paths = require('./project_paths-Ce0O2u-M.js');
17
+ var index = require('./index--W6S49uu.js');
18
18
  var assert = require('assert');
19
- var apply_import_manager = require('./apply_import_manager-C-ysxahq.js');
19
+ var apply_import_manager = require('./apply_import_manager-DczRKpTm.js');
20
20
  require('@angular-devkit/core');
21
21
  require('node:path/posix');
22
22
  require('./leading_space-D9nQ8UQC.js');
@@ -103,7 +103,7 @@ function getInputDescriptor(hostOrInfo, node) {
103
103
  className = node.parent.name?.text ?? '<anonymous>';
104
104
  }
105
105
  const info = hostOrInfo instanceof MigrationHost ? hostOrInfo.programInfo : hostOrInfo;
106
- const file = run_in_devkit.projectFile(node.getSourceFile(), info);
106
+ const file = project_paths.projectFile(node.getSourceFile(), info);
107
107
  // Inputs may be detected in `.d.ts` files. Ensure that if the file IDs
108
108
  // match regardless of extension. E.g. `/google3/blaze-out/bin/my_file.ts` should
109
109
  // have the same ID as `/google3/my_file.ts`.
@@ -182,7 +182,7 @@ class KnownInputs {
182
182
  }
183
183
  const directiveInfo = this._classToDirectiveInfo.get(data.node.parent);
184
184
  const inputInfo = {
185
- file: run_in_devkit.projectFile(data.node.getSourceFile(), this.programInfo),
185
+ file: project_paths.projectFile(data.node.getSourceFile(), this.programInfo),
186
186
  metadata: data.metadata,
187
187
  descriptor: data.descriptor,
188
188
  container: directiveInfo,
@@ -1036,7 +1036,7 @@ function convertToSignalInput(node, { resolvedMetadata: metadata, resolvedType,
1036
1036
  if (leadingTodoText !== null) {
1037
1037
  replacements.push(migrate_ts_type_references.insertPrecedingLine(node, info, '// TODO: Notes from signal input migration:'), ...migrate_ts_type_references.cutStringToLineLimit(leadingTodoText, 70).map((line) => migrate_ts_type_references.insertPrecedingLine(node, info, `// ${line}`)));
1038
1038
  }
1039
- replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(node.getSourceFile(), info), new run_in_devkit.TextUpdate({
1039
+ replacements.push(new project_paths.Replacement(project_paths.projectFile(node.getSourceFile(), info), new project_paths.TextUpdate({
1040
1040
  position: node.getStart(),
1041
1041
  end: node.getEnd(),
1042
1042
  toInsert: newPropertyText,
@@ -1154,7 +1154,7 @@ function pass7__migrateTemplateReferences(host, references) {
1154
1154
  const appendText = reference.from.isObjectShorthandExpression
1155
1155
  ? `: ${reference.from.read.name}()`
1156
1156
  : `()`;
1157
- host.replacements.push(new run_in_devkit.Replacement(reference.from.templateFile, new run_in_devkit.TextUpdate({
1157
+ host.replacements.push(new project_paths.Replacement(reference.from.templateFile, new project_paths.TextUpdate({
1158
1158
  position: reference.from.read.sourceSpan.end,
1159
1159
  end: reference.from.read.sourceSpan.end,
1160
1160
  toInsert: appendText,
@@ -1194,7 +1194,7 @@ function pass8__migrateHostBindings(host, references, info) {
1194
1194
  const appendText = reference.from.isObjectShorthandExpression
1195
1195
  ? `: ${reference.from.read.name}()`
1196
1196
  : `()`;
1197
- host.replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(bindingField.getSourceFile(), info), new run_in_devkit.TextUpdate({ position: readEndPos, end: readEndPos, toInsert: appendText })));
1197
+ host.replacements.push(new project_paths.Replacement(project_paths.projectFile(bindingField.getSourceFile(), info), new project_paths.TextUpdate({ position: readEndPos, end: readEndPos, toInsert: appendText })));
1198
1198
  }
1199
1199
  }
1200
1200
 
@@ -1257,7 +1257,7 @@ function filterIncompatibilitiesForBestEffortMode(knownInputs) {
1257
1257
  * Tsurge migration for migrating Angular `@Input()` declarations to
1258
1258
  * signal inputs, with support for batch execution.
1259
1259
  */
1260
- class SignalInputMigration extends run_in_devkit.TsurgeComplexMigration {
1260
+ class SignalInputMigration extends project_paths.TsurgeComplexMigration {
1261
1261
  config;
1262
1262
  upgradedAnalysisPhaseResults = null;
1263
1263
  constructor(config = {}) {
@@ -1266,7 +1266,7 @@ class SignalInputMigration extends run_in_devkit.TsurgeComplexMigration {
1266
1266
  }
1267
1267
  // Override the default program creation, to add extra flags.
1268
1268
  createProgram(tsconfigAbsPath, fs) {
1269
- return run_in_devkit.createBaseProgramInfo(tsconfigAbsPath, fs, {
1269
+ return project_paths.createBaseProgramInfo(tsconfigAbsPath, fs, {
1270
1270
  _compilePoisonedComponents: true,
1271
1271
  // We want to migrate non-exported classes too.
1272
1272
  compileNonExportedClasses: true,
@@ -1338,13 +1338,13 @@ class SignalInputMigration extends run_in_devkit.TsurgeComplexMigration {
1338
1338
  knownInputs,
1339
1339
  };
1340
1340
  }
1341
- return run_in_devkit.confirmAsSerializable(unitData);
1341
+ return project_paths.confirmAsSerializable(unitData);
1342
1342
  }
1343
1343
  async combine(unitA, unitB) {
1344
- return run_in_devkit.confirmAsSerializable(combineCompilationUnitData(unitA, unitB));
1344
+ return project_paths.confirmAsSerializable(combineCompilationUnitData(unitA, unitB));
1345
1345
  }
1346
1346
  async globalMeta(combinedData) {
1347
- return run_in_devkit.confirmAsSerializable(convertToGlobalMeta(combinedData));
1347
+ return project_paths.confirmAsSerializable(convertToGlobalMeta(combinedData));
1348
1348
  }
1349
1349
  async migrate(globalMetadata, info, nonBatchData) {
1350
1350
  const knownInputs = nonBatchData?.knownInputs ?? new KnownInputs(info, this.config);
@@ -1434,7 +1434,7 @@ function createMigrationHost(info, config) {
1434
1434
 
1435
1435
  function migrate(options) {
1436
1436
  return async (tree, context) => {
1437
- await run_in_devkit.runMigrationInDevkit({
1437
+ await project_paths.runMigrationInDevkit({
1438
1438
  tree,
1439
1439
  getMigration: (fs) => new SignalInputMigration({
1440
1440
  bestEffortMode: options.bestEffortMode,
@@ -1444,8 +1444,13 @@ function migrate(options) {
1444
1444
  !/(^|\/)node_modules\//.test(input.file.rootRelativePath));
1445
1445
  },
1446
1446
  }),
1447
- beforeProgramCreation: (tsconfigPath) => {
1448
- context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
1447
+ beforeProgramCreation: (tsconfigPath, stage) => {
1448
+ if (stage === project_paths.MigrationStage.Analysis) {
1449
+ context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
1450
+ }
1451
+ else {
1452
+ context.logger.info(`Running migration for: ${tsconfigPath}...`);
1453
+ }
1449
1454
  },
1450
1455
  afterProgramCreation: (info, fs) => {
1451
1456
  const analysisPath = fs.resolve(options.analysisDir);
@@ -1,22 +1,22 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
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-CuoiHqkc.js');
9
+ var compiler = require('./compiler-BaCbbux6.js');
10
10
  var ts = require('typescript');
11
- var checker = require('./checker-DqUKCGda.js');
11
+ var checker = require('./checker-_f5wM7PH.js');
12
12
  require('os');
13
- var index$1 = require('./index-WFXCe5Q0.js');
13
+ var index$1 = require('./index-rsJ8I_hu.js');
14
14
  require('path');
15
- var run_in_devkit = require('./run_in_devkit-CmHxABFr.js');
16
- var apply_import_manager = require('./apply_import_manager-C-ysxahq.js');
17
- var migrate_ts_type_references = require('./migrate_ts_type_references-BNuHufqZ.js');
15
+ var project_paths = require('./project_paths-Ce0O2u-M.js');
16
+ var apply_import_manager = require('./apply_import_manager-DczRKpTm.js');
17
+ var migrate_ts_type_references = require('./migrate_ts_type_references-C4D_SzJk.js');
18
18
  var assert = require('assert');
19
- var index = require('./index-CwFQSYXZ.js');
19
+ var index = require('./index--W6S49uu.js');
20
20
  require('@angular-devkit/core');
21
21
  require('node:path/posix');
22
22
  require('fs');
@@ -58,7 +58,7 @@ function migrateHostBindings(host, references, info) {
58
58
  const appendText = reference.from.isObjectShorthandExpression
59
59
  ? `: ${reference.from.read.name}()`
60
60
  : `()`;
61
- host.replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(bindingField.getSourceFile(), info), new run_in_devkit.TextUpdate({ position: readEndPos, end: readEndPos, toInsert: appendText })));
61
+ host.replacements.push(new project_paths.Replacement(project_paths.projectFile(bindingField.getSourceFile(), info), new project_paths.TextUpdate({ position: readEndPos, end: readEndPos, toInsert: appendText })));
62
62
  }
63
63
  }
64
64
 
@@ -87,7 +87,7 @@ function migrateTemplateReferences(host, references) {
87
87
  const appendText = reference.from.isObjectShorthandExpression
88
88
  ? `: ${reference.from.read.name}()`
89
89
  : `()`;
90
- host.replacements.push(new run_in_devkit.Replacement(reference.from.templateFile, new run_in_devkit.TextUpdate({
90
+ host.replacements.push(new project_paths.Replacement(reference.from.templateFile, new project_paths.TextUpdate({
91
91
  position: reference.from.read.sourceSpan.end,
92
92
  end: reference.from.read.sourceSpan.end,
93
93
  toInsert: appendText,
@@ -225,7 +225,7 @@ function computeReplacementsToMigrateQuery(node, metadata, importManager, info,
225
225
  }
226
226
  const updated = ts.factory.createPropertyDeclaration(modifiers, node.name, undefined, undefined, call);
227
227
  return [
228
- new run_in_devkit.Replacement(run_in_devkit.projectFile(node.getSourceFile(), info), new run_in_devkit.TextUpdate({
228
+ new project_paths.Replacement(project_paths.projectFile(node.getSourceFile(), info), new project_paths.TextUpdate({
229
229
  position: node.getStart(),
230
230
  end: node.getEnd(),
231
231
  toInsert: printer.printNode(ts.EmitHint.Unspecified, updated, sf),
@@ -271,7 +271,7 @@ function getUniqueIDForClassProperty(property, info) {
271
271
  if (property.name === undefined) {
272
272
  return null;
273
273
  }
274
- const id = run_in_devkit.projectFile(property.getSourceFile(), info).id.replace(/\.d\.ts$/, '.ts');
274
+ const id = project_paths.projectFile(property.getSourceFile(), info).id.replace(/\.d\.ts$/, '.ts');
275
275
  // Note: If a class is nested, there could be an ID clash.
276
276
  // This is highly unlikely though, and this is not a problem because
277
277
  // in such cases, there is even less chance there are any references to
@@ -395,7 +395,7 @@ class KnownQueries {
395
395
  });
396
396
  this.knownQueryIDs.set(id, { key: id, node: queryField });
397
397
  const descriptor = { key: id, node: queryField };
398
- const file = run_in_devkit.projectFile(queryField.getSourceFile(), this.info);
398
+ const file = project_paths.projectFile(queryField.getSourceFile(), this.info);
399
399
  if (this.config.shouldMigrateQuery !== undefined &&
400
400
  !this.config.shouldMigrateQuery(descriptor, file)) {
401
401
  this.markFieldIncompatible(descriptor, {
@@ -594,7 +594,7 @@ function removeQueryListToArrayCall(ref, info, globalMetadata, knownQueries, rep
594
594
  return;
595
595
  }
596
596
  const toArrayExpr = toArrayCallExpr.expression;
597
- replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(toArrayExpr.getSourceFile(), info), new run_in_devkit.TextUpdate({
597
+ replacements.push(new project_paths.Replacement(project_paths.projectFile(toArrayExpr.getSourceFile(), info), new project_paths.TextUpdate({
598
598
  // Delete from expression end to call end. E.g. `.toArray(<..>)`.
599
599
  position: toArrayExpr.expression.getEnd(),
600
600
  end: toArrayCallExpr.getEnd(),
@@ -609,7 +609,7 @@ function removeQueryListToArrayCall(ref, info, globalMetadata, knownQueries, rep
609
609
  }
610
610
  const file = index.isHostBindingReference(ref) ? ref.from.file : ref.from.templateFile;
611
611
  const offset = index.isHostBindingReference(ref) ? ref.from.hostPropertyNode.getStart() + 1 : 0;
612
- replacements.push(new run_in_devkit.Replacement(file, new run_in_devkit.TextUpdate({
612
+ replacements.push(new project_paths.Replacement(file, new project_paths.TextUpdate({
613
613
  // Delete from expression end to call end. E.g. `.toArray(<..>)`.
614
614
  position: offset + callExpr.receiver.receiver.sourceSpan.end,
615
615
  end: offset + callExpr.sourceSpan.end,
@@ -633,7 +633,7 @@ function replaceQueryListGetCall(ref, info, globalMetadata, knownQueries, replac
633
633
  return;
634
634
  }
635
635
  const getExpr = getCallExpr.expression;
636
- replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(getExpr.getSourceFile(), info), new run_in_devkit.TextUpdate({
636
+ replacements.push(new project_paths.Replacement(project_paths.projectFile(getExpr.getSourceFile(), info), new project_paths.TextUpdate({
637
637
  position: getExpr.name.getStart(),
638
638
  end: getExpr.name.getEnd(),
639
639
  toInsert: 'at',
@@ -647,7 +647,7 @@ function replaceQueryListGetCall(ref, info, globalMetadata, knownQueries, replac
647
647
  }
648
648
  const file = index.isHostBindingReference(ref) ? ref.from.file : ref.from.templateFile;
649
649
  const offset = index.isHostBindingReference(ref) ? ref.from.hostPropertyNode.getStart() + 1 : 0;
650
- replacements.push(new run_in_devkit.Replacement(file, new run_in_devkit.TextUpdate({
650
+ replacements.push(new project_paths.Replacement(file, new project_paths.TextUpdate({
651
651
  position: offset + callExpr.receiver.nameSpan.start,
652
652
  end: offset + callExpr.receiver.nameSpan.end,
653
653
  toInsert: 'at',
@@ -702,7 +702,7 @@ function replaceQueryListFirstAndLastReferences(ref, info, globalMetadata, known
702
702
  if (expr === null) {
703
703
  return;
704
704
  }
705
- replacements.push(new run_in_devkit.Replacement(run_in_devkit.projectFile(expr.getSourceFile(), info), new run_in_devkit.TextUpdate({
705
+ replacements.push(new project_paths.Replacement(project_paths.projectFile(expr.getSourceFile(), info), new project_paths.TextUpdate({
706
706
  position: expr.name.getStart(),
707
707
  end: expr.name.getEnd(),
708
708
  toInsert: mapping.get(expr.name.text),
@@ -716,14 +716,14 @@ function replaceQueryListFirstAndLastReferences(ref, info, globalMetadata, known
716
716
  }
717
717
  const file = index.isHostBindingReference(ref) ? ref.from.file : ref.from.templateFile;
718
718
  const offset = index.isHostBindingReference(ref) ? ref.from.hostPropertyNode.getStart() + 1 : 0;
719
- replacements.push(new run_in_devkit.Replacement(file, new run_in_devkit.TextUpdate({
719
+ replacements.push(new project_paths.Replacement(file, new project_paths.TextUpdate({
720
720
  position: offset + expr.nameSpan.start,
721
721
  end: offset + expr.nameSpan.end,
722
722
  toInsert: mapping.get(expr.name),
723
723
  })));
724
724
  }
725
725
 
726
- class SignalQueriesMigration extends run_in_devkit.TsurgeComplexMigration {
726
+ class SignalQueriesMigration extends project_paths.TsurgeComplexMigration {
727
727
  config;
728
728
  constructor(config = {}) {
729
729
  super();
@@ -761,7 +761,7 @@ class SignalQueriesMigration extends run_in_devkit.TsurgeComplexMigration {
761
761
  key: extractedQuery.id,
762
762
  node: queryNode,
763
763
  };
764
- const containingFile = run_in_devkit.projectFile(queryNode.getSourceFile(), info);
764
+ const containingFile = project_paths.projectFile(queryNode.getSourceFile(), info);
765
765
  // If we have a config filter function, use it here for later
766
766
  // perf-boosted reference lookups. Useful in non-batch mode.
767
767
  if (this.config.shouldMigrateQuery === undefined ||
@@ -865,7 +865,7 @@ class SignalQueriesMigration extends run_in_devkit.TsurgeComplexMigration {
865
865
  if (this.config.assumeNonBatch) {
866
866
  res.reusableAnalysisReferences = referenceResult.references;
867
867
  }
868
- return run_in_devkit.confirmAsSerializable(res);
868
+ return project_paths.confirmAsSerializable(res);
869
869
  }
870
870
  async combine(unitA, unitB) {
871
871
  const combined = {
@@ -905,7 +905,7 @@ class SignalQueriesMigration extends run_in_devkit.TsurgeComplexMigration {
905
905
  }
906
906
  }
907
907
  }
908
- return run_in_devkit.confirmAsSerializable(combined);
908
+ return project_paths.confirmAsSerializable(combined);
909
909
  }
910
910
  async globalMeta(combinedData) {
911
911
  const globalUnitData = {
@@ -918,7 +918,7 @@ class SignalQueriesMigration extends run_in_devkit.TsurgeComplexMigration {
918
918
  markFieldIncompatibleInMetadata(globalUnitData.problematicQueries, id, migrate_ts_type_references.FieldIncompatibilityReason.SignalQueries__QueryListProblematicFieldAccessed);
919
919
  }
920
920
  }
921
- return run_in_devkit.confirmAsSerializable(globalUnitData);
921
+ return project_paths.confirmAsSerializable(globalUnitData);
922
922
  }
923
923
  async migrate(globalMetadata, info) {
924
924
  // Pre-Analyze the program and get access to the template type checker.
@@ -1119,7 +1119,7 @@ function updateFileState(stateMap, node, queryType) {
1119
1119
 
1120
1120
  function migrate(options) {
1121
1121
  return async (tree, context) => {
1122
- await run_in_devkit.runMigrationInDevkit({
1122
+ await project_paths.runMigrationInDevkit({
1123
1123
  tree,
1124
1124
  getMigration: (fs) => new SignalQueriesMigration({
1125
1125
  bestEffortMode: options.bestEffortMode,
@@ -1129,8 +1129,13 @@ function migrate(options) {
1129
1129
  !/(^|\/)node_modules\//.test(file.rootRelativePath));
1130
1130
  },
1131
1131
  }),
1132
- beforeProgramCreation: (tsconfigPath) => {
1133
- context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
1132
+ beforeProgramCreation: (tsconfigPath, stage) => {
1133
+ if (stage === project_paths.MigrationStage.Analysis) {
1134
+ context.logger.info(`Preparing analysis for: ${tsconfigPath}...`);
1135
+ }
1136
+ else {
1137
+ context.logger.info(`Running migration for: ${tsconfigPath}...`);
1138
+ }
1134
1139
  },
1135
1140
  afterProgramCreation: (info, fs) => {
1136
1141
  const analysisPath = fs.resolve(options.analysisDir);
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -10,23 +10,23 @@ var schematics = require('@angular-devkit/schematics');
10
10
  var signalQueriesMigration = require('./signal-queries-migration.js');
11
11
  var signalInputMigration = require('./signal-input-migration.js');
12
12
  var outputMigration = require('./output-migration.js');
13
- require('./compiler-CuoiHqkc.js');
13
+ require('./compiler-BaCbbux6.js');
14
14
  require('typescript');
15
- require('./checker-DqUKCGda.js');
15
+ require('./checker-_f5wM7PH.js');
16
16
  require('os');
17
17
  require('fs');
18
18
  require('module');
19
19
  require('path');
20
20
  require('url');
21
- require('./index-WFXCe5Q0.js');
22
- require('./run_in_devkit-CmHxABFr.js');
21
+ require('./index-rsJ8I_hu.js');
22
+ require('./project_paths-Ce0O2u-M.js');
23
23
  require('@angular-devkit/core');
24
24
  require('node:path/posix');
25
25
  require('./project_tsconfig_paths-CDVxT6Ov.js');
26
- require('./apply_import_manager-C-ysxahq.js');
27
- require('./migrate_ts_type_references-BNuHufqZ.js');
26
+ require('./apply_import_manager-DczRKpTm.js');
27
+ require('./migrate_ts_type_references-C4D_SzJk.js');
28
28
  require('assert');
29
- require('./index-CwFQSYXZ.js');
29
+ require('./index--W6S49uu.js');
30
30
  require('./leading_space-D9nQ8UQC.js');
31
31
 
32
32
  function migrate(options) {
@@ -1,25 +1,25 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
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 schematics = require('@angular-devkit/schematics');
10
- var index = require('./index-WFXCe5Q0.js');
10
+ var index = require('./index-rsJ8I_hu.js');
11
11
  var fs = require('fs');
12
12
  var p = require('path');
13
13
  var ts = require('typescript');
14
- var change_tracker = require('./change_tracker-0Ktek5Xl.js');
14
+ var change_tracker = require('./change_tracker-CWLh-wes.js');
15
15
  var project_tsconfig_paths = require('./project_tsconfig_paths-CDVxT6Ov.js');
16
16
  var compiler_host = require('./compiler_host-CAfDJO3W.js');
17
17
  var ng_decorators = require('./ng_decorators-DznZ5jMl.js');
18
18
  var nodes = require('./nodes-B16H9JUd.js');
19
19
  var symbol = require('./symbol-VPWguRxr.js');
20
20
  var imports = require('./imports-CIX-JgAN.js');
21
- require('./compiler-CuoiHqkc.js');
22
- var checker = require('./checker-DqUKCGda.js');
21
+ require('./compiler-BaCbbux6.js');
22
+ var checker = require('./checker-_f5wM7PH.js');
23
23
  require('os');
24
24
  require('@angular-devkit/core');
25
25
  require('module');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.0-next.5
3
+ * @license Angular v20.0.0-next.7
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
- require('./checker-DqUKCGda.js');
12
- require('./compiler-CuoiHqkc.js');
13
- require('./index-WFXCe5Q0.js');
11
+ require('./checker-_f5wM7PH.js');
12
+ require('./compiler-BaCbbux6.js');
13
+ require('./index-rsJ8I_hu.js');
14
14
  require('path');
15
- var run_in_devkit = require('./run_in_devkit-CmHxABFr.js');
15
+ var project_paths = require('./project_paths-Ce0O2u-M.js');
16
16
  var imports = require('./imports-CIX-JgAN.js');
17
17
  var symbol = require('./symbol-VPWguRxr.js');
18
18
  require('@angular-devkit/core');
@@ -26,7 +26,7 @@ require('./project_tsconfig_paths-CDVxT6Ov.js');
26
26
  /** Name of the method being replaced. */
27
27
  const METHOD_NAME = 'get';
28
28
  /** Migration that replaces `TestBed.get` usages with `TestBed.inject`. */
29
- class TestBedGetMigration extends run_in_devkit.TsurgeFunnelMigration {
29
+ class TestBedGetMigration extends project_paths.TsurgeFunnelMigration {
30
30
  async analyze(info) {
31
31
  const locations = [];
32
32
  for (const sourceFile of info.sourceFiles) {
@@ -40,24 +40,24 @@ class TestBedGetMigration extends run_in_devkit.TsurgeFunnelMigration {
40
40
  node.name.text === METHOD_NAME &&
41
41
  ts.isIdentifier(node.expression) &&
42
42
  symbol.isReferenceToImport(typeChecker, node.expression, specifier)) {
43
- locations.push({ file: run_in_devkit.projectFile(sourceFile, info), position: node.name.getStart() });
43
+ locations.push({ file: project_paths.projectFile(sourceFile, info), position: node.name.getStart() });
44
44
  }
45
45
  else {
46
46
  node.forEachChild(walk);
47
47
  }
48
48
  });
49
49
  }
50
- return run_in_devkit.confirmAsSerializable({ locations });
50
+ return project_paths.confirmAsSerializable({ locations });
51
51
  }
52
52
  async migrate(globalData) {
53
53
  const replacements = globalData.locations.map(({ file, position }) => {
54
- return new run_in_devkit.Replacement(file, new run_in_devkit.TextUpdate({
54
+ return new project_paths.Replacement(file, new project_paths.TextUpdate({
55
55
  position: position,
56
56
  end: position + METHOD_NAME.length,
57
57
  toInsert: 'inject',
58
58
  }));
59
59
  });
60
- return run_in_devkit.confirmAsSerializable({ replacements });
60
+ return project_paths.confirmAsSerializable({ replacements });
61
61
  }
62
62
  async combine(unitA, unitB) {
63
63
  const seen = new Set();
@@ -70,10 +70,10 @@ class TestBedGetMigration extends run_in_devkit.TsurgeFunnelMigration {
70
70
  locations.push(location);
71
71
  }
72
72
  }
73
- return run_in_devkit.confirmAsSerializable({ locations });
73
+ return project_paths.confirmAsSerializable({ locations });
74
74
  }
75
75
  async globalMeta(combinedData) {
76
- return run_in_devkit.confirmAsSerializable(combinedData);
76
+ return project_paths.confirmAsSerializable(combinedData);
77
77
  }
78
78
  async stats() {
79
79
  return { counters: {} };
@@ -89,7 +89,7 @@ class TestBedGetMigration extends run_in_devkit.TsurgeFunnelMigration {
89
89
  */
90
90
  function migrate() {
91
91
  return async (tree) => {
92
- await run_in_devkit.runMigrationInDevkit({
92
+ await project_paths.runMigrationInDevkit({
93
93
  tree,
94
94
  getMigration: () => new TestBedGetMigration(),
95
95
  });
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @license Angular v20.0.0-next.5
2
+ * @license Angular v20.0.0-next.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
- import { R as ReactiveNode, V as ValueEqualityFn, S as SIGNAL, a as ReactiveHookFn } from './graph.d-StYigYp1.js';
7
+ import { ReactiveNode, ValueEqualityFn, SIGNAL, ReactiveHookFn } from './graph.d-BcIOep_B.js';
8
8
 
9
9
  interface SignalNode<T> extends ReactiveNode {
10
10
  value: T;
@@ -27,5 +27,5 @@ declare function signalUpdateFn<T>(node: SignalNode<T>, updater: (value: T) => T
27
27
  declare function runPostSignalSetFn<T>(node: SignalNode<T>): void;
28
28
  declare const SIGNAL_NODE: SignalNode<unknown>;
29
29
 
30
- export { SIGNAL_NODE as a, createSignal as c, signalGetFn as d, signalSetFn as e, signalUpdateFn as f, runPostSignalSetFn as r, setPostSignalSetFn as s };
31
- export type { SignalNode as S, SignalGetter as b };
30
+ export { SIGNAL_NODE, createSignal, runPostSignalSetFn, setPostSignalSetFn, signalGetFn, signalSetFn, signalUpdateFn };
31
+ export type { SignalGetter, SignalNode };