@angular/compiler 19.2.1 → 19.2.3

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.2.1
2
+ * @license Angular v19.2.3
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -399,6 +399,10 @@ class SelectorContext {
399
399
  }
400
400
 
401
401
  // Attention:
402
+ // This file duplicates types and values from @angular/core
403
+ // so that we are able to make @angular/compiler independent of @angular/core.
404
+ // This is important to prevent a build cycle, as @angular/core needs to
405
+ // be compiled with the compiler.
402
406
  // Stores the default value of `emitDistinctChangesOnly` when the `emitDistinctChangesOnly` is not
403
407
  // explicitly set.
404
408
  const emitDistinctChangesOnlyDefaultValue = true;
@@ -484,15 +488,15 @@ function parseSelectorToR3Selector(selector) {
484
488
 
485
489
  var core = /*#__PURE__*/Object.freeze({
486
490
  __proto__: null,
487
- emitDistinctChangesOnlyDefaultValue: emitDistinctChangesOnlyDefaultValue,
488
- get ViewEncapsulation () { return ViewEncapsulation; },
491
+ CUSTOM_ELEMENTS_SCHEMA: CUSTOM_ELEMENTS_SCHEMA,
489
492
  get ChangeDetectionStrategy () { return ChangeDetectionStrategy; },
490
493
  get InputFlags () { return InputFlags; },
491
- CUSTOM_ELEMENTS_SCHEMA: CUSTOM_ELEMENTS_SCHEMA,
494
+ get MissingTranslationStrategy () { return MissingTranslationStrategy; },
492
495
  NO_ERRORS_SCHEMA: NO_ERRORS_SCHEMA,
493
- Type: Type$1,
494
496
  get SecurityContext () { return SecurityContext; },
495
- get MissingTranslationStrategy () { return MissingTranslationStrategy; },
497
+ Type: Type$1,
498
+ get ViewEncapsulation () { return ViewEncapsulation; },
499
+ emitDistinctChangesOnlyDefaultValue: emitDistinctChangesOnlyDefaultValue,
496
500
  parseSelectorToR3Selector: parseSelectorToR3Selector
497
501
  });
498
502
 
@@ -663,7 +667,7 @@ function fingerprint(str) {
663
667
  let lo = hash32(view, utf8.length, 102072);
664
668
  if (hi == 0 && (lo == 0 || lo == 1)) {
665
669
  hi = hi ^ 0x130f9bef;
666
- lo = lo ^ -0x6b5f56d8;
670
+ lo = lo ^ -1801410264;
667
671
  }
668
672
  return (BigInt.asUintN(32, BigInt(hi)) << BigInt(32)) | BigInt.asUintN(32, BigInt(lo));
669
673
  }
@@ -1952,7 +1956,7 @@ class IfStmt extends Statement {
1952
1956
  return visitor.visitIfStmt(this, context);
1953
1957
  }
1954
1958
  }
