@angular/core 19.2.0 → 20.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/fesm2022/core.mjs +16 -24
  2. package/fesm2022/core.mjs.map +1 -1
  3. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  4. package/fesm2022/primitives/signals.mjs +1 -1
  5. package/fesm2022/rxjs-interop.mjs +1 -1
  6. package/fesm2022/testing.mjs +15 -4
  7. package/fesm2022/testing.mjs.map +1 -1
  8. package/index.d.ts +3 -4
  9. package/package.json +1 -1
  10. package/primitives/event-dispatch/index.d.ts +1 -1
  11. package/primitives/signals/index.d.ts +1 -1
  12. package/rxjs-interop/index.d.ts +1 -1
  13. package/schematics/bundles/{apply_import_manager-a4e62ded.js → apply_import_manager-0959b78c.js} +3 -3
  14. package/schematics/bundles/{checker-2eecc677.js → checker-cf6f7980.js} +121 -16
  15. package/schematics/bundles/cleanup-unused-imports.js +6 -6
  16. package/schematics/bundles/{compiler_host-f313eac9.js → compiler_host-cc1379e9.js} +2 -2
  17. package/schematics/bundles/control-flow-migration.js +3 -3
  18. package/schematics/bundles/explicit-standalone-flag.js +3 -3
  19. package/schematics/bundles/imports-31a38653.js +1 -1
  20. package/schematics/bundles/{index-afc3f749.js → index-42d84d69.js} +4 -4
  21. package/schematics/bundles/{index-3891dd55.js → index-6675d6bc.js} +4 -4
  22. package/schematics/bundles/inject-migration.js +3 -3
  23. package/schematics/bundles/leading_space-6e7a8ec6.js +1 -1
  24. package/schematics/bundles/{migrate_ts_type_references-1abf1f5f.js → migrate_ts_type_references-5089e4ef.js} +9 -5
  25. package/schematics/bundles/ng_decorators-6878e227.js +1 -1
  26. package/schematics/bundles/nodes-ffdce442.js +1 -1
  27. package/schematics/bundles/output-migration.js +6 -6
  28. package/schematics/bundles/pending-tasks.js +3 -3
  29. package/schematics/bundles/{program-24da9092.js → program-362689f0.js} +148 -148
  30. package/schematics/bundles/{project_paths-64bc3947.js → project_paths-7d2daa1e.js} +3 -3
  31. package/schematics/bundles/project_tsconfig_paths-6c9cde78.js +1 -1
  32. package/schematics/bundles/property_name-42030525.js +1 -1
  33. package/schematics/bundles/provide-initializer.js +3 -3
  34. package/schematics/bundles/route-lazy-loading.js +3 -3
  35. package/schematics/bundles/self-closing-tags-migration.js +4 -4
  36. package/schematics/bundles/signal-input-migration.js +7 -7
  37. package/schematics/bundles/signal-queries-migration.js +7 -7
  38. package/schematics/bundles/signals.js +7 -7
  39. package/schematics/bundles/standalone-migration.js +5 -5
  40. package/testing/index.d.ts +1 -1
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.2.0
2
+ * @license Angular v20.0.0-next.0
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -13528,7 +13528,7 @@ export declare enum ɵDeferBlockState {
13528
13528
  /** The deps tracker to be used in the current Angular app in dev mode. */
13529
13529
  export declare const ɵdepsTracker: DepsTracker;
13530
13530
 
13531
- export declare function ɵdetectChangesInViewIfRequired(lView: LView, notifyErrorHandler: boolean, isFirstPass: boolean, zonelessEnabled: boolean): void;
13531
+ export declare function ɵdetectChangesInViewIfRequired(lView: LView, isFirstPass: boolean, zonelessEnabled: boolean): void;
13532
13532
 
13533
13533
 
13534
13534
  export declare function ɵdevModeEqual(a: any, b: any): boolean;
@@ -15294,7 +15294,6 @@ export declare class ɵViewRef<T> implements EmbeddedViewRef<T>, ChangeDetectorR
15294
15294
  * This may be different from `_lView` if the `_cdRefInjectingView` is an embedded view.
15295
15295
  */
15296
15296
  private _cdRefInjectingView?;
15297
- readonly notifyErrorHandler: boolean;
15298
15297
  private _appRef;
15299
15298
  private _attachedToViewContainer;
15300
15299
  get rootNodes(): any[];
@@ -15317,7 +15316,7 @@ export declare class ɵViewRef<T> implements EmbeddedViewRef<T>, ChangeDetectorR
15317
15316
  *
15318
15317
  * This may be different from `_lView` if the `_cdRefInjectingView` is an embedded view.
15319
15318
  */
15320
- _cdRefInjectingView?: LView | undefined, notifyErrorHandler?: boolean);
15319
+ _cdRefInjectingView?: LView | undefined);
15321
15320
  get context(): T;
