angular-cn/packages/compiler/src
Keen Yee Liau 06779cfe24 feat(compiler): Add sourceSpan and keySpan to TemplateBinding (#35897)
This commit adds fine-grained text spans to TemplateBinding for microsyntax expressions.

1. Source span
   By convention, source span refers to the entire span of the binding,
   including its key and value.
2. Key span
   Span of the binding key, without any whitespace or keywords like `let`

The value span is captured by the value expression AST.

This is part of a series of PRs to fix source span mapping in microsyntax expression.
For more info, see the doc https://docs.google.com/document/d/1mEVF2pSSMSnOloqOPQTYNiAJO0XQxA1H0BZyESASOrE/edit?usp=sharing

PR Close #35897
2020-03-11 14:51:56 -04:00
..
aot fix(compiler): do not throw when using abstract directive from other compilation unit (#33347) 2019-10-23 11:59:24 -07:00
compiler_util perf(ivy): remove unused event argument in listener instructions (#35097) 2020-02-20 15:22:13 -08:00
css_parser build(bazel): Turning on strictPropertyInitialization for Angular. (#24572) 2018-06-25 07:57:13 -07:00
expression_parser feat(compiler): Add sourceSpan and keySpan to TemplateBinding (#35897) 2020-03-11 14:51:56 -04:00
i18n perf(compiler): speed up i18n digest computations (#34332) 2019-12-12 14:06:37 -08:00
jit refactor(compiler): wrap the jit evaluation in an injectable class (#28055) 2019-02-12 20:58:27 -08:00
ml_parser perf(compiler): optimize cloning cursors state (#34332) 2019-12-12 14:06:37 -08:00
output fix: work around 'noImplicityAny' incompatibility due to ts3.7 update (#34798) 2020-01-16 12:06:57 -05:00
render3 fix(core): remove side effects from `ɵɵNgOnChangesFeature()` (#35769) 2020-03-03 08:50:03 -08:00
schema refactor(compiler): update docs (#29599) 2019-04-02 10:28:52 -07:00
template_parser feat(compiler): Add sourceSpan and keySpan to TemplateBinding (#35897) 2020-03-11 14:51:56 -04:00
view_compiler feat(compiler): type TemplateAst values as ASTWithSource (#35892) 2020-03-09 12:14:09 -04:00
assertions.ts refactor(compiler): rename INTERPOLATION_BLACKLIST_REGEXPS (#29593) 2019-04-02 10:36:26 -07:00
ast_path.ts style: typos fixed - https://github.com/vlajos/misspell-fixer (#22975) 2018-03-27 14:51:53 -04:00
chars.ts feat(compiler): support tokenizing escaped strings (#28055) 2019-02-12 20:58:27 -08:00
compile_metadata.ts feat(core): allow users to define timing of ViewChild/ContentChild queries (#28810) 2019-02-19 12:56:25 -08:00
compile_reflector.ts feat(ivy): @NgModule -> ngInjectorDef compilation (#22458) 2018-03-16 12:57:11 -07:00
compiler.ts fix(ivy): move setClassMetadata calls into a pure iife (#33337) 2019-11-20 12:55:58 -08:00
compiler_facade_interface.ts fix(ivy): throw a better error when DI can't inject a ctor param (#33739) 2019-12-09 11:37:10 -08:00
config.ts feat: add TypeScript 3 support (#25275) 2018-08-27 21:07:53 -04:00
constant_pool.ts fix(ivy): incorrectly generating shared pure function between null and object literal (#35481) 2020-02-20 15:23:58 -08:00
core.ts refactor(core): rename ngInjectableDef to ɵprov (#33151) 2019-10-16 16:36:19 -04:00
directive_normalizer.ts refactor(compiler): use `options` argument for parsers (#28055) 2019-02-12 20:58:27 -08:00
directive_resolver.ts feat(compiler): narrow types of expressions used in *ngIf (#20702) 2017-12-08 10:24:26 -08:00
identifiers.ts refactor(ivy): generate ngFactoryDef for injectables (#32433) 2019-10-02 13:04:26 -07:00
injectable_compiler.ts refactor(core): rename ngInjectableDef to ɵprov (#33151) 2019-10-16 16:36:19 -04:00
injectable_compiler_2.ts fix(ngcc): use the correct identifiers when updating typings files (#34254) 2019-12-18 11:25:01 -08:00
jit_compiler_facade.ts fix(ngcc): use the correct identifiers when updating typings files (#34254) 2019-12-18 11:25:01 -08:00
lifecycle_reflector.ts feat(ivy): implement TestBed (#25369) 2018-08-14 11:58:47 -07:00
metadata_resolver.ts refactor: utilize type narrowing (#33075) 2019-10-10 15:18:44 -07:00
ng_module_compiler.ts feat(compiler): lower @NgModule ids if needed (#23031) 2018-03-28 09:15:16 -07:00
ng_module_resolver.ts refactor(compiler): split compiler and core (#18683) 2017-08-16 17:58:53 -05:00
parse_util.ts feat(ivy): record absolute position of template expressions (#31391) 2019-07-22 09:48:35 -07:00
pipe_resolver.ts refactor(compiler): split compiler and core (#18683) 2017-08-16 17:58:53 -05:00
provider_analyzer.ts feat: change @Injectable() to support tree-shakeable tokens (#22005) 2018-02-12 14:34:59 -08:00
resource_loader.ts refactor(compiler): allow sync AOT compilation (#16832). 2017-05-23 10:41:23 -06:00
selector.ts fix(ivy): support for #id bootstrap selectors (#33784) 2019-11-15 10:42:52 -08:00
shadow_css.ts fix(compiler): Don't strip `/*# sourceURL ... */` (#16088) 2018-01-24 12:35:30 -08:00
style_compiler.ts feat(ivy): bridge component styles into the component renderer (#25255) 2018-08-23 16:51:15 -04:00
style_url_resolver.ts fix(compiler): Don't strip CSS source maps 2017-08-15 16:30:09 -07:00
summary_resolver.ts fix(compiler): allow to use flat modules and summaries 2017-09-28 14:20:20 -07:00
url_resolver.ts refactor(compiler): split compiler and core (#18683) 2017-08-16 17:58:53 -05:00
util.ts refactor(compiler): replace instanceof Array (#33076) 2019-10-10 15:19:12 -07:00
version.ts style: remove empty comments (#23404) 2018-05-10 15:48:13 -07:00