@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.
Files changed (285) hide show
  1. package/dist/CHANGELOG.md +2357 -0
  2. package/dist/README.md +213 -0
  3. package/dist/rstestmigrate.md +140 -0
  4. package/dist/src/_virtual/_rolldown/runtime.js +47 -0
  5. package/dist/src/index.d.ts +22 -19
  6. package/dist/src/index.js +47 -43
  7. package/dist/src/index.js.map +1 -1
  8. package/dist/src/lib/Constants.d.ts +25 -29
  9. package/dist/src/lib/Constants.js +136 -116
  10. package/dist/src/lib/Constants.js.map +1 -1
  11. package/dist/src/lib/container/AsyncBoundaryPlugin.d.ts +20 -16
  12. package/dist/src/lib/container/AsyncBoundaryPlugin.js +137 -200
  13. package/dist/src/lib/container/AsyncBoundaryPlugin.js.map +1 -1
  14. package/dist/src/lib/container/ContainerEntryDependency.d.ts +28 -23
  15. package/dist/src/lib/container/ContainerEntryDependency.js +39 -39
  16. package/dist/src/lib/container/ContainerEntryDependency.js.map +1 -1
  17. package/dist/src/lib/container/ContainerEntryModule.d.ts +93 -84
  18. package/dist/src/lib/container/ContainerEntryModule.js +219 -234
  19. package/dist/src/lib/container/ContainerEntryModule.js.map +1 -1
  20. package/dist/src/lib/container/ContainerEntryModuleFactory.d.ts +15 -10
  21. package/dist/src/lib/container/ContainerEntryModuleFactory.js +21 -25
  22. package/dist/src/lib/container/ContainerEntryModuleFactory.js.map +1 -1
  23. package/dist/src/lib/container/ContainerExposedDependency.d.ts +29 -24
  24. package/dist/src/lib/container/ContainerExposedDependency.js +47 -47
  25. package/dist/src/lib/container/ContainerExposedDependency.js.map +1 -1
  26. package/dist/src/lib/container/ContainerPlugin.d.ts +12 -8
  27. package/dist/src/lib/container/ContainerPlugin.js +147 -211
  28. package/dist/src/lib/container/ContainerPlugin.js.map +1 -1
  29. package/dist/src/lib/container/ContainerReferencePlugin.d.ts +16 -12
  30. package/dist/src/lib/container/ContainerReferencePlugin.js +74 -102
  31. package/dist/src/lib/container/ContainerReferencePlugin.js.map +1 -1
  32. package/dist/src/lib/container/FallbackDependency.d.ts +24 -19
  33. package/dist/src/lib/container/FallbackDependency.js +46 -44
  34. package/dist/src/lib/container/FallbackDependency.js.map +1 -1
  35. package/dist/src/lib/container/FallbackItemDependency.d.ts +13 -8
  36. package/dist/src/lib/container/FallbackItemDependency.js +24 -24
  37. package/dist/src/lib/container/FallbackItemDependency.js.map +1 -1
  38. package/dist/src/lib/container/FallbackModule.d.ts +82 -71
  39. package/dist/src/lib/container/FallbackModule.js +133 -145
  40. package/dist/src/lib/container/FallbackModule.js.map +1 -1
  41. package/dist/src/lib/container/FallbackModuleFactory.d.ts +15 -10
  42. package/dist/src/lib/container/FallbackModuleFactory.js +20 -24
  43. package/dist/src/lib/container/FallbackModuleFactory.js.map +1 -1
  44. package/dist/src/lib/container/HoistContainerReferencesPlugin.d.ts +11 -7
  45. package/dist/src/lib/container/HoistContainerReferencesPlugin.js +125 -188
  46. package/dist/src/lib/container/HoistContainerReferencesPlugin.js.map +1 -1
  47. package/dist/src/lib/container/ModuleFederationPlugin.d.ts +20 -16
  48. package/dist/src/lib/container/ModuleFederationPlugin.js +143 -181
  49. package/dist/src/lib/container/ModuleFederationPlugin.js.map +1 -1
  50. package/dist/src/lib/container/RemoteModule.d.ts +79 -74
  51. package/dist/src/lib/container/RemoteModule.js +143 -153
  52. package/dist/src/lib/container/RemoteModule.js.map +1 -1
  53. package/dist/src/lib/container/RemoteRuntimeModule.d.ts +12 -7
  54. package/dist/src/lib/container/RemoteRuntimeModule.js +86 -132
  55. package/dist/src/lib/container/RemoteRuntimeModule.js.map +1 -1
  56. package/dist/src/lib/container/RemoteToExternalDependency.d.ts +13 -8
  57. package/dist/src/lib/container/RemoteToExternalDependency.js +25 -23
  58. package/dist/src/lib/container/RemoteToExternalDependency.js.map +1 -1
  59. package/dist/src/lib/container/constant.d.ts +3 -0
  60. package/dist/src/lib/container/constant.js +11 -14
  61. package/dist/src/lib/container/constant.js.map +1 -1
  62. package/dist/src/lib/container/options.d.ts +7 -3
  63. package/dist/src/lib/container/options.js +51 -69
  64. package/dist/src/lib/container/options.js.map +1 -1
  65. package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.d.ts +14 -9
  66. package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.js +56 -64
  67. package/dist/src/lib/container/runtime/EmbedFederationRuntimeModule.js.map +1 -1
  68. package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.d.ts +23 -19
  69. package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.js +71 -101
  70. package/dist/src/lib/container/runtime/EmbedFederationRuntimePlugin.js.map +1 -1
  71. package/dist/src/lib/container/runtime/FederationModulesPlugin.d.ts +20 -16
  72. package/dist/src/lib/container/runtime/FederationModulesPlugin.js +55 -47
  73. package/dist/src/lib/container/runtime/FederationModulesPlugin.js.map +1 -1
  74. package/dist/src/lib/container/runtime/FederationRuntimeDependency.d.ts +9 -4
  75. package/dist/src/lib/container/runtime/FederationRuntimeDependency.js +16 -12
  76. package/dist/src/lib/container/runtime/FederationRuntimeDependency.js.map +1 -1
  77. package/dist/src/lib/container/runtime/FederationRuntimeModule.d.ts +16 -11
  78. package/dist/src/lib/container/runtime/FederationRuntimeModule.js +39 -46
  79. package/dist/src/lib/container/runtime/FederationRuntimeModule.js.map +1 -1
  80. package/dist/src/lib/container/runtime/FederationRuntimePlugin.d.ts +31 -20
  81. package/dist/src/lib/container/runtime/FederationRuntimePlugin.js +265 -358
  82. package/dist/src/lib/container/runtime/FederationRuntimePlugin.js.map +1 -1
  83. package/dist/src/lib/container/runtime/getFederationGlobal.d.ts +9 -4
  84. package/dist/src/lib/container/runtime/getFederationGlobal.js +43 -41
  85. package/dist/src/lib/container/runtime/getFederationGlobal.js.map +1 -1
  86. package/dist/src/lib/container/runtime/utils.d.ts +24 -13
  87. package/dist/src/lib/container/runtime/utils.js +83 -101
  88. package/dist/src/lib/container/runtime/utils.js.map +1 -1
  89. package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.d.ts +15 -10
  90. package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.js +27 -25
  91. package/dist/src/lib/sharing/ConsumeSharedFallbackDependency.js.map +1 -1
  92. package/dist/src/lib/sharing/ConsumeSharedModule.d.ts +77 -68
  93. package/dist/src/lib/sharing/ConsumeSharedModule.js +186 -214
  94. package/dist/src/lib/sharing/ConsumeSharedModule.js.map +1 -1
  95. package/dist/src/lib/sharing/ConsumeSharedPlugin.d.ts +13 -9
  96. package/dist/src/lib/sharing/ConsumeSharedPlugin.js +308 -475
  97. package/dist/src/lib/sharing/ConsumeSharedPlugin.js.map +1 -1
  98. package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.d.ts +16 -11
  99. package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.js +107 -137
  100. package/dist/src/lib/sharing/ConsumeSharedRuntimeModule.js.map +1 -1
  101. package/dist/src/lib/sharing/ProvideForSharedDependency.d.ts +14 -9
  102. package/dist/src/lib/sharing/ProvideForSharedDependency.js +25 -25
  103. package/dist/src/lib/sharing/ProvideForSharedDependency.js.map +1 -1
  104. package/dist/src/lib/sharing/ProvideSharedDependency.d.ts +44 -39
  105. package/dist/src/lib/sharing/ProvideSharedDependency.js +72 -76
  106. package/dist/src/lib/sharing/ProvideSharedDependency.js.map +1 -1
  107. package/dist/src/lib/sharing/ProvideSharedModule.d.ts +91 -82
  108. package/dist/src/lib/sharing/ProvideSharedModule.js +177 -184
  109. package/dist/src/lib/sharing/ProvideSharedModule.js.map +1 -1
  110. package/dist/src/lib/sharing/ProvideSharedModuleFactory.d.ts +14 -9
  111. package/dist/src/lib/sharing/ProvideSharedModuleFactory.js +19 -25
  112. package/dist/src/lib/sharing/ProvideSharedModuleFactory.js.map +1 -1
  113. package/dist/src/lib/sharing/ProvideSharedPlugin.d.ts +27 -21
  114. package/dist/src/lib/sharing/ProvideSharedPlugin.js +341 -550
  115. package/dist/src/lib/sharing/ProvideSharedPlugin.js.map +1 -1
  116. package/dist/src/lib/sharing/SharePlugin.d.ts +53 -49
  117. package/dist/src/lib/sharing/SharePlugin.js +86 -100
  118. package/dist/src/lib/sharing/SharePlugin.js.map +1 -1
  119. package/dist/src/lib/sharing/ShareRuntimeModule.d.ts +12 -7
  120. package/dist/src/lib/sharing/ShareRuntimeModule.js +81 -103
  121. package/dist/src/lib/sharing/ShareRuntimeModule.js.map +1 -1
  122. package/dist/src/lib/sharing/resolveMatchedConfigs.d.ts +11 -7
  123. package/dist/src/lib/sharing/resolveMatchedConfigs.js +58 -71
  124. package/dist/src/lib/sharing/resolveMatchedConfigs.js.map +1 -1
  125. package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.d.ts +18 -14
  126. package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.js +74 -128
  127. package/dist/src/lib/sharing/tree-shaking/CollectSharedEntryPlugin.js.map +1 -1
  128. package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.d.ts +39 -34
  129. package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.js +234 -328
  130. package/dist/src/lib/sharing/tree-shaking/IndependentSharedPlugin.js.map +1 -1
  131. package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.d.ts +16 -11
  132. package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.js +30 -28
  133. package/dist/src/lib/sharing/tree-shaking/IndependentSharedRuntimeModule.js.map +1 -1
  134. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.d.ts +28 -24
  135. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.js +91 -95
  136. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedContainerPlugin.js.map +1 -1
  137. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.d.ts +29 -24
  138. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.js +47 -43
  139. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedDependency.js.map +1 -1
  140. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.d.ts +20 -15
  141. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.js +33 -29
  142. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryDependency.js.map +1 -1
  143. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.d.ts +85 -77
  144. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.js +141 -153
  145. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModule.js.map +1 -1
  146. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.d.ts +15 -10
  147. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.js +20 -24
  148. package/dist/src/lib/sharing/tree-shaking/SharedContainerPlugin/SharedEntryModuleFactory.js.map +1 -1
  149. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.d.ts +21 -16
  150. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.js +157 -231
  151. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerPlugin.js.map +1 -1
  152. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.d.ts +14 -9
  153. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.js +26 -27
  154. package/dist/src/lib/sharing/tree-shaking/SharedUsedExportsOptimizerRuntimeModule.js.map +1 -1
  155. package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.d.ts +18 -13
  156. package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.js +41 -49
  157. package/dist/src/lib/sharing/tree-shaking/TreeShakingSharedPlugin.js.map +1 -1
  158. package/dist/src/lib/sharing/utils.d.ts +27 -24
  159. package/dist/src/lib/sharing/utils.js +224 -367
  160. package/dist/src/lib/sharing/utils.js.map +1 -1
  161. package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.d.ts +11 -7
  162. package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.js +56 -75
  163. package/dist/src/lib/startup/MfStartupChunkDependenciesPlugin.js.map +1 -1
  164. package/dist/src/lib/startup/StartupHelpers.d.ts +11 -6
  165. package/dist/src/lib/startup/StartupHelpers.js +128 -178
  166. package/dist/src/lib/startup/StartupHelpers.js.map +1 -1
  167. package/dist/src/prefetch.d.ts +3 -2
  168. package/dist/src/prefetch.js +17 -8
  169. package/dist/src/rspack.d.ts +3 -2
  170. package/dist/src/rspack.js +35 -11
  171. package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.d.ts +8 -4
  172. package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js +19 -16
  173. package/dist/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js.map +1 -1
  174. package/dist/src/runtime.d.ts +1 -1
  175. package/dist/src/runtime.js +11 -18
  176. package/dist/src/schemas/container/ContainerPlugin.check.d.ts +13 -5
  177. package/dist/src/schemas/container/ContainerPlugin.check.js +958 -1218
  178. package/dist/src/schemas/container/ContainerPlugin.check.js.map +1 -1
  179. package/dist/src/schemas/container/ContainerPlugin.d.ts +271 -268
  180. package/dist/src/schemas/container/ContainerPlugin.js +273 -361
  181. package/dist/src/schemas/container/ContainerPlugin.js.map +1 -1
  182. package/dist/src/schemas/container/ContainerReferencePlugin.check.d.ts +13 -5
  183. package/dist/src/schemas/container/ContainerReferencePlugin.check.js +335 -443
  184. package/dist/src/schemas/container/ContainerReferencePlugin.check.js.map +1 -1
  185. package/dist/src/schemas/container/ContainerReferencePlugin.d.ts +102 -99
  186. package/dist/src/schemas/container/ContainerReferencePlugin.js +122 -162
  187. package/dist/src/schemas/container/ContainerReferencePlugin.js.map +1 -1
  188. package/dist/src/schemas/container/ExternalsType.check.d.ts +13 -5
  189. package/dist/src/schemas/container/ExternalsType.check.js +36 -62
  190. package/dist/src/schemas/container/ExternalsType.check.js.map +1 -1
  191. package/dist/src/schemas/container/ExternalsType.d.ts +5 -2
  192. package/dist/src/schemas/container/ExternalsType.js +8 -11
  193. package/dist/src/schemas/container/ExternalsType.js.map +1 -1
  194. package/dist/src/schemas/container/ModuleFederationPlugin.check.js +3001 -4812
  195. package/dist/src/schemas/container/ModuleFederationPlugin.check.js.map +1 -1
  196. package/dist/src/schemas/container/ModuleFederationPlugin.d.ts +819 -814
  197. package/dist/src/schemas/container/ModuleFederationPlugin.js +780 -1053
  198. package/dist/src/schemas/container/ModuleFederationPlugin.js.map +1 -1
  199. package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.d.ts +13 -5
  200. package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.js +568 -768
  201. package/dist/src/schemas/sharing/ConsumeSharedPlugin.check.js.map +1 -1
  202. package/dist/src/schemas/sharing/ConsumeSharedPlugin.d.ts +197 -194
  203. package/dist/src/schemas/sharing/ConsumeSharedPlugin.js +212 -238
  204. package/dist/src/schemas/sharing/ConsumeSharedPlugin.js.map +1 -1
  205. package/dist/src/schemas/sharing/ProvideSharedPlugin.check.d.ts +13 -5
  206. package/dist/src/schemas/sharing/ProvideSharedPlugin.check.js +598 -804
  207. package/dist/src/schemas/sharing/ProvideSharedPlugin.check.js.map +1 -1
  208. package/dist/src/schemas/sharing/ProvideSharedPlugin.d.ts +184 -181
  209. package/dist/src/schemas/sharing/ProvideSharedPlugin.js +196 -229
  210. package/dist/src/schemas/sharing/ProvideSharedPlugin.js.map +1 -1
  211. package/dist/src/schemas/sharing/ProviderSharedPlugin.check.d.ts +12 -4
  212. package/dist/src/schemas/sharing/ProviderSharedPlugin.check.js +285 -482
  213. package/dist/src/schemas/sharing/ProviderSharedPlugin.check.js.map +1 -1
  214. package/dist/src/schemas/sharing/ProviderSharedPlugin.d.ts +103 -100
  215. package/dist/src/schemas/sharing/ProviderSharedPlugin.js +104 -126
  216. package/dist/src/schemas/sharing/ProviderSharedPlugin.js.map +1 -1
  217. package/dist/src/schemas/sharing/SharePlugin.check.d.ts +13 -5
  218. package/dist/src/schemas/sharing/SharePlugin.check.js +749 -965
  219. package/dist/src/schemas/sharing/SharePlugin.check.js.map +1 -1
  220. package/dist/src/schemas/sharing/SharePlugin.d.ts +245 -242
  221. package/dist/src/schemas/sharing/SharePlugin.js +256 -293
  222. package/dist/src/schemas/sharing/SharePlugin.js.map +1 -1
  223. package/dist/src/utils.d.ts +3 -0
  224. package/dist/src/utils.js +35 -26
  225. package/dist/src/utils.js.map +1 -1
  226. package/dist/src/webpack.d.ts +2 -2
  227. package/dist/src/webpack.js +6 -40
  228. package/dist/src/wrapper/AsyncBoundaryPlugin.d.ts +9 -4
  229. package/dist/src/wrapper/AsyncBoundaryPlugin.js +12 -11
  230. package/dist/src/wrapper/AsyncBoundaryPlugin.js.map +1 -1
  231. package/dist/src/wrapper/BaseWrapperPlugin.d.ts +18 -13
  232. package/dist/src/wrapper/BaseWrapperPlugin.js +39 -39
  233. package/dist/src/wrapper/BaseWrapperPlugin.js.map +1 -1
  234. package/dist/src/wrapper/ConsumeSharedPlugin.d.ts +10 -4
  235. package/dist/src/wrapper/ConsumeSharedPlugin.js +12 -11
  236. package/dist/src/wrapper/ConsumeSharedPlugin.js.map +1 -1
  237. package/dist/src/wrapper/ContainerPlugin.d.ts +9 -4
  238. package/dist/src/wrapper/ContainerPlugin.js +12 -11
  239. package/dist/src/wrapper/ContainerPlugin.js.map +1 -1
  240. package/dist/src/wrapper/ContainerReferencePlugin.d.ts +9 -4
  241. package/dist/src/wrapper/ContainerReferencePlugin.js +12 -11
  242. package/dist/src/wrapper/ContainerReferencePlugin.js.map +1 -1
  243. package/dist/src/wrapper/FederationModulesPlugin.d.ts +18 -10
  244. package/dist/src/wrapper/FederationModulesPlugin.js +19 -19
  245. package/dist/src/wrapper/FederationModulesPlugin.js.map +1 -1
  246. package/dist/src/wrapper/FederationRuntimePlugin.d.ts +11 -6
  247. package/dist/src/wrapper/FederationRuntimePlugin.js +18 -17
  248. package/dist/src/wrapper/FederationRuntimePlugin.js.map +1 -1
  249. package/dist/src/wrapper/HoistContainerReferencesPlugin.d.ts +8 -3
  250. package/dist/src/wrapper/HoistContainerReferencesPlugin.js +12 -11
  251. package/dist/src/wrapper/HoistContainerReferencesPlugin.js.map +1 -1
  252. package/dist/src/wrapper/ModuleFederationPlugin.d.ts +12 -7
  253. package/dist/src/wrapper/ModuleFederationPlugin.js +73 -99
  254. package/dist/src/wrapper/ModuleFederationPlugin.js.map +1 -1
  255. package/dist/src/wrapper/ProvideSharedPlugin.d.ts +10 -4
  256. package/dist/src/wrapper/ProvideSharedPlugin.js +12 -11
  257. package/dist/src/wrapper/ProvideSharedPlugin.js.map +1 -1
  258. package/dist/src/wrapper/SharePlugin.d.ts +10 -4
  259. package/dist/src/wrapper/SharePlugin.js +12 -11
  260. package/dist/src/wrapper/SharePlugin.js.map +1 -1
  261. package/dist/src/wrapper/TreeShakingSharedPlugin.d.ts +9 -4
  262. package/dist/src/wrapper/TreeShakingSharedPlugin.js +12 -11
  263. package/dist/src/wrapper/TreeShakingSharedPlugin.js.map +1 -1
  264. package/package.json +20 -13
  265. package/dist/package.json +0 -110
  266. package/dist/src/declarations/plugins/container/AsyncDependenciesBlock.d.ts +0 -57
  267. package/dist/src/declarations/plugins/container/ModuleFactory.d.ts +0 -33
  268. package/dist/src/declarations/plugins/container/ObjectDeserializerContext.d.ts +0 -4
  269. package/dist/src/declarations/plugins/container/StaticExportsDependency.d.ts +0 -28
  270. package/dist/src/declarations/plugins/container/Template.d.ts +0 -198
  271. package/dist/src/declarations/plugins/container/WebpackError.d.ts +0 -33
  272. package/dist/src/declarations/plugins/sharing/ConsumeSharedModule.d.ts +0 -86
  273. package/dist/src/declarations/plugins/sharing/ConsumeSharedPlugin.d.ts +0 -100
  274. package/dist/src/declarations/plugins/sharing/ProvideSharedPlugin.d.ts +0 -102
  275. package/dist/src/declarations/plugins/sharing/SharePlugin.d.ts +0 -116
  276. package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.d.ts +0 -20
  277. package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.js +0 -222
  278. package/dist/src/lib/container/runtime/ChildCompilationRuntimePlugin.js.map +0 -1
  279. package/dist/src/prefetch.js.map +0 -1
  280. package/dist/src/rspack.js.map +0 -1
  281. package/dist/src/runtime.js.map +0 -1
  282. package/dist/src/types/runtime.d.ts +0 -10
  283. package/dist/src/types/runtime.js +0 -3
  284. package/dist/src/types/runtime.js.map +0 -1
  285. package/dist/src/webpack.js.map +0 -1
