angular/packages/compiler-cli/ngcc/src
JoostK 638ba4a2cf fix(ivy): ngcc - prefer JavaScript source files when resolving module imports (#30017)
Packages that do not follow APF may have the declaration files in the same
directory as one source format, typically ES5. This is problematic for ngcc,
as it needs to create a TypeScript program with all JavaScript sources of
an entry-point, whereas TypeScript's module resolution mechanism would have
resolved an internal module import to the external facing .d.ts declaration
file, instead of the JavaScript source file. This behavior results in the
program to be analysed being incomplete.

This commit introduces a custom compiler host that recognizes the above
scenario and rewires the resolution of a .d.ts declaration file to its
JavaScript counterpart, if applicable.

Fixes #29939

PR Close #30017
2019-05-01 15:41:53 -07:00
..
analysis refactor(ivy): ngcc - remove the last remnants of path and canonical-path (#29643) 2019-04-29 12:37:21 -07:00
dependencies refactor(ivy): ngcc - remove the last remnants of path and canonical-path (#29643) 2019-04-29 12:37:21 -07:00
file_system refactor(ivy): ngcc - implement abstract FileSystem (#29643) 2019-04-29 12:37:21 -07:00
host fix(ivy): ngcc - properly handle aliases class expressions (#29119) 2019-04-02 10:50:46 -07:00
logging feat(compiler-cli): ngcc - make logging more configurable (#29591) 2019-04-01 11:53:28 -07:00
packages fix(ivy): ngcc - prefer JavaScript source files when resolving module imports (#30017) 2019-05-01 15:41:53 -07:00
rendering refactor(ivy): ngcc - implement abstract FileSystem (#29643) 2019-04-29 12:37:21 -07:00
writing refactor(ivy): ngcc - implement abstract FileSystem (#29643) 2019-04-29 12:37:21 -07:00
constants.ts refactor(ivy): move ngcc into a higher level folder (#29092) 2019-03-20 14:45:54 -04:00
main.ts refactor(ivy): ngcc - implement abstract FileSystem (#29643) 2019-04-29 12:37:21 -07:00
utils.ts refactor(ivy): ngcc - implement new module resolver (#29643) 2019-04-29 12:37:21 -07:00