@angular/core 20.0.5 → 20.0.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 (57) hide show
  1. package/api.d.d.ts +1 -1
  2. package/chrome_dev_tools_performance.d.d.ts +1 -1
  3. package/discovery.d.d.ts +1 -1
  4. package/event_dispatcher.d.d.ts +1 -1
  5. package/fesm2022/attribute.mjs +1 -1
  6. package/fesm2022/core.mjs +12 -4
  7. package/fesm2022/core.mjs.map +1 -1
  8. package/fesm2022/debug_node.mjs +3 -3
  9. package/fesm2022/debug_node.mjs.map +1 -1
  10. package/fesm2022/primitives/di.mjs +1 -1
  11. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  12. package/fesm2022/primitives/signals.mjs +1 -1
  13. package/fesm2022/resource.mjs +1 -1
  14. package/fesm2022/root_effect_scheduler.mjs +2 -2
  15. package/fesm2022/root_effect_scheduler.mjs.map +1 -1
  16. package/fesm2022/rxjs-interop.mjs +1 -1
  17. package/fesm2022/signal.mjs +1 -1
  18. package/fesm2022/testing.mjs +1 -1
  19. package/fesm2022/untracked.mjs +1 -1
  20. package/fesm2022/weak_ref.mjs +1 -1
  21. package/graph.d.d.ts +1 -1
  22. package/index.d.ts +6 -7
  23. package/package.json +2 -2
  24. package/primitives/di/index.d.ts +1 -1
  25. package/primitives/event-dispatch/index.d.ts +1 -1
  26. package/primitives/signals/index.d.ts +1 -1
  27. package/rxjs-interop/index.d.ts +1 -1
  28. package/schematics/bundles/{apply_import_manager-z2wdNH9i.cjs → apply_import_manager-CfXRMrqI.cjs} +3 -3
  29. package/schematics/bundles/{checker-bovuFVqM.cjs → checker-BmKImR-Z.cjs} +118 -99
  30. package/schematics/bundles/cleanup-unused-imports.cjs +6 -5
  31. package/schematics/bundles/{compiler_host-Kg3VLaJg.cjs → compiler_host-CZBOmzcg.cjs} +2 -2
  32. package/schematics/bundles/control-flow-migration.cjs +3 -3
  33. package/schematics/bundles/document-core.cjs +6 -5
  34. package/schematics/bundles/imports-CIX-JgAN.cjs +1 -1
  35. package/schematics/bundles/{index-C_IZ6xLU.cjs → index-Ct9izxgm.cjs} +5 -4
  36. package/schematics/bundles/{index-D6D7R0Xm.cjs → index-DlDoIl8b.cjs} +12 -12
  37. package/schematics/bundles/inject-flags.cjs +6 -5
  38. package/schematics/bundles/inject-migration.cjs +3 -3
  39. package/schematics/bundles/leading_space-D9nQ8UQC.cjs +1 -1
  40. package/schematics/bundles/{migrate_ts_type_references-CNZBdxAV.cjs → migrate_ts_type_references-DY-GREru.cjs} +6 -5
  41. package/schematics/bundles/ng_decorators-B5HCqr20.cjs +1 -1
  42. package/schematics/bundles/nodes-B16H9JUd.cjs +1 -1
  43. package/schematics/bundles/output-migration.cjs +7 -6
  44. package/schematics/bundles/{project_paths-CBE0nAL9.cjs → project_paths-BA4fxeKZ.cjs} +39 -3
  45. package/schematics/bundles/project_tsconfig_paths-CDVxT6Ov.cjs +1 -1
  46. package/schematics/bundles/property_name-BBwFuqMe.cjs +1 -1
  47. package/schematics/bundles/route-lazy-loading.cjs +3 -3
  48. package/schematics/bundles/self-closing-tags-migration.cjs +5 -4
  49. package/schematics/bundles/signal-input-migration.cjs +8 -7
  50. package/schematics/bundles/signal-queries-migration.cjs +8 -7
  51. package/schematics/bundles/signals.cjs +8 -7
  52. package/schematics/bundles/standalone-migration.cjs +4 -4
  53. package/schematics/bundles/symbol-VPWguRxr.cjs +1 -1
  54. package/schematics/bundles/test-bed-get.cjs +5 -4
  55. package/signal.d.d.ts +1 -1
  56. package/testing/index.d.ts +1 -1
  57. package/weak_ref.d.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/graph.d.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1762,8 +1762,7 @@ interface Injectable {
1762
1762
  * - `Type<any>` - associates the injectable with an `@NgModule` or other `InjectorType`. This
1763
1763
  * option is DEPRECATED.
1764
1764
  * - 'null' : Equivalent to `undefined`. The injectable is not provided in any scope automatically
1765
- * and must be added to a `providers` array of an [@NgModule](api/core/NgModule#providers),
1766
- * [@Component](api/core/Directive#providers) or [@Directive](api/core/Directive#providers).
1765
+ * and must be added to a `providers` array.
1767
1766
  *
1768
1767
  * The following options specify that this injectable should be provided in one of the following
1769
1768
  * injectors:
@@ -2303,7 +2302,7 @@ interface AfterRenderOptions {
2303
2302
  * }
2304
2303
  * ```
2305
2304
  *
2306
- * @developerPreview
2305
+ * @publicApi 20.0
2307
2306
  */
2308
2307
  declare function afterEveryRender<E = never, W = never, M = never>(spec: {
2309
2308
  earlyRead?: () => E;
@@ -2361,7 +2360,7 @@ declare function afterEveryRender<E = never, W = never, M = never>(spec: {
2361
2360
  * }
2362
2361
  * ```
2363
2362
  *
2364
- * @publicApi
2363
+ * @publicApi 20.0
2365
2364
  */
2366
2365
  declare function afterEveryRender(callback: VoidFunction, options?: AfterRenderOptions): AfterRenderRef;
2367
2366
  /**
@@ -2441,7 +2440,7 @@ declare function afterEveryRender(callback: VoidFunction, options?: AfterRenderO
2441
2440
  * }
2442
2441
  * ```
2443
2442
  *
2444
- * @developerPreview
2443
+ * @publicApi 20.0
2445
2444
  */
2446
2445
  declare function afterNextRender<E = never, W = never, M = never>(spec: {
2447
2446
  earlyRead?: () => E;
@@ -2608,7 +2607,7 @@ declare function afterRenderEffect<E = never, W = never, M = never>(spec: {
2608
2607
 
2609
2608
  /**
2610
2609
  * Asserts that the current stack frame is not within a reactive context. Useful
2611
- * to disallow certain code from running inside a reactive context (see {@link /api/core/rxjs/toSignal toSignal})
2610
+ * to disallow certain code from running inside a reactive context (see {@link /api/core/rxjs-interop/toSignal toSignal})
2612
2611
  *
2613
2612
  * @param debugFn a reference to the function making the assertion (used for the error message).
2614
2613
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/core",
3
- "version": "20.0.5",
3
+ "version": "20.0.7",
4
4
  "description": "Angular - the core framework",
5
5
  "author": "angular",
6
6
  "license": "MIT",
@@ -46,7 +46,7 @@
46
46
  "tslib": "^2.3.0"
47
47
  },
48
48
  "peerDependencies": {
49
- "@angular/compiler": "20.0.5",
49
+ "@angular/compiler": "20.0.7",
50
50
  "rxjs": "^6.5.3 || ^7.4.0",
51
51
  "zone.js": "~0.15.0"
52
52
  },
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.5
2
+ * @license Angular v20.0.7
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.7
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 ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-bovuFVqM.cjs');
12
- var project_paths = require('./project_paths-CBE0nAL9.cjs');
11
+ var checker = require('./checker-BmKImR-Z.cjs');
12
+ var project_paths = require('./project_paths-BA4fxeKZ.cjs');
13
13
 
14
14
  /**
15
15
  * Applies import manager changes, and writes them as replacements the
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -6636,7 +6636,7 @@ var ParseErrorLevel;
6636
6636
  ParseErrorLevel[ParseErrorLevel["WARNING"] = 0] = "WARNING";
6637
6637
  ParseErrorLevel[ParseErrorLevel["ERROR"] = 1] = "ERROR";
6638
6638
  })(ParseErrorLevel || (ParseErrorLevel = {}));
6639
- class ParseError {
6639
+ class ParseError extends Error {
6640
6640
  span;
6641
6641
  msg;
6642
6642
  level;
@@ -6653,10 +6653,15 @@ class ParseError {
6653
6653
  * couldn't be parsed. Not guaranteed to be defined, but can be used to provide more context.
6654
6654
  */
6655
6655
  relatedError) {
6656
+ super(msg);
6656
6657
  this.span = span;
6657
6658
  this.msg = msg;
6658
6659
  this.level = level;
6659
6660
  this.relatedError = relatedError;
6661
+ // Extending `Error` ends up breaking some internal tests. This appears to be a known issue
6662
+ // when extending errors in TS and the workaround is to explicitly set the prototype.
6663
+ // https://stackoverflow.com/questions/41102060/typescript-extending-error-class
6664
+ Object.setPrototypeOf(this, new.target.prototype);
6660
6665
  }
6661
6666
  contextualMessage() {
6662
6667
  const ctx = this.span.start.getContext(100, 3);
@@ -10590,7 +10595,7 @@ class OpList {
10590
10595
  oldOp.next = null;
10591
10596
  let prev = oldPrev;
10592
10597
  for (const newOp of newOps) {
10593
- this.assertIsUnowned(newOp);
10598
+ OpList.assertIsUnowned(newOp);
10594
10599
  newOp.debugListId = listId;
10595
10600
  prev.next = newOp;
10596
10601
  newOp.prev = prev;
@@ -10631,7 +10636,7 @@ class OpList {
10631
10636
  static insertBefore(op, target) {
10632
10637
  if (Array.isArray(op)) {
10633
10638
  for (const o of op) {
10634
- this.insertBefore(o, target);
10639
+ OpList.insertBefore(o, target);
10635
10640
  }
10636
10641
  return;
10637
10642
  }
@@ -17111,12 +17116,16 @@ class EscapedCharacterCursor extends PlainCharacterCursor {
17111
17116
  }
17112
17117
  }
17113
17118
  }
17114
- class CursorError {
17119
+ class CursorError extends Error {
17115
17120
  msg;
17116
17121
  cursor;
17117
17122
  constructor(msg, cursor) {
17123
+ super(msg);
17118
17124
  this.msg = msg;
17119
17125
  this.cursor = cursor;
17126
+ // Extending `Error` does not always work when code is transpiled. See:
17127
+ // https://stackoverflow.com/questions/41102060/typescript-extending-error-class
17128
+ Object.setPrototypeOf(this, new.target.prototype);
17120
17129
  }
17121
17130
  }
17122
17131
 
@@ -18103,9 +18112,11 @@ class Token {
18103
18112
  return this.type === TokenType.Number ? this.numValue : -1;
18104
18113
  }
18105
18114
  isTemplateLiteralPart() {
18115
+ // Note: Explicit type is needed for Closure.
18106
18116
  return this.isString() && this.kind === StringTokenKind.TemplateLiteralPart;
18107
18117
  }
18108
18118
  isTemplateLiteralEnd() {
18119
+ // Note: Explicit type is needed for Closure.
18109
18120
  return this.isString() && this.kind === StringTokenKind.TemplateLiteralEnd;
18110
18121
  }
18111
18122
  isTemplateLiteralInterpolationStart() {
@@ -32166,7 +32177,7 @@ function isAttrNode(ast) {
32166
32177
  * @description
32167
32178
  * Entry point for all public APIs of the compiler package.
32168
32179
  */
32169
- new Version('20.0.5');
32180
+ new Version('20.0.7');
32170
32181
 
32171
32182
  //////////////////////////////////////
32172
32183
  // THIS FILE HAS GLOBAL SIDE EFFECT //
@@ -33182,7 +33193,7 @@ class NodeJSPathManipulation {
33182
33193
  // G3-ESM-MARKER: G3 uses CommonJS, but externally everything in ESM.
33183
33194
  // CommonJS/ESM interop for determining the current file name and containing dir.
33184
33195
  const isCommonJS = typeof __filename !== 'undefined';
33185
- const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('checker-bovuFVqM.cjs', document.baseURI).href));
33196
+ const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('checker-BmKImR-Z.cjs', document.baseURI).href));
33186
33197
  const currentFileName = isCommonJS ? __filename : url.fileURLToPath(currentFileUrl);
33187
33198
  /**
33188
33199
  * A wrapper around the Node.js file-system that supports readonly operations and path manipulation.
@@ -37712,10 +37723,14 @@ function createGenerateUniqueIdentifierHelper() {
37712
37723
  const markIdentifierAsGenerated = (sf, identifierName) => generatedIdentifiers.add(`${sf.fileName}@@${identifierName}`);
37713
37724
  return (sourceFile, symbolName) => {
37714
37725
  const sf = sourceFile;
37715
- if (sf.identifiers === undefined) {
37726
+ // NOTE: Typically accesses to TS fields are not renamed because the 1P externs
37727
+ // produced from TypeScript are ensuring public fields are considered "external".
37728
+ // See: https://developers.google.com/closure/compiler/docs/externs-and-exports.
37729
+ // This property is internal, so not part of the externs— so we need be cautious
37730
+ if (sf['identifiers'] === undefined) {
37716
37731
  throw new Error('Source file unexpectedly lacks map of parsed `identifiers`.');
37717
37732
  }
37718
- const isUniqueIdentifier = (name) => !sf.identifiers.has(name) && !isGeneratedIdentifier(sf, name);
37733
+ const isUniqueIdentifier = (name) => !sf['identifiers'].has(name) && !isGeneratedIdentifier(sf, name);
37719
37734
  if (isUniqueIdentifier(symbolName)) {
37720
37735
  markIdentifierAsGenerated(sf, symbolName);
37721
37736
  return null;
@@ -41201,6 +41216,19 @@ function makeTemplateDiagnostic(id, mapping, span, category, code, messageText,
41201
41216
  relatedInformation,
41202
41217
  };
41203
41218
  }
41219
+ let typeForMessage;
41220
+ if (category === ts.DiagnosticCategory.Warning) {
41221
+ typeForMessage = 'Warning';
41222
+ }
41223
+ else if (category === ts.DiagnosticCategory.Suggestion) {
41224
+ typeForMessage = 'Suggestion';
41225
+ }
41226
+ else if (category === ts.DiagnosticCategory.Message) {
41227
+ typeForMessage = 'Message';
41228
+ }
41229
+ else {
41230
+ typeForMessage = 'Error';
41231
+ }
41204
41232
  relatedInformation.push({
41205
41233
  category: ts.DiagnosticCategory.Message,
41206
41234
  code: 0,
@@ -41209,7 +41237,7 @@ function makeTemplateDiagnostic(id, mapping, span, category, code, messageText,
41209
41237
  // and getEnd() are used because they don't include surrounding whitespace.
41210
41238
  start: mapping.node.getStart(),
41211
41239
  length: mapping.node.getEnd() - mapping.node.getStart(),
41212
- messageText: `Error occurs in the template of component ${componentName}.`,
41240
+ messageText: `${typeForMessage} occurs in the template of component ${componentName}.`,
41213
41241
  });
41214
41242
  return {
41215
41243
  source: 'ngtsc',
@@ -41611,97 +41639,88 @@ class CompletionEngine {
41611
41639
  }
41612
41640
  }
41613
41641
 
41614
- const comma = ','.charCodeAt(0);
41615
- const semicolon = ';'.charCodeAt(0);
41616
- const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
41617
- const intToChar = new Uint8Array(64); // 64 possible chars.
41618
- const charToInt = new Uint8Array(128); // z is 122 in ASCII
41642
+ // src/vlq.ts
41643
+ var comma = ",".charCodeAt(0);
41644
+ var semicolon = ";".charCodeAt(0);
41645
+ var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
41646
+ var intToChar = new Uint8Array(64);
41647
+ var charToInt = new Uint8Array(128);
41619
41648
  for (let i = 0; i < chars.length; i++) {
41620
- const c = chars.charCodeAt(i);
41621
- intToChar[i] = c;
41622
- charToInt[c] = i;
41649
+ const c = chars.charCodeAt(i);
41650
+ intToChar[i] = c;
41651
+ charToInt[c] = i;
41623
41652
  }
41624
41653
  function encodeInteger(builder, num, relative) {
41625
- let delta = num - relative;
41626
- delta = delta < 0 ? (-delta << 1) | 1 : delta << 1;
41627
- do {
41628
- let clamped = delta & 0b011111;
41629
- delta >>>= 5;
41630
- if (delta > 0)
41631
- clamped |= 0b100000;
41632
- builder.write(intToChar[clamped]);
41633
- } while (delta > 0);
41634
- return num;
41635
- }
41636
-
41637
- const bufLength = 1024 * 16;
41638
- // Provide a fallback for older environments.
41639
- const td = typeof TextDecoder !== 'undefined'
41640
- ? /* #__PURE__ */ new TextDecoder()
41641
- : typeof Buffer !== 'undefined'
41642
- ? {
41643
- decode(buf) {
41644
- const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);
41645
- return out.toString();
41646
- },
41647
- }
41648
- : {
41649
- decode(buf) {
41650
- let out = '';
41651
- for (let i = 0; i < buf.length; i++) {
41652
- out += String.fromCharCode(buf[i]);
41653
- }
41654
- return out;
41655
- },
41656
- };
41657
- class StringWriter {
41658
- constructor() {
41659
- this.pos = 0;
41660
- this.out = '';
41661
- this.buffer = new Uint8Array(bufLength);
41662
- }
41663
- write(v) {
41664
- const { buffer } = this;
41665
- buffer[this.pos++] = v;
41666
- if (this.pos === bufLength) {
41667
- this.out += td.decode(buffer);
41668
- this.pos = 0;
41669
- }
41670
- }
41671
- flush() {
41672
- const { buffer, out, pos } = this;
41673
- return pos > 0 ? out + td.decode(buffer.subarray(0, pos)) : out;
41654
+ let delta = num - relative;
41655
+ delta = delta < 0 ? -delta << 1 | 1 : delta << 1;
41656
+ do {
41657
+ let clamped = delta & 31;
41658
+ delta >>>= 5;
41659
+ if (delta > 0) clamped |= 32;
41660
+ builder.write(intToChar[clamped]);
41661
+ } while (delta > 0);
41662
+ return num;
41663
+ }
41664
+
41665
+ // src/strings.ts
41666
+ var bufLength = 1024 * 16;
41667
+ var td = typeof TextDecoder !== "undefined" ? /* @__PURE__ */ new TextDecoder() : typeof Buffer !== "undefined" ? {
41668
+ decode(buf) {
41669
+ const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);
41670
+ return out.toString();
41671
+ }
41672
+ } : {
41673
+ decode(buf) {
41674
+ let out = "";
41675
+ for (let i = 0; i < buf.length; i++) {
41676
+ out += String.fromCharCode(buf[i]);
41674
41677
  }
41675
- }
41678
+ return out;
41679
+ }
41680
+ };
41681
+ var StringWriter = class {
41682
+ constructor() {
41683
+ this.pos = 0;
41684
+ this.out = "";
41685
+ this.buffer = new Uint8Array(bufLength);
41686
+ }
41687
+ write(v) {
41688
+ const { buffer } = this;
41689
+ buffer[this.pos++] = v;
41690
+ if (this.pos === bufLength) {
41691
+ this.out += td.decode(buffer);
41692
+ this.pos = 0;
41693
+ }
41694
+ }
41695
+ flush() {
41696
+ const { buffer, out, pos } = this;
41697
+ return pos > 0 ? out + td.decode(buffer.subarray(0, pos)) : out;
41698
+ }
41699
+ };
41676
41700
  function encode(decoded) {
41677
- const writer = new StringWriter();
41678
- let sourcesIndex = 0;
41679
- let sourceLine = 0;
41680
- let sourceColumn = 0;
41681
- let namesIndex = 0;
41682
- for (let i = 0; i < decoded.length; i++) {
41683
- const line = decoded[i];
41684
- if (i > 0)
41685
- writer.write(semicolon);
41686
- if (line.length === 0)
41687
- continue;
41688
- let genColumn = 0;
41689
- for (let j = 0; j < line.length; j++) {
41690
- const segment = line[j];
41691
- if (j > 0)
41692
- writer.write(comma);
41693
- genColumn = encodeInteger(writer, segment[0], genColumn);
41694
- if (segment.length === 1)
41695
- continue;
41696
- sourcesIndex = encodeInteger(writer, segment[1], sourcesIndex);
41697
- sourceLine = encodeInteger(writer, segment[2], sourceLine);
41698
- sourceColumn = encodeInteger(writer, segment[3], sourceColumn);
41699
- if (segment.length === 4)
41700
- continue;
41701
- namesIndex = encodeInteger(writer, segment[4], namesIndex);
41702
- }
41703
- }
41704
- return writer.flush();
41701
+ const writer = new StringWriter();
41702
+ let sourcesIndex = 0;
41703
+ let sourceLine = 0;
41704
+ let sourceColumn = 0;
41705
+ let namesIndex = 0;
41706
+ for (let i = 0; i < decoded.length; i++) {
41707
+ const line = decoded[i];
41708
+ if (i > 0) writer.write(semicolon);
41709
+ if (line.length === 0) continue;
41710
+ let genColumn = 0;
41711
+ for (let j = 0; j < line.length; j++) {
41712
+ const segment = line[j];
41713
+ if (j > 0) writer.write(comma);
41714
+ genColumn = encodeInteger(writer, segment[0], genColumn);
41715
+ if (segment.length === 1) continue;
41716
+ sourcesIndex = encodeInteger(writer, segment[1], sourcesIndex);
41717
+ sourceLine = encodeInteger(writer, segment[2], sourceLine);
41718
+ sourceColumn = encodeInteger(writer, segment[3], sourceColumn);
41719
+ if (segment.length === 4) continue;
41720
+ namesIndex = encodeInteger(writer, segment[4], namesIndex);
41721
+ }
41722
+ }
41723
+ return writer.flush();
41705
41724
  }
41706
41725
 
41707
41726
  class BitSet {
@@ -46869,13 +46888,13 @@ class Scope {
46869
46888
  const firstDecl = varMap.get(v.name);
46870
46889
  tcb.oobRecorder.duplicateTemplateVar(tcb.id, v, firstDecl);
46871
46890
  }
46872
- this.registerVariable(scope, v, new TcbTemplateVariableOp(tcb, scope, scopedNode, v));
46891
+ Scope.registerVariable(scope, v, new TcbTemplateVariableOp(tcb, scope, scopedNode, v));
46873
46892
  }
46874
46893
  }
46875
46894
  else if (scopedNode instanceof IfBlockBranch) {
46876
46895
  const { expression, expressionAlias } = scopedNode;
46877
46896
  if (expression !== null && expressionAlias !== null) {
46878
- this.registerVariable(scope, expressionAlias, new TcbBlockVariableOp(tcb, scope, tcbExpression(expression, tcb, scope), expressionAlias));
46897
+ Scope.registerVariable(scope, expressionAlias, new TcbBlockVariableOp(tcb, scope, tcbExpression(expression, tcb, scope), expressionAlias));
46879
46898
  }
46880
46899
  }
46881
46900
  else if (scopedNode instanceof ForLoopBlock) {
@@ -46889,7 +46908,7 @@ class Scope {
46889
46908
  throw new Error(`Unrecognized for loop context variable ${variable.name}`);
46890
46909
  }
46891
46910
  const type = ts.factory.createKeywordTypeNode(this.forLoopContextVariableTypes.get(variable.value));
46892
- this.registerVariable(scope, variable, new TcbBlockImplicitVariableOp(tcb, scope, type, variable));
46911
+ Scope.registerVariable(scope, variable, new TcbBlockImplicitVariableOp(tcb, scope, type, variable));
46893
46912
  }
46894
46913
  }
46895
46914
  else if (scopedNode instanceof HostElement) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,13 +8,14 @@
8
8
 
9
9
  require('@angular-devkit/core');
10
10
  require('node:path/posix');
11
- var project_paths = require('./project_paths-CBE0nAL9.cjs');
11
+ var project_paths = require('./project_paths-BA4fxeKZ.cjs');
12
12
  var ts = require('typescript');
13
13
  require('os');
14
- var checker = require('./checker-bovuFVqM.cjs');
15
- var index = require('./index-D6D7R0Xm.cjs');
14
+ var checker = require('./checker-BmKImR-Z.cjs');
15
+ var index = require('./index-DlDoIl8b.cjs');
16
16
  require('path');
17
- var apply_import_manager = require('./apply_import_manager-z2wdNH9i.cjs');
17
+ require('node:path');
18
+ var apply_import_manager = require('./apply_import_manager-CfXRMrqI.cjs');
18
19
  require('@angular-devkit/schematics');
19
20
  require('./project_tsconfig_paths-CDVxT6Ov.cjs');
20
21
  require('fs');
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.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 ts = require('typescript');
10
- var checker = require('./checker-bovuFVqM.cjs');
10
+ var checker = require('./checker-BmKImR-Z.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 v20.0.5
3
+ * @license Angular v20.0.7
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-Kg3VLaJg.cjs');
12
- var checker = require('./checker-bovuFVqM.cjs');
11
+ var compiler_host = require('./compiler_host-CZBOmzcg.cjs');
12
+ var checker = require('./checker-BmKImR-Z.cjs');
13
13
  var ts = require('typescript');
14
14
  var project_tsconfig_paths = require('./project_tsconfig_paths-CDVxT6Ov.cjs');
15
15
  require('os');
@@ -1,18 +1,19 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.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 checker = require('./checker-bovuFVqM.cjs');
9
+ var checker = require('./checker-BmKImR-Z.cjs');
10
10
  require('typescript');
11
11
  require('os');
12
- var apply_import_manager = require('./apply_import_manager-z2wdNH9i.cjs');
13
- require('./index-D6D7R0Xm.cjs');
12
+ var apply_import_manager = require('./apply_import_manager-CfXRMrqI.cjs');
13
+ require('./index-DlDoIl8b.cjs');
14
14
  require('path');
15
- var project_paths = require('./project_paths-CBE0nAL9.cjs');
15
+ require('node:path');
16
+ var project_paths = require('./project_paths-BA4fxeKZ.cjs');
16
17
  var imports = require('./imports-CIX-JgAN.cjs');
17
18
  require('@angular-devkit/core');
18
19
  require('node:path/posix');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v20.0.5
3
+ * @license Angular v20.0.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.5
3
+ * @license Angular v20.0.7
4
4
  * (c) 2010-2025 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,10 +8,11 @@
8
8
 
9
9
  var ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-bovuFVqM.cjs');
12
- var index = require('./index-D6D7R0Xm.cjs');
11
+ var checker = require('./checker-BmKImR-Z.cjs');
12
+ var index = require('./index-DlDoIl8b.cjs');
13
13
  require('path');
14
- var project_paths = require('./project_paths-CBE0nAL9.cjs');
14
+ require('node:path');
15
+ var project_paths = require('./project_paths-BA4fxeKZ.cjs');
15
16
 
16
17
  function getMemberName(member) {
17
18
  if (member.name === undefined) {