@angular/core 19.0.0-rc.0 → 19.0.0-rc.1

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 (39) hide show
  1. package/fesm2022/core.mjs +201 -349
  2. package/fesm2022/core.mjs.map +1 -1
  3. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  4. package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
  5. package/fesm2022/primitives/signals.mjs +1 -1
  6. package/fesm2022/primitives/signals.mjs.map +1 -1
  7. package/fesm2022/rxjs-interop.mjs +1 -1
  8. package/fesm2022/rxjs-interop.mjs.map +1 -1
  9. package/fesm2022/testing.mjs +6 -6
  10. package/fesm2022/testing.mjs.map +1 -1
  11. package/index.d.ts +16 -51
  12. package/package.json +1 -1
  13. package/primitives/event-dispatch/index.d.ts +1 -1
  14. package/primitives/signals/index.d.ts +1 -1
  15. package/rxjs-interop/index.d.ts +1 -1
  16. package/schematics/bundles/{checker-2451e7c5.js → checker-9ca42e51.js} +163 -150
  17. package/schematics/bundles/combine_units-a16385aa.js +1634 -0
  18. package/schematics/bundles/{compiler_host-f54f8309.js → compiler_host-31afa4ed.js} +8 -5
  19. package/schematics/bundles/control-flow-migration.js +3 -3
  20. package/schematics/bundles/explicit-standalone-flag.js +5 -5
  21. package/schematics/bundles/{imports-44987700.js → imports-4ac08251.js} +1 -1
  22. package/schematics/bundles/inject-migration.js +131 -37
  23. package/schematics/bundles/{leading_space-6e7a8ec6.js → leading_space-d190b83b.js} +1 -1
  24. package/schematics/bundles/{migrate_ts_type_references-ab18a7c3.js → migrate_ts_type_references-b2a28742.js} +5 -5
  25. package/schematics/bundles/{ng_decorators-3ad437d2.js → nodes-0e7d45ca.js} +15 -2
  26. package/schematics/bundles/output-migration.js +20 -6895
  27. package/schematics/bundles/pending-tasks.js +5 -5
  28. package/schematics/bundles/{program-58424797.js → program-71beec0b.js} +109 -42
  29. package/schematics/bundles/{project_tsconfig_paths-6c9cde78.js → project_tsconfig_paths-e9ccccbf.js} +1 -1
  30. package/schematics/bundles/provide-initializer.js +17 -28
  31. package/schematics/bundles/route-lazy-loading.js +10 -5
  32. package/schematics/bundles/signal-input-migration.js +7 -7
  33. package/schematics/bundles/signal-queries-migration.js +12 -12
  34. package/schematics/bundles/signals.js +7 -7
  35. package/schematics/bundles/standalone-migration.js +13 -14
  36. package/schematics/migrations.json +1 -1
  37. package/testing/index.d.ts +1 -1
  38. package/schematics/bundles/combine_units-c52492ab.js +0 -31202
  39. package/schematics/bundles/nodes-ffdce442.js +0 -27
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
  /**
3
- * @license Angular v19.0.0-rc.0
3
+ * @license Angular v19.0.0-rc.1
4
4
  * (c) 2010-2024 Google LLC. https://angular.io/
5
5
  * License: MIT
6
6
  */
@@ -896,12 +896,12 @@ const STRING_TYPE = new BuiltinType(BuiltinTypeName.String);
896
896
  new BuiltinType(BuiltinTypeName.Function);
897
897
  const NONE_TYPE = new BuiltinType(BuiltinTypeName.None);
898
898
  ///// Expressions
