angular-cn/packages/compiler-cli
JoostK 6fbfb5a159 feat(ivy): ngcc - recognize static properties on the outer symbol in ES5 (#30795)
Packages that have been compiled using an older version of TypeScript
can have their decorators at the top-level of the ES5 bundles, instead
of inside the IIFE that is emitted for the class. Before this change,
ngcc only took static property assignments inside the IIFE into account,
therefore missing the decorators that were assigned at the top-level.

This commit extends the ES5 host to look for static properties in two
places. Testcases for all bundle formats that contain ES5 have been added
to ensure that this works in the various flavours.

A patch is included to support UMD bundles. The UMD factory affects how
TypeScripts binds the static properties to symbols, see the docblock of
the patch function for more details.

PR Close #30795
2019-06-14 13:09:56 -07:00
..
integrationtest build: convert entry_point to label (#30627) 2019-06-11 00:03:11 +00:00
ngcc feat(ivy): ngcc - recognize static properties on the outer symbol in ES5 (#30795) 2019-06-14 13:09:56 -07:00
src feat(ivy): setup boilerplate for component indexing API (#30961) 2019-06-14 10:48:12 -07:00
test test(compiler-cli): fix failing ivy template compliance test (#30983) 2019-06-11 15:17:01 -07:00
BUILD.bazel feat(ivy): setup boilerplate for component indexing API (#30961) 2019-06-14 10:48:12 -07:00
index.ts feat(compiler-cli): export tooling definitions (#29929) 2019-04-17 17:23:01 -07:00
ngtools2.ts refactor(compiler-cli): expose ngtools api separately (#18978) 2017-08-31 14:37:13 -07:00
package.json build: upgrade yargs package to 13.1.0 (#29722) 2019-04-26 16:29:29 -07:00
tsconfig-build.json build(compiler-cli): enable full TypeScript strictness (#29436) 2019-03-21 12:14:39 -04:00
tsconfig.json build(compiler-cli): enable full TypeScript strictness (#29436) 2019-03-21 12:14:39 -04:00