angular-cn/integration/side-effects
Igor Minar 4d0e175a65 fix(core): reenable decorator downleveling for Angular npm packages (#37317)
In #37221 we disabled tsickle passes from transforming the tsc output that is used to publish all
Angular framework and components packages (@angular/*).

This change however revealed a bug in the ngc that caused __decorate and __metadata calls to still
be emitted in the JS code even though we don't depend on them.

Additionally it was these calls that caused code in @angular/material packages to fail at runtime
due to circular dependency in the emitted decorator code documeted as
https://github.com/microsoft/TypeScript/issues/27519.

This change partially rolls back #37221 by reenabling the decorator to static fields (static
properties) downleveling.

This is just a temporary workaround while we are also fixing root cause in `ngc` - tracked as
FW-2199.

Resolves FW-2198.
Related to FW-2196

PR Close #37317
2020-05-29 18:52:01 -04:00
..
snapshots fix(core): reenable decorator downleveling for Angular npm packages (#37317) 2020-05-29 18:52:01 -04:00
.gitignore test: add integration test for side effects (#29329) 2019-05-16 12:08:49 -07:00
README.md test: add integration test for side effects (#29329) 2019-05-16 12:08:49 -07:00
package.json test: add integration test for side effects (#29329) 2019-05-16 12:08:49 -07:00
side-effects.json build: update side-effects integration test to not expect esm5 output (#36944) 2020-05-06 13:54:27 -07:00
yarn.lock feat: typescript 3.6 support (#32946) 2019-10-18 13:15:16 -04:00

README.md

This test checks if the side effects for loading Angular packages have changed using https://github.com/filipesilva/check-side-effects.

Running yarn test will check all ES modules listed in side-effects.json.

Running yarn update will update any changed side effects.

To add a new ES module to this test, add a new entry in side-effects.json.

Usually the ESM and FESM should have the same output, but retained objects that were renamed during the flattening step will leave behind a different name.