angular/packages/compiler-cli
JoostK 1de49ba369 refactor(ivy): consistently translate types to ts.TypeNode (#34021)
The compiler has a translation mechanism to convert from an Angular
`Type` to a `ts.TypeNode`, as appropriate. Prior to this change, it
would translate certain Angular expressions into their value equivalent
in TypeScript, instead of the correct type equivalent. This was possible
as the `ExpressionVisitor` interface is not strictly typed, with `any`s
being used for return values.

For example, a literal object was translated into a
`ts.ObjectLiteralExpression`, containing `ts.PropertyAssignment` nodes
as its entries. This has worked without issues as their printed
representation is identical, however it was incorrect from a semantic
point of view. Instead, a `ts.TypeLiteralNode` is created with
`ts.PropertySignature` as its members, which corresponds with the type
declaration of an object literal.

PR Close #34021
2020-01-06 11:06:07 -08:00
..
integrationtest refactor(compiler-cli): remove bogus packages/compiler-cli/integrationtest/benchmarks/ (#34142) 2019-12-02 11:22:45 -08:00
ngcc feat(ivy): error in ivy when inheriting a ctor from an undecorated base (#34460) 2019-12-18 15:04:49 -08:00
src refactor(ivy): consistently translate types to ts.TypeNode (#34021) 2020-01-06 11:06:07 -08:00
test refactor(ivy): consistently translate types to ts.TypeNode (#34021) 2020-01-06 11:06:07 -08:00
BUILD.bazel refactor(ivy): include generic type for ModuleWithProviders in .d.ts files (#34235) 2019-12-10 16:34:47 -08:00
index.ts refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
package.json build: set up all packages to publish via wombot proxy (#33747) 2019-11-13 11:34:33 -08:00
tsconfig-build.json build: reference zone.js from source directly instead of npm. (#33046) 2019-11-06 00:48:34 +00:00
tsconfig.json perf(ivy): ngcc - only find dependencies when targeting a single entry-point (#30525) 2019-07-09 09:40:46 -07:00