@@ -1,156 +1,146 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- /*
7
- MIT License http://www.opensource.org/licenses/mit-license.php
8
- Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy
9
- */
10
- const normalize_webpack_path_1 = require("@module-federation/sdk/normalize-webpack-path");
11
- const FallbackDependency_1 = __importDefault(require("./FallbackDependency"));
12
- const RemoteToExternalDependency_1 = __importDefault(require("./RemoteToExternalDependency"));
13
- const Constants_1 = require("../Constants");
14
- const FederationModulesPlugin_1 = __importDefault(require("./runtime/FederationModulesPlugin"));
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
- * @param {string} request request string
23
- * @param {string[]} externalRequests list of external requests to containers
24
- * @param {string} internalRequest name of exposed module in container
25
- * @param {string|string[]} shareScope scope in which modules are shared
26
- */
27
- constructor(request, externalRequests, internalRequest, shareScope) {
28
- super(Constants_1.WEBPACK_MODULE_TYPE_REMOTE);
29
- this.request = request;
30
- this.externalRequests = externalRequests;
31
- this.internalRequest = internalRequest;
32
- this.shareScope = shareScope;
33
- const scopeStr = Array.isArray(shareScope)
34
- ? shareScope.join('|')
35
- : shareScope;
36
- this._identifier = `remote (${scopeStr}) ${this.externalRequests.join(' ')} ${this.internalRequest}`;
37
- }
38
- /**
39
- * @returns {string} a unique identifier of the module
40
- */
41
- identifier() {
42
- return this._identifier;
43
- }
44
- /**
45
- * @param {RequestShortener} requestShortener the request shortener
46
- * @returns {string} a user readable identifier of the module
47
- */
48
- readableIdentifier(requestShortener) {
49
- return `remote ${this.request}`;
50
- }
51
- /**
52
- * @param {LibIdentOptions} options options
53
- * @returns {string | null} an identifier for library inclusion
54
- */
55
- libIdent(options) {
56
- return `${this.layer ? `(${this.layer})/` : ''}webpack/container/remote/${this.request}`;
57
- }
58
- /**
59
- * @param {NeedBuildContext} context context info
60
- * @param {function((WebpackError | null)=, boolean=): void} callback callback function, returns true, if the module needs a rebuild
61
- * @returns {void}
62
- */
63
- needBuild(context, callback) {
64
- callback(null, !this.buildInfo);
65
- }
66
- /**
67
- * @param {WebpackOptions} options webpack options
68
- * @param {Compilation} compilation the compilation
69
- * @param {ResolverWithOptions} resolver the resolver
70
- * @param {InputFileSystem} fs the file system
71
- * @param {function(WebpackError=): void} callback callback function
72
- * @returns {void}
73
- */
74
- // @ts-ignore
75
- build(options, compilation, resolver, fs, callback) {
76
- this.buildMeta = {};
77
- this.buildInfo = {
78
- strict: true,
79
- };
80
- this.clearDependenciesAndBlocks();
81
- if (this.externalRequests.length === 1) {
82
- const dep = new RemoteToExternalDependency_1.default(this.externalRequests[0]);
83
- this.addDependency(dep);
84
- const hooks = FederationModulesPlugin_1.default.getCompilationHooks(compilation);
85
- hooks.addRemoteDependency.call(dep);
86
- }
87
- else {
88
- const dep = new FallbackDependency_1.default(this.externalRequests);
89
- this.addDependency(dep);
90
- const hooks = FederationModulesPlugin_1.default.getCompilationHooks(compilation);
91
- hooks.addRemoteDependency.call(dep);
92
- }
93
- callback();
94
- }
95
- /**
96
- * @param {string=} type the source type for which the size should be estimated
97
- * @returns {number} the estimated size of the module (must be non-zero)
98
- */
99
- size(type) {
100
- return 6;
101
- }
102
- /**
103
- * @returns {Set<string>} types available (do not mutate)
104
- */
105
- getSourceTypes() {
106
- return TYPES;
107
- }
108
- /**
109
- * @returns {string | null} absolute path which should be used for condition matching (usually the resource path)
110
- */
111
- nameForCondition() {
112
- return this.request;
113
- }
114
- /**
115
- * @param {CodeGenerationContext} context context for code generation
116
- * @returns {CodeGenerationResult} result
117
- */
118
- // @ts-ignore
119
- codeGeneration(context) {
120
- const { moduleGraph, chunkGraph } = context;
121
- const module = moduleGraph.getModule(this.dependencies[0]);
122
- const id = module && chunkGraph.getModuleId(module);
123
- const sources = new Map();
124
- sources.set('remote', new webpackSources.RawSource(''));
125
- const data = new Map();
126
- data.set('share-init', [
127
- {
128
- shareScope: this.shareScope,
129
- initStage: 20,
130
- init: id === undefined ? '' : `initExternal(${JSON.stringify(id)});`,
131
- },
132
- ]);
133
- return { sources, data, runtimeRequirements: RUNTIME_REQUIREMENTS };
134
- }
135
- serialize(context) {
136
- const { write } = context;
137
- write(this.request);
138
- write(this.externalRequests);
139
- write(this.internalRequest);
140
- write(this.shareScope);
141
- super.serialize(context);
142
- }
143
- /**
144
- * @param {ObjectDeserializerContext} context context
145
- * @returns {RemoteModule} deserialized module
146
- */
147
- static deserialize(context) {
148
- const { read } = context;
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","sourceRoot":"","sources":["../../../../src/lib/container/RemoteModule.ts"],"names":[],"mappings":"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"}
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
- declare const RuntimeModule: typeof import("webpack").RuntimeModule;
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
- constructor();
4
- /**
5
- * @returns {string | null} runtime code
6
- */
7
- generate(): string | null;
6
+ constructor();
7
+ /**
8
+ * @returns {string | null} runtime code
9
+ */
10
+ generate(): string | null;
8
11
  }
