angular-cn/packages/compiler-cli/ngcc
Pete Bacon Darwin e9fb5fdb89 fix(ngcc): handle UMD re-exports (#34254)
In TS we can re-export imports using statements of the form:

```
export * from 'some-import';
```

This is downleveled in UMD to:

```
function factory(exports, someImport) {
  function __export(m) {
    for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
  }
  __export(someImport);
}
```

This commit adds support for this.

PR Close #34254
2019-12-18 11:25:01 -08:00
..
src fix(ngcc): handle UMD re-exports (#34254) 2019-12-18 11:25:01 -08:00
test fix(ngcc): handle UMD re-exports (#34254) 2019-12-18 11:25:01 -08:00
BUILD.bazel perf(ivy): reuse prior analysis work during incremental builds (#34288) 2019-12-12 13:11:45 -08:00
README.md refactor(ivy): move ngcc into a higher level folder (#29092) 2019-03-20 14:45:54 -04:00
index.ts refactor(ngcc): add support for asynchronous execution (#32427) 2019-09-09 15:55:13 -04:00
main-ivy-ngcc.ts fix(ngcc): rename the executable from `ivy-ngcc` to `ngcc` (#33140) 2019-10-14 16:29:14 +00:00
main-ngcc.ts fix(ngcc): render legacy i18n message ids by default (#34135) 2019-12-03 10:15:53 -08:00

README.md

Angular Compatibility Compiler (ngcc)

This compiler will convert node_modules compiled with ngc, into node_modules which appear to have been compiled with ngtsc.

This conversion will allow such "legacy" packages to be used by the Ivy rendering engine.

Building

The project is built using Bazel:

yarn bazel build //packages/compiler-cli/ngcc

Unit Testing

The unit tests are built and run using Bazel:

yarn bazel test //packages/compiler-cli/ngcc/test

Integration Testing

There are tests that check the behavior of the overall executable:

yarn bazel test //packages/compiler-cli/ngcc/test:integration