@module-federation/enhanced 2.0.1 → 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 -196
- 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 -180
- 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 -120
- 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 -18
- package/dist/src/lib/container/runtime/FederationRuntimePlugin.js +266 -345
- 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 -125
- 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 -100
- 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 -322
- 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 +21 -14
- 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 -219
- 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,156 +1,146 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const { sources: webpackSources } = require((0, normalize_webpack_path_1.normalizeWebpackPath)('webpack'));
|
|
16
|
-
const { Module, RuntimeGlobals } = require((0, normalize_webpack_path_1.normalizeWebpackPath)('webpack'));
|
|
17
|
-
const makeSerializable = require((0, normalize_webpack_path_1.normalizeWebpackPath)('webpack/lib/util/makeSerializable'));
|
|
18
|
-
const TYPES = new Set(['remote', 'share-init']);
|
|
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
|
+
const require_lib_Constants = require('../Constants.js');
|
|
5
|
+
const require_lib_container_FallbackDependency = require('./FallbackDependency.js');
|
|
6
|
+
const require_lib_container_RemoteToExternalDependency = require('./RemoteToExternalDependency.js');
|
|
7
|
+
let _module_federation_sdk_normalize_webpack_path = require("@module-federation/sdk/normalize-webpack-path");
|
|
8
|
+
|
|
9
|
+
//#region src/lib/container/RemoteModule.ts
|
|
10
|
+
require_lib_container_runtime_FederationModulesPlugin.init_FederationModulesPlugin();
|
|
11
|
+
const { sources: webpackSources } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack"));
|
|
12
|
+
const { Module, RuntimeGlobals } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack"));
|
|
13
|
+
const makeSerializable = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack/lib/util/makeSerializable"));
|
|
14
|
+
const TYPES = new Set(["remote", "share-init"]);
|
|
19
15
|
const RUNTIME_REQUIREMENTS = new Set([RuntimeGlobals.module]);
|
|
20
|
-
class RemoteModule extends Module {
|
|
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
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
const obj = new RemoteModule(read(), read(), read(), read());
|
|
150
|
-
obj.deserialize(context);
|
|
151
|
-
return obj;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
makeSerializable(RemoteModule, 'enhanced/lib/container/RemoteModule');
|
|
16
|
+
var RemoteModule = class RemoteModule extends Module {
|
|
17
|
+
/**
|
|
18
|
+
* @param {string} request request string
|
|
19
|
+
* @param {string[]} externalRequests list of external requests to containers
|
|
20
|
+
* @param {string} internalRequest name of exposed module in container
|
|
21
|
+
* @param {string|string[]} shareScope scope in which modules are shared
|
|
22
|
+
*/
|
|
23
|
+
constructor(request, externalRequests, internalRequest, shareScope) {
|
|
24
|
+
super(require_lib_Constants.WEBPACK_MODULE_TYPE_REMOTE);
|
|
25
|
+
this.request = request;
|
|
26
|
+
this.externalRequests = externalRequests;
|
|
27
|
+
this.internalRequest = internalRequest;
|
|
28
|
+
this.shareScope = shareScope;
|
|
29
|
+
this._identifier = `remote (${Array.isArray(shareScope) ? shareScope.join("|") : shareScope}) ${this.externalRequests.join(" ")} ${this.internalRequest}`;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @returns {string} a unique identifier of the module
|
|
33
|
+
*/
|
|
34
|
+
identifier() {
|
|
35
|
+
return this._identifier;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* @param {RequestShortener} requestShortener the request shortener
|
|
39
|
+
* @returns {string} a user readable identifier of the module
|
|
40
|
+
*/
|
|
41
|
+
readableIdentifier(requestShortener) {
|
|
42
|
+
return `remote ${this.request}`;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* @param {LibIdentOptions} options options
|
|
46
|
+
* @returns {string | null} an identifier for library inclusion
|
|
47
|
+
*/
|
|
48
|
+
libIdent(options) {
|
|
49
|
+
return `${this.layer ? `(${this.layer})/` : ""}webpack/container/remote/${this.request}`;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* @param {NeedBuildContext} context context info
|
|
53
|
+
* @param {function((WebpackError | null)=, boolean=): void} callback callback function, returns true, if the module needs a rebuild
|
|
54
|
+
* @returns {void}
|
|
55
|
+
*/
|
|
56
|
+
needBuild(context, callback) {
|
|
57
|
+
callback(null, !this.buildInfo);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @param {WebpackOptions} options webpack options
|
|
61
|
+
* @param {Compilation} compilation the compilation
|
|
62
|
+
* @param {ResolverWithOptions} resolver the resolver
|
|
63
|
+
* @param {InputFileSystem} fs the file system
|
|
64
|
+
* @param {function(WebpackError=): void} callback callback function
|
|
65
|
+
* @returns {void}
|
|
66
|
+
*/
|
|
67
|
+
build(options, compilation, resolver, fs, callback) {
|
|
68
|
+
this.buildMeta = {};
|
|
69
|
+
this.buildInfo = { strict: true };
|
|
70
|
+
this.clearDependenciesAndBlocks();
|
|
71
|
+
if (this.externalRequests.length === 1) {
|
|
72
|
+
const dep = new require_lib_container_RemoteToExternalDependency.default(this.externalRequests[0]);
|
|
73
|
+
this.addDependency(dep);
|
|
74
|
+
require_lib_container_runtime_FederationModulesPlugin.default.getCompilationHooks(compilation).addRemoteDependency.call(dep);
|
|
75
|
+
} else {
|
|
76
|
+
const dep = new require_lib_container_FallbackDependency.default(this.externalRequests);
|
|
77
|
+
this.addDependency(dep);
|
|
78
|
+
require_lib_container_runtime_FederationModulesPlugin.default.getCompilationHooks(compilation).addRemoteDependency.call(dep);
|
|
79
|
+
}
|
|
80
|
+
callback();
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* @param {string=} type the source type for which the size should be estimated
|
|
84
|
+
* @returns {number} the estimated size of the module (must be non-zero)
|
|
85
|
+
*/
|
|
86
|
+
size(type) {
|
|
87
|
+
return 6;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* @returns {Set<string>} types available (do not mutate)
|
|
91
|
+
*/
|
|
92
|
+
getSourceTypes() {
|
|
93
|
+
return TYPES;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* @returns {string | null} absolute path which should be used for condition matching (usually the resource path)
|
|
97
|
+
*/
|
|
98
|
+
nameForCondition() {
|
|
99
|
+
return this.request;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* @param {CodeGenerationContext} context context for code generation
|
|
103
|
+
* @returns {CodeGenerationResult} result
|
|
104
|
+
*/
|
|
105
|
+
codeGeneration(context) {
|
|
106
|
+
const { moduleGraph, chunkGraph } = context;
|
|
107
|
+
const module = moduleGraph.getModule(this.dependencies[0]);
|
|
108
|
+
const id = module && chunkGraph.getModuleId(module);
|
|
109
|
+
const sources = /* @__PURE__ */ new Map();
|
|
110
|
+
sources.set("remote", new webpackSources.RawSource(""));
|
|
111
|
+
const data = /* @__PURE__ */ new Map();
|
|
112
|
+
data.set("share-init", [{
|
|
113
|
+
shareScope: this.shareScope,
|
|
114
|
+
initStage: 20,
|
|
115
|
+
init: id === void 0 ? "" : `initExternal(${JSON.stringify(id)});`
|
|
116
|
+
}]);
|
|
117
|
+
return {
|
|
118
|
+
sources,
|
|
119
|
+
data,
|
|
120
|
+
runtimeRequirements: RUNTIME_REQUIREMENTS
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
serialize(context) {
|
|
124
|
+
const { write } = context;
|
|
125
|
+
write(this.request);
|
|
126
|
+
write(this.externalRequests);
|
|
127
|
+
write(this.internalRequest);
|
|
128
|
+
write(this.shareScope);
|
|
129
|
+
super.serialize(context);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* @param {ObjectDeserializerContext} context context
|
|
133
|
+
* @returns {RemoteModule} deserialized module
|
|
134
|
+
*/
|
|
135
|
+
static deserialize(context) {
|
|
136
|
+
const { read } = context;
|
|
137
|
+
const obj = new RemoteModule(read(), read(), read(), read());
|
|
138
|
+
obj.deserialize(context);
|
|
139
|
+
return obj;
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
makeSerializable(RemoteModule, "enhanced/lib/container/RemoteModule");
|
|
143
|
+
|
|
144
|
+
//#endregion
|
|
155
145
|
exports.default = RemoteModule;
|
|
156
146
|
//# sourceMappingURL=RemoteModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteModule.js","
|
|
1
|
+
{"version":3,"file":"RemoteModule.js","names":["WEBPACK_MODULE_TYPE_REMOTE","RemoteToExternalDependency","FederationModulesPlugin","FallbackDependency"],"sources":["../../../../src/lib/container/RemoteModule.ts"],"sourcesContent":["/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\nimport { normalizeWebpackPath } from '@module-federation/sdk/normalize-webpack-path';\nimport type { Compilation, WebpackOptionsNormalized } from 'webpack';\nimport type {\n CodeGenerationContext,\n CodeGenerationResult,\n LibIdentOptions,\n NeedBuildContext,\n WebpackError,\n} from 'webpack/lib/Module';\nimport FallbackDependency from './FallbackDependency';\nimport RemoteToExternalDependency from './RemoteToExternalDependency';\nimport { WEBPACK_MODULE_TYPE_REMOTE } from '../Constants';\nimport type { ResolverWithOptions } from 'webpack/lib/ResolverFactory';\nimport type { InputFileSystem } from 'webpack/lib/FileSystemInfo';\nimport type { RequestShortener } from 'webpack/lib/RuntimeModule';\nimport type { ObjectDeserializerContext } from 'webpack/lib/serialization/ObjectMiddleware';\nimport FederationModulesPlugin from './runtime/FederationModulesPlugin';\n\nconst { sources: webpackSources } = require(\n normalizeWebpackPath('webpack'),\n) as typeof import('webpack');\nconst { Module, RuntimeGlobals } = require(\n normalizeWebpackPath('webpack'),\n) as typeof import('webpack');\nconst makeSerializable = require(\n normalizeWebpackPath('webpack/lib/util/makeSerializable'),\n) as typeof import('webpack/lib/util/makeSerializable');\n\nconst TYPES: Set<string> = new Set(['remote', 'share-init']);\nconst RUNTIME_REQUIREMENTS: Set<string> = new Set([RuntimeGlobals.module]);\n\nclass RemoteModule extends Module {\n private _identifier: string;\n public request: string;\n public externalRequests: string[];\n public internalRequest: string;\n public shareScope: string | string[];\n\n /**\n * @param {string} request request string\n * @param {string[]} externalRequests list of external requests to containers\n * @param {string} internalRequest name of exposed module in container\n * @param {string|string[]} shareScope scope in which modules are shared\n */\n constructor(\n request: string,\n externalRequests: string[],\n internalRequest: string,\n shareScope: string | string[],\n ) {\n super(WEBPACK_MODULE_TYPE_REMOTE);\n this.request = request;\n this.externalRequests = externalRequests;\n this.internalRequest = internalRequest;\n this.shareScope = shareScope;\n const scopeStr = Array.isArray(shareScope)\n ? shareScope.join('|')\n : shareScope;\n this._identifier = `remote (${scopeStr}) ${this.externalRequests.join(\n ' ',\n )} ${this.internalRequest}`;\n }\n\n /**\n * @returns {string} a unique identifier of the module\n */\n override identifier(): string {\n return this._identifier;\n }\n\n /**\n * @param {RequestShortener} requestShortener the request shortener\n * @returns {string} a user readable identifier of the module\n */\n override readableIdentifier(requestShortener: RequestShortener): string {\n return `remote ${this.request}`;\n }\n\n /**\n * @param {LibIdentOptions} options options\n * @returns {string | null} an identifier for library inclusion\n */\n override libIdent(options: LibIdentOptions): string | null {\n return `${this.layer ? `(${this.layer})/` : ''}webpack/container/remote/${\n this.request\n }`;\n }\n\n /**\n * @param {NeedBuildContext} context context info\n * @param {function((WebpackError | null)=, boolean=): void} callback callback function, returns true, if the module needs a rebuild\n * @returns {void}\n */\n override needBuild(\n context: NeedBuildContext,\n callback: (err: WebpackError | null, needsRebuild?: boolean) => void,\n ): void {\n callback(null, !this.buildInfo);\n }\n\n /**\n * @param {WebpackOptions} options webpack options\n * @param {Compilation} compilation the compilation\n * @param {ResolverWithOptions} resolver the resolver\n * @param {InputFileSystem} fs the file system\n * @param {function(WebpackError=): void} callback callback function\n * @returns {void}\n */\n // @ts-ignore\n override build(\n options: WebpackOptionsNormalized,\n compilation: Compilation,\n resolver: ResolverWithOptions,\n fs: InputFileSystem,\n callback: (err?: WebpackError | undefined) => void,\n ): void {\n this.buildMeta = {};\n this.buildInfo = {\n strict: true,\n };\n\n this.clearDependenciesAndBlocks();\n if (this.externalRequests.length === 1) {\n const dep = new RemoteToExternalDependency(this.externalRequests[0]);\n this.addDependency(dep);\n const hooks = FederationModulesPlugin.getCompilationHooks(compilation);\n hooks.addRemoteDependency.call(dep);\n } else {\n const dep = new FallbackDependency(this.externalRequests);\n this.addDependency(dep);\n const hooks = FederationModulesPlugin.getCompilationHooks(compilation);\n hooks.addRemoteDependency.call(dep);\n }\n\n callback();\n }\n\n /**\n * @param {string=} type the source type for which the size should be estimated\n * @returns {number} the estimated size of the module (must be non-zero)\n */\n override size(type?: string): number {\n return 6;\n }\n\n /**\n * @returns {Set<string>} types available (do not mutate)\n */\n override getSourceTypes(): Set<string> {\n return TYPES;\n }\n\n /**\n * @returns {string | null} absolute path which should be used for condition matching (usually the resource path)\n */\n override nameForCondition(): string | null {\n return this.request;\n }\n\n /**\n * @param {CodeGenerationContext} context context for code generation\n * @returns {CodeGenerationResult} result\n */\n // @ts-ignore\n override codeGeneration(\n context: CodeGenerationContext,\n ): CodeGenerationResult {\n const { moduleGraph, chunkGraph } = context;\n const module = moduleGraph.getModule(this.dependencies[0]);\n const id = module && chunkGraph.getModuleId(module);\n const sources = new Map();\n sources.set('remote', new webpackSources.RawSource(''));\n const data = new Map();\n data.set('share-init', [\n {\n shareScope: this.shareScope,\n initStage: 20,\n init: id === undefined ? '' : `initExternal(${JSON.stringify(id)});`,\n },\n ]);\n return { sources, data, runtimeRequirements: RUNTIME_REQUIREMENTS };\n }\n override serialize(context: any) {\n const { write } = context;\n write(this.request);\n write(this.externalRequests);\n write(this.internalRequest);\n write(this.shareScope);\n super.serialize(context);\n }\n\n /**\n * @param {ObjectDeserializerContext} context context\n * @returns {RemoteModule} deserialized module\n */\n static deserialize(context: ObjectDeserializerContext): RemoteModule {\n const { read } = context;\n const obj = new RemoteModule(read(), read(), read(), read());\n obj.deserialize(context);\n return obj;\n }\n}\n\nmakeSerializable(RemoteModule, 'enhanced/lib/container/RemoteModule');\n\nexport default RemoteModule;\n"],"mappings":";;;;;;;;;oFAoBwE;AAExE,MAAM,EAAE,SAAS,mBAAmB,gFACb,UAAU,CAChC;AACD,MAAM,EAAE,QAAQ,mBAAmB,gFACZ,UAAU,CAChC;AACD,MAAM,mBAAmB,gFACF,oCAAoC,CAC1D;AAED,MAAM,QAAqB,IAAI,IAAI,CAAC,UAAU,aAAa,CAAC;AAC5D,MAAM,uBAAoC,IAAI,IAAI,CAAC,eAAe,OAAO,CAAC;AAE1E,IAAM,eAAN,MAAM,qBAAqB,OAAO;;;;;;;CAahC,YACE,SACA,kBACA,iBACA,YACA;AACA,QAAMA,iDAA2B;AACjC,OAAK,UAAU;AACf,OAAK,mBAAmB;AACxB,OAAK,kBAAkB;AACvB,OAAK,aAAa;AAIlB,OAAK,cAAc,WAHF,MAAM,QAAQ,WAAW,GACtC,WAAW,KAAK,IAAI,GACpB,WACmC,IAAI,KAAK,iBAAiB,KAC/D,IACD,CAAC,GAAG,KAAK;;;;;CAMZ,AAAS,aAAqB;AAC5B,SAAO,KAAK;;;;;;CAOd,AAAS,mBAAmB,kBAA4C;AACtE,SAAO,UAAU,KAAK;;;;;;CAOxB,AAAS,SAAS,SAAyC;AACzD,SAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,MAAM,MAAM,GAAG,2BAC7C,KAAK;;;;;;;CAST,AAAS,UACP,SACA,UACM;AACN,WAAS,MAAM,CAAC,KAAK,UAAU;;;;;;;;;;CAYjC,AAAS,MACP,SACA,aACA,UACA,IACA,UACM;AACN,OAAK,YAAY,EAAE;AACnB,OAAK,YAAY,EACf,QAAQ,MACT;AAED,OAAK,4BAA4B;AACjC,MAAI,KAAK,iBAAiB,WAAW,GAAG;GACtC,MAAM,MAAM,IAAIC,yDAA2B,KAAK,iBAAiB,GAAG;AACpE,QAAK,cAAc,IAAI;AAEvB,GADcC,8DAAwB,oBAAoB,YAAY,CAChE,oBAAoB,KAAK,IAAI;SAC9B;GACL,MAAM,MAAM,IAAIC,iDAAmB,KAAK,iBAAiB;AACzD,QAAK,cAAc,IAAI;AAEvB,GADcD,8DAAwB,oBAAoB,YAAY,CAChE,oBAAoB,KAAK,IAAI;;AAGrC,YAAU;;;;;;CAOZ,AAAS,KAAK,MAAuB;AACnC,SAAO;;;;;CAMT,AAAS,iBAA8B;AACrC,SAAO;;;;;CAMT,AAAS,mBAAkC;AACzC,SAAO,KAAK;;;;;;CAQd,AAAS,eACP,SACsB;EACtB,MAAM,EAAE,aAAa,eAAe;EACpC,MAAM,SAAS,YAAY,UAAU,KAAK,aAAa,GAAG;EAC1D,MAAM,KAAK,UAAU,WAAW,YAAY,OAAO;EACnD,MAAM,0BAAU,IAAI,KAAK;AACzB,UAAQ,IAAI,UAAU,IAAI,eAAe,UAAU,GAAG,CAAC;EACvD,MAAM,uBAAO,IAAI,KAAK;AACtB,OAAK,IAAI,cAAc,CACrB;GACE,YAAY,KAAK;GACjB,WAAW;GACX,MAAM,OAAO,SAAY,KAAK,gBAAgB,KAAK,UAAU,GAAG,CAAC;GAClE,CACF,CAAC;AACF,SAAO;GAAE;GAAS;GAAM,qBAAqB;GAAsB;;CAErE,AAAS,UAAU,SAAc;EAC/B,MAAM,EAAE,UAAU;AAClB,QAAM,KAAK,QAAQ;AACnB,QAAM,KAAK,iBAAiB;AAC5B,QAAM,KAAK,gBAAgB;AAC3B,QAAM,KAAK,WAAW;AACtB,QAAM,UAAU,QAAQ;;;;;;CAO1B,OAAO,YAAY,SAAkD;EACnE,MAAM,EAAE,SAAS;EACjB,MAAM,MAAM,IAAI,aAAa,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;AAC5D,MAAI,YAAY,QAAQ;AACxB,SAAO;;;AAIX,iBAAiB,cAAc,sCAAsC"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
import * as webpack$1 from "webpack";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/container/RemoteRuntimeModule.d.ts
|
|
4
|
+
declare const RuntimeModule: typeof webpack$1.RuntimeModule;
|
|
2
5
|
declare class RemoteRuntimeModule extends RuntimeModule {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
constructor();
|
|
7
|
+
/**
|
|
8
|
+
* @returns {string | null} runtime code
|
|
9
|
+
*/
|
|
10
|
+
generate(): string | null;
|
|
8
11
|
}
|
|
9
|
-
|
|
12
|
+
//#endregion
|
|
13
|
+
export { RemoteRuntimeModule as default };
|
|
14
|
+
//# sourceMappingURL=RemoteRuntimeModule.d.ts.map
|
|
@@ -1,122 +1,88 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
-
remoteModule &&
|
|
88
|
-
// @ts-ignore
|
|
89
|
-
chunkGraph.getModuleId(remoteModule);
|
|
90
|
-
idToRemoteMap[id].push({
|
|
91
|
-
externalType: remoteModule.externalType,
|
|
92
|
-
name: remoteModule.externalType === 'script' ? remoteName : '',
|
|
93
|
-
});
|
|
94
|
-
moduleIdToRemoteDataMapping[id] = {
|
|
95
|
-
shareScope: shareScope,
|
|
96
|
-
name,
|
|
97
|
-
externalModuleId: externalModuleId,
|
|
98
|
-
// Preserve the extracted remote name so lazy updates can
|
|
99
|
-
// rebuild idToRemoteMap via updateRemoteOptions.
|
|
100
|
-
remoteName: remoteName,
|
|
101
|
-
};
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
const federationGlobal = (0, utils_1.getFederationGlobalScope)(RuntimeGlobals || {});
|
|
107
|
-
return Template.asString([
|
|
108
|
-
`var chunkMapping = ${JSON.stringify(chunkToRemotesMapping, null, '\t')};`,
|
|
109
|
-
`var idToExternalAndNameMapping = ${JSON.stringify(idToExternalAndNameMapping, null, '\t')};`,
|
|
110
|
-
`var idToRemoteMap = ${JSON.stringify(idToRemoteMap, null, '\t')};`,
|
|
111
|
-
`${federationGlobal}.bundlerRuntimeOptions.remotes.chunkMapping = chunkMapping;`,
|
|
112
|
-
`${federationGlobal}.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping = idToExternalAndNameMapping;`,
|
|
113
|
-
`${federationGlobal}.bundlerRuntimeOptions.remotes.idToRemoteMap = idToRemoteMap;`,
|
|
114
|
-
`${RuntimeGlobals.require}.remotesLoadingData.moduleIdToRemoteDataMapping = ${JSON.stringify(moduleIdToRemoteDataMapping, null, '\t')};`,
|
|
115
|
-
`${RuntimeGlobals.ensureChunkHandlers}.remotes = ${runtimeTemplate.basicFunction('chunkId, promises', [
|
|
116
|
-
`${federationGlobal}.bundlerRuntime.remotes({idToRemoteMap,chunkMapping, idToExternalAndNameMapping, chunkId, promises, webpackRequire:${RuntimeGlobals.require}});`,
|
|
117
|
-
])}`,
|
|
118
|
-
]);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
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_utils = require('./runtime/utils.js');
|
|
4
|
+
let _module_federation_sdk_normalize_webpack_path = require("@module-federation/sdk/normalize-webpack-path");
|
|
5
|
+
|
|
6
|
+
//#region src/lib/container/RemoteRuntimeModule.ts
|
|
7
|
+
const extractUrlAndGlobal = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack/lib/util/extractUrlAndGlobal"));
|
|
8
|
+
const { Template, RuntimeModule, RuntimeGlobals } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack"));
|
|
9
|
+
var RemoteRuntimeModule = class extends RuntimeModule {
|
|
10
|
+
constructor() {
|
|
11
|
+
super("remotes loading");
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @returns {string | null} runtime code
|
|
15
|
+
*/
|
|
16
|
+
generate() {
|
|
17
|
+
const { compilation, chunkGraph } = this;
|
|
18
|
+
const { runtimeTemplate, moduleGraph } = compilation;
|
|
19
|
+
const chunkToRemotesMapping = {};
|
|
20
|
+
const idToExternalAndNameMapping = {};
|
|
21
|
+
const idToRemoteMap = {};
|
|
22
|
+
const moduleIdToRemoteDataMapping = {};
|
|
23
|
+
const allChunks = [...Array.from(this.chunk?.getAllReferencedChunks() || [])];
|
|
24
|
+
for (const chunk of allChunks) {
|
|
25
|
+
if (chunk.id === null || chunk.id === void 0) continue;
|
|
26
|
+
const modules = chunkGraph?.getChunkModulesIterableBySourceType(chunk, "remote");
|
|
27
|
+
if (!modules) continue;
|
|
28
|
+
const remotes = chunkToRemotesMapping[chunk.id] = [];
|
|
29
|
+
for (const m of modules) {
|
|
30
|
+
const module = m;
|
|
31
|
+
const name = module.internalRequest;
|
|
32
|
+
const id = chunkGraph ? chunkGraph.getModuleId(module) : void 0;
|
|
33
|
+
const { shareScope } = module;
|
|
34
|
+
const dep = module.dependencies[0];
|
|
35
|
+
const externalModule = moduleGraph.getModule(dep);
|
|
36
|
+
const externalModuleId = chunkGraph && externalModule ? chunkGraph.getModuleId(externalModule) : void 0;
|
|
37
|
+
if (id !== void 0 && id !== null) {
|
|
38
|
+
remotes.push(id);
|
|
39
|
+
idToExternalAndNameMapping[id] = [
|
|
40
|
+
shareScope,
|
|
41
|
+
name,
|
|
42
|
+
externalModuleId === null || externalModuleId === void 0 ? void 0 : externalModuleId
|
|
43
|
+
];
|
|
44
|
+
const remoteModules = [];
|
|
45
|
+
if ("requests" in externalModule && externalModule.requests) externalModule.dependencies.forEach((dependency) => {
|
|
46
|
+
const remoteModule = moduleGraph.getModule(dependency);
|
|
47
|
+
if (remoteModule) remoteModules.push(remoteModule);
|
|
48
|
+
});
|
|
49
|
+
else remoteModules.push(externalModule);
|
|
50
|
+
idToRemoteMap[id] = [];
|
|
51
|
+
remoteModules.forEach((remoteModule) => {
|
|
52
|
+
let remoteName = "";
|
|
53
|
+
try {
|
|
54
|
+
const [_url, name] = extractUrlAndGlobal(remoteModule.request);
|
|
55
|
+
remoteName = name;
|
|
56
|
+
} catch (err) {}
|
|
57
|
+
const externalModuleId = chunkGraph && remoteModule && chunkGraph.getModuleId(remoteModule);
|
|
58
|
+
idToRemoteMap[id].push({
|
|
59
|
+
externalType: remoteModule.externalType,
|
|
60
|
+
name: remoteModule.externalType === "script" ? remoteName : ""
|
|
61
|
+
});
|
|
62
|
+
if (externalModuleId !== null && externalModuleId !== void 0) moduleIdToRemoteDataMapping[id] = {
|
|
63
|
+
shareScope,
|
|
64
|
+
name,
|
|
65
|
+
externalModuleId,
|
|
66
|
+
remoteName
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const federationGlobal = require_lib_container_runtime_utils.getFederationGlobalScope(RuntimeGlobals || {});
|
|
73
|
+
return Template.asString([
|
|
74
|
+
`var chunkMapping = ${JSON.stringify(chunkToRemotesMapping, null, " ")};`,
|
|
75
|
+
`var idToExternalAndNameMapping = ${JSON.stringify(idToExternalAndNameMapping, null, " ")};`,
|
|
76
|
+
`var idToRemoteMap = ${JSON.stringify(idToRemoteMap, null, " ")};`,
|
|
77
|
+
`${federationGlobal}.bundlerRuntimeOptions.remotes.chunkMapping = chunkMapping;`,
|
|
78
|
+
`${federationGlobal}.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping = idToExternalAndNameMapping;`,
|
|
79
|
+
`${federationGlobal}.bundlerRuntimeOptions.remotes.idToRemoteMap = idToRemoteMap;`,
|
|
80
|
+
`${RuntimeGlobals.require}.remotesLoadingData.moduleIdToRemoteDataMapping = ${JSON.stringify(moduleIdToRemoteDataMapping, null, " ")};`,
|
|
81
|
+
`${RuntimeGlobals.ensureChunkHandlers}.remotes = ${runtimeTemplate.basicFunction("chunkId, promises", [`${federationGlobal}.bundlerRuntime.remotes({idToRemoteMap,chunkMapping, idToExternalAndNameMapping, chunkId, promises, webpackRequire:${RuntimeGlobals.require}});`])}`
|
|
82
|
+
]);
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
//#endregion
|
|
121
87
|
exports.default = RemoteRuntimeModule;
|
|
122
88
|
//# sourceMappingURL=RemoteRuntimeModule.js.map
|