@angular/compiler 21.0.0 → 21.0.2

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 v21.0.0
2
+ * @license Angular v21.0.2
3
3
  * (c) 2010-2025 Google LLC. https://angular.dev/
4
4
  * License: MIT
5
5
  */
@@ -352,6 +352,7 @@ var SecurityContext;
352
352
  SecurityContext[SecurityContext["SCRIPT"] = 3] = "SCRIPT";
353
353
  SecurityContext[SecurityContext["URL"] = 4] = "URL";
354
354
  SecurityContext[SecurityContext["RESOURCE_URL"] = 5] = "RESOURCE_URL";
355
+ SecurityContext[SecurityContext["ATTRIBUTE_NO_BINDING"] = 6] = "ATTRIBUTE_NO_BINDING";
355
356
  })(SecurityContext || (SecurityContext = {}));
356
357
  var MissingTranslationStrategy;
357
358
  (function (MissingTranslationStrategy) {
@@ -3019,6 +3020,10 @@ class Identifiers {
3019
3020
  name: 'ɵɵsanitizeStyle',
3020
3021
  moduleName: CORE
3021
3022
  };
3023
+ static validateAttribute = {
3024
+ name: 'ɵɵvalidateAttribute',
3025
+ moduleName: CORE
3026
+ };
3022
3027
  static sanitizeResourceUrl = {
3023
3028
  name: 'ɵɵsanitizeResourceUrl',
3024
3029
  moduleName: CORE
@@ -3043,10 +3048,6 @@ class Identifiers {
3043
3048
  name: 'ɵɵtrustConstantResourceUrl',
3044
3049
  moduleName: CORE
3045
3050
  };
3046
- static validateIframeAttribute = {
3047
- name: 'ɵɵvalidateIframeAttribute',
3048
- moduleName: CORE
3049
- };
3050
3051
  static inputDecorator = {
3051
3052
  name: 'Input',
3052
3053
  moduleName: CORE
@@ -17042,18 +17043,15 @@ function SECURITY_SCHEMA() {
17042
17043
  _SECURITY_SCHEMA = {};
17043
17044
  registerContext(SecurityContext.HTML, ['iframe|srcdoc', '*|innerHTML', '*|outerHTML']);
17044
17045
  registerContext(SecurityContext.STYLE, ['*|style']);
17045
- registerContext(SecurityContext.URL, ['*|formAction', 'area|href', 'area|ping', 'audio|src', 'a|href', 'a|ping', 'blockquote|cite', 'body|background', 'del|cite', 'form|action', 'img|src', 'input|src', 'ins|cite', 'q|cite', 'source|src', 'track|src', 'video|poster', 'video|src']);
17046
+ registerContext(SecurityContext.URL, ['*|formAction', 'area|href', 'area|ping', 'audio|src', 'a|href', 'a|xlink:href', 'a|ping', 'blockquote|cite', 'body|background', 'del|cite', 'form|action', 'img|src', 'input|src', 'ins|cite', 'q|cite', 'source|src', 'track|src', 'video|poster', 'video|src', 'annotation|href', 'annotation|xlink:href', 'annotation-xml|href', 'annotation-xml|xlink:href', 'maction|href', 'maction|xlink:href', 'malignmark|href', 'malignmark|xlink:href', 'math|href', 'math|xlink:href', 'mroot|href', 'mroot|xlink:href', 'msqrt|href', 'msqrt|xlink:href', 'merror|href', 'merror|xlink:href', 'mfrac|href', 'mfrac|xlink:href', 'mglyph|href', 'mglyph|xlink:href', 'msub|href', 'msub|xlink:href', 'msup|href', 'msup|xlink:href', 'msubsup|href', 'msubsup|xlink:href', 'mmultiscripts|href', 'mmultiscripts|xlink:href', 'mprescripts|href', 'mprescripts|xlink:href', 'mi|href', 'mi|xlink:href', 'mn|href', 'mn|xlink:href', 'mo|href', 'mo|xlink:href', 'mpadded|href', 'mpadded|xlink:href', 'mphantom|href', 'mphantom|xlink:href', 'mrow|href', 'mrow|xlink:href', 'ms|href', 'ms|xlink:href', 'mspace|href', 'mspace|xlink:href', 'mstyle|href', 'mstyle|xlink:href', 'mtable|href', 'mtable|xlink:href', 'mtd|href', 'mtd|xlink:href', 'mtr|href', 'mtr|xlink:href', 'mtext|href', 'mtext|xlink:href', 'mover|href', 'mover|xlink:href', 'munder|href', 'munder|xlink:href', 'munderover|href', 'munderover|xlink:href', 'semantics|href', 'semantics|xlink:href', 'none|href', 'none|xlink:href']);
17046
17047
  registerContext(SecurityContext.RESOURCE_URL, ['applet|code', 'applet|codebase', 'base|href', 'embed|src', 'frame|src', 'head|profile', 'html|manifest', 'iframe|src', 'link|href', 'media|src', 'object|codebase', 'object|data', 'script|src']);
17048
+ registerContext(SecurityContext.ATTRIBUTE_NO_BINDING, ['animate|attributeName', 'set|attributeName', 'animateMotion|attributeName', 'animateTransform|attributeName', 'unknown|attributeName', 'iframe|sandbox', 'iframe|allow', 'iframe|allowFullscreen', 'iframe|referrerPolicy', 'iframe|csp', 'iframe|fetchPriority', 'unknown|sandbox', 'unknown|allow', 'unknown|allowFullscreen', 'unknown|referrerPolicy', 'unknown|csp', 'unknown|fetchPriority']);
17047
17049
  }
17048
17050
  return _SECURITY_SCHEMA;
17049
17051
  }
17050
17052
  function registerContext(ctx, specs) {
17051
17053
  for (const spec of specs) _SECURITY_SCHEMA[spec.toLowerCase()] = ctx;
17052
17054
  }
17053
- const IFRAME_SECURITY_SENSITIVE_ATTRS = new Set(['sandbox', 'allow', 'allowfullscreen', 'referrerpolicy', 'csp', 'fetchpriority']);
17054
- function isIframeSecuritySensitiveAttr(attrName) {
17055
- return IFRAME_SECURITY_SENSITIVE_ATTRS.has(attrName.toLowerCase());
17056
- }
17057
17055
 
17058
17056
  class ElementSchemaRegistry {}
17059
17057
 
@@ -17628,8 +17626,8 @@ class PlaceholderRegistry {
17628
17626
  }
17629
17627
 
17630
17628
  const _expParser = new Parser(new Lexer());
17631
- function createI18nMessageFactory(containerBlocks, retainEmptyTokens, preserveExpressionWhitespace) {
17632
- const visitor = new _I18nVisitor(_expParser, containerBlocks, retainEmptyTokens, preserveExpressionWhitespace);
17629
+ function createI18nMessageFactory(retainEmptyTokens, preserveExpressionWhitespace) {
17630
+ const visitor = new _I18nVisitor(_expParser, retainEmptyTokens, preserveExpressionWhitespace);
17633
17631
  return (nodes, meaning, description, customId, visitNodeFn) => visitor.toI18nMessage(nodes, meaning, description, customId, visitNodeFn);
17634
17632
  }
17635
17633
  function noopVisitNodeFn(_html, i18n) {
@@ -17637,12 +17635,10 @@ function noopVisitNodeFn(_html, i18n) {
17637
17635
  }
17638
17636
  class _I18nVisitor {
17639
17637
  _expressionParser;
17640
- _containerBlocks;
17641
17638
  _retainEmptyTokens;
17642
17639
  _preserveExpressionWhitespace;
17643
- constructor(_expressionParser, _containerBlocks, _retainEmptyTokens, _preserveExpressionWhitespace) {
17640
+ constructor(_expressionParser, _retainEmptyTokens, _preserveExpressionWhitespace) {
17644
17641
  this._expressionParser = _expressionParser;
17645
- this._containerBlocks = _containerBlocks;
17646
17642
  this._retainEmptyTokens = _retainEmptyTokens;
17647
17643
  this._preserveExpressionWhitespace = _preserveExpressionWhitespace;
17648
17644
  }
@@ -17705,7 +17701,7 @@ class _I18nVisitor {
17705
17701
  }
17706
17702
  visitBlock(block, context) {
17707
17703
  const children = visitAll(this, block.children, context);
17708
- if (this._containerBlocks.has(block.name)) {
17704
+ if (block.name === 'switch') {
17709
17705
  return new Container(children, block.sourceSpan);
17710
17706
  }
17711
17707
  const parameters = block.parameters.map(param => param.expression);
@@ -17856,39 +17852,6 @@ function extractPlaceholderName(input) {
17856
17852
  return input.split(_CUSTOM_PH_EXP)[2];
17857
17853
  }
17858
17854
 
17859
- const UNUSABLE_INTERPOLATION_REGEXPS = [/@/, /^\s*$/, /[<>]/, /^[{}]$/, /&(#|[a-z])/i, /^\/\//];
17860
- function assertInterpolationSymbols(identifier, value) {
17861
- if (value != null && !(Array.isArray(value) && value.length == 2)) {
17862
- throw new Error(`Expected '${identifier}' to be an array, [start, end].`);
17863
- } else if (value != null) {
17864
- const start = value[0];
17865
- const end = value[1];
17866
- UNUSABLE_INTERPOLATION_REGEXPS.forEach(regexp => {
17867
- if (regexp.test(start) || regexp.test(end)) {
17868
- throw new Error(`['${start}', '${end}'] contains unusable interpolation symbol.`);
17869
- }
17870
- });
17871
- }
17872
- }
17873
-
17874
- class InterpolationConfig {
17875
- start;
17876
- end;
17877
- static fromArray(markers) {
17878
- if (!markers) {
17879
- return DEFAULT_INTERPOLATION_CONFIG;
17880
- }
17881
- assertInterpolationSymbols('interpolation', markers);
17882
- return new InterpolationConfig(markers[0], markers[1]);
17883
- }
17884
- constructor(start, end) {
17885
- this.start = start;
17886
- this.end = end;
17887
- }
17888
- }
17889
- const DEFAULT_INTERPOLATION_CONFIG = new InterpolationConfig('{{', '}}');
17890
- const DEFAULT_CONTAINER_BLOCKS = new Set(['switch']);
17891
-
17892
17855
  const TRUSTED_TYPES_SINKS = new Set(['iframe|srcdoc', '*|innerhtml', '*|outerhtml', 'embed|src', 'object|codebase', 'object|data']);
17893
17856
  function isTrustedTypesSink(tagName, propName) {
17894
17857
  tagName = tagName.toLowerCase();
@@ -17911,15 +17874,13 @@ const setI18nRefs = originalNodeMap => {
17911
17874
  class I18nMetaVisitor {
17912
17875
  keepI18nAttrs;
17913
17876
  enableI18nLegacyMessageIdFormat;
17914
- containerBlocks;
17915
17877
  preserveSignificantWhitespace;
17916
17878
  retainEmptyTokens;
17917
17879
  hasI18nMeta = false;
17918
17880
  _errors = [];
17919
- constructor(keepI18nAttrs = false, enableI18nLegacyMessageIdFormat = false, containerBlocks = DEFAULT_CONTAINER_BLOCKS, preserveSignificantWhitespace = true, retainEmptyTokens = !preserveSignificantWhitespace) {
17881
+ constructor(keepI18nAttrs = false, enableI18nLegacyMessageIdFormat = false, preserveSignificantWhitespace = true, retainEmptyTokens = !preserveSignificantWhitespace) {
17920
17882
  this.keepI18nAttrs = keepI18nAttrs;
17921
17883
  this.enableI18nLegacyMessageIdFormat = enableI18nLegacyMessageIdFormat;
17922
- this.containerBlocks = containerBlocks;
17923
17884
  this.preserveSignificantWhitespace = preserveSignificantWhitespace;
17924
17885
  this.retainEmptyTokens = retainEmptyTokens;
17925
17886
  }
@@ -17929,7 +17890,7 @@ class I18nMetaVisitor {
17929
17890
  description,
17930
17891
  customId
17931
17892
  } = this._parseMetadata(meta);
17932
- const createI18nMessage = createI18nMessageFactory(this.containerBlocks, this.retainEmptyTokens, this.preserveSignificantWhitespace);
17893
+ const createI18nMessage = createI18nMessageFactory(this.retainEmptyTokens, this.preserveSignificantWhitespace);
17933
17894
  const message = createI18nMessage(nodes, meaning, description, customId, visitNodeFn);
17934
17895
  this._setMessageId(message, meta);
17935
17896
  this._setLegacyIds(message, meta);
@@ -20654,11 +20615,10 @@ function processLexicalScope(unit, ops, savedView) {
20654
20615
  }
20655
20616
  }
20656
20617
 
20657
- const sanitizerFns = new Map([[SecurityContext.HTML, Identifiers.sanitizeHtml], [SecurityContext.RESOURCE_URL, Identifiers.sanitizeResourceUrl], [SecurityContext.SCRIPT, Identifiers.sanitizeScript], [SecurityContext.STYLE, Identifiers.sanitizeStyle], [SecurityContext.URL, Identifiers.sanitizeUrl]]);
20618
+ const sanitizerFns = new Map([[SecurityContext.HTML, Identifiers.sanitizeHtml], [SecurityContext.RESOURCE_URL, Identifiers.sanitizeResourceUrl], [SecurityContext.SCRIPT, Identifiers.sanitizeScript], [SecurityContext.STYLE, Identifiers.sanitizeStyle], [SecurityContext.URL, Identifiers.sanitizeUrl], [SecurityContext.ATTRIBUTE_NO_BINDING, Identifiers.validateAttribute]]);
20658
20619
  const trustedValueFns = new Map([[SecurityContext.HTML, Identifiers.trustConstantHtml], [SecurityContext.RESOURCE_URL, Identifiers.trustConstantResourceUrl]]);
20659
20620
  function resolveSanitizers(job) {
20660
20621
  for (const unit of job.units) {
20661
- const elements = createOpXrefMap(unit);
20662
20622
  if (job.kind !== CompilationJobKind.Host) {
20663
20623
  for (const op of unit.create) {
20664
20624
  if (op.kind === OpKind.ExtractedAttribute) {
@@ -20673,35 +20633,17 @@ function resolveSanitizers(job) {
20673
20633
  case OpKind.Attribute:
20674
20634
  case OpKind.DomProperty:
20675
20635
  let sanitizerFn = null;
20676
- if (Array.isArray(op.securityContext) && op.securityContext.length === 2 && op.securityContext.indexOf(SecurityContext.URL) > -1 && op.securityContext.indexOf(SecurityContext.RESOURCE_URL) > -1) {
20636
+ if (Array.isArray(op.securityContext) && op.securityContext.length === 2 && op.securityContext.includes(SecurityContext.URL) && op.securityContext.includes(SecurityContext.RESOURCE_URL)) {
20677
20637
  sanitizerFn = Identifiers.sanitizeUrlOrResourceUrl;
20678
20638
  } else {
20679
20639
  sanitizerFn = sanitizerFns.get(getOnlySecurityContext(op.securityContext)) ?? null;
20680
20640
  }
20681
20641
  op.sanitizer = sanitizerFn !== null ? importExpr(sanitizerFn) : null;
20682
- if (op.sanitizer === null) {
20683
- let isIframe = false;
20684
- if (job.kind === CompilationJobKind.Host || op.kind === OpKind.DomProperty) {
20685
- isIframe = true;
20686
- } else {
20687
- const ownerOp = elements.get(op.target);
20688
- if (ownerOp === undefined || !isElementOrContainerOp(ownerOp)) {
20689
- throw Error('Property should have an element-like owner');
20690
- }
20691
- isIframe = isIframeElement(ownerOp);
20692
- }
20693
- if (isIframe && isIframeSecuritySensitiveAttr(op.name)) {
20694
- op.sanitizer = importExpr(Identifiers.validateIframeAttribute);
20695
- }
20696
- }
20697
20642
  break;
20698
20643
  }
20699
20644
  }
20700
20645
  }
20701
20646
  }
20702
- function isIframeElement(op) {
20703
- return op.kind === OpKind.ElementStart && op.tag?.toLowerCase() === 'iframe';
20704
- }
20705
20647
  function getOnlySecurityContext(securityContext) {
20706
20648
  if (Array.isArray(securityContext)) {
20707
20649
  if (securityContext.length > 1) {
@@ -24597,7 +24539,7 @@ function parseTemplate(template, templateUrl, options = {}) {
24597
24539
  }
24598
24540
  let rootNodes = parseResult.rootNodes;
24599
24541
  const retainEmptyTokens = !(options.preserveSignificantWhitespace ?? true);
24600
- const i18nMetaVisitor = new I18nMetaVisitor(!preserveWhitespaces, enableI18nLegacyMessageIdFormat, undefined, options.preserveSignificantWhitespace, retainEmptyTokens);
24542
+ const i18nMetaVisitor = new I18nMetaVisitor(!preserveWhitespaces, enableI18nLegacyMessageIdFormat, options.preserveSignificantWhitespace, retainEmptyTokens);
24601
24543
  const i18nMetaResult = i18nMetaVisitor.visitAllWithErrors(rootNodes);
24602
24544
  if (!options.alwaysAttemptHtmlToR3AstConversion && i18nMetaResult.errors && i18nMetaResult.errors.length > 0) {
24603
24545
  const parsedTemplate = {
@@ -24617,7 +24559,7 @@ function parseTemplate(template, templateUrl, options = {}) {
24617
24559
  if (!preserveWhitespaces) {
24618
24560
  rootNodes = visitAll(new WhitespaceVisitor(true, undefined, false), rootNodes);
24619
24561
  if (i18nMetaVisitor.hasI18nMeta) {
24620
- rootNodes = visitAll(new I18nMetaVisitor(false, undefined, undefined, true, retainEmptyTokens), rootNodes);
24562
+ rootNodes = visitAll(new I18nMetaVisitor(false, undefined, true, retainEmptyTokens), rootNodes);
24621
24563
  }
24622
24564
  }
24623
24565
  const {
@@ -26691,7 +26633,7 @@ class _Visitor {
26691
26633
  this._errors = [];
26692
26634
  this._messages = [];
26693
26635
  this._inImplicitNode = false;
26694
- this._createI18nMessage = createI18nMessageFactory(DEFAULT_CONTAINER_BLOCKS, !this._preserveSignificantWhitespace, this._preserveSignificantWhitespace);
26636
+ this._createI18nMessage = createI18nMessageFactory(!this._preserveSignificantWhitespace, this._preserveSignificantWhitespace);
26695
26637
  }
26696
26638
  _visitElementLike(node, context) {
26697
26639
  this._mayBeAddBlockChildren(node);
@@ -28081,7 +28023,7 @@ const MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION = '18.0.0';
28081
28023
  function compileDeclareClassMetadata(metadata) {
28082
28024
  const definitionMap = new DefinitionMap();
28083
28025
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
28084
- definitionMap.set('version', literal('21.0.0'));
28026
+ definitionMap.set('version', literal('21.0.2'));
28085
28027
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28086
28028
  definitionMap.set('type', metadata.type);
28087
28029
  definitionMap.set('decorators', metadata.decorators);
@@ -28099,7 +28041,7 @@ function compileComponentDeclareClassMetadata(metadata, dependencies) {
28099
28041
  callbackReturnDefinitionMap.set('ctorParameters', metadata.ctorParameters ?? literal(null));
28100
28042
  callbackReturnDefinitionMap.set('propDecorators', metadata.propDecorators ?? literal(null));
28101
28043
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION));
28102
- definitionMap.set('version', literal('21.0.0'));
28044
+ definitionMap.set('version', literal('21.0.2'));
28103
28045
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28104
28046
  definitionMap.set('type', metadata.type);
28105
28047
  definitionMap.set('resolveDeferredDeps', compileComponentMetadataAsyncResolver(dependencies));
@@ -28172,7 +28114,7 @@ function createDirectiveDefinitionMap(meta) {
28172
28114
  const definitionMap = new DefinitionMap();
28173
28115
  const minVersion = getMinimumVersionForPartialOutput(meta);
28174
28116
  definitionMap.set('minVersion', literal(minVersion));
28175
- definitionMap.set('version', literal('21.0.0'));
28117
+ definitionMap.set('version', literal('21.0.2'));
28176
28118
  definitionMap.set('type', meta.type.value);
28177
28119
  if (meta.isStandalone !== undefined) {
28178
28120
  definitionMap.set('isStandalone', literal(meta.isStandalone));
@@ -28504,7 +28446,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
28504
28446
  function compileDeclareFactoryFunction(meta) {
28505
28447
  const definitionMap = new DefinitionMap();
28506
28448
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
28507
- definitionMap.set('version', literal('21.0.0'));
28449
+ definitionMap.set('version', literal('21.0.2'));
28508
28450
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28509
28451
  definitionMap.set('type', meta.type.value);
28510
28452
  definitionMap.set('deps', compileDependencies(meta.deps));
@@ -28530,7 +28472,7 @@ function compileDeclareInjectableFromMetadata(meta) {
28530
28472
  function createInjectableDefinitionMap(meta) {
28531
28473
  const definitionMap = new DefinitionMap();
28532
28474
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
28533
- definitionMap.set('version', literal('21.0.0'));
28475
+ definitionMap.set('version', literal('21.0.2'));
28534
28476
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28535
28477
  definitionMap.set('type', meta.type.value);
28536
28478
  if (meta.providedIn !== undefined) {
@@ -28571,7 +28513,7 @@ function compileDeclareInjectorFromMetadata(meta) {
28571
28513
  function createInjectorDefinitionMap(meta) {
28572
28514
  const definitionMap = new DefinitionMap();
28573
28515
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
28574
- definitionMap.set('version', literal('21.0.0'));
28516
+ definitionMap.set('version', literal('21.0.2'));
28575
28517
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28576
28518
  definitionMap.set('type', meta.type.value);
28577
28519
  definitionMap.set('providers', meta.providers);
@@ -28598,7 +28540,7 @@ function createNgModuleDefinitionMap(meta) {
28598
28540
  throw new Error('Invalid path! Local compilation mode should not get into the partial compilation path');
28599
28541
  }
28600
28542
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
28601
- definitionMap.set('version', literal('21.0.0'));
28543
+ definitionMap.set('version', literal('21.0.2'));
28602
28544
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28603
28545
  definitionMap.set('type', meta.type.value);
28604
28546
  if (meta.bootstrap.length > 0) {
@@ -28636,7 +28578,7 @@ function compileDeclarePipeFromMetadata(meta) {
28636
28578
  function createPipeDefinitionMap(meta) {
28637
28579
  const definitionMap = new DefinitionMap();
28638
28580
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION));
28639
- definitionMap.set('version', literal('21.0.0'));
28581
+ definitionMap.set('version', literal('21.0.2'));
28640
28582
  definitionMap.set('ngImport', importExpr(Identifiers.core));
28641
28583
  definitionMap.set('type', meta.type.value);
28642
28584
  if (meta.isStandalone !== undefined) {
@@ -28710,9 +28652,9 @@ function compileHmrUpdateCallback(definitions, constantStatements, meta) {
28710
28652
  return new DeclareFunctionStmt(`${meta.className}_UpdateMetadata`, params, body, null, StmtModifier.Final);
28711
28653
  }
28712
28654
 
28713
- const VERSION = new Version('21.0.0');
28655
+ const VERSION = new Version('21.0.2');
28714
28656
 
28715
28657
  publishFacade(_global);
28716
28658
 
28717
- export { AST, ASTWithName, ASTWithSource, AbsoluteSourceSpan, ArrayType, ArrowFunctionExpr, Attribute, Binary, BinaryOperator, BinaryOperatorExpr, BindingPipe, BindingPipeType, BindingType, Block, BlockParameter, BoundElementProperty, BuiltinType, BuiltinTypeName, CUSTOM_ELEMENTS_SCHEMA, Call, Chain, ChangeDetectionStrategy, CombinedRecursiveAstVisitor, CommaExpr, Comment, CompilerConfig, CompilerFacadeImpl, Component, Conditional, ConditionalExpr, ConstantPool, CssSelector, DEFAULT_INTERPOLATION_CONFIG, DYNAMIC_TYPE, DeclareFunctionStmt, DeclareVarStmt, Directive, DomElementSchemaRegistry, DynamicImportExpr, EOF, Element, ElementSchemaRegistry, EmitterVisitorContext, EmptyExpr$1 as EmptyExpr, Expansion, ExpansionCase, Expression, ExpressionBinding, ExpressionStatement, ExpressionType, ExternalExpr, ExternalReference, FactoryTarget, FunctionExpr, HtmlParser, HtmlTagDefinition, I18NHtmlParser, IfStmt, ImplicitReceiver, InstantiateExpr, Interpolation$1 as Interpolation, InterpolationConfig, InvokeFunctionExpr, JSDocComment, JitEvaluator, KeyedRead, LeadingComment, LetDeclaration, Lexer, LiteralArray, LiteralArrayExpr, LiteralExpr, LiteralMap, LiteralMapExpr, LiteralPrimitive, LocalizedString, MapType, MessageBundle, NONE_TYPE, NO_ERRORS_SCHEMA, NodeWithI18n, NonNullAssert, NotExpr, ParenthesizedExpr, ParenthesizedExpression, ParseError, ParseErrorLevel, ParseLocation, ParseSourceFile, ParseSourceSpan, ParseSpan, ParseTreeResult, ParsedEvent, ParsedEventType, ParsedProperty, ParsedPropertyType, ParsedVariable, Parser, PrefixNot, PropertyRead, Identifiers as R3Identifiers, R3NgModuleMetadataKind, R3SelectorScopeMode, R3TargetBinder, R3TemplateDependencyKind, ReadKeyExpr, ReadPropExpr, ReadVarExpr, RecursiveAstVisitor, RecursiveVisitor, RegularExpressionLiteral, RegularExpressionLiteralExpr, ResourceLoader, ReturnStatement, SCHEMA, SECURITY_SCHEMA, STRING_TYPE, SafeCall, SafeKeyedRead, SafePropertyRead, SelectorContext, SelectorListContext, SelectorMatcher, SelectorlessMatcher, Serializer, SplitInterpolation, Statement, StmtModifier, StringToken, StringTokenKind, TagContentType, TaggedTemplateLiteral, TaggedTemplateLiteralExpr, TemplateBindingParseResult, TemplateLiteral, TemplateLiteralElement, TemplateLiteralElementExpr, TemplateLiteralExpr, Text, ThisReceiver, BlockNode as TmplAstBlockNode, BoundAttribute as TmplAstBoundAttribute, BoundDeferredTrigger as TmplAstBoundDeferredTrigger, BoundEvent as TmplAstBoundEvent, BoundText as TmplAstBoundText, Component$1 as TmplAstComponent, Content as TmplAstContent, DeferredBlock as TmplAstDeferredBlock, DeferredBlockError as TmplAstDeferredBlockError, DeferredBlockLoading as TmplAstDeferredBlockLoading, DeferredBlockPlaceholder as TmplAstDeferredBlockPlaceholder, DeferredTrigger as TmplAstDeferredTrigger, Directive$1 as TmplAstDirective, Element$1 as TmplAstElement, ForLoopBlock as TmplAstForLoopBlock, ForLoopBlockEmpty as TmplAstForLoopBlockEmpty, HostElement as TmplAstHostElement, 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$1 as ViewEncapsulation, VoidExpr, VoidExpression, WrappedNodeExpr, Xliff, Xliff2, Xmb, XmlParser, Xtb, _ATTR_TO_PROP, 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, escapeRegExp, findMatchingDirectivesAndPipes, getHtmlTagDefinition, getNsPrefix, getSafePropertyAccessString, identifierName, isNgContainer, isNgContent, isNgTemplate, jsDocComment, leadingComment, literal, literalMap, makeBindingParser, mergeNsAndName, output_ast as outputAst, parseHostBindings, parseTemplate, preserveWhitespacesDefault, publishFacade, r3JitTypeSourceSpan, sanitizeIdentifier, setEnableTemplateSourceLocations, splitNsName, visitAll$1 as tmplAstVisitAll, verifyHostBindings, visitAll };
28659
+ export { AST, ASTWithName, ASTWithSource, AbsoluteSourceSpan, ArrayType, ArrowFunctionExpr, Attribute, Binary, BinaryOperator, BinaryOperatorExpr, BindingPipe, BindingPipeType, BindingType, Block, BlockParameter, BoundElementProperty, BuiltinType, BuiltinTypeName, CUSTOM_ELEMENTS_SCHEMA, Call, Chain, ChangeDetectionStrategy, CombinedRecursiveAstVisitor, CommaExpr, Comment, CompilerConfig, CompilerFacadeImpl, Component, Conditional, ConditionalExpr, ConstantPool, CssSelector, DYNAMIC_TYPE, DeclareFunctionStmt, DeclareVarStmt, Directive, DomElementSchemaRegistry, DynamicImportExpr, EOF, Element, ElementSchemaRegistry, EmitterVisitorContext, EmptyExpr$1 as EmptyExpr, Expansion, ExpansionCase, Expression, ExpressionBinding, ExpressionStatement, ExpressionType, ExternalExpr, ExternalReference, FactoryTarget, FunctionExpr, HtmlParser, HtmlTagDefinition, I18NHtmlParser, IfStmt, ImplicitReceiver, InstantiateExpr, Interpolation$1 as Interpolation, InvokeFunctionExpr, JSDocComment, JitEvaluator, KeyedRead, LeadingComment, LetDeclaration, Lexer, LiteralArray, LiteralArrayExpr, LiteralExpr, LiteralMap, LiteralMapExpr, LiteralPrimitive, LocalizedString, MapType, MessageBundle, NONE_TYPE, NO_ERRORS_SCHEMA, NodeWithI18n, NonNullAssert, NotExpr, ParenthesizedExpr, ParenthesizedExpression, ParseError, ParseErrorLevel, ParseLocation, ParseSourceFile, ParseSourceSpan, ParseSpan, ParseTreeResult, ParsedEvent, ParsedEventType, ParsedProperty, ParsedPropertyType, ParsedVariable, Parser, PrefixNot, PropertyRead, Identifiers as R3Identifiers, R3NgModuleMetadataKind, R3SelectorScopeMode, R3TargetBinder, R3TemplateDependencyKind, ReadKeyExpr, ReadPropExpr, ReadVarExpr, RecursiveAstVisitor, RecursiveVisitor, RegularExpressionLiteral, RegularExpressionLiteralExpr, ResourceLoader, ReturnStatement, SCHEMA, SECURITY_SCHEMA, STRING_TYPE, SafeCall, SafeKeyedRead, SafePropertyRead, SelectorContext, SelectorListContext, SelectorMatcher, SelectorlessMatcher, Serializer, SplitInterpolation, Statement, StmtModifier, StringToken, StringTokenKind, TagContentType, TaggedTemplateLiteral, TaggedTemplateLiteralExpr, TemplateBindingParseResult, TemplateLiteral, TemplateLiteralElement, TemplateLiteralElementExpr, TemplateLiteralExpr, Text, ThisReceiver, BlockNode as TmplAstBlockNode, BoundAttribute as TmplAstBoundAttribute, BoundDeferredTrigger as TmplAstBoundDeferredTrigger, BoundEvent as TmplAstBoundEvent, BoundText as TmplAstBoundText, Component$1 as TmplAstComponent, Content as TmplAstContent, DeferredBlock as TmplAstDeferredBlock, DeferredBlockError as TmplAstDeferredBlockError, DeferredBlockLoading as TmplAstDeferredBlockLoading, DeferredBlockPlaceholder as TmplAstDeferredBlockPlaceholder, DeferredTrigger as TmplAstDeferredTrigger, Directive$1 as TmplAstDirective, Element$1 as TmplAstElement, ForLoopBlock as TmplAstForLoopBlock, ForLoopBlockEmpty as TmplAstForLoopBlockEmpty, HostElement as TmplAstHostElement, 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$1 as ViewEncapsulation, VoidExpr, VoidExpression, WrappedNodeExpr, Xliff, Xliff2, Xmb, XmlParser, Xtb, _ATTR_TO_PROP, 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, escapeRegExp, findMatchingDirectivesAndPipes, getHtmlTagDefinition, getNsPrefix, getSafePropertyAccessString, identifierName, isNgContainer, isNgContent, isNgTemplate, jsDocComment, leadingComment, literal, literalMap, makeBindingParser, mergeNsAndName, output_ast as outputAst, parseHostBindings, parseTemplate, preserveWhitespacesDefault, publishFacade, r3JitTypeSourceSpan, sanitizeIdentifier, setEnableTemplateSourceLocations, splitNsName, visitAll$1 as tmplAstVisitAll, verifyHostBindings, visitAll };
28718
28660
  //# sourceMappingURL=compiler.mjs.map