The compiler's `I18NHtmlParser` may expand template nodes that have internationalization metadata attached to them; for instance, ```html <div i18n="@@i18n-el">{{}}</div> ``` gets expanded to an AST with the i18n metadata extracted and text filled in as necessary; to the language service, the template above, as read in the AST, now looks something like ```html <div>{{$implicit}}</div> ``` This is undesirable for the language service because we want to preserve the original form of the source template source code, and have information about the original values of the template. The language service also does not need to use an i18n parser -- we don't generate any template output. To fix this turns out to be as easy as moving to using a raw `HtmlParser`. --- A note on the testing strategy: as mentioned above, we don't need to use an i18n parser, but we don't **not** need to use one if the parser does not heavily modify the template AST. For this reason, the tests target the functionality of not modifying a template with i18n metadata rather than testing that the language service does not use an i18n parser. --- Closes https://github.com/angular/vscode-ng-language-service/issues/272 PR Close #34531
build: migrate references and scripts that set to build with ivy via compile=aot to use config=ivy (#33983)
Angular
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages.
Quickstart
Changelog
Learn about the latest improvements.
Want to help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.
Description
Languages
TypeScript
68.6%
HTML
12.8%
JavaScript
8.4%
Pug
7%
Starlark
1.4%
Other
1.7%