angular-cn/packages/compiler/src
JoostK eb6281f5b4 fix(ivy): include type parameter for `ngBaseDef` declaration (#31210)
When a class uses Angular decorators such as `@Input`, `@Output` and
friends without an Angular class decorator, they are compiled into a
static `ngBaseDef` field on the class, with the TypeScript declaration
of the class being altered to declare the `ngBaseDef` field to be of type
`ɵɵBaseDef`. This type however requires a generic type parameter that
corresponds with the type of the class, however the compiler did not
provide this type parameter. As a result, compiling a program where such
invalid `ngBaseDef` declarations are present will result in compilation
errors.

This commit fixes the problem by providing the generic type parameter.

Fixes #31160

PR Close #31210
2019-07-02 11:06:46 -07:00
..
aot refactor: Consistently use index access on index signature types. (#28937) 2019-02-28 02:49:14 -08:00
compiler_util fix(ivy): unable to bind to implicit receiver in embedded views (#30897) 2019-06-11 14:29:42 -07:00
css_parser build(bazel): Turning on strictPropertyInitialization for Angular. (#24572) 2018-06-25 07:57:13 -07:00
expression_parser refactor(compiler): recursive ast expression visitor not passing context (#31085) 2019-06-20 11:12:16 -07:00
i18n refactor(compiler): use `options` argument for parsers (#28055) 2019-02-12 20:58:27 -08:00
jit refactor(compiler): wrap the jit evaluation in an injectable class (#28055) 2019-02-12 20:58:27 -08:00
ml_parser feat(compiler): support skipping leading trivia in template source-maps (#30095) 2019-04-25 12:36:54 -07:00
output feat(ivy): add ɵɵtextInterpolateX instructions (#30011) 2019-05-29 12:38:58 -04:00
render3 fix(ivy): include type parameter for `ngBaseDef` declaration (#31210) 2019-07-02 11:06:46 -07:00
schema refactor(compiler): update docs (#29599) 2019-04-02 10:28:52 -07:00
template_parser fix(ivy): avoid generating instructions for empty style and class bindings (#30024) 2019-04-22 11:16:58 -07:00
view_compiler fix(ivy): unable to bind to implicit receiver in embedded views (#30897) 2019-06-11 14:29:42 -07: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 feat(ivy): integrate indexing pipeline with NgtscProgram (#31151) 2019-06-24 18:47:56 -07:00
compiler_facade_interface.ts fix(ivy): include type parameter for `ngBaseDef` declaration (#31210) 2019-07-02 11:06:46 -07:00
config.ts feat: add TypeScript 3 support (#25275) 2018-08-27 21:07:53 -04:00
constant_pool.ts feat(ivy): ICU support for Ivy (#26794) 2018-11-16 16:09:30 -08:00
core.ts feat(ivy): add `AttributeMarker.I18n` for i18n attributes (#30402) 2019-05-30 16:39:24 -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): Move instructions back to ɵɵ (#30546) 2019-05-20 16:37:47 -07:00
injectable_compiler.ts refactor(ivy): Move instructions back to ɵɵ (#30546) 2019-05-20 16:37:47 -07:00
injectable_compiler_2.ts refactor(ivy): Move instructions back to ɵɵ (#30546) 2019-05-20 16:37:47 -07:00
jit_compiler_facade.ts fix(ivy): align NgModule registration timing with ViewEngine (#30244) 2019-05-13 11:13:25 -07:00
lifecycle_reflector.ts feat(ivy): implement TestBed (#25369) 2018-08-14 11:58:47 -07:00
metadata_resolver.ts refactor: early compatibility with TypeScript 3.5 (#31174) 2019-06-20 16:42:37 -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 fix(ivy): verify Host Bindings and Host Listeners before compiling them (#28356) 2019-01-29 16:36:22 -08: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 feat(ivy): add generics to the SelectorMatcher API (#26203) 2018-10-04 10:11:17 -07: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 fix(compiler): stringify `Object.create(null)` tokens (#16848) 2019-06-20 17:04:01 -07:00
version.ts style: remove empty comments (#23404) 2018-05-10 15:48:13 -07:00