From 6d1d3c6a98ad4089dba8a7c2621dd4b84084f0e8 Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Tue, 10 Nov 2020 10:23:38 -0800 Subject: [PATCH] refactor(core): Remove circular dependency on `render3` and `ng_module` (#39621) Extracted `NgModeDef` into a separate file to break the circular dependency. PR Close #39621 --- goldens/circular-deps/packages.json | 690 ++---------------- .../core/src/core_render3_private_export.ts | 6 +- .../src/linker/ng_module_factory_loader.ts | 3 +- .../linker/ng_module_factory_registration.ts | 2 +- packages/core/src/metadata/ng_module.ts | 58 +- packages/core/src/metadata/ng_module_def.ts | 73 ++ packages/core/src/r3_symbols.ts | 3 +- packages/core/src/render3/definition.ts | 3 +- packages/core/src/render3/index.ts | 3 +- packages/core/src/render3/jit/module.ts | 4 +- packages/core/src/render3/ng_module_ref.ts | 6 +- packages/core/test/render3/ivy/jit_spec.ts | 8 +- 12 files changed, 175 insertions(+), 684 deletions(-) create mode 100644 packages/core/src/metadata/ng_module_def.ts diff --git a/goldens/circular-deps/packages.json b/goldens/circular-deps/packages.json index b3e4d06665..49b77a77b6 100644 --- a/goldens/circular-deps/packages.json +++ b/goldens/circular-deps/packages.json @@ -118,13 +118,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts", @@ -137,13 +130,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -167,55 +153,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/application_tokens.ts", - "packages/core/src/linker/component_factory.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/application_tokens.ts", - "packages/core/src/linker/component_factory.ts", - "packages/core/src/linker/ng_module_factory.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/application_tokens.ts", - "packages/core/src/linker/component_factory.ts", - "packages/core/src/linker/ng_module_factory.ts", - "packages/core/src/linker/component_factory_resolver.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -241,13 +178,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -256,24 +186,6 @@ "packages/core/src/application_ref.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -287,13 +199,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -309,59 +214,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/error_handler.ts", - "packages/core/src/errors.ts", - "packages/core/src/view/types.ts", - "packages/core/src/linker/template_ref.ts", - "packages/core/src/render3/instructions/shared.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/error_handler.ts", - "packages/core/src/errors.ts", - "packages/core/src/view/types.ts", - "packages/core/src/linker/template_ref.ts", - "packages/core/src/render3/instructions/shared.ts", - "packages/core/src/render3/di.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/error_handler.ts", - "packages/core/src/errors.ts", - "packages/core/src/view/types.ts", - "packages/core/src/linker/template_ref.ts", - "packages/core/src/render3/instructions/shared.ts", - "packages/core/src/render3/di.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -380,13 +232,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -399,21 +244,6 @@ "packages/core/src/linker/template_ref.ts", "packages/core/src/render3/view_ref.ts" ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/error_handler.ts", - "packages/core/src/errors.ts", - "packages/core/src/view/types.ts", - "packages/core/src/linker/view_container_ref.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], [ "packages/core/src/application_ref.ts", "packages/core/src/error_handler.ts", @@ -427,13 +257,6 @@ "packages/core/src/linker/compiler.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -446,13 +269,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -464,19 +280,6 @@ "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], [ "packages/core/src/application_ref.ts", "packages/core/src/linker/compiler.ts", @@ -488,67 +291,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/render3/component.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/render3/component.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/render3/component.ts", - "packages/core/src/render3/util/global_utils.ts", - "packages/core/src/render3/util/change_detection_utils.ts", - "packages/core/src/render3/util/discovery_utils.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -568,13 +310,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -586,140 +321,6 @@ "packages/core/src/view/provider.ts", "packages/core/src/view/refs.ts" ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/view/provider.ts", - "packages/core/src/view/refs.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/view/provider.ts", - "packages/core/src/view/refs.ts", - "packages/core/src/view/ng_module.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/view/provider.ts", - "packages/core/src/view/refs.ts", - "packages/core/src/view/ng_module.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/component_ref.ts", - "packages/core/src/view/provider.ts", - "packages/core/src/view/refs.ts", - "packages/core/src/view/ng_module.ts", - "packages/core/src/view/util.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/ng_module_ref.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/ng_module_ref.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/ng_module_ref.ts", - "packages/core/src/linker/ng_module_factory_registration.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/ng_module_ref.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/linker/compiler.ts", - "packages/core/src/render3/ng_module_ref.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], [ "packages/core/src/application_ref.ts", "packages/core/src/metadata/resource_loading.ts", @@ -728,13 +329,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -748,65 +342,6 @@ "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/jit/environment.ts", - "packages/core/src/render3/index.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/jit/environment.ts", - "packages/core/src/render3/index.ts", - "packages/core/src/render3/features/providers_feature.ts", - "packages/core/src/render3/di_setup.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], [ "packages/core/src/application_ref.ts", "packages/core/src/metadata/resource_loading.ts", @@ -822,49 +357,6 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/jit/environment.ts", - "packages/core/src/render3/index.ts", - "packages/core/src/render3/features/providers_feature.ts", - "packages/core/src/render3/di_setup.ts", - "packages/core/src/render3/instructions/all.ts", - "packages/core/src/render3/instructions/di.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts", - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/view_ref.ts" - ], - [ - "packages/core/src/application_ref.ts", - "packages/core/src/metadata/resource_loading.ts", - "packages/core/src/metadata/directives.ts", - "packages/core/src/render3/jit/directive.ts", - "packages/core/src/render3/jit/environment.ts", - "packages/core/src/render3/index.ts", - "packages/core/src/render3/pipe.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -906,90 +398,10 @@ "packages/core/src/di/index.ts", "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", "packages/core/src/di/jit/util.ts", "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" ], - [ - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/interfaces/node.ts", - "packages/core/src/render3/interfaces/renderer.ts", - "packages/core/src/render/api.ts", - "packages/core/src/render3/interfaces/type_checks.ts", - "packages/core/src/render3/interfaces/container.ts", - "packages/core/src/render3/interfaces/view.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts" - ], - [ - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/interfaces/node.ts", - "packages/core/src/render3/interfaces/renderer.ts", - "packages/core/src/render/api.ts", - "packages/core/src/render3/interfaces/type_checks.ts", - "packages/core/src/render3/interfaces/container.ts", - "packages/core/src/render3/interfaces/view.ts", - "packages/core/src/metadata.ts", - "packages/core/src/di.ts", - "packages/core/src/di/index.ts", - "packages/core/src/di/injectable.ts", - "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts" - ], - [ - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/interfaces/node.ts", - "packages/core/src/render3/interfaces/renderer.ts", - "packages/core/src/render/api.ts", - "packages/core/src/render3/interfaces/type_checks.ts", - "packages/core/src/render3/interfaces/container.ts", - "packages/core/src/render3/interfaces/view.ts", - "packages/core/src/render3/interfaces/definition.ts", - "packages/core/src/core.ts", - "packages/core/src/metadata.ts", - "packages/core/src/di.ts", - "packages/core/src/di/index.ts", - "packages/core/src/di/injectable.ts", - "packages/core/src/di/jit/injectable.ts", - "packages/core/src/di/jit/environment.ts", - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts" - ], - [ - "packages/core/src/change_detection/change_detector_ref.ts", - "packages/core/src/render3/interfaces/node.ts", - "packages/core/src/render3/interfaces/renderer.ts", - "packages/core/src/render/api.ts", - "packages/core/src/render3/state.ts", - "packages/core/src/render3/assert.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/di/jit/util.ts" - ], [ "packages/core/src/change_detection/change_detector_ref.ts", "packages/core/src/render3/view_ref.ts" @@ -1002,6 +414,20 @@ "packages/core/src/change_detection/differs/default_keyvalue_differ.ts", "packages/core/src/change_detection/differs/keyvalue_differs.ts" ], + [ + "packages/core/src/core.ts", + "packages/core/src/metadata.ts", + "packages/core/src/di.ts", + "packages/core/src/di/index.ts", + "packages/core/src/di/injectable.ts", + "packages/core/src/di/jit/injectable.ts", + "packages/core/src/di/jit/environment.ts", + "packages/core/src/di/injector_compatibility.ts", + "packages/core/src/di/injector.ts", + "packages/core/src/di/r3_injector.ts", + "packages/core/src/render3/definition.ts", + "packages/core/src/render3/interfaces/definition.ts" + ], [ "packages/core/src/debug/debug_node.ts", "packages/core/src/view/index.ts", @@ -1018,6 +444,25 @@ "packages/core/src/di/injector.ts", "packages/core/src/di/null_injector.ts" ], + [ + "packages/core/src/di.ts", + "packages/core/src/di/index.ts", + "packages/core/src/di/injectable.ts", + "packages/core/src/di/jit/injectable.ts", + "packages/core/src/di/jit/environment.ts", + "packages/core/src/di/injector_compatibility.ts", + "packages/core/src/di/injector.ts", + "packages/core/src/di/r3_injector.ts", + "packages/core/src/render3/definition.ts", + "packages/core/src/render3/interfaces/definition.ts", + "packages/core/src/render3/interfaces/node.ts", + "packages/core/src/render3/interfaces/renderer.ts", + "packages/core/src/render/api.ts", + "packages/core/src/render3/interfaces/type_checks.ts", + "packages/core/src/render3/interfaces/container.ts", + "packages/core/src/render3/interfaces/view.ts", + "packages/core/src/metadata.ts" + ], [ "packages/core/src/di/injectable.ts", "packages/core/src/di/jit/injectable.ts" @@ -1036,14 +481,6 @@ "packages/core/src/di/injector.ts", "packages/core/src/di/r3_injector.ts" ], - [ - "packages/core/src/di/injector_compatibility.ts", - "packages/core/src/di/injector.ts", - "packages/core/src/di/r3_injector.ts", - "packages/core/src/render3/definition.ts", - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/di/util.ts" - ], [ "packages/core/src/di/injector_token.ts", "packages/core/src/di/injector.ts" @@ -1052,6 +489,18 @@ "packages/core/src/di/injector.ts", "packages/core/src/di/r3_injector.ts" ], + [ + "packages/core/src/di/injector.ts", + "packages/core/src/di/r3_injector.ts", + "packages/core/src/render3/definition.ts", + "packages/core/src/render3/interfaces/definition.ts", + "packages/core/src/render3/interfaces/node.ts", + "packages/core/src/render3/interfaces/renderer.ts", + "packages/core/src/render/api.ts", + "packages/core/src/render3/interfaces/type_checks.ts", + "packages/core/src/render3/interfaces/container.ts", + "packages/core/src/render3/interfaces/view.ts" + ], [ "packages/core/src/di/reflective_errors.ts", "packages/core/src/di/reflective_injector.ts" @@ -1077,10 +526,6 @@ "packages/core/src/linker/component_factory_resolver.ts", "packages/core/src/linker/ng_module_factory.ts" ], - [ - "packages/core/src/linker/ng_module_factory_registration.ts", - "packages/core/src/render3/ng_module_ref.ts" - ], [ "packages/core/src/metadata/directives.ts", "packages/core/src/render3/jit/directive.ts" @@ -1090,6 +535,11 @@ "packages/core/src/render3/jit/directive.ts", "packages/core/src/metadata/resource_loading.ts" ], + [ + "packages/core/src/metadata/directives.ts", + "packages/core/src/render3/jit/directive.ts", + "packages/core/src/render3/jit/module.ts" + ], [ "packages/core/src/metadata/directives.ts", "packages/core/src/render3/jit/pipe.ts" @@ -1098,11 +548,6 @@ "packages/core/src/metadata/ng_module.ts", "packages/core/src/render3/jit/module.ts" ], - [ - "packages/core/src/metadata/ng_module.ts", - "packages/core/src/render3/jit/module.ts", - "packages/core/src/render3/definition.ts" - ], [ "packages/core/src/render/api.ts", "packages/core/src/render3/interfaces/renderer.ts" @@ -1156,12 +601,36 @@ [ "packages/core/src/render/api.ts", "packages/core/src/render3/interfaces/type_checks.ts", + "packages/core/src/render3/interfaces/definition.ts", "packages/core/src/render3/interfaces/node.ts", "packages/core/src/render3/interfaces/renderer.ts" ], [ "packages/core/src/render/api.ts", "packages/core/src/render3/interfaces/type_checks.ts", + "packages/core/src/render3/interfaces/node.ts", + "packages/core/src/render3/interfaces/renderer.ts" + ], + [ + "packages/core/src/render/api.ts", + "packages/core/src/render3/interfaces/type_checks.ts", + "packages/core/src/render3/interfaces/renderer.ts" + ], + [ + "packages/core/src/render/api.ts", + "packages/core/src/render3/state.ts", + "packages/core/src/render3/assert.ts", + "packages/core/src/render3/definition.ts", + "packages/core/src/render3/interfaces/definition.ts", + "packages/core/src/render3/interfaces/node.ts", + "packages/core/src/render3/interfaces/renderer.ts" + ], + [ + "packages/core/src/render/api.ts", + "packages/core/src/render3/state.ts", + "packages/core/src/render3/assert.ts", + "packages/core/src/render3/interfaces/definition.ts", + "packages/core/src/render3/interfaces/node.ts", "packages/core/src/render3/interfaces/renderer.ts" ], [ @@ -1179,6 +648,13 @@ "packages/core/src/render3/interfaces/node.ts", "packages/core/src/render3/interfaces/renderer.ts" ], + [ + "packages/core/src/render/api.ts", + "packages/core/src/render3/state.ts", + "packages/core/src/render3/interfaces/definition.ts", + "packages/core/src/render3/interfaces/node.ts", + "packages/core/src/render3/interfaces/renderer.ts" + ], [ "packages/core/src/render/api.ts", "packages/core/src/render3/state.ts", @@ -1209,10 +685,6 @@ "packages/core/src/render3/interfaces/container.ts", "packages/core/src/render3/interfaces/view.ts" ], - [ - "packages/core/src/render3/interfaces/definition.ts", - "packages/core/src/render3/interfaces/view.ts" - ], [ "packages/core/src/render3/interfaces/query.ts", "packages/core/src/render3/interfaces/view.ts" diff --git a/packages/core/src/core_render3_private_export.ts b/packages/core/src/core_render3_private_export.ts index 6f12c1df9f..668ec0c720 100644 --- a/packages/core/src/core_render3_private_export.ts +++ b/packages/core/src/core_render3_private_export.ts @@ -56,13 +56,15 @@ export { SWITCH_COMPILE_PIPE__POST_R3__ as ɵSWITCH_COMPILE_PIPE__POST_R3__, } from './metadata/directives'; export { - NgModuleDef as ɵNgModuleDef, - NgModuleTransitiveScopes as ɵNgModuleTransitiveScopes, ɵɵNgModuleDefWithMeta, } from './metadata/ng_module'; export { SWITCH_COMPILE_NGMODULE__POST_R3__ as ɵSWITCH_COMPILE_NGMODULE__POST_R3__, } from './metadata/ng_module'; +export { + NgModuleDef as ɵNgModuleDef, + NgModuleTransitiveScopes as ɵNgModuleTransitiveScopes, +} from './metadata/ng_module_def'; export { SWITCH_RENDERER2_FACTORY__POST_R3__ as ɵSWITCH_RENDERER2_FACTORY__POST_R3__, } from './render/api'; diff --git a/packages/core/src/linker/ng_module_factory_loader.ts b/packages/core/src/linker/ng_module_factory_loader.ts index 4d7f6c78a6..1586a4418c 100644 --- a/packages/core/src/linker/ng_module_factory_loader.ts +++ b/packages/core/src/linker/ng_module_factory_loader.ts @@ -6,7 +6,8 @@ * found in the LICENSE file at https://angular.io/license */ -import {NgModuleFactory as R3NgModuleFactory, NgModuleType} from '../render3/ng_module_ref'; +import {NgModuleType} from '../metadata/ng_module_def'; +import {NgModuleFactory as R3NgModuleFactory} from '../render3/ng_module_ref'; import {NgModuleFactory} from './ng_module_factory'; import {getRegisteredNgModuleType} from './ng_module_factory_registration'; diff --git a/packages/core/src/linker/ng_module_factory_registration.ts b/packages/core/src/linker/ng_module_factory_registration.ts index b47e635778..2462d86b1b 100644 --- a/packages/core/src/linker/ng_module_factory_registration.ts +++ b/packages/core/src/linker/ng_module_factory_registration.ts @@ -8,8 +8,8 @@ import {Type} from '../interface/type'; +import {NgModuleType} from '../metadata/ng_module_def'; import {autoRegisterModuleById, getNgModuleDef} from '../render3/definition'; -import {NgModuleType} from '../render3/ng_module_ref'; import {maybeUnwrapFn} from '../render3/util/misc_utils'; import {stringify} from '../util/stringify'; diff --git a/packages/core/src/metadata/ng_module.ts b/packages/core/src/metadata/ng_module.ts index d6fe308bb4..72796af4a7 100644 --- a/packages/core/src/metadata/ng_module.ts +++ b/packages/core/src/metadata/ng_module.ts @@ -13,70 +13,14 @@ import {Type} from '../interface/type'; import {SchemaMetadata} from '../metadata/schema'; import {compileNgModule as render3CompileNgModule} from '../render3/jit/module'; import {makeDecorator, TypeDecorator} from '../util/decorators'; +import {NgModuleDef} from './ng_module_def'; -/** - * Represents the expansion of an `NgModule` into its scopes. - * - * A scope is a set of directives and pipes that are visible in a particular context. Each - * `NgModule` has two scopes. The `compilation` scope is the set of directives and pipes that will - * be recognized in the templates of components declared by the module. The `exported` scope is the - * set of directives and pipes exported by a module (that is, module B's exported scope gets added - * to module A's compilation scope when module A imports B). - */ -export interface NgModuleTransitiveScopes { - compilation: {directives: Set; pipes: Set;}; - exported: {directives: Set; pipes: Set;}; - schemas: SchemaMetadata[]|null; -} - /** * @publicApi */ export type ɵɵNgModuleDefWithMeta = NgModuleDef; -/** - * Runtime link information for NgModules. - * - * This is the internal data structure used by the runtime to assemble components, directives, - * pipes, and injectors. - * - * NOTE: Always use `ɵɵdefineNgModule` function to create this object, - * never create the object directly since the shape of this object - * can change between versions. - */ -export interface NgModuleDef { - /** Token representing the module. Used by DI. */ - type: T; - - /** List of components to bootstrap. */ - bootstrap: Type[]|(() => Type[]); - - /** List of components, directives, and pipes declared by this module. */ - declarations: Type[]|(() => Type[]); - - /** List of modules or `ModuleWithProviders` imported by this module. */ - imports: Type[]|(() => Type[]); - - /** - * List of modules, `ModuleWithProviders`, components, directives, or pipes exported by this - * module. - */ - exports: Type[]|(() => Type[]); - - /** - * Cached value of computed `transitiveCompileScopes` for this module. - * - * This should never be read directly, but accessed via `transitiveScopesFor`. - */ - transitiveCompileScopes: NgModuleTransitiveScopes|null; - - /** The set of schemas that declare elements to be allowed in the NgModule. */ - schemas: SchemaMetadata[]|null; - - /** Unique ID for the module with which it should be registered. */ - id: string|null; -} /** * A wrapper around an NgModule that associates it with [providers](guide/glossary#provider diff --git a/packages/core/src/metadata/ng_module_def.ts b/packages/core/src/metadata/ng_module_def.ts new file mode 100644 index 0000000000..7b97645016 --- /dev/null +++ b/packages/core/src/metadata/ng_module_def.ts @@ -0,0 +1,73 @@ +/** + * @license + * Copyright Google LLC All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +import {Type} from '../interface/type'; +import {SchemaMetadata} from './schema'; + + +export interface NgModuleType extends Type { + ɵmod: NgModuleDef; +} + +/** + * Represents the expansion of an `NgModule` into its scopes. + * + * A scope is a set of directives and pipes that are visible in a particular context. Each + * `NgModule` has two scopes. The `compilation` scope is the set of directives and pipes that will + * be recognized in the templates of components declared by the module. The `exported` scope is the + * set of directives and pipes exported by a module (that is, module B's exported scope gets added + * to module A's compilation scope when module A imports B). + */ +export interface NgModuleTransitiveScopes { + compilation: {directives: Set; pipes: Set;}; + exported: {directives: Set; pipes: Set;}; + schemas: SchemaMetadata[]|null; +} + +/** + * Runtime link information for NgModules. + * + * This is the internal data structure used by the runtime to assemble components, directives, + * pipes, and injectors. + * + * NOTE: Always use `ɵɵdefineNgModule` function to create this object, + * never create the object directly since the shape of this object + * can change between versions. + */ +export interface NgModuleDef { + /** Token representing the module. Used by DI. */ + type: T; + + /** List of components to bootstrap. */ + bootstrap: Type[]|(() => Type[]); + + /** List of components, directives, and pipes declared by this module. */ + declarations: Type[]|(() => Type[]); + + /** List of modules or `ModuleWithProviders` imported by this module. */ + imports: Type[]|(() => Type[]); + + /** + * List of modules, `ModuleWithProviders`, components, directives, or pipes exported by this + * module. + */ + exports: Type[]|(() => Type[]); + + /** + * Cached value of computed `transitiveCompileScopes` for this module. + * + * This should never be read directly, but accessed via `transitiveScopesFor`. + */ + transitiveCompileScopes: NgModuleTransitiveScopes|null; + + /** The set of schemas that declare elements to be allowed in the NgModule. */ + schemas: SchemaMetadata[]|null; + + /** Unique ID for the module with which it should be registered. */ + id: string|null; +} diff --git a/packages/core/src/r3_symbols.ts b/packages/core/src/r3_symbols.ts index 1ee3762e83..480dd74075 100644 --- a/packages/core/src/r3_symbols.ts +++ b/packages/core/src/r3_symbols.ts @@ -23,7 +23,8 @@ export {ɵɵinject} from './di/injector_compatibility'; export {ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵInjectableDef, ɵɵInjectorDef} from './di/interface/defs'; -export {NgModuleDef, ɵɵNgModuleDefWithMeta} from './metadata/ng_module'; +export {ɵɵNgModuleDefWithMeta} from './metadata/ng_module'; +export {NgModuleDef} from './metadata/ng_module_def'; export {ɵɵdefineNgModule} from './render3/definition'; export {ɵɵFactoryDef} from './render3/interfaces/definition'; export {setClassMetadata} from './render3/metadata'; diff --git a/packages/core/src/render3/definition.ts b/packages/core/src/render3/definition.ts index f090a13e9e..ec6f9073e4 100644 --- a/packages/core/src/render3/definition.ts +++ b/packages/core/src/render3/definition.ts @@ -8,7 +8,7 @@ import {ChangeDetectionStrategy} from '../change_detection/constants'; import {Mutable, Type} from '../interface/type'; -import {NgModuleDef} from '../metadata/ng_module'; +import {NgModuleDef, NgModuleType} from '../metadata/ng_module_def'; import {SchemaMetadata} from '../metadata/schema'; import {ViewEncapsulation} from '../metadata/view'; import {noSideEffects} from '../util/closure'; @@ -20,7 +20,6 @@ import {NG_COMP_DEF, NG_DIR_DEF, NG_FACTORY_DEF, NG_LOC_ID_DEF, NG_MOD_DEF, NG_P import {ComponentDef, ComponentDefFeature, ComponentTemplate, ComponentType, ContentQueriesFunction, DirectiveDef, DirectiveDefFeature, DirectiveTypesOrFactory, FactoryFn, HostBindingsFunction, PipeDef, PipeType, PipeTypesOrFactory, ViewQueriesFunction} from './interfaces/definition'; import {AttributeMarker, TAttributes, TConstantsOrFactory} from './interfaces/node'; import {CssSelectorList, SelectorFlags} from './interfaces/projection'; -import {NgModuleType} from './ng_module_ref'; let _renderCompCount = 0; diff --git a/packages/core/src/render3/index.ts b/packages/core/src/render3/index.ts index 952c50d73c..2552c2e887 100644 --- a/packages/core/src/render3/index.ts +++ b/packages/core/src/render3/index.ts @@ -14,6 +14,7 @@ import {ɵɵProvidersFeature} from './features/providers_feature'; import {ComponentDef, ComponentTemplate, ComponentType, DirectiveDef, DirectiveType, PipeDef, ɵɵComponentDefWithMeta, ɵɵDirectiveDefWithMeta, ɵɵFactoryDef, ɵɵPipeDefWithMeta} from './interfaces/definition'; import {getComponent, getDirectives, getHostElement, getRenderedText} from './util/discovery_utils'; +export {NgModuleType} from '../metadata/ng_module_def'; export {ComponentFactory, ComponentFactoryResolver, ComponentRef, injectComponentFactoryResolver} from './component_ref'; export {ɵɵgetFactoryOf, ɵɵgetInheritedFactory} from './di'; export {getLocaleId, setLocaleId} from './i18n/i18n_locale_id'; @@ -139,7 +140,7 @@ export { export { setClassMetadata, } from './metadata'; -export {NgModuleFactory, NgModuleRef, NgModuleType} from './ng_module_ref'; +export {NgModuleFactory, NgModuleRef} from './ng_module_ref'; export { ɵɵpipe, ɵɵpipeBind1, diff --git a/packages/core/src/render3/jit/module.ts b/packages/core/src/render3/jit/module.ts index 409e062055..947d88cc33 100644 --- a/packages/core/src/render3/jit/module.ts +++ b/packages/core/src/render3/jit/module.ts @@ -12,13 +12,13 @@ import {NG_INJ_DEF} from '../../di/interface/defs'; import {reflectDependencies} from '../../di/jit/util'; import {Type} from '../../interface/type'; import {Component} from '../../metadata/directives'; -import {ModuleWithProviders, NgModule, NgModuleDef, NgModuleTransitiveScopes} from '../../metadata/ng_module'; +import {ModuleWithProviders, NgModule} from '../../metadata/ng_module'; +import {NgModuleDef, NgModuleTransitiveScopes, NgModuleType} from '../../metadata/ng_module_def'; import {deepForEach, flatten} from '../../util/array_utils'; import {assertDefined} from '../../util/assert'; import {getComponentDef, getDirectiveDef, getNgModuleDef, getPipeDef} from '../definition'; import {NG_COMP_DEF, NG_DIR_DEF, NG_MOD_DEF, NG_PIPE_DEF} from '../fields'; import {ComponentDef} from '../interfaces/definition'; -import {NgModuleType} from '../ng_module_ref'; import {maybeUnwrapFn, stringifyForError} from '../util/misc_utils'; import {angularCoreEnv} from './environment'; diff --git a/packages/core/src/render3/ng_module_ref.ts b/packages/core/src/render3/ng_module_ref.ts index a388e68aa8..dae0f71b0c 100644 --- a/packages/core/src/render3/ng_module_ref.ts +++ b/packages/core/src/render3/ng_module_ref.ts @@ -14,7 +14,7 @@ import {Type} from '../interface/type'; import {ComponentFactoryResolver as viewEngine_ComponentFactoryResolver} from '../linker/component_factory_resolver'; import {InternalNgModuleRef, NgModuleFactory as viewEngine_NgModuleFactory, NgModuleRef as viewEngine_NgModuleRef} from '../linker/ng_module_factory'; import {registerNgModuleType} from '../linker/ng_module_factory_registration'; -import {NgModuleDef} from '../metadata/ng_module'; +import {NgModuleType} from '../metadata/ng_module_def'; import {assertDefined} from '../util/assert'; import {stringify} from '../util/stringify'; @@ -23,10 +23,6 @@ import {getNgLocaleIdDef, getNgModuleDef} from './definition'; import {setLocaleId} from './i18n/i18n_locale_id'; import {maybeUnwrapFn} from './util/misc_utils'; -export interface NgModuleType extends Type { - ɵmod: NgModuleDef; -} - export class NgModuleRef extends viewEngine_NgModuleRef implements InternalNgModuleRef { // tslint:disable-next-line:require-internal-with-underscore _bootstrapComponents: Type[] = []; diff --git a/packages/core/test/render3/ivy/jit_spec.ts b/packages/core/test/render3/ivy/jit_spec.ts index f25eb43e7f..4e5c962785 100644 --- a/packages/core/test/render3/ivy/jit_spec.ts +++ b/packages/core/test/render3/ivy/jit_spec.ts @@ -7,17 +7,19 @@ */ import 'reflect-metadata'; -import {ElementRef, QueryList, ɵɵsetComponentScope as setComponentScope} from '@angular/core'; +import {ElementRef, QueryList} from '@angular/core'; import {Injectable} from '@angular/core/src/di/injectable'; import {setCurrentInjector, ɵɵinject} from '@angular/core/src/di/injector_compatibility'; import {ɵɵdefineInjectable, ɵɵInjectorDef} from '@angular/core/src/di/interface/defs'; import {ivyEnabled} from '@angular/core/src/ivy_switch'; import {ContentChild, ContentChildren, ViewChild, ViewChildren} from '@angular/core/src/metadata/di'; -import {Component, Directive, HostBinding, HostListener, Input, Output, Pipe} from '@angular/core/src/metadata/directives'; -import {NgModule, NgModuleDef} from '@angular/core/src/metadata/ng_module'; +import {Component, Directive, HostBinding, HostListener, Input, Pipe} from '@angular/core/src/metadata/directives'; +import {NgModule} from '@angular/core/src/metadata/ng_module'; +import {NgModuleDef} from '@angular/core/src/metadata/ng_module_def'; import {ComponentDef, FactoryFn, PipeDef} from '@angular/core/src/render3/interfaces/definition'; + ivyEnabled && describe('render3 jit', () => { let injector: any; beforeAll(() => {