Skip to content

Commit 8bc3693

Browse files
committed
refactor(core): remove circular dep in JIT decorator definitions (#59083)
Use `import type` to break phantom circular imports in the runtime definitions of JIT decorators. PR Close #59083
1 parent 98471df commit 8bc3693

File tree

5 files changed

+12
-31
lines changed

5 files changed

+12
-31
lines changed

goldens/circular-deps/packages.json

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,4 @@
11
[
2-
[
3-
"packages/core/src/metadata/directives.ts",
4-
"packages/core/src/render3/jit/directive.ts"
5-
],
6-
[
7-
"packages/core/src/metadata/directives.ts",
8-
"packages/core/src/render3/jit/directive.ts",
9-
"packages/core/src/metadata/resource_loading.ts"
10-
],
11-
[
12-
"packages/core/src/metadata/directives.ts",
13-
"packages/core/src/render3/jit/directive.ts",
14-
"packages/core/src/render3/jit/module.ts"
15-
],
16-
[
17-
"packages/core/src/metadata/directives.ts",
18-
"packages/core/src/render3/jit/pipe.ts"
19-
],
20-
[
21-
"packages/core/src/metadata/ng_module.ts",
22-
"packages/core/src/render3/jit/module.ts"
23-
],
242
[
253
"packages/core/src/render3/interfaces/container.ts",
264
"packages/core/src/render3/interfaces/view.ts"

packages/core/src/metadata/resource_loading.ts

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

99
import {Type} from '../interface/type';
1010

11-
import {Component} from './directives';
11+
import type {Component} from './directives';
1212

1313
/**
1414
* Used to resolve resource URLs on `@Component` when used with JIT compilation.

packages/core/src/render3/jit/directive.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ import {
1818
import {resolveForwardRef} from '../../di/forward_ref';
1919
import {getReflect, reflectDependencies} from '../../di/jit/util';
2020
import {Type} from '../../interface/type';
21-
import {Query} from '../../metadata/di';
22-
import {Component, Directive, Input} from '../../metadata/directives';
21+
import type {Query} from '../../metadata/di';
22+
import type {Component, Directive, Input} from '../../metadata/directives';
2323
import {
2424
componentNeedsResolution,
2525
maybeQueueResolutionOfComponentResources,

packages/core/src/render3/jit/module.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,16 @@ import {
1313
} from '../../compiler/compiler_facade';
1414
import {resolveForwardRef} from '../../di/forward_ref';
1515
import {NG_INJ_DEF} from '../../di/interface/defs';
16-
import {ModuleWithProviders} from '../../di/interface/provider';
16+
import type {ModuleWithProviders} from '../../di/interface/provider';
1717
import {reflectDependencies} from '../../di/jit/util';
1818
import {Type} from '../../interface/type';
1919
import {registerNgModuleType} from '../../linker/ng_module_registration';
20-
import {Component} from '../../metadata/directives';
21-
import {NgModule} from '../../metadata/ng_module';
22-
import {NgModuleDef, NgModuleTransitiveScopes, NgModuleType} from '../../metadata/ng_module_def';
20+
import type {NgModule} from '../../metadata/ng_module';
21+
import type {
22+
NgModuleDef,
23+
NgModuleTransitiveScopes,
24+
NgModuleType,
25+
} from '../../metadata/ng_module_def';
2326
import {deepForEach, flatten} from '../../util/array_utils';
2427
import {assertDefined} from '../../util/assert';
2528
import {EMPTY_ARRAY} from '../../util/empty';
@@ -33,7 +36,7 @@ import {
3336
} from '../def_getters';
3437
import {depsTracker, USE_RUNTIME_DEPS_TRACKER_FOR_JIT} from '../deps_tracker/deps_tracker';
3538
import {NG_COMP_DEF, NG_DIR_DEF, NG_FACTORY_DEF, NG_MOD_DEF, NG_PIPE_DEF} from '../fields';
36-
import {ComponentDef} from '../interfaces/definition';
39+
import type {ComponentDef} from '../interfaces/definition';
3740
import {maybeUnwrapFn} from '../util/misc_utils';
3841
import {stringifyForError} from '../util/stringify_utils';
3942

packages/core/src/render3/jit/pipe.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
} from '../../compiler/compiler_facade';
1414
import {reflectDependencies} from '../../di/jit/util';
1515
import {Type} from '../../interface/type';
16-
import {Pipe} from '../../metadata/directives';
16+
import type {Pipe} from '../../metadata/directives';
1717
import {NG_FACTORY_DEF, NG_PIPE_DEF} from '../fields';
1818

1919
import {angularCoreEnv} from './environment';

0 commit comments

Comments
 (0)