899
- exports.UnaryOperator = void 0;
899
+ var UnaryOperator;
900
900
  (function (UnaryOperator) {
901
901
  UnaryOperator[UnaryOperator["Minus"] = 0] = "Minus";
902
902
  UnaryOperator[UnaryOperator["Plus"] = 1] = "Plus";
903
- })(exports.UnaryOperator || (exports.UnaryOperator = {}));
904
- exports.BinaryOperator = void 0;
903
+ })(UnaryOperator || (UnaryOperator = {}));
904
+ var BinaryOperator;
905
905
  (function (BinaryOperator) {
906
906
  BinaryOperator[BinaryOperator["Equals"] = 0] = "Equals";
907
907
  BinaryOperator[BinaryOperator["NotEquals"] = 1] = "NotEquals";
@@ -921,7 +921,7 @@ exports.BinaryOperator = void 0;
921
921
  BinaryOperator[BinaryOperator["Bigger"] = 15] = "Bigger";
922
922
  BinaryOperator[BinaryOperator["BiggerEquals"] = 16] = "BiggerEquals";
923
923
  BinaryOperator[BinaryOperator["NullishCoalesce"] = 17] = "NullishCoalesce";
924
- })(exports.BinaryOperator || (exports.BinaryOperator = {}));
924
+ })(BinaryOperator || (BinaryOperator = {}));
925
925
  function nullSafeIsEquivalent(base, other) {
926
926
  if (base == null || other == null) {
927
927
  return base == other;
@@ -966,55 +966,55 @@ class Expression {
966
966
  return new ConditionalExpr(this, trueCase, falseCase, null, sourceSpan);
967
967
  }
968
968
  equals(rhs, sourceSpan) {
969
- return new BinaryOperatorExpr(exports.BinaryOperator.Equals, this, rhs, null, sourceSpan);
969
+ return new BinaryOperatorExpr(BinaryOperator.Equals, this, rhs, null, sourceSpan);
970
970
  }
971
971
  notEquals(rhs, sourceSpan) {
972
- return new BinaryOperatorExpr(exports.BinaryOperator.NotEquals, this, rhs, null, sourceSpan);
972
+ return new BinaryOperatorExpr(BinaryOperator.NotEquals, this, rhs, null, sourceSpan);
973
973
  }
974
974
  identical(rhs, sourceSpan) {
975
- return new BinaryOperatorExpr(exports.BinaryOperator.Identical, this, rhs, null, sourceSpan);
975
+ return new BinaryOperatorExpr(BinaryOperator.Identical, this, rhs, null, sourceSpan);
976
976
  }
977
977
  notIdentical(rhs, sourceSpan) {
978
- return new BinaryOperatorExpr(exports.BinaryOperator.NotIdentical, this, rhs, null, sourceSpan);
978
+ return new BinaryOperatorExpr(BinaryOperator.NotIdentical, this, rhs, null, sourceSpan);
979
979
  }
980
980
  minus(rhs, sourceSpan) {
981
- return new BinaryOperatorExpr(exports.BinaryOperator.Minus, this, rhs, null, sourceSpan);
981
+ return new BinaryOperatorExpr(BinaryOperator.Minus, this, rhs, null, sourceSpan);
982
982
  }
983
983
  plus(rhs, sourceSpan) {
984
- return new BinaryOperatorExpr(exports.BinaryOperator.Plus, this, rhs, null, sourceSpan);
984
+ return new BinaryOperatorExpr(BinaryOperator.Plus, this, rhs, null, sourceSpan);
985
985
  }
986
986
  divide(rhs, sourceSpan) {
987
- return new BinaryOperatorExpr(exports.BinaryOperator.Divide, this, rhs, null, sourceSpan);
987
+ return new BinaryOperatorExpr(BinaryOperator.Divide, this, rhs, null, sourceSpan);
988
988
  }
989
989
  multiply(rhs, sourceSpan) {
990
- return new BinaryOperatorExpr(exports.BinaryOperator.Multiply, this, rhs, null, sourceSpan);
990
+ return new BinaryOperatorExpr(BinaryOperator.Multiply, this, rhs, null, sourceSpan);
991
991
  }
992
992
  modulo(rhs, sourceSpan) {
993
- return new BinaryOperatorExpr(exports.BinaryOperator.Modulo, this, rhs, null, sourceSpan);
993
+ return new BinaryOperatorExpr(BinaryOperator.Modulo, this, rhs, null, sourceSpan);
994
994
  }
995
995
  and(rhs, sourceSpan) {
996
- return new BinaryOperatorExpr(exports.BinaryOperator.And, this, rhs, null, sourceSpan);
996
+ return new BinaryOperatorExpr(BinaryOperator.And, this, rhs, null, sourceSpan);
997
997
  }
998
998
  bitwiseOr(rhs, sourceSpan, parens = true) {
999
- return new BinaryOperatorExpr(exports.BinaryOperator.BitwiseOr, this, rhs, null, sourceSpan, parens);
999
+ return new BinaryOperatorExpr(BinaryOperator.BitwiseOr, this, rhs, null, sourceSpan, parens);
1000
1000
  }
1001
1001
  bitwiseAnd(rhs, sourceSpan, parens = true) {
1002
- return new BinaryOperatorExpr(exports.BinaryOperator.BitwiseAnd, this, rhs, null, sourceSpan, parens);
1002
+ return new BinaryOperatorExpr(BinaryOperator.BitwiseAnd, this, rhs, null, sourceSpan, parens);
1003
1003
  }
1004
1004
  or(rhs, sourceSpan) {
1005
- return new BinaryOperatorExpr(exports.BinaryOperator.Or, this, rhs, null, sourceSpan);
1005
+ return new BinaryOperatorExpr(BinaryOperator.Or, this, rhs, null, sourceSpan);
1006
1006
  }
1007
1007
  lower(rhs, sourceSpan) {
1008
- return new BinaryOperatorExpr(exports.BinaryOperator.Lower, this, rhs, null, sourceSpan);
1008
+ return new BinaryOperatorExpr(BinaryOperator.Lower, this, rhs, null, sourceSpan);
1009
1009
  }
1010
1010
  lowerEquals(rhs, sourceSpan) {
1011
- return new BinaryOperatorExpr(exports.BinaryOperator.LowerEquals, this, rhs, null, sourceSpan);
1011
+ return new BinaryOperatorExpr(BinaryOperator.LowerEquals, this, rhs, null, sourceSpan);
1012
1012
  }
1013
1013
  bigger(rhs, sourceSpan) {
1014
- return new BinaryOperatorExpr(exports.BinaryOperator.Bigger, this, rhs, null, sourceSpan);
1014
+ return new BinaryOperatorExpr(BinaryOperator.Bigger, this, rhs, null, sourceSpan);
1015
1015
  }
1016
1016
  biggerEquals(rhs, sourceSpan) {
1017
- return new BinaryOperatorExpr(exports.BinaryOperator.BiggerEquals, this, rhs, null, sourceSpan);
1017
+ return new BinaryOperatorExpr(BinaryOperator.BiggerEquals, this, rhs, null, sourceSpan);
1018
1018
  }
1019
1019
  isBlank(sourceSpan) {
1020
1020
  // Note: We use equals by purpose here to compare to null and undefined in JS.
@@ -1022,7 +1022,7 @@ class Expression {
1022
1022
  return this.equals(TYPED_NULL_EXPR, sourceSpan);
1023
1023
  }
1024
1024
  nullishCoalesce(rhs, sourceSpan) {
1025
- return new BinaryOperatorExpr(exports.BinaryOperator.NullishCoalesce, this, rhs, null, sourceSpan);
1025
+ return new BinaryOperatorExpr(BinaryOperator.NullishCoalesce, this, rhs, null, sourceSpan);
1026
1026
  }
1027
1027
  toStmt() {
1028
1028
  return new ExpressionStatement(this, null);
@@ -1444,8 +1444,7 @@ class ExternalExpr extends Expression {
1444
1444
  isEquivalent(e) {
1445
1445
  return (e instanceof ExternalExpr &&
1446
1446
  this.value.name === e.value.name &&
1447
- this.value.moduleName === e.value.moduleName &&
1448
- this.value.runtime === e.value.runtime);
1447
+ this.value.moduleName === e.value.moduleName);
1449
1448
  }
1450
1449
  isConstant() {
1451
1450
  return false;
@@ -1460,11 +1459,9 @@ class ExternalExpr extends Expression {
1460
1459
  class ExternalReference {
1461
1460
  moduleName;
1462
1461
  name;
1463
- runtime;
1464
- constructor(moduleName, name, runtime) {
1462
+ constructor(moduleName, name) {
1465
1463
  this.moduleName = moduleName;
1466
1464
  this.name = name;
1467
- this.runtime = runtime;
1468
1465
  }
1469
1466
  }
1470
1467
  class ConditionalExpr extends Expression {
@@ -3536,10 +3533,10 @@ class AbstractEmitterVisitor {
3536
3533
  visitUnaryOperatorExpr(ast, ctx) {
3537
3534
  let opStr;
3538
3535
  switch (ast.operator) {
3539
- case exports.UnaryOperator.Plus:
3536
+ case UnaryOperator.Plus:
3540
3537
  opStr = '+';
3541
3538
  break;
3542
- case exports.UnaryOperator.Minus:
3539
+ case UnaryOperator.Minus:
3543
3540
  opStr = '-';
3544
3541
  break;
3545
3542
  default:
@@ -3556,58 +3553,58 @@ class AbstractEmitterVisitor {
3556
3553
  visitBinaryOperatorExpr(ast, ctx) {
3557
3554
  let opStr;
3558
3555
  switch (ast.operator) {
3559
- case exports.BinaryOperator.Equals:
3556
+ case BinaryOperator.Equals:
3560
3557
  opStr = '==';
3561
3558
  break;
3562
- case exports.BinaryOperator.Identical:
3559
+ case BinaryOperator.Identical:
3563
3560
  opStr = '===';
3564
3561
  break;
3565
- case exports.BinaryOperator.NotEquals:
3562
+ case BinaryOperator.NotEquals:
3566
3563
  opStr = '!=';
3567
3564
  break;
3568
- case exports.BinaryOperator.NotIdentical:
3565
+ case BinaryOperator.NotIdentical:
3569
3566
  opStr = '!==';
3570
3567
  break;
3571
- case exports.BinaryOperator.And:
3568
+ case BinaryOperator.And:
3572
3569
  opStr = '&&';
3573
3570
  break;
3574
- case exports.BinaryOperator.BitwiseOr:
3571
+ case BinaryOperator.BitwiseOr:
3575
3572
  opStr = '|';
3576
3573
  break;
3577
- case exports.BinaryOperator.BitwiseAnd:
3574
+ case BinaryOperator.BitwiseAnd:
3578
3575
  opStr = '&';
3579
3576
  break;
3580
- case exports.BinaryOperator.Or:
3577
+ case BinaryOperator.Or:
3581
3578
  opStr = '||';
3582
3579
  break;
3583
- case exports.BinaryOperator.Plus:
3580
+ case BinaryOperator.Plus:
3584
3581
  opStr = '+';
3585
3582
  break;
3586
- case exports.BinaryOperator.Minus:
3583
+ case BinaryOperator.Minus:
3587
3584
  opStr = '-';
3588
3585
  break;
3589
- case exports.BinaryOperator.Divide:
3586
+ case BinaryOperator.Divide:
3590
3587
  opStr = '/';
3591
3588
  break;
3592
- case exports.BinaryOperator.Multiply:
3589
+ case BinaryOperator.Multiply:
3593
3590
  opStr = '*';
3594
3591
  break;
3595
- case exports.BinaryOperator.Modulo:
3592
+ case BinaryOperator.Modulo:
3596
3593
  opStr = '%';
3597
3594
  break;
3598
- case exports.BinaryOperator.Lower:
3595
+ case BinaryOperator.Lower:
3599
3596
  opStr = '<';
3600
3597
  break;
3601
- case exports.BinaryOperator.LowerEquals:
3598
+ case BinaryOperator.LowerEquals:
3602
3599
  opStr = '<=';
3603
3600
  break;
3604
- case exports.BinaryOperator.Bigger:
3601
+ case BinaryOperator.Bigger:
3605
3602
  opStr = '>';
3606
3603
  break;
3607
- case exports.BinaryOperator.BiggerEquals:
3604
+ case BinaryOperator.BiggerEquals:
3608
3605
  opStr = '>=';
3609
3606
  break;
3610
- case exports.BinaryOperator.NullishCoalesce:
3607
+ case BinaryOperator.NullishCoalesce:
3611
3608
  opStr = '??';
3612
3609
  break;
3613
3610
  default:
@@ -3739,11 +3736,11 @@ function devOnlyGuardedExpression(expr) {
3739
3736
  }
3740
3737
  function guardedExpression(guard, expr) {
3741
3738
  const guardExpr = new ExternalExpr({ name: guard, moduleName: null });
3742
- const guardNotDefined = new BinaryOperatorExpr(exports.BinaryOperator.Identical, new TypeofExpr(guardExpr), literal$1('undefined'));
3743
- const guardUndefinedOrTrue = new BinaryOperatorExpr(exports.BinaryOperator.Or, guardNotDefined, guardExpr,
3739
+ const guardNotDefined = new BinaryOperatorExpr(BinaryOperator.Identical, new TypeofExpr(guardExpr), literal$1('undefined'));
3740
+ const guardUndefinedOrTrue = new BinaryOperatorExpr(BinaryOperator.Or, guardNotDefined, guardExpr,
3744
3741
  /* type */ undefined,
3745
3742
  /* sourceSpan */ undefined, true);
3746
- return new BinaryOperatorExpr(exports.BinaryOperator.And, guardUndefinedOrTrue, expr);
3743
+ return new BinaryOperatorExpr(BinaryOperator.And, guardUndefinedOrTrue, expr);
3747
3744
  }
3748
3745
  function wrapReference(value) {
3749
3746
  const wrapped = new WrappedNodeExpr(value);
@@ -3812,7 +3809,7 @@ function compileFactoryFunction(meta) {
3812
3809
  // delegated factory (which is used to create the current type) then this is only the type-to-
3813
3810
  // create parameter (t).
3814
3811
  const typeForCtor = !isDelegatedFactoryMetadata(meta)
3815
- ? new BinaryOperatorExpr(exports.BinaryOperator.Or, t, meta.type.value)
3812
+ ? new BinaryOperatorExpr(BinaryOperator.Or, t, meta.type.value)
3816
3813
  : t;
3817
3814
  let ctorExpr = null;
3818
3815
  if (meta.deps !== null) {
@@ -3860,7 +3857,7 @@ function compileFactoryFunction(meta) {
3860
3857
  // This factory uses a base factory, so call `ɵɵgetInheritedFactory()` to compute it.
3861
3858
  const getInheritedFactoryCall = importExpr(Identifiers.getInheritedFactory).callFn([meta.type.value]);
3862
3859
  // Memoize the base factoryFn: `baseFactory || (baseFactory = ɵɵgetInheritedFactory(...))`
3863
- const baseFactory = new BinaryOperatorExpr(exports.BinaryOperator.Or, baseFactoryVar, baseFactoryVar.set(getInheritedFactoryCall));
3860
+ const baseFactory = new BinaryOperatorExpr(BinaryOperator.Or, baseFactoryVar, baseFactoryVar.set(getInheritedFactoryCall));
3864
3861
  body.push(new ReturnStatement(baseFactory.callFn([typeForCtor])));
3865
3862
  }
3866
3863
  else {
@@ -11518,7 +11515,7 @@ function generateConditionalExpressions(job) {
11518
11515
  }
11519
11516
  if (tmp !== null) {
11520
11517
  const useTmp = i === 0 ? tmp : new ReadTemporaryExpr(tmp.xref);
11521
- conditionalCase.expr = new BinaryOperatorExpr(exports.BinaryOperator.Identical, useTmp, conditionalCase.expr);
11518
+ conditionalCase.expr = new BinaryOperatorExpr(BinaryOperator.Identical, useTmp, conditionalCase.expr);
11522
11519
  }
11523
11520
  else if (conditionalCase.alias !== null) {
11524
11521
  const caseExpressionTemporaryXref = job.allocateXrefId();
@@ -11537,24 +11534,24 @@ function generateConditionalExpressions(job) {
11537
11534
  }
11538
11535
 
11539
11536
  const BINARY_OPERATORS$3 = new Map([
11540
- ['&&', exports.BinaryOperator.And],
11541
- ['>', exports.BinaryOperator.Bigger],
11542
- ['>=', exports.BinaryOperator.BiggerEquals],
11543
- ['|', exports.BinaryOperator.BitwiseOr],
11544
- ['&', exports.BinaryOperator.BitwiseAnd],
11545
- ['/', exports.BinaryOperator.Divide],
11546
- ['==', exports.BinaryOperator.Equals],
11547
- ['===', exports.BinaryOperator.Identical],
11548
- ['<', exports.BinaryOperator.Lower],
11549
- ['<=', exports.BinaryOperator.LowerEquals],
11550
- ['-', exports.BinaryOperator.Minus],
11551
- ['%', exports.BinaryOperator.Modulo],
11552
- ['*', exports.BinaryOperator.Multiply],
11553
- ['!=', exports.BinaryOperator.NotEquals],
11554
- ['!==', exports.BinaryOperator.NotIdentical],
11555
- ['??', exports.BinaryOperator.NullishCoalesce],
11556
- ['||', exports.BinaryOperator.Or],
11557
- ['+', exports.BinaryOperator.Plus],
11537
+ ['&&', BinaryOperator.And],
11538
+ ['>', BinaryOperator.Bigger],
11539
+ ['>=', BinaryOperator.BiggerEquals],
11540
+ ['|', BinaryOperator.BitwiseOr],
11541
+ ['&', BinaryOperator.BitwiseAnd],
11542
+ ['/', BinaryOperator.Divide],
11543
+ ['==', BinaryOperator.Equals],
11544
+ ['===', BinaryOperator.Identical],
11545
+ ['<', BinaryOperator.Lower],
11546
+ ['<=', BinaryOperator.LowerEquals],
11547
+ ['-', BinaryOperator.Minus],
11548
+ ['%', BinaryOperator.Modulo],
11549
+ ['*', BinaryOperator.Multiply],
11550
+ ['!=', BinaryOperator.NotEquals],
11551
+ ['!==', BinaryOperator.NotIdentical],
11552
+ ['??', BinaryOperator.NullishCoalesce],
11553
+ ['||', BinaryOperator.Or],
11554
+ ['+', BinaryOperator.Plus],
11558
11555
  ]);
11559
11556
  function namespaceForKey(namespacePrefixKey) {
11560
11557
  const NAMESPACES = new Map([
@@ -12330,7 +12327,7 @@ function ternaryTransform(e) {
12330
12327
  if (!(e instanceof SafeTernaryExpr)) {
12331
12328
  return e;
12332
12329
  }
12333
- return new ConditionalExpr(new BinaryOperatorExpr(exports.BinaryOperator.Equals, e.guard, NULL_EXPR), NULL_EXPR, e.expr);
12330
+ return new ConditionalExpr(new BinaryOperatorExpr(BinaryOperator.Equals, e.guard, NULL_EXPR), NULL_EXPR, e.expr);
12334
12331
  }
12335
12332
 
12336
12333
  /**
@@ -21524,14 +21521,14 @@ function generateNullishCoalesceExpressions(job) {
21524
21521
  for (const op of unit.ops()) {
21525
21522
  transformExpressionsInOp(op, (expr) => {
21526
21523
  if (!(expr instanceof BinaryOperatorExpr) ||
21527
- expr.operator !== exports.BinaryOperator.NullishCoalesce) {
21524
+ expr.operator !== BinaryOperator.NullishCoalesce) {
21528
21525
  return expr;
21529
21526
  }
21530
21527
  const assignment = new AssignTemporaryExpr(expr.lhs.clone(), job.allocateXrefId());
21531
21528
  const read = new ReadTemporaryExpr(assignment.xref);
21532
21529
  // TODO: When not in compatibility mode for TemplateDefinitionBuilder, we can just emit
21533
21530
  // `t != null` instead of including an undefined check as well.
21534
- return new ConditionalExpr(new BinaryOperatorExpr(exports.BinaryOperator.And, new BinaryOperatorExpr(exports.BinaryOperator.NotIdentical, assignment, NULL_EXPR), new BinaryOperatorExpr(exports.BinaryOperator.NotIdentical, read, new LiteralExpr(undefined))), read.clone(), expr.rhs);
21531
+ return new ConditionalExpr(new BinaryOperatorExpr(BinaryOperator.And, new BinaryOperatorExpr(BinaryOperator.NotIdentical, assignment, NULL_EXPR), new BinaryOperatorExpr(BinaryOperator.NotIdentical, read, new LiteralExpr(undefined))), read.clone(), expr.rhs);
21535
21532
  }, VisitorContextFlag.None);
21536
21533
  }
21537
21534
  }
@@ -24862,7 +24859,7 @@ function maybeGenerateRfBlock(flag, statements) {
24862
24859
  return [];
24863
24860
  }
24864
24861
  return [
24865
- ifStmt(new BinaryOperatorExpr(exports.BinaryOperator.BitwiseAnd, variable('rf'), literal$1(flag)), statements),
24862
+ ifStmt(new BinaryOperatorExpr(BinaryOperator.BitwiseAnd, variable('rf'), literal$1(flag)), statements),
24866
24863
  ];
24867
24864
  }
24868
24865
  function emitHostBindingFunction(job) {
@@ -25483,9 +25480,9 @@ function convertAst(ast, job, baseSourceSpan) {
25483
25480
  else if (ast instanceof Unary) {
25484
25481
  switch (ast.operator) {
25485
25482
  case '+':
25486
- return new UnaryOperatorExpr(exports.UnaryOperator.Plus, convertAst(ast.expr, job, baseSourceSpan), undefined, convertSourceSpan(ast.span, baseSourceSpan));
25483
+ return new UnaryOperatorExpr(UnaryOperator.Plus, convertAst(ast.expr, job, baseSourceSpan), undefined, convertSourceSpan(ast.span, baseSourceSpan));
25487
25484
  case '-':
25488
- return new UnaryOperatorExpr(exports.UnaryOperator.Minus, convertAst(ast.expr, job, baseSourceSpan), undefined, convertSourceSpan(ast.span, baseSourceSpan));
25485
+ return new UnaryOperatorExpr(UnaryOperator.Minus, convertAst(ast.expr, job, baseSourceSpan), undefined, convertSourceSpan(ast.span, baseSourceSpan));
25489
25486
  default:
25490
25487
  throw new Error(`AssertionError: unknown unary operator ${ast.operator}`);
25491
25488
  }
@@ -30277,7 +30274,7 @@ function publishFacade(global) {
30277
30274
  * @description
30278
30275
  * Entry point for all public APIs of the compiler package.
30279
30276
  */
30280
- new Version('19.0.0-rc.0');
30277
+ new Version('19.0.0-rc.1');
30281
30278
 
30282
30279
  const _I18N_ATTR = 'i18n';
30283
30280
  const _I18N_ATTR_PREFIX = 'i18n-';
@@ -31685,7 +31682,7 @@ class NodeJSPathManipulation {
31685
31682
  // G3-ESM-MARKER: G3 uses CommonJS, but externally everything in ESM.
31686
31683
  // CommonJS/ESM interop for determining the current file name and containing dir.
31687
31684
  const isCommonJS = typeof __filename !== 'undefined';
31688
- const currentFileUrl = isCommonJS ? null : (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('checker-2451e7c5.js', document.baseURI).href));
31685
+ 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-9ca42e51.js', document.baseURI).href));
31689
31686
  const currentFileName = isCommonJS ? __filename : url.fileURLToPath(currentFileUrl);
31690
31687
  /**
31691
31688
  * A wrapper around the Node.js file-system that supports readonly operations and path manipulation.
@@ -33176,10 +33173,16 @@ class TypeScriptReflectionHost {
33176
33173
  : null;
33177
33174
  }
33178
33175
  }
33176
+ class TypeEntityToDeclarationError extends Error {
33177
+ }
33178
+ /**
33179
+ * @throws {TypeEntityToDeclarationError} if the type cannot be converted
33180
+ * to a declaration.
33181
+ */
33179
33182
  function reflectTypeEntityToDeclaration(type, checker) {
33180
33183
  let realSymbol = checker.getSymbolAtLocation(type);
33181
33184
  if (realSymbol === undefined) {
33182
- throw new Error(`Cannot resolve type entity ${type.getText()} to symbol`);
33185
+ throw new TypeEntityToDeclarationError(`Cannot resolve type entity ${type.getText()} to symbol`);
33183
33186
  }
33184
33187
  while (realSymbol.flags & ts__default["default"].SymbolFlags.Alias) {
33185
33188
  realSymbol = checker.getAliasedSymbol(realSymbol);
@@ -33192,24 +33195,24 @@ function reflectTypeEntityToDeclaration(type, checker) {
33192
33195
  node = realSymbol.declarations[0];
33193
33196
  }
33194
33197
  else {
33195
- throw new Error(`Cannot resolve type entity symbol to declaration`);
33198
+ throw new TypeEntityToDeclarationError(`Cannot resolve type entity symbol to declaration`);
33196
33199
  }
33197
33200
  if (ts__default["default"].isQualifiedName(type)) {
33198
33201
  if (!ts__default["default"].isIdentifier(type.left)) {
33199
- throw new Error(`Cannot handle qualified name with non-identifier lhs`);
33202
+ throw new TypeEntityToDeclarationError(`Cannot handle qualified name with non-identifier lhs`);
33200
33203
  }
33201
33204
  const symbol = checker.getSymbolAtLocation(type.left);
33202
33205
  if (symbol === undefined ||
33203
33206
  symbol.declarations === undefined ||
33204
33207
  symbol.declarations.length !== 1) {
33205
- throw new Error(`Cannot resolve qualified type entity lhs to symbol`);
33208
+ throw new TypeEntityToDeclarationError(`Cannot resolve qualified type entity lhs to symbol`);
33206
33209
  }
33207
33210
  const decl = symbol.declarations[0];
33208
33211
  if (ts__default["default"].isNamespaceImport(decl)) {
33209
33212
  const clause = decl.parent;
33210
33213
  const importDecl = clause.parent;
33211
33214
  if (!ts__default["default"].isStringLiteral(importDecl.moduleSpecifier)) {
33212
- throw new Error(`Module specifier is not a string`);
33215
+ throw new TypeEntityToDeclarationError(`Module specifier is not a string`);
33213
33216
  }
33214
33217
  return { node, from: importDecl.moduleSpecifier.text };
33215
33218
  }
@@ -33217,7 +33220,7 @@ function reflectTypeEntityToDeclaration(type, checker) {
33217
33220
  return { node, from: null };
33218
33221
  }
33219
33222
  else {
33220
- throw new Error(`Unknown import type?`);
33223
+ throw new TypeEntityToDeclarationError(`Unknown import type?`);
33221
33224
  }
33222
33225
  }
33223
33226
  else {
@@ -33953,18 +33956,43 @@ exports.MatchSource = void 0;
33953
33956
 
33954
33957
  function extractReferencesFromType(checker, def, bestGuessOwningModule) {
33955
33958
  if (!ts__default["default"].isTupleTypeNode(def)) {
33956
- return [];
33959
+ return { result: [], isIncomplete: false };
33957
33960
  }
33958
- return def.elements.map((element) => {
33961
+ const result = [];
33962
+ let isIncomplete = false;
33963
+ for (const element of def.elements) {
33959
33964
  if (!ts__default["default"].isTypeQueryNode(element)) {
33960
33965
  throw new Error(`Expected TypeQueryNode: ${nodeDebugInfo(element)}`);
33961
33966
  }
33962
- return extraReferenceFromTypeQuery(checker, element, def, bestGuessOwningModule);
33963
- });
33967
+ const ref = extraReferenceFromTypeQuery(checker, element, def, bestGuessOwningModule);
33968
+ // Note: Sometimes a reference inside the type tuple/array
33969
+ // may not be resolvable/existent. We proceed with incomplete data.
33970
+ if (ref === null) {
33971
+ isIncomplete = true;
33972
+ }
33973
+ else {
33974
+ result.push(ref);
33975
+ }
33976
+ }
33977
+ return { result, isIncomplete };
33964
33978
  }
33965
33979
  function extraReferenceFromTypeQuery(checker, typeNode, origin, bestGuessOwningModule) {
33966
33980
  const type = typeNode.exprName;
33967
- const { node, from } = reflectTypeEntityToDeclaration(type, checker);
33981
+ let node;
33982
+ let from;
33983
+ // Gracefully handle when the type entity could not be converted or
33984
+ // resolved to its declaration node.
33985
+ try {
33986
+ const result = reflectTypeEntityToDeclaration(type, checker);
33987
+ node = result.node;
33988
+ from = result.from;
33989
+ }
33990
+ catch (e) {
33991
+ if (e instanceof TypeEntityToDeclarationError) {
33992
+ return null;
33993
+ }
33994
+ throw e;
33995
+ }
33968
33996
  if (!isNamedClassDeclaration(node)) {
33969
33997
  throw new Error(`Expected named ClassDeclaration: ${nodeDebugInfo(node)}`);
33970
33998
  }
@@ -36094,28 +36122,28 @@ function createImportReference(asTypeReference, ref) {
36094
36122
  }
36095
36123
 
36096
36124
  const UNARY_OPERATORS$1 = new Map([
36097
- [exports.UnaryOperator.Minus, '-'],
36098
- [exports.UnaryOperator.Plus, '+'],
36125
+ [UnaryOperator.Minus, '-'],
36126
+ [UnaryOperator.Plus, '+'],
36099
36127
  ]);
36100
36128
  const BINARY_OPERATORS$1 = new Map([
36101
- [exports.BinaryOperator.And, '&&'],
36102
- [exports.BinaryOperator.Bigger, '>'],
36103
- [exports.BinaryOperator.BiggerEquals, '>='],
36104
- [exports.BinaryOperator.BitwiseAnd, '&'],
36105
- [exports.BinaryOperator.BitwiseOr, '|'],
36106
- [exports.BinaryOperator.Divide, '/'],
36107
- [exports.BinaryOperator.Equals, '=='],
36108
- [exports.BinaryOperator.Identical, '==='],
36109
- [exports.BinaryOperator.Lower, '<'],
36110
- [exports.BinaryOperator.LowerEquals, '<='],
36111
- [exports.BinaryOperator.Minus, '-'],
36112
- [exports.BinaryOperator.Modulo, '%'],
36113
- [exports.BinaryOperator.Multiply, '*'],
36114
- [exports.BinaryOperator.NotEquals, '!='],
36115
- [exports.BinaryOperator.NotIdentical, '!=='],
36116
- [exports.BinaryOperator.Or, '||'],
36117
- [exports.BinaryOperator.Plus, '+'],
36118
- [exports.BinaryOperator.NullishCoalesce, '??'],
36129
+ [BinaryOperator.And, '&&'],
36130
+ [BinaryOperator.Bigger, '>'],
36131
+ [BinaryOperator.BiggerEquals, '>='],
36132
+ [BinaryOperator.BitwiseAnd, '&'],
36133
+ [BinaryOperator.BitwiseOr, '|'],
36134
+ [BinaryOperator.Divide, '/'],
36135
+ [BinaryOperator.Equals, '=='],
36136
+ [BinaryOperator.Identical, '==='],
36137
+ [BinaryOperator.Lower, '<'],
36138
+ [BinaryOperator.LowerEquals, '<='],
36139
+ [BinaryOperator.Minus, '-'],
36140
+ [BinaryOperator.Modulo, '%'],
36141
+ [BinaryOperator.Multiply, '*'],
36142
+ [BinaryOperator.NotEquals, '!='],
36143
+ [BinaryOperator.NotIdentical, '!=='],
36144
+ [BinaryOperator.Or, '||'],
36145
+ [BinaryOperator.Plus, '+'],
36146
+ [BinaryOperator.NullishCoalesce, '??'],
36119
36147
  ]);
36120
36148
  class ExpressionTranslatorVisitor {
36121
36149
  factory;
@@ -36328,7 +36356,7 @@ class ExpressionTranslatorVisitor {
36328
36356
  }
36329
36357
  visitBinaryOperatorExpr(ast, context) {
36330
36358
  if (!BINARY_OPERATORS$1.has(ast.operator)) {
36331
- throw new Error(`Unknown binary operator: ${exports.BinaryOperator[ast.operator]}`);
36359
+ throw new Error(`Unknown binary operator: ${BinaryOperator[ast.operator]}`);
36332
36360
  }
36333
36361
  return this.factory.createBinaryExpression(ast.lhs.visitExpression(this, context), BINARY_OPERATORS$1.get(ast.operator), ast.rhs.visitExpression(this, context));
36334
36362
  }
@@ -36363,7 +36391,7 @@ class ExpressionTranslatorVisitor {
36363
36391
  }
36364
36392
  visitUnaryOperatorExpr(ast, context) {
36365
36393
  if (!UNARY_OPERATORS$1.has(ast.operator)) {
36366
- throw new Error(`Unknown unary operator: ${exports.UnaryOperator[ast.operator]}`);
36394
+ throw new Error(`Unknown unary operator: ${UnaryOperator[ast.operator]}`);
36367
36395
  }
36368
36396
  return this.factory.createUnaryExpression(UNARY_OPERATORS$1.get(ast.operator), ast.expr.visitExpression(this, context));
36369
36397
  }
@@ -38580,27 +38608,6 @@ class Mappings {
38580
38608
  let charInHiresBoundary = false;
38581
38609
 
38582
38610
  while (originalCharIndex < chunk.end) {
38583
- if (this.hires || first || sourcemapLocations.has(originalCharIndex)) {
38584
- const segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];
38585
-
38586
- if (this.hires === 'boundary') {
38587
- // in hires "boundary", group segments per word boundary than per char
38588
- if (wordRegex.test(original[originalCharIndex])) {
38589
- // for first char in the boundary found, start the boundary by pushing a segment
38590
- if (!charInHiresBoundary) {
38591
- this.rawSegments.push(segment);
38592
- charInHiresBoundary = true;
38593
- }
38594
- } else {
38595
- // for non-word char, end the boundary by pushing a segment
38596
- this.rawSegments.push(segment);
38597
- charInHiresBoundary = false;
38598
- }
38599
- } else {
38600
- this.rawSegments.push(segment);
38601
- }
38602
- }
38603
-
38604
38611
  if (original[originalCharIndex] === '\n') {
38605
38612
  loc.line += 1;
38606
38613
  loc.column = 0;
@@ -38609,6 +38616,27 @@ class Mappings {
38609
38616
  this.generatedCodeColumn = 0;
38610
38617
  first = true;
38611
38618
  } else {
38619
+ if (this.hires || first || sourcemapLocations.has(originalCharIndex)) {
38620
+ const segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];
38621
+
38622
+ if (this.hires === 'boundary') {
38623
+ // in hires "boundary", group segments per word boundary than per char
38624
+ if (wordRegex.test(original[originalCharIndex])) {
38625
+ // for first char in the boundary found, start the boundary by pushing a segment
38626
+ if (!charInHiresBoundary) {
38627
+ this.rawSegments.push(segment);
38628
+ charInHiresBoundary = true;
38629
+ }
38630
+ } else {
38631
+ // for non-word char, end the boundary by pushing a segment
38632
+ this.rawSegments.push(segment);
38633
+ charInHiresBoundary = false;
38634
+ }
38635
+ } else {
38636
+ this.rawSegments.push(segment);
38637
+ }
38638
+ }
38639
+
38612
38640
  loc.column += 1;
38613
38641
  this.generatedCodeColumn += 1;
38614
38642
  first = false;
@@ -44956,7 +44984,7 @@ class TemplateTypeCheckerImpl {
44956
44984
  this.perf = perf;
44957
44985
  }
44958
44986
  getTemplate(component, optimizeFor) {
44959
- const { data } = this.getLatestComponentState(component);
44987
+ const { data } = this.getLatestComponentState(component, optimizeFor);
44960
44988
  if (data === null) {
44961
44989
  return null;
44962
44990
  }
@@ -45708,16 +45736,13 @@ class SingleShimTypeCheckingHost extends SingleFileTypeCheckingHost {
45708
45736
  exports.AST = AST;
45709
45737
  exports.ASTWithSource = ASTWithSource;
45710
45738
  exports.AbsoluteModuleStrategy = AbsoluteModuleStrategy;
45711
- exports.AbsoluteSourceSpan = AbsoluteSourceSpan;
45712
45739
  exports.AmbientImport = AmbientImport;
45713
45740
  exports.ArrowFunctionExpr = ArrowFunctionExpr;
45714
45741
  exports.Binary = Binary;
45715
- exports.BindingPipe = BindingPipe;
45716
45742
  exports.BlockPlaceholder = BlockPlaceholder;
45717
45743
  exports.BoundAttribute = BoundAttribute;
45718
45744
  exports.BoundDeferredTrigger = BoundDeferredTrigger;
45719
45745
  exports.BoundEvent = BoundEvent;
45720
- exports.BoundText = BoundText;
45721
45746
  exports.COMPILER_ERRORS_WITH_GUIDES = COMPILER_ERRORS_WITH_GUIDES;
45722
45747
  exports.CR = CR;
45723
45748
  exports.CUSTOM_ELEMENTS_SCHEMA = CUSTOM_ELEMENTS_SCHEMA;
@@ -45728,36 +45753,29 @@ exports.CompoundMetadataReader = CompoundMetadataReader;
45728
45753
  exports.Conditional = Conditional;
45729
45754
  exports.ConstantPool = ConstantPool;
45730
45755
  exports.Container = Container;
45731
- exports.Content = Content;
45732
45756
  exports.CssSelector = CssSelector;
45733
45757
  exports.DEFAULT_INTERPOLATION_CONFIG = DEFAULT_INTERPOLATION_CONFIG;
45734
45758
  exports.DYNAMIC_TYPE = DYNAMIC_TYPE;
45735
45759
  exports.Declaration = Declaration;
45736
45760
  exports.DeclareFunctionStmt = DeclareFunctionStmt;
45737
45761
  exports.DefaultImportTracker = DefaultImportTracker;
45738
- exports.DeferredBlock = DeferredBlock;
45739
45762
  exports.DefinitionMap = DefinitionMap;
45740
45763
  exports.DomElementSchemaRegistry = DomElementSchemaRegistry;
45741
45764
  exports.DynamicImportExpr = DynamicImportExpr;
45742
45765
  exports.DynamicValue = DynamicValue;
45743
45766
  exports.Element = Element;
45744
45767
  exports.Element$1 = Element$1;
45745
- exports.EmptyExpr = EmptyExpr$1;
45746
45768
  exports.EnumValue = EnumValue;
45747
45769
  exports.ExternalExpr = ExternalExpr;
45748
45770
  exports.FatalDiagnosticError = FatalDiagnosticError;
45749
45771
  exports.FnParam = FnParam;
45750
- exports.ForLoopBlock = ForLoopBlock;
45751
45772
  exports.FunctionExpr = FunctionExpr;
45752
45773
  exports.HtmlParser = HtmlParser;
45753
45774
  exports.I18nError = I18nError;
45754
45775
  exports.INPUT_INITIALIZER_FN = INPUT_INITIALIZER_FN;
45755
45776
  exports.Icu = Icu;
45756
- exports.Icu$1 = Icu$1;
45757
45777
  exports.IcuPlaceholder = IcuPlaceholder;
45758
45778
  exports.Identifiers = Identifiers;
45759
- exports.IfBlock = IfBlock;
45760
- exports.IfBlockBranch = IfBlockBranch;
45761
45779
  exports.ImplicitReceiver = ImplicitReceiver;
45762
45780
  exports.ImportManager = ImportManager;
45763
45781
  exports.Interpolation = Interpolation$1;
@@ -45802,7 +45820,6 @@ exports.SafePropertyRead = SafePropertyRead;
45802
45820
  exports.SelectorMatcher = SelectorMatcher;
45803
45821
  exports.Serializer = Serializer;
45804
45822
  exports.StaticInterpreter = StaticInterpreter;
45805
- exports.SwitchBlock = SwitchBlock;
45806
45823
  exports.SyntheticValue = SyntheticValue;
45807
45824
  exports.Tag = Tag;
45808
45825
  exports.TagPlaceholder = TagPlaceholder;
@@ -45811,11 +45828,9 @@ exports.TemplateTypeCheckerImpl = TemplateTypeCheckerImpl;
45811
45828
  exports.Text = Text;
45812
45829
  exports.Text$1 = Text$1;
45813
45830
  exports.Text$2 = Text$2;
45814
- exports.Text$3 = Text$3;
45815
45831
  exports.TextAttribute = TextAttribute;
45816
45832
  exports.ThisReceiver = ThisReceiver;
45817
45833
  exports.Trait = Trait;
45818
- exports.TransplantedType = TransplantedType;
45819
45834
  exports.TypeCheckShimGenerator = TypeCheckShimGenerator;
45820
45835
  exports.TypeScriptReflectionHost = TypeScriptReflectionHost;
45821
45836
  exports.UNSAFE_OBJECT_KEY_NAME_REGEXP = UNSAFE_OBJECT_KEY_NAME_REGEXP;
@@ -45844,7 +45859,6 @@ exports.conditionallyCreateDirectiveBindingLiteral = conditionallyCreateDirectiv
45844
45859
  exports.convertFromMaybeForwardRefExpression = convertFromMaybeForwardRefExpression;
45845
45860
  exports.copyFileShimData = copyFileShimData;
45846
45861
  exports.createComponentType = createComponentType;
45847
- exports.createCssSelectorFromNode = createCssSelectorFromNode;
45848
45862
  exports.createDirectiveType = createDirectiveType;
45849
45863
  exports.createFactoryType = createFactoryType;
45850
45864
  exports.createHostDirectivesMappingArray = createHostDirectivesMappingArray;
@@ -45880,7 +45894,6 @@ exports.getSourceFileOrNull = getSourceFileOrNull;
45880
45894
  exports.getTemplateDiagnostics = getTemplateDiagnostics;
45881
45895
  exports.hasInjectableFields = hasInjectableFields;
45882
45896
  exports.identifierOfNode = identifierOfNode;
45883
- exports.ifStmt = ifStmt;
45884
45897
  exports.importExpr = importExpr;
45885
45898
  exports.isAbstractClassDeclaration = isAbstractClassDeclaration;
45886
45899
  exports.isAliasImportDeclaration = isAliasImportDeclaration;