15322
15321
  /**
15323
15322
  * Reports whether the given view is considered dirty according to the different marking mechanisms.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/core",
3
- "version": "19.2.0",
3
+ "version": "20.0.0-next.0",
4
4
  "description": "Angular - the core framework",
5
5
  "author": "angular",
6
6
  "license": "MIT",
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.2.0
2
+ * @license Angular v20.0.0-next.0
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.2.0
2
+ * @license Angular v20.0.0-next.0
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.2.0
2
+ * @license Angular v20.0.0-next.0
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 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-2eecc677.js');
12
- var project_paths = require('./project_paths-64bc3947.js');
11
+ var checker = require('./checker-cf6f7980.js');
12
+ var project_paths = require('./project_paths-7d2daa1e.js');
13
13
 
14
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
15
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -921,6 +921,7 @@ var BinaryOperator;
921
921
  BinaryOperator[BinaryOperator["Bigger"] = 15] = "Bigger";
922
922
  BinaryOperator[BinaryOperator["BiggerEquals"] = 16] = "BiggerEquals";
923
923
  BinaryOperator[BinaryOperator["NullishCoalesce"] = 17] = "NullishCoalesce";
924
+ BinaryOperator[BinaryOperator["Exponentiation"] = 18] = "Exponentiation";
924
925
  })(BinaryOperator || (BinaryOperator = {}));
925
926
  function nullSafeIsEquivalent(base, other) {
926
927
  if (base == null || other == null) {
@@ -992,6 +993,9 @@ class Expression {
992
993
  modulo(rhs, sourceSpan) {
993
994
  return new BinaryOperatorExpr(BinaryOperator.Modulo, this, rhs, null, sourceSpan);
994
995
  }
996
+ power(rhs, sourceSpan) {
997
+ return new BinaryOperatorExpr(BinaryOperator.Exponentiation, this, rhs, null, sourceSpan);
998
+ }
995
999
  and(rhs, sourceSpan) {
996
1000
  return new BinaryOperatorExpr(BinaryOperator.And, this, rhs, null, sourceSpan);
997
1001
  }
@@ -1069,6 +1073,25 @@ class TypeofExpr extends Expression {
1069
1073
  return new TypeofExpr(this.expr.clone());
1070
1074
  }
1071
1075
  }
1076
+ class VoidExpr extends Expression {
1077
+ expr;
1078
+ constructor(expr, type, sourceSpan) {
1079
+ super(type, sourceSpan);
1080
+ this.expr = expr;
1081
+ }
1082
+ visitExpression(visitor, context) {
1083
+ return visitor.visitVoidExpr(this, context);
1084
+ }
1085
+ isEquivalent(e) {
1086
+ return e instanceof VoidExpr && e.expr.isEquivalent(this.expr);
1087
+ }
1088
+ isConstant() {
1089
+ return this.expr.isConstant();
1090
+ }
1091
+ clone() {
1092
+ return new VoidExpr(this.expr.clone());
1093
+ }
1094
+ }
1072
1095
  class WrappedNodeExpr extends Expression {
1073
1096
  node;
1074
1097
  constructor(node, type, sourceSpan) {
@@ -1966,6 +1989,9 @@ class RecursiveAstVisitor$1 {
1966
1989
  visitTypeofExpr(ast, context) {
1967
1990
  return this.visitExpression(ast, context);
1968
1991
  }
1992
+ visitVoidExpr(ast, context) {
1993
+ return this.visitExpression(ast, context);
1994
+ }
1969
1995
  visitReadVarExpr(ast, context) {
1970
1996
  return this.visitExpression(ast, context);
1971
1997
  }
@@ -3516,6 +3542,10 @@ class AbstractEmitterVisitor {
3516
3542
  ctx.print(expr, 'typeof ');
3517
3543
  expr.expr.visitExpression(this, ctx);
3518
3544
  }
3545
+ visitVoidExpr(expr, ctx) {
3546
+ ctx.print(expr, 'void ');
3547
+ expr.expr.visitExpression(this, ctx);
3548
+ }
3519
3549
  visitReadVarExpr(ast, ctx) {
3520
3550
  ctx.print(ast, ast.name);
3521
3551
  return null;
@@ -3629,6 +3659,9 @@ class AbstractEmitterVisitor {
3629
3659
  case BinaryOperator.Modulo:
3630
3660
  opStr = '%';
3631
3661
  break;
3662
+ case BinaryOperator.Exponentiation:
3663
+ opStr = '**';
3664
+ break;
3632
3665
  case BinaryOperator.Lower:
3633
3666
  opStr = '<';
3634
3667
  break;
@@ -4321,6 +4354,16 @@ class TypeofExpression extends AST {
4321
4354
  return visitor.visitTypeofExpression(this, context);
4322
4355
  }
4323
4356
  }
4357
+ class VoidExpression extends AST {
4358
+ expression;
4359
+ constructor(span, sourceSpan, expression) {
4360
+ super(span, sourceSpan);
4361
+ this.expression = expression;
4362
+ }
4363
+ visit(visitor, context = null) {
4364
+ return visitor.visitVoidExpression(this, context);
4365
+ }
4366
+ }
4324
4367
  class NonNullAssert extends AST {
4325
4368
  expression;
4326
4369
  constructor(span, sourceSpan, expression) {
@@ -4503,6 +4546,9 @@ class RecursiveAstVisitor {
4503
4546
  visitTypeofExpression(ast, context) {
4504
4547
  this.visit(ast.expression, context);
4505
4548
  }
4549
+ visitVoidExpression(ast, context) {
4550
+ this.visit(ast.expression, context);
4551
+ }
4506
4552
  visitNonNullAssert(ast, context) {
4507
4553
  this.visit(ast.expression, context);
4508
4554
  }
@@ -10246,6 +10292,9 @@ function transformExpressionsInExpression(expr, transform, flags) {
10246
10292
  else if (expr instanceof TypeofExpr) {
10247
10293
  expr.expr = transformExpressionsInExpression(expr.expr, transform, flags);
10248
10294
  }
10295
+ else if (expr instanceof VoidExpr) {
10296
+ expr.expr = transformExpressionsInExpression(expr.expr, transform, flags);
10297
+ }
10249
10298
  else if (expr instanceof WriteVarExpr) {
10250
10299
  expr.value = transformExpressionsInExpression(expr.value, transform, flags);
10251
10300
  }
@@ -11749,6 +11798,7 @@ const BINARY_OPERATORS$3 = new Map([
11749
11798
  ['<=', BinaryOperator.LowerEquals],
11750
11799
  ['-', BinaryOperator.Minus],
11751
11800
  ['%', BinaryOperator.Modulo],
11801
+ ['**', BinaryOperator.Exponentiation],
11752
11802
  ['*', BinaryOperator.Multiply],
11753
11803
  ['!=', BinaryOperator.NotEquals],
11754
11804
  ['!==', BinaryOperator.NotIdentical],
@@ -17447,6 +17497,7 @@ const KEYWORDS = [
17447
17497
  'else',
17448
17498
  'this',
17449
17499
  'typeof',
17500
+ 'void',
17450
17501
  ];
17451
17502
  class Lexer {
17452
17503
  tokenize(text) {
@@ -17511,6 +17562,9 @@ class Token {
17511
17562
  isKeywordTypeof() {
17512
17563
  return this.type === TokenType.Keyword && this.strValue === 'typeof';
17513
17564
  }
17565
+ isKeywordVoid() {
17566
+ return this.type === TokenType.Keyword && this.strValue === 'void';
17567
+ }
17514
17568
  isError() {
17515
17569
  return this.type === TokenType.Error;
17516
17570
  }
@@ -17655,11 +17709,12 @@ class _Scanner {
17655
17709
  return this.scanPrivateIdentifier();
17656
17710
  case $PLUS:
17657
17711
  case $MINUS:
17658
- case $STAR:
17659
17712
  case $SLASH:
17660
17713
  case $PERCENT:
17661
17714
  case $CARET:
17662
17715
  return this.scanOperator(start, String.fromCharCode(peek));
17716
+ case $STAR:
17717
+ return this.scanComplexOperator(start, '*', $STAR, '*');
17663
17718
  case $QUESTION:
17664
17719
  return this.scanQuestion(start);
17665
17720
  case $LT:
@@ -18227,6 +18282,7 @@ class _ParseAST {
18227
18282
  parseFlags;
18228
18283
  errors;
18229
18284
  offset;
18285
+ lastUnary = null;
18230
18286
  rparensExpected = 0;
18231
18287
  rbracketsExpected = 0;
18232
18288
  rbracesExpected = 0;
@@ -18593,7 +18649,7 @@ class _ParseAST {
18593
18649
  parseMultiplicative() {
18594
18650
  // '*', '%', '/'
18595
18651
  const start = this.inputIndex;
18596
- let result = this.parsePrefix();
18652
+ let result = this.parseExponentiation();
18597
18653
  while (this.next.type == TokenType.Operator) {
18598
18654
  const operator = this.next.strValue;
18599
18655
  switch (operator) {
@@ -18601,7 +18657,7 @@ class _ParseAST {
18601
18657
  case '%':
18602
18658
  case '/':
18603
18659
  this.advance();
18604
- let right = this.parsePrefix();
18660
+ const right = this.parseExponentiation();
18605
18661
  result = new Binary(this.span(start), this.sourceSpan(start), operator, result, right);
18606
18662
  continue;
18607
18663
  }
@@ -18609,6 +18665,23 @@ class _ParseAST {
18609
18665
  }
18610
18666
  return result;
18611
18667
  }
18668
+ parseExponentiation() {
18669
+ // '**'
18670
+ const start = this.inputIndex;
18671
+ let result = this.parsePrefix();
18672
+ while (this.next.type == TokenType.Operator && this.next.strValue === '**') {
18673
+ // This aligns with Javascript semantics which require any unary operator preceeding the
18674
+ // exponentiation operation to be explicitly grouped as either applying to the base or result
18675
+ // of the exponentiation operation.
18676
+ if (result === this.lastUnary) {
18677
+ this.error('Unary operator used immediately before exponentiation expression. Parenthesis must be used to disambiguate operator precedence');
18678
+ }
18679
+ this.advance();
18680
+ const right = this.parsePrefix();
18681
+ result = new Binary(this.span(start), this.sourceSpan(start), '**', result, right);
18682
+ }
18683
+ return result;
18684
+ }
18612
18685
  parsePrefix() {
18613
18686
  if (this.next.type == TokenType.Operator) {
18614
18687
  const start = this.inputIndex;
@@ -18618,22 +18691,28 @@ class _ParseAST {
18618
18691
  case '+':
18619
18692
  this.advance();
18620
18693
  result = this.parsePrefix();
18621
- return Unary.createPlus(this.span(start), this.sourceSpan(start), result);
18694
+ return (this.lastUnary = Unary.createPlus(this.span(start), this.sourceSpan(start), result));
18622
18695
  case '-':
18623
18696
  this.advance();
18624
18697
  result = this.parsePrefix();
18625
- return Unary.createMinus(this.span(start), this.sourceSpan(start), result);
18698
+ return (this.lastUnary = Unary.createMinus(this.span(start), this.sourceSpan(start), result));
18626
18699
  case '!':
18627
18700
  this.advance();
18628
18701
  result = this.parsePrefix();
18629
- return new PrefixNot(this.span(start), this.sourceSpan(start), result);
18702
+ return (this.lastUnary = new PrefixNot(this.span(start), this.sourceSpan(start), result));
18630
18703
  }
18631
18704
  }
18632
18705
  else if (this.next.isKeywordTypeof()) {
18633
18706
  this.advance();
18634
18707
  const start = this.inputIndex;
18635
18708
  let result = this.parsePrefix();
18636
- return new TypeofExpression(this.span(start), this.sourceSpan(start), result);
18709
+ return (this.lastUnary = new TypeofExpression(this.span(start), this.sourceSpan(start), result));
18710
+ }
18711
+ else if (this.next.isKeywordVoid()) {
18712
+ this.advance();
18713
+ const start = this.inputIndex;
18714
+ let result = this.parsePrefix();
18715
+ return (this.lastUnary = new VoidExpression(this.span(start), this.sourceSpan(start), result));
18637
18716
  }
18638
18717
  return this.parseCallChain();
18639
18718
  }
@@ -18674,6 +18753,7 @@ class _ParseAST {
18674
18753
  this.rparensExpected++;
18675
18754
  const result = this.parsePipe();
18676
18755
  this.rparensExpected--;
18756
+ this.lastUnary = null;
18677
18757
  this.expectCharacter($RPAREN);
18678
18758
  return result;
18679
18759
  }
@@ -19297,6 +19377,9 @@ class SerializeExpressionVisitor {
19297
19377
  visitTypeofExpression(ast, context) {
19298
19378
  return `typeof ${ast.expression.visit(this, context)}`;
19299
19379
  }
19380
+ visitVoidExpression(ast, context) {
19381
+ return `void ${ast.expression.visit(this, context)}`;
19382
+ }
19300
19383
  visitASTWithSource(ast, context) {
19301
19384
  return ast.ast.visit(this, context);
19302
19385
  }
@@ -25978,6 +26061,9 @@ function convertAst(ast, job, baseSourceSpan) {
25978
26061
  else if (ast instanceof TypeofExpression) {
25979
26062
  return typeofExpr(convertAst(ast.expression, job, baseSourceSpan));
25980
26063
  }
26064
+ else if (ast instanceof VoidExpression) {
26065
+ return new VoidExpr(convertAst(ast.expression, job, baseSourceSpan), undefined, convertSourceSpan(ast.span, baseSourceSpan));
26066
+ }
25981
26067
  else if (ast instanceof TemplateLiteral) {
25982
26068
  return new TemplateLiteralExpr(ast.elements.map((el) => {
25983
26069
  return new TemplateLiteralElementExpr(el.text, convertSourceSpan(el.span, baseSourceSpan));
@@ -30717,13 +30803,6 @@ function publishFacade(global) {
30717
30803
  ng.ɵcompilerFacade = new CompilerFacadeImpl();
30718
30804
  }
30719
30805
 
30720
- /**
30721
- * @module
30722
- * @description
30723
- * Entry point for all public APIs of the compiler package.
30724
- */
30725
- new Version('19.2.0');
30726
-
30727
30806
  const _I18N_ATTR = 'i18n';
