@module-federation/enhanced 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CHANGELOG.md +2357 -0
- package/dist/README.md +213 -0
- package/dist/rstestmigrate.md +140 -0
- package/dist/src/_virtual/_rolldown/runtime.js +47 -0
- package/dist/src/index.d.ts +22 -19
- package/dist/src/index.js +47 -43
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/Constants.d.ts +25 -29
- package/dist/src/lib/Constants.js +136 -116
- package/dist/src/lib/Constants.js.map +1 -1
- package/dist/src/lib/container/AsyncBoundaryPlugin.d.ts +20 -16
- package/dist/src/lib/container/AsyncBoundaryPlugin.js +137 -200
- package/dist/src/lib/container/AsyncBoundaryPlugin.js.map +1 -1
- package/dist/src/lib/container/ContainerEntryDependency.d.ts +28 -23
- package/dist/src/lib/container/ContainerEntryDependency.js +39 -39
- package/dist/src/lib/container/ContainerEntryDependency.js.map +1 -1
- package/dist/src/lib/container/ContainerEntryModule.d.ts +93 -84
- package/dist/src/lib/container/ContainerEntryModule.js +219 -234
- package/dist/src/lib/container/ContainerEntryModule.js.map +1 -1
- package/dist/src/lib/container/ContainerEntryModuleFactory.d.ts +15 -10
- package/dist/src/lib/container/ContainerEntryModuleFactory.js +21 -25
- package/dist/src/lib/container/ContainerEntryModuleFactory.js.map +1 -1
- package/dist/src/lib/container/ContainerExposedDependency.d.ts +29 -24
- package/dist/src/lib/container/ContainerExposedDependency.js +47 -47
- package/dist/src/lib/container/ContainerExposedDependency.js.map +1 -1
- package/dist/src/lib/container/ContainerPlugin.d.ts +12 -8
- package/dist/src/lib/container/ContainerPlugin.js +147 -211
- package/dist/src/lib/container/ContainerPlugin.js.map +1 -1
- package/dist/src/lib/container/ContainerReferencePlugin.d.ts +16 -12
- package/dist/src/lib/container/ContainerReferencePlugin.js +74 -102
- package/dist/src/lib/container/ContainerReferencePlugin.js.map +1 -1
- package/dist/src/lib/container/FallbackDependency.d.ts +24 -19
- package/dist/src/lib/container/FallbackDependency.js +46 -44
- package/dist/src/lib/container/FallbackDependency.js.map +1 -1
- package/dist/src/lib/container/FallbackItemDependency.d.ts +13 -8
- package/dist/src/lib/container/FallbackItemDependency.js +24 -24
- package/dist/src/lib/container/FallbackItemDependency.js.map +1 -1
- package/dist/src/lib/container/FallbackModule.d.ts +82 -71
- package/dist/src/lib/container/FallbackModule.js +133 -145
- package/dist/src/lib/container/FallbackModule.js.map +1 -1
- package/dist/src/lib/container/FallbackModuleFactory.d.ts +15 -10
- package/dist/src/lib/container/FallbackModuleFactory.js +20 -24
- package/dist/src/lib/container/FallbackModuleFactory.js.map +1 -1
- package/dist/src/lib/container/HoistContainerReferencesPlugin.d.ts +11 -7
- package/dist/src/lib/container/HoistContainerReferencesPlugin.js +125 -188
- package/dist/src/lib/container/HoistContainerReferencesPlugin.js.map +1 -1
- package/dist/src/lib/container/ModuleFederationPlugin.d.ts +20 -16
- package/dist/src/lib/container/ModuleFederationPlugin.js +143 -181
- package/dist/src/lib/container/ModuleFederationPlugin.js.map +1 -1
- package/dist/src/lib/container/RemoteModule.d.ts +79 -74
- package/dist/src/lib/container/RemoteModule.js +143 -153
- package/dist/src/lib/container/RemoteModule.js.map +1 -1
- package/dist/src/lib/container/RemoteRuntimeModule.d.ts +12 -7
- package/dist/src/lib/container/RemoteRuntimeModule.js +86 -132
- package/dist/src/lib/container/RemoteRuntimeModule.js.map +1 -1
- package/dist/src/lib/container/RemoteToExternalDependency.d.ts +13 -8
- package/dist/src/lib/container/RemoteToExternalDependency.js +25 -23
- package/dist/src/lib/container/RemoteToExternalDependency.js.map +1 -1
- package/dist/src/lib/container/constant.d.ts +3 -0
- package/dist/src/lib/container/constant.js +11 -14
- package/dist/src/lib/container/constant.js.map +1 -1
- package/dist/src/lib/container/options.d.ts +7 -3
- package/dist/src/lib/container/options.js +51 -69
- package/dist/src/lib/container/options.js.map +1 -1
- package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.d.ts +14 -9
- package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.js +56 -64
- package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.js.map +1 -1
- package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.d.ts +23 -19
- package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.js +71 -101
- package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.js.map +1 -1
- package/dist/src/lib/container/runtime/FederationModulesPlugin.d.ts +20 -16
- package/dist/src/lib/container/runtime/FederationModulesPlugin.js +55 -47
- package/dist/src/lib/container/runtime/FederationModulesPlugin.js.map +1 -1
- package/dist/src/lib/container/runtime/FederationRuntimeDependency.d.ts +9 -4
- package/dist/src/lib/container/runtime/FederationRuntimeDependency.js +16 -12
- package/dist/src/lib/container/runtime/FederationRuntimeDependency.js.map +1 -1
- package/dist/src/lib/container/runtime/FederationRuntimeModule.d.ts +16 -11
- package/dist/src/lib/container/runtime/FederationRuntimeModule.js +39 -46
- package/dist/src/lib/container/runtime/FederationRuntimeModule.js.map +1 -1
- package/dist/src/lib/container/runtime/FederationRuntimePlugin.d.ts +31 -20
- package/dist/src/lib/container/runtime/FederationRuntimePlugin.js +265 -358
- package/dist/src/lib/container/runtime/FederationRuntimePlugin.js.map +1 -1
- package/dist/src/lib/container/runtime/getFederationGlobal.d.ts +9 -4
- package/dist/src/lib/container/runtime/getFederationGlobal.js +43 -41
- package/dist/src/lib/container/runtime/getFederationGlobal.js.map +1 -1
- package/dist/src/lib/container/runtime/utils.d.ts +24 -13
- package/dist/src/lib/container/runtime/utils.js +83 -101
- package/dist/src/lib/container/runtime/utils.js.map +1 -1
- package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.d.ts +15 -10
- package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.js +27 -25
- package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.js.map +1 -1
- package/dist/src/lib/sharing/ConsumeSharedModule.d.ts +77 -68
- package/dist/src/lib/sharing/ConsumeSharedModule.js +186 -214
- package/dist/src/lib/sharing/ConsumeSharedModule.js.map +1 -1
- package/dist/src/lib/sharing/ConsumeSharedPlugin.d.ts +13 -9
- package/dist/src/lib/sharing/ConsumeSharedPlugin.js +308 -475
- package/dist/src/lib/sharing/ConsumeSharedPlugin.js.map +1 -1
- package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.d.ts +16 -11
- package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.js +107 -137
- package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.js.map +1 -1
- package/dist/src/lib/sharing/ProvideForSharedDependency.d.ts +14 -9
- package/dist/src/lib/sharing/ProvideForSharedDependency.js +25 -25
- package/dist/src/lib/sharing/ProvideForSharedDependency.js.map +1 -1
- package/dist/src/lib/sharing/ProvideSharedDependency.d.ts +44 -39
- package/dist/src/lib/sharing/ProvideSharedDependency.js +72 -76
- package/dist/src/lib/sharing/ProvideSharedDependency.js.map +1 -1
- package/dist/src/lib/sharing/ProvideSharedModule.d.ts +91 -82
- package/dist/src/lib/sharing/ProvideSharedModule.js +177 -184
- package/dist/src/lib/sharing/ProvideSharedModule.js.map +1 -1
- package/dist/src/lib/sharing/ProvideSharedModuleFactory.d.ts +14 -9
- package/dist/src/lib/sharing/ProvideSharedModuleFactory.js +19 -25
- package/dist/src/lib/sharing/ProvideSharedModuleFactory.js.map +1 -1
- package/dist/src/lib/sharing/ProvideSharedPlugin.d.ts +27 -21
- package/dist/src/lib/sharing/ProvideSharedPlugin.js +341 -550
- package/dist/src/lib/sharing/ProvideSharedPlugin.js.map +1 -1
- package/dist/src/lib/sharing/SharePlugin.d.ts +53 -49
- package/dist/src/lib/sharing/SharePlugin.js +86 -100
- package/dist/src/lib/sharing/SharePlugin.js.map +1 -1
- package/dist/src/lib/sharing/ShareRuntimeModule.d.ts +12 -7
- package/dist/src/lib/sharing/ShareRuntimeModule.js +81 -103
- package/dist/src/lib/sharing/ShareRuntimeModule.js.map +1 -1
- package/dist/src/lib/sharing/resolveMatchedConfigs.d.ts +11 -7
- package/dist/src/lib/sharing/resolveMatchedConfigs.js +58 -71
- package/dist/src/lib/sharing/resolveMatchedConfigs.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.d.ts +18 -14
- package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.js +74 -128
- package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.d.ts +39 -34
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.js +234 -328
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.d.ts +16 -11
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.js +30 -28
- package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.d.ts +28 -24
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.js +91 -95
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.d.ts +29 -24
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.js +47 -43
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.d.ts +20 -15
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.js +33 -29
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.d.ts +85 -77
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.js +141 -153
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.d.ts +15 -10
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.js +20 -24
- package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.d.ts +21 -16
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.js +157 -231
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.d.ts +14 -9
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.js +26 -27
- package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.js.map +1 -1
- package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.d.ts +18 -13
- package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.js +41 -49
- package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.js.map +1 -1
- package/dist/src/lib/sharing/utils.d.ts +27 -24
- package/dist/src/lib/sharing/utils.js +224 -367
- package/dist/src/lib/sharing/utils.js.map +1 -1
- package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.d.ts +11 -7
- package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.js +56 -75
- package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.js.map +1 -1
- package/dist/src/lib/startup/StartupHelpers.d.ts +11 -6
- package/dist/src/lib/startup/StartupHelpers.js +128 -178
- package/dist/src/lib/startup/StartupHelpers.js.map +1 -1
- package/dist/src/prefetch.d.ts +3 -2
- package/dist/src/prefetch.js +17 -8
- package/dist/src/rspack.d.ts +3 -2
- package/dist/src/rspack.js +35 -11
- package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.d.ts +8 -4
- package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js +19 -16
- package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js.map +1 -1
- package/dist/src/runtime.d.ts +1 -1
- package/dist/src/runtime.js +11 -18
- package/dist/src/schemas/container/ContainerPlugin.check.d.ts +13 -5
- package/dist/src/schemas/container/ContainerPlugin.check.js +958 -1218
- package/dist/src/schemas/container/ContainerPlugin.check.js.map +1 -1
- package/dist/src/schemas/container/ContainerPlugin.d.ts +271 -268
- package/dist/src/schemas/container/ContainerPlugin.js +273 -361
- package/dist/src/schemas/container/ContainerPlugin.js.map +1 -1
- package/dist/src/schemas/container/ContainerReferencePlugin.check.d.ts +13 -5
- package/dist/src/schemas/container/ContainerReferencePlugin.check.js +335 -443
- package/dist/src/schemas/container/ContainerReferencePlugin.check.js.map +1 -1
- package/dist/src/schemas/container/ContainerReferencePlugin.d.ts +102 -99
- package/dist/src/schemas/container/ContainerReferencePlugin.js +122 -162
- package/dist/src/schemas/container/ContainerReferencePlugin.js.map +1 -1
- package/dist/src/schemas/container/ExternalsType.check.d.ts +13 -5
- package/dist/src/schemas/container/ExternalsType.check.js +36 -62
- package/dist/src/schemas/container/ExternalsType.check.js.map +1 -1
- package/dist/src/schemas/container/ExternalsType.d.ts +5 -2
- package/dist/src/schemas/container/ExternalsType.js +8 -11
- package/dist/src/schemas/container/ExternalsType.js.map +1 -1
- package/dist/src/schemas/container/ModuleFederationPlugin.check.js +3001 -4812
- package/dist/src/schemas/container/ModuleFederationPlugin.check.js.map +1 -1
- package/dist/src/schemas/container/ModuleFederationPlugin.d.ts +819 -814
- package/dist/src/schemas/container/ModuleFederationPlugin.js +780 -1053
- package/dist/src/schemas/container/ModuleFederationPlugin.js.map +1 -1
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.d.ts +13 -5
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.js +568 -768
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.js.map +1 -1
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.d.ts +197 -194
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.js +212 -238
- package/dist/src/schemas/sharing/ConsumeSharedPlugin.js.map +1 -1
- package/dist/src/schemas/sharing/ProvideSharedPlugin.check.d.ts +13 -5
- package/dist/src/schemas/sharing/ProvideSharedPlugin.check.js +598 -804
- package/dist/src/schemas/sharing/ProvideSharedPlugin.check.js.map +1 -1
- package/dist/src/schemas/sharing/ProvideSharedPlugin.d.ts +184 -181
- package/dist/src/schemas/sharing/ProvideSharedPlugin.js +196 -229
- package/dist/src/schemas/sharing/ProvideSharedPlugin.js.map +1 -1
- package/dist/src/schemas/sharing/ProviderSharedPlugin.check.d.ts +12 -4
- package/dist/src/schemas/sharing/ProviderSharedPlugin.check.js +285 -482
- package/dist/src/schemas/sharing/ProviderSharedPlugin.check.js.map +1 -1
- package/dist/src/schemas/sharing/ProviderSharedPlugin.d.ts +103 -100
- package/dist/src/schemas/sharing/ProviderSharedPlugin.js +104 -126
- package/dist/src/schemas/sharing/ProviderSharedPlugin.js.map +1 -1
- package/dist/src/schemas/sharing/SharePlugin.check.d.ts +13 -5
- package/dist/src/schemas/sharing/SharePlugin.check.js +749 -965
- package/dist/src/schemas/sharing/SharePlugin.check.js.map +1 -1
- package/dist/src/schemas/sharing/SharePlugin.d.ts +245 -242
- package/dist/src/schemas/sharing/SharePlugin.js +256 -293
- package/dist/src/schemas/sharing/SharePlugin.js.map +1 -1
- package/dist/src/utils.d.ts +3 -0
- package/dist/src/utils.js +35 -26
- package/dist/src/utils.js.map +1 -1
- package/dist/src/webpack.d.ts +2 -2
- package/dist/src/webpack.js +6 -40
- package/dist/src/wrapper/AsyncBoundaryPlugin.d.ts +9 -4
- package/dist/src/wrapper/AsyncBoundaryPlugin.js +12 -11
- package/dist/src/wrapper/AsyncBoundaryPlugin.js.map +1 -1
- package/dist/src/wrapper/BaseWrapperPlugin.d.ts +18 -13
- package/dist/src/wrapper/BaseWrapperPlugin.js +39 -39
- package/dist/src/wrapper/BaseWrapperPlugin.js.map +1 -1
- package/dist/src/wrapper/ConsumeSharedPlugin.d.ts +10 -4
- package/dist/src/wrapper/ConsumeSharedPlugin.js +12 -11
- package/dist/src/wrapper/ConsumeSharedPlugin.js.map +1 -1
- package/dist/src/wrapper/ContainerPlugin.d.ts +9 -4
- package/dist/src/wrapper/ContainerPlugin.js +12 -11
- package/dist/src/wrapper/ContainerPlugin.js.map +1 -1
- package/dist/src/wrapper/ContainerReferencePlugin.d.ts +9 -4
- package/dist/src/wrapper/ContainerReferencePlugin.js +12 -11
- package/dist/src/wrapper/ContainerReferencePlugin.js.map +1 -1
- package/dist/src/wrapper/FederationModulesPlugin.d.ts +18 -10
- package/dist/src/wrapper/FederationModulesPlugin.js +19 -19
- package/dist/src/wrapper/FederationModulesPlugin.js.map +1 -1
- package/dist/src/wrapper/FederationRuntimePlugin.d.ts +11 -6
- package/dist/src/wrapper/FederationRuntimePlugin.js +18 -17
- package/dist/src/wrapper/FederationRuntimePlugin.js.map +1 -1
- package/dist/src/wrapper/HoistContainerReferencesPlugin.d.ts +8 -3
- package/dist/src/wrapper/HoistContainerReferencesPlugin.js +12 -11
- package/dist/src/wrapper/HoistContainerReferencesPlugin.js.map +1 -1
- package/dist/src/wrapper/ModuleFederationPlugin.d.ts +12 -7
- package/dist/src/wrapper/ModuleFederationPlugin.js +73 -99
- package/dist/src/wrapper/ModuleFederationPlugin.js.map +1 -1
- package/dist/src/wrapper/ProvideSharedPlugin.d.ts +10 -4
- package/dist/src/wrapper/ProvideSharedPlugin.js +12 -11
- package/dist/src/wrapper/ProvideSharedPlugin.js.map +1 -1
- package/dist/src/wrapper/SharePlugin.d.ts +10 -4
- package/dist/src/wrapper/SharePlugin.js +12 -11
- package/dist/src/wrapper/SharePlugin.js.map +1 -1
- package/dist/src/wrapper/TreeShakingSharedPlugin.d.ts +9 -4
- package/dist/src/wrapper/TreeShakingSharedPlugin.js +12 -11
- package/dist/src/wrapper/TreeShakingSharedPlugin.js.map +1 -1
- package/package.json +20 -13
- package/dist/package.json +0 -110
- package/dist/src/declarations/plugins/container/AsyncDependenciesBlock.d.ts +0 -57
- package/dist/src/declarations/plugins/container/ModuleFactory.d.ts +0 -33
- package/dist/src/declarations/plugins/container/ObjectDeserializerContext.d.ts +0 -4
- package/dist/src/declarations/plugins/container/StaticExportsDependency.d.ts +0 -28
- package/dist/src/declarations/plugins/container/Template.d.ts +0 -198
- package/dist/src/declarations/plugins/container/WebpackError.d.ts +0 -33
- package/dist/src/declarations/plugins/sharing/ConsumeSharedModule.d.ts +0 -86
- package/dist/src/declarations/plugins/sharing/ConsumeSharedPlugin.d.ts +0 -100
- package/dist/src/declarations/plugins/sharing/ProvideSharedPlugin.d.ts +0 -102
- package/dist/src/declarations/plugins/sharing/SharePlugin.d.ts +0 -116
- package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.d.ts +0 -20
- package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.js +0 -222
- package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.js.map +0 -1
- package/dist/src/prefetch.js.map +0 -1
- package/dist/src/rspack.js.map +0 -1
- package/dist/src/runtime.js.map +0 -1
- package/dist/src/types/runtime.d.ts +0 -10
- package/dist/src/types/runtime.js +0 -3
- package/dist/src/types/runtime.js.map +0 -1
- package/dist/src/webpack.js.map +0 -1
|
@@ -1,193 +1,130 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const PLUGIN_NAME = 'HoistContainerReferences';
|
|
1
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
|
|
2
|
+
const require_runtime = require('../../_virtual/_rolldown/runtime.js');
|
|
3
|
+
const require_lib_container_runtime_FederationModulesPlugin = require('./runtime/FederationModulesPlugin.js');
|
|
4
|
+
let _module_federation_sdk_normalize_webpack_path = require("@module-federation/sdk/normalize-webpack-path");
|
|
5
|
+
|
|
6
|
+
//#region src/lib/container/HoistContainerReferencesPlugin.ts
|
|
7
|
+
require_lib_container_runtime_FederationModulesPlugin.init_FederationModulesPlugin();
|
|
8
|
+
const { AsyncDependenciesBlock, ExternalModule } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack"));
|
|
9
|
+
const PLUGIN_NAME = "HoistContainerReferences";
|
|
11
10
|
/**
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
if (!remoteModule)
|
|
104
|
-
continue;
|
|
105
|
-
const referencedRemoteModules = getAllReferencedModules(compilation, remoteModule, 'initial');
|
|
106
|
-
referencedRemoteModules.forEach((m) => allModulesToHoist.add(m));
|
|
107
|
-
const remoteModuleRuntimes = chunkGraph.getModuleRuntimes(remoteModule);
|
|
108
|
-
const remoteRuntimes = new Set();
|
|
109
|
-
for (const runtimeSpec of remoteModuleRuntimes) {
|
|
110
|
-
compilation.compiler.webpack.util.runtime.forEachRuntime(runtimeSpec, (runtimeKey) => {
|
|
111
|
-
if (runtimeKey)
|
|
112
|
-
remoteRuntimes.add(runtimeKey);
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
for (const runtime of remoteRuntimes) {
|
|
116
|
-
const runtimeChunk = compilation.namedChunks.get(runtime);
|
|
117
|
-
if (!runtimeChunk)
|
|
118
|
-
continue;
|
|
119
|
-
for (const module of referencedRemoteModules) {
|
|
120
|
-
if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) {
|
|
121
|
-
chunkGraph.connectChunkAndModule(runtimeChunk, module);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
this.cleanUpChunks(compilation, allModulesToHoist);
|
|
127
|
-
}
|
|
128
|
-
// Method to clean up chunks by disconnecting unused modules
|
|
129
|
-
cleanUpChunks(compilation, modules) {
|
|
130
|
-
const { chunkGraph } = compilation;
|
|
131
|
-
for (const module of modules) {
|
|
132
|
-
for (const chunk of chunkGraph.getModuleChunks(module)) {
|
|
133
|
-
if (!chunk.hasRuntime()) {
|
|
134
|
-
chunkGraph.disconnectChunkAndModule(chunk, module);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
// Method to get runtime chunks
|
|
140
|
-
getRuntimeChunks(compilation) {
|
|
141
|
-
const runtimeChunks = new Set();
|
|
142
|
-
for (const chunk of compilation.chunks) {
|
|
143
|
-
if (chunk.hasRuntime()) {
|
|
144
|
-
runtimeChunks.add(chunk);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
return runtimeChunks;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
// Helper method to collect all referenced modules recursively
|
|
11
|
+
* This plugin hoists container-related modules into runtime chunks when using runtimeChunk: single configuration.
|
|
12
|
+
*/
|
|
13
|
+
var HoistContainerReferences = class {
|
|
14
|
+
apply(compiler) {
|
|
15
|
+
compiler.hooks.thisCompilation.tap(PLUGIN_NAME, (compilation) => {
|
|
16
|
+
const logger = compilation.getLogger(PLUGIN_NAME);
|
|
17
|
+
const hooks = require_lib_container_runtime_FederationModulesPlugin.default.getCompilationHooks(compilation);
|
|
18
|
+
const containerEntryDependencies = /* @__PURE__ */ new Set();
|
|
19
|
+
const federationRuntimeDependencies = /* @__PURE__ */ new Set();
|
|
20
|
+
const remoteDependencies = /* @__PURE__ */ new Set();
|
|
21
|
+
hooks.addContainerEntryDependency.tap("HoistContainerReferences", (dep) => {
|
|
22
|
+
containerEntryDependencies.add(dep);
|
|
23
|
+
});
|
|
24
|
+
hooks.addFederationRuntimeDependency.tap("HoistContainerReferences", (dep) => {
|
|
25
|
+
federationRuntimeDependencies.add(dep);
|
|
26
|
+
});
|
|
27
|
+
hooks.addRemoteDependency.tap("HoistContainerReferences", (dep) => {
|
|
28
|
+
remoteDependencies.add(dep);
|
|
29
|
+
});
|
|
30
|
+
compilation.hooks.optimizeChunks.tap({
|
|
31
|
+
name: PLUGIN_NAME,
|
|
32
|
+
stage: 11
|
|
33
|
+
}, (chunks) => {
|
|
34
|
+
const runtimeChunks = this.getRuntimeChunks(compilation);
|
|
35
|
+
this.hoistModulesInChunks(compilation, runtimeChunks, logger, containerEntryDependencies, federationRuntimeDependencies, remoteDependencies);
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
hoistModulesInChunks(compilation, runtimeChunks, logger, containerEntryDependencies, federationRuntimeDependencies, remoteDependencies) {
|
|
40
|
+
const { chunkGraph, moduleGraph } = compilation;
|
|
41
|
+
const allModulesToHoist = /* @__PURE__ */ new Set();
|
|
42
|
+
for (const dep of containerEntryDependencies) {
|
|
43
|
+
const containerEntryModule = moduleGraph.getModule(dep);
|
|
44
|
+
if (!containerEntryModule) continue;
|
|
45
|
+
const referencedModules = getAllReferencedModules(compilation, containerEntryModule, "initial");
|
|
46
|
+
referencedModules.forEach((m) => allModulesToHoist.add(m));
|
|
47
|
+
const moduleRuntimes = chunkGraph.getModuleRuntimes(containerEntryModule);
|
|
48
|
+
const runtimes = /* @__PURE__ */ new Set();
|
|
49
|
+
for (const runtimeSpec of moduleRuntimes) compilation.compiler.webpack.util.runtime.forEachRuntime(runtimeSpec, (runtimeKey) => {
|
|
50
|
+
if (runtimeKey) runtimes.add(runtimeKey);
|
|
51
|
+
});
|
|
52
|
+
for (const runtime of runtimes) {
|
|
53
|
+
const runtimeChunk = compilation.namedChunks.get(runtime);
|
|
54
|
+
if (!runtimeChunk) continue;
|
|
55
|
+
for (const module of referencedModules) if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) chunkGraph.connectChunkAndModule(runtimeChunk, module);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
for (const dep of federationRuntimeDependencies) {
|
|
59
|
+
const runtimeModule = moduleGraph.getModule(dep);
|
|
60
|
+
if (!runtimeModule) continue;
|
|
61
|
+
const referencedModules = getAllReferencedModules(compilation, runtimeModule, "initial");
|
|
62
|
+
referencedModules.forEach((m) => allModulesToHoist.add(m));
|
|
63
|
+
const moduleRuntimes = chunkGraph.getModuleRuntimes(runtimeModule);
|
|
64
|
+
const runtimes = /* @__PURE__ */ new Set();
|
|
65
|
+
for (const runtimeSpec of moduleRuntimes) compilation.compiler.webpack.util.runtime.forEachRuntime(runtimeSpec, (runtimeKey) => {
|
|
66
|
+
if (runtimeKey) runtimes.add(runtimeKey);
|
|
67
|
+
});
|
|
68
|
+
for (const runtime of runtimes) {
|
|
69
|
+
const runtimeChunk = compilation.namedChunks.get(runtime);
|
|
70
|
+
if (!runtimeChunk) continue;
|
|
71
|
+
for (const module of referencedModules) if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) chunkGraph.connectChunkAndModule(runtimeChunk, module);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
for (const remoteDep of remoteDependencies) {
|
|
75
|
+
const remoteModule = moduleGraph.getModule(remoteDep);
|
|
76
|
+
if (!remoteModule) continue;
|
|
77
|
+
const referencedRemoteModules = getAllReferencedModules(compilation, remoteModule, "initial");
|
|
78
|
+
referencedRemoteModules.forEach((m) => allModulesToHoist.add(m));
|
|
79
|
+
const remoteModuleRuntimes = chunkGraph.getModuleRuntimes(remoteModule);
|
|
80
|
+
const remoteRuntimes = /* @__PURE__ */ new Set();
|
|
81
|
+
for (const runtimeSpec of remoteModuleRuntimes) compilation.compiler.webpack.util.runtime.forEachRuntime(runtimeSpec, (runtimeKey) => {
|
|
82
|
+
if (runtimeKey) remoteRuntimes.add(runtimeKey);
|
|
83
|
+
});
|
|
84
|
+
for (const runtime of remoteRuntimes) {
|
|
85
|
+
const runtimeChunk = compilation.namedChunks.get(runtime);
|
|
86
|
+
if (!runtimeChunk) continue;
|
|
87
|
+
for (const module of referencedRemoteModules) if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) chunkGraph.connectChunkAndModule(runtimeChunk, module);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
this.cleanUpChunks(compilation, allModulesToHoist);
|
|
91
|
+
}
|
|
92
|
+
cleanUpChunks(compilation, modules) {
|
|
93
|
+
const { chunkGraph } = compilation;
|
|
94
|
+
for (const module of modules) for (const chunk of chunkGraph.getModuleChunks(module)) if (!chunk.hasRuntime()) chunkGraph.disconnectChunkAndModule(chunk, module);
|
|
95
|
+
}
|
|
96
|
+
getRuntimeChunks(compilation) {
|
|
97
|
+
const runtimeChunks = /* @__PURE__ */ new Set();
|
|
98
|
+
for (const chunk of compilation.chunks) if (chunk.hasRuntime()) runtimeChunks.add(chunk);
|
|
99
|
+
return runtimeChunks;
|
|
100
|
+
}
|
|
101
|
+
};
|
|
151
102
|
function getAllReferencedModules(compilation, module, type) {
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
}
|
|
175
|
-
// Handle 'external' type (collecting only external modules)
|
|
176
|
-
if (type === 'external') {
|
|
177
|
-
if (connection.module instanceof ExternalModule) {
|
|
178
|
-
collectedModules.add(connectedModule);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
else {
|
|
182
|
-
// Handle 'all' or unspecified types
|
|
183
|
-
collectedModules.add(connectedModule);
|
|
184
|
-
}
|
|
185
|
-
// Add connected module to the stack and mark it as visited
|
|
186
|
-
visitedModules.add(connectedModule);
|
|
187
|
-
stack.push(connectedModule);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
return collectedModules;
|
|
103
|
+
const collectedModules = new Set([module]);
|
|
104
|
+
const visitedModules = new WeakSet([module]);
|
|
105
|
+
const stack = [module];
|
|
106
|
+
while (stack.length > 0) {
|
|
107
|
+
const currentModule = stack.pop();
|
|
108
|
+
if (!currentModule) continue;
|
|
109
|
+
const mgm = compilation.moduleGraph._getModuleGraphModule(currentModule);
|
|
110
|
+
if (!mgm?.outgoingConnections) continue;
|
|
111
|
+
for (const connection of mgm.outgoingConnections) {
|
|
112
|
+
const connectedModule = connection.module;
|
|
113
|
+
if (!connectedModule || visitedModules.has(connectedModule)) continue;
|
|
114
|
+
if (type === "initial") {
|
|
115
|
+
if (compilation.moduleGraph.getParentBlock(connection.dependency) instanceof AsyncDependenciesBlock) continue;
|
|
116
|
+
}
|
|
117
|
+
if (type === "external") {
|
|
118
|
+
if (connection.module instanceof ExternalModule) collectedModules.add(connectedModule);
|
|
119
|
+
} else collectedModules.add(connectedModule);
|
|
120
|
+
visitedModules.add(connectedModule);
|
|
121
|
+
stack.push(connectedModule);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return collectedModules;
|
|
191
125
|
}
|
|
126
|
+
|
|
127
|
+
//#endregion
|
|
192
128
|
exports.default = HoistContainerReferences;
|
|
129
|
+
exports.getAllReferencedModules = getAllReferencedModules;
|
|
193
130
|
//# sourceMappingURL=HoistContainerReferencesPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HoistContainerReferencesPlugin.js","sourceRoot":"","sources":["../../../../src/lib/container/HoistContainerReferencesPlugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HoistContainerReferencesPlugin.js","names":["FederationModulesPlugin"],"sources":["../../../../src/lib/container/HoistContainerReferencesPlugin.ts"],"sourcesContent":["import type {\n Chunk,\n Compiler,\n Compilation,\n WebpackPluginInstance,\n Module,\n Dependency,\n} from 'webpack';\nimport { normalizeWebpackPath } from '@module-federation/sdk/normalize-webpack-path';\nimport FederationModulesPlugin from './runtime/FederationModulesPlugin';\nimport ContainerEntryDependency from './ContainerEntryDependency';\nimport FederationRuntimeDependency from './runtime/FederationRuntimeDependency';\nimport RemoteToExternalDependency from './RemoteToExternalDependency';\nimport FallbackDependency from './FallbackDependency';\n\nconst { AsyncDependenciesBlock, ExternalModule } = require(\n normalizeWebpackPath('webpack'),\n) as typeof import('webpack');\n\nconst PLUGIN_NAME = 'HoistContainerReferences';\n\n/**\n * This plugin hoists container-related modules into runtime chunks when using runtimeChunk: single configuration.\n */\nclass HoistContainerReferences implements WebpackPluginInstance {\n apply(compiler: Compiler): void {\n compiler.hooks.thisCompilation.tap(\n PLUGIN_NAME,\n (compilation: Compilation) => {\n const logger = compilation.getLogger(PLUGIN_NAME);\n const hooks = FederationModulesPlugin.getCompilationHooks(compilation);\n const containerEntryDependencies = new Set<Dependency>();\n const federationRuntimeDependencies = new Set<Dependency>();\n const remoteDependencies = new Set<Dependency>();\n\n hooks.addContainerEntryDependency.tap(\n 'HoistContainerReferences',\n (dep: ContainerEntryDependency) => {\n containerEntryDependencies.add(dep);\n },\n );\n hooks.addFederationRuntimeDependency.tap(\n 'HoistContainerReferences',\n (dep: FederationRuntimeDependency) => {\n federationRuntimeDependencies.add(dep);\n },\n );\n hooks.addRemoteDependency.tap(\n 'HoistContainerReferences',\n (dep: RemoteToExternalDependency | FallbackDependency) => {\n remoteDependencies.add(dep);\n },\n );\n\n // Hook into the optimizeChunks phase\n compilation.hooks.optimizeChunks.tap(\n {\n name: PLUGIN_NAME,\n // advanced stage is where SplitChunksPlugin runs.\n stage: 11, // advanced + 1\n },\n (chunks: Iterable<Chunk>) => {\n const runtimeChunks = this.getRuntimeChunks(compilation);\n this.hoistModulesInChunks(\n compilation,\n runtimeChunks,\n logger,\n containerEntryDependencies,\n federationRuntimeDependencies,\n remoteDependencies,\n );\n },\n );\n },\n );\n }\n\n // Method to hoist modules in chunks\n private hoistModulesInChunks(\n compilation: Compilation,\n runtimeChunks: Set<Chunk>,\n logger: ReturnType<Compilation['getLogger']>,\n containerEntryDependencies: Set<Dependency>,\n federationRuntimeDependencies: Set<Dependency>,\n remoteDependencies: Set<Dependency>,\n ): void {\n const { chunkGraph, moduleGraph } = compilation;\n const allModulesToHoist = new Set<Module>();\n\n // Process container entry dependencies (needed for nextjs-mf exposed modules)\n for (const dep of containerEntryDependencies) {\n const containerEntryModule = moduleGraph.getModule(dep);\n if (!containerEntryModule) continue;\n const referencedModules = getAllReferencedModules(\n compilation,\n containerEntryModule,\n 'initial',\n );\n referencedModules.forEach((m: Module) => allModulesToHoist.add(m));\n const moduleRuntimes = chunkGraph.getModuleRuntimes(containerEntryModule);\n const runtimes = new Set<string>();\n for (const runtimeSpec of moduleRuntimes) {\n compilation.compiler.webpack.util.runtime.forEachRuntime(\n runtimeSpec,\n (runtimeKey) => {\n if (runtimeKey) {\n runtimes.add(runtimeKey);\n }\n },\n );\n }\n for (const runtime of runtimes) {\n const runtimeChunk = compilation.namedChunks.get(runtime);\n if (!runtimeChunk) continue;\n for (const module of referencedModules) {\n if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) {\n chunkGraph.connectChunkAndModule(runtimeChunk, module);\n }\n }\n }\n }\n\n // Federation Runtime Dependencies: use 'initial' (not 'all')\n for (const dep of federationRuntimeDependencies) {\n const runtimeModule = moduleGraph.getModule(dep);\n if (!runtimeModule) continue;\n const referencedModules = getAllReferencedModules(\n compilation,\n runtimeModule,\n 'initial',\n );\n referencedModules.forEach((m: Module) => allModulesToHoist.add(m));\n const moduleRuntimes = chunkGraph.getModuleRuntimes(runtimeModule);\n const runtimes = new Set<string>();\n for (const runtimeSpec of moduleRuntimes) {\n compilation.compiler.webpack.util.runtime.forEachRuntime(\n runtimeSpec,\n (runtimeKey) => {\n if (runtimeKey) {\n runtimes.add(runtimeKey);\n }\n },\n );\n }\n for (const runtime of runtimes) {\n const runtimeChunk = compilation.namedChunks.get(runtime);\n if (!runtimeChunk) continue;\n for (const module of referencedModules) {\n if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) {\n chunkGraph.connectChunkAndModule(runtimeChunk, module);\n }\n }\n }\n }\n\n // Process remote dependencies\n for (const remoteDep of remoteDependencies) {\n const remoteModule = moduleGraph.getModule(remoteDep);\n if (!remoteModule) continue;\n const referencedRemoteModules = getAllReferencedModules(\n compilation,\n remoteModule,\n 'initial',\n );\n referencedRemoteModules.forEach((m: Module) => allModulesToHoist.add(m));\n const remoteModuleRuntimes = chunkGraph.getModuleRuntimes(remoteModule);\n const remoteRuntimes = new Set<string>();\n for (const runtimeSpec of remoteModuleRuntimes) {\n compilation.compiler.webpack.util.runtime.forEachRuntime(\n runtimeSpec,\n (runtimeKey) => {\n if (runtimeKey) remoteRuntimes.add(runtimeKey);\n },\n );\n }\n for (const runtime of remoteRuntimes) {\n const runtimeChunk = compilation.namedChunks.get(runtime);\n if (!runtimeChunk) continue;\n for (const module of referencedRemoteModules) {\n if (!chunkGraph.isModuleInChunk(module, runtimeChunk)) {\n chunkGraph.connectChunkAndModule(runtimeChunk, module);\n }\n }\n }\n }\n\n this.cleanUpChunks(compilation, allModulesToHoist);\n }\n\n // Method to clean up chunks by disconnecting unused modules\n private cleanUpChunks(compilation: Compilation, modules: Set<Module>): void {\n const { chunkGraph } = compilation;\n for (const module of modules) {\n for (const chunk of chunkGraph.getModuleChunks(module)) {\n if (!chunk.hasRuntime()) {\n chunkGraph.disconnectChunkAndModule(chunk, module);\n }\n }\n }\n }\n\n // Method to get runtime chunks\n private getRuntimeChunks(compilation: Compilation): Set<Chunk> {\n const runtimeChunks = new Set<Chunk>();\n for (const chunk of compilation.chunks) {\n if (chunk.hasRuntime()) {\n runtimeChunks.add(chunk);\n }\n }\n return runtimeChunks;\n }\n}\n\n// Helper method to collect all referenced modules recursively\nexport function getAllReferencedModules(\n compilation: Compilation,\n module: Module,\n type?: 'all' | 'initial' | 'external',\n): Set<Module> {\n const collectedModules = new Set<Module>([module]);\n const visitedModules = new WeakSet<Module>([module]);\n const stack = [module];\n\n while (stack.length > 0) {\n const currentModule = stack.pop();\n if (!currentModule) continue;\n\n const mgm = compilation.moduleGraph._getModuleGraphModule(currentModule);\n if (!mgm?.outgoingConnections) continue;\n for (const connection of mgm.outgoingConnections) {\n const connectedModule = connection.module;\n\n // Skip if module has already been visited\n if (!connectedModule || visitedModules.has(connectedModule)) {\n continue;\n }\n\n // Handle 'initial' type (skipping async blocks)\n if (type === 'initial') {\n const parentBlock = compilation.moduleGraph.getParentBlock(\n connection.dependency,\n );\n if (parentBlock instanceof AsyncDependenciesBlock) {\n continue;\n }\n }\n\n // Handle 'external' type (collecting only external modules)\n if (type === 'external') {\n if (connection.module instanceof ExternalModule) {\n collectedModules.add(connectedModule);\n }\n } else {\n // Handle 'all' or unspecified types\n collectedModules.add(connectedModule);\n }\n\n // Add connected module to the stack and mark it as visited\n visitedModules.add(connectedModule);\n stack.push(connectedModule);\n }\n }\n\n return collectedModules;\n}\n\nexport default HoistContainerReferences;\n"],"mappings":"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"}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { moduleFederationPlugin } from "@module-federation/sdk";
|
|
2
|
+
import { Compiler, WebpackPluginInstance } from "webpack";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/container/ModuleFederationPlugin.d.ts
|
|
3
5
|
declare class ModuleFederationPlugin implements WebpackPluginInstance {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
private _options;
|
|
7
|
+
private _statsPlugin?;
|
|
8
|
+
/**
|
|
9
|
+
* @param {moduleFederationPlugin.ModuleFederationPluginOptions} options options
|
|
10
|
+
*/
|
|
11
|
+
constructor(options: moduleFederationPlugin.ModuleFederationPluginOptions);
|
|
12
|
+
private _patchBundlerConfig;
|
|
13
|
+
/**
|
|
14
|
+
* Apply the plugin
|
|
15
|
+
* @param {Compiler} compiler the compiler instance
|
|
16
|
+
* @returns {void}
|
|
17
|
+
*/
|
|
18
|
+
apply(compiler: Compiler): void;
|
|
17
19
|
}
|
|
18
|
-
|
|
20
|
+
//#endregion
|
|
21
|
+
export { ModuleFederationPlugin as default };
|
|
22
|
+
//# sourceMappingURL=ModuleFederationPlugin.d.ts.map
|