angular/packages/compiler-cli
Paul Gschwendtner 27535bfb79 refactor: expose new @angular/localize/tools entry-point for CLI usage (#43431)
This wires up the `@angular/localize/tools` entry-point. For context:
This entry-point is being created to avoid deep imports into
`@angular/localize/src/tools/<..>` like the CLI relies on. Deep imports
do not play well with strict ESM, and now that all APF packages are
strict ESM, the tool code needs to be either strict ESM as well.

We use ESBuild to create individual bundles for the CLI entry-points,
and the actual tool entry-point. We use a bundler because this enables
the localize code be ESM compatible. Without a bundler, all relative imports
within the `tools` entry-point would need to explicitly have the `.js`
extension. This would be cumbersome and hard to maintain/enforce or
validate.

One might wonder why this is not a standard APF entry-point then. The
answer is that the APF entry-points do not support exposing the CLI
binaries (like `yarn localize-translate`). This could be done through
tertiary entry-points, but using ESBuild directly gives us more control
for now. We might want to revisit this in the future again.

PR Close #43431
2021-10-01 18:28:44 +00:00
..
integrationtest refactor(compiler-cli): remove listLazyRoutes operation (#43591) 2021-09-29 14:45:18 -07:00
linker refactor(compiler): combine call ASTs (#42882) 2021-09-21 20:55:29 +00:00
ngcc refactor(compiler-cli): remove dynamic require in ngcc to allow for bundling (#43431) 2021-10-01 18:28:43 +00:00
private refactor: switch packages away from deep cross-package imports (#43431) 2021-10-01 18:28:43 +00:00
src refactor: switch packages away from deep cross-package imports (#43431) 2021-10-01 18:28:43 +00:00
test build: switch view engine language-service tests to v12.x packages (#43431) 2021-10-01 18:28:43 +00:00
BUILD.bazel refactor: expose new @angular/localize/tools entry-point for CLI usage (#43431) 2021-10-01 18:28:44 +00:00
esbuild.config.js refactor: setup bundling for @angular/compiler-cli package (#43431) 2021-10-01 18:28:42 +00:00
index.ts refactor(compiler-cli): expose code needed by Angular CLI (#43431) 2021-10-01 18:28:43 +00:00
package.json refactor(compiler-cli): expose code needed by Angular CLI (#43431) 2021-10-01 18:28:43 +00:00
tsconfig-build.json build: update tsconfigs to use ES2020 as target and module (#43431) 2021-10-01 18:28:42 +00:00
tsconfig.json build: update tsconfigs to use ES2020 as target and module (#43431) 2021-10-01 18:28:42 +00:00