9
- export default RemoteRuntimeModule;
12
+ //#endregion
13
+ export { RemoteRuntimeModule as default };
14
+ //# sourceMappingURL=RemoteRuntimeModule.d.ts.map
@@ -1,134 +1,88 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /*
4
- MIT License http://www.opensource.org/licenses/mit-license.php
5
- Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy
6
- */
7
- const normalize_webpack_path_1 = require("@module-federation/sdk/normalize-webpack-path");
8
- const utils_1 = require("./runtime/utils");
9
- const extractUrlAndGlobal = require((0, normalize_webpack_path_1.normalizeWebpackPath)('webpack/lib/util/extractUrlAndGlobal'));
10
- const { Template, RuntimeModule, RuntimeGlobals } = require((0, normalize_webpack_path_1.normalizeWebpackPath)('webpack'));
11
- class RemoteRuntimeModule extends RuntimeModule {
12
- constructor() {
13
- super('remotes loading');
14
- }
15
- /**
16
- * @returns {string | null} runtime code
17
- */
18
- generate() {
19
- const { compilation, chunkGraph } = this;
20
- const { runtimeTemplate, moduleGraph } = compilation;
21
- const chunkToRemotesMapping = {};
22
- const idToExternalAndNameMapping = {};
23
- const idToRemoteMap = {};
24
- const moduleIdToRemoteDataMapping = {};
25
- // let chunkReferences: Set<Chunk> = new Set();
26
- // if (this.chunk && chunkGraph) {
27
- // const requirements = chunkGraph.getTreeRuntimeRequirements(this.chunk);
28
- // if (requirements.has('federation-entry-startup')) {
29
- // chunkReferences = this.chunk.getAllReferencedChunks();
30
- // } else {
31
- // // remote entry doesnt need federation startup, can have async chunk map only
32
- // chunkReferences = this.chunk.getAllAsyncChunks();
33
- // }
34
- // }
35
- const allChunks = [
36
- ...Array.from(this.chunk?.getAllReferencedChunks() || []),
37
- ];
38
- for (const chunk of allChunks) {
39
- if (chunk.id === null || chunk.id === undefined) {
40
- continue;
41
- }
42
- const modules = chunkGraph?.getChunkModulesIterableBySourceType(chunk, 'remote');
43
- if (!modules) {
44
- continue;
45
- }
46
- // @ts-ignore
47
- const remotes = (chunkToRemotesMapping[chunk.id] = []);
48
- for (const m of modules) {
49
- const module = m;
50
- const name = module.internalRequest;
51
- // @ts-ignore
52
- const id = chunkGraph ? chunkGraph.getModuleId(module) : undefined;
53
- const { shareScope } = module;
54
- const dep = module.dependencies[0];
55
- // @ts-ignore
56
- const externalModule = moduleGraph.getModule(dep);
57
- const externalModuleId = chunkGraph && externalModule
58
- ? // @ts-ignore
59
- chunkGraph.getModuleId(externalModule)
60
- : undefined;
61
- if (id !== undefined && id !== null) {
62
- //@ts-ignore
63
- remotes.push(id);
64
- const normalizedExternalModuleId = externalModuleId === null || externalModuleId === undefined
65
- ? undefined
66
- : externalModuleId;
67
- idToExternalAndNameMapping[id] = [
68
- shareScope,
69
- name,
70
- normalizedExternalModuleId,
71
- ];
72
- const remoteModules = [];
73
- // FallbackModule has requests
74
- if ('requests' in externalModule && externalModule.requests) {
75
- externalModule.dependencies.forEach((dependency) => {
76
- const remoteModule = moduleGraph.getModule(dependency);
77
- if (remoteModule) {
78
- // @ts-ignore
79
- remoteModules.push(remoteModule);
80
- }
81
- });
82
- }
83
- else {
84
- remoteModules.push(externalModule);
85
- }
86
- idToRemoteMap[id] = [];
87
- remoteModules.forEach((remoteModule) => {
88
- let remoteName = '';
89
- try {
90
- const [_url, name] = extractUrlAndGlobal(remoteModule.request);
91
- remoteName = name;
92
- }
93
- catch (err) {
94
- //noop
95
- }
96
- const externalModuleId = chunkGraph &&
97
- remoteModule &&
98
- // @ts-ignore
99
- chunkGraph.getModuleId(remoteModule);
100
- idToRemoteMap[id].push({
101
- externalType: remoteModule.externalType,
102
- name: remoteModule.externalType === 'script' ? remoteName : '',
103
- });
104
- if (externalModuleId !== null && externalModuleId !== undefined) {
105
- moduleIdToRemoteDataMapping[id] = {
106
- shareScope: shareScope,
107
- name,
108
- externalModuleId: externalModuleId,
109
- // Preserve the extracted remote name so lazy updates can
110
- // rebuild idToRemoteMap via updateRemoteOptions.
111
- remoteName: remoteName,
112
- };
113
- }
114
- });
115
- }
116
- }
117
- }
118
- const federationGlobal = (0, utils_1.getFederationGlobalScope)(RuntimeGlobals || {});
119
- return Template.asString([
120
- `var chunkMapping = ${JSON.stringify(chunkToRemotesMapping, null, '\t')};`,
121
- `var idToExternalAndNameMapping = ${JSON.stringify(idToExternalAndNameMapping, null, '\t')};`,
122
- `var idToRemoteMap = ${JSON.stringify(idToRemoteMap, null, '\t')};`,
123
- `${federationGlobal}.bundlerRuntimeOptions.remotes.chunkMapping = chunkMapping;`,
124
- `${federationGlobal}.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping = idToExternalAndNameMapping;`,
125
- `${federationGlobal}.bundlerRuntimeOptions.remotes.idToRemoteMap = idToRemoteMap;`,
126
- `${RuntimeGlobals.require}.remotesLoadingData.moduleIdToRemoteDataMapping = ${JSON.stringify(moduleIdToRemoteDataMapping, null, '\t')};`,
127
- `${RuntimeGlobals.ensureChunkHandlers}.remotes = ${runtimeTemplate.basicFunction('chunkId, promises', [
128
- `${federationGlobal}.bundlerRuntime.remotes({idToRemoteMap,chunkMapping, idToExternalAndNameMapping, chunkId, promises, webpackRequire:${RuntimeGlobals.require}});`,
129
- ])}`,
130
- ]);
131
- }
132
- }
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
133
87
  exports.default = RemoteRuntimeModule;
134
88
  //# sourceMappingURL=RemoteRuntimeModule.js.map