@angular/compiler 13.2.0 → 14.0.0-next.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.
Files changed (44) hide show
  1. package/esm2020/src/compiler.mjs +1 -2
  2. package/esm2020/src/compiler_facade_interface.mjs +1 -1
  3. package/esm2020/src/compiler_util/expression_converter.mjs +38 -44
  4. package/esm2020/src/expression_parser/ast.mjs +1 -35
  5. package/esm2020/src/expression_parser/parser.mjs +36 -36
  6. package/esm2020/src/jit_compiler_facade.mjs +4 -1
  7. package/esm2020/src/output/output_ast.mjs +1 -1
  8. package/esm2020/src/render3/partial/api.mjs +1 -1
  9. package/esm2020/src/render3/partial/class_metadata.mjs +1 -1
  10. package/esm2020/src/render3/partial/directive.mjs +1 -1
  11. package/esm2020/src/render3/partial/factory.mjs +1 -1
  12. package/esm2020/src/render3/partial/injectable.mjs +1 -1
  13. package/esm2020/src/render3/partial/injector.mjs +1 -1
  14. package/esm2020/src/render3/partial/ng_module.mjs +1 -1
  15. package/esm2020/src/render3/partial/pipe.mjs +1 -1
  16. package/esm2020/src/render3/r3_pipe_compiler.mjs +1 -1
  17. package/esm2020/src/render3/r3_template_transform.mjs +4 -4
  18. package/esm2020/src/render3/view/api.mjs +1 -1
  19. package/esm2020/src/render3/view/compiler.mjs +2 -2
  20. package/esm2020/src/render3/view/i18n/get_msg_utils.mjs +2 -5
  21. package/esm2020/src/render3/view/i18n/meta.mjs +11 -6
  22. package/esm2020/src/render3/view/template.mjs +3 -3
  23. package/esm2020/src/template_parser/binding_parser.mjs +11 -11
  24. package/esm2020/src/version.mjs +1 -1
  25. package/fesm2015/compiler.mjs +472 -598
  26. package/fesm2015/compiler.mjs.map +1 -1
  27. package/fesm2015/testing.mjs +1 -1
  28. package/fesm2020/compiler.mjs +470 -596
  29. package/fesm2020/compiler.mjs.map +1 -1
  30. package/fesm2020/testing.mjs +1 -1
  31. package/package.json +1 -1
  32. package/src/compiler.d.ts +0 -1
  33. package/src/compiler_facade_interface.d.ts +4 -0
  34. package/src/compiler_util/expression_converter.d.ts +3 -4
  35. package/src/expression_parser/ast.d.ts +0 -25
  36. package/src/expression_parser/parser.d.ts +19 -4
  37. package/src/output/output_ast.d.ts +2 -1
  38. package/src/render3/partial/api.d.ts +10 -0
  39. package/src/render3/r3_pipe_compiler.d.ts +4 -0
  40. package/src/render3/view/api.d.ts +4 -0
  41. package/src/render3/view/i18n/meta.d.ts +1 -1
  42. package/src/template_parser/binding_parser.d.ts +1 -1
  43. package/esm2020/src/identifiers.mjs +0 -92
  44. package/src/identifiers.d.ts +0 -44
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v13.2.0
2
+ * @license Angular v14.0.0-next.2
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -2733,206 +2733,206 @@ function isLongStringLiteral(expr) {
2733
2733
  * Use of this source code is governed by an MIT-style license that can be
2734
2734
  * found in the LICENSE file at https://angular.io/license
2735
2735
  */
2736
- const CORE$1 = '@angular/core';
2737
- class Identifiers$1 {
2736
+ const CORE = '@angular/core';
2737
+ class Identifiers {
2738
2738
  }
2739
2739
  /* Methods */
2740
- Identifiers$1.NEW_METHOD = 'factory';
2741
- Identifiers$1.TRANSFORM_METHOD = 'transform';
2742
- Identifiers$1.PATCH_DEPS = 'patchedDeps';
2743
- Identifiers$1.core = { name: null, moduleName: CORE$1 };
2740
+ Identifiers.NEW_METHOD = 'factory';
2741
+ Identifiers.TRANSFORM_METHOD = 'transform';
2742
+ Identifiers.PATCH_DEPS = 'patchedDeps';
2743
+ Identifiers.core = { name: null, moduleName: CORE };
2744
2744
  /* Instructions */
2745
- Identifiers$1.namespaceHTML = { name: 'ɵɵnamespaceHTML', moduleName: CORE$1 };
2746
- Identifiers$1.namespaceMathML = { name: 'ɵɵnamespaceMathML', moduleName: CORE$1 };
2747
- Identifiers$1.namespaceSVG = { name: 'ɵɵnamespaceSVG', moduleName: CORE$1 };
2748
- Identifiers$1.element = { name: 'ɵɵelement', moduleName: CORE$1 };
2749
- Identifiers$1.elementStart = { name: 'ɵɵelementStart', moduleName: CORE$1 };
2750
- Identifiers$1.elementEnd = { name: 'ɵɵelementEnd', moduleName: CORE$1 };
2751
- Identifiers$1.advance = { name: 'ɵɵadvance', moduleName: CORE$1 };
2752
- Identifiers$1.syntheticHostProperty = { name: 'ɵɵsyntheticHostProperty', moduleName: CORE$1 };
2753
- Identifiers$1.syntheticHostListener = { name: 'ɵɵsyntheticHostListener', moduleName: CORE$1 };
2754
- Identifiers$1.attribute = { name: 'ɵɵattribute', moduleName: CORE$1 };
2755
- Identifiers$1.attributeInterpolate1 = { name: 'ɵɵattributeInterpolate1', moduleName: CORE$1 };
2756
- Identifiers$1.attributeInterpolate2 = { name: 'ɵɵattributeInterpolate2', moduleName: CORE$1 };
2757
- Identifiers$1.attributeInterpolate3 = { name: 'ɵɵattributeInterpolate3', moduleName: CORE$1 };
2758
- Identifiers$1.attributeInterpolate4 = { name: 'ɵɵattributeInterpolate4', moduleName: CORE$1 };
2759
- Identifiers$1.attributeInterpolate5 = { name: 'ɵɵattributeInterpolate5', moduleName: CORE$1 };
2760
- Identifiers$1.attributeInterpolate6 = { name: 'ɵɵattributeInterpolate6', moduleName: CORE$1 };
2761
- Identifiers$1.attributeInterpolate7 = { name: 'ɵɵattributeInterpolate7', moduleName: CORE$1 };
2762
- Identifiers$1.attributeInterpolate8 = { name: 'ɵɵattributeInterpolate8', moduleName: CORE$1 };
2763
- Identifiers$1.attributeInterpolateV = { name: 'ɵɵattributeInterpolateV', moduleName: CORE$1 };
2764
- Identifiers$1.classProp = { name: 'ɵɵclassProp', moduleName: CORE$1 };
2765
- Identifiers$1.elementContainerStart = { name: 'ɵɵelementContainerStart', moduleName: CORE$1 };
2766
- Identifiers$1.elementContainerEnd = { name: 'ɵɵelementContainerEnd', moduleName: CORE$1 };
2767
- Identifiers$1.elementContainer = { name: 'ɵɵelementContainer', moduleName: CORE$1 };
2768
- Identifiers$1.styleMap = { name: 'ɵɵstyleMap', moduleName: CORE$1 };
2769
- Identifiers$1.styleMapInterpolate1 = { name: 'ɵɵstyleMapInterpolate1', moduleName: CORE$1 };
2770
- Identifiers$1.styleMapInterpolate2 = { name: 'ɵɵstyleMapInterpolate2', moduleName: CORE$1 };
2771
- Identifiers$1.styleMapInterpolate3 = { name: 'ɵɵstyleMapInterpolate3', moduleName: CORE$1 };
2772
- Identifiers$1.styleMapInterpolate4 = { name: 'ɵɵstyleMapInterpolate4', moduleName: CORE$1 };
2773
- Identifiers$1.styleMapInterpolate5 = { name: 'ɵɵstyleMapInterpolate5', moduleName: CORE$1 };
2774
- Identifiers$1.styleMapInterpolate6 = { name: 'ɵɵstyleMapInterpolate6', moduleName: CORE$1 };
2775
- Identifiers$1.styleMapInterpolate7 = { name: 'ɵɵstyleMapInterpolate7', moduleName: CORE$1 };
2776
- Identifiers$1.styleMapInterpolate8 = { name: 'ɵɵstyleMapInterpolate8', moduleName: CORE$1 };
2777
- Identifiers$1.styleMapInterpolateV = { name: 'ɵɵstyleMapInterpolateV', moduleName: CORE$1 };
2778
- Identifiers$1.classMap = { name: 'ɵɵclassMap', moduleName: CORE$1 };
2779
- Identifiers$1.classMapInterpolate1 = { name: 'ɵɵclassMapInterpolate1', moduleName: CORE$1 };
2780
- Identifiers$1.classMapInterpolate2 = { name: 'ɵɵclassMapInterpolate2', moduleName: CORE$1 };
2781
- Identifiers$1.classMapInterpolate3 = { name: 'ɵɵclassMapInterpolate3', moduleName: CORE$1 };
2782
- Identifiers$1.classMapInterpolate4 = { name: 'ɵɵclassMapInterpolate4', moduleName: CORE$1 };
2783
- Identifiers$1.classMapInterpolate5 = { name: 'ɵɵclassMapInterpolate5', moduleName: CORE$1 };
2784
- Identifiers$1.classMapInterpolate6 = { name: 'ɵɵclassMapInterpolate6', moduleName: CORE$1 };
2785
- Identifiers$1.classMapInterpolate7 = { name: 'ɵɵclassMapInterpolate7', moduleName: CORE$1 };
2786
- Identifiers$1.classMapInterpolate8 = { name: 'ɵɵclassMapInterpolate8', moduleName: CORE$1 };
2787
- Identifiers$1.classMapInterpolateV = { name: 'ɵɵclassMapInterpolateV', moduleName: CORE$1 };
2788
- Identifiers$1.styleProp = { name: 'ɵɵstyleProp', moduleName: CORE$1 };
2789
- Identifiers$1.stylePropInterpolate1 = { name: 'ɵɵstylePropInterpolate1', moduleName: CORE$1 };
2790
- Identifiers$1.stylePropInterpolate2 = { name: 'ɵɵstylePropInterpolate2', moduleName: CORE$1 };
2791
- Identifiers$1.stylePropInterpolate3 = { name: 'ɵɵstylePropInterpolate3', moduleName: CORE$1 };
2792
- Identifiers$1.stylePropInterpolate4 = { name: 'ɵɵstylePropInterpolate4', moduleName: CORE$1 };
2793
- Identifiers$1.stylePropInterpolate5 = { name: 'ɵɵstylePropInterpolate5', moduleName: CORE$1 };
2794
- Identifiers$1.stylePropInterpolate6 = { name: 'ɵɵstylePropInterpolate6', moduleName: CORE$1 };
2795
- Identifiers$1.stylePropInterpolate7 = { name: 'ɵɵstylePropInterpolate7', moduleName: CORE$1 };
2796
- Identifiers$1.stylePropInterpolate8 = { name: 'ɵɵstylePropInterpolate8', moduleName: CORE$1 };
2797
- Identifiers$1.stylePropInterpolateV = { name: 'ɵɵstylePropInterpolateV', moduleName: CORE$1 };
2798
- Identifiers$1.nextContext = { name: 'ɵɵnextContext', moduleName: CORE$1 };
2799
- Identifiers$1.templateCreate = { name: 'ɵɵtemplate', moduleName: CORE$1 };
2800
- Identifiers$1.text = { name: 'ɵɵtext', moduleName: CORE$1 };
2801
- Identifiers$1.enableBindings = { name: 'ɵɵenableBindings', moduleName: CORE$1 };
2802
- Identifiers$1.disableBindings = { name: 'ɵɵdisableBindings', moduleName: CORE$1 };
2803
- Identifiers$1.getCurrentView = { name: 'ɵɵgetCurrentView', moduleName: CORE$1 };
2804
- Identifiers$1.textInterpolate = { name: 'ɵɵtextInterpolate', moduleName: CORE$1 };
2805
- Identifiers$1.textInterpolate1 = { name: 'ɵɵtextInterpolate1', moduleName: CORE$1 };
2806
- Identifiers$1.textInterpolate2 = { name: 'ɵɵtextInterpolate2', moduleName: CORE$1 };
2807
- Identifiers$1.textInterpolate3 = { name: 'ɵɵtextInterpolate3', moduleName: CORE$1 };
2808
- Identifiers$1.textInterpolate4 = { name: 'ɵɵtextInterpolate4', moduleName: CORE$1 };
2809
- Identifiers$1.textInterpolate5 = { name: 'ɵɵtextInterpolate5', moduleName: CORE$1 };
2810
- Identifiers$1.textInterpolate6 = { name: 'ɵɵtextInterpolate6', moduleName: CORE$1 };
2811
- Identifiers$1.textInterpolate7 = { name: 'ɵɵtextInterpolate7', moduleName: CORE$1 };
2812
- Identifiers$1.textInterpolate8 = { name: 'ɵɵtextInterpolate8', moduleName: CORE$1 };
2813
- Identifiers$1.textInterpolateV = { name: 'ɵɵtextInterpolateV', moduleName: CORE$1 };
2814
- Identifiers$1.restoreView = { name: 'ɵɵrestoreView', moduleName: CORE$1 };
2815
- Identifiers$1.pureFunction0 = { name: 'ɵɵpureFunction0', moduleName: CORE$1 };
2816
- Identifiers$1.pureFunction1 = { name: 'ɵɵpureFunction1', moduleName: CORE$1 };
2817
- Identifiers$1.pureFunction2 = { name: 'ɵɵpureFunction2', moduleName: CORE$1 };
2818
- Identifiers$1.pureFunction3 = { name: 'ɵɵpureFunction3', moduleName: CORE$1 };
2819
- Identifiers$1.pureFunction4 = { name: 'ɵɵpureFunction4', moduleName: CORE$1 };
2820
- Identifiers$1.pureFunction5 = { name: 'ɵɵpureFunction5', moduleName: CORE$1 };
2821
- Identifiers$1.pureFunction6 = { name: 'ɵɵpureFunction6', moduleName: CORE$1 };
2822
- Identifiers$1.pureFunction7 = { name: 'ɵɵpureFunction7', moduleName: CORE$1 };
2823
- Identifiers$1.pureFunction8 = { name: 'ɵɵpureFunction8', moduleName: CORE$1 };
2824
- Identifiers$1.pureFunctionV = { name: 'ɵɵpureFunctionV', moduleName: CORE$1 };
2825
- Identifiers$1.pipeBind1 = { name: 'ɵɵpipeBind1', moduleName: CORE$1 };
2826
- Identifiers$1.pipeBind2 = { name: 'ɵɵpipeBind2', moduleName: CORE$1 };
2827
- Identifiers$1.pipeBind3 = { name: 'ɵɵpipeBind3', moduleName: CORE$1 };
2828
- Identifiers$1.pipeBind4 = { name: 'ɵɵpipeBind4', moduleName: CORE$1 };
2829
- Identifiers$1.pipeBindV = { name: 'ɵɵpipeBindV', moduleName: CORE$1 };
2830
- Identifiers$1.hostProperty = { name: 'ɵɵhostProperty', moduleName: CORE$1 };
2831
- Identifiers$1.property = { name: 'ɵɵproperty', moduleName: CORE$1 };
2832
- Identifiers$1.propertyInterpolate = { name: 'ɵɵpropertyInterpolate', moduleName: CORE$1 };
2833
- Identifiers$1.propertyInterpolate1 = { name: 'ɵɵpropertyInterpolate1', moduleName: CORE$1 };
2834
- Identifiers$1.propertyInterpolate2 = { name: 'ɵɵpropertyInterpolate2', moduleName: CORE$1 };
2835
- Identifiers$1.propertyInterpolate3 = { name: 'ɵɵpropertyInterpolate3', moduleName: CORE$1 };
2836
- Identifiers$1.propertyInterpolate4 = { name: 'ɵɵpropertyInterpolate4', moduleName: CORE$1 };
2837
- Identifiers$1.propertyInterpolate5 = { name: 'ɵɵpropertyInterpolate5', moduleName: CORE$1 };
2838
- Identifiers$1.propertyInterpolate6 = { name: 'ɵɵpropertyInterpolate6', moduleName: CORE$1 };
2839
- Identifiers$1.propertyInterpolate7 = { name: 'ɵɵpropertyInterpolate7', moduleName: CORE$1 };
2840
- Identifiers$1.propertyInterpolate8 = { name: 'ɵɵpropertyInterpolate8', moduleName: CORE$1 };
2841
- Identifiers$1.propertyInterpolateV = { name: 'ɵɵpropertyInterpolateV', moduleName: CORE$1 };
2842
- Identifiers$1.i18n = { name: 'ɵɵi18n', moduleName: CORE$1 };
2843
- Identifiers$1.i18nAttributes = { name: 'ɵɵi18nAttributes', moduleName: CORE$1 };
2844
- Identifiers$1.i18nExp = { name: 'ɵɵi18nExp', moduleName: CORE$1 };
2845
- Identifiers$1.i18nStart = { name: 'ɵɵi18nStart', moduleName: CORE$1 };
2846
- Identifiers$1.i18nEnd = { name: 'ɵɵi18nEnd', moduleName: CORE$1 };
2847
- Identifiers$1.i18nApply = { name: 'ɵɵi18nApply', moduleName: CORE$1 };
2848
- Identifiers$1.i18nPostprocess = { name: 'ɵɵi18nPostprocess', moduleName: CORE$1 };
2849
- Identifiers$1.pipe = { name: 'ɵɵpipe', moduleName: CORE$1 };
2850
- Identifiers$1.projection = { name: 'ɵɵprojection', moduleName: CORE$1 };
2851
- Identifiers$1.projectionDef = { name: 'ɵɵprojectionDef', moduleName: CORE$1 };
2852
- Identifiers$1.reference = { name: 'ɵɵreference', moduleName: CORE$1 };
2853
- Identifiers$1.inject = { name: 'ɵɵinject', moduleName: CORE$1 };
2854
- Identifiers$1.injectAttribute = { name: 'ɵɵinjectAttribute', moduleName: CORE$1 };
2855
- Identifiers$1.directiveInject = { name: 'ɵɵdirectiveInject', moduleName: CORE$1 };
2856
- Identifiers$1.invalidFactory = { name: 'ɵɵinvalidFactory', moduleName: CORE$1 };
2857
- Identifiers$1.invalidFactoryDep = { name: 'ɵɵinvalidFactoryDep', moduleName: CORE$1 };
2858
- Identifiers$1.templateRefExtractor = { name: 'ɵɵtemplateRefExtractor', moduleName: CORE$1 };
2859
- Identifiers$1.forwardRef = { name: 'forwardRef', moduleName: CORE$1 };
2860
- Identifiers$1.resolveForwardRef = { name: 'resolveForwardRef', moduleName: CORE$1 };
2861
- Identifiers$1.ɵɵdefineInjectable = { name: 'ɵɵdefineInjectable', moduleName: CORE$1 };
2862
- Identifiers$1.declareInjectable = { name: 'ɵɵngDeclareInjectable', moduleName: CORE$1 };
2863
- Identifiers$1.InjectableDeclaration = { name: 'ɵɵInjectableDeclaration', moduleName: CORE$1 };
2864
- Identifiers$1.resolveWindow = { name: 'ɵɵresolveWindow', moduleName: CORE$1 };
2865
- Identifiers$1.resolveDocument = { name: 'ɵɵresolveDocument', moduleName: CORE$1 };
2866
- Identifiers$1.resolveBody = { name: 'ɵɵresolveBody', moduleName: CORE$1 };
2867
- Identifiers$1.defineComponent = { name: 'ɵɵdefineComponent', moduleName: CORE$1 };
2868
- Identifiers$1.declareComponent = { name: 'ɵɵngDeclareComponent', moduleName: CORE$1 };
2869
- Identifiers$1.setComponentScope = { name: 'ɵɵsetComponentScope', moduleName: CORE$1 };
2870
- Identifiers$1.ChangeDetectionStrategy = {
2745
+ Identifiers.namespaceHTML = { name: 'ɵɵnamespaceHTML', moduleName: CORE };
2746
+ Identifiers.namespaceMathML = { name: 'ɵɵnamespaceMathML', moduleName: CORE };
2747
+ Identifiers.namespaceSVG = { name: 'ɵɵnamespaceSVG', moduleName: CORE };
2748
+ Identifiers.element = { name: 'ɵɵelement', moduleName: CORE };
2749
+ Identifiers.elementStart = { name: 'ɵɵelementStart', moduleName: CORE };
2750
+ Identifiers.elementEnd = { name: 'ɵɵelementEnd', moduleName: CORE };
2751
+ Identifiers.advance = { name: 'ɵɵadvance', moduleName: CORE };
2752
+ Identifiers.syntheticHostProperty = { name: 'ɵɵsyntheticHostProperty', moduleName: CORE };
2753
+ Identifiers.syntheticHostListener = { name: 'ɵɵsyntheticHostListener', moduleName: CORE };
2754
+ Identifiers.attribute = { name: 'ɵɵattribute', moduleName: CORE };
2755
+ Identifiers.attributeInterpolate1 = { name: 'ɵɵattributeInterpolate1', moduleName: CORE };
2756
+ Identifiers.attributeInterpolate2 = { name: 'ɵɵattributeInterpolate2', moduleName: CORE };
2757
+ Identifiers.attributeInterpolate3 = { name: 'ɵɵattributeInterpolate3', moduleName: CORE };
2758
+ Identifiers.attributeInterpolate4 = { name: 'ɵɵattributeInterpolate4', moduleName: CORE };
2759
+ Identifiers.attributeInterpolate5 = { name: 'ɵɵattributeInterpolate5', moduleName: CORE };
2760
+ Identifiers.attributeInterpolate6 = { name: 'ɵɵattributeInterpolate6', moduleName: CORE };
2761
+ Identifiers.attributeInterpolate7 = { name: 'ɵɵattributeInterpolate7', moduleName: CORE };
2762
+ Identifiers.attributeInterpolate8 = { name: 'ɵɵattributeInterpolate8', moduleName: CORE };
2763
+ Identifiers.attributeInterpolateV = { name: 'ɵɵattributeInterpolateV', moduleName: CORE };
2764
+ Identifiers.classProp = { name: 'ɵɵclassProp', moduleName: CORE };
2765
+ Identifiers.elementContainerStart = { name: 'ɵɵelementContainerStart', moduleName: CORE };
2766
+ Identifiers.elementContainerEnd = { name: 'ɵɵelementContainerEnd', moduleName: CORE };
2767
+ Identifiers.elementContainer = { name: 'ɵɵelementContainer', moduleName: CORE };
2768
+ Identifiers.styleMap = { name: 'ɵɵstyleMap', moduleName: CORE };
2769
+ Identifiers.styleMapInterpolate1 = { name: 'ɵɵstyleMapInterpolate1', moduleName: CORE };
2770
+ Identifiers.styleMapInterpolate2 = { name: 'ɵɵstyleMapInterpolate2', moduleName: CORE };
2771
+ Identifiers.styleMapInterpolate3 = { name: 'ɵɵstyleMapInterpolate3', moduleName: CORE };
2772
+ Identifiers.styleMapInterpolate4 = { name: 'ɵɵstyleMapInterpolate4', moduleName: CORE };
2773
+ Identifiers.styleMapInterpolate5 = { name: 'ɵɵstyleMapInterpolate5', moduleName: CORE };
2774
+ Identifiers.styleMapInterpolate6 = { name: 'ɵɵstyleMapInterpolate6', moduleName: CORE };
2775
+ Identifiers.styleMapInterpolate7 = { name: 'ɵɵstyleMapInterpolate7', moduleName: CORE };
2776
+ Identifiers.styleMapInterpolate8 = { name: 'ɵɵstyleMapInterpolate8', moduleName: CORE };
2777
+ Identifiers.styleMapInterpolateV = { name: 'ɵɵstyleMapInterpolateV', moduleName: CORE };
2778
+ Identifiers.classMap = { name: 'ɵɵclassMap', moduleName: CORE };
2779
+ Identifiers.classMapInterpolate1 = { name: 'ɵɵclassMapInterpolate1', moduleName: CORE };
2780
+ Identifiers.classMapInterpolate2 = { name: 'ɵɵclassMapInterpolate2', moduleName: CORE };
2781
+ Identifiers.classMapInterpolate3 = { name: 'ɵɵclassMapInterpolate3', moduleName: CORE };
2782
+ Identifiers.classMapInterpolate4 = { name: 'ɵɵclassMapInterpolate4', moduleName: CORE };
2783
+ Identifiers.classMapInterpolate5 = { name: 'ɵɵclassMapInterpolate5', moduleName: CORE };
2784
+ Identifiers.classMapInterpolate6 = { name: 'ɵɵclassMapInterpolate6', moduleName: CORE };
2785
+ Identifiers.classMapInterpolate7 = { name: 'ɵɵclassMapInterpolate7', moduleName: CORE };
2786
+ Identifiers.classMapInterpolate8 = { name: 'ɵɵclassMapInterpolate8', moduleName: CORE };
2787
+ Identifiers.classMapInterpolateV = { name: 'ɵɵclassMapInterpolateV', moduleName: CORE };
2788
+ Identifiers.styleProp = { name: 'ɵɵstyleProp', moduleName: CORE };
2789
+ Identifiers.stylePropInterpolate1 = { name: 'ɵɵstylePropInterpolate1', moduleName: CORE };
2790
+ Identifiers.stylePropInterpolate2 = { name: 'ɵɵstylePropInterpolate2', moduleName: CORE };
2791
+ Identifiers.stylePropInterpolate3 = { name: 'ɵɵstylePropInterpolate3', moduleName: CORE };
2792
+ Identifiers.stylePropInterpolate4 = { name: 'ɵɵstylePropInterpolate4', moduleName: CORE };
2793
+ Identifiers.stylePropInterpolate5 = { name: 'ɵɵstylePropInterpolate5', moduleName: CORE };
2794
+ Identifiers.stylePropInterpolate6 = { name: 'ɵɵstylePropInterpolate6', moduleName: CORE };
2795
+ Identifiers.stylePropInterpolate7 = { name: 'ɵɵstylePropInterpolate7', moduleName: CORE };
2796
+ Identifiers.stylePropInterpolate8 = { name: 'ɵɵstylePropInterpolate8', moduleName: CORE };
2797
+ Identifiers.stylePropInterpolateV = { name: 'ɵɵstylePropInterpolateV', moduleName: CORE };
2798
+ Identifiers.nextContext = { name: 'ɵɵnextContext', moduleName: CORE };
2799
+ Identifiers.templateCreate = { name: 'ɵɵtemplate', moduleName: CORE };
2800
+ Identifiers.text = { name: 'ɵɵtext', moduleName: CORE };
2801
+ Identifiers.enableBindings = { name: 'ɵɵenableBindings', moduleName: CORE };
2802
+ Identifiers.disableBindings = { name: 'ɵɵdisableBindings', moduleName: CORE };
2803
+ Identifiers.getCurrentView = { name: 'ɵɵgetCurrentView', moduleName: CORE };
2804
+ Identifiers.textInterpolate = { name: 'ɵɵtextInterpolate', moduleName: CORE };
2805
+ Identifiers.textInterpolate1 = { name: 'ɵɵtextInterpolate1', moduleName: CORE };
2806
+ Identifiers.textInterpolate2 = { name: 'ɵɵtextInterpolate2', moduleName: CORE };
2807
+ Identifiers.textInterpolate3 = { name: 'ɵɵtextInterpolate3', moduleName: CORE };
2808
+ Identifiers.textInterpolate4 = { name: 'ɵɵtextInterpolate4', moduleName: CORE };
2809
+ Identifiers.textInterpolate5 = { name: 'ɵɵtextInterpolate5', moduleName: CORE };
2810
+ Identifiers.textInterpolate6 = { name: 'ɵɵtextInterpolate6', moduleName: CORE };
2811
+ Identifiers.textInterpolate7 = { name: 'ɵɵtextInterpolate7', moduleName: CORE };
2812
+ Identifiers.textInterpolate8 = { name: 'ɵɵtextInterpolate8', moduleName: CORE };
2813
+ Identifiers.textInterpolateV = { name: 'ɵɵtextInterpolateV', moduleName: CORE };
2814
+ Identifiers.restoreView = { name: 'ɵɵrestoreView', moduleName: CORE };
2815
+ Identifiers.pureFunction0 = { name: 'ɵɵpureFunction0', moduleName: CORE };
2816
+ Identifiers.pureFunction1 = { name: 'ɵɵpureFunction1', moduleName: CORE };
2817
+ Identifiers.pureFunction2 = { name: 'ɵɵpureFunction2', moduleName: CORE };
2818
+ Identifiers.pureFunction3 = { name: 'ɵɵpureFunction3', moduleName: CORE };
2819
+ Identifiers.pureFunction4 = { name: 'ɵɵpureFunction4', moduleName: CORE };
2820
+ Identifiers.pureFunction5 = { name: 'ɵɵpureFunction5', moduleName: CORE };
2821
+ Identifiers.pureFunction6 = { name: 'ɵɵpureFunction6', moduleName: CORE };
2822
+ Identifiers.pureFunction7 = { name: 'ɵɵpureFunction7', moduleName: CORE };
2823
+ Identifiers.pureFunction8 = { name: 'ɵɵpureFunction8', moduleName: CORE };
2824
+ Identifiers.pureFunctionV = { name: 'ɵɵpureFunctionV', moduleName: CORE };
2825
+ Identifiers.pipeBind1 = { name: 'ɵɵpipeBind1', moduleName: CORE };
2826
+ Identifiers.pipeBind2 = { name: 'ɵɵpipeBind2', moduleName: CORE };
2827
+ Identifiers.pipeBind3 = { name: 'ɵɵpipeBind3', moduleName: CORE };
2828
+ Identifiers.pipeBind4 = { name: 'ɵɵpipeBind4', moduleName: CORE };
2829
+ Identifiers.pipeBindV = { name: 'ɵɵpipeBindV', moduleName: CORE };
2830
+ Identifiers.hostProperty = { name: 'ɵɵhostProperty', moduleName: CORE };
2831
+ Identifiers.property = { name: 'ɵɵproperty', moduleName: CORE };
2832
+ Identifiers.propertyInterpolate = { name: 'ɵɵpropertyInterpolate', moduleName: CORE };
2833
+ Identifiers.propertyInterpolate1 = { name: 'ɵɵpropertyInterpolate1', moduleName: CORE };
2834
+ Identifiers.propertyInterpolate2 = { name: 'ɵɵpropertyInterpolate2', moduleName: CORE };
2835
+ Identifiers.propertyInterpolate3 = { name: 'ɵɵpropertyInterpolate3', moduleName: CORE };
2836
+ Identifiers.propertyInterpolate4 = { name: 'ɵɵpropertyInterpolate4', moduleName: CORE };
2837
+ Identifiers.propertyInterpolate5 = { name: 'ɵɵpropertyInterpolate5', moduleName: CORE };
2838
+ Identifiers.propertyInterpolate6 = { name: 'ɵɵpropertyInterpolate6', moduleName: CORE };
2839
+ Identifiers.propertyInterpolate7 = { name: 'ɵɵpropertyInterpolate7', moduleName: CORE };
2840
+ Identifiers.propertyInterpolate8 = { name: 'ɵɵpropertyInterpolate8', moduleName: CORE };
2841
+ Identifiers.propertyInterpolateV = { name: 'ɵɵpropertyInterpolateV', moduleName: CORE };
2842
+ Identifiers.i18n = { name: 'ɵɵi18n', moduleName: CORE };
2843
+ Identifiers.i18nAttributes = { name: 'ɵɵi18nAttributes', moduleName: CORE };
2844
+ Identifiers.i18nExp = { name: 'ɵɵi18nExp', moduleName: CORE };
2845
+ Identifiers.i18nStart = { name: 'ɵɵi18nStart', moduleName: CORE };
2846
+ Identifiers.i18nEnd = { name: 'ɵɵi18nEnd', moduleName: CORE };
2847
+ Identifiers.i18nApply = { name: 'ɵɵi18nApply', moduleName: CORE };
2848
+ Identifiers.i18nPostprocess = { name: 'ɵɵi18nPostprocess', moduleName: CORE };
2849
+ Identifiers.pipe = { name: 'ɵɵpipe', moduleName: CORE };
2850
+ Identifiers.projection = { name: 'ɵɵprojection', moduleName: CORE };
2851
+ Identifiers.projectionDef = { name: 'ɵɵprojectionDef', moduleName: CORE };
2852
+ Identifiers.reference = { name: 'ɵɵreference', moduleName: CORE };
2853
+ Identifiers.inject = { name: 'ɵɵinject', moduleName: CORE };
2854
+ Identifiers.injectAttribute = { name: 'ɵɵinjectAttribute', moduleName: CORE };
2855
+ Identifiers.directiveInject = { name: 'ɵɵdirectiveInject', moduleName: CORE };
2856
+ Identifiers.invalidFactory = { name: 'ɵɵinvalidFactory', moduleName: CORE };
2857
+ Identifiers.invalidFactoryDep = { name: 'ɵɵinvalidFactoryDep', moduleName: CORE };
2858
+ Identifiers.templateRefExtractor = { name: 'ɵɵtemplateRefExtractor', moduleName: CORE };
2859
+ Identifiers.forwardRef = { name: 'forwardRef', moduleName: CORE };
2860
+ Identifiers.resolveForwardRef = { name: 'resolveForwardRef', moduleName: CORE };
2861
+ Identifiers.ɵɵdefineInjectable = { name: 'ɵɵdefineInjectable', moduleName: CORE };
2862
+ Identifiers.declareInjectable = { name: 'ɵɵngDeclareInjectable', moduleName: CORE };
2863
+ Identifiers.InjectableDeclaration = { name: 'ɵɵInjectableDeclaration', moduleName: CORE };
2864
+ Identifiers.resolveWindow = { name: 'ɵɵresolveWindow', moduleName: CORE };
2865
+ Identifiers.resolveDocument = { name: 'ɵɵresolveDocument', moduleName: CORE };
2866
+ Identifiers.resolveBody = { name: 'ɵɵresolveBody', moduleName: CORE };
2867
+ Identifiers.defineComponent = { name: 'ɵɵdefineComponent', moduleName: CORE };
2868
+ Identifiers.declareComponent = { name: 'ɵɵngDeclareComponent', moduleName: CORE };
2869
+ Identifiers.setComponentScope = { name: 'ɵɵsetComponentScope', moduleName: CORE };
2870
+ Identifiers.ChangeDetectionStrategy = {
2871
2871
  name: 'ChangeDetectionStrategy',
2872
- moduleName: CORE$1,
2872
+ moduleName: CORE,
2873
2873
  };
2874
- Identifiers$1.ViewEncapsulation = {
2874
+ Identifiers.ViewEncapsulation = {
2875
2875
  name: 'ViewEncapsulation',
2876
- moduleName: CORE$1,
2876
+ moduleName: CORE,
2877
2877
  };
2878
- Identifiers$1.ComponentDeclaration = {
2878
+ Identifiers.ComponentDeclaration = {
2879
2879
  name: 'ɵɵComponentDeclaration',
2880
- moduleName: CORE$1,
2880
+ moduleName: CORE,
2881
2881
  };
2882
- Identifiers$1.FactoryDeclaration = {
2882
+ Identifiers.FactoryDeclaration = {
2883
2883
  name: 'ɵɵFactoryDeclaration',
2884
- moduleName: CORE$1,
2884
+ moduleName: CORE,
2885
2885
  };
2886
- Identifiers$1.declareFactory = { name: 'ɵɵngDeclareFactory', moduleName: CORE$1 };
2887
- Identifiers$1.FactoryTarget = { name: 'ɵɵFactoryTarget', moduleName: CORE$1 };
2888
- Identifiers$1.defineDirective = { name: 'ɵɵdefineDirective', moduleName: CORE$1 };
2889
- Identifiers$1.declareDirective = { name: 'ɵɵngDeclareDirective', moduleName: CORE$1 };
2890
- Identifiers$1.DirectiveDeclaration = {
2886
+ Identifiers.declareFactory = { name: 'ɵɵngDeclareFactory', moduleName: CORE };
2887
+ Identifiers.FactoryTarget = { name: 'ɵɵFactoryTarget', moduleName: CORE };
2888
+ Identifiers.defineDirective = { name: 'ɵɵdefineDirective', moduleName: CORE };
2889
+ Identifiers.declareDirective = { name: 'ɵɵngDeclareDirective', moduleName: CORE };
2890
+ Identifiers.DirectiveDeclaration = {
2891
2891
  name: 'ɵɵDirectiveDeclaration',
2892
- moduleName: CORE$1,
2892
+ moduleName: CORE,
2893
2893
  };
2894
- Identifiers$1.InjectorDef = { name: 'ɵɵInjectorDef', moduleName: CORE$1 };
2895
- Identifiers$1.InjectorDeclaration = { name: 'ɵɵInjectorDeclaration', moduleName: CORE$1 };
2896
- Identifiers$1.defineInjector = { name: 'ɵɵdefineInjector', moduleName: CORE$1 };
2897
- Identifiers$1.declareInjector = { name: 'ɵɵngDeclareInjector', moduleName: CORE$1 };
2898
- Identifiers$1.NgModuleDeclaration = {
2894
+ Identifiers.InjectorDef = { name: 'ɵɵInjectorDef', moduleName: CORE };
2895
+ Identifiers.InjectorDeclaration = { name: 'ɵɵInjectorDeclaration', moduleName: CORE };
2896
+ Identifiers.defineInjector = { name: 'ɵɵdefineInjector', moduleName: CORE };
2897
+ Identifiers.declareInjector = { name: 'ɵɵngDeclareInjector', moduleName: CORE };
2898
+ Identifiers.NgModuleDeclaration = {
2899
2899
  name: 'ɵɵNgModuleDeclaration',
2900
- moduleName: CORE$1,
2900
+ moduleName: CORE,
2901
2901
  };
2902
- Identifiers$1.ModuleWithProviders = {
2902
+ Identifiers.ModuleWithProviders = {
2903
2903
  name: 'ModuleWithProviders',
2904
- moduleName: CORE$1,
2904
+ moduleName: CORE,
2905
2905
  };
2906
- Identifiers$1.defineNgModule = { name: 'ɵɵdefineNgModule', moduleName: CORE$1 };
2907
- Identifiers$1.declareNgModule = { name: 'ɵɵngDeclareNgModule', moduleName: CORE$1 };
2908
- Identifiers$1.setNgModuleScope = { name: 'ɵɵsetNgModuleScope', moduleName: CORE$1 };
2909
- Identifiers$1.PipeDeclaration = { name: 'ɵɵPipeDeclaration', moduleName: CORE$1 };
2910
- Identifiers$1.definePipe = { name: 'ɵɵdefinePipe', moduleName: CORE$1 };
2911
- Identifiers$1.declarePipe = { name: 'ɵɵngDeclarePipe', moduleName: CORE$1 };
2912
- Identifiers$1.declareClassMetadata = { name: 'ɵɵngDeclareClassMetadata', moduleName: CORE$1 };
2913
- Identifiers$1.setClassMetadata = { name: 'ɵsetClassMetadata', moduleName: CORE$1 };
2914
- Identifiers$1.queryRefresh = { name: 'ɵɵqueryRefresh', moduleName: CORE$1 };
2915
- Identifiers$1.viewQuery = { name: 'ɵɵviewQuery', moduleName: CORE$1 };
2916
- Identifiers$1.loadQuery = { name: 'ɵɵloadQuery', moduleName: CORE$1 };
2917
- Identifiers$1.contentQuery = { name: 'ɵɵcontentQuery', moduleName: CORE$1 };
2918
- Identifiers$1.NgOnChangesFeature = { name: 'ɵɵNgOnChangesFeature', moduleName: CORE$1 };
2919
- Identifiers$1.InheritDefinitionFeature = { name: 'ɵɵInheritDefinitionFeature', moduleName: CORE$1 };
2920
- Identifiers$1.CopyDefinitionFeature = { name: 'ɵɵCopyDefinitionFeature', moduleName: CORE$1 };
2921
- Identifiers$1.ProvidersFeature = { name: 'ɵɵProvidersFeature', moduleName: CORE$1 };
2922
- Identifiers$1.listener = { name: 'ɵɵlistener', moduleName: CORE$1 };
2923
- Identifiers$1.getInheritedFactory = {
2906
+ Identifiers.defineNgModule = { name: 'ɵɵdefineNgModule', moduleName: CORE };
2907
+ Identifiers.declareNgModule = { name: 'ɵɵngDeclareNgModule', moduleName: CORE };
2908
+ Identifiers.setNgModuleScope = { name: 'ɵɵsetNgModuleScope', moduleName: CORE };
2909
+ Identifiers.PipeDeclaration = { name: 'ɵɵPipeDeclaration', moduleName: CORE };
2910
+ Identifiers.definePipe = { name: 'ɵɵdefinePipe', moduleName: CORE };
2911
+ Identifiers.declarePipe = { name: 'ɵɵngDeclarePipe', moduleName: CORE };
2912
+ Identifiers.declareClassMetadata = { name: 'ɵɵngDeclareClassMetadata', moduleName: CORE };
2913
+ Identifiers.setClassMetadata = { name: 'ɵsetClassMetadata', moduleName: CORE };
2914
+ Identifiers.queryRefresh = { name: 'ɵɵqueryRefresh', moduleName: CORE };
2915
+ Identifiers.viewQuery = { name: 'ɵɵviewQuery', moduleName: CORE };
2916
+ Identifiers.loadQuery = { name: 'ɵɵloadQuery', moduleName: CORE };
2917
+ Identifiers.contentQuery = { name: 'ɵɵcontentQuery', moduleName: CORE };
2918
+ Identifiers.NgOnChangesFeature = { name: 'ɵɵNgOnChangesFeature', moduleName: CORE };
2919
+ Identifiers.InheritDefinitionFeature = { name: 'ɵɵInheritDefinitionFeature', moduleName: CORE };
2920
+ Identifiers.CopyDefinitionFeature = { name: 'ɵɵCopyDefinitionFeature', moduleName: CORE };
2921
+ Identifiers.ProvidersFeature = { name: 'ɵɵProvidersFeature', moduleName: CORE };
2922
+ Identifiers.listener = { name: 'ɵɵlistener', moduleName: CORE };
2923
+ Identifiers.getInheritedFactory = {
2924
2924
  name: 'ɵɵgetInheritedFactory',
2925
- moduleName: CORE$1,
2925
+ moduleName: CORE,
2926
2926
  };
2927
2927
  // sanitization-related functions
2928
- Identifiers$1.sanitizeHtml = { name: 'ɵɵsanitizeHtml', moduleName: CORE$1 };
2929
- Identifiers$1.sanitizeStyle = { name: 'ɵɵsanitizeStyle', moduleName: CORE$1 };
2930
- Identifiers$1.sanitizeResourceUrl = { name: 'ɵɵsanitizeResourceUrl', moduleName: CORE$1 };
2931
- Identifiers$1.sanitizeScript = { name: 'ɵɵsanitizeScript', moduleName: CORE$1 };
2932
- Identifiers$1.sanitizeUrl = { name: 'ɵɵsanitizeUrl', moduleName: CORE$1 };
2933
- Identifiers$1.sanitizeUrlOrResourceUrl = { name: 'ɵɵsanitizeUrlOrResourceUrl', moduleName: CORE$1 };
2934
- Identifiers$1.trustConstantHtml = { name: 'ɵɵtrustConstantHtml', moduleName: CORE$1 };
2935
- Identifiers$1.trustConstantResourceUrl = { name: 'ɵɵtrustConstantResourceUrl', moduleName: CORE$1 };
2928
+ Identifiers.sanitizeHtml = { name: 'ɵɵsanitizeHtml', moduleName: CORE };
2929
+ Identifiers.sanitizeStyle = { name: 'ɵɵsanitizeStyle', moduleName: CORE };
2930
+ Identifiers.sanitizeResourceUrl = { name: 'ɵɵsanitizeResourceUrl', moduleName: CORE };
2931
+ Identifiers.sanitizeScript = { name: 'ɵɵsanitizeScript', moduleName: CORE };
2932
+ Identifiers.sanitizeUrl = { name: 'ɵɵsanitizeUrl', moduleName: CORE };
2933
+ Identifiers.sanitizeUrlOrResourceUrl = { name: 'ɵɵsanitizeUrlOrResourceUrl', moduleName: CORE };
2934
+ Identifiers.trustConstantHtml = { name: 'ɵɵtrustConstantHtml', moduleName: CORE };
2935
+ Identifiers.trustConstantResourceUrl = { name: 'ɵɵtrustConstantResourceUrl', moduleName: CORE };
2936
2936
 
2937
2937
  /**
2938
2938
  * @license
@@ -3674,7 +3674,7 @@ function convertFromMaybeForwardRefExpression({ expression, forwardRef }) {
3674
3674
  * ```
3675
3675
  */
3676
3676
  function generateForwardRef(expr) {
3677
- return importExpr(Identifiers$1.forwardRef).callFn([fn([], [new ReturnStatement(expr)])]);
3677
+ return importExpr(Identifiers.forwardRef).callFn([fn([], [new ReturnStatement(expr)])]);
3678
3678
  }
3679
3679
 
3680
3680
  var R3FactoryDelegateType;
@@ -3722,7 +3722,7 @@ function compileFactoryFunction(meta) {
3722
3722
  const r = variable('r');
3723
3723
  body.push(r.set(NULL_EXPR).toDeclStmt());
3724
3724
  const ctorStmt = ctorExpr !== null ? r.set(ctorExpr).toStmt() :
3725
- importExpr(Identifiers$1.invalidFactory).callFn([]).toStmt();
3725
+ importExpr(Identifiers.invalidFactory).callFn([]).toStmt();
3726
3726
  body.push(ifStmt(t, [ctorStmt], [r.set(nonCtorExpr).toStmt()]));
3727
3727
  return r;
3728
3728
  }
@@ -3745,11 +3745,11 @@ function compileFactoryFunction(meta) {
3745
3745
  }
3746
3746
  if (retExpr === null) {
3747
3747
  // The expression cannot be formed so render an `ɵɵinvalidFactory()` call.
3748
- body.push(importExpr(Identifiers$1.invalidFactory).callFn([]).toStmt());
3748
+ body.push(importExpr(Identifiers.invalidFactory).callFn([]).toStmt());
3749
3749
  }
3750
3750
  else if (baseFactoryVar !== null) {
3751
3751
  // This factory uses a base factory, so call `ɵɵgetInheritedFactory()` to compute it.
3752
- const getInheritedFactoryCall = importExpr(Identifiers$1.getInheritedFactory).callFn([meta.internalType]);
3752
+ const getInheritedFactoryCall = importExpr(Identifiers.getInheritedFactory).callFn([meta.internalType]);
3753
3753
  // Memoize the base factoryFn: `baseFactory || (baseFactory = ɵɵgetInheritedFactory(...))`
3754
3754
  const baseFactory = new BinaryOperatorExpr(BinaryOperator.Or, baseFactoryVar, baseFactoryVar.set(getInheritedFactoryCall));
3755
3755
  body.push(new ReturnStatement(baseFactory.callFn([typeForCtor])));
@@ -3774,7 +3774,7 @@ function compileFactoryFunction(meta) {
3774
3774
  }
3775
3775
  function createFactoryType(meta) {
3776
3776
  const ctorDepsType = meta.deps !== null && meta.deps !== 'invalid' ? createCtorDepsType(meta.deps) : NONE_TYPE;
3777
- return expressionType(importExpr(Identifiers$1.FactoryDeclaration, [typeWithParameters(meta.type.type, meta.typeArgumentCount), ctorDepsType]));
3777
+ return expressionType(importExpr(Identifiers.FactoryDeclaration, [typeWithParameters(meta.type.type, meta.typeArgumentCount), ctorDepsType]));
3778
3778
  }
3779
3779
  function injectDependencies(deps, target) {
3780
3780
  return deps.map((dep, index) => compileInjectDependency(dep, target, index));
@@ -3782,7 +3782,7 @@ function injectDependencies(deps, target) {
3782
3782
  function compileInjectDependency(dep, target, index) {
3783
3783
  // Interpret the dependency according to its resolved type.
3784
3784
  if (dep.token === null) {
3785
- return importExpr(Identifiers$1.invalidFactoryDep).callFn([literal(index)]);
3785
+ return importExpr(Identifiers.invalidFactoryDep).callFn([literal(index)]);
3786
3786
  }
3787
3787
  else if (dep.attributeNameType === null) {
3788
3788
  // Build up the injection flags according to the metadata.
@@ -3810,7 +3810,7 @@ function compileInjectDependency(dep, target, index) {
3810
3810
  //
3811
3811
  // The `dep.attributeTypeName` is only actually used (in `createCtorDepType()`) to generate
3812
3812
  // typings.
3813
- return importExpr(Identifiers$1.injectAttribute).callFn([dep.token]);
3813
+ return importExpr(Identifiers.injectAttribute).callFn([dep.token]);
3814
3814
  }
3815
3815
  }
3816
3816
  function createCtorDepsType(deps) {
@@ -3862,11 +3862,11 @@ function getInjectFn(target) {
3862
3862
  case FactoryTarget$1.Component:
3863
3863
  case FactoryTarget$1.Directive:
3864
3864
  case FactoryTarget$1.Pipe:
3865
- return Identifiers$1.directiveInject;
3865
+ return Identifiers.directiveInject;
3866
3866
  case FactoryTarget$1.NgModule:
3867
3867
  case FactoryTarget$1.Injectable:
3868
3868
  default:
3869
- return Identifiers$1.inject;
3869
+ return Identifiers.inject;
3870
3870
  }
3871
3871
  }
3872
3872
 
@@ -4962,7 +4962,7 @@ function getQueryPredicate(query, constantPool) {
4962
4962
  case 2 /* Unwrapped */:
4963
4963
  return query.predicate.expression;
4964
4964
  case 1 /* Wrapped */:
4965
- return importExpr(Identifiers$1.resolveForwardRef).callFn([query.predicate.expression]);
4965
+ return importExpr(Identifiers.resolveForwardRef).callFn([query.predicate.expression]);
4966
4966
  }
4967
4967
  }
4968
4968
  }
@@ -5122,7 +5122,7 @@ function compileInjectable(meta, resolveForwardRefs) {
5122
5122
  // useExisting is an `inject` call on the existing token.
5123
5123
  result = compileFactoryFunction({
5124
5124
  ...factoryMeta,
5125
- expression: importExpr(Identifiers$1.inject).callFn([meta.useExisting.expression]),
5125
+ expression: importExpr(Identifiers.inject).callFn([meta.useExisting.expression]),
5126
5126
  });
5127
5127
  }
5128
5128
  else {
@@ -5139,7 +5139,7 @@ function compileInjectable(meta, resolveForwardRefs) {
5139
5139
  if (meta.providedIn.expression.value !== null) {
5140
5140
  injectableProps.set('providedIn', convertFromMaybeForwardRefExpression(meta.providedIn));
5141
5141
  }
5142
- const expression = importExpr(Identifiers$1.ɵɵdefineInjectable)
5142
+ const expression = importExpr(Identifiers.ɵɵdefineInjectable)
5143
5143
  .callFn([injectableProps.toLiteralMap()], undefined, true);
5144
5144
  return {
5145
5145
  expression,
@@ -5148,7 +5148,7 @@ function compileInjectable(meta, resolveForwardRefs) {
5148
5148
  };
5149
5149
  }
5150
5150
  function createInjectableType(meta) {
5151
- return new ExpressionType(importExpr(Identifiers$1.InjectableDeclaration, [typeWithParameters(meta.type.type, meta.typeArgumentCount)]));
5151
+ return new ExpressionType(importExpr(Identifiers.InjectableDeclaration, [typeWithParameters(meta.type.type, meta.typeArgumentCount)]));
5152
5152
  }
5153
5153
  function delegateToFactory(type, internalType, unwrapForwardRefs) {
5154
5154
  if (type.node === internalType.node) {
@@ -5171,7 +5171,7 @@ function delegateToFactory(type, internalType, unwrapForwardRefs) {
5171
5171
  // ```
5172
5172
  // factory: function(t) { return core.resolveForwardRef(type).ɵfac(t); }
5173
5173
  // ```
5174
- const unwrappedType = importExpr(Identifiers$1.resolveForwardRef).callFn([internalType]);
5174
+ const unwrappedType = importExpr(Identifiers.resolveForwardRef).callFn([internalType]);
5175
5175
  return createFactoryFunction(unwrappedType);
5176
5176
  }
5177
5177
  function createFactoryFunction(type) {
@@ -5859,12 +5859,12 @@ function compileInjector(meta) {
5859
5859
  if (meta.imports.length > 0) {
5860
5860
  definitionMap.set('imports', literalArr(meta.imports));
5861
5861
  }
5862
- const expression = importExpr(Identifiers$1.defineInjector).callFn([definitionMap.toLiteralMap()], undefined, true);
5862
+ const expression = importExpr(Identifiers.defineInjector).callFn([definitionMap.toLiteralMap()], undefined, true);
5863
5863
  const type = createInjectorType(meta);
5864
5864
  return { expression, type, statements: [] };
5865
5865
  }
5866
5866
  function createInjectorType(meta) {
5867
- return new ExpressionType(importExpr(Identifiers$1.InjectorDeclaration, [new ExpressionType(meta.type.type)]));
5867
+ return new ExpressionType(importExpr(Identifiers.InjectorDeclaration, [new ExpressionType(meta.type.type)]));
5868
5868
  }
5869
5869
 
5870
5870
  /**
@@ -5941,7 +5941,7 @@ function compileNgModule(meta) {
5941
5941
  if (id !== null) {
5942
5942
  definitionMap.set('id', id);
5943
5943
  }
5944
- const expression = importExpr(Identifiers$1.defineNgModule).callFn([definitionMap.toLiteralMap()], undefined, true);
5944
+ const expression = importExpr(Identifiers.defineNgModule).callFn([definitionMap.toLiteralMap()], undefined, true);
5945
5945
  const type = createNgModuleType(meta);
5946
5946
  return { expression, type, statements };
5947
5947
  }
@@ -5970,10 +5970,10 @@ function compileNgModuleDeclarationExpression(meta) {
5970
5970
  if (meta.id !== undefined) {
5971
5971
  definitionMap.set('id', new WrappedNodeExpr(meta.id));
5972
5972
  }
5973
- return importExpr(Identifiers$1.defineNgModule).callFn([definitionMap.toLiteralMap()]);
5973
+ return importExpr(Identifiers.defineNgModule).callFn([definitionMap.toLiteralMap()]);
5974
5974
  }
5975
5975
  function createNgModuleType({ type: moduleType, declarations, imports, exports }) {
5976
- return new ExpressionType(importExpr(Identifiers$1.NgModuleDeclaration, [
5976
+ return new ExpressionType(importExpr(Identifiers.NgModuleDeclaration, [
5977
5977
  new ExpressionType(moduleType.type), tupleTypeOf(declarations), tupleTypeOf(imports),
5978
5978
  tupleTypeOf(exports)
5979
5979
  ]));
@@ -6001,7 +6001,7 @@ function generateSetNgModuleScopeCall(meta) {
6001
6001
  }
6002
6002
  // setNgModuleScope(...)
6003
6003
  const fnCall = new InvokeFunctionExpr(
6004
- /* fn */ importExpr(Identifiers$1.setNgModuleScope),
6004
+ /* fn */ importExpr(Identifiers.setNgModuleScope),
6005
6005
  /* args */ [moduleType, scopeMap.toLiteralMap()]);
6006
6006
  // (ngJitMode guard) && setNgModuleScope(...)
6007
6007
  const guardedCall = jitOnlyGuardedExpression(fnCall);
@@ -6035,12 +6035,12 @@ function compilePipeFromMetadata(metadata) {
6035
6035
  definitionMapValues.push({ key: 'type', value: metadata.type.value, quoted: false });
6036
6036
  // e.g. `pure: true`
6037
6037
  definitionMapValues.push({ key: 'pure', value: literal(metadata.pure), quoted: false });
6038
- const expression = importExpr(Identifiers$1.definePipe).callFn([literalMap(definitionMapValues)], undefined, true);
6038
+ const expression = importExpr(Identifiers.definePipe).callFn([literalMap(definitionMapValues)], undefined, true);
6039
6039
  const type = createPipeType(metadata);
6040
6040
  return { expression, type, statements: [] };
6041
6041
  }
6042
6042
  function createPipeType(metadata) {
6043
- return new ExpressionType(importExpr(Identifiers$1.PipeDeclaration, [
6043
+ return new ExpressionType(importExpr(Identifiers.PipeDeclaration, [
6044
6044
  typeWithParameters(metadata.type.type, metadata.typeArgumentCount),
6045
6045
  new ExpressionType(new LiteralExpr(metadata.pipeName)),
6046
6046
  ]));
@@ -6089,33 +6089,6 @@ class ASTWithName extends AST {
6089
6089
  this.nameSpan = nameSpan;
6090
6090
  }
6091
6091
  }
6092
- /**
6093
- * Represents a quoted expression of the form:
6094
- *
6095
- * quote = prefix `:` uninterpretedExpression
6096
- * prefix = identifier
6097
- * uninterpretedExpression = arbitrary string
6098
- *
6099
- * A quoted expression is meant to be pre-processed by an AST transformer that
6100
- * converts it into another AST that no longer contains quoted expressions.
6101
- * It is meant to allow third-party developers to extend Angular template
6102
- * expression language. The `uninterpretedExpression` part of the quote is
6103
- * therefore not interpreted by the Angular's own expression parser.
6104
- */
6105
- class Quote extends AST {
6106
- constructor(span, sourceSpan, prefix, uninterpretedExpression, location) {
6107
- super(span, sourceSpan);
6108
- this.prefix = prefix;
6109
- this.uninterpretedExpression = uninterpretedExpression;
6110
- this.location = location;
6111
- }
6112
- visit(visitor, context = null) {
6113
- return visitor.visitQuote(this, context);
6114
- }
6115
- toString() {
6116
- return 'Quote';
6117
- }
6118
- }
6119
6092
  class EmptyExpr extends AST {
6120
6093
  visit(visitor, context = null) {
6121
6094
  // do nothing
@@ -6495,7 +6468,6 @@ class RecursiveAstVisitor {
6495
6468
  this.visit(ast.receiver, context);
6496
6469
  this.visitAll(ast.args, context);
6497
6470
  }
6498
- visitQuote(ast, context) { }
6499
6471
  // This is not part of the AstVisitor interface, just a helper method
6500
6472
  visitAll(asts, context) {
6501
6473
  for (const ast of asts) {
@@ -6578,9 +6550,6 @@ class AstTransformer {
6578
6550
  visitChain(ast, context) {
6579
6551
  return new Chain(ast.span, ast.sourceSpan, this.visitAll(ast.expressions));
6580
6552
  }
6581
- visitQuote(ast, context) {
6582
- return new Quote(ast.span, ast.sourceSpan, ast.prefix, ast.uninterpretedExpression, ast.location);
6583
- }
6584
6553
  visitSafeKeyedRead(ast, context) {
6585
6554
  return new SafeKeyedRead(ast.span, ast.sourceSpan, ast.receiver.visit(this), ast.key.visit(this));
6586
6555
  }
@@ -6743,9 +6712,6 @@ class AstMemoryEfficientTransformer {
6743
6712
  }
6744
6713
  return ast;
6745
6714
  }
6746
- visitQuote(ast, context) {
6747
- return ast;
6748
- }
6749
6715
  visitSafeKeyedRead(ast, context) {
6750
6716
  const obj = ast.receiver.visit(this);
6751
6717
  const key = ast.key.visit(this);
@@ -6812,98 +6778,6 @@ class BoundElementProperty {
6812
6778
  }
6813
6779
  }
6814
6780
 
6815
- /**
6816
- * @license
6817
- * Copyright Google LLC All Rights Reserved.
6818
- *
6819
- * Use of this source code is governed by an MIT-style license that can be
6820
- * found in the LICENSE file at https://angular.io/license
6821
- */
6822
- const CORE = '@angular/core';
6823
- class Identifiers {
6824
- }
6825
- Identifiers.ANALYZE_FOR_ENTRY_COMPONENTS = {
6826
- name: 'ANALYZE_FOR_ENTRY_COMPONENTS',
6827
- moduleName: CORE,
6828
- };
6829
- Identifiers.ElementRef = { name: 'ElementRef', moduleName: CORE };
6830
- Identifiers.NgModuleRef = { name: 'NgModuleRef', moduleName: CORE };
6831
- Identifiers.ViewContainerRef = { name: 'ViewContainerRef', moduleName: CORE };
6832
- Identifiers.ChangeDetectorRef = {
6833
- name: 'ChangeDetectorRef',
6834
- moduleName: CORE,
6835
- };
6836
- Identifiers.QueryList = { name: 'QueryList', moduleName: CORE };
6837
- Identifiers.TemplateRef = { name: 'TemplateRef', moduleName: CORE };
6838
- Identifiers.Renderer2 = { name: 'Renderer2', moduleName: CORE };
6839
- Identifiers.CodegenComponentFactoryResolver = {
6840
- name: 'ɵCodegenComponentFactoryResolver',
6841
- moduleName: CORE,
6842
- };
6843
- Identifiers.ComponentFactoryResolver = {
6844
- name: 'ComponentFactoryResolver',
6845
- moduleName: CORE,
6846
- };
6847
- Identifiers.ComponentFactory = { name: 'ComponentFactory', moduleName: CORE };
6848
- Identifiers.ComponentRef = { name: 'ComponentRef', moduleName: CORE };
6849
- Identifiers.NgModuleFactory = { name: 'NgModuleFactory', moduleName: CORE };
6850
- Identifiers.createModuleFactory = {
6851
- name: 'ɵcmf',
6852
- moduleName: CORE,
6853
- };
6854
- Identifiers.moduleDef = {
6855
- name: 'ɵmod',
6856
- moduleName: CORE,
6857
- };
6858
- Identifiers.moduleProviderDef = {
6859
- name: 'ɵmpd',
6860
- moduleName: CORE,
6861
- };
6862
- Identifiers.RegisterModuleFactoryFn = {
6863
- name: 'ɵregisterModuleFactory',
6864
- moduleName: CORE,
6865
- };
6866
- Identifiers.inject = { name: 'ɵɵinject', moduleName: CORE };
6867
- Identifiers.directiveInject = { name: 'ɵɵdirectiveInject', moduleName: CORE };
6868
- Identifiers.INJECTOR = { name: 'INJECTOR', moduleName: CORE };
6869
- Identifiers.Injector = { name: 'Injector', moduleName: CORE };
6870
- Identifiers.ViewEncapsulation = {
6871
- name: 'ViewEncapsulation',
6872
- moduleName: CORE,
6873
- };
6874
- Identifiers.ChangeDetectionStrategy = {
6875
- name: 'ChangeDetectionStrategy',
6876
- moduleName: CORE,
6877
- };
6878
- Identifiers.SecurityContext = {
6879
- name: 'SecurityContext',
6880
- moduleName: CORE,
6881
- };
6882
- Identifiers.LOCALE_ID = { name: 'LOCALE_ID', moduleName: CORE };
6883
- Identifiers.TRANSLATIONS_FORMAT = {
6884
- name: 'TRANSLATIONS_FORMAT',
6885
- moduleName: CORE,
6886
- };
6887
- Identifiers.inlineInterpolate = {
6888
- name: 'ɵinlineInterpolate',
6889
- moduleName: CORE,
6890
- };
6891
- Identifiers.interpolate = { name: 'ɵinterpolate', moduleName: CORE };
6892
- Identifiers.EMPTY_ARRAY = { name: 'ɵEMPTY_ARRAY', moduleName: CORE };
6893
- Identifiers.EMPTY_MAP = { name: 'ɵEMPTY_MAP', moduleName: CORE };
6894
- Identifiers.Renderer = { name: 'Renderer', moduleName: CORE };
6895
- // type only
6896
- Identifiers.RendererType2 = {
6897
- name: 'RendererType2',
6898
- moduleName: CORE,
6899
- };
6900
- // type only
6901
- Identifiers.ViewDefinition = {
6902
- name: 'ɵViewDefinition',
6903
- moduleName: CORE,
6904
- };
6905
- Identifiers.createComponentFactory = { name: 'ɵccf', moduleName: CORE };
6906
-
6907
6781
  /**
6908
6782
  * @license
6909
6783
  * Copyright Google LLC All Rights Reserved.
@@ -6918,7 +6792,7 @@ EventHandlerVars.event = variable('$event');
6918
6792
  * Converts the given expression AST into an executable output AST, assuming the expression is
6919
6793
  * used in an action binding (e.g. an event handler).
6920
6794
  */
6921
- function convertActionBinding(localResolver, implicitReceiver, action, bindingId, interpolationFunction, baseSourceSpan, implicitReceiverAccesses, globals) {
6795
+ function convertActionBinding(localResolver, implicitReceiver, action, bindingId, baseSourceSpan, implicitReceiverAccesses, globals) {
6922
6796
  if (!localResolver) {
6923
6797
  localResolver = new DefaultLocalResolver(globals);
6924
6798
  }
@@ -6942,7 +6816,7 @@ function convertActionBinding(localResolver, implicitReceiver, action, bindingId
6942
6816
  throw new Error(`Illegal State: Actions are not allowed to contain pipes. Pipe: ${name}`);
6943
6817
  }
6944
6818
  }, action);
6945
- const visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId, interpolationFunction, baseSourceSpan, implicitReceiverAccesses);
6819
+ const visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId, /* supportsInterpolation */ false, baseSourceSpan, implicitReceiverAccesses);
6946
6820
  const actionStmts = [];
6947
6821
  flattenStatements(actionWithoutBuiltins.visit(visitor, _Mode.Statement), actionStmts);
6948
6822
  prependTemporaryDecls(visitor.temporaryCount, bindingId, actionStmts);
@@ -6973,11 +6847,11 @@ class ConvertPropertyBindingResult {
6973
6847
  * is used in property binding. The expression has to be preprocessed via
6974
6848
  * `convertPropertyBindingBuiltins`.
6975
6849
  */
6976
- function convertPropertyBinding(localResolver, implicitReceiver, expressionWithoutBuiltins, bindingId, interpolationFunction) {
6850
+ function convertPropertyBinding(localResolver, implicitReceiver, expressionWithoutBuiltins, bindingId) {
6977
6851
  if (!localResolver) {
6978
6852
  localResolver = new DefaultLocalResolver();
6979
6853
  }
6980
- const visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId, interpolationFunction);
6854
+ const visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId, /* supportsInterpolation */ false);
6981
6855
  const outputExpr = expressionWithoutBuiltins.visit(visitor, _Mode.Expression);
6982
6856
  const stmts = getStatementsFromVisitor(visitor, bindingId);
6983
6857
  if (visitor.usesImplicitReceiver) {
@@ -7002,28 +6876,13 @@ function convertPropertyBinding(localResolver, implicitReceiver, expressionWitho
7002
6876
  * `o.importExpr(R3.propertyInterpolate).callFn(result)`
7003
6877
  */
7004
6878
  function convertUpdateArguments(localResolver, contextVariableExpression, expressionWithArgumentsToExtract, bindingId) {
7005
- const visitor = new _AstToIrVisitor(localResolver, contextVariableExpression, bindingId, undefined);
7006
- const outputExpr = expressionWithArgumentsToExtract.visit(visitor, _Mode.Expression);
6879
+ const visitor = new _AstToIrVisitor(localResolver, contextVariableExpression, bindingId, /* supportsInterpolation */ true);
6880
+ const outputExpr = visitor.visitInterpolation(expressionWithArgumentsToExtract, _Mode.Expression);
7007
6881
  if (visitor.usesImplicitReceiver) {
7008
6882
  localResolver.notifyImplicitReceiverUse();
7009
6883
  }
7010
6884
  const stmts = getStatementsFromVisitor(visitor, bindingId);
7011
- // Removing the first argument, because it was a length for ViewEngine, not Ivy.
7012
- let args = outputExpr.args.slice(1);
7013
- if (expressionWithArgumentsToExtract instanceof Interpolation) {
7014
- // If we're dealing with an interpolation of 1 value with an empty prefix and suffix, reduce the
7015
- // args returned to just the value, because we're going to pass it to a special instruction.
7016
- const strings = expressionWithArgumentsToExtract.strings;
7017
- if (args.length === 3 && strings[0] === '' && strings[1] === '') {
7018
- // Single argument interpolate instructions.
7019
- args = [args[1]];
7020
- }
7021
- else if (args.length >= 19) {
7022
- // 19 or more arguments must be passed to the `interpolateV`-style instructions, which accept
7023
- // an array of arguments
7024
- args = [literalArr(args)];
7025
- }
7026
- }
6885
+ const args = outputExpr.args;
7027
6886
  return { stmts, args };
7028
6887
  }
7029
6888
  function getStatementsFromVisitor(visitor, bindingId) {
@@ -7090,11 +6949,11 @@ class _BuiltinAstConverter extends AstTransformer {
7090
6949
  }
7091
6950
  }
7092
6951
  class _AstToIrVisitor {
7093
- constructor(_localResolver, _implicitReceiver, bindingId, interpolationFunction, baseSourceSpan, implicitReceiverAccesses) {
6952
+ constructor(_localResolver, _implicitReceiver, bindingId, supportsInterpolation, baseSourceSpan, implicitReceiverAccesses) {
7094
6953
  this._localResolver = _localResolver;
7095
6954
  this._implicitReceiver = _implicitReceiver;
7096
6955
  this.bindingId = bindingId;
7097
- this.interpolationFunction = interpolationFunction;
6956
+ this.supportsInterpolation = supportsInterpolation;
7098
6957
  this.baseSourceSpan = baseSourceSpan;
7099
6958
  this.implicitReceiverAccesses = implicitReceiverAccesses;
7100
6959
  this._nodeMap = new Map();
@@ -7192,21 +7051,29 @@ class _AstToIrVisitor {
7192
7051
  return this.visitImplicitReceiver(ast, mode);
7193
7052
  }
7194
7053
  visitInterpolation(ast, mode) {
7054
+ if (!this.supportsInterpolation) {
7055
+ throw new Error('Unexpected interpolation');
7056
+ }
7195
7057
  ensureExpressionMode(mode, ast);
7196
- const args = [literal(ast.expressions.length)];
7058
+ let args = [];
7197
7059
  for (let i = 0; i < ast.strings.length - 1; i++) {
7198
7060
  args.push(literal(ast.strings[i]));
7199
7061
  args.push(this._visit(ast.expressions[i], _Mode.Expression));
7200
7062
  }
7201
7063
  args.push(literal(ast.strings[ast.strings.length - 1]));
7202
- if (this.interpolationFunction) {
7203
- return this.interpolationFunction(args);
7064
+ // If we're dealing with an interpolation of 1 value with an empty prefix and suffix, reduce the
7065
+ // args returned to just the value, because we're going to pass it to a special instruction.
7066
+ const strings = ast.strings;
7067
+ if (strings.length === 2 && strings[0] === '' && strings[1] === '') {
7068
+ // Single argument interpolate instructions.
7069
+ args = [args[1]];
7204
7070
  }
7205
- return ast.expressions.length <= 9 ?
7206
- importExpr(Identifiers.inlineInterpolate).callFn(args) :
7207
- importExpr(Identifiers.interpolate).callFn([
7208
- args[0], literalArr(args.slice(1), undefined, this.convertSourceSpan(ast.span))
7209
- ]);
7071
+ else if (ast.expressions.length >= 9) {
7072
+ // 9 or more arguments must be passed to the `interpolateV`-style instructions, which accept
7073
+ // an array of arguments
7074
+ args = [literalArr(args)];
7075
+ }
7076
+ return new InterpolationExpression(args);
7210
7077
  }
7211
7078
  visitKeyedRead(ast, mode) {
7212
7079
  const leftMostSafe = this.leftMostSafeNode(ast);
@@ -7317,10 +7184,6 @@ class _AstToIrVisitor {
7317
7184
  visitAll(asts, mode) {
7318
7185
  return asts.map(ast => this._visit(ast, mode));
7319
7186
  }
7320
- visitQuote(ast, mode) {
7321
- throw new Error(`Quotes are not supported for evaluation!
7322
- Statement: ${ast.uninterpretedExpression} located at ${ast.location}`);
7323
- }
7324
7187
  visitCall(ast, mode) {
7325
7188
  const leftMostSafe = this.leftMostSafeNode(ast);
7326
7189
  if (leftMostSafe) {
@@ -7506,9 +7369,6 @@ class _AstToIrVisitor {
7506
7369
  visitPropertyWrite(ast) {
7507
7370
  return null;
7508
7371
  },
7509
- visitQuote(ast) {
7510
- return null;
7511
- },
7512
7372
  visitSafePropertyRead(ast) {
7513
7373
  return visit(this, ast.receiver) || ast;
7514
7374
  },
@@ -7585,9 +7445,6 @@ class _AstToIrVisitor {
7585
7445
  visitPropertyWrite(ast) {
7586
7446
  return false;
7587
7447
  },
7588
- visitQuote(ast) {
7589
- return false;
7590
- },
7591
7448
  visitSafePropertyRead(ast) {
7592
7449
  return false;
7593
7450
  },
@@ -7644,6 +7501,18 @@ function flattenStatements(arg, output) {
7644
7501
  output.push(arg);
7645
7502
  }
7646
7503
  }
7504
+ function unsupported() {
7505
+ throw new Error('Unsupported operation');
7506
+ }
7507
+ class InterpolationExpression extends Expression {
7508
+ constructor(args) {
7509
+ super(null, null);
7510
+ this.args = args;
7511
+ this.isConstant = unsupported;
7512
+ this.isEquivalent = unsupported;
7513
+ this.visitExpression = unsupported;
7514
+ }
7515
+ }
7647
7516
  class DefaultLocalResolver {
7648
7517
  constructor(globals) {
7649
7518
  this.globals = globals;
@@ -8811,7 +8680,7 @@ class StylingBuilder {
8811
8680
  getStyleMapInterpolationExpression(mapValue);
8812
8681
  }
8813
8682
  else {
8814
- reference = isClassBased ? Identifiers$1.classMap : Identifiers$1.styleMap;
8683
+ reference = isClassBased ? Identifiers.classMap : Identifiers.styleMap;
8815
8684
  }
8816
8685
  return {
8817
8686
  reference,
@@ -8885,13 +8754,13 @@ class StylingBuilder {
8885
8754
  }
8886
8755
  _buildClassInputs(valueConverter) {
8887
8756
  if (this._singleClassInputs) {
8888
- return this._buildSingleInputs(Identifiers$1.classProp, this._singleClassInputs, valueConverter, null, true);
8757
+ return this._buildSingleInputs(Identifiers.classProp, this._singleClassInputs, valueConverter, null, true);
8889
8758
  }
8890
8759
  return [];
8891
8760
  }
8892
8761
  _buildStyleInputs(valueConverter) {
8893
8762
  if (this._singleStyleInputs) {
8894
- return this._buildSingleInputs(Identifiers$1.styleProp, this._singleStyleInputs, valueConverter, getStylePropInterpolationExpression, false);
8763
+ return this._buildSingleInputs(Identifiers.styleProp, this._singleStyleInputs, valueConverter, getStylePropInterpolationExpression, false);
8895
8764
  }
8896
8765
  return [];
8897
8766
  }
@@ -8944,25 +8813,25 @@ function parseProperty(name) {
8944
8813
  function getClassMapInterpolationExpression(interpolation) {
8945
8814
  switch (getInterpolationArgsLength(interpolation)) {
8946
8815
  case 1:
8947
- return Identifiers$1.classMap;
8816
+ return Identifiers.classMap;
8948
8817
  case 3:
8949
- return Identifiers$1.classMapInterpolate1;
8818
+ return Identifiers.classMapInterpolate1;
8950
8819
  case 5:
8951
- return Identifiers$1.classMapInterpolate2;
8820
+ return Identifiers.classMapInterpolate2;
8952
8821
  case 7:
8953
- return Identifiers$1.classMapInterpolate3;
8822
+ return Identifiers.classMapInterpolate3;
8954
8823
  case 9:
8955
- return Identifiers$1.classMapInterpolate4;
8824
+ return Identifiers.classMapInterpolate4;
8956
8825
  case 11:
8957
- return Identifiers$1.classMapInterpolate5;
8826
+ return Identifiers.classMapInterpolate5;
8958
8827
  case 13:
8959
- return Identifiers$1.classMapInterpolate6;
8828
+ return Identifiers.classMapInterpolate6;
8960
8829
  case 15:
8961
- return Identifiers$1.classMapInterpolate7;
8830
+ return Identifiers.classMapInterpolate7;
8962
8831
  case 17:
8963
- return Identifiers$1.classMapInterpolate8;
8832
+ return Identifiers.classMapInterpolate8;
8964
8833
  default:
8965
- return Identifiers$1.classMapInterpolateV;
8834
+ return Identifiers.classMapInterpolateV;
8966
8835
  }
8967
8836
  }
8968
8837
  /**
@@ -8972,25 +8841,25 @@ function getClassMapInterpolationExpression(interpolation) {
8972
8841
  function getStyleMapInterpolationExpression(interpolation) {
8973
8842
  switch (getInterpolationArgsLength(interpolation)) {
8974
8843
  case 1:
8975
- return Identifiers$1.styleMap;
8844
+ return Identifiers.styleMap;
8976
8845
  case 3:
8977
- return Identifiers$1.styleMapInterpolate1;
8846
+ return Identifiers.styleMapInterpolate1;
8978
8847
  case 5:
8979
- return Identifiers$1.styleMapInterpolate2;
8848
+ return Identifiers.styleMapInterpolate2;
8980
8849
  case 7:
8981
- return Identifiers$1.styleMapInterpolate3;
8850
+ return Identifiers.styleMapInterpolate3;
8982
8851
  case 9:
8983
- return Identifiers$1.styleMapInterpolate4;
8852
+ return Identifiers.styleMapInterpolate4;
8984
8853
  case 11:
8985
- return Identifiers$1.styleMapInterpolate5;
8854
+ return Identifiers.styleMapInterpolate5;
8986
8855
  case 13:
8987
- return Identifiers$1.styleMapInterpolate6;
8856
+ return Identifiers.styleMapInterpolate6;
8988
8857
  case 15:
8989
- return Identifiers$1.styleMapInterpolate7;
8858
+ return Identifiers.styleMapInterpolate7;
8990
8859
  case 17:
8991
- return Identifiers$1.styleMapInterpolate8;
8860
+ return Identifiers.styleMapInterpolate8;
8992
8861
  default:
8993
- return Identifiers$1.styleMapInterpolateV;
8862
+ return Identifiers.styleMapInterpolateV;
8994
8863
  }
8995
8864
  }
8996
8865
  /**
@@ -9000,25 +8869,25 @@ function getStyleMapInterpolationExpression(interpolation) {
9000
8869
  function getStylePropInterpolationExpression(interpolation) {
9001
8870
  switch (getInterpolationArgsLength(interpolation)) {
9002
8871
  case 1:
9003
- return Identifiers$1.styleProp;
8872
+ return Identifiers.styleProp;
9004
8873
  case 3:
9005
- return Identifiers$1.stylePropInterpolate1;
8874
+ return Identifiers.stylePropInterpolate1;
9006
8875
  case 5:
9007
- return Identifiers$1.stylePropInterpolate2;
8876
+ return Identifiers.stylePropInterpolate2;
9008
8877
  case 7:
9009
- return Identifiers$1.stylePropInterpolate3;
8878
+ return Identifiers.stylePropInterpolate3;
9010
8879
  case 9:
9011
- return Identifiers$1.stylePropInterpolate4;
8880
+ return Identifiers.stylePropInterpolate4;
9012
8881
  case 11:
9013
- return Identifiers$1.stylePropInterpolate5;
8882
+ return Identifiers.stylePropInterpolate5;
9014
8883
  case 13:
9015
- return Identifiers$1.stylePropInterpolate6;
8884
+ return Identifiers.stylePropInterpolate6;
9016
8885
  case 15:
9017
- return Identifiers$1.stylePropInterpolate7;
8886
+ return Identifiers.stylePropInterpolate7;
9018
8887
  case 17:
9019
- return Identifiers$1.stylePropInterpolate8;
8888
+ return Identifiers.stylePropInterpolate8;
9020
8889
  default:
9021
- return Identifiers$1.stylePropInterpolateV;
8890
+ return Identifiers.stylePropInterpolateV;
9022
8891
  }
9023
8892
  }
9024
8893
  /**
@@ -9479,11 +9348,15 @@ class Parser$1 {
9479
9348
  this._lexer = _lexer;
9480
9349
  this.errors = [];
9481
9350
  }
9482
- parseAction(input, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
9351
+ parseAction(input, isAssignmentEvent, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
9483
9352
  this._checkNoInterpolation(input, location, interpolationConfig);
9484
9353
  const sourceToLex = this._stripComments(input);
9485
9354
  const tokens = this._lexer.tokenize(sourceToLex);
9486
- const ast = new _ParseAST(input, location, absoluteOffset, tokens, true, this.errors, 0).parseChain();
9355
+ let flags = 1 /* Action */;
9356
+ if (isAssignmentEvent) {
9357
+ flags |= 2 /* AssignmentEvent */;
9358
+ }
9359
+ const ast = new _ParseAST(input, location, absoluteOffset, tokens, flags, this.errors, 0).parseChain();
9487
9360
  return new ASTWithSource(ast, input, location, absoluteOffset, this.errors);
9488
9361
  }
9489
9362
  parseBinding(input, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
@@ -9507,31 +9380,12 @@ class Parser$1 {
9507
9380
  this.errors.push(new ParserError(message, input, errLocation, ctxLocation));
9508
9381
  }
9509
9382
  _parseBindingAst(input, location, absoluteOffset, interpolationConfig) {
9510
- // Quotes expressions use 3rd-party expression language. We don't want to use
9511
- // our lexer or parser for that, so we check for that ahead of time.
9512
- const quote = this._parseQuote(input, location, absoluteOffset);
9513
- if (quote != null) {
9514
- return quote;
9515
- }
9516
9383
  this._checkNoInterpolation(input, location, interpolationConfig);
9517
9384
  const sourceToLex = this._stripComments(input);
9518
9385
  const tokens = this._lexer.tokenize(sourceToLex);
9519
- return new _ParseAST(input, location, absoluteOffset, tokens, false, this.errors, 0)
9386
+ return new _ParseAST(input, location, absoluteOffset, tokens, 0 /* None */, this.errors, 0)
9520
9387
  .parseChain();
9521
9388
  }
9522
- _parseQuote(input, location, absoluteOffset) {
9523
- if (input == null)
9524
- return null;
9525
- const prefixSeparatorIndex = input.indexOf(':');
9526
- if (prefixSeparatorIndex == -1)
9527
- return null;
9528
- const prefix = input.substring(0, prefixSeparatorIndex).trim();
9529
- if (!isIdentifier(prefix))
9530
- return null;
9531
- const uninterpretedExpression = input.substring(prefixSeparatorIndex + 1);
9532
- const span = new ParseSpan(0, input.length);
9533
- return new Quote(span, span.toAbsolute(absoluteOffset), prefix, uninterpretedExpression, location);
9534
- }
9535
9389
  /**
9536
9390
  * Parse microsyntax template expression and return a list of bindings or
9537
9391
  * parsing errors in case the given expression is invalid.
@@ -9560,7 +9414,7 @@ class Parser$1 {
9560
9414
  */
9561
9415
  parseTemplateBindings(templateKey, templateValue, templateUrl, absoluteKeyOffset, absoluteValueOffset) {
9562
9416
  const tokens = this._lexer.tokenize(templateValue);
9563
- const parser = new _ParseAST(templateValue, templateUrl, absoluteValueOffset, tokens, false /* parseAction */, this.errors, 0 /* relative offset */);
9417
+ const parser = new _ParseAST(templateValue, templateUrl, absoluteValueOffset, tokens, 0 /* None */, this.errors, 0 /* relative offset */);
9564
9418
  return parser.parseTemplateBindings({
9565
9419
  source: templateKey,
9566
9420
  span: new AbsoluteSourceSpan(absoluteKeyOffset, absoluteKeyOffset + templateKey.length),
@@ -9575,7 +9429,7 @@ class Parser$1 {
9575
9429
  const expressionText = expressions[i].text;
9576
9430
  const sourceToLex = this._stripComments(expressionText);
9577
9431
  const tokens = this._lexer.tokenize(sourceToLex);
9578
- const ast = new _ParseAST(input, location, absoluteOffset, tokens, false, this.errors, offsets[i])
9432
+ const ast = new _ParseAST(input, location, absoluteOffset, tokens, 0 /* None */, this.errors, offsets[i])
9579
9433
  .parseChain();
9580
9434
  expressionNodes.push(ast);
9581
9435
  }
@@ -9589,8 +9443,7 @@ class Parser$1 {
9589
9443
  parseInterpolationExpression(expression, location, absoluteOffset) {
9590
9444
  const sourceToLex = this._stripComments(expression);
9591
9445
  const tokens = this._lexer.tokenize(sourceToLex);
9592
- const ast = new _ParseAST(expression, location, absoluteOffset, tokens,
9593
- /* parseAction */ false, this.errors, 0)
9446
+ const ast = new _ParseAST(expression, location, absoluteOffset, tokens, 0 /* None */, this.errors, 0)
9594
9447
  .parseChain();
9595
9448
  const strings = ['', '']; // The prefix and suffix strings are both empty
9596
9449
  return this.createInterpolationAst(strings, [ast], expression, location, absoluteOffset);
@@ -9761,12 +9614,12 @@ var ParseContextFlags;
9761
9614
  ParseContextFlags[ParseContextFlags["Writable"] = 1] = "Writable";
9762
9615
  })(ParseContextFlags || (ParseContextFlags = {}));
9763
9616
  class _ParseAST {
9764
- constructor(input, location, absoluteOffset, tokens, parseAction, errors, offset) {
9617
+ constructor(input, location, absoluteOffset, tokens, parseFlags, errors, offset) {
9765
9618
  this.input = input;
9766
9619
  this.location = location;
9767
9620
  this.absoluteOffset = absoluteOffset;
9768
9621
  this.tokens = tokens;
9769
- this.parseAction = parseAction;
9622
+ this.parseFlags = parseFlags;
9770
9623
  this.errors = errors;
9771
9624
  this.offset = offset;
9772
9625
  this.rparensExpected = 0;
@@ -9943,7 +9796,7 @@ class _ParseAST {
9943
9796
  const expr = this.parsePipe();
9944
9797
  exprs.push(expr);
9945
9798
  if (this.consumeOptionalCharacter($SEMICOLON)) {
9946
- if (!this.parseAction) {
9799
+ if (!(this.parseFlags & 1 /* Action */)) {
9947
9800
  this.error('Binding expression cannot contain chained expression');
9948
9801
  }
9949
9802
  while (this.consumeOptionalCharacter($SEMICOLON)) {
@@ -9967,7 +9820,7 @@ class _ParseAST {
9967
9820
  const start = this.inputIndex;
9968
9821
  let result = this.parseExpression();
9969
9822
  if (this.consumeOptionalOperator('|')) {
9970
- if (this.parseAction) {
9823
+ if (this.parseFlags & 1 /* Action */) {
9971
9824
  this.error('Cannot have a pipe in an action expression');
9972
9825
  }
9973
9826
  do {
@@ -10309,7 +10162,7 @@ class _ParseAST {
10309
10162
  const nameSpan = this.sourceSpan(nameStart);
10310
10163
  let receiver;
10311
10164
  if (isSafe) {
10312
- if (this.consumeOptionalOperator('=')) {
10165
+ if (this.consumeOptionalAssignment()) {
10313
10166
  this.error('The \'?.\' operator cannot be used in the assignment');
10314
10167
  receiver = new EmptyExpr(this.span(start), this.sourceSpan(start));
10315
10168
  }
@@ -10318,8 +10171,8 @@ class _ParseAST {
10318
10171
  }
10319
10172
  }
10320
10173
  else {
10321
- if (this.consumeOptionalOperator('=')) {
10322
- if (!this.parseAction) {
10174
+ if (this.consumeOptionalAssignment()) {
10175
+ if (!(this.parseFlags & 1 /* Action */)) {
10323
10176
  this.error('Bindings cannot contain assignments');
10324
10177
  return new EmptyExpr(this.span(start), this.sourceSpan(start));
10325
10178
  }
@@ -10345,6 +10198,22 @@ class _ParseAST {
10345
10198
  return isSafe ? new SafeCall(span, sourceSpan, receiver, args, argumentSpan) :
10346
10199
  new Call(span, sourceSpan, receiver, args, argumentSpan);
10347
10200
  }
10201
+ consumeOptionalAssignment() {
10202
+ // When parsing assignment events (originating from two-way-binding aka banana-in-a-box syntax),
10203
+ // it is valid for the primary expression to be terminated by the non-null operator. This
10204
+ // primary expression is substituted as LHS of the assignment operator to achieve
10205
+ // two-way-binding, such that the LHS could be the non-null operator. The grammar doesn't
10206
+ // naturally allow for this syntax, so assignment events are parsed specially.
10207
+ if ((this.parseFlags & 2 /* AssignmentEvent */) && this.next.isOperator('!') &&
10208
+ this.peek(1).isOperator('=')) {
10209
+ // First skip over the ! operator.
10210
+ this.advance();
10211
+ // Then skip over the = operator, to fully consume the optional assignment operator.
10212
+ this.advance();
10213
+ return true;
10214
+ }
10215
+ return this.consumeOptionalOperator('=');
10216
+ }
10348
10217
  parseCallArguments() {
10349
10218
  if (this.next.isCharacter($RPAREN))
10350
10219
  return [];
@@ -15034,7 +14903,7 @@ class BindingParser {
15034
14903
  // Regardless, neither of these values are used in Ivy but are only here to satisfy the
15035
14904
  // function signature. This should likely be refactored in the future so that `sourceSpan`
15036
14905
  // isn't being used inaccurately.
15037
- this.parseEvent(propName, expression, sourceSpan, sourceSpan, [], targetEvents, sourceSpan);
14906
+ this.parseEvent(propName, expression, /* isAssignmentEvent */ false, sourceSpan, sourceSpan, [], targetEvents, sourceSpan);
15038
14907
  }
15039
14908
  else {
15040
14909
  this._reportError(`Value of the host listener "${propName}" needs to be a string representing an expression but got "${expression}" (${typeof expression})`, sourceSpan);
@@ -15271,7 +15140,7 @@ class BindingParser {
15271
15140
  return new BoundElementProperty(boundPropertyName, bindingType, securityContexts[0], boundProp.expression, unit, boundProp.sourceSpan, boundProp.keySpan, boundProp.valueSpan);
15272
15141
  }
15273
15142
  // TODO: keySpan should be required but was made optional to avoid changing VE parser.
15274
- parseEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
15143
+ parseEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
15275
15144
  if (name.length === 0) {
15276
15145
  this._reportError(`Event name is missing in binding`, sourceSpan);
15277
15146
  }
@@ -15280,21 +15149,21 @@ class BindingParser {
15280
15149
  if (keySpan !== undefined) {
15281
15150
  keySpan = moveParseSourceSpan(keySpan, new AbsoluteSourceSpan(keySpan.start.offset + 1, keySpan.end.offset));
15282
15151
  }
15283
- this._parseAnimationEvent(name, expression, sourceSpan, handlerSpan, targetEvents, keySpan);
15152
+ this._parseAnimationEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetEvents, keySpan);
15284
15153
  }
15285
15154
  else {
15286
- this._parseRegularEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan);
15155
+ this._parseRegularEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan);
15287
15156
  }
15288
15157
  }
15289
15158
  calcPossibleSecurityContexts(selector, propName, isAttribute) {
15290
15159
  const prop = this._schemaRegistry.getMappedPropName(propName);
15291
15160
  return calcPossibleSecurityContexts(this._schemaRegistry, selector, prop, isAttribute);
15292
15161
  }
15293
- _parseAnimationEvent(name, expression, sourceSpan, handlerSpan, targetEvents, keySpan) {
15162
+ _parseAnimationEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetEvents, keySpan) {
15294
15163
  const matches = splitAtPeriod(name, [name, '']);
15295
15164
  const eventName = matches[0];
15296
15165
  const phase = matches[1].toLowerCase();
15297
- const ast = this._parseAction(expression, handlerSpan);
15166
+ const ast = this._parseAction(expression, isAssignmentEvent, handlerSpan);
15298
15167
  targetEvents.push(new ParsedEvent(eventName, phase, 1 /* Animation */, ast, sourceSpan, handlerSpan, keySpan));
15299
15168
  if (eventName.length === 0) {
15300
15169
  this._reportError(`Animation event name is missing in binding`, sourceSpan);
@@ -15308,20 +15177,20 @@ class BindingParser {
15308
15177
  this._reportError(`The animation trigger output event (@${eventName}) is missing its phase value name (start or done are currently supported)`, sourceSpan);
15309
15178
  }
15310
15179
  }
15311
- _parseRegularEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
15180
+ _parseRegularEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
15312
15181
  // long format: 'target: eventName'
15313
15182
  const [target, eventName] = splitAtColon(name, [null, name]);
15314
- const ast = this._parseAction(expression, handlerSpan);
15183
+ const ast = this._parseAction(expression, isAssignmentEvent, handlerSpan);
15315
15184
  targetMatchableAttrs.push([name, ast.source]);
15316
15185
  targetEvents.push(new ParsedEvent(eventName, target, 0 /* Regular */, ast, sourceSpan, handlerSpan, keySpan));
15317
15186
  // Don't detect directives for event names for now,
15318
15187
  // so don't add the event name to the matchableAttrs
15319
15188
  }
15320
- _parseAction(value, sourceSpan) {
15189
+ _parseAction(value, isAssignmentEvent, sourceSpan) {
15321
15190
  const sourceInfo = (sourceSpan && sourceSpan.start || '(unknown').toString();
15322
15191
  const absoluteOffset = (sourceSpan && sourceSpan.start) ? sourceSpan.start.offset : 0;
15323
15192
  try {
15324
- const ast = this._exprParser.parseAction(value, sourceInfo, absoluteOffset, this._interpolationConfig);
15193
+ const ast = this._exprParser.parseAction(value, isAssignmentEvent, sourceInfo, absoluteOffset, this._interpolationConfig);
15325
15194
  if (ast) {
15326
15195
  this._reportExpressionParserErrors(ast.errors, sourceSpan);
15327
15196
  }
@@ -15783,7 +15652,7 @@ class HtmlAstToIvyAst {
15783
15652
  const events = [];
15784
15653
  const identifier = bindParts[IDENT_KW_IDX];
15785
15654
  const keySpan = createKeySpan(srcSpan, bindParts[KW_ON_IDX], identifier);
15786
- this.bindingParser.parseEvent(identifier, value, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
15655
+ this.bindingParser.parseEvent(identifier, value, /* isAssignmentEvent */ false, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
15787
15656
  addEvents(events, boundEvents);
15788
15657
  }
15789
15658
  else if (bindParts[KW_BINDON_IDX]) {
@@ -15827,7 +15696,7 @@ class HtmlAstToIvyAst {
15827
15696
  }
15828
15697
  else {
15829
15698
  const events = [];
15830
- this.bindingParser.parseEvent(identifier, value, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
15699
+ this.bindingParser.parseEvent(identifier, value, /* isAssignmentEvent */ false, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
15831
15700
  addEvents(events, boundEvents);
15832
15701
  }
15833
15702
  return true;
@@ -15865,7 +15734,7 @@ class HtmlAstToIvyAst {
15865
15734
  }
15866
15735
  parseAssignmentEvent(name, expression, sourceSpan, valueSpan, targetMatchableAttrs, boundEvents, keySpan) {
15867
15736
  const events = [];
15868
- this.bindingParser.parseEvent(`${name}Change`, `${expression}=$event`, sourceSpan, valueSpan || sourceSpan, targetMatchableAttrs, events, keySpan);
15737
+ this.bindingParser.parseEvent(`${name}Change`, `${expression} =$event`, /* isAssignmentEvent */ true, sourceSpan, valueSpan || sourceSpan, targetMatchableAttrs, events, keySpan);
15869
15738
  addEvents(events, boundEvents);
15870
15739
  }
15871
15740
  reportError(message, sourceSpan, level = ParseErrorLevel.ERROR) {
@@ -16653,7 +16522,8 @@ class I18nMetaVisitor {
16653
16522
  */
16654
16523
  _parseMetadata(meta) {
16655
16524
  return typeof meta === 'string' ? parseI18nMeta(meta) :
16656
- meta instanceof Message ? meta : {};
16525
+ meta instanceof Message ? meta :
16526
+ {};
16657
16527
  }
16658
16528
  /**
16659
16529
  * Generate (or restore) message id if not specified already.
@@ -16678,9 +16548,9 @@ class I18nMetaVisitor {
16678
16548
  // `packages/compiler/src/render3/view/template.ts`).
16679
16549
  // In that case we want to reuse the legacy message generated in the 1st pass (see
16680
16550
  // `setI18nRefs()`).
16681
- const previousMessage = meta instanceof Message ?
16682
- meta :
16683
- meta instanceof IcuPlaceholder ? meta.previousMessage : undefined;
16551
+ const previousMessage = meta instanceof Message ? meta :
16552
+ meta instanceof IcuPlaceholder ? meta.previousMessage :
16553
+ undefined;
16684
16554
  message.legacyIds = previousMessage ? previousMessage.legacyIds : [];
16685
16555
  }
16686
16556
  }
@@ -16725,10 +16595,14 @@ function i18nMetaToJSDoc(meta) {
16725
16595
  if (meta.description) {
16726
16596
  tags.push({ tagName: "desc" /* Desc */, text: meta.description });
16727
16597
  }
16598
+ else {
16599
+ // Suppress the JSCompiler warning that a `@desc` was not given for this message.
16600
+ tags.push({ tagName: "suppress" /* Suppress */, text: '{msgDescriptions}' });
16601
+ }
16728
16602
  if (meta.meaning) {
16729
16603
  tags.push({ tagName: "meaning" /* Meaning */, text: meta.meaning });
16730
16604
  }
16731
- return tags.length == 0 ? null : jsDocComment(tags);
16605
+ return jsDocComment(tags);
16732
16606
  }
16733
16607
 
16734
16608
  /** Closure uses `goog.getMsg(message)` to lookup translations */
@@ -16746,10 +16620,7 @@ function createGoogleGetMsgStatements(variable$1, message, closureVar, params) {
16746
16620
  // const MSG_... = goog.getMsg(..);
16747
16621
  // I18N_X = MSG_...;
16748
16622
  const googGetMsgStmt = closureVar.set(variable(GOOG_GET_MSG).callFn(args)).toConstDecl();
16749
- const metaComment = i18nMetaToJSDoc(message);
16750
- if (metaComment !== null) {
16751
- googGetMsgStmt.addLeadingComment(metaComment);
16752
- }
16623
+ googGetMsgStmt.addLeadingComment(i18nMetaToJSDoc(message));
16753
16624
  const i18nAssignmentStmt = new ExpressionStatement(variable$1.set(closureVar));
16754
16625
  return [googGetMsgStmt, i18nAssignmentStmt];
16755
16626
  }
@@ -16910,7 +16781,7 @@ const NG_PROJECT_AS_ATTR_NAME = 'ngProjectAs';
16910
16781
  // Global symbols available only inside event bindings.
16911
16782
  const EVENT_BINDING_SCOPE_GLOBALS = new Set(['$event']);
16912
16783
  // List of supported global targets for event listeners
16913
- const GLOBAL_TARGET_RESOLVERS = new Map([['window', Identifiers$1.resolveWindow], ['document', Identifiers$1.resolveDocument], ['body', Identifiers$1.resolveBody]]);
16784
+ const GLOBAL_TARGET_RESOLVERS = new Map([['window', Identifiers.resolveWindow], ['document', Identifiers.resolveDocument], ['body', Identifiers.resolveBody]]);
16914
16785
  const LEADING_TRIVIA_CHARS = [' ', '\n', '\r', '\t'];
16915
16786
  // if (rf & flags) { .. }
16916
16787
  function renderFlagCheckIfStmt(flags, statements) {
@@ -16927,7 +16798,7 @@ function prepareEventListenerParameters(eventAst, handlerName = null, scope = nu
16927
16798
  const implicitReceiverExpr = (scope === null || scope.bindingLevel === 0) ?
16928
16799
  variable(CONTEXT_NAME) :
16929
16800
  scope.getOrCreateSharedContextVar(0);
16930
- const bindingStatements = convertActionBinding(scope, implicitReceiverExpr, handler, 'b', () => error('Unexpected interpolation'), eventAst.handlerSpan, implicitReceiverAccesses, EVENT_BINDING_SCOPE_GLOBALS);
16801
+ const bindingStatements = convertActionBinding(scope, implicitReceiverExpr, handler, 'b', eventAst.handlerSpan, implicitReceiverAccesses, EVENT_BINDING_SCOPE_GLOBALS);
16931
16802
  const statements = [];
16932
16803
  if (scope) {
16933
16804
  // `variableDeclarations` needs to run first, because
@@ -17022,12 +16893,12 @@ class TemplateDefinitionBuilder {
17022
16893
  this.fileBasedI18nSuffix = relativeContextFilePath.replace(/[^A-Za-z0-9]/g, '_') + '_';
17023
16894
  this._valueConverter = new ValueConverter(constantPool, () => this.allocateDataSlot(), (numSlots) => this.allocatePureFunctionSlots(numSlots), (name, localName, slot, value) => {
17024
16895
  this._bindingScope.set(this.level, localName, value);
17025
- this.creationInstruction(null, Identifiers$1.pipe, [literal(slot), literal(name)]);
16896
+ this.creationInstruction(null, Identifiers.pipe, [literal(slot), literal(name)]);
17026
16897
  });
17027
16898
  }
17028
16899
  buildTemplateFunction(nodes, variables, ngContentSelectorsOffset = 0, i18n) {
17029
16900
  this._ngContentSelectorsOffset = ngContentSelectorsOffset;
17030
- if (this._namespace !== Identifiers$1.namespaceHTML) {
16901
+ if (this._namespace !== Identifiers.namespaceHTML) {
17031
16902
  this.creationInstruction(null, this._namespace);
17032
16903
  }
17033
16904
  // Create variable bindings
@@ -17073,7 +16944,7 @@ class TemplateDefinitionBuilder {
17073
16944
  // Since we accumulate ngContent selectors while processing template elements,
17074
16945
  // we *prepend* `projectionDef` to creation instructions block, to put it before
17075
16946
  // any `projection` instructions
17076
- this.creationInstruction(null, Identifiers$1.projectionDef, parameters, /* prepend */ true);
16947
+ this.creationInstruction(null, Identifiers.projectionDef, parameters, /* prepend */ true);
17077
16948
  }
17078
16949
  if (initI18nContext) {
17079
16950
  this.i18nEnd(null, selfClosingI18nInstruction);
@@ -17234,7 +17105,7 @@ class TemplateDefinitionBuilder {
17234
17105
  if (Object.keys(icuMapping).length) {
17235
17106
  args.push(mapLiteral(icuMapping, true));
17236
17107
  }
17237
- return instruction(null, Identifiers$1.i18nPostprocess, args);
17108
+ return instruction(null, Identifiers.i18nPostprocess, args);
17238
17109
  };
17239
17110
  }
17240
17111
  this.i18nTranslate(meta, params, context.ref, transformFn);
@@ -17253,7 +17124,7 @@ class TemplateDefinitionBuilder {
17253
17124
  // into i18nStart call for top level i18n context
17254
17125
  params.push(literal(id));
17255
17126
  }
17256
- this.creationInstruction(span, selfClosing ? Identifiers$1.i18n : Identifiers$1.i18nStart, params);
17127
+ this.creationInstruction(span, selfClosing ? Identifiers.i18n : Identifiers.i18nStart, params);
17257
17128
  }
17258
17129
  i18nEnd(span = null, selfClosing) {
17259
17130
  if (!this.i18n) {
@@ -17276,11 +17147,11 @@ class TemplateDefinitionBuilder {
17276
17147
  // for i18n block, advance to the most recent element index (by taking the current number of
17277
17148
  // elements and subtracting one) before invoking `i18nExp` instructions, to make sure the
17278
17149
  // necessary lifecycle hooks of components/directives are properly flushed.
17279
- this.updateInstructionChainWithAdvance(this.getConstCount() - 1, Identifiers$1.i18nExp, chainBindings);
17280
- this.updateInstruction(span, Identifiers$1.i18nApply, [literal(index)]);
17150
+ this.updateInstructionChainWithAdvance(this.getConstCount() - 1, Identifiers.i18nExp, chainBindings);
17151
+ this.updateInstruction(span, Identifiers.i18nApply, [literal(index)]);
17281
17152
  }
17282
17153
  if (!selfClosing) {
17283
- this.creationInstruction(span, Identifiers$1.i18nEnd);
17154
+ this.creationInstruction(span, Identifiers.i18nEnd);
17284
17155
  }
17285
17156
  this.i18n = null; // reset local i18n context
17286
17157
  }
@@ -17306,25 +17177,25 @@ class TemplateDefinitionBuilder {
17306
17177
  }
17307
17178
  });
17308
17179
  if (bindings.length > 0) {
17309
- this.updateInstructionChainWithAdvance(nodeIndex, Identifiers$1.i18nExp, bindings);
17180
+ this.updateInstructionChainWithAdvance(nodeIndex, Identifiers.i18nExp, bindings);
17310
17181
  }
17311
17182
  if (i18nAttrArgs.length > 0) {
17312
17183
  const index = literal(this.allocateDataSlot());
17313
17184
  const constIndex = this.addToConsts(literalArr(i18nAttrArgs));
17314
- this.creationInstruction(sourceSpan, Identifiers$1.i18nAttributes, [index, constIndex]);
17185
+ this.creationInstruction(sourceSpan, Identifiers.i18nAttributes, [index, constIndex]);
17315
17186
  if (hasBindings) {
17316
- this.updateInstruction(sourceSpan, Identifiers$1.i18nApply, [index]);
17187
+ this.updateInstruction(sourceSpan, Identifiers.i18nApply, [index]);
17317
17188
  }
17318
17189
  }
17319
17190
  }
17320
17191
  getNamespaceInstruction(namespaceKey) {
17321
17192
  switch (namespaceKey) {
17322
17193
  case 'math':
17323
- return Identifiers$1.namespaceMathML;
17194
+ return Identifiers.namespaceMathML;
17324
17195
  case 'svg':
17325
- return Identifiers$1.namespaceSVG;
17196
+ return Identifiers.namespaceSVG;
17326
17197
  default:
17327
- return Identifiers$1.namespaceHTML;
17198
+ return Identifiers.namespaceHTML;
17328
17199
  }
17329
17200
  }
17330
17201
  addNamespaceInstruction(nsInstruction, element) {
@@ -17351,7 +17222,7 @@ class TemplateDefinitionBuilder {
17351
17222
  else if (projectionSlotIdx !== 0) {
17352
17223
  parameters.push(literal(projectionSlotIdx));
17353
17224
  }
17354
- this.creationInstruction(ngContent.sourceSpan, Identifiers$1.projection, parameters);
17225
+ this.creationInstruction(ngContent.sourceSpan, Identifiers.projection, parameters);
17355
17226
  if (this.i18n) {
17356
17227
  this.i18n.appendProjection(ngContent.i18n, slot);
17357
17228
  }
@@ -17423,12 +17294,12 @@ class TemplateDefinitionBuilder {
17423
17294
  element.outputs.length === 0 && boundI18nAttrs.length === 0 && !hasChildren;
17424
17295
  const createSelfClosingI18nInstruction = !createSelfClosingInstruction && hasTextChildrenOnly(element.children);
17425
17296
  if (createSelfClosingInstruction) {
17426
- this.creationInstruction(element.sourceSpan, isNgContainer$1 ? Identifiers$1.elementContainer : Identifiers$1.element, trimTrailingNulls(parameters));
17297
+ this.creationInstruction(element.sourceSpan, isNgContainer$1 ? Identifiers.elementContainer : Identifiers.element, trimTrailingNulls(parameters));
17427
17298
  }
17428
17299
  else {
17429
- this.creationInstruction(element.startSourceSpan, isNgContainer$1 ? Identifiers$1.elementContainerStart : Identifiers$1.elementStart, trimTrailingNulls(parameters));
17300
+ this.creationInstruction(element.startSourceSpan, isNgContainer$1 ? Identifiers.elementContainerStart : Identifiers.elementStart, trimTrailingNulls(parameters));
17430
17301
  if (isNonBindableMode) {
17431
- this.creationInstruction(element.startSourceSpan, Identifiers$1.disableBindings);
17302
+ this.creationInstruction(element.startSourceSpan, Identifiers.disableBindings);
17432
17303
  }
17433
17304
  if (boundI18nAttrs.length > 0) {
17434
17305
  this.i18nAttributesInstruction(elementIndex, boundI18nAttrs, element.startSourceSpan ?? element.sourceSpan);
@@ -17439,7 +17310,7 @@ class TemplateDefinitionBuilder {
17439
17310
  sourceSpan: outputAst.sourceSpan,
17440
17311
  params: this.prepareListenerParameter(element.name, outputAst, elementIndex)
17441
17312
  }));
17442
- this.creationInstructionChain(Identifiers$1.listener, listeners);
17313
+ this.creationInstructionChain(Identifiers.listener, listeners);
17443
17314
  }
17444
17315
  // Note: it's important to keep i18n/i18nStart instructions after i18nAttributes and
17445
17316
  // listeners, to make sure i18nAttributes instruction targets current element at runtime.
@@ -17545,7 +17416,7 @@ class TemplateDefinitionBuilder {
17545
17416
  }
17546
17417
  else {
17547
17418
  // class prop
17548
- this.updateInstructionWithAdvance(elementIndex, input.sourceSpan, Identifiers$1.classProp, () => {
17419
+ this.updateInstructionWithAdvance(elementIndex, input.sourceSpan, Identifiers.classProp, () => {
17549
17420
  return [
17550
17421
  literal(elementIndex), literal(attrName), this.convertPropertyBinding(value),
17551
17422
  ...params
@@ -17556,10 +17427,10 @@ class TemplateDefinitionBuilder {
17556
17427
  }
17557
17428
  });
17558
17429
  if (propertyBindings.length > 0) {
17559
- this.updateInstructionChainWithAdvance(elementIndex, Identifiers$1.property, propertyBindings);
17430
+ this.updateInstructionChainWithAdvance(elementIndex, Identifiers.property, propertyBindings);
17560
17431
  }
17561
17432
  if (attributeBindings.length > 0) {
17562
- this.updateInstructionChainWithAdvance(elementIndex, Identifiers$1.attribute, attributeBindings);
17433
+ this.updateInstructionChainWithAdvance(elementIndex, Identifiers.attribute, attributeBindings);
17563
17434
  }
17564
17435
  // Traverse element child nodes
17565
17436
  visitAll$1(this, element.children);
@@ -17573,9 +17444,9 @@ class TemplateDefinitionBuilder {
17573
17444
  this.i18nEnd(span, createSelfClosingI18nInstruction);
17574
17445
  }
17575
17446
  if (isNonBindableMode) {
17576
- this.creationInstruction(span, Identifiers$1.enableBindings);
17447
+ this.creationInstruction(span, Identifiers.enableBindings);
17577
17448
  }
17578
- this.creationInstruction(span, isNgContainer$1 ? Identifiers$1.elementContainerEnd : Identifiers$1.elementEnd);
17449
+ this.creationInstruction(span, isNgContainer$1 ? Identifiers.elementContainerEnd : Identifiers.elementEnd);
17579
17450
  }
17580
17451
  }
17581
17452
  visitTemplate(template) {
@@ -17601,7 +17472,7 @@ class TemplateDefinitionBuilder {
17601
17472
  if (template.references && template.references.length) {
17602
17473
  const refs = this.prepareRefsArray(template.references);
17603
17474
  parameters.push(this.addToConsts(refs));
17604
- parameters.push(importExpr(Identifiers$1.templateRefExtractor));
17475
+ parameters.push(importExpr(Identifiers.templateRefExtractor));
17605
17476
  }
17606
17477
  // Create the template function
17607
17478
  const templateVisitor = new TemplateDefinitionBuilder(this.constantPool, this._bindingScope, this.level + 1, contextName, this.i18n, templateIndex, templateName, this._namespace, this.fileBasedI18nSuffix, this.i18nUseExternalIds, this._constants);
@@ -17617,7 +17488,7 @@ class TemplateDefinitionBuilder {
17617
17488
  }
17618
17489
  });
17619
17490
  // e.g. template(1, MyComp_Template_1)
17620
- this.creationInstruction(template.sourceSpan, Identifiers$1.templateCreate, () => {
17491
+ this.creationInstruction(template.sourceSpan, Identifiers.templateCreate, () => {
17621
17492
  parameters.splice(2, 0, literal(templateVisitor.getConstCount()), literal(templateVisitor.getVarCount()));
17622
17493
  return trimTrailingNulls(parameters);
17623
17494
  });
@@ -17643,7 +17514,7 @@ class TemplateDefinitionBuilder {
17643
17514
  sourceSpan: outputAst.sourceSpan,
17644
17515
  params: this.prepareListenerParameter('ng_template', outputAst, templateIndex)
17645
17516
  }));
17646
- this.creationInstructionChain(Identifiers$1.listener, listeners);
17517
+ this.creationInstructionChain(Identifiers.listener, listeners);
17647
17518
  }
17648
17519
  }
17649
17520
  }
@@ -17658,7 +17529,7 @@ class TemplateDefinitionBuilder {
17658
17529
  return;
17659
17530
  }
17660
17531
  const nodeIndex = this.allocateDataSlot();
17661
- this.creationInstruction(text.sourceSpan, Identifiers$1.text, [literal(nodeIndex)]);
17532
+ this.creationInstruction(text.sourceSpan, Identifiers.text, [literal(nodeIndex)]);
17662
17533
  const value = text.value.visit(this._valueConverter);
17663
17534
  this.allocateBindingSlots(value);
17664
17535
  if (value instanceof Interpolation) {
@@ -17673,7 +17544,7 @@ class TemplateDefinitionBuilder {
17673
17544
  // block, we exclude this text element from instructions set,
17674
17545
  // since it will be captured in i18n content and processed at runtime
17675
17546
  if (!this.i18n) {
17676
- this.creationInstruction(text.sourceSpan, Identifiers$1.text, [literal(this.allocateDataSlot()), literal(text.value)]);
17547
+ this.creationInstruction(text.sourceSpan, Identifiers.text, [literal(this.allocateDataSlot()), literal(text.value)]);
17677
17548
  }
17678
17549
  }
17679
17550
  visitIcu(icu) {
@@ -17698,7 +17569,7 @@ class TemplateDefinitionBuilder {
17698
17569
  const transformFn = (raw) => {
17699
17570
  const params = { ...vars, ...placeholders };
17700
17571
  const formatted = i18nFormatPlaceholderNames(params, /* useCamelCase */ false);
17701
- return instruction(null, Identifiers$1.i18nPostprocess, [raw, mapLiteral(formatted, true)]);
17572
+ return instruction(null, Identifiers.i18nPostprocess, [raw, mapLiteral(formatted, true)]);
17702
17573
  };
17703
17574
  // in case the whole i18n message is a single ICU - we do not need to
17704
17575
  // create a separate top-level translation, we can use the root ref instead
@@ -17765,7 +17636,7 @@ class TemplateDefinitionBuilder {
17765
17636
  }
17766
17637
  });
17767
17638
  if (propertyBindings.length > 0) {
17768
- this.updateInstructionChainWithAdvance(templateIndex, Identifiers$1.property, propertyBindings);
17639
+ this.updateInstructionChainWithAdvance(templateIndex, Identifiers.property, propertyBindings);
17769
17640
  }
17770
17641
  }
17771
17642
  // Bindings must only be resolved after all local refs have been visited, so all
@@ -17841,7 +17712,7 @@ class TemplateDefinitionBuilder {
17841
17712
  if (delta < 1) {
17842
17713
  throw new Error('advance instruction can only go forwards');
17843
17714
  }
17844
- this.instructionFn(this._updateCodeFns, span, Identifiers$1.advance, [literal(delta)]);
17715
+ this.instructionFn(this._updateCodeFns, span, Identifiers.advance, [literal(delta)]);
17845
17716
  this._currentIndex = nodeIndex;
17846
17717
  }
17847
17718
  }
@@ -17866,7 +17737,7 @@ class TemplateDefinitionBuilder {
17866
17737
  this._bindingScope.getOrCreateSharedContextVar(0);
17867
17738
  }
17868
17739
  convertPropertyBinding(value) {
17869
- const convertedPropertyBinding = convertPropertyBinding(this, this.getImplicitReceiverExpr(), value, this.bindingContext(), () => error('Unexpected interpolation'));
17740
+ const convertedPropertyBinding = convertPropertyBinding(this, this.getImplicitReceiverExpr(), value, this.bindingContext());
17870
17741
  const valExpr = convertedPropertyBinding.currValExpr;
17871
17742
  this._tempVariables.push(...convertedPropertyBinding.stmts);
17872
17743
  return valExpr;
@@ -18023,7 +17894,7 @@ class TemplateDefinitionBuilder {
18023
17894
  // e.g. nextContext(2);
18024
17895
  const nextContextStmt = relativeLevel > 0 ? [generateNextContextExpr(relativeLevel).toStmt()] : [];
18025
17896
  // e.g. const $foo$ = reference(1);
18026
- const refExpr = lhs.set(importExpr(Identifiers$1.reference).callFn([literal(slot)]));
17897
+ const refExpr = lhs.set(importExpr(Identifiers.reference).callFn([literal(slot)]));
18027
17898
  return nextContextStmt.concat(refExpr.toConstDecl());
18028
17899
  }, true);
18029
17900
  return [reference.name, reference.value];
@@ -18101,22 +17972,22 @@ class ValueConverter extends AstMemoryEfficientTransformer {
18101
17972
  }
18102
17973
  }
18103
17974
  // Pipes always have at least one parameter, the value they operate on
18104
- const pipeBindingIdentifiers = [Identifiers$1.pipeBind1, Identifiers$1.pipeBind2, Identifiers$1.pipeBind3, Identifiers$1.pipeBind4];
17975
+ const pipeBindingIdentifiers = [Identifiers.pipeBind1, Identifiers.pipeBind2, Identifiers.pipeBind3, Identifiers.pipeBind4];
18105
17976
  function pipeBindingCallInfo(args) {
18106
17977
  const identifier = pipeBindingIdentifiers[args.length];
18107
17978
  return {
18108
- identifier: identifier || Identifiers$1.pipeBindV,
17979
+ identifier: identifier || Identifiers.pipeBindV,
18109
17980
  isVarLength: !identifier,
18110
17981
  };
18111
17982
  }
18112
17983
  const pureFunctionIdentifiers = [
18113
- Identifiers$1.pureFunction0, Identifiers$1.pureFunction1, Identifiers$1.pureFunction2, Identifiers$1.pureFunction3, Identifiers$1.pureFunction4,
18114
- Identifiers$1.pureFunction5, Identifiers$1.pureFunction6, Identifiers$1.pureFunction7, Identifiers$1.pureFunction8
17984
+ Identifiers.pureFunction0, Identifiers.pureFunction1, Identifiers.pureFunction2, Identifiers.pureFunction3, Identifiers.pureFunction4,
17985
+ Identifiers.pureFunction5, Identifiers.pureFunction6, Identifiers.pureFunction7, Identifiers.pureFunction8
18115
17986
  ];
18116
17987
  function pureFunctionCallInfo(args) {
18117
17988
  const identifier = pureFunctionIdentifiers[args.length];
18118
17989
  return {
18119
- identifier: identifier || Identifiers$1.pureFunctionV,
17990
+ identifier: identifier || Identifiers.pureFunctionV,
18120
17991
  isVarLength: !identifier,
18121
17992
  };
18122
17993
  }
@@ -18125,7 +17996,7 @@ function instruction(span, reference, params) {
18125
17996
  }
18126
17997
  // e.g. x(2);
18127
17998
  function generateNextContextExpr(relativeLevelDiff) {
18128
- return importExpr(Identifiers$1.nextContext)
17999
+ return importExpr(Identifiers.nextContext)
18129
18000
  .callFn(relativeLevelDiff > 1 ? [literal(relativeLevelDiff)] : []);
18130
18001
  }
18131
18002
  function getLiteralFactory(constantPool, literal$1, allocateSlots) {
@@ -18327,7 +18198,7 @@ class BindingScope {
18327
18198
  restoreViewStatement() {
18328
18199
  const statements = [];
18329
18200
  if (this.restoreViewVariable) {
18330
- const restoreCall = instruction(null, Identifiers$1.restoreView, [this.restoreViewVariable]);
18201
+ const restoreCall = instruction(null, Identifiers.restoreView, [this.restoreViewVariable]);
18331
18202
  // Either `const restoredCtx = restoreView($state$);` or `restoreView($state$);`
18332
18203
  // depending on whether it is being used.
18333
18204
  statements.push(this.usesRestoredViewContext ?
@@ -18339,7 +18210,7 @@ class BindingScope {
18339
18210
  viewSnapshotStatements() {
18340
18211
  // const $state$ = getCurrentView();
18341
18212
  return this.restoreViewVariable ?
18342
- [this.restoreViewVariable.set(instruction(null, Identifiers$1.getCurrentView, [])).toConstDecl()] :
18213
+ [this.restoreViewVariable.set(instruction(null, Identifiers.getCurrentView, [])).toConstDecl()] :
18343
18214
  [];
18344
18215
  }
18345
18216
  isListenerScope() {
@@ -18407,25 +18278,25 @@ function getNgProjectAsLiteral(attribute) {
18407
18278
  function getPropertyInterpolationExpression(interpolation) {
18408
18279
  switch (getInterpolationArgsLength(interpolation)) {
18409
18280
  case 1:
18410
- return Identifiers$1.propertyInterpolate;
18281
+ return Identifiers.propertyInterpolate;
18411
18282
  case 3:
18412
- return Identifiers$1.propertyInterpolate1;
18283
+ return Identifiers.propertyInterpolate1;
18413
18284
  case 5:
18414
- return Identifiers$1.propertyInterpolate2;
18285
+ return Identifiers.propertyInterpolate2;
18415
18286
  case 7:
18416
- return Identifiers$1.propertyInterpolate3;
18287
+ return Identifiers.propertyInterpolate3;
18417
18288
  case 9:
18418
- return Identifiers$1.propertyInterpolate4;
18289
+ return Identifiers.propertyInterpolate4;
18419
18290
  case 11:
18420
- return Identifiers$1.propertyInterpolate5;
18291
+ return Identifiers.propertyInterpolate5;
18421
18292
  case 13:
18422
- return Identifiers$1.propertyInterpolate6;
18293
+ return Identifiers.propertyInterpolate6;
18423
18294
  case 15:
18424
- return Identifiers$1.propertyInterpolate7;
18295
+ return Identifiers.propertyInterpolate7;
18425
18296
  case 17:
18426
- return Identifiers$1.propertyInterpolate8;
18297
+ return Identifiers.propertyInterpolate8;
18427
18298
  default:
18428
- return Identifiers$1.propertyInterpolateV;
18299
+ return Identifiers.propertyInterpolateV;
18429
18300
  }
18430
18301
  }
18431
18302
  /**
@@ -18435,23 +18306,23 @@ function getPropertyInterpolationExpression(interpolation) {
18435
18306
  function getAttributeInterpolationExpression(interpolation) {
18436
18307
  switch (getInterpolationArgsLength(interpolation)) {
18437
18308
  case 3:
18438
- return Identifiers$1.attributeInterpolate1;
18309
+ return Identifiers.attributeInterpolate1;
18439
18310
  case 5:
18440
- return Identifiers$1.attributeInterpolate2;
18311
+ return Identifiers.attributeInterpolate2;
18441
18312
  case 7:
18442
- return Identifiers$1.attributeInterpolate3;
18313
+ return Identifiers.attributeInterpolate3;
18443
18314
  case 9:
18444
- return Identifiers$1.attributeInterpolate4;
18315
+ return Identifiers.attributeInterpolate4;
18445
18316
  case 11:
18446
- return Identifiers$1.attributeInterpolate5;
18317
+ return Identifiers.attributeInterpolate5;
18447
18318
  case 13:
18448
- return Identifiers$1.attributeInterpolate6;
18319
+ return Identifiers.attributeInterpolate6;
18449
18320
  case 15:
18450
- return Identifiers$1.attributeInterpolate7;
18321
+ return Identifiers.attributeInterpolate7;
18451
18322
  case 17:
18452
- return Identifiers$1.attributeInterpolate8;
18323
+ return Identifiers.attributeInterpolate8;
18453
18324
  default:
18454
- return Identifiers$1.attributeInterpolateV;
18325
+ return Identifiers.attributeInterpolateV;
18455
18326
  }
18456
18327
  }
18457
18328
  /**
@@ -18461,25 +18332,25 @@ function getAttributeInterpolationExpression(interpolation) {
18461
18332
  function getTextInterpolationExpression(interpolation) {
18462
18333
  switch (getInterpolationArgsLength(interpolation)) {
18463
18334
  case 1:
18464
- return Identifiers$1.textInterpolate;
18335
+ return Identifiers.textInterpolate;
18465
18336
  case 3:
18466
- return Identifiers$1.textInterpolate1;
18337
+ return Identifiers.textInterpolate1;
18467
18338
  case 5:
18468
- return Identifiers$1.textInterpolate2;
18339
+ return Identifiers.textInterpolate2;
18469
18340
  case 7:
18470
- return Identifiers$1.textInterpolate3;
18341
+ return Identifiers.textInterpolate3;
18471
18342
  case 9:
18472
- return Identifiers$1.textInterpolate4;
18343
+ return Identifiers.textInterpolate4;
18473
18344
  case 11:
18474
- return Identifiers$1.textInterpolate5;
18345
+ return Identifiers.textInterpolate5;
18475
18346
  case 13:
18476
- return Identifiers$1.textInterpolate6;
18347
+ return Identifiers.textInterpolate6;
18477
18348
  case 15:
18478
- return Identifiers$1.textInterpolate7;
18349
+ return Identifiers.textInterpolate7;
18479
18350
  case 17:
18480
- return Identifiers$1.textInterpolate8;
18351
+ return Identifiers.textInterpolate8;
18481
18352
  default:
18482
- return Identifiers$1.textInterpolateV;
18353
+ return Identifiers.textInterpolateV;
18483
18354
  }
18484
18355
  }
18485
18356
  /**
@@ -18570,18 +18441,18 @@ function makeBindingParser(interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
18570
18441
  function resolveSanitizationFn(context, isAttribute) {
18571
18442
  switch (context) {
18572
18443
  case SecurityContext.HTML:
18573
- return importExpr(Identifiers$1.sanitizeHtml);
18444
+ return importExpr(Identifiers.sanitizeHtml);
18574
18445
  case SecurityContext.SCRIPT:
18575
- return importExpr(Identifiers$1.sanitizeScript);
18446
+ return importExpr(Identifiers.sanitizeScript);
18576
18447
  case SecurityContext.STYLE:
18577
18448
  // the compiler does not fill in an instruction for [style.prop?] binding
18578
18449
  // values because the style algorithm knows internally what props are subject
18579
18450
  // to sanitization (only [attr.style] values are explicitly sanitized)
18580
- return isAttribute ? importExpr(Identifiers$1.sanitizeStyle) : null;
18451
+ return isAttribute ? importExpr(Identifiers.sanitizeStyle) : null;
18581
18452
  case SecurityContext.URL:
18582
- return importExpr(Identifiers$1.sanitizeUrl);
18453
+ return importExpr(Identifiers.sanitizeUrl);
18583
18454
  case SecurityContext.RESOURCE_URL:
18584
- return importExpr(Identifiers$1.sanitizeResourceUrl);
18455
+ return importExpr(Identifiers.sanitizeResourceUrl);
18585
18456
  default:
18586
18457
  return null;
18587
18458
  }
@@ -18591,10 +18462,10 @@ function trustedConstAttribute(tagName, attr) {
18591
18462
  if (isTrustedTypesSink(tagName, attr.name)) {
18592
18463
  switch (elementRegistry.securityContext(tagName, attr.name, /* isAttribute */ true)) {
18593
18464
  case SecurityContext.HTML:
18594
- return taggedTemplate(importExpr(Identifiers$1.trustConstantHtml), new TemplateLiteral([new TemplateLiteralElement(attr.value)], []), undefined, attr.valueSpan);
18465
+ return taggedTemplate(importExpr(Identifiers.trustConstantHtml), new TemplateLiteral([new TemplateLiteralElement(attr.value)], []), undefined, attr.valueSpan);
18595
18466
  // NB: no SecurityContext.SCRIPT here, as the corresponding tags are stripped by the compiler.
18596
18467
  case SecurityContext.RESOURCE_URL:
18597
- return taggedTemplate(importExpr(Identifiers$1.trustConstantResourceUrl), new TemplateLiteral([new TemplateLiteralElement(attr.value)], []), undefined, attr.valueSpan);
18468
+ return taggedTemplate(importExpr(Identifiers.trustConstantResourceUrl), new TemplateLiteral([new TemplateLiteralElement(attr.value)], []), undefined, attr.valueSpan);
18598
18469
  default:
18599
18470
  return value;
18600
18471
  }
@@ -18723,16 +18594,16 @@ function addFeatures(definitionMap, meta) {
18723
18594
  if (viewProviders) {
18724
18595
  args.push(viewProviders);
18725
18596
  }
18726
- features.push(importExpr(Identifiers$1.ProvidersFeature).callFn(args));
18597
+ features.push(importExpr(Identifiers.ProvidersFeature).callFn(args));
18727
18598
  }
18728
18599
  if (meta.usesInheritance) {
18729
- features.push(importExpr(Identifiers$1.InheritDefinitionFeature));
18600
+ features.push(importExpr(Identifiers.InheritDefinitionFeature));
18730
18601
  }
18731
18602
  if (meta.fullInheritance) {
18732
- features.push(importExpr(Identifiers$1.CopyDefinitionFeature));
18603
+ features.push(importExpr(Identifiers.CopyDefinitionFeature));
18733
18604
  }
18734
18605
  if (meta.lifecycle.usesOnChanges) {
18735
- features.push(importExpr(Identifiers$1.NgOnChangesFeature));
18606
+ features.push(importExpr(Identifiers.NgOnChangesFeature));
18736
18607
  }
18737
18608
  if (features.length) {
18738
18609
  definitionMap.set('features', literalArr(features));
@@ -18744,7 +18615,7 @@ function addFeatures(definitionMap, meta) {
18744
18615
  function compileDirectiveFromMetadata(meta, constantPool, bindingParser) {
18745
18616
  const definitionMap = baseDirectiveFields(meta, constantPool, bindingParser);
18746
18617
  addFeatures(definitionMap, meta);
18747
- const expression = importExpr(Identifiers$1.defineDirective).callFn([definitionMap.toLiteralMap()], undefined, true);
18618
+ const expression = importExpr(Identifiers.defineDirective).callFn([definitionMap.toLiteralMap()], undefined, true);
18748
18619
  const type = createDirectiveType(meta);
18749
18620
  return { expression, type, statements: [] };
18750
18621
  }
@@ -18770,7 +18641,7 @@ function compileComponentFromMetadata(meta, constantPool, bindingParser) {
18770
18641
  const templateName = templateTypeName ? `${templateTypeName}_Template` : null;
18771
18642
  const changeDetection = meta.changeDetection;
18772
18643
  const template = meta.template;
18773
- const templateBuilder = new TemplateDefinitionBuilder(constantPool, BindingScope.createRootScope(), 0, templateTypeName, null, null, templateName, Identifiers$1.namespaceHTML, meta.relativeContextFilePath, meta.i18nUseExternalIds);
18644
+ const templateBuilder = new TemplateDefinitionBuilder(constantPool, BindingScope.createRootScope(), 0, templateTypeName, null, null, templateName, Identifiers.namespaceHTML, meta.relativeContextFilePath, meta.i18nUseExternalIds);
18774
18645
  const templateFunctionExpression = templateBuilder.buildTemplateFunction(template.nodes, []);
18775
18646
  // We need to provide this so that dynamically generated components know what
18776
18647
  // projected content blocks to pass through to the component when it is instantiated.
@@ -18836,7 +18707,7 @@ function compileComponentFromMetadata(meta, constantPool, bindingParser) {
18836
18707
  if (changeDetection != null && changeDetection !== ChangeDetectionStrategy.Default) {
18837
18708
  definitionMap.set('changeDetection', literal(changeDetection));
18838
18709
  }
18839
- const expression = importExpr(Identifiers$1.defineComponent).callFn([definitionMap.toLiteralMap()], undefined, true);
18710
+ const expression = importExpr(Identifiers.defineComponent).callFn([definitionMap.toLiteralMap()], undefined, true);
18840
18711
  const type = createComponentType(meta);
18841
18712
  return { expression, type, statements: [] };
18842
18713
  }
@@ -18847,7 +18718,7 @@ function compileComponentFromMetadata(meta, constantPool, bindingParser) {
18847
18718
  function createComponentType(meta) {
18848
18719
  const typeParams = createDirectiveTypeParams(meta);
18849
18720
  typeParams.push(stringArrayAsType(meta.template.ngContentSelectors));
18850
- return expressionType(importExpr(Identifiers$1.ComponentDeclaration, typeParams));
18721
+ return expressionType(importExpr(Identifiers.ComponentDeclaration, typeParams));
18851
18722
  }
18852
18723
  /**
18853
18724
  * Compiles the array literal of declarations into an expression according to the provided emit
@@ -18863,7 +18734,7 @@ function compileDeclarationList(list, mode) {
18863
18734
  return fn([], [new ReturnStatement(list)]);
18864
18735
  case 2 /* ClosureResolved */:
18865
18736
  // directives: function () { return [MyDir].map(ng.resolveForwardRef); }
18866
- const resolvedList = list.prop('map').callFn([importExpr(Identifiers$1.resolveForwardRef)]);
18737
+ const resolvedList = list.prop('map').callFn([importExpr(Identifiers.resolveForwardRef)]);
18867
18738
  return fn([], [new ReturnStatement(resolvedList)]);
18868
18739
  }
18869
18740
  }
@@ -18898,13 +18769,13 @@ function createContentQueriesFunction(queries, constantPool, name) {
18898
18769
  const tempAllocator = temporaryAllocator(updateStatements, TEMPORARY_NAME);
18899
18770
  for (const query of queries) {
18900
18771
  // creation, e.g. r3.contentQuery(dirIndex, somePredicate, true, null);
18901
- createStatements.push(importExpr(Identifiers$1.contentQuery)
18772
+ createStatements.push(importExpr(Identifiers.contentQuery)
18902
18773
  .callFn([variable('dirIndex'), ...prepareQueryParams(query, constantPool)])
18903
18774
  .toStmt());
18904
18775
  // update, e.g. (r3.queryRefresh(tmp = r3.loadQuery()) && (ctx.someDir = tmp));
18905
18776
  const temporary = tempAllocator();
18906
- const getQueryList = importExpr(Identifiers$1.loadQuery).callFn([]);
18907
- const refresh = importExpr(Identifiers$1.queryRefresh).callFn([temporary.set(getQueryList)]);
18777
+ const getQueryList = importExpr(Identifiers.loadQuery).callFn([]);
18778
+ const refresh = importExpr(Identifiers.queryRefresh).callFn([temporary.set(getQueryList)]);
18908
18779
  const updateDirective = variable(CONTEXT_NAME)
18909
18780
  .prop(query.propertyName)
18910
18781
  .set(query.first ? temporary.prop('first') : temporary);
@@ -18956,7 +18827,7 @@ function createDirectiveTypeParams(meta) {
18956
18827
  */
18957
18828
  function createDirectiveType(meta) {
18958
18829
  const typeParams = createDirectiveTypeParams(meta);
18959
- return expressionType(importExpr(Identifiers$1.DirectiveDeclaration, typeParams));
18830
+ return expressionType(importExpr(Identifiers.DirectiveDeclaration, typeParams));
18960
18831
  }
18961
18832
  // Define and update any view queries
18962
18833
  function createViewQueriesFunction(viewQueries, constantPool, name) {
@@ -18965,12 +18836,12 @@ function createViewQueriesFunction(viewQueries, constantPool, name) {
18965
18836
  const tempAllocator = temporaryAllocator(updateStatements, TEMPORARY_NAME);
18966
18837
  viewQueries.forEach((query) => {
18967
18838
  // creation, e.g. r3.viewQuery(somePredicate, true);
18968
- const queryDefinition = importExpr(Identifiers$1.viewQuery).callFn(prepareQueryParams(query, constantPool));
18839
+ const queryDefinition = importExpr(Identifiers.viewQuery).callFn(prepareQueryParams(query, constantPool));
18969
18840
  createStatements.push(queryDefinition.toStmt());
18970
18841
  // update, e.g. (r3.queryRefresh(tmp = r3.loadQuery()) && (ctx.someDir = tmp));
18971
18842
  const temporary = tempAllocator();
18972
- const getQueryList = importExpr(Identifiers$1.loadQuery).callFn([]);
18973
- const refresh = importExpr(Identifiers$1.queryRefresh).callFn([temporary.set(getQueryList)]);
18843
+ const getQueryList = importExpr(Identifiers.loadQuery).callFn([]);
18844
+ const refresh = importExpr(Identifiers.queryRefresh).callFn([temporary.set(getQueryList)]);
18974
18845
  const updateDirective = variable(CONTEXT_NAME)
18975
18846
  .prop(query.propertyName)
18976
18847
  .set(query.first ? temporary.prop('first') : temporary);
@@ -19052,7 +18923,7 @@ function createHostBindingsFunction(hostBindingsMetadata, typeSourceSpan, bindin
19052
18923
  // of different security contexts. In this case we use special sanitization function and
19053
18924
  // select the actual sanitizer at runtime based on a tag name that is provided while
19054
18925
  // invoking sanitization function.
19055
- sanitizerFn = importExpr(Identifiers$1.sanitizeUrlOrResourceUrl);
18926
+ sanitizerFn = importExpr(Identifiers.sanitizeUrlOrResourceUrl);
19056
18927
  }
19057
18928
  else {
19058
18929
  sanitizerFn = resolveSanitizationFn(securityContexts[0], isAttribute);
@@ -19063,13 +18934,13 @@ function createHostBindingsFunction(hostBindingsMetadata, typeSourceSpan, bindin
19063
18934
  instructionParams.push(sanitizerFn);
19064
18935
  }
19065
18936
  updateStatements.push(...bindingExpr.stmts);
19066
- if (instruction === Identifiers$1.hostProperty) {
18937
+ if (instruction === Identifiers.hostProperty) {
19067
18938
  propertyBindings.push(instructionParams);
19068
18939
  }
19069
- else if (instruction === Identifiers$1.attribute) {
18940
+ else if (instruction === Identifiers.attribute) {
19070
18941
  attributeBindings.push(instructionParams);
19071
18942
  }
19072
- else if (instruction === Identifiers$1.syntheticHostProperty) {
18943
+ else if (instruction === Identifiers.syntheticHostProperty) {
19073
18944
  syntheticHostBindings.push(instructionParams);
19074
18945
  }
19075
18946
  else {
@@ -19077,13 +18948,13 @@ function createHostBindingsFunction(hostBindingsMetadata, typeSourceSpan, bindin
19077
18948
  }
19078
18949
  });
19079
18950
  if (propertyBindings.length > 0) {
19080
- updateStatements.push(chainedInstruction(Identifiers$1.hostProperty, propertyBindings).toStmt());
18951
+ updateStatements.push(chainedInstruction(Identifiers.hostProperty, propertyBindings).toStmt());
19081
18952
  }
19082
18953
  if (attributeBindings.length > 0) {
19083
- updateStatements.push(chainedInstruction(Identifiers$1.attribute, attributeBindings).toStmt());
18954
+ updateStatements.push(chainedInstruction(Identifiers.attribute, attributeBindings).toStmt());
19084
18955
  }
19085
18956
  if (syntheticHostBindings.length > 0) {
19086
- updateStatements.push(chainedInstruction(Identifiers$1.syntheticHostProperty, syntheticHostBindings).toStmt());
18957
+ updateStatements.push(chainedInstruction(Identifiers.syntheticHostProperty, syntheticHostBindings).toStmt());
19087
18958
  }
19088
18959
  // since we're dealing with directives/components and both have hostBinding
19089
18960
  // functions, we need to generate a special hostAttrs instruction that deals
@@ -19129,7 +19000,7 @@ function createHostBindingsFunction(hostBindingsMetadata, typeSourceSpan, bindin
19129
19000
  return null;
19130
19001
  }
19131
19002
  function bindingFn(implicit, value) {
19132
- return convertPropertyBinding(null, implicit, value, 'b', () => error('Unexpected interpolation'));
19003
+ return convertPropertyBinding(null, implicit, value, 'b');
19133
19004
  }
19134
19005
  function convertStylingCall(call, bindingContext, bindingFn) {
19135
19006
  return call.params(value => bindingFn(bindingContext, value).currValExpr);
@@ -19141,7 +19012,7 @@ function getBindingNameAndInstruction(binding) {
19141
19012
  const attrMatches = bindingName.match(ATTR_REGEX);
19142
19013
  if (attrMatches) {
19143
19014
  bindingName = attrMatches[1];
19144
- instruction = Identifiers$1.attribute;
19015
+ instruction = Identifiers.attribute;
19145
19016
  }
19146
19017
  else {
19147
19018
  if (binding.isAnimation) {
@@ -19149,10 +19020,10 @@ function getBindingNameAndInstruction(binding) {
19149
19020
  // host bindings that have a synthetic property (e.g. @foo) should always be rendered
19150
19021
  // in the context of the component and not the parent. Therefore there is a special
19151
19022
  // compatibility instruction available for this purpose.
19152
- instruction = Identifiers$1.syntheticHostProperty;
19023
+ instruction = Identifiers.syntheticHostProperty;
19153
19024
  }
19154
19025
  else {
19155
- instruction = Identifiers$1.hostProperty;
19026
+ instruction = Identifiers.hostProperty;
19156
19027
  }
19157
19028
  }
19158
19029
  return { bindingName, instruction, isAttribute: !!attrMatches };
@@ -19176,10 +19047,10 @@ function createHostListeners(eventBindings, name) {
19176
19047
  }
19177
19048
  });
19178
19049
  if (syntheticListeners.length > 0) {
19179
- instructions.push(chainedInstruction(Identifiers$1.syntheticHostListener, syntheticListeners).toStmt());
19050
+ instructions.push(chainedInstruction(Identifiers.syntheticHostListener, syntheticListeners).toStmt());
19180
19051
  }
19181
19052
  if (listeners.length > 0) {
19182
- instructions.push(chainedInstruction(Identifiers$1.listener, listeners).toStmt());
19053
+ instructions.push(chainedInstruction(Identifiers.listener, listeners).toStmt());
19183
19054
  }
19184
19055
  return instructions;
19185
19056
  }
@@ -19300,6 +19171,7 @@ class CompilerFacadeImpl {
19300
19171
  deps: null,
19301
19172
  pipeName: facade.pipeName,
19302
19173
  pure: facade.pure,
19174
+ isStandalone: facade.isStandalone,
19303
19175
  };
19304
19176
  const res = compilePipeFromMetadata(metadata);
19305
19177
  return this.jitExpression(res.expression, angularCoreEnv, sourceMapUrl, []);
@@ -19560,6 +19432,7 @@ function convertDeclareDirectiveFacadeToMetadata(declaration, typeSourceSpan) {
19560
19432
  deps: null,
19561
19433
  typeArgumentCount: 0,
19562
19434
  fullInheritance: false,
19435
+ isStandalone: declaration.isStandalone ?? false,
19563
19436
  };
19564
19437
  }
19565
19438
  function convertHostDeclarationToMetadata(host = {}) {
@@ -19741,6 +19614,7 @@ function convertDeclarePipeFacadeToMetadata(declaration) {
19741
19614
  pipeName: declaration.name,
19742
19615
  deps: null,
19743
19616
  pure: declaration.pure ?? true,
19617
+ isStandalone: declaration.isStandalone ?? false,
19744
19618
  };
19745
19619
  }
19746
19620
  function convertDeclareInjectorFacadeToMetadata(declaration) {
@@ -19767,7 +19641,7 @@ function publishFacade(global) {
19767
19641
  * Use of this source code is governed by an MIT-style license that can be
19768
19642
  * found in the LICENSE file at https://angular.io/license
19769
19643
  */
19770
- const VERSION = new Version('13.2.0');
19644
+ const VERSION = new Version('14.0.0-next.2');
19771
19645
 
19772
19646
  /**
19773
19647
  * @license
@@ -21780,7 +21654,7 @@ function extractTemplateEntities(rootScope) {
21780
21654
  function compileClassMetadata(metadata) {
21781
21655
  // Generate an ngDevMode guarded call to setClassMetadata with the class identifier and its
21782
21656
  // metadata.
21783
- const fnCall = importExpr(Identifiers$1.setClassMetadata).callFn([
21657
+ const fnCall = importExpr(Identifiers.setClassMetadata).callFn([
21784
21658
  metadata.type,
21785
21659
  metadata.decorators,
21786
21660
  metadata.ctorParameters ?? literal(null),
@@ -21808,13 +21682,13 @@ const MINIMUM_PARTIAL_LINKER_VERSION$6 = '12.0.0';
21808
21682
  function compileDeclareClassMetadata(metadata) {
21809
21683
  const definitionMap = new DefinitionMap();
21810
21684
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$6));
21811
- definitionMap.set('version', literal('13.2.0'));
21812
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
21685
+ definitionMap.set('version', literal('14.0.0-next.2'));
21686
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
21813
21687
  definitionMap.set('type', metadata.type);
21814
21688
  definitionMap.set('decorators', metadata.decorators);
21815
21689
  definitionMap.set('ctorParameters', metadata.ctorParameters);
21816
21690
  definitionMap.set('propDecorators', metadata.propDecorators);
21817
- return importExpr(Identifiers$1.declareClassMetadata).callFn([definitionMap.toLiteralMap()]);
21691
+ return importExpr(Identifiers.declareClassMetadata).callFn([definitionMap.toLiteralMap()]);
21818
21692
  }
21819
21693
 
21820
21694
  /**
@@ -21914,7 +21788,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$5 = '12.0.0';
21914
21788
  */
21915
21789
  function compileDeclareDirectiveFromMetadata(meta) {
21916
21790
  const definitionMap = createDirectiveDefinitionMap(meta);
21917
- const expression = importExpr(Identifiers$1.declareDirective).callFn([definitionMap.toLiteralMap()]);
21791
+ const expression = importExpr(Identifiers.declareDirective).callFn([definitionMap.toLiteralMap()]);
21918
21792
  const type = createDirectiveType(meta);
21919
21793
  return { expression, type, statements: [] };
21920
21794
  }
@@ -21925,7 +21799,7 @@ function compileDeclareDirectiveFromMetadata(meta) {
21925
21799
  function createDirectiveDefinitionMap(meta) {
21926
21800
  const definitionMap = new DefinitionMap();
21927
21801
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
21928
- definitionMap.set('version', literal('13.2.0'));
21802
+ definitionMap.set('version', literal('14.0.0-next.2'));
21929
21803
  // e.g. `type: MyDirective`
21930
21804
  definitionMap.set('type', meta.internalType);
21931
21805
  // e.g. `selector: 'some-dir'`
@@ -21951,7 +21825,7 @@ function createDirectiveDefinitionMap(meta) {
21951
21825
  if (meta.lifecycle.usesOnChanges) {
21952
21826
  definitionMap.set('usesOnChanges', literal(true));
21953
21827
  }
21954
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
21828
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
21955
21829
  return definitionMap;
21956
21830
  }
21957
21831
  /**
@@ -22018,7 +21892,7 @@ function compileHostMetadata(meta) {
22018
21892
  */
22019
21893
  function compileDeclareComponentFromMetadata(meta, template, additionalTemplateInfo) {
22020
21894
  const definitionMap = createComponentDefinitionMap(meta, template, additionalTemplateInfo);
22021
- const expression = importExpr(Identifiers$1.declareComponent).callFn([definitionMap.toLiteralMap()]);
21895
+ const expression = importExpr(Identifiers.declareComponent).callFn([definitionMap.toLiteralMap()]);
22022
21896
  const type = createComponentType(meta);
22023
21897
  return { expression, type, statements: [] };
22024
21898
  }
@@ -22038,11 +21912,11 @@ function createComponentDefinitionMap(meta, template, templateInfo) {
22038
21912
  definitionMap.set('viewProviders', meta.viewProviders);
22039
21913
  definitionMap.set('animations', meta.animations);
22040
21914
  if (meta.changeDetection !== undefined) {
22041
- definitionMap.set('changeDetection', importExpr(Identifiers$1.ChangeDetectionStrategy)
21915
+ definitionMap.set('changeDetection', importExpr(Identifiers.ChangeDetectionStrategy)
22042
21916
  .prop(ChangeDetectionStrategy[meta.changeDetection]));
22043
21917
  }
22044
21918
  if (meta.encapsulation !== ViewEncapsulation.Emulated) {
22045
- definitionMap.set('encapsulation', importExpr(Identifiers$1.ViewEncapsulation).prop(ViewEncapsulation[meta.encapsulation]));
21919
+ definitionMap.set('encapsulation', importExpr(Identifiers.ViewEncapsulation).prop(ViewEncapsulation[meta.encapsulation]));
22046
21920
  }
22047
21921
  if (meta.interpolation !== DEFAULT_INTERPOLATION_CONFIG) {
22048
21922
  definitionMap.set('interpolation', literalArr([literal(meta.interpolation.start), literal(meta.interpolation.end)]));
@@ -22146,13 +22020,13 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
22146
22020
  function compileDeclareFactoryFunction(meta) {
22147
22021
  const definitionMap = new DefinitionMap();
22148
22022
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
22149
- definitionMap.set('version', literal('13.2.0'));
22150
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
22023
+ definitionMap.set('version', literal('14.0.0-next.2'));
22024
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
22151
22025
  definitionMap.set('type', meta.internalType);
22152
22026
  definitionMap.set('deps', compileDependencies(meta.deps));
22153
- definitionMap.set('target', importExpr(Identifiers$1.FactoryTarget).prop(FactoryTarget$1[meta.target]));
22027
+ definitionMap.set('target', importExpr(Identifiers.FactoryTarget).prop(FactoryTarget$1[meta.target]));
22154
22028
  return {
22155
- expression: importExpr(Identifiers$1.declareFactory).callFn([definitionMap.toLiteralMap()]),
22029
+ expression: importExpr(Identifiers.declareFactory).callFn([definitionMap.toLiteralMap()]),
22156
22030
  statements: [],
22157
22031
  type: createFactoryType(meta),
22158
22032
  };
@@ -22178,7 +22052,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$3 = '12.0.0';
22178
22052
  */
22179
22053
  function compileDeclareInjectableFromMetadata(meta) {
22180
22054
  const definitionMap = createInjectableDefinitionMap(meta);
22181
- const expression = importExpr(Identifiers$1.declareInjectable).callFn([definitionMap.toLiteralMap()]);
22055
+ const expression = importExpr(Identifiers.declareInjectable).callFn([definitionMap.toLiteralMap()]);
22182
22056
  const type = createInjectableType(meta);
22183
22057
  return { expression, type, statements: [] };
22184
22058
  }
@@ -22188,8 +22062,8 @@ function compileDeclareInjectableFromMetadata(meta) {
22188
22062
  function createInjectableDefinitionMap(meta) {
22189
22063
  const definitionMap = new DefinitionMap();
22190
22064
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
22191
- definitionMap.set('version', literal('13.2.0'));
22192
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
22065
+ definitionMap.set('version', literal('14.0.0-next.2'));
22066
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
22193
22067
  definitionMap.set('type', meta.internalType);
22194
22068
  // Only generate providedIn property if it has a non-null value
22195
22069
  if (meta.providedIn !== undefined) {
@@ -22236,7 +22110,7 @@ function createInjectableDefinitionMap(meta) {
22236
22110
  const MINIMUM_PARTIAL_LINKER_VERSION$2 = '12.0.0';
22237
22111
  function compileDeclareInjectorFromMetadata(meta) {
22238
22112
  const definitionMap = createInjectorDefinitionMap(meta);
22239
- const expression = importExpr(Identifiers$1.declareInjector).callFn([definitionMap.toLiteralMap()]);
22113
+ const expression = importExpr(Identifiers.declareInjector).callFn([definitionMap.toLiteralMap()]);
22240
22114
  const type = createInjectorType(meta);
22241
22115
  return { expression, type, statements: [] };
22242
22116
  }
@@ -22246,8 +22120,8 @@ function compileDeclareInjectorFromMetadata(meta) {
22246
22120
  function createInjectorDefinitionMap(meta) {
22247
22121
  const definitionMap = new DefinitionMap();
22248
22122
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
22249
- definitionMap.set('version', literal('13.2.0'));
22250
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
22123
+ definitionMap.set('version', literal('14.0.0-next.2'));
22124
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
22251
22125
  definitionMap.set('type', meta.internalType);
22252
22126
  definitionMap.set('providers', meta.providers);
22253
22127
  if (meta.imports.length > 0) {
@@ -22273,7 +22147,7 @@ function createInjectorDefinitionMap(meta) {
22273
22147
  const MINIMUM_PARTIAL_LINKER_VERSION$1 = '12.0.0';
22274
22148
  function compileDeclareNgModuleFromMetadata(meta) {
22275
22149
  const definitionMap = createNgModuleDefinitionMap(meta);
22276
- const expression = importExpr(Identifiers$1.declareNgModule).callFn([definitionMap.toLiteralMap()]);
22150
+ const expression = importExpr(Identifiers.declareNgModule).callFn([definitionMap.toLiteralMap()]);
22277
22151
  const type = createNgModuleType(meta);
22278
22152
  return { expression, type, statements: [] };
22279
22153
  }
@@ -22283,8 +22157,8 @@ function compileDeclareNgModuleFromMetadata(meta) {
22283
22157
  function createNgModuleDefinitionMap(meta) {
22284
22158
  const definitionMap = new DefinitionMap();
22285
22159
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
22286
- definitionMap.set('version', literal('13.2.0'));
22287
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
22160
+ definitionMap.set('version', literal('14.0.0-next.2'));
22161
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
22288
22162
  definitionMap.set('type', meta.internalType);
22289
22163
  // We only generate the keys in the metadata if the arrays contain values.
22290
22164
  // We must wrap the arrays inside a function if any of the values are a forward reference to a
@@ -22331,7 +22205,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION = '12.0.0';
22331
22205
  */
22332
22206
  function compileDeclarePipeFromMetadata(meta) {
22333
22207
  const definitionMap = createPipeDefinitionMap(meta);
22334
- const expression = importExpr(Identifiers$1.declarePipe).callFn([definitionMap.toLiteralMap()]);
22208
+ const expression = importExpr(Identifiers.declarePipe).callFn([definitionMap.toLiteralMap()]);
22335
22209
  const type = createPipeType(meta);
22336
22210
  return { expression, type, statements: [] };
22337
22211
  }
@@ -22341,8 +22215,8 @@ function compileDeclarePipeFromMetadata(meta) {
22341
22215
  function createPipeDefinitionMap(meta) {
22342
22216
  const definitionMap = new DefinitionMap();
22343
22217
  definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION));
22344
- definitionMap.set('version', literal('13.2.0'));
22345
- definitionMap.set('ngImport', importExpr(Identifiers$1.core));
22218
+ definitionMap.set('version', literal('14.0.0-next.2'));
22219
+ definitionMap.set('ngImport', importExpr(Identifiers.core));
22346
22220
  // e.g. `type: MyPipe`
22347
22221
  definitionMap.set('type', meta.internalType);
22348
22222
  // e.g. `name: "myPipe"`
@@ -22391,5 +22265,5 @@ publishFacade(_global);
22391
22265
  * found in the LICENSE file at https://angular.io/license
22392
22266
  */
22393
22267
 
22394
- export { AST, ASTWithName, ASTWithSource, AbsoluteSourceSpan, ArrayType, AstMemoryEfficientTransformer, AstTransformer, Attribute, Binary, BinaryOperator, BinaryOperatorExpr, BindingPipe, BoundElementProperty, BuiltinType, BuiltinTypeName, CUSTOM_ELEMENTS_SCHEMA, Call, Chain, ChangeDetectionStrategy, CommaExpr, Comment, CompilerConfig, Conditional, ConditionalExpr, ConstantPool, CssSelector, DEFAULT_INTERPOLATION_CONFIG, DYNAMIC_TYPE, DeclareFunctionStmt, DeclareVarStmt, DomElementSchemaRegistry, EOF, Element, ElementSchemaRegistry, EmitterVisitorContext, EmptyExpr, Expansion, ExpansionCase, Expression, ExpressionBinding, ExpressionStatement, ExpressionType, ExternalExpr, ExternalReference, FactoryTarget$1 as FactoryTarget, FunctionExpr, HtmlParser, HtmlTagDefinition, I18NHtmlParser, Identifiers, IfStmt, ImplicitReceiver, InstantiateExpr, Interpolation, InterpolationConfig, InvokeFunctionExpr, JSDocComment, JitEvaluator, KeyedRead, KeyedWrite, LeadingComment, 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, ParsedProperty, ParsedPropertyType, ParsedVariable, Parser$1 as Parser, ParserError, PrefixNot, PropertyRead, PropertyWrite, Quote, R3BoundTarget, Identifiers$1 as R3Identifiers, R3TargetBinder, ReadKeyExpr, ReadPropExpr, ReadVarExpr, RecursiveAstVisitor, RecursiveVisitor, ResourceLoader, ReturnStatement, STRING_TYPE, SafeCall, SafeKeyedRead, SafePropertyRead, SelectorContext, SelectorListContext, SelectorMatcher, Serializer, SplitInterpolation, Statement, StmtModifier, TagContentType, TaggedTemplateExpr, TemplateBindingParseResult, TemplateLiteral, TemplateLiteralElement, Text, ThisReceiver, BoundAttribute as TmplAstBoundAttribute, BoundEvent as TmplAstBoundEvent, BoundText as TmplAstBoundText, Content as TmplAstContent, Element$1 as TmplAstElement, Icu$1 as TmplAstIcu, RecursiveVisitor$1 as TmplAstRecursiveVisitor, Reference as TmplAstReference, Template as TmplAstTemplate, Text$3 as TmplAstText, TextAttribute as TmplAstTextAttribute, Variable as TmplAstVariable, Token, TokenType, TreeError, Type, TypeModifier, TypeofExpr, Unary, UnaryOperator, UnaryOperatorExpr, VERSION, VariableBinding, Version, ViewEncapsulation, WrappedNodeExpr, WriteKeyExpr, WritePropExpr, WriteVarExpr, Xliff, Xliff2, Xmb, XmlParser, Xtb, _ParseAST, compileClassMetadata, compileComponentFromMetadata, compileDeclareClassMetadata, compileDeclareComponentFromMetadata, compileDeclareDirectiveFromMetadata, compileDeclareFactoryFunction, compileDeclareInjectableFromMetadata, compileDeclareInjectorFromMetadata, compileDeclareNgModuleFromMetadata, compileDeclarePipeFromMetadata, compileDirectiveFromMetadata, compileFactoryFunction, compileInjectable, compileInjector, compileNgModule, compilePipeFromMetadata, computeMsgId, core, createInjectableType, createMayBeForwardRefExpression, devOnlyGuardedExpression, emitDistinctChangesOnlyDefaultValue, getHtmlTagDefinition, getNsPrefix, getSafePropertyAccessString, identifierName, isIdentifier, isNgContainer, isNgContent, isNgTemplate, jsDocComment, leadingComment, literalMap, makeBindingParser, mergeNsAndName, output_ast as outputAst, parseHostBindings, parseTemplate, preserveWhitespacesDefault, publishFacade, r3JitTypeSourceSpan, sanitizeIdentifier, splitNsName, verifyHostBindings, visitAll };
22268
+ export { AST, ASTWithName, ASTWithSource, AbsoluteSourceSpan, ArrayType, AstMemoryEfficientTransformer, AstTransformer, Attribute, Binary, BinaryOperator, BinaryOperatorExpr, BindingPipe, BoundElementProperty, BuiltinType, BuiltinTypeName, CUSTOM_ELEMENTS_SCHEMA, Call, Chain, ChangeDetectionStrategy, CommaExpr, Comment, CompilerConfig, Conditional, ConditionalExpr, ConstantPool, CssSelector, DEFAULT_INTERPOLATION_CONFIG, DYNAMIC_TYPE, DeclareFunctionStmt, DeclareVarStmt, DomElementSchemaRegistry, EOF, Element, ElementSchemaRegistry, EmitterVisitorContext, EmptyExpr, Expansion, ExpansionCase, Expression, ExpressionBinding, ExpressionStatement, ExpressionType, ExternalExpr, ExternalReference, FactoryTarget$1 as FactoryTarget, FunctionExpr, HtmlParser, HtmlTagDefinition, I18NHtmlParser, IfStmt, ImplicitReceiver, InstantiateExpr, Interpolation, InterpolationConfig, InvokeFunctionExpr, JSDocComment, JitEvaluator, KeyedRead, KeyedWrite, LeadingComment, 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, ParsedProperty, ParsedPropertyType, ParsedVariable, Parser$1 as Parser, ParserError, PrefixNot, PropertyRead, PropertyWrite, R3BoundTarget, Identifiers as R3Identifiers, R3TargetBinder, ReadKeyExpr, ReadPropExpr, ReadVarExpr, RecursiveAstVisitor, RecursiveVisitor, ResourceLoader, ReturnStatement, STRING_TYPE, SafeCall, SafeKeyedRead, SafePropertyRead, SelectorContext, SelectorListContext, SelectorMatcher, Serializer, SplitInterpolation, Statement, StmtModifier, TagContentType, TaggedTemplateExpr, TemplateBindingParseResult, TemplateLiteral, TemplateLiteralElement, Text, ThisReceiver, BoundAttribute as TmplAstBoundAttribute, BoundEvent as TmplAstBoundEvent, BoundText as TmplAstBoundText, Content as TmplAstContent, Element$1 as TmplAstElement, Icu$1 as TmplAstIcu, RecursiveVisitor$1 as TmplAstRecursiveVisitor, Reference as TmplAstReference, Template as TmplAstTemplate, Text$3 as TmplAstText, TextAttribute as TmplAstTextAttribute, Variable as TmplAstVariable, Token, TokenType, TreeError, Type, TypeModifier, TypeofExpr, Unary, UnaryOperator, UnaryOperatorExpr, VERSION, VariableBinding, Version, ViewEncapsulation, WrappedNodeExpr, WriteKeyExpr, WritePropExpr, WriteVarExpr, Xliff, Xliff2, Xmb, XmlParser, Xtb, _ParseAST, compileClassMetadata, compileComponentFromMetadata, compileDeclareClassMetadata, compileDeclareComponentFromMetadata, compileDeclareDirectiveFromMetadata, compileDeclareFactoryFunction, compileDeclareInjectableFromMetadata, compileDeclareInjectorFromMetadata, compileDeclareNgModuleFromMetadata, compileDeclarePipeFromMetadata, compileDirectiveFromMetadata, compileFactoryFunction, compileInjectable, compileInjector, compileNgModule, compilePipeFromMetadata, computeMsgId, core, createInjectableType, createMayBeForwardRefExpression, devOnlyGuardedExpression, emitDistinctChangesOnlyDefaultValue, getHtmlTagDefinition, getNsPrefix, getSafePropertyAccessString, identifierName, isIdentifier, isNgContainer, isNgContent, isNgTemplate, jsDocComment, leadingComment, literalMap, makeBindingParser, mergeNsAndName, output_ast as outputAst, parseHostBindings, parseTemplate, preserveWhitespacesDefault, publishFacade, r3JitTypeSourceSpan, sanitizeIdentifier, splitNsName, verifyHostBindings, visitAll };
22395
22269
  //# sourceMappingURL=compiler.mjs.map