Skip to content

Commit fe2a8de

Browse files
devversiondylhunn
authored andcommitted
refactor(compiler-cli): expose tooling code through private entry-point (angular#43431)
Similar to the other private entry-points we have added for localize, bazel or the migrations, we should expose the tooling code through a dedicated private export. This will make the compiler-cli exports more consistent and it will become easier for the CLI to export necessary code. PR Close angular#43431
1 parent 8cc74b6 commit fe2a8de

13 files changed

Lines changed: 39 additions & 9 deletions

File tree

.pullapprove.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1028,7 +1028,7 @@ groups:
10281028
- *can-be-global-docs-approved
10291029
- >
10301030
contains_any_globs(files, [
1031-
'packages/compiler-cli/src/tooling.ts',
1031+
'packages/compiler-cli/private/tooling.ts',
10321032
'packages/localize/tools/index.ts'
10331033
])
10341034
reviewers:

packages/compiler-cli/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ esbuild(
3535
"//packages/compiler-cli/private:bazel.ts",
3636
"//packages/compiler-cli/private:localize.ts",
3737
"//packages/compiler-cli/private:migrations.ts",
38+
"//packages/compiler-cli/private:tooling.ts",
3839
"//packages/compiler-cli/ngcc:src/locking/lock_file_with_child_process/ngcc_lock_unlocker.ts",
3940
"//packages/compiler-cli/ngcc:src/execution/cluster/ngcc_cluster_worker.ts",
4041
],
@@ -89,6 +90,7 @@ ts_library(
8990
deps = [
9091
":import_meta_url_types",
9192
"//packages/compiler",
93+
"//packages/compiler-cli/private",
9294
"//packages/compiler-cli/src/ngtsc/core",
9395
"//packages/compiler-cli/src/ngtsc/core:api",
9496
"//packages/compiler-cli/src/ngtsc/diagnostics",
@@ -103,6 +105,7 @@ ts_library(
103105
"//packages/compiler-cli/src/ngtsc/translator",
104106
"//packages/compiler-cli/src/ngtsc/typecheck",
105107
"//packages/compiler-cli/src/ngtsc/typecheck/api",
108+
"//packages/compiler-cli/src/transformers/downlevel_decorators_transform",
106109
"@npm//@bazel/typescript",
107110
"@npm//@types/minimist",
108111
"@npm//@types/node",

packages/compiler-cli/index.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,8 @@ export {CompilerOptions as AngularCompilerOptions} from './src/transformers/api'
2323
export {ngToTsDiagnostic} from './src/transformers/util';
2424

2525
// Internal exports needed for packages relying on the compiler-cli.
26-
// TODO: Consider moving into `@angular/compiler-cli/private`. This would
27-
// help with a consistent pattern for cross package imports for Angular.
28-
export * from './src/tooling';
26+
// TODO: Remove this when the CLI has switched to the private entry-point.
27+
export * from './private/tooling';
2928

3029
// Exposed as they are needed for relying on the `linker`.
3130
export * from './src/ngtsc/logging';

packages/compiler-cli/package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@
4141
"types": "./private/migrations.d.ts",
4242
"default": "./bundles/private/migrations.js"
4343
},
44+
"./private/tooling": {
45+
"types": "./private/tooling.d.ts",
46+
"default": "./bundles/private/tooling.js"
47+
},
4448
"./ngcc/src/execution/cluster/ngcc_cluster_worker": {
4549
"default": "./bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js"
4650
},

packages/compiler-cli/private/BUILD.bazel

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,7 @@ ts_library(
1414
"//packages/compiler-cli/src/ngtsc/perf",
1515
"//packages/compiler-cli/src/ngtsc/reflection",
1616
"//packages/compiler-cli/src/ngtsc/sourcemaps",
17+
"//packages/compiler-cli/src/transformers/downlevel_decorators_transform",
18+
"@npm//typescript",
1719
],
1820
)
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515

1616
import ts from 'typescript';
1717

18-
import {TypeScriptReflectionHost} from './ngtsc/reflection';
19-
import {getDownlevelDecoratorsTransform} from './transformers/downlevel_decorators_transform';
18+
import {TypeScriptReflectionHost} from '../src/ngtsc/reflection';
19+
import {getDownlevelDecoratorsTransform} from '../src/transformers/downlevel_decorators_transform/index';
2020

2121
/**
2222
* Known values for global variables in `@angular/core` that Terser should set using
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
load("//tools:defaults.bzl", "ts_library")
2+
3+
package(default_visibility = ["//visibility:public"])
4+
5+
ts_library(
6+
name = "downlevel_decorators_transform",
7+
srcs = glob(["*.ts"]),
8+
deps = [
9+
"//packages/compiler-cli/src/ngtsc/reflection",
10+
"@npm//typescript",
11+
],
12+
)

packages/compiler-cli/src/transformers/downlevel_decorators_transform.ts renamed to packages/compiler-cli/src/transformers/downlevel_decorators_transform/downlevel_decorators_transform.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*/
88

99
import ts from 'typescript';
10-
import {Decorator, ReflectionHost} from '../ngtsc/reflection';
10+
import {Decorator, ReflectionHost} from '../../ngtsc/reflection';
1111
import {isAliasImportDeclaration, loadIsReferencedAliasDeclarationPatch} from './patch_alias_reference_resolution';
1212

1313
/**
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
/**
2+
* @license
3+
* Copyright Google LLC All Rights Reserved.
4+
*
5+
* Use of this source code is governed by an MIT-style license that can be
6+
* found in the LICENSE file at https://angular.io/license
7+
*/
8+
9+
export {getDownlevelDecoratorsTransform} from './downlevel_decorators_transform';

packages/compiler-cli/src/transformers/patch_alias_reference_resolution.ts renamed to packages/compiler-cli/src/transformers/downlevel_decorators_transform/patch_alias_reference_resolution.ts

File renamed without changes.

0 commit comments

Comments
 (0)