1955
- class RecursiveAstVisitor$1 {
1959
+ let RecursiveAstVisitor$1 = class RecursiveAstVisitor {
1956
1960
  visitType(ast, context) {
1957
1961
  return ast;
1958
1962
  }
@@ -2134,7 +2138,7 @@ class RecursiveAstVisitor$1 {
2134
2138
  visitAllStatements(stmts, context) {
2135
2139
  stmts.forEach((stmt) => stmt.visitStatement(this, context));
2136
2140
  }
2137
- }
2141
+ };
2138
2142
  function leadingComment(text, multiline = false, trailingNewline = true) {
2139
2143
  return new LeadingComment(text, multiline, trailingNewline);
2140
2144
  }
@@ -2229,89 +2233,89 @@ function serializeTags(tags) {
2229
2233
 
2230
2234
  var output_ast = /*#__PURE__*/Object.freeze({
2231
2235
  __proto__: null,
2232
- get TypeModifier () { return TypeModifier; },
2233
- Type: Type,
2234
- get BuiltinTypeName () { return BuiltinTypeName; },
2235
- BuiltinType: BuiltinType,
2236
- ExpressionType: ExpressionType,
2237
2236
  ArrayType: ArrayType,
2238
- MapType: MapType,
2239
- TransplantedType: TransplantedType,
2240
- DYNAMIC_TYPE: DYNAMIC_TYPE,
2241
- INFERRED_TYPE: INFERRED_TYPE,
2237
+ ArrowFunctionExpr: ArrowFunctionExpr,
2242
2238
  BOOL_TYPE: BOOL_TYPE,
2243
- INT_TYPE: INT_TYPE,
2244
- NUMBER_TYPE: NUMBER_TYPE,
2245
- STRING_TYPE: STRING_TYPE,
2246
- FUNCTION_TYPE: FUNCTION_TYPE,
2247
- NONE_TYPE: NONE_TYPE,
2248
- get UnaryOperator () { return UnaryOperator; },
2249
2239
  get BinaryOperator () { return BinaryOperator; },
2250
- nullSafeIsEquivalent: nullSafeIsEquivalent,
2251
- areAllEquivalent: areAllEquivalent,
2240
+ BinaryOperatorExpr: BinaryOperatorExpr,
2241
+ BuiltinType: BuiltinType,
2242
+ get BuiltinTypeName () { return BuiltinTypeName; },
2243
+ CommaExpr: CommaExpr,
2244
+ ConditionalExpr: ConditionalExpr,
2245
+ DYNAMIC_TYPE: DYNAMIC_TYPE,
2246
+ DeclareFunctionStmt: DeclareFunctionStmt,
2247
+ DeclareVarStmt: DeclareVarStmt,
2248
+ DynamicImportExpr: DynamicImportExpr,
2252
2249
  Expression: Expression,
2253
- ReadVarExpr: ReadVarExpr,
2254
- TypeofExpr: TypeofExpr,
2255
- WrappedNodeExpr: WrappedNodeExpr,
2256
- WriteVarExpr: WriteVarExpr,
2257
- WriteKeyExpr: WriteKeyExpr,
2258
- WritePropExpr: WritePropExpr,
2259
- InvokeFunctionExpr: InvokeFunctionExpr,
2260
- TaggedTemplateLiteralExpr: TaggedTemplateLiteralExpr,
2261
- InstantiateExpr: InstantiateExpr,
2262
- LiteralExpr: LiteralExpr,
2263
- TemplateLiteralExpr: TemplateLiteralExpr,
2264
- TemplateLiteralElementExpr: TemplateLiteralElementExpr,
2265
- LiteralPiece: LiteralPiece,
2266
- PlaceholderPiece: PlaceholderPiece,
2267
- LocalizedString: LocalizedString,
2250
+ ExpressionStatement: ExpressionStatement,
2251
+ ExpressionType: ExpressionType,
2268
2252
  ExternalExpr: ExternalExpr,
2269
2253
  ExternalReference: ExternalReference,
2270
- ConditionalExpr: ConditionalExpr,
2271
- DynamicImportExpr: DynamicImportExpr,
2272
- NotExpr: NotExpr,
2254
+ FUNCTION_TYPE: FUNCTION_TYPE,
2273
2255
  FnParam: FnParam,
2274
2256
  FunctionExpr: FunctionExpr,
2275
- ArrowFunctionExpr: ArrowFunctionExpr,
2276
- UnaryOperatorExpr: UnaryOperatorExpr,
2277
- BinaryOperatorExpr: BinaryOperatorExpr,
2278
- ReadPropExpr: ReadPropExpr,
2279
- ReadKeyExpr: ReadKeyExpr,
2257
+ INFERRED_TYPE: INFERRED_TYPE,
2258
+ INT_TYPE: INT_TYPE,
2259
+ IfStmt: IfStmt,
2260
+ InstantiateExpr: InstantiateExpr,
2261
+ InvokeFunctionExpr: InvokeFunctionExpr,
2262
+ JSDocComment: JSDocComment,
2263
+ LeadingComment: LeadingComment,
2280
2264
  LiteralArrayExpr: LiteralArrayExpr,
2265
+ LiteralExpr: LiteralExpr,
2281
2266
  LiteralMapEntry: LiteralMapEntry,
2282
2267
  LiteralMapExpr: LiteralMapExpr,
2283
- CommaExpr: CommaExpr,
2268
+ LiteralPiece: LiteralPiece,
2269
+ LocalizedString: LocalizedString,
2270
+ MapType: MapType,
2271
+ NONE_TYPE: NONE_TYPE,
2284
2272
  NULL_EXPR: NULL_EXPR,
2285
- TYPED_NULL_EXPR: TYPED_NULL_EXPR,
2286
- get StmtModifier () { return StmtModifier; },
2287
- LeadingComment: LeadingComment,
2288
- JSDocComment: JSDocComment,
2289
- Statement: Statement,
2290
- DeclareVarStmt: DeclareVarStmt,
2291
- DeclareFunctionStmt: DeclareFunctionStmt,
2292
- ExpressionStatement: ExpressionStatement,
2293
- ReturnStatement: ReturnStatement,
2294
- IfStmt: IfStmt,
2273
+ NUMBER_TYPE: NUMBER_TYPE,
2274
+ NotExpr: NotExpr,
2275
+ PlaceholderPiece: PlaceholderPiece,
2276
+ ReadKeyExpr: ReadKeyExpr,
2277
+ ReadPropExpr: ReadPropExpr,
2278
+ ReadVarExpr: ReadVarExpr,
2295
2279
  RecursiveAstVisitor: RecursiveAstVisitor$1,
2296
- leadingComment: leadingComment,
2297
- jsDocComment: jsDocComment,
2298
- variable: variable,
2280
+ ReturnStatement: ReturnStatement,
2281
+ STRING_TYPE: STRING_TYPE,
2282
+ Statement: Statement,
2283
+ get StmtModifier () { return StmtModifier; },
2284
+ TYPED_NULL_EXPR: TYPED_NULL_EXPR,
2285
+ TaggedTemplateLiteralExpr: TaggedTemplateLiteralExpr,
2286
+ TemplateLiteralElementExpr: TemplateLiteralElementExpr,
2287
+ TemplateLiteralExpr: TemplateLiteralExpr,
2288
+ TransplantedType: TransplantedType,
2289
+ Type: Type,
2290
+ get TypeModifier () { return TypeModifier; },
2291
+ TypeofExpr: TypeofExpr,
2292
+ get UnaryOperator () { return UnaryOperator; },
2293
+ UnaryOperatorExpr: UnaryOperatorExpr,
2294
+ WrappedNodeExpr: WrappedNodeExpr,
2295
+ WriteKeyExpr: WriteKeyExpr,
2296
+ WritePropExpr: WritePropExpr,
2297
+ WriteVarExpr: WriteVarExpr,
2298
+ areAllEquivalent: areAllEquivalent,
2299
+ arrowFn: arrowFn,
2300
+ expressionType: expressionType,
2301
+ fn: fn,
2302
+ ifStmt: ifStmt,
2299
2303
  importExpr: importExpr,
2300
2304
  importType: importType,
2301
- expressionType: expressionType,
2302
- transplantedType: transplantedType,
2303
- typeofExpr: typeofExpr,
2305
+ isNull: isNull,
2306
+ jsDocComment: jsDocComment,
2307
+ leadingComment: leadingComment,
2308
+ literal: literal,
2304
2309
  literalArr: literalArr,
2305
2310
  literalMap: literalMap,
2306
- unary: unary,
2311
+ localizedString: localizedString,
2307
2312
  not: not,
2308
- fn: fn,
2309
- arrowFn: arrowFn,
2310
- ifStmt: ifStmt,
2313
+ nullSafeIsEquivalent: nullSafeIsEquivalent,
2311
2314
  taggedTemplate: taggedTemplate,
2312
- literal: literal,
2313
- localizedString: localizedString,
2314
- isNull: isNull
2315
+ transplantedType: transplantedType,
2316
+ typeofExpr: typeofExpr,
2317
+ unary: unary,
2318
+ variable: variable
2315
2319
  });
2316
2320
 
2317
2321
  const CONSTANT_PREFIX = '_c';
@@ -3115,13 +3119,6 @@ function _splitAt(input, character, defaultValues) {
3115
3119
  function noUndefined(val) {
3116
3120
  return val === undefined ? null : val;
3117
3121
  }
3118
- function error(msg) {
3119
- throw new Error(`Internal Error: ${msg}`);
3120
- }
3121
- // Escape characters that have a special meaning in Regular Expressions
3122
- function escapeRegExp(s) {
3123
- return s.replace(/([.*+?^=!:${}()|[\]\/\\])/g, '\\$1');
3124
- }
3125
3122
  function utf8Encode(str) {
3126
3123
  let encoded = [];
3127
3124
  for (let index = 0; index < str.length; index++) {
@@ -3192,29 +3189,6 @@ class Version {
3192
3189
  }
3193
3190
  }
3194
3191
  const _global = globalThis;
3195
- function newArray(size, value) {
3196
- const list = [];
3197
- for (let i = 0; i < size; i++) {
3198
- list.push(value);
3199
- }
3200
- return list;
3201
- }
3202
- /**
3203
- * Partitions a given array into 2 arrays, based on a boolean value returned by the condition
3204
- * function.
3205
- *
3206
- * @param arr Input array that should be partitioned
3207
- * @param conditionFn Condition function that is called for each item in a given array and returns a
3208
- * boolean value.
3209
- */
3210
- function partitionArray(arr, conditionFn) {
3211
- const truthy = [];
3212
- const falsy = [];
3213
- for (const item of arr) {
3214
- (conditionFn(item) ? truthy : falsy).push(item);
3215
- }
3216
- return [truthy, falsy];
3217
- }
3218
3192
  const V1_TO_18 = /^([1-9]|1[0-8])\./;
3219
3193
  function getJitStandaloneDefaultForVersion(version) {
3220
3194
  if (version.startsWith('0.')) {
@@ -3911,20 +3885,10 @@ function typeWithParameters(type, numParams) {
3911
3885
  }
3912
3886
  return expressionType(type, undefined, params);
3913
3887
  }
3914
- const ANIMATE_SYMBOL_PREFIX = '@';
3915
- function prepareSyntheticPropertyName(name) {
3916
- return `${ANIMATE_SYMBOL_PREFIX}${name}`;
3917
- }
3918
- function prepareSyntheticListenerName(name, phase) {
3919
- return `${ANIMATE_SYMBOL_PREFIX}${name}.${phase}`;
3920
- }
3921
3888
  function getSafePropertyAccessString(accessor, name) {
3922
3889
  const escapedName = escapeIdentifier(name, false, false);
3923
3890
  return escapedName !== name ? `${accessor}[${escapedName}]` : `${accessor}.${name}`;
3924
3891
  }
3925
- function prepareSyntheticListenerFunctionName(name, phase) {
3926
- return `animation_${name}_${phase}`;
3927
- }
3928
3892
  function jitOnlyGuardedExpression(expr) {
3929
3893
  return guardedExpression('ngJitMode', expr);
3930
3894
  }
@@ -4222,11 +4186,11 @@ class ASTWithName extends AST {
4222
4186
  this.nameSpan = nameSpan;
4223
4187
  }
4224
4188
  }
4225
- class EmptyExpr$1 extends AST {
4189
+ let EmptyExpr$1 = class EmptyExpr extends AST {
4226
4190
  visit(visitor, context = null) {
4227
4191
  // do nothing
4228
4192
  }
4229
- }
4193
+ };
4230
4194
  class ImplicitReceiver extends AST {
4231
4195
  visit(visitor, context = null) {
4232
4196
  return visitor.visitImplicitReceiver(this, context);
@@ -4394,7 +4358,7 @@ class LiteralMap extends AST {
4394
4358
  return visitor.visitLiteralMap(this, context);
4395
4359
  }
4396
4360
  }
4397
- class Interpolation$1 extends AST {
4361
+ let Interpolation$1 = class Interpolation extends AST {
4398
4362
  strings;
4399
4363
  expressions;
4400
4364
  constructor(span, sourceSpan, strings, expressions) {
@@ -4405,7 +4369,7 @@ class Interpolation$1 extends AST {
4405
4369
  visit(visitor, context = null) {
4406
4370
  return visitor.visitInterpolation(this, context);
4407
4371
  }
4408
- }
4372
+ };
4409
4373
  class Binary extends AST {
4410
4374
  operation;
4411
4375
  left;
@@ -4861,7 +4825,7 @@ function mergeNsAndName(prefix, localName) {
4861
4825
  * the top-level of the R3 AST, and only if `Render3ParseOptions['collectCommentNodes']`
4862
4826
  * is true.
4863
4827
  */
4864
- class Comment$1 {
4828
+ let Comment$1 = class Comment {
4865
4829
  value;
4866
4830
  sourceSpan;
4867
4831
  constructor(value, sourceSpan) {
@@ -4871,8 +4835,8 @@ class Comment$1 {
4871
4835
  visit(_visitor) {
4872
4836
  throw new Error('visit() not implemented for Comment');
4873
4837
  }
4874
- }
4875
- class Text$3 {
4838
+ };
4839
+ let Text$3 = class Text {
4876
4840
  value;
4877
4841
  sourceSpan;
4878
4842
  constructor(value, sourceSpan) {
@@ -4882,7 +4846,7 @@ class Text$3 {
4882
4846
  visit(visitor) {
4883
4847
  return visitor.visitText(this);
4884
4848
  }
4885
- }
4849
+ };
4886
4850
  class BoundText {
4887
4851
  value;
4888
4852
  sourceSpan;
@@ -4983,7 +4947,7 @@ class BoundEvent {
4983
4947
  return visitor.visitBoundEvent(this);
4984
4948
  }
4985
4949
  }
4986
- class Element$1 {
4950
+ let Element$1 = class Element {
4987
4951
  name;
4988
4952
  attributes;
4989
4953
  inputs;
@@ -5009,7 +4973,7 @@ class Element$1 {
5009
4973
  visit(visitor) {
5010
4974
  return visitor.visitElement(this);
5011
4975
  }
5012
- }
4976
+ };
5013
4977
  class DeferredTrigger {
5014
4978
  nameSpan;
5015
4979
  sourceSpan;
@@ -5280,7 +5244,7 @@ class UnknownBlock {
5280
5244
  return visitor.visitUnknownBlock(this);
5281
5245
  }
5282
5246
  }
5283
- class LetDeclaration$1 {
5247
+ let LetDeclaration$1 = class LetDeclaration {
5284
5248
  name;
5285
5249
  value;
5286
5250
  sourceSpan;
@@ -5296,7 +5260,7 @@ class LetDeclaration$1 {
5296
5260
  visit(visitor) {
5297
5261
  return visitor.visitLetDeclaration(this);
5298
5262
  }
5299
- }
5263
+ };
5300
5264
  class Template {
5301
5265
  tagName;
5302
5266
  attributes;
@@ -5385,7 +5349,7 @@ class Reference {
5385
5349
  return visitor.visitReference(this);
5386
5350
  }
5387
5351
  }
5388
- class Icu$1 {
5352
+ let Icu$1 = class Icu {
5389
5353
  vars;
5390
5354
  placeholders;
5391
5355
  sourceSpan;
@@ -5399,8 +5363,8 @@ class Icu$1 {
5399
5363
  visit(visitor) {
5400
5364
  return visitor.visitIcu(this);
5401
5365
  }
5402
- }
5403
- class RecursiveVisitor$1 {
5366
+ };
5367
+ let RecursiveVisitor$1 = class RecursiveVisitor {
5404
5368
  visitElement(element) {
5405
5369
  visitAll$1(this, element.attributes);
5406
5370
  visitAll$1(this, element.inputs);
@@ -5464,7 +5428,7 @@ class RecursiveVisitor$1 {
5464
5428
  visitDeferredTrigger(trigger) { }
5465
5429
  visitUnknownBlock(block) { }
5466
5430
  visitLetDeclaration(decl) { }
5467
- }
5431
+ };
5468
5432
  function visitAll$1(visitor, nodes) {
5469
5433
  const result = [];
5470
5434
  if (visitor.visit) {
@@ -5528,7 +5492,7 @@ class Message {
5528
5492
  }
5529
5493
  }
5530
5494
  }
5531
- class Text$2 {
5495
+ let Text$2 = class Text {
5532
5496
  value;
5533
5497
  sourceSpan;
5534
5498
  constructor(value, sourceSpan) {
@@ -5538,7 +5502,7 @@ class Text$2 {
5538
5502
  visit(visitor, context) {
5539
5503
  return visitor.visitText(this, context);
5540
5504
  }
5541
- }
5505
+ };
5542
5506
  // TODO(vicb): do we really need this node (vs an array) ?
5543
5507
  class Container {
5544
5508
  children;
@@ -5801,7 +5765,7 @@ class SimplePlaceholderMapper extends RecurseVisitor {
5801
5765
  }
5802
5766
  }
5803
5767
 
5804
- class _Visitor$2 {
5768
+ let _Visitor$2 = class _Visitor {
5805
5769
  visitTag(tag) {
5806
5770
  const strAttrs = this._serializeAttributes(tag.attrs);
5807
5771
  if (tag.children.length == 0) {
@@ -5825,7 +5789,7 @@ class _Visitor$2 {
5825
5789
  visitDoctype(doctype) {
5826
5790
  return `<!DOCTYPE ${doctype.rootTag} [\n${doctype.dtd}\n]>`;
5827
5791
  }
5828
- }
5792
+ };
5829
5793
  const _visitor = new _Visitor$2();
5830
5794
  function serialize$1(nodes) {
5831
5795
  return nodes.map((node) => node.visit(_visitor)).join('');
@@ -5867,7 +5831,7 @@ class Tag {
5867
5831
  return visitor.visitTag(this);
5868
5832
  }
5869
5833
  }
5870
- class Text$1 {
5834
+ let Text$1 = class Text {
5871
5835
  value;
5872
5836
  constructor(unescapedValue) {
5873
5837
  this.value = escapeXml(unescapedValue);
@@ -5875,7 +5839,7 @@ class Text$1 {
5875
5839
  visit(visitor) {
5876
5840
  return visitor.visitText(this);
5877
5841
  }
5878
- }
5842
+ };
5879
5843
  class CR extends Text$1 {
5880
5844
  constructor(ws = 0) {
5881
5845
  super(`\n${new Array(ws + 1).join(' ')}`);
@@ -5967,7 +5931,7 @@ class Xmb extends Serializer {
5967
5931
  return new SimplePlaceholderMapper(message, toPublicName);
5968
5932
  }
5969
5933
  }
5970
- class _Visitor$1 {
5934
+ let _Visitor$1 = class _Visitor {
5971
5935
  visitText(text, context) {
5972
5936
  return [new Text$1(text.value)];
5973
5937
  }
@@ -6041,7 +6005,7 @@ class _Visitor$1 {
6041
6005
  serialize(nodes) {
6042
6006
  return [].concat(...nodes.map((node) => node.visit(this)));
6043
6007
  }
6044
- }
6008
+ };
6045
6009
  function digest(message) {
6046
6010
  return decimalDigest(message);
6047
6011
  }
@@ -6085,13 +6049,6 @@ function hasI18nAttrs(element) {
6085
6049
  function icuFromI18nMessage(message) {
6086
6050
  return message.nodes[0];
6087
6051
  }
6088
- function placeholdersToParams(placeholders) {
6089
- const params = {};
6090
- placeholders.forEach((values, key) => {
6091
- params[key] = literal(values.length > 1 ? `[${values.join('|')}]` : values[0]);
6092
- });
6093
- return params;
6094
- }
6095
6052
  /**
6096
6053
  * Format the placeholder names in a map of placeholders to expressions.
6097
6054
  *
@@ -6169,9 +6126,6 @@ function temporaryAllocator(pushStatement, name) {
6169
6126
  return temp;
6170
6127
  };
6171
6128
  }
6172
- function invalid(arg) {
6173
- throw new Error(`Invalid state: Visitor ${this.constructor.name} doesn't handle ${arg.constructor.name}`);
6174
- }
6175
6129
  function asLiteral(value) {
6176
6130
  if (Array.isArray(value)) {
6177
6131
  return literalArr(value.map(asLiteral));
@@ -6539,8 +6493,6 @@ const $LBRACE = 123;
6539
6493
  const $BAR = 124;
6540
6494
  const $RBRACE = 125;
6541
6495
  const $NBSP = 160;
6542
- const $PIPE = 124;
6543
- const $TILDA = 126;
6544
6496
  const $AT = 64;
6545
6497
  const $BT = 96;
6546
6498
  function isWhitespace(code) {
@@ -7253,9 +7205,7 @@ function compileNgModule(meta) {
7253
7205
  statements.push(setNgModuleScopeCall);
7254
7206
  }
7255
7207
  }
7256
- else {
7257
- // Selector scope emit was not requested, so skip it.
7258
- }
7208
+ else ;
7259
7209
  if (meta.schemas !== null && meta.schemas.length > 0) {
7260
7210
  definitionMap.set('schemas', literalArr(meta.schemas.map((ref) => ref.value)));
7261
7211
  }
@@ -10445,9 +10395,7 @@ function transformExpressionsInExpression(expr, transform, flags) {
10445
10395
  expr.body = transformExpressionsInExpression(expr.body, transform, flags);
10446
10396
  }
10447
10397
  }
10448
- else if (expr instanceof WrappedNodeExpr) {
10449
- // TODO: Do we need to transform any TS nodes nested inside of this expression?
10450
- }
10398
+ else if (expr instanceof WrappedNodeExpr) ;
10451
10399
  else if (expr instanceof TemplateLiteralExpr) {
10452
10400
  for (let i = 0; i < expr.expressions.length; i++) {
10453
10401
  expr.expressions[i] = transformExpressionsInExpression(expr.expressions[i], transform, flags);
@@ -10455,9 +10403,7 @@ function transformExpressionsInExpression(expr, transform, flags) {
10455
10403
  }
10456
10404
  else if (expr instanceof ReadVarExpr ||
10457
10405
  expr instanceof ExternalExpr ||
10458
- expr instanceof LiteralExpr) {
10459
- // No action for these types.
10460
- }
10406
+ expr instanceof LiteralExpr) ;
10461
10407
  else {
10462
10408
  throw new Error(`Unhandled expression kind: ${expr.constructor.name}`);
10463
10409
  }
@@ -12355,11 +12301,6 @@ function deduplicateTextBindings(job) {
12355
12301
  OpList.remove(op);
12356
12302
  }
12357
12303
  }
12358
- else {
12359
- // TODO: Determine the correct behavior. It would probably make sense to merge multiple
12360
- // style and class attributes. Alternatively we could just throw an error, as HTML
12361
- // doesn't permit duplicate attributes.
12362
- }
12363
12304
  }
12364
12305
  seenForElement.add(op.name);
12365
12306
  seen.set(op.target, seenForElement);
@@ -12490,9 +12431,9 @@ function resolveDeferTargetNames(job) {
12490
12431
  }
12491
12432
  }
12492
12433
  }
12493
- class Scope$1 {
12434
+ let Scope$1 = class Scope {
12494
12435
  targets = new Map();
12495
- }
12436
+ };
12496
12437
 
12497
12438
  const REPLACEMENTS = new Map([
12498
12439
  [OpKind.ElementEnd, [OpKind.ElementStart, OpKind.Element]],
@@ -12548,14 +12489,6 @@ function expandSafeReads(job) {
12548
12489
  }
12549
12490
  }
12550
12491
  }
12551
- // A lookup set of all the expression kinds that require a temporary variable to be generated.
12552
- const requiresTemporary = [
12553
- InvokeFunctionExpr,
12554
- LiteralArrayExpr,
12555
- LiteralMapExpr,
12556
- SafeInvokeFunctionExpr,
12557
- PipeBindingExpr,
12558
- ].map((e) => e.constructor.name);
12559
12492
  function needsTemporaryInSafeAccess(e) {
12560
12493
  // TODO: We probably want to use an expression visitor to recursively visit all descendents.
12561
12494
  // However, that would potentially do a lot of extra work (because it cannot short circuit), so we
@@ -12827,7 +12760,7 @@ function createI18nMessage(job, context, messagePlaceholder) {
12827
12760
  let formattedParams = formatParams(context.params);
12828
12761
  const formattedPostprocessingParams = formatParams(context.postprocessingParams);
12829
12762
  let needsPostprocessing = [...context.params.values()].some((v) => v.length > 1);
12830
- return createI18nMessageOp(job.allocateXrefId(), context.xref, context.i18nBlock, context.message, messagePlaceholder ?? null, formattedParams, formattedPostprocessingParams, needsPostprocessing);
12763
+ return createI18nMessageOp(job.allocateXrefId(), context.xref, context.i18nBlock, context.message, null, formattedParams, formattedPostprocessingParams, needsPostprocessing);
12831
12764
  }
12832
12765
  /**
12833
12766
  * Formats an ICU placeholder into a single string with expression placeholders.
@@ -13278,9 +13211,6 @@ function parseProperty(name) {
13278
13211
  return { property, suffix };
13279
13212
  }
13280
13213
 
13281
- function mapEntry(key, value) {
13282
- return { key, value, quoted: false };
13283
- }
13284
13214
  function mapLiteral(obj, quoted = false) {
13285
13215
  return literalMap(Object.keys(obj).map((key) => ({
13286
13216
  key,
@@ -16900,7 +16830,7 @@ class ParseTreeResult {
16900
16830
  this.errors = errors;
16901
16831
  }
16902
16832
  }
16903
- class Parser$1 {
16833
+ let Parser$1 = class Parser {
16904
16834
  getTagDefinition;
16905
16835
  constructor(getTagDefinition) {
16906
16836
  this.getTagDefinition = getTagDefinition;
@@ -16911,7 +16841,7 @@ class Parser$1 {
16911
16841
  parser.build();
16912
16842
  return new ParseTreeResult(parser.rootNodes, tokenizeResult.errors.concat(parser.errors));
16913
16843
  }
16914
- }
16844
+ };
16915
16845
  class _TreeBuilder {
16916
16846
  tokens;
16917
16847
  getTagDefinition;
@@ -17592,9 +17522,6 @@ function transformTextToken({ type, parts, sourceSpan }, transform) {
17592
17522
  function processWhitespace(text) {
17593
17523
  return replaceNgsp(text).replace(WS_REPLACE_REGEXP, ' ');
17594
17524
  }
17595
- function removeWhitespaces(htmlAstWithErrors, preserveSignificantWhitespace) {
17596
- return new ParseTreeResult(visitAllWithSiblings(new WhitespaceVisitor(preserveSignificantWhitespace), htmlAstWithErrors.rootNodes), htmlAstWithErrors.errors);
17597
- }
17598
17525
  function visitAllWithSiblings(visitor, nodes) {
17599
17526
  const result = [];
17600
17527
  nodes.forEach((ast, i) => {
@@ -17942,9 +17869,7 @@ class _Scanner {
17942
17869
  let hasSeparators = false;
17943
17870
  this.advance(); // Skip initial digit.
17944
17871
  while (true) {
17945
- if (isDigit(this.peek)) {
17946
- // Do nothing.
17947
- }
17872
+ if (isDigit(this.peek)) ;
17948
17873
  else if (this.peek === $_) {
17949
17874
  // Separators are only valid when they're surrounded by digits. E.g. `1_0_1` is
17950
17875
  // valid while `_101` and `101_` are not. The separator can't be next to the decimal
@@ -18907,7 +18832,7 @@ class _ParseAST {
18907
18832
  return new LiteralPrimitive(this.span(start), this.sourceSpan(start), value);
18908
18833
  }
18909
18834
  else if (this.next.isTemplateLiteralEnd()) {
18910
- return this.parseNoInterpolationTemplateLiteral(start);
18835
+ return this.parseNoInterpolationTemplateLiteral();
18911
18836
  }
18912
18837
  else if (this.next.isTemplateLiteralPart()) {
18913
18838
  return this.parseTemplateLiteral();
@@ -19237,8 +19162,9 @@ class _ParseAST {
19237
19162
  const sourceSpan = new AbsoluteSourceSpan(spanStart, this.currentAbsoluteOffset);
19238
19163
  return new VariableBinding(sourceSpan, key, value);
19239
19164
  }
19240
- parseNoInterpolationTemplateLiteral(start) {
19165
+ parseNoInterpolationTemplateLiteral() {
19241
19166
  const text = this.next.strValue;
19167
+ const start = this.inputIndex;
19242
19168
  this.advance();
19243
19169
  const span = this.span(start);
19244
19170
  const sourceSpan = this.sourceSpan(start);
@@ -19251,8 +19177,9 @@ class _ParseAST {
19251
19177
  while (this.next !== EOF) {
19252
19178
  const token = this.next;
19253
19179
  if (token.isTemplateLiteralPart() || token.isTemplateLiteralEnd()) {
19254
- elements.push(new TemplateLiteralElement(this.span(this.inputIndex), this.sourceSpan(this.inputIndex), token.strValue));
19180
+ const partStart = this.inputIndex;
19255
19181
  this.advance();
19182
+ elements.push(new TemplateLiteralElement(this.span(partStart), this.sourceSpan(partStart), token.strValue));
19256
19183
  if (token.isTemplateLiteralEnd()) {
19257
19184
  break;
19258
19185
  }
@@ -23121,31 +23048,6 @@ function reify(job) {
23121
23048
  reifyUpdateOperations(unit, unit.update);
23122
23049
  }
23123
23050
  }
23124
- /**
23125
- * This function can be used a sanity check -- it walks every expression in the const pool, and
23126
- * every expression reachable from an op, and makes sure that there are no IR expressions
23127
- * left. This is nice to use for debugging mysterious failures where an IR expression cannot be
23128
- * output from the output AST code.
23129
- */
23130
- function ensureNoIrForDebug(job) {
23131
- for (const stmt of job.pool.statements) {
23132
- transformExpressionsInStatement(stmt, (expr) => {
23133
- if (isIrExpression(expr)) {
23134
- throw new Error(`AssertionError: IR expression found during reify: ${ExpressionKind[expr.kind]}`);
23135
- }
23136
- return expr;
23137
- }, VisitorContextFlag.None);
23138
- }
23139
- for (const unit of job.units) {
23140
- for (const op of unit.ops()) {
23141
- visitExpressionsInOp(op, (expr) => {
23142
- if (isIrExpression(expr)) {
23143
- throw new Error(`AssertionError: IR expression found during reify: ${ExpressionKind[expr.kind]}`);
23144
- }
23145
- });
23146
- }
23147
- }
23148
- }
23149
23051
  function reifyCreateOperations(unit, ops) {
23150
23052
  for (const op of ops) {
23151
23053
  transformExpressionsInOp(op, reifyIrExpression, VisitorContextFlag.None);
@@ -26206,10 +26108,10 @@ function convertAst(ast, job, baseSourceSpan) {
26206
26108
  function convertAstWithInterpolation(job, value, i18nMeta, sourceSpan) {
26207
26109
  let expression;
26208
26110
  if (value instanceof Interpolation$1) {
26209
- expression = new Interpolation(value.strings, value.expressions.map((e) => convertAst(e, job, sourceSpan ?? null)), Object.keys(asMessage(i18nMeta)?.placeholders ?? {}));
26111
+ expression = new Interpolation(value.strings, value.expressions.map((e) => convertAst(e, job, null)), Object.keys(asMessage(i18nMeta)?.placeholders ?? {}));
26210
26112
  }
26211
26113
  else if (value instanceof AST) {
26212
- expression = convertAst(value, job, sourceSpan ?? null);
26114
+ expression = convertAst(value, job, null);
26213
26115
  }
26214
26116
  else {
26215
26117
  expression = literal(value);
@@ -26587,12 +26489,6 @@ function ingestControlFlowInsertionPoint(unit, xref, node) {
26587
26489
  * internal tooling as well.
26588
26490
  */
26589
26491
  let ENABLE_TEMPLATE_SOURCE_LOCATIONS = false;
26590
- /**
26591
- * Utility function to enable source locations. Intended to be used **only** inside unit tests.
26592
- */
26593
- function setEnableTemplateSourceLocations(value) {
26594
- ENABLE_TEMPLATE_SOURCE_LOCATIONS = value;
26595
- }
26596
26492
  /** Gets whether template source locations are enabled. */
26597
26493
  function getTemplateSourceLocationsEnabled() {
26598
26494
  return ENABLE_TEMPLATE_SOURCE_LOCATIONS;
@@ -27189,15 +27085,6 @@ class BindingParser {
27189
27085
  return false;
27190
27086
  }
27191
27087
  }
27192
- class PipeCollector extends RecursiveAstVisitor {
27193
- pipes = new Map();
27194
- visitPipe(ast, context) {
27195
- this.pipes.set(ast.name, ast);
27196
- ast.exp.visit(this);
27197
- this.visitAll(ast.args, context);
27198
- return null;
27199
- }
27200
- }
27201
27088
  function isAnimationLabel(name) {
27202
27089
  return name[0] == '@';
27203
27090
  }
@@ -29534,23 +29421,35 @@ class R3TargetBinder {
29534
29421
  */
29535
29422
  bind(target) {
29536
29423
  if (!target.template) {
29537
- // TODO(alxhub): handle targets which contain things like HostBindings, etc.
29538
- throw new Error('Binding without a template not yet supported');
29539
- }
29540
- // First, parse the template into a `Scope` structure. This operation captures the syntactic
29541
- // scopes in the template and makes them available for later use.
29542
- const scope = Scope.apply(target.template);
29543
- // Use the `Scope` to extract the entities present at every level of the template.
29544
- const scopedNodeEntities = extractScopedNodeEntities(scope);
29545
- // Next, perform directive matching on the template using the `DirectiveBinder`. This returns:
29546
- // - directives: Map of nodes (elements & ng-templates) to the directives on them.
29547
- // - bindings: Map of inputs, outputs, and attributes to the directive/element that claims
29548
- // them. TODO(alxhub): handle multiple directives claiming an input/output/etc.
29549
- // - references: Map of #references to their targets.
29550
- const { directives, eagerDirectives, bindings, references } = DirectiveBinder.apply(target.template, this.directiveMatcher);
29551
- // Finally, run the TemplateBinder to bind references, variables, and other entities within the
29552
- // template. This extracts all the metadata that doesn't depend on directive matching.
29553
- const { expressions, symbols, nestingLevel, usedPipes, eagerPipes, deferBlocks } = TemplateBinder.applyWithScope(target.template, scope);
29424
+ throw new Error('Empty bound targets are not supported');
29425
+ }
29426
+ const directives = new Map();
29427
+ const eagerDirectives = [];
29428
+ const bindings = new Map();
29429
+ const references = new Map();
29430
+ const scopedNodeEntities = new Map();
29431
+ const expressions = new Map();
29432
+ const symbols = new Map();
29433
+ const nestingLevel = new Map();
29434
+ const usedPipes = new Set();
29435
+ const eagerPipes = new Set();
29436
+ const deferBlocks = [];
29437
+ if (target.template) {
29438
+ // First, parse the template into a `Scope` structure. This operation captures the syntactic
29439
+ // scopes in the template and makes them available for later use.
29440
+ const scope = Scope.apply(target.template);
29441
+ // Use the `Scope` to extract the entities present at every level of the template.
29442
+ extractScopedNodeEntities(scope, scopedNodeEntities);
29443
+ // Next, perform directive matching on the template using the `DirectiveBinder`. This returns:
29444
+ // - directives: Map of nodes (elements & ng-templates) to the directives on them.
29445
+ // - bindings: Map of inputs, outputs, and attributes to the directive/element that claims
29446
+ // them. TODO(alxhub): handle multiple directives claiming an input/output/etc.
29447
+ // - references: Map of #references to their targets.
29448
+ DirectiveBinder.apply(target.template, this.directiveMatcher, directives, eagerDirectives, bindings, references);
29449
+ // Finally, run the TemplateBinder to bind references, variables, and other entities within the
29450
+ // template. This extracts all the metadata that doesn't depend on directive matching.
29451
+ TemplateBinder.applyWithScope(target.template, scope, expressions, symbols, nestingLevel, usedPipes, eagerPipes, deferBlocks);
29452
+ }
29554
29453
  return new R3BoundTarget(target, directives, eagerDirectives, bindings, references, expressions, symbols, nestingLevel, scopedNodeEntities, usedPipes, eagerPipes, deferBlocks);
29555
29454
  }
29556
29455
  }
@@ -29777,14 +29676,9 @@ class DirectiveBinder {
29777
29676
  * map which resolves #references (`Reference`s) within the template to the named directive or
29778
29677
  * template node.
29779
29678
  */
29780
- static apply(template, selectorMatcher) {
29781
- const directives = new Map();
29782
- const bindings = new Map();
29783
- const references = new Map();
29784
- const eagerDirectives = [];
29679
+ static apply(template, selectorMatcher, directives, eagerDirectives, bindings, references) {
29785
29680
  const matcher = new DirectiveBinder(selectorMatcher, directives, eagerDirectives, bindings, references);
29786
29681
  matcher.ingest(template);
29787
- return { directives, eagerDirectives, bindings, references };
29788
29682
  }
29789
29683
  ingest(template) {
29790
29684
  template.forEach((node) => node.visit(this));
@@ -29969,18 +29863,11 @@ class TemplateBinder extends RecursiveAstVisitor {
29969
29863
  * nesting level (how many levels deep within the template structure the `Template` is), starting
29970
29864
  * at 1.
29971
29865
  */
29972
- static applyWithScope(nodes, scope) {
29973
- const expressions = new Map();
29974
- const symbols = new Map();
29975
- const nestingLevel = new Map();
29976
- const usedPipes = new Set();
29977
- const eagerPipes = new Set();
29866
+ static applyWithScope(nodes, scope, expressions, symbols, nestingLevel, usedPipes, eagerPipes, deferBlocks) {
29978
29867
  const template = nodes instanceof Template ? nodes : null;
29979
- const deferBlocks = [];
29980
29868
  // The top-level template has nesting level 0.
29981
29869
  const binder = new TemplateBinder(expressions, symbols, usedPipes, eagerPipes, deferBlocks, nestingLevel, scope, template, 0);
29982
29870
  binder.ingest(nodes);
29983
- return { expressions, symbols, nestingLevel, usedPipes, eagerPipes, deferBlocks };
29984
29871
  }
29985
29872
  ingest(nodeOrNodes) {
29986
29873
  if (nodeOrNodes instanceof Template) {
@@ -30330,7 +30217,7 @@ class R3BoundTarget {
30330
30217
  return this.referenceTargetToElement(target.node);
30331
30218
  }
30332
30219
  }
30333
- function extractScopedNodeEntities(rootScope) {
30220
+ function extractScopedNodeEntities(rootScope, templateEntities) {
30334
30221
  const entityMap = new Map();
30335
30222
  function extractScopeEntities(scope) {
30336
30223
  if (entityMap.has(scope.rootNode)) {
@@ -30355,11 +30242,9 @@ function extractScopedNodeEntities(rootScope) {
30355
30242
  }
30356
30243
  extractScopeEntities(scope);
30357
30244
  }
30358
- const templateEntities = new Map();
30359
30245
  for (const [template, entities] of entityMap) {
30360
30246
  templateEntities.set(template, new Set(entities.values()));
30361
30247
  }
30362
- return templateEntities;
30363
30248
  }
30364
30249
 
30365
30250
  /**
@@ -30382,10 +30267,8 @@ class CompilerFacadeImpl {
30382
30267
  }
30383
30268
  compilePipe(angularCoreEnv, sourceMapUrl, facade) {
30384
30269
  const metadata = {
30385
- name: facade.name,
30386
30270
  type: wrapReference(facade.type),
30387
30271
  typeArgumentCount: 0,
30388
- deps: null,
30389
30272
  pipeName: facade.pipeName,
30390
30273
  pure: facade.pure,
30391
30274
  isStandalone: facade.isStandalone,
@@ -30430,7 +30313,6 @@ class CompilerFacadeImpl {
30430
30313
  }
30431
30314
  compileInjector(angularCoreEnv, sourceMapUrl, facade) {
30432
30315
  const meta = {
30433
- name: facade.name,
30434
30316
  type: wrapReference(facade.type),
30435
30317
  providers: facade.providers && facade.providers.length > 0
30436
30318
  ? new WrappedNodeExpr(facade.providers)
@@ -31034,7 +30916,7 @@ function publishFacade(global) {
31034
30916
  * @description
31035
30917
  * Entry point for all public APIs of the compiler package.
31036
30918
  */
31037
- const VERSION = new Version('19.2.1');
30919
+ const VERSION = new Version('19.2.3');
31038
30920
 
31039
30921
  class CompilerConfig {
31040
30922
  defaultEncapsulation;
@@ -31636,7 +31518,7 @@ class Xliff extends Serializer {
31636
31518
  return digest$1(message);
31637
31519
  }
31638
31520
  }
31639
- class _WriteVisitor$1 {
31521
+ let _WriteVisitor$1 = class _WriteVisitor {
31640
31522
  visitText(text, context) {
31641
31523
  return [new Text$1(text.value)];
31642
31524
  }
@@ -31695,7 +31577,7 @@ class _WriteVisitor$1 {
31695
31577
  serialize(nodes) {
31696
31578
  return [].concat(...nodes.map((node) => node.visit(this)));
31697
31579
  }
31698
- }
31580
+ };
31699
31581
  // TODO(vicb): add error management (structure)
31700
31582
  // Extract messages as xml nodes from the xliff file
31701
31583
  class XliffParser {
@@ -31778,7 +31660,7 @@ class XliffParser {
31778
31660
  }
31779
31661
  }
31780
31662
  // Convert ml nodes (xliff syntax) to i18n nodes
31781
- class XmlToI18n$2 {
31663
+ let XmlToI18n$2 = class XmlToI18n {
31782
31664
  // using non-null assertion because it's re(set) by convert()
31783
31665
  _errors;
31784
31666
  convert(message, url) {
@@ -31831,7 +31713,7 @@ class XmlToI18n$2 {
31831
31713
  _addError(node, message) {
31832
31714
  this._errors.push(new I18nError(node.sourceSpan, message));
31833
31715
  }
31834
- }
31716
+ };
31835
31717
  function getCtypeForTag(tag) {
31836
31718
  switch (tag.toLowerCase()) {
31837
31719
  case 'br':
@@ -32093,7 +31975,7 @@ class Xliff2Parser {
32093
31975
  }
32094
31976
  }
32095
31977
  // Convert ml nodes (xliff syntax) to i18n nodes
32096
- class XmlToI18n$1 {
31978
+ let XmlToI18n$1 = class XmlToI18n {
32097
31979
  // using non-null assertion because re(set) by convert()
32098
31980
  _errors;
32099
31981
  convert(message, url) {
@@ -32163,7 +32045,7 @@ class XmlToI18n$1 {
32163
32045
  _addError(node, message) {
32164
32046
  this._errors.push(new I18nError(node.sourceSpan, message));
32165
32047
  }
32166
- }
32048
+ };
32167
32049
  function getTypeForTag(tag) {
32168
32050
  switch (tag.toLowerCase()) {
32169
32051
  case 'br':
@@ -32902,7 +32784,7 @@ const MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION = '18.0.0';
32902
32784
  function compileDeclareClassMetadata(metadata) {
32903
32785
  const definitionMap = new DefinitionMap();
32904
32786
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
32905
- definitionMap.set('version', literal('19.2.1'));
32787
+ definitionMap.set('version', literal('19.2.3'));
32906
32788
  definitionMap.set('ngImport', importExpr(Identifiers.core));
32907
32789
  definitionMap.set('type', metadata.type);
32908
32790
  definitionMap.set('decorators', metadata.decorators);
@@ -32920,7 +32802,7 @@ function compileComponentDeclareClassMetadata(metadata, dependencies) {
32920
32802
  callbackReturnDefinitionMap.set('ctorParameters', metadata.ctorParameters ?? literal(null));
32921
32803
  callbackReturnDefinitionMap.set('propDecorators', metadata.propDecorators ?? literal(null));
32922
32804
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION));
32923
- definitionMap.set('version', literal('19.2.1'));
32805
+ definitionMap.set('version', literal('19.2.3'));
32924
32806
  definitionMap.set('ngImport', importExpr(Identifiers.core));
32925
32807
  definitionMap.set('type', metadata.type);
32926
32808
  definitionMap.set('resolveDeferredDeps', compileComponentMetadataAsyncResolver(dependencies));
@@ -33015,7 +32897,7 @@ function createDirectiveDefinitionMap(meta) {
33015
32897
  const definitionMap = new DefinitionMap();
33016
32898
  const minVersion = getMinimumVersionForPartialOutput(meta);
33017
32899
  definitionMap.set('minVersion', literal(minVersion));
33018
- definitionMap.set('version', literal('19.2.1'));
32900
+ definitionMap.set('version', literal('19.2.3'));
33019
32901
  // e.g. `type: MyDirective`
33020
32902
  definitionMap.set('type', meta.type.value);
33021
32903
  if (meta.isStandalone !== undefined) {
@@ -33116,9 +32998,6 @@ function compileQuery(query) {
33116
32998
  // Therefore we explicitly emit the field, and explicitly place it only when it's `false`.
33117
32999
  meta.set('emitDistinctChangesOnly', literal(false));
33118
33000
  }
33119
- else {
33120
- // The linker will assume that an absent `emitDistinctChangesOnly` flag is by default `true`.
33121
- }
33122
33001
  if (query.descendants) {
33123
33002
  meta.set('descendants', literal(true));
33124
33003
  }
@@ -33434,7 +33313,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
33434
33313
  function compileDeclareFactoryFunction(meta) {
33435
33314
  const definitionMap = new DefinitionMap();
33436
33315
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
33437
- definitionMap.set('version', literal('19.2.1'));
33316
+ definitionMap.set('version', literal('19.2.3'));
33438
33317
  definitionMap.set('ngImport', importExpr(Identifiers.core));
33439
33318
  definitionMap.set('type', meta.type.value);
33440
33319
  definitionMap.set('deps', compileDependencies(meta.deps));
@@ -33469,7 +33348,7 @@ function compileDeclareInjectableFromMetadata(meta) {
33469
33348
  function createInjectableDefinitionMap(meta) {
33470
33349
  const definitionMap = new DefinitionMap();
33471
33350
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
33472
- definitionMap.set('version', literal('19.2.1'));
33351
+ definitionMap.set('version', literal('19.2.3'));
33473
33352
  definitionMap.set('ngImport', importExpr(Identifiers.core));
33474
33353
  definitionMap.set('type', meta.type.value);
33475
33354
  // Only generate providedIn property if it has a non-null value
@@ -33520,7 +33399,7 @@ function compileDeclareInjectorFromMetadata(meta) {
33520
33399
  function createInjectorDefinitionMap(meta) {
33521
33400
  const definitionMap = new DefinitionMap();
33522
33401
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
33523
- definitionMap.set('version', literal('19.2.1'));
33402
+ definitionMap.set('version', literal('19.2.3'));
33524
33403
  definitionMap.set('ngImport', importExpr(Identifiers.core));
33525
33404
  definitionMap.set('type', meta.type.value);
33526
33405
  definitionMap.set('providers', meta.providers);
@@ -33553,7 +33432,7 @@ function createNgModuleDefinitionMap(meta) {
33553
33432
  throw new Error('Invalid path! Local compilation mode should not get into the partial compilation path');
33554
33433
  }
33555
33434
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
33556
- definitionMap.set('version', literal('19.2.1'));
33435
+ definitionMap.set('version', literal('19.2.3'));
33557
33436
  definitionMap.set('ngImport', importExpr(Identifiers.core));
33558
33437
  definitionMap.set('type', meta.type.value);
33559
33438
  // We only generate the keys in the metadata if the arrays contain values.
@@ -33604,7 +33483,7 @@ function compileDeclarePipeFromMetadata(meta) {
33604
33483
  function createPipeDefinitionMap(meta) {
33605
33484
  const definitionMap = new DefinitionMap();
33606
33485
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION));
33607
- definitionMap.set('version', literal('19.2.1'));
33486
+ definitionMap.set('version', literal('19.2.3'));
33608
33487
  definitionMap.set('ngImport', importExpr(Identifiers.core));
33609
33488
  // e.g. `type: MyPipe`
33610
33489
  definitionMap.set('type', meta.type.value);
@@ -33621,21 +33500,28 @@ function createPipeDefinitionMap(meta) {
33621
33500
  }
33622
33501
 
33623
33502
  //////////////////////////////////////
33624
- // This file only reexports content of the `src` folder. Keep it that way.
33625
- // This function call has a global side effects and publishes the compiler into global namespace for
33626
- // the late binding of the Compiler to the @angular/core for jit compilation.
33627
- publishFacade(_global);
33628
-
33503
+ // THIS FILE HAS GLOBAL SIDE EFFECT //
33504
+ // (see bottom of file) //
33505
+ //////////////////////////////////////
33629
33506
  /**
33630
33507
  * @module
33631
33508
  * @description
33632
- * Entry point for all public APIs of this package.
33509
+ * Entry point for all APIs of the compiler package.
33510
+ *
33511
+ * <div class="callout is-critical">
33512
+ * <header>Unstable APIs</header>
33513
+ * <p>
33514
+ * All compiler apis are currently considered experimental and private!
33515
+ * </p>
33516
+ * <p>
33517
+ * We expect the APIs in this package to keep on changing. Do not rely on them.
33518
+ * </p>
33519
+ * </div>
33633
33520
  */
33634
33521
  // This file only reexports content of the `src` folder. Keep it that way.
33635
-
33636
- // This file is not used to build this module. It is only used during editing
33637
-
33638
- // This file is not used to build this module. It is only used during editing
33522
+ // This function call has a global side effects and publishes the compiler into global namespace for
33523
+ // the late binding of the Compiler to the @angular/core for jit compilation.
33524
+ publishFacade(_global);
33639
33525
 
33640
33526
  export { AST, ASTWithName, ASTWithSource, AbsoluteSourceSpan, ArrayType, ArrowFunctionExpr, Attribute, Binary, BinaryOperator, BinaryOperatorExpr, BindingPipe, BindingType, Block, BlockParameter, BoundElementProperty, BuiltinType, BuiltinTypeName, CUSTOM_ELEMENTS_SCHEMA, Call, Chain, ChangeDetectionStrategy, CommaExpr, Comment, CompilerConfig, Conditional, ConditionalExpr, ConstantPool, CssSelector, DEFAULT_INTERPOLATION_CONFIG, DYNAMIC_TYPE, DeclareFunctionStmt, DeclareVarStmt, DomElementSchemaRegistry, DynamicImportExpr, EOF, Element, ElementSchemaRegistry, EmitterVisitorContext, EmptyExpr$1 as EmptyExpr, Expansion, ExpansionCase, Expression, ExpressionBinding, ExpressionStatement, ExpressionType, ExternalExpr, ExternalReference, FactoryTarget$1 as FactoryTarget, FunctionExpr, HtmlParser, HtmlTagDefinition, I18NHtmlParser, IfStmt, ImplicitReceiver, InstantiateExpr, Interpolation$1 as Interpolation, InterpolationConfig, InvokeFunctionExpr, JSDocComment, JitEvaluator, KeyedRead, KeyedWrite, LeadingComment, LetDeclaration, Lexer, LiteralArray, LiteralArrayExpr, LiteralExpr, LiteralMap, LiteralMapExpr, LiteralPrimitive, LocalizedString, MapType, MessageBundle, NONE_TYPE, NO_ERRORS_SCHEMA, NodeWithI18n, NonNullAssert, NotExpr, ParseError, ParseErrorLevel, ParseLocation, ParseSourceFile, ParseSourceSpan, ParseSpan, ParseTreeResult, ParsedEvent, ParsedEventType, ParsedProperty, ParsedPropertyType, ParsedVariable, Parser, ParserError, PrefixNot, PropertyRead, PropertyWrite, R3BoundTarget, Identifiers as R3Identifiers, R3NgModuleMetadataKind, R3SelectorScopeMode, R3TargetBinder, R3TemplateDependencyKind, ReadKeyExpr, ReadPropExpr, ReadVarExpr, RecursiveAstVisitor, RecursiveVisitor, ResourceLoader, ReturnStatement, STRING_TYPE, SafeCall, SafeKeyedRead, SafePropertyRead, SelectorContext, SelectorListContext, SelectorMatcher, Serializer, SplitInterpolation, Statement, StmtModifier, StringToken, StringTokenKind, TagContentType, TaggedTemplateLiteralExpr, TemplateBindingParseResult, TemplateLiteral, TemplateLiteralElement, TemplateLiteralElementExpr, TemplateLiteralExpr, Text, ThisReceiver, BlockNode as TmplAstBlockNode, BoundAttribute as TmplAstBoundAttribute, BoundDeferredTrigger as TmplAstBoundDeferredTrigger, BoundEvent as TmplAstBoundEvent, BoundText as TmplAstBoundText, Content as TmplAstContent, DeferredBlock as TmplAstDeferredBlock, DeferredBlockError as TmplAstDeferredBlockError, DeferredBlockLoading as TmplAstDeferredBlockLoading, DeferredBlockPlaceholder as TmplAstDeferredBlockPlaceholder, DeferredTrigger as TmplAstDeferredTrigger, Element$1 as TmplAstElement, ForLoopBlock as TmplAstForLoopBlock, ForLoopBlockEmpty as TmplAstForLoopBlockEmpty, HoverDeferredTrigger as TmplAstHoverDeferredTrigger, Icu$1 as TmplAstIcu, IdleDeferredTrigger as TmplAstIdleDeferredTrigger, IfBlock as TmplAstIfBlock, IfBlockBranch as TmplAstIfBlockBranch, ImmediateDeferredTrigger as TmplAstImmediateDeferredTrigger, InteractionDeferredTrigger as TmplAstInteractionDeferredTrigger, LetDeclaration$1 as TmplAstLetDeclaration, NeverDeferredTrigger as TmplAstNeverDeferredTrigger, RecursiveVisitor$1 as TmplAstRecursiveVisitor, Reference as TmplAstReference, SwitchBlock as TmplAstSwitchBlock, SwitchBlockCase as TmplAstSwitchBlockCase, Template as TmplAstTemplate, Text$3 as TmplAstText, TextAttribute as TmplAstTextAttribute, TimerDeferredTrigger as TmplAstTimerDeferredTrigger, UnknownBlock as TmplAstUnknownBlock, Variable as TmplAstVariable, ViewportDeferredTrigger as TmplAstViewportDeferredTrigger, Token, TokenType, TransplantedType, TreeError, Type, TypeModifier, TypeofExpr, TypeofExpression, Unary, UnaryOperator, UnaryOperatorExpr, VERSION, VariableBinding, Version, ViewEncapsulation, WrappedNodeExpr, WriteKeyExpr, WritePropExpr, WriteVarExpr, Xliff, Xliff2, Xmb, XmlParser, Xtb, compileClassDebugInfo, compileClassMetadata, compileComponentClassMetadata, compileComponentDeclareClassMetadata, compileComponentFromMetadata, compileDeclareClassMetadata, compileDeclareComponentFromMetadata, compileDeclareDirectiveFromMetadata, compileDeclareFactoryFunction, compileDeclareInjectableFromMetadata, compileDeclareInjectorFromMetadata, compileDeclareNgModuleFromMetadata, compileDeclarePipeFromMetadata, compileDeferResolverFunction, compileDirectiveFromMetadata, compileFactoryFunction, compileHmrInitializer, compileHmrUpdateCallback, compileInjectable, compileInjector, compileNgModule, compileOpaqueAsyncClassMetadata, compilePipeFromMetadata, computeMsgId, core, createCssSelectorFromNode, createInjectableType, createMayBeForwardRefExpression, devOnlyGuardedExpression, emitDistinctChangesOnlyDefaultValue, encapsulateStyle, findMatchingDirectivesAndPipes, getHtmlTagDefinition, getNsPrefix, getSafePropertyAccessString, identifierName, isNgContainer, isNgContent, isNgTemplate, jsDocComment, leadingComment, literal, literalMap, makeBindingParser, mergeNsAndName, output_ast as outputAst, parseHostBindings, parseTemplate, preserveWhitespacesDefault, publishFacade, r3JitTypeSourceSpan, sanitizeIdentifier, splitNsName, visitAll$1 as tmplAstVisitAll, verifyHostBindings, visitAll };
33641
33527
  //# sourceMappingURL=compiler.mjs.map