30728
30807
  const _I18N_ATTR_PREFIX = 'i18n-';
30729
30808
  const _I18N_COMMENT_PREFIX_REGEXP = /^i18n:?/;
@@ -31200,6 +31279,13 @@ var FactoryTarget;
31200
31279
  FactoryTarget[FactoryTarget["NgModule"] = 4] = "NgModule";
31201
31280
  })(FactoryTarget || (FactoryTarget = {}));
31202
31281
 
31282
+ /**
31283
+ * @module
31284
+ * @description
31285
+ * Entry point for all public APIs of the compiler package.
31286
+ */
31287
+ new Version('20.0.0-next.0');
31288
+
31203
31289
  //////////////////////////////////////
31204
31290
  // This file only reexports content of the `src` folder. Keep it that way.
31205
31291
  // This function call has a global side effects and publishes the compiler into global namespace for
@@ -32130,7 +32216,7 @@ class NodeJSPathManipulation {
32130
32216
  // G3-ESM-MARKER: G3 uses CommonJS, but externally everything in ESM.
32131
32217
  // CommonJS/ESM interop for determining the current file name and containing dir.
32132
32218
  const isCommonJS = typeof __filename !== 'undefined';
32133
- const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT' && document.currentScript.src || new URL('checker-2eecc677.js', document.baseURI).href));
32219
+ const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT' && document.currentScript.src || new URL('checker-cf6f7980.js', document.baseURI).href));
32134
32220
  const currentFileName = isCommonJS ? __filename : url.fileURLToPath(currentFileUrl);
32135
32221
  /**
32136
32222
  * A wrapper around the Node.js file-system that supports readonly operations and path manipulation.
@@ -36632,6 +36718,7 @@ const BINARY_OPERATORS$1 = new Map([
36632
36718
  [BinaryOperator.Or, '||'],
36633
36719
  [BinaryOperator.Plus, '+'],
36634
36720
  [BinaryOperator.NullishCoalesce, '??'],
36721
+ [BinaryOperator.Exponentiation, '**'],
36635
36722
  ]);
36636
36723
  class ExpressionTranslatorVisitor {
36637
36724
  factory;
@@ -36876,6 +36963,9 @@ class ExpressionTranslatorVisitor {
36876
36963
  visitTypeofExpr(ast, context) {
36877
36964
  return this.factory.createTypeOfExpression(ast.expr.visitExpression(this, context));
36878
36965
  }
36966
+ visitVoidExpr(ast, context) {
36967
+ return this.factory.createVoidExpression(ast.expr.visitExpression(this, context));
36968
+ }
36879
36969
  visitUnaryOperatorExpr(ast, context) {
36880
36970
  if (!UNARY_OPERATORS$1.has(ast.operator)) {
36881
36971
  throw new Error(`Unknown unary operator: ${UnaryOperator[ast.operator]}`);
@@ -37292,6 +37382,9 @@ class TypeTranslatorVisitor {
37292
37382
  }
37293
37383
  return ts__default["default"].factory.createTypeQueryNode(typeNode.typeName);
37294
37384
  }
37385
+ visitVoidExpr(ast, context) {
37386
+ throw new Error('Method not implemented.');
37387
+ }
37295
37388
  translateType(type, context) {
37296
37389
  const typeNode = type.visitType(this, context);
37297
37390
  if (!ts__default["default"].isTypeNode(typeNode)) {
@@ -37363,6 +37456,7 @@ const BINARY_OPERATORS = {
37363
37456
  '-': ts__default["default"].SyntaxKind.MinusToken,
37364
37457
  '%': ts__default["default"].SyntaxKind.PercentToken,
37365
37458
  '*': ts__default["default"].SyntaxKind.AsteriskToken,
37459
+ '**': ts__default["default"].SyntaxKind.AsteriskAsteriskToken,
37366
37460
  '!=': ts__default["default"].SyntaxKind.ExclamationEqualsToken,
37367
37461
  '!==': ts__default["default"].SyntaxKind.ExclamationEqualsEqualsToken,
37368
37462
  '||': ts__default["default"].SyntaxKind.BarBarToken,
@@ -37502,6 +37596,7 @@ class TypeScriptAstFactory {
37502
37596
  }
37503
37597
  createThrowStatement = ts__default["default"].factory.createThrowStatement;
37504
37598
  createTypeOfExpression = ts__default["default"].factory.createTypeOfExpression;
37599
+ createVoidExpression = ts__default["default"].factory.createVoidExpression;
37505
37600
  createUnaryExpression(operator, operand) {
37506
37601
  return ts__default["default"].factory.createPrefixUnaryExpression(UNARY_OPERATORS[operator], operand);
37507
37602
  }
@@ -41237,6 +41332,7 @@ const BINARY_OPS = new Map([
41237
41332
  ['==', ts__default["default"].SyntaxKind.EqualsEqualsToken],
41238
41333
  ['===', ts__default["default"].SyntaxKind.EqualsEqualsEqualsToken],
41239
41334
  ['*', ts__default["default"].SyntaxKind.AsteriskToken],
41335
+ ['**', ts__default["default"].SyntaxKind.AsteriskAsteriskToken],
41240
41336
  ['/', ts__default["default"].SyntaxKind.SlashToken],
41241
41337
  ['%', ts__default["default"].SyntaxKind.PercentToken],
41242
41338
  ['!=', ts__default["default"].SyntaxKind.ExclamationEqualsToken],
@@ -41415,6 +41511,12 @@ class AstTranslator {
41415
41511
  addParseSpanInfo(node, ast.sourceSpan);
41416
41512
  return node;
41417
41513
  }
41514
+ visitVoidExpression(ast) {
41515
+ const expression = wrapForDiagnostics(this.translate(ast.expression));
41516
+ const node = ts__default["default"].factory.createVoidExpression(expression);
41517
+ addParseSpanInfo(node, ast.sourceSpan);
41518
+ return node;
41519
+ }
41418
41520
  visitPropertyRead(ast) {
41419
41521
  // This is a normal property read - convert the receiver to an expression and emit the correct
41420
41522
  // TypeScript expression to read the property.
@@ -41650,6 +41752,9 @@ class VeSafeLhsInferenceBugDetector {
41650
41752
  visitTypeofExpression(ast) {
41651
41753
  return ast.expression.visit(this);
41652
41754
  }
41755
+ visitVoidExpression(ast) {
41756
+ return ast.expression.visit(this);
41757
+ }
41653
41758
  visitNonNullAssert(ast) {
41654
41759
  return ast.expression.visit(this);
41655
41760
  }
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -10,14 +10,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
10
10
 
11
11
  var schematics = require('@angular-devkit/schematics');
12
12
  var project_tsconfig_paths = require('./project_tsconfig_paths-6c9cde78.js');
13
- var project_paths = require('./project_paths-64bc3947.js');
13
+ var project_paths = require('./project_paths-7d2daa1e.js');
14
14
  require('os');
15
15
  var ts = require('typescript');
16
- var checker = require('./checker-2eecc677.js');
17
- var program = require('./program-24da9092.js');
16
+ var checker = require('./checker-cf6f7980.js');
17
+ var program = require('./program-362689f0.js');
18
18
  require('path');
19
- require('./index-3891dd55.js');
20
- var apply_import_manager = require('./apply_import_manager-a4e62ded.js');
19
+ require('./index-6675d6bc.js');
20
+ var apply_import_manager = require('./apply_import_manager-0959b78c.js');
21
21
  require('@angular-devkit/core');
22
22
  require('node:path/posix');
23
23
  require('fs');
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 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-2eecc677.js');
10
+ var checker = require('./checker-cf6f7980.js');
11
11
  require('os');
12
12
  var p = require('path');
13
13
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -10,8 +10,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
10
10
 
11
11
  var schematics = require('@angular-devkit/schematics');
12
12
  var p = require('path');
13
- var compiler_host = require('./compiler_host-f313eac9.js');
14
- var checker = require('./checker-2eecc677.js');
13
+ var compiler_host = require('./compiler_host-cc1379e9.js');
14
+ var checker = require('./checker-cf6f7980.js');
15
15
  var ts = require('typescript');
16
16
  require('os');
17
17
  require('fs');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -11,11 +11,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
11
11
  var schematics = require('@angular-devkit/schematics');
12
12
  var p = require('path');
13
13
  var project_tsconfig_paths = require('./project_tsconfig_paths-6c9cde78.js');
14
- var compiler_host = require('./compiler_host-f313eac9.js');
14
+ var compiler_host = require('./compiler_host-cc1379e9.js');
15
15
  var ts = require('typescript');
16
16
  var imports = require('./imports-31a38653.js');
17
17
  require('@angular-devkit/core');
18
- require('./checker-2eecc677.js');
18
+ require('./checker-cf6f7980.js');
19
19
  require('os');
20
20
  require('fs');
21
21
  require('module');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,10 +8,10 @@
8
8
 
9
9
  var ts = require('typescript');
10
10
  require('os');
11
- var checker = require('./checker-2eecc677.js');
12
- var program = require('./program-24da9092.js');
11
+ var checker = require('./checker-cf6f7980.js');
12
+ var program = require('./program-362689f0.js');
13
13
  require('path');
14
- var project_paths = require('./project_paths-64bc3947.js');
14
+ var project_paths = require('./project_paths-7d2daa1e.js');
15
15
 
16
16
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
17
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -8,8 +8,8 @@
8
8
 
9
9
  require('os');
10
10
  require('typescript');
11
- var checker = require('./checker-2eecc677.js');
12
- require('./program-24da9092.js');
11
+ var checker = require('./checker-cf6f7980.js');
12
+ require('./program-362689f0.js');
13
13
  require('path');
14
14
 
15
15
  /**
@@ -17,7 +17,7 @@ require('path');
17
17
  * @description
18
18
  * Entry point for all public APIs of the compiler-cli package.
19
19
  */
20
- new checker.Version('19.2.0');
20
+ new checker.Version('20.0.0-next.0');
21
21
 
22
22
  var LogLevel;
23
23
  (function (LogLevel) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -10,13 +10,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
10
10
 
11
11
  var schematics = require('@angular-devkit/schematics');
12
12
  var p = require('path');
13
- var compiler_host = require('./compiler_host-f313eac9.js');
13
+ var compiler_host = require('./compiler_host-cc1379e9.js');
14
14
  var ts = require('typescript');
15
15
  var ng_decorators = require('./ng_decorators-6878e227.js');
16
16
  var imports = require('./imports-31a38653.js');
17
17
  var nodes = require('./nodes-ffdce442.js');
18
18
  var leading_space = require('./leading_space-6e7a8ec6.js');
19
- require('./checker-2eecc677.js');
19
+ require('./checker-cf6f7980.js');
20
20
  require('os');
21
21
  require('fs');
22
22
  require('module');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.2.0
3
+ * @license Angular v20.0.0-next.0
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */