@module-federation/enhanced 0.0.0-canary-1701764602388

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 (235) hide show
  1. package/global.d.js +14 -0
  2. package/global.d.js.map +1 -0
  3. package/package.json +19 -0
  4. package/src/declarations/plugins/container/AsyncDependenciesBlock.d.js +14 -0
  5. package/src/declarations/plugins/container/AsyncDependenciesBlock.d.js.map +1 -0
  6. package/src/declarations/plugins/container/ContainerPlugin.d.js +12 -0
  7. package/src/declarations/plugins/container/ContainerPlugin.d.js.map +1 -0
  8. package/src/declarations/plugins/container/ContainerReferencePlugin.d.js +12 -0
  9. package/src/declarations/plugins/container/ContainerReferencePlugin.d.js.map +1 -0
  10. package/src/declarations/plugins/container/Dependency.d.js +14 -0
  11. package/src/declarations/plugins/container/Dependency.d.js.map +1 -0
  12. package/src/declarations/plugins/container/Module.d.js +3 -0
  13. package/src/declarations/plugins/container/Module.d.js.map +1 -0
  14. package/src/declarations/plugins/container/ModuleFactory.d.js +3 -0
  15. package/src/declarations/plugins/container/ModuleFactory.d.js.map +1 -0
  16. package/src/declarations/plugins/container/ModuleFederationPlugin.d.js +12 -0
  17. package/src/declarations/plugins/container/ModuleFederationPlugin.d.js.map +1 -0
  18. package/src/declarations/plugins/container/ObjectDeserializerContext.d.js +6 -0
  19. package/src/declarations/plugins/container/ObjectDeserializerContext.d.js.map +1 -0
  20. package/src/declarations/plugins/container/StaticExportsDependency.d.js +14 -0
  21. package/src/declarations/plugins/container/StaticExportsDependency.d.js.map +1 -0
  22. package/src/declarations/plugins/container/Template.d.js +4 -0
  23. package/src/declarations/plugins/container/Template.d.js.map +1 -0
  24. package/src/declarations/plugins/container/WebpackError.d.js +3 -0
  25. package/src/declarations/plugins/container/WebpackError.d.js.map +1 -0
  26. package/src/declarations/plugins/container/WebpackOptions.d.js +6 -0
  27. package/src/declarations/plugins/container/WebpackOptions.d.js.map +1 -0
  28. package/src/declarations/plugins/sharing/ConsumeSharedPlugin.d.js +12 -0
  29. package/src/declarations/plugins/sharing/ConsumeSharedPlugin.d.js.map +1 -0
  30. package/src/declarations/plugins/sharing/ProvideSharedPlugin.d.js +12 -0
  31. package/src/declarations/plugins/sharing/ProvideSharedPlugin.d.js.map +1 -0
  32. package/src/declarations/plugins/sharing/SharePlugin.d.js +12 -0
  33. package/src/declarations/plugins/sharing/SharePlugin.d.js.map +1 -0
  34. package/src/index.d.ts +7 -0
  35. package/src/index.js +43 -0
  36. package/src/index.js.map +1 -0
  37. package/src/lib/Constants.d.ts +117 -0
  38. package/src/lib/Constants.js +103 -0
  39. package/src/lib/Constants.js.map +1 -0
  40. package/src/lib/RuntimeGlobals.d.ts +0 -0
  41. package/src/lib/RuntimeGlobals.js +246 -0
  42. package/src/lib/RuntimeGlobals.js.map +1 -0
  43. package/src/lib/container/AsyncBoundaryPlugin.d.ts +21 -0
  44. package/src/lib/container/AsyncBoundaryPlugin.js +180 -0
  45. package/src/lib/container/AsyncBoundaryPlugin.js.map +1 -0
  46. package/src/lib/container/ContainerEntryDependency.d.js +4 -0
  47. package/src/lib/container/ContainerEntryDependency.d.js.map +1 -0
  48. package/src/lib/container/ContainerEntryDependency.d.ts +22 -0
  49. package/src/lib/container/ContainerEntryDependency.js +45 -0
  50. package/src/lib/container/ContainerEntryDependency.js.map +1 -0
  51. package/src/lib/container/ContainerEntryModule.d.js +14 -0
  52. package/src/lib/container/ContainerEntryModule.d.js.map +1 -0
  53. package/src/lib/container/ContainerEntryModule.d.ts +86 -0
  54. package/src/lib/container/ContainerEntryModule.js +260 -0
  55. package/src/lib/container/ContainerEntryModule.js.map +1 -0
  56. package/src/lib/container/ContainerEntryModuleFactory.d.js +4 -0
  57. package/src/lib/container/ContainerEntryModuleFactory.d.js.map +1 -0
  58. package/src/lib/container/ContainerEntryModuleFactory.d.ts +10 -0
  59. package/src/lib/container/ContainerEntryModuleFactory.js +32 -0
  60. package/src/lib/container/ContainerEntryModuleFactory.js.map +1 -0
  61. package/src/lib/container/ContainerExposedDependency.d.js +4 -0
  62. package/src/lib/container/ContainerExposedDependency.d.js.map +1 -0
  63. package/src/lib/container/ContainerExposedDependency.d.ts +26 -0
  64. package/src/lib/container/ContainerExposedDependency.js +53 -0
  65. package/src/lib/container/ContainerExposedDependency.js.map +1 -0
  66. package/src/lib/container/ContainerPlugin.d.js +4 -0
  67. package/src/lib/container/ContainerPlugin.d.js.map +1 -0
  68. package/src/lib/container/ContainerPlugin.d.ts +13 -0
  69. package/src/lib/container/ContainerPlugin.js +167 -0
  70. package/src/lib/container/ContainerPlugin.js.map +1 -0
  71. package/src/lib/container/ContainerReferencePlugin.d.js +4 -0
  72. package/src/lib/container/ContainerReferencePlugin.d.js.map +1 -0
  73. package/src/lib/container/ContainerReferencePlugin.d.ts +14 -0
  74. package/src/lib/container/ContainerReferencePlugin.js +102 -0
  75. package/src/lib/container/ContainerReferencePlugin.js.map +1 -0
  76. package/src/lib/container/FallbackDependency.d.js +14 -0
  77. package/src/lib/container/FallbackDependency.d.js.map +1 -0
  78. package/src/lib/container/FallbackDependency.d.ts +25 -0
  79. package/src/lib/container/FallbackDependency.js +55 -0
  80. package/src/lib/container/FallbackDependency.js.map +1 -0
  81. package/src/lib/container/FallbackItemDependency.d.js +4 -0
  82. package/src/lib/container/FallbackItemDependency.d.js.map +1 -0
  83. package/src/lib/container/FallbackItemDependency.d.ts +10 -0
  84. package/src/lib/container/FallbackItemDependency.js +33 -0
  85. package/src/lib/container/FallbackItemDependency.js.map +1 -0
  86. package/src/lib/container/FallbackModule.d.js +4 -0
  87. package/src/lib/container/FallbackModule.d.js.map +1 -0
  88. package/src/lib/container/FallbackModule.d.ts +73 -0
  89. package/src/lib/container/FallbackModule.js +149 -0
  90. package/src/lib/container/FallbackModule.js.map +1 -0
  91. package/src/lib/container/FallbackModuleFactory.d.js +4 -0
  92. package/src/lib/container/FallbackModuleFactory.d.js.map +1 -0
  93. package/src/lib/container/FallbackModuleFactory.d.ts +10 -0
  94. package/src/lib/container/FallbackModuleFactory.js +30 -0
  95. package/src/lib/container/FallbackModuleFactory.js.map +1 -0
  96. package/src/lib/container/HoistContainerReferencesPlugin.d.ts +19 -0
  97. package/src/lib/container/HoistContainerReferencesPlugin.js +78 -0
  98. package/src/lib/container/HoistContainerReferencesPlugin.js.map +1 -0
  99. package/src/lib/container/ModuleFederationPlugin.d.js +4 -0
  100. package/src/lib/container/ModuleFederationPlugin.d.js.map +1 -0
  101. package/src/lib/container/ModuleFederationPlugin.d.ts +17 -0
  102. package/src/lib/container/ModuleFederationPlugin.js +93 -0
  103. package/src/lib/container/ModuleFederationPlugin.js.map +1 -0
  104. package/src/lib/container/ModuleFederationPluginTypes.d.js +12 -0
  105. package/src/lib/container/ModuleFederationPluginTypes.d.js.map +1 -0
  106. package/src/lib/container/RemoteModule.d.js +13 -0
  107. package/src/lib/container/RemoteModule.d.js.map +1 -0
  108. package/src/lib/container/RemoteModule.d.ts +78 -0
  109. package/src/lib/container/RemoteModule.js +150 -0
  110. package/src/lib/container/RemoteModule.js.map +1 -0
  111. package/src/lib/container/RemoteRuntimeModule.d.js +13 -0
  112. package/src/lib/container/RemoteRuntimeModule.d.js.map +1 -0
  113. package/src/lib/container/RemoteRuntimeModule.d.ts +9 -0
  114. package/src/lib/container/RemoteRuntimeModule.js +98 -0
  115. package/src/lib/container/RemoteRuntimeModule.js.map +1 -0
  116. package/src/lib/container/RemoteToExternalDependency.d.js +15 -0
  117. package/src/lib/container/RemoteToExternalDependency.d.js.map +1 -0
  118. package/src/lib/container/RemoteToExternalDependency.d.ts +10 -0
  119. package/src/lib/container/RemoteToExternalDependency.js +33 -0
  120. package/src/lib/container/RemoteToExternalDependency.js.map +1 -0
  121. package/src/lib/container/constant.d.ts +3 -0
  122. package/src/lib/container/constant.js +26 -0
  123. package/src/lib/container/constant.js.map +1 -0
  124. package/src/lib/container/options.d.js +6 -0
  125. package/src/lib/container/options.d.js.map +1 -0
  126. package/src/lib/container/options.d.ts +18 -0
  127. package/src/lib/container/options.js +91 -0
  128. package/src/lib/container/options.js.map +1 -0
  129. package/src/lib/container/runtime/FederationRuntimeEntryDependency.d.ts +7 -0
  130. package/src/lib/container/runtime/FederationRuntimeEntryDependency.js +37 -0
  131. package/src/lib/container/runtime/FederationRuntimeEntryDependency.js.map +1 -0
  132. package/src/lib/container/runtime/FederationRuntimeModule.d.ts +13 -0
  133. package/src/lib/container/runtime/FederationRuntimeModule.js +31 -0
  134. package/src/lib/container/runtime/FederationRuntimeModule.js.map +1 -0
  135. package/src/lib/container/runtime/FederationRuntimePlugin.d.ts +17 -0
  136. package/src/lib/container/runtime/FederationRuntimePlugin.js +223 -0
  137. package/src/lib/container/runtime/FederationRuntimePlugin.js.map +1 -0
  138. package/src/lib/container/runtime/InitializeRemoteEntryRuntimePlugin.d.ts +6 -0
  139. package/src/lib/container/runtime/InitializeRemoteEntryRuntimePlugin.js +26 -0
  140. package/src/lib/container/runtime/InitializeRemoteEntryRuntimePlugin.js.map +1 -0
  141. package/src/lib/container/runtime/getFederationGlobal.d.ts +5 -0
  142. package/src/lib/container/runtime/getFederationGlobal.js +42 -0
  143. package/src/lib/container/runtime/getFederationGlobal.js.map +1 -0
  144. package/src/lib/container/runtime/utils.d.ts +15 -0
  145. package/src/lib/container/runtime/utils.js +95 -0
  146. package/src/lib/container/runtime/utils.js.map +1 -0
  147. package/src/lib/sharing/ConsumeSharedFallbackDependency.d.js +4 -0
  148. package/src/lib/sharing/ConsumeSharedFallbackDependency.d.js.map +1 -0
  149. package/src/lib/sharing/ConsumeSharedFallbackDependency.d.ts +10 -0
  150. package/src/lib/sharing/ConsumeSharedFallbackDependency.js +33 -0
  151. package/src/lib/sharing/ConsumeSharedFallbackDependency.js.map +1 -0
  152. package/src/lib/sharing/ConsumeSharedModule.d.js +4 -0
  153. package/src/lib/sharing/ConsumeSharedModule.d.js.map +1 -0
  154. package/src/lib/sharing/ConsumeSharedModule.d.ts +106 -0
  155. package/src/lib/sharing/ConsumeSharedModule.js +195 -0
  156. package/src/lib/sharing/ConsumeSharedModule.js.map +1 -0
  157. package/src/lib/sharing/ConsumeSharedPlugin.d.js +4 -0
  158. package/src/lib/sharing/ConsumeSharedPlugin.d.js.map +1 -0
  159. package/src/lib/sharing/ConsumeSharedPlugin.d.ts +8 -0
  160. package/src/lib/sharing/ConsumeSharedPlugin.js +225 -0
  161. package/src/lib/sharing/ConsumeSharedPlugin.js.map +1 -0
  162. package/src/lib/sharing/ConsumeSharedRuntimeModule.d.js +4 -0
  163. package/src/lib/sharing/ConsumeSharedRuntimeModule.d.js.map +1 -0
  164. package/src/lib/sharing/ConsumeSharedRuntimeModule.d.ts +13 -0
  165. package/src/lib/sharing/ConsumeSharedRuntimeModule.js +310 -0
  166. package/src/lib/sharing/ConsumeSharedRuntimeModule.js.map +1 -0
  167. package/src/lib/sharing/ProvideForSharedDependency.d.js +4 -0
  168. package/src/lib/sharing/ProvideForSharedDependency.d.js.map +1 -0
  169. package/src/lib/sharing/ProvideForSharedDependency.d.ts +11 -0
  170. package/src/lib/sharing/ProvideForSharedDependency.js +34 -0
  171. package/src/lib/sharing/ProvideForSharedDependency.js.map +1 -0
  172. package/src/lib/sharing/ProvideSharedDependency.d.js +14 -0
  173. package/src/lib/sharing/ProvideSharedDependency.d.js.map +1 -0
  174. package/src/lib/sharing/ProvideSharedDependency.d.ts +32 -0
  175. package/src/lib/sharing/ProvideSharedDependency.js +65 -0
  176. package/src/lib/sharing/ProvideSharedDependency.js.map +1 -0
  177. package/src/lib/sharing/ProvideSharedModule.d.js +4 -0
  178. package/src/lib/sharing/ProvideSharedModule.d.js.map +1 -0
  179. package/src/lib/sharing/ProvideSharedModule.d.ts +79 -0
  180. package/src/lib/sharing/ProvideSharedModule.js +169 -0
  181. package/src/lib/sharing/ProvideSharedModule.js.map +1 -0
  182. package/src/lib/sharing/ProvideSharedModuleFactory.d.js +4 -0
  183. package/src/lib/sharing/ProvideSharedModuleFactory.d.js.map +1 -0
  184. package/src/lib/sharing/ProvideSharedModuleFactory.d.ts +11 -0
  185. package/src/lib/sharing/ProvideSharedModuleFactory.js +32 -0
  186. package/src/lib/sharing/ProvideSharedModuleFactory.js.map +1 -0
  187. package/src/lib/sharing/ProvideSharedPlugin.d.js +4 -0
  188. package/src/lib/sharing/ProvideSharedPlugin.d.js.map +1 -0
  189. package/src/lib/sharing/ProvideSharedPlugin.d.ts +34 -0
  190. package/src/lib/sharing/ProvideSharedPlugin.js +168 -0
  191. package/src/lib/sharing/ProvideSharedPlugin.js.map +1 -0
  192. package/src/lib/sharing/SharePlugin.d.js +4 -0
  193. package/src/lib/sharing/SharePlugin.d.js.map +1 -0
  194. package/src/lib/sharing/SharePlugin.d.ts +15 -0
  195. package/src/lib/sharing/SharePlugin.js +73 -0
  196. package/src/lib/sharing/SharePlugin.js.map +1 -0
  197. package/src/lib/sharing/ShareRuntimeModule.d.js +4 -0
  198. package/src/lib/sharing/ShareRuntimeModule.d.js.map +1 -0
  199. package/src/lib/sharing/ShareRuntimeModule.d.ts +9 -0
  200. package/src/lib/sharing/ShareRuntimeModule.js +95 -0
  201. package/src/lib/sharing/ShareRuntimeModule.js.map +1 -0
  202. package/src/lib/sharing/resolveMatchedConfigs.d.js +6 -0
  203. package/src/lib/sharing/resolveMatchedConfigs.d.js.map +1 -0
  204. package/src/lib/sharing/resolveMatchedConfigs.d.ts +8 -0
  205. package/src/lib/sharing/resolveMatchedConfigs.js +69 -0
  206. package/src/lib/sharing/resolveMatchedConfigs.js.map +1 -0
  207. package/src/lib/sharing/utils.d.js +6 -0
  208. package/src/lib/sharing/utils.d.js.map +1 -0
  209. package/src/lib/sharing/utils.d.ts +45 -0
  210. package/src/lib/sharing/utils.js +348 -0
  211. package/src/lib/sharing/utils.js.map +1 -0
  212. package/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.d.ts +5 -0
  213. package/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js +34 -0
  214. package/src/runtime/AddRuntimeRequirementToPromiseExternalPlugin.js.map +1 -0
  215. package/src/runtime/ModuleInfoRuntimeModule.d.ts +16 -0
  216. package/src/runtime/ModuleInfoRuntimeModule.js +88 -0
  217. package/src/runtime/ModuleInfoRuntimeModule.js.map +1 -0
  218. package/src/runtime/ModuleInfoRuntimePlugin.d.ts +5 -0
  219. package/src/runtime/ModuleInfoRuntimePlugin.js +29 -0
  220. package/src/runtime/ModuleInfoRuntimePlugin.js.map +1 -0
  221. package/src/schemas/container/ContainerPlugin.check.d.ts +7 -0
  222. package/src/schemas/container/ContainerPlugin.check.js +2229 -0
  223. package/src/schemas/container/ContainerPlugin.check.js.map +1 -0
  224. package/src/schemas/container/ContainerPlugin.d.ts +268 -0
  225. package/src/schemas/container/ContainerPlugin.js +324 -0
  226. package/src/schemas/container/ContainerPlugin.js.map +1 -0
  227. package/src/schemas/container/ModuleFederationPlugin.check.d.ts +7 -0
  228. package/src/schemas/container/ModuleFederationPlugin.check.js +3818 -0
  229. package/src/schemas/container/ModuleFederationPlugin.check.js.map +1 -0
  230. package/src/schemas/container/ModuleFederationPlugin.d.ts +441 -0
  231. package/src/schemas/container/ModuleFederationPlugin.js +556 -0
  232. package/src/schemas/container/ModuleFederationPlugin.js.map +1 -0
  233. package/src/types/runtime.d.ts +7 -0
  234. package/src/types/runtime.js +6 -0
  235. package/src/types/runtime.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ConsumeSharedPlugin.ts"],"sourcesContent":["/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\n\n'use strict';\n\nimport { parseOptions } from '../container/options';\nimport { ConsumeOptions } from './ConsumeSharedModule';\nimport { ConsumeSharedPluginOptions } from '../../declarations/plugins/sharing/ConsumeSharedPlugin';\nimport { resolveMatchedConfigs } from './resolveMatchedConfigs';\nimport {\n isRequiredVersion,\n getDescriptionFile,\n getRequiredVersionFromDescriptionFile,\n} from './utils';\nimport type { ResolveOptionsWithDependencyType } from 'webpack/lib/ResolverFactory';\nimport ConsumeSharedFallbackDependency from './ConsumeSharedFallbackDependency';\nimport ConsumeSharedModule from './ConsumeSharedModule';\nimport ConsumeSharedRuntimeModule from './ConsumeSharedRuntimeModule';\nimport ProvideForSharedDependency from './ProvideForSharedDependency';\n//@ts-ignore\nimport ModuleNotFoundError from 'webpack/lib/ModuleNotFoundError';\nimport * as RuntimeGlobals from 'webpack/lib/RuntimeGlobals';\n//@ts-ignore\nimport WebpackError from 'webpack/lib/WebpackError';\n//@ts-ignore\nimport Compiler from 'webpack/lib/Compiler';\n//@ts-ignore\nimport LazySet from 'webpack/lib/util/LazySet';\n//@ts-ignore\nimport createSchemaValidation from 'webpack/lib/util/create-schema-validation';\nimport { SemVerRange } from 'webpack/lib/util/semver';\nimport FederationRuntimePlugin from '../container/runtime/FederationRuntimePlugin';\nimport ShareRuntimeModule from './ShareRuntimeModule';\n\nconst validate = createSchemaValidation(\n //eslint-disable-next-line\n require('webpack/schemas/plugins/sharing/ConsumeSharedPlugin.check.js'),\n () => require('webpack/schemas/plugins/sharing/ConsumeSharedPlugin.json'),\n {\n name: 'Consume Shared Plugin',\n baseDataPath: 'options',\n },\n);\n\nconst RESOLVE_OPTIONS: ResolveOptionsWithDependencyType = {\n dependencyType: 'esm',\n};\nconst PLUGIN_NAME = 'ConsumeSharedPlugin';\nclass ConsumeSharedPlugin {\n private _consumes: [string, ConsumeOptions][];\n\n constructor(options: ConsumeSharedPluginOptions) {\n if (typeof options !== 'string') {\n validate(options);\n }\n\n this._consumes = parseOptions(\n options.consumes,\n (item, key) => {\n if (Array.isArray(item)) throw new Error('Unexpected array in options');\n //@ts-ignore\n const result: ConsumeOptions =\n item === key || !isRequiredVersion(item)\n ? // item is a request/key\n {\n import: key,\n shareScope: options.shareScope || 'default',\n shareKey: key,\n requiredVersion: undefined,\n packageName: undefined,\n strictVersion: false,\n singleton: false,\n eager: false,\n }\n : // key is a request/key\n // item is a version\n {\n import: key,\n shareScope: options.shareScope || 'default',\n shareKey: key,\n // webpack internal semver has some issue, use runtime semver , related issue: https://github.com/webpack/webpack/issues/17756\n requiredVersion: item,\n strictVersion: true,\n packageName: undefined,\n singleton: false,\n eager: false,\n };\n return result;\n },\n (item, key) => ({\n import: item.import === false ? undefined : item.import || key,\n shareScope: item.shareScope || options.shareScope || 'default',\n shareKey: item.shareKey || key,\n // @ts-ignore webpack internal semver has some issue, use runtime semver , related issue: https://github.com/webpack/webpack/issues/17756\n requiredVersion: item.requiredVersion,\n strictVersion:\n typeof item.strictVersion === 'boolean'\n ? item.strictVersion\n : item.import !== false && !item.singleton,\n //@ts-ignore\n packageName: item.packageName,\n singleton: !!item.singleton,\n eager: !!item.eager,\n }),\n );\n }\n\n apply(compiler: Compiler): void {\n //@ts-ignore\n new FederationRuntimePlugin().apply(compiler);\n\n compiler.hooks.thisCompilation.tap(\n PLUGIN_NAME,\n (compilation, { normalModuleFactory }) => {\n compilation.dependencyFactories.set(\n ConsumeSharedFallbackDependency,\n normalModuleFactory,\n );\n\n let unresolvedConsumes: Map<string, ConsumeOptions>,\n resolvedConsumes: Map<string, ConsumeOptions>,\n prefixedConsumes: Map<string, ConsumeOptions>;\n const promise = resolveMatchedConfigs(compilation, this._consumes).then(\n ({ resolved, unresolved, prefixed }) => {\n resolvedConsumes = resolved;\n unresolvedConsumes = unresolved;\n prefixedConsumes = prefixed;\n },\n );\n\n const resolver = compilation.resolverFactory.get(\n 'normal',\n RESOLVE_OPTIONS,\n );\n\n const createConsumeSharedModule = (\n context: string,\n request: string,\n config: ConsumeOptions,\n ): Promise<ConsumeSharedModule> => {\n const requiredVersionWarning = (details: string) => {\n const error = new WebpackError(\n `No required version specified and unable to automatically determine one. ${details}`,\n );\n error.file = `shared module ${request}`;\n compilation.warnings.push(error);\n };\n const directFallback =\n config.import &&\n /^(\\.\\.?(\\/|$)|\\/|[A-Za-z]:|\\\\\\\\)/.test(config.import);\n return Promise.all([\n new Promise<string | undefined>((resolve) => {\n if (!config.import) return resolve(undefined);\n const resolveContext = {\n fileDependencies: new LazySet<string>(),\n contextDependencies: new LazySet<string>(),\n missingDependencies: new LazySet<string>(),\n };\n resolver.resolve(\n {},\n directFallback ? compiler.context : context,\n config.import,\n resolveContext,\n (err, result) => {\n compilation.contextDependencies.addAll(\n resolveContext.contextDependencies,\n );\n compilation.fileDependencies.addAll(\n resolveContext.fileDependencies,\n );\n compilation.missingDependencies.addAll(\n resolveContext.missingDependencies,\n );\n if (err) {\n compilation.errors.push(\n new ModuleNotFoundError(null, err, {\n name: `resolving fallback for shared module ${request}`,\n }),\n );\n return resolve(undefined);\n }\n //@ts-ignore\n resolve(result);\n },\n );\n }),\n new Promise<false | undefined | SemVerRange>((resolve) => {\n if (config.requiredVersion !== undefined) {\n return resolve(config.requiredVersion);\n }\n let packageName = config.packageName;\n if (packageName === undefined) {\n if (/^(\\/|[A-Za-z]:|\\\\\\\\)/.test(request)) {\n // For relative or absolute requests we don't automatically use a packageName.\n // If wished one can specify one with the packageName option.\n return resolve(undefined);\n }\n const match = /^((?:@[^\\\\/]+[\\\\/])?[^\\\\/]+)/.exec(request);\n if (!match) {\n requiredVersionWarning(\n 'Unable to extract the package name from request.',\n );\n return resolve(undefined);\n }\n packageName = match[0];\n }\n\n getDescriptionFile(\n compilation.inputFileSystem,\n context,\n ['package.json'],\n (err, result) => {\n if (err) {\n requiredVersionWarning(\n `Unable to read description file: ${err}`,\n );\n return resolve(undefined);\n }\n //@ts-ignore\n const { data, path: descriptionPath } = result;\n if (!data) {\n requiredVersionWarning(\n `Unable to find description file in ${context}.`,\n );\n return resolve(undefined);\n }\n //@ts-ignore\n if (data.name === packageName) {\n // Package self-referencing\n return resolve(undefined);\n }\n const requiredVersion = getRequiredVersionFromDescriptionFile(\n data,\n packageName,\n );\n if (typeof requiredVersion !== 'string') {\n requiredVersionWarning(\n `Unable to find required version for \"${packageName}\" in description file (${descriptionPath}). It need to be in dependencies, devDependencies or peerDependencies.`,\n );\n return resolve(undefined);\n }\n // @ts-ignore webpack internal semver has some issue, use runtime semver , related issue: https://github.com/webpack/webpack/issues/17756\n resolve(requiredVersion);\n },\n );\n }),\n ]).then(([importResolved, requiredVersion]) => {\n return new ConsumeSharedModule(\n directFallback ? compiler.context : context,\n {\n ...config,\n importResolved,\n import: importResolved ? config.import : undefined,\n requiredVersion,\n },\n );\n });\n };\n\n normalModuleFactory.hooks.factorize.tapPromise(\n PLUGIN_NAME,\n ({ context, request, dependencies }) =>\n // wait for resolving to be complete\n //@ts-ignore\n promise.then(() => {\n if (\n dependencies[0] instanceof ConsumeSharedFallbackDependency ||\n dependencies[0] instanceof ProvideForSharedDependency\n ) {\n return;\n }\n const match = unresolvedConsumes.get(request);\n if (match !== undefined) {\n return createConsumeSharedModule(context, request, match);\n }\n for (const [prefix, options] of prefixedConsumes) {\n if (request.startsWith(prefix)) {\n const remainder = request.slice(prefix.length);\n return createConsumeSharedModule(context, request, {\n ...options,\n import: options.import\n ? options.import + remainder\n : undefined,\n shareKey: options.shareKey + remainder,\n });\n }\n }\n }),\n );\n normalModuleFactory.hooks.createModule.tapPromise(\n PLUGIN_NAME,\n ({ resource }, { context, dependencies }) => {\n if (\n dependencies[0] instanceof ConsumeSharedFallbackDependency ||\n dependencies[0] instanceof ProvideForSharedDependency\n ) {\n return Promise.resolve();\n }\n if (resource) {\n const options = resolvedConsumes.get(resource);\n if (options !== undefined) {\n return createConsumeSharedModule(context, resource, options);\n }\n }\n return Promise.resolve();\n },\n );\n compilation.hooks.additionalTreeRuntimeRequirements.tap(\n PLUGIN_NAME,\n (chunk, set) => {\n set.add(RuntimeGlobals.module);\n set.add(RuntimeGlobals.moduleCache);\n set.add(RuntimeGlobals.moduleFactoriesAddOnly);\n set.add(RuntimeGlobals.shareScopeMap);\n set.add(RuntimeGlobals.initializeSharing);\n set.add(RuntimeGlobals.hasOwnProperty);\n compilation.addRuntimeModule(\n chunk,\n new ConsumeSharedRuntimeModule(set),\n );\n // FIXME: need to remove webpack internal inject ShareRuntimeModule, otherwise there will be two ShareRuntimeModule\n compilation.addRuntimeModule(chunk, new ShareRuntimeModule());\n },\n );\n },\n );\n }\n}\n\nexport default ConsumeSharedPlugin;\n"],"names":["validate","createSchemaValidation","require","name","baseDataPath","RESOLVE_OPTIONS","dependencyType","PLUGIN_NAME","ConsumeSharedPlugin","apply","compiler","FederationRuntimePlugin","hooks","thisCompilation","tap","compilation","normalModuleFactory","dependencyFactories","set","ConsumeSharedFallbackDependency","unresolvedConsumes","resolvedConsumes","prefixedConsumes","promise","resolveMatchedConfigs","_consumes","then","resolved","unresolved","prefixed","resolver","resolverFactory","get","createConsumeSharedModule","context","request","config","requiredVersionWarning","details","error","WebpackError","file","warnings","push","directFallback","import","test","Promise","all","resolve","undefined","resolveContext","fileDependencies","LazySet","contextDependencies","missingDependencies","err","result","addAll","errors","ModuleNotFoundError","requiredVersion","packageName","match","exec","getDescriptionFile","inputFileSystem","data","path","descriptionPath","getRequiredVersionFromDescriptionFile","importResolved","ConsumeSharedModule","factorize","tapPromise","dependencies","ProvideForSharedDependency","prefix","options","startsWith","remainder","slice","length","shareKey","createModule","resource","additionalTreeRuntimeRequirements","chunk","add","RuntimeGlobals","module","moduleCache","moduleFactoriesAddOnly","shareScopeMap","initializeSharing","hasOwnProperty","addRuntimeModule","ConsumeSharedRuntimeModule","ShareRuntimeModule","constructor","parseOptions","consumes","item","key","Array","isArray","Error","isRequiredVersion","shareScope","strictVersion","singleton","eager"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ module.exports = ConsumeSharedRuntimeModule;
3
+
4
+ //# sourceMappingURL=ConsumeSharedRuntimeModule.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.d.ts"],"sourcesContent":["export = ConsumeSharedRuntimeModule;\n/** @typedef {import(\"webpack-sources\").Source} Source */\n/** @typedef {import(\"webpack/lib/Chunk\")} Chunk */\n/** @typedef {import(\"webpack/lib/ChunkGraph\")} ChunkGraph */\n/** @typedef {import(\"webpack/lib/Compilation\")} Compilation */\n/** @typedef {import(\"webpack/lib/Module\")} Module */\n/** @typedef {import(\"./ConsumeSharedModule\")} ConsumeSharedModule */\ndeclare class ConsumeSharedRuntimeModule extends RuntimeModule {\n /**\n * @param {ReadonlySet<string>} runtimeRequirements runtime requirements\n */\n constructor(runtimeRequirements: ReadonlySet<string>);\n _runtimeRequirements: ReadonlySet<string>;\n}\ndeclare namespace ConsumeSharedRuntimeModule {\n export {\n Source,\n Chunk,\n ChunkGraph,\n Compilation,\n Module,\n ConsumeSharedModule,\n };\n}\nimport RuntimeModule = require('webpack/lib/RuntimeModule');\ntype Source = import('webpack-sources').Source;\ntype Chunk = import('webpack/lib/Chunk');\ntype ChunkGraph = import('webpack/lib/ChunkGraph');\ntype Compilation = import('webpack/lib/Compilation');\ntype Module = import('webpack/lib/Module');\ntype ConsumeSharedModule = import('./ConsumeSharedModule');\n"],"names":["ConsumeSharedRuntimeModule"],"mappings":";iBAASA"}
@@ -0,0 +1,13 @@
1
+ import RuntimeModule from 'webpack/lib/RuntimeModule';
2
+ declare class ConsumeSharedRuntimeModule extends RuntimeModule {
3
+ private _runtimeRequirements;
4
+ /**
5
+ * @param {ReadonlySet<string>} runtimeRequirements runtime requirements
6
+ */
7
+ constructor(runtimeRequirements: ReadonlySet<string>);
8
+ /**
9
+ * @returns {string | null} runtime code
10
+ */
11
+ generate(): string | null;
12
+ }
13
+ export default ConsumeSharedRuntimeModule;
@@ -0,0 +1,310 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy
4
+ */ "use strict";
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function() {
11
+ return _default;
12
+ }
13
+ });
14
+ const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
15
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
16
+ const _RuntimeGlobals = /*#__PURE__*/ _interop_require_wildcard._(require("webpack/lib/RuntimeGlobals"));
17
+ const _Template = /*#__PURE__*/ _interop_require_default._(require("webpack/lib/Template"));
18
+ const _RuntimeModule = /*#__PURE__*/ _interop_require_default._(require("webpack/lib/RuntimeModule"));
19
+ const _utils = require("../container/runtime/utils");
20
+ let ConsumeSharedRuntimeModule = class ConsumeSharedRuntimeModule extends _RuntimeModule.default {
21
+ /**
22
+ * @returns {string | null} runtime code
23
+ */ generate() {
24
+ var _this_chunk, _this_chunk1;
25
+ const compilation = this.compilation;
26
+ const chunkGraph = this.chunkGraph;
27
+ const { runtimeTemplate, codeGenerationResults } = compilation;
28
+ const chunkToModuleMapping = {};
29
+ const moduleIdToSourceMapping = new Map();
30
+ const initialConsumes = [];
31
+ /**
32
+ *
33
+ * @param {Iterable<Module>} modules modules
34
+ * @param {Chunk} chunk the chunk
35
+ * @param {(string | number)[]} list list of ids
36
+ */ const addModules = (modules, chunk, list)=>{
37
+ for (const m of modules){
38
+ const module = m;
39
+ const id = chunkGraph.getModuleId(module);
40
+ list.push(id);
41
+ const moduleGetter = codeGenerationResults.getSource(module, chunk.runtime, 'consume-shared');
42
+ const shareOption = codeGenerationResults.getData(module, chunk.runtime, 'consume-shared');
43
+ const sharedInfoAndHandlerStr = _Template.default.asString([
44
+ '{',
45
+ _Template.default.indent([
46
+ `getter: ${moduleGetter.source().toString()},`,
47
+ `shareInfo: {`,
48
+ _Template.default.indent([
49
+ `shareConfig: ${JSON.stringify(shareOption.shareConfig, null, 2)},`,
50
+ `scope: [${JSON.stringify(shareOption.shareScope || 'default')}],`
51
+ ]),
52
+ '},',
53
+ `shareKey: "${shareOption.shareKey}",`
54
+ ]),
55
+ '}'
56
+ ]);
57
+ moduleIdToSourceMapping.set(id, sharedInfoAndHandlerStr);
58
+ }
59
+ };
60
+ const allChunks = [
61
+ ...((_this_chunk = this.chunk) == null ? void 0 : _this_chunk.getAllReferencedChunks()) || []
62
+ ];
63
+ for (const chunk of allChunks){
64
+ const modules = chunkGraph.getChunkModulesIterableBySourceType(chunk, 'consume-shared');
65
+ if (!modules) continue;
66
+ if (!chunk.id) continue;
67
+ addModules(modules, chunk, chunkToModuleMapping[chunk.id.toString()] = []);
68
+ }
69
+ for (const chunk of [
70
+ ...((_this_chunk1 = this.chunk) == null ? void 0 : _this_chunk1.getAllInitialChunks()) || []
71
+ ]){
72
+ const modules = chunkGraph.getChunkModulesIterableBySourceType(chunk, 'consume-shared');
73
+ if (!modules) continue;
74
+ addModules(modules, chunk, initialConsumes);
75
+ }
76
+ if (moduleIdToSourceMapping.size === 0) return null;
77
+ const federationGlobal = (0, _utils.getFederationGlobalScope)(_RuntimeGlobals);
78
+ return _Template.default.asString([
79
+ // parseVersionRuntimeCode(runtimeTemplate),
80
+ // versionLtRuntimeCode(runtimeTemplate),
81
+ // rangeToStringRuntimeCode(runtimeTemplate),
82
+ // satisfyRuntimeCode(runtimeTemplate),
83
+ // `var ensureExistence = ${runtimeTemplate.basicFunction('scopeName, key', [
84
+ // `var scope = ${RuntimeGlobals.shareScopeMap}[scopeName];`,
85
+ // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) throw new Error("Shared module " + key + " doesn't exist in shared scope " + scopeName);`,
86
+ // 'return scope;',
87
+ // ])};`,
88
+ // `var findVersion = ${runtimeTemplate.basicFunction('scope, key', [
89
+ // 'var versions = scope[key];',
90
+ // `var key = Object.keys(versions).reduce(${runtimeTemplate.basicFunction(
91
+ // 'a, b',
92
+ // ['return !a || versionLt(a, b) ? b : a;'],
93
+ // )}, 0);`,
94
+ // 'return key && versions[key]',
95
+ // ])};`,
96
+ // `var findSingletonVersionKey = ${runtimeTemplate.basicFunction(
97
+ // 'scope, key',
98
+ // [
99
+ // 'var versions = scope[key];',
100
+ // `return Object.keys(versions).reduce(${runtimeTemplate.basicFunction(
101
+ // 'a, b',
102
+ // ['return !a || (!versions[a].loaded && versionLt(a, b)) ? b : a;'],
103
+ // )}, 0);`,
104
+ // ],
105
+ // )};`,
106
+ // `var getInvalidSingletonVersionMessage = ${runtimeTemplate.basicFunction(
107
+ // 'scope, key, version, requiredVersion',
108
+ // [
109
+ // `return "Unsatisfied version " + version + " from " + (version && scope[key][version].from) + " of shared singleton module " + key + " (required " + rangeToString(requiredVersion) + ")"`,
110
+ // ],
111
+ // )};`,
112
+ // `var getSingleton = ${runtimeTemplate.basicFunction(
113
+ // 'scope, scopeName, key, requiredVersion',
114
+ // [
115
+ // 'var version = findSingletonVersionKey(scope, key);',
116
+ // 'return get(scope[key][version]);',
117
+ // ],
118
+ // )};`,
119
+ // `var getSingletonVersion = ${runtimeTemplate.basicFunction(
120
+ // 'scope, scopeName, key, requiredVersion',
121
+ // [
122
+ // 'var version = findSingletonVersionKey(scope, key);',
123
+ // 'if (!satisfy(requiredVersion, version)) warn(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));',
124
+ // 'return get(scope[key][version]);',
125
+ // ],
126
+ // )};`,
127
+ // `var getStrictSingletonVersion = ${runtimeTemplate.basicFunction(
128
+ // 'scope, scopeName, key, requiredVersion',
129
+ // [
130
+ // 'var version = findSingletonVersionKey(scope, key);',
131
+ // 'if (!satisfy(requiredVersion, version)) ' +
132
+ // 'throw new Error(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));',
133
+ // 'return get(scope[key][version]);',
134
+ // ],
135
+ // )};`,
136
+ // `var findValidVersion = ${runtimeTemplate.basicFunction(
137
+ // 'scope, key, requiredVersion',
138
+ // [
139
+ // 'var versions = scope[key];',
140
+ // `var key = Object.keys(versions).reduce(${runtimeTemplate.basicFunction(
141
+ // 'a, b',
142
+ // [
143
+ // 'if (!satisfy(requiredVersion, b)) return a;',
144
+ // 'return !a || versionLt(a, b) ? b : a;',
145
+ // ],
146
+ // )}, 0);`,
147
+ // 'return key && versions[key]',
148
+ // ],
149
+ // )};`,
150
+ // `var getInvalidVersionMessage = ${runtimeTemplate.basicFunction(
151
+ // 'scope, scopeName, key, requiredVersion',
152
+ // [
153
+ // 'var versions = scope[key];',
154
+ // 'return "No satisfying version (" + rangeToString(requiredVersion) + ") of shared module " + key + " found in shared scope " + scopeName + ".\\n" +',
155
+ // `\t"Available versions: " + Object.keys(versions).map(${runtimeTemplate.basicFunction(
156
+ // 'key',
157
+ // ['return key + " from " + versions[key].from;'],
158
+ // )}).join(", ");`,
159
+ // ],
160
+ // )};`,
161
+ // `var getValidVersion = ${runtimeTemplate.basicFunction(
162
+ // 'scope, scopeName, key, requiredVersion',
163
+ // [
164
+ // 'var entry = findValidVersion(scope, key, requiredVersion);',
165
+ // 'if(entry) return get(entry);',
166
+ // 'throw new Error(getInvalidVersionMessage(scope, scopeName, key, requiredVersion));',
167
+ // ],
168
+ // )};`,
169
+ // `var warn = ${
170
+ // compilation.outputOptions.ignoreBrowserWarnings
171
+ // ? runtimeTemplate.basicFunction('', '')
172
+ // : runtimeTemplate.basicFunction('msg', [
173
+ // 'if (typeof console !== "undefined" && console.warn) console.warn(msg);',
174
+ // ])
175
+ // };`,
176
+ // `var warnInvalidVersion = ${runtimeTemplate.basicFunction(
177
+ // 'scope, scopeName, key, requiredVersion',
178
+ // [
179
+ // 'warn(getInvalidVersionMessage(scope, scopeName, key, requiredVersion));',
180
+ // ],
181
+ // )};`,
182
+ // `var get = ${runtimeTemplate.basicFunction('entry', [
183
+ // 'entry.loaded = 1;',
184
+ // 'return entry.get()',
185
+ // ])};`,
186
+ // `var init = ${runtimeTemplate.returningFunction(
187
+ // Template.asString([
188
+ // 'function(scopeName, a, b, c) {',
189
+ // Template.indent([
190
+ // `var promise = ${RuntimeGlobals.initializeSharing}(scopeName);`,
191
+ // `if (promise && promise.then) return promise.then(fn.bind(fn, scopeName, ${RuntimeGlobals.shareScopeMap}[scopeName], a, b, c));`,
192
+ // `return fn(scopeName, ${RuntimeGlobals.shareScopeMap}[scopeName], a, b, c);`,
193
+ // ]),
194
+ // '}',
195
+ // ]),
196
+ // 'fn',
197
+ // )};`,
198
+ // '',
199
+ // `var load = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
200
+ // 'scopeName, scope, key',
201
+ // [
202
+ // 'ensureExistence(scopeName, key);',
203
+ // 'return get(findVersion(scope, key));',
204
+ // ],
205
+ // )});`,
206
+ // `var loadFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
207
+ // 'scopeName, scope, key, fallback',
208
+ // [
209
+ // `return scope && ${RuntimeGlobals.hasOwnProperty}(scope, key) ? get(findVersion(scope, key)) : fallback();`,
210
+ // ],
211
+ // )});`,
212
+ // `var loadVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
213
+ // 'scopeName, scope, key, version',
214
+ // [
215
+ // 'ensureExistence(scopeName, key);',
216
+ // 'return get(findValidVersion(scope, key, version) || warnInvalidVersion(scope, scopeName, key, version) || findVersion(scope, key));',
217
+ // ],
218
+ // )});`,
219
+ // `var loadSingleton = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
220
+ // 'scopeName, scope, key',
221
+ // [
222
+ // 'ensureExistence(scopeName, key);',
223
+ // 'return getSingleton(scope, scopeName, key);',
224
+ // ],
225
+ // )});`,
226
+ // `var loadSingletonVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
227
+ // 'scopeName, scope, key, version',
228
+ // [
229
+ // 'ensureExistence(scopeName, key);',
230
+ // 'return getSingletonVersion(scope, scopeName, key, version);',
231
+ // ],
232
+ // )});`,
233
+ // `var loadStrictVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
234
+ // 'scopeName, scope, key, version',
235
+ // [
236
+ // 'ensureExistence(scopeName, key);',
237
+ // 'return getValidVersion(scope, scopeName, key, version);',
238
+ // ],
239
+ // )});`,
240
+ // `var loadStrictSingletonVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
241
+ // 'scopeName, scope, key, version',
242
+ // [
243
+ // 'ensureExistence(scopeName, key);',
244
+ // 'return getStrictSingletonVersion(scope, scopeName, key, version);',
245
+ // ],
246
+ // )});`,
247
+ // `var loadVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
248
+ // 'scopeName, scope, key, version, fallback',
249
+ // [
250
+ // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,
251
+ // 'return get(findValidVersion(scope, key, version) || warnInvalidVersion(scope, scopeName, key, version) || findVersion(scope, key));',
252
+ // ],
253
+ // )});`,
254
+ // `var loadSingletonFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
255
+ // 'scopeName, scope, key, fallback',
256
+ // [
257
+ // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,
258
+ // 'return getSingleton(scope, scopeName, key);',
259
+ // ],
260
+ // )});`,
261
+ // `var loadSingletonVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
262
+ // 'scopeName, scope, key, version, fallback',
263
+ // [
264
+ // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,
265
+ // 'return getSingletonVersion(scope, scopeName, key, version);',
266
+ // ],
267
+ // )});`,
268
+ // `var loadStrictVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
269
+ // 'scopeName, scope, key, version, fallback',
270
+ // [
271
+ // `var entry = scope && ${RuntimeGlobals.hasOwnProperty}(scope, key) && findValidVersion(scope, key, version);`,
272
+ // `return entry ? get(entry) : fallback();`,
273
+ // ],
274
+ // )});`,
275
+ // `var loadStrictSingletonVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(
276
+ // 'scopeName, scope, key, version, fallback',
277
+ // [
278
+ // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,
279
+ // 'return getStrictSingletonVersion(scope, scopeName, key, version);',
280
+ // ],
281
+ // )});`,
282
+ 'var installedModules = {};',
283
+ 'var moduleToHandlerMapping = {',
284
+ _Template.default.indent(Array.from(moduleIdToSourceMapping, ([key, value])=>{
285
+ return `${JSON.stringify(key)}: ${value}`;
286
+ }).join(',\n')),
287
+ '};',
288
+ initialConsumes.length > 0 ? _Template.default.asString([
289
+ `var initialConsumes = ${JSON.stringify(initialConsumes)};`,
290
+ // FIXME: or set installInitialConsumesOptions into federationGlobal.xxOptions?
291
+ `${federationGlobal}.installInitialConsumes= ()=>${federationGlobal}.bundlerRuntime.installInitialConsumes({initialConsumes, installedModules, moduleToHandlerMapping, webpackRequire:${_RuntimeGlobals.require}});`
292
+ ]) : '// no consumes in initial chunks',
293
+ this._runtimeRequirements.has(_RuntimeGlobals.ensureChunkHandlers) ? _Template.default.asString([
294
+ `var chunkMapping = ${JSON.stringify(chunkToModuleMapping, null, '\t')};`,
295
+ `${_RuntimeGlobals.ensureChunkHandlers}.consumes = ${runtimeTemplate.basicFunction('chunkId, promises', [
296
+ `${federationGlobal}.bundlerRuntime.consumes({chunkMapping, installedModules, chunkId, moduleToHandlerMapping, promises, webpackRequire:${_RuntimeGlobals.require}});`
297
+ ])}`
298
+ ]) : '// no chunk loading of consumes'
299
+ ]);
300
+ }
301
+ /**
302
+ * @param {ReadonlySet<string>} runtimeRequirements runtime requirements
303
+ */ constructor(runtimeRequirements){
304
+ super('consumes', _RuntimeModule.default.STAGE_ATTACH);
305
+ this._runtimeRequirements = runtimeRequirements;
306
+ }
307
+ };
308
+ const _default = ConsumeSharedRuntimeModule;
309
+
310
+ //# sourceMappingURL=ConsumeSharedRuntimeModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts"],"sourcesContent":["/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\n\nimport * as RuntimeGlobals from 'webpack/lib/RuntimeGlobals';\nimport Template from 'webpack/lib/Template';\nimport {\n parseVersionRuntimeCode,\n versionLtRuntimeCode,\n rangeToStringRuntimeCode,\n satisfyRuntimeCode,\n} from 'webpack/lib/util/semver';\nimport RuntimeModule from 'webpack/lib/RuntimeModule';\nimport Module from 'webpack/lib/Module';\nimport ConsumeSharedModule from './ConsumeSharedModule';\nimport type ChunkGraph from 'webpack/lib/ChunkGraph';\nimport type Compilation from 'webpack/lib/Compilation';\nimport type Chunk from 'webpack/lib/Chunk';\nimport { Source } from 'webpack-sources';\nimport { getFederationGlobalScope } from '../container/runtime/utils';\n\nclass ConsumeSharedRuntimeModule extends RuntimeModule {\n private _runtimeRequirements: ReadonlySet<string>;\n\n /**\n * @param {ReadonlySet<string>} runtimeRequirements runtime requirements\n */\n constructor(runtimeRequirements: ReadonlySet<string>) {\n super('consumes', RuntimeModule.STAGE_ATTACH);\n this._runtimeRequirements = runtimeRequirements;\n }\n\n /**\n * @returns {string | null} runtime code\n */\n override generate(): string | null {\n const compilation: Compilation = this.compilation!;\n const chunkGraph: ChunkGraph = this.chunkGraph!;\n const { runtimeTemplate, codeGenerationResults } = compilation;\n const chunkToModuleMapping: Record<string, any> = {};\n const moduleIdToSourceMapping: Map<string | number, string> = new Map();\n const initialConsumes: (string | number)[] = [];\n /**\n *\n * @param {Iterable<Module>} modules modules\n * @param {Chunk} chunk the chunk\n * @param {(string | number)[]} list list of ids\n */\n const addModules = (\n modules: Iterable<Module>,\n chunk: Chunk,\n list: (string | number)[],\n ) => {\n for (const m of modules) {\n const module: ConsumeSharedModule = m as ConsumeSharedModule;\n const id = chunkGraph.getModuleId(module);\n list.push(id);\n const moduleGetter = codeGenerationResults.getSource(\n module,\n chunk.runtime,\n 'consume-shared',\n );\n const shareOption = codeGenerationResults.getData(\n module,\n chunk.runtime,\n 'consume-shared',\n );\n const sharedInfoAndHandlerStr = Template.asString([\n '{',\n Template.indent([\n `getter: ${moduleGetter.source().toString()},`,\n `shareInfo: {`,\n Template.indent([\n `shareConfig: ${JSON.stringify(\n shareOption.shareConfig,\n null,\n 2,\n )},`,\n `scope: [${JSON.stringify(\n shareOption.shareScope || 'default',\n )}],`,\n ]),\n '},',\n `shareKey: \"${shareOption.shareKey}\",`,\n ]),\n '}',\n ]);\n moduleIdToSourceMapping.set(id, sharedInfoAndHandlerStr);\n }\n };\n const allChunks = [...(this.chunk?.getAllReferencedChunks() || [])];\n for (const chunk of allChunks) {\n const modules = chunkGraph.getChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n );\n if (!modules) continue;\n if (!chunk.id) continue;\n\n addModules(\n modules,\n chunk,\n (chunkToModuleMapping[chunk.id.toString()] = []),\n );\n }\n for (const chunk of [...(this.chunk?.getAllInitialChunks() || [])]) {\n const modules = chunkGraph.getChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n );\n if (!modules) continue;\n addModules(modules, chunk, initialConsumes);\n }\n\n if (moduleIdToSourceMapping.size === 0) return null;\n\n const federationGlobal = getFederationGlobalScope(RuntimeGlobals);\n\n return Template.asString([\n // parseVersionRuntimeCode(runtimeTemplate),\n // versionLtRuntimeCode(runtimeTemplate),\n // rangeToStringRuntimeCode(runtimeTemplate),\n // satisfyRuntimeCode(runtimeTemplate),\n // `var ensureExistence = ${runtimeTemplate.basicFunction('scopeName, key', [\n // `var scope = ${RuntimeGlobals.shareScopeMap}[scopeName];`,\n // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) throw new Error(\"Shared module \" + key + \" doesn't exist in shared scope \" + scopeName);`,\n // 'return scope;',\n // ])};`,\n // `var findVersion = ${runtimeTemplate.basicFunction('scope, key', [\n // 'var versions = scope[key];',\n // `var key = Object.keys(versions).reduce(${runtimeTemplate.basicFunction(\n // 'a, b',\n // ['return !a || versionLt(a, b) ? b : a;'],\n // )}, 0);`,\n // 'return key && versions[key]',\n // ])};`,\n // `var findSingletonVersionKey = ${runtimeTemplate.basicFunction(\n // 'scope, key',\n // [\n // 'var versions = scope[key];',\n // `return Object.keys(versions).reduce(${runtimeTemplate.basicFunction(\n // 'a, b',\n // ['return !a || (!versions[a].loaded && versionLt(a, b)) ? b : a;'],\n // )}, 0);`,\n // ],\n // )};`,\n // `var getInvalidSingletonVersionMessage = ${runtimeTemplate.basicFunction(\n // 'scope, key, version, requiredVersion',\n // [\n // `return \"Unsatisfied version \" + version + \" from \" + (version && scope[key][version].from) + \" of shared singleton module \" + key + \" (required \" + rangeToString(requiredVersion) + \")\"`,\n // ],\n // )};`,\n // `var getSingleton = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'var version = findSingletonVersionKey(scope, key);',\n // 'return get(scope[key][version]);',\n // ],\n // )};`,\n // `var getSingletonVersion = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'var version = findSingletonVersionKey(scope, key);',\n // 'if (!satisfy(requiredVersion, version)) warn(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));',\n // 'return get(scope[key][version]);',\n // ],\n // )};`,\n // `var getStrictSingletonVersion = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'var version = findSingletonVersionKey(scope, key);',\n // 'if (!satisfy(requiredVersion, version)) ' +\n // 'throw new Error(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));',\n // 'return get(scope[key][version]);',\n // ],\n // )};`,\n // `var findValidVersion = ${runtimeTemplate.basicFunction(\n // 'scope, key, requiredVersion',\n // [\n // 'var versions = scope[key];',\n // `var key = Object.keys(versions).reduce(${runtimeTemplate.basicFunction(\n // 'a, b',\n // [\n // 'if (!satisfy(requiredVersion, b)) return a;',\n // 'return !a || versionLt(a, b) ? b : a;',\n // ],\n // )}, 0);`,\n // 'return key && versions[key]',\n // ],\n // )};`,\n // `var getInvalidVersionMessage = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'var versions = scope[key];',\n // 'return \"No satisfying version (\" + rangeToString(requiredVersion) + \") of shared module \" + key + \" found in shared scope \" + scopeName + \".\\\\n\" +',\n // `\\t\"Available versions: \" + Object.keys(versions).map(${runtimeTemplate.basicFunction(\n // 'key',\n // ['return key + \" from \" + versions[key].from;'],\n // )}).join(\", \");`,\n // ],\n // )};`,\n // `var getValidVersion = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'var entry = findValidVersion(scope, key, requiredVersion);',\n // 'if(entry) return get(entry);',\n // 'throw new Error(getInvalidVersionMessage(scope, scopeName, key, requiredVersion));',\n // ],\n // )};`,\n // `var warn = ${\n // compilation.outputOptions.ignoreBrowserWarnings\n // ? runtimeTemplate.basicFunction('', '')\n // : runtimeTemplate.basicFunction('msg', [\n // 'if (typeof console !== \"undefined\" && console.warn) console.warn(msg);',\n // ])\n // };`,\n // `var warnInvalidVersion = ${runtimeTemplate.basicFunction(\n // 'scope, scopeName, key, requiredVersion',\n // [\n // 'warn(getInvalidVersionMessage(scope, scopeName, key, requiredVersion));',\n // ],\n // )};`,\n // `var get = ${runtimeTemplate.basicFunction('entry', [\n // 'entry.loaded = 1;',\n // 'return entry.get()',\n // ])};`,\n // `var init = ${runtimeTemplate.returningFunction(\n // Template.asString([\n // 'function(scopeName, a, b, c) {',\n // Template.indent([\n // `var promise = ${RuntimeGlobals.initializeSharing}(scopeName);`,\n // `if (promise && promise.then) return promise.then(fn.bind(fn, scopeName, ${RuntimeGlobals.shareScopeMap}[scopeName], a, b, c));`,\n // `return fn(scopeName, ${RuntimeGlobals.shareScopeMap}[scopeName], a, b, c);`,\n // ]),\n // '}',\n // ]),\n // 'fn',\n // )};`,\n // '',\n // `var load = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return get(findVersion(scope, key));',\n // ],\n // )});`,\n // `var loadFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, fallback',\n // [\n // `return scope && ${RuntimeGlobals.hasOwnProperty}(scope, key) ? get(findVersion(scope, key)) : fallback();`,\n // ],\n // )});`,\n // `var loadVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return get(findValidVersion(scope, key, version) || warnInvalidVersion(scope, scopeName, key, version) || findVersion(scope, key));',\n // ],\n // )});`,\n // `var loadSingleton = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return getSingleton(scope, scopeName, key);',\n // ],\n // )});`,\n // `var loadSingletonVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return getSingletonVersion(scope, scopeName, key, version);',\n // ],\n // )});`,\n // `var loadStrictVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return getValidVersion(scope, scopeName, key, version);',\n // ],\n // )});`,\n // `var loadStrictSingletonVersionCheck = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version',\n // [\n // 'ensureExistence(scopeName, key);',\n // 'return getStrictSingletonVersion(scope, scopeName, key, version);',\n // ],\n // )});`,\n // `var loadVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version, fallback',\n // [\n // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,\n // 'return get(findValidVersion(scope, key, version) || warnInvalidVersion(scope, scopeName, key, version) || findVersion(scope, key));',\n // ],\n // )});`,\n // `var loadSingletonFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, fallback',\n // [\n // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,\n // 'return getSingleton(scope, scopeName, key);',\n // ],\n // )});`,\n // `var loadSingletonVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version, fallback',\n // [\n // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,\n // 'return getSingletonVersion(scope, scopeName, key, version);',\n // ],\n // )});`,\n // `var loadStrictVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version, fallback',\n // [\n // `var entry = scope && ${RuntimeGlobals.hasOwnProperty}(scope, key) && findValidVersion(scope, key, version);`,\n // `return entry ? get(entry) : fallback();`,\n // ],\n // )});`,\n // `var loadStrictSingletonVersionCheckFallback = /*#__PURE__*/ init(${runtimeTemplate.basicFunction(\n // 'scopeName, scope, key, version, fallback',\n // [\n // `if(!scope || !${RuntimeGlobals.hasOwnProperty}(scope, key)) return fallback();`,\n // 'return getStrictSingletonVersion(scope, scopeName, key, version);',\n // ],\n // )});`,\n\n 'var installedModules = {};',\n 'var moduleToHandlerMapping = {',\n Template.indent(\n Array.from(moduleIdToSourceMapping, ([key, value]) => {\n return `${JSON.stringify(key)}: ${value}`;\n }).join(',\\n'),\n ),\n '};',\n\n initialConsumes.length > 0\n ? Template.asString([\n `var initialConsumes = ${JSON.stringify(initialConsumes)};`,\n // FIXME: or set installInitialConsumesOptions into federationGlobal.xxOptions?\n `${federationGlobal}.installInitialConsumes= ()=>${federationGlobal}.bundlerRuntime.installInitialConsumes({initialConsumes, installedModules, moduleToHandlerMapping, webpackRequire:${RuntimeGlobals.require}});`,\n // `initialConsumes.forEach(${runtimeTemplate.basicFunction('id', [\n // `${\n // RuntimeGlobals.moduleFactories\n // }[id] = ${runtimeTemplate.basicFunction('module', [\n // '// Handle case when module is used sync',\n // 'installedModules[id] = 0;',\n // `delete ${RuntimeGlobals.moduleCache}[id];`,\n // 'var factory = moduleToHandlerMapping[id]();',\n // 'if(typeof factory !== \"function\") throw new Error(\"Shared module is not available for eager consumption: \" + id);',\n // `module.exports = factory();`,\n // ])}`,\n // ])});`,\n ])\n : '// no consumes in initial chunks',\n this._runtimeRequirements.has(RuntimeGlobals.ensureChunkHandlers)\n ? Template.asString([\n `var chunkMapping = ${JSON.stringify(\n chunkToModuleMapping,\n null,\n '\\t',\n )};`,\n `${\n RuntimeGlobals.ensureChunkHandlers\n }.consumes = ${runtimeTemplate.basicFunction('chunkId, promises', [\n `${federationGlobal}.bundlerRuntime.consumes({chunkMapping, installedModules, chunkId, moduleToHandlerMapping, promises, webpackRequire:${RuntimeGlobals.require}});`,\n // `if(${RuntimeGlobals.hasOwnProperty}(chunkMapping, chunkId)) {`,\n // Template.indent([\n // `chunkMapping[chunkId].forEach(${runtimeTemplate.basicFunction(\n // 'id',\n // [\n // `if(${RuntimeGlobals.hasOwnProperty}(installedModules, id)) return promises.push(installedModules[id]);`,\n // `var onFactory = ${runtimeTemplate.basicFunction(\n // 'factory',\n // [\n // 'installedModules[id] = 0;',\n // `${\n // RuntimeGlobals.moduleFactories\n // }[id] = ${runtimeTemplate.basicFunction('module', [\n // `delete ${RuntimeGlobals.moduleCache}[id];`,\n // 'module.exports = factory();',\n // ])}`,\n // ],\n // )};`,\n // `var onError = ${runtimeTemplate.basicFunction('error', [\n // 'delete installedModules[id];',\n // `${\n // RuntimeGlobals.moduleFactories\n // }[id] = ${runtimeTemplate.basicFunction('module', [\n // `delete ${RuntimeGlobals.moduleCache}[id];`,\n // 'throw error;',\n // ])}`,\n // ])};`,\n // 'try {',\n // Template.indent([\n // 'var promise = moduleToHandlerMapping[id]();',\n // 'if(promise.then) {',\n // Template.indent(\n // \"promises.push(installedModules[id] = promise.then(onFactory)['catch'](onError));\",\n // ),\n // '} else onFactory(promise);',\n // ]),\n // '} catch(e) { onError(e); }',\n // ],\n // )});`,\n // ]),\n // '}',\n ])}`,\n ])\n : '// no chunk loading of consumes',\n ]);\n }\n}\n\nexport default ConsumeSharedRuntimeModule;\n"],"names":["ConsumeSharedRuntimeModule","RuntimeModule","generate","compilation","chunkGraph","runtimeTemplate","codeGenerationResults","chunkToModuleMapping","moduleIdToSourceMapping","Map","initialConsumes","addModules","modules","chunk","list","m","module","id","getModuleId","push","moduleGetter","getSource","runtime","shareOption","getData","sharedInfoAndHandlerStr","Template","asString","indent","source","toString","JSON","stringify","shareConfig","shareScope","shareKey","set","allChunks","getAllReferencedChunks","getChunkModulesIterableBySourceType","getAllInitialChunks","size","federationGlobal","getFederationGlobalScope","RuntimeGlobals","Array","from","key","value","join","length","require","_runtimeRequirements","has","ensureChunkHandlers","basicFunction","constructor","runtimeRequirements","STAGE_ATTACH"],"mappings":"AAAA;;;AAGA;;;;+BAwZA;;;eAAA;;;;;0EAtZgC;mEACX;wEAOK;uBAOe;AAEzC,IAAA,AAAMA,6BAAN,MAAMA,mCAAmCC,sBAAa;IAWpD;;GAEC,GACD,AAASC,WAA0B;YAuDV,aAeE;QArEzB,MAAMC,cAA2B,IAAI,CAACA,WAAW;QACjD,MAAMC,aAAyB,IAAI,CAACA,UAAU;QAC9C,MAAM,EAAEC,eAAe,EAAEC,qBAAqB,EAAE,GAAGH;QACnD,MAAMI,uBAA4C,CAAC;QACnD,MAAMC,0BAAwD,IAAIC;QAClE,MAAMC,kBAAuC,EAAE;QAC/C;;;;;KAKC,GACD,MAAMC,aAAa,CACjBC,SACAC,OACAC;YAEA,KAAK,MAAMC,KAAKH,QAAS;gBACvB,MAAMI,SAA8BD;gBACpC,MAAME,KAAKb,WAAWc,WAAW,CAACF;gBAClCF,KAAKK,IAAI,CAACF;gBACV,MAAMG,eAAed,sBAAsBe,SAAS,CAClDL,QACAH,MAAMS,OAAO,EACb;gBAEF,MAAMC,cAAcjB,sBAAsBkB,OAAO,CAC/CR,QACAH,MAAMS,OAAO,EACb;gBAEF,MAAMG,0BAA0BC,iBAAQ,CAACC,QAAQ,CAAC;oBAChD;oBACAD,iBAAQ,CAACE,MAAM,CAAC;wBACd,CAAC,QAAQ,EAAER,aAAaS,MAAM,GAAGC,QAAQ,GAAG,CAAC,CAAC;wBAC9C,CAAC,YAAY,CAAC;wBACdJ,iBAAQ,CAACE,MAAM,CAAC;4BACd,CAAC,aAAa,EAAEG,KAAKC,SAAS,CAC5BT,YAAYU,WAAW,EACvB,MACA,GACA,CAAC,CAAC;4BACJ,CAAC,QAAQ,EAAEF,KAAKC,SAAS,CACvBT,YAAYW,UAAU,IAAI,WAC1B,EAAE,CAAC;yBACN;wBACD;wBACA,CAAC,WAAW,EAAEX,YAAYY,QAAQ,CAAC,EAAE,CAAC;qBACvC;oBACD;iBACD;gBACD3B,wBAAwB4B,GAAG,CAACnB,IAAIQ;YAClC;QACF;QACA,MAAMY,YAAY;eAAK,EAAA,cAAA,IAAI,CAACxB,KAAK,qBAAV,YAAYyB,sBAAsB,OAAM,EAAE;SAAE;QACnE,KAAK,MAAMzB,SAASwB,UAAW;YAC7B,MAAMzB,UAAUR,WAAWmC,mCAAmC,CAC5D1B,OACA;YAEF,IAAI,CAACD,SAAS;YACd,IAAI,CAACC,MAAMI,EAAE,EAAE;YAEfN,WACEC,SACAC,OACCN,oBAAoB,CAACM,MAAMI,EAAE,CAACa,QAAQ,GAAG,GAAG,EAAE;QAEnD;QACA,KAAK,MAAMjB,SAAS;eAAK,EAAA,eAAA,IAAI,CAACA,KAAK,qBAAV,aAAY2B,mBAAmB,OAAM,EAAE;SAAE,CAAE;YAClE,MAAM5B,UAAUR,WAAWmC,mCAAmC,CAC5D1B,OACA;YAEF,IAAI,CAACD,SAAS;YACdD,WAAWC,SAASC,OAAOH;QAC7B;QAEA,IAAIF,wBAAwBiC,IAAI,KAAK,GAAG,OAAO;QAE/C,MAAMC,mBAAmBC,IAAAA,+BAAwB,EAACC;QAElD,OAAOlB,iBAAQ,CAACC,QAAQ,CAAC;YACvB,4CAA4C;YAC5C,yCAAyC;YACzC,6CAA6C;YAC7C,uCAAuC;YACvC,6EAA6E;YAC7E,+DAA+D;YAC/D,4JAA4J;YAC5J,qBAAqB;YACrB,SAAS;YACT,qEAAqE;YACrE,kCAAkC;YAClC,6EAA6E;YAC7E,cAAc;YACd,iDAAiD;YACjD,cAAc;YACd,mCAAmC;YACnC,SAAS;YACT,kEAAkE;YAClE,kBAAkB;YAClB,MAAM;YACN,oCAAoC;YACpC,4EAA4E;YAC5E,gBAAgB;YAChB,4EAA4E;YAC5E,gBAAgB;YAChB,OAAO;YACP,QAAQ;YACR,4EAA4E;YAC5E,4CAA4C;YAC5C,MAAM;YACN,kMAAkM;YAClM,OAAO;YACP,QAAQ;YACR,uDAAuD;YACvD,8CAA8C;YAC9C,MAAM;YACN,4DAA4D;YAC5D,0CAA0C;YAC1C,OAAO;YACP,QAAQ;YACR,8DAA8D;YAC9D,8CAA8C;YAC9C,MAAM;YACN,4DAA4D;YAC5D,gIAAgI;YAChI,0CAA0C;YAC1C,OAAO;YACP,QAAQ;YACR,oEAAoE;YACpE,8CAA8C;YAC9C,MAAM;YACN,4DAA4D;YAC5D,mDAAmD;YACnD,qGAAqG;YACrG,0CAA0C;YAC1C,OAAO;YACP,QAAQ;YACR,2DAA2D;YAC3D,mCAAmC;YACnC,MAAM;YACN,oCAAoC;YACpC,+EAA+E;YAC/E,gBAAgB;YAChB,UAAU;YACV,yDAAyD;YACzD,mDAAmD;YACnD,WAAW;YACX,gBAAgB;YAChB,qCAAqC;YACrC,OAAO;YACP,QAAQ;YACR,mEAAmE;YACnE,8CAA8C;YAC9C,MAAM;YACN,oCAAoC;YACpC,4JAA4J;YAC5J,6FAA6F;YAC7F,eAAe;YACf,yDAAyD;YACzD,wBAAwB;YACxB,OAAO;YACP,QAAQ;YACR,0DAA0D;YAC1D,8CAA8C;YAC9C,MAAM;YACN,oEAAoE;YACpE,sCAAsC;YACtC,4FAA4F;YAC5F,OAAO;YACP,QAAQ;YACR,iBAAiB;YACjB,oDAAoD;YACpD,8CAA8C;YAC9C,+CAA+C;YAC/C,oFAAoF;YACpF,WAAW;YACX,OAAO;YACP,6DAA6D;YAC7D,8CAA8C;YAC9C,MAAM;YACN,iFAAiF;YACjF,OAAO;YACP,QAAQ;YACR,wDAAwD;YACxD,yBAAyB;YACzB,0BAA0B;YAC1B,SAAS;YACT,mDAAmD;YACnD,wBAAwB;YACxB,wCAAwC;YACxC,wBAAwB;YACxB,yEAAyE;YACzE,0IAA0I;YAC1I,sFAAsF;YACtF,UAAU;YACV,WAAW;YACX,QAAQ;YACR,UAAU;YACV,QAAQ;YACR,MAAM;YACN,kEAAkE;YAClE,6BAA6B;YAC7B,MAAM;YACN,0CAA0C;YAC1C,8CAA8C;YAC9C,OAAO;YACP,SAAS;YACT,0EAA0E;YAC1E,uCAAuC;YACvC,MAAM;YACN,mHAAmH;YACnH,OAAO;YACP,SAAS;YACT,8EAA8E;YAC9E,sCAAsC;YACtC,MAAM;YACN,0CAA0C;YAC1C,6IAA6I;YAC7I,OAAO;YACP,SAAS;YACT,2EAA2E;YAC3E,6BAA6B;YAC7B,MAAM;YACN,0CAA0C;YAC1C,qDAAqD;YACrD,OAAO;YACP,SAAS;YACT,uFAAuF;YACvF,sCAAsC;YACtC,MAAM;YACN,0CAA0C;YAC1C,qEAAqE;YACrE,OAAO;YACP,SAAS;YACT,oFAAoF;YACpF,sCAAsC;YACtC,MAAM;YACN,0CAA0C;YAC1C,iEAAiE;YACjE,OAAO;YACP,SAAS;YACT,6FAA6F;YAC7F,sCAAsC;YACtC,MAAM;YACN,0CAA0C;YAC1C,2EAA2E;YAC3E,OAAO;YACP,SAAS;YACT,sFAAsF;YACtF,gDAAgD;YAChD,MAAM;YACN,wFAAwF;YACxF,6IAA6I;YAC7I,OAAO;YACP,SAAS;YACT,mFAAmF;YACnF,uCAAuC;YACvC,MAAM;YACN,wFAAwF;YACxF,qDAAqD;YACrD,OAAO;YACP,SAAS;YACT,+FAA+F;YAC/F,gDAAgD;YAChD,MAAM;YACN,wFAAwF;YACxF,qEAAqE;YACrE,OAAO;YACP,SAAS;YACT,4FAA4F;YAC5F,gDAAgD;YAChD,MAAM;YACN,qHAAqH;YACrH,iDAAiD;YACjD,OAAO;YACP,SAAS;YACT,qGAAqG;YACrG,gDAAgD;YAChD,MAAM;YACN,wFAAwF;YACxF,2EAA2E;YAC3E,OAAO;YACP,SAAS;YAET;YACA;YACAD,iBAAQ,CAACE,MAAM,CACbiB,MAAMC,IAAI,CAACtC,yBAAyB,CAAC,CAACuC,KAAKC,MAAM;gBAC/C,OAAO,CAAC,EAAEjB,KAAKC,SAAS,CAACe,KAAK,EAAE,EAAEC,MAAM,CAAC;YAC3C,GAAGC,IAAI,CAAC;YAEV;YAEAvC,gBAAgBwC,MAAM,GAAG,IACrBxB,iBAAQ,CAACC,QAAQ,CAAC;gBAChB,CAAC,sBAAsB,EAAEI,KAAKC,SAAS,CAACtB,iBAAiB,CAAC,CAAC;gBAC3D,+EAA+E;gBAC/E,CAAC,EAAEgC,iBAAiB,6BAA6B,EAAEA,iBAAiB,kHAAkH,EAAEE,gBAAeO,OAAO,CAAC,GAAG,CAAC;aAapN,IACD;YACJ,IAAI,CAACC,oBAAoB,CAACC,GAAG,CAACT,gBAAeU,mBAAmB,IAC5D5B,iBAAQ,CAACC,QAAQ,CAAC;gBAChB,CAAC,mBAAmB,EAAEI,KAAKC,SAAS,CAClCzB,sBACA,MACA,MACA,CAAC,CAAC;gBACJ,CAAC,EACCqC,gBAAeU,mBAAmB,CACnC,YAAY,EAAEjD,gBAAgBkD,aAAa,CAAC,qBAAqB;oBAChE,CAAC,EAAEb,iBAAiB,oHAAoH,EAAEE,gBAAeO,OAAO,CAAC,GAAG,CAAC;iBA0CtK,EAAE,CAAC;aACL,IACD;SACL;IACH;IA/XA;;GAEC,GACDK,YAAYC,mBAAwC,CAAE;QACpD,KAAK,CAAC,YAAYxD,sBAAa,CAACyD,YAAY;QAC5C,IAAI,CAACN,oBAAoB,GAAGK;IAC9B;AA0XF;MAEA,WAAezD"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ module.exports = ProvideForSharedDependency;
3
+
4
+ //# sourceMappingURL=ProvideForSharedDependency.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ProvideForSharedDependency.d.ts"],"sourcesContent":["export = ProvideForSharedDependency;\ndeclare class ProvideForSharedDependency extends ModuleDependency {}\nimport ModuleDependency = require('webpack/lib/dependencies/ModuleDependency');\n"],"names":["ProvideForSharedDependency"],"mappings":";iBAASA"}
@@ -0,0 +1,11 @@
1
+ import ModuleDependency from 'webpack/lib/dependencies/ModuleDependency';
2
+ declare class ProvideForSharedDependency extends ModuleDependency {
3
+ /**
4
+ *
5
+ * @param request request string
6
+ */
7
+ constructor(request: string);
8
+ get type(): string;
9
+ get category(): string;
10
+ }
11
+ export default ProvideForSharedDependency;
@@ -0,0 +1,34 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy
4
+ */ "use strict";
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function() {
11
+ return _default;
12
+ }
13
+ });
14
+ const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
15
+ const _ModuleDependency = /*#__PURE__*/ _interop_require_default._(require("webpack/lib/dependencies/ModuleDependency"));
16
+ const _makeSerializable = /*#__PURE__*/ _interop_require_default._(require("webpack/lib/util/makeSerializable"));
17
+ let ProvideForSharedDependency = class ProvideForSharedDependency extends _ModuleDependency.default {
18
+ get type() {
19
+ return 'provide module for shared';
20
+ }
21
+ get category() {
22
+ return 'esm';
23
+ }
24
+ /**
25
+ *
26
+ * @param request request string
27
+ */ constructor(request){
28
+ super(request);
29
+ }
30
+ };
31
+ (0, _makeSerializable.default)(ProvideForSharedDependency, 'enhanced/lib/sharing/ProvideForSharedDependency');
32
+ const _default = ProvideForSharedDependency;
33
+
34
+ //# sourceMappingURL=ProvideForSharedDependency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ProvideForSharedDependency.ts"],"sourcesContent":["/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\n\nimport ModuleDependency from 'webpack/lib/dependencies/ModuleDependency';\nimport makeSerializable from 'webpack/lib/util/makeSerializable';\n\nclass ProvideForSharedDependency extends ModuleDependency {\n /**\n *\n * @param request request string\n */\n constructor(request: string) {\n super(request);\n }\n\n override get type(): string {\n return 'provide module for shared';\n }\n\n override get category(): string {\n return 'esm';\n }\n}\n\nmakeSerializable(\n ProvideForSharedDependency,\n 'enhanced/lib/sharing/ProvideForSharedDependency',\n);\n\nexport default ProvideForSharedDependency;\n"],"names":["ProvideForSharedDependency","ModuleDependency","type","category","constructor","request","makeSerializable"],"mappings":"AAAA;;;AAGA;;;;+BA4BA;;;eAAA;;;;2EA1B6B;2EACA;AAE7B,IAAA,AAAMA,6BAAN,MAAMA,mCAAmCC,yBAAgB;IASvD,IAAaC,OAAe;QAC1B,OAAO;IACT;IAEA,IAAaC,WAAmB;QAC9B,OAAO;IACT;IAdA;;;GAGC,GACDC,YAAYC,OAAe,CAAE;QAC3B,KAAK,CAACA;IACR;AASF;AAEAC,IAAAA,yBAAgB,EACdN,4BACA;MAGF,WAAeA"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "ProvideSharedDependency", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return ProvideSharedDependency;
9
+ }
10
+ });
11
+ let ProvideSharedDependency = class ProvideSharedDependency extends Dependency {
12
+ };
13
+
14
+ //# sourceMappingURL=ProvideSharedDependency.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/enhanced/src/lib/sharing/ProvideSharedDependency.d.ts"],"sourcesContent":["export class ProvideSharedDependency extends Dependency {\n /**\n * @param {ObjectDeserializerContext} context context\n * @returns {ProvideSharedDependency} deserialize fallback dependency\n */\n static deserialize(\n context: ObjectDeserializerContext,\n ): ProvideSharedDependency;\n /**\n * @param {string} shareScope share scope\n * @param {string} name module name\n * @param {string | false} version version\n * @param {string} request request\n * @param {boolean} eager true, if this is an eager dependency\n */\n constructor(\n shareScope: string,\n name: string,\n version: string | false,\n request: string,\n eager: boolean,\n );\n shareScope: string;\n name: string;\n version: string | false;\n request: string;\n eager: boolean;\n}\ndeclare namespace ProvideSharedDependency {\n export { shareScope, ObjectDeserializerContext, ObjectSerializerContext };\n}\nexport type ObjectDeserializerContext =\n import('webpack/lib/serialization/ObjectMiddleware').ObjectDeserializerContext;\ndeclare let shareScope: any;\nexport type ObjectSerializerContext =\n import('webpack/lib/serialization/ObjectMiddleware').ObjectSerializerContext;\n"],"names":["ProvideSharedDependency","Dependency"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,IAAA,AAAMA,0BAAN,MAAMA,gCAAgCC;AA2B7C"}
@@ -0,0 +1,32 @@
1
+ import Dependency from 'webpack/lib/Dependency';
2
+ import { ObjectDeserializerContext, ObjectSerializerContext } from '../../declarations/plugins/container/Dependency';
3
+ declare class ProvideSharedDependency extends Dependency {
4
+ shareScope: string;
5
+ name: string;
6
+ version: string | false;
7
+ request: string;
8
+ eager: boolean;
9
+ /**
10
+ * @param {string} shareScope share scope
11
+ * @param {string} name module name
12
+ * @param {string | false} version version
13
+ * @param {string} request request
14
+ * @param {boolean} eager true, if this is an eager dependency
15
+ */
16
+ constructor(shareScope: string, name: string, version: string | false, request: string, eager: boolean);
17
+ get type(): string;
18
+ /**
19
+ * @returns {string | null} an identifier to merge equal requests
20
+ */
21
+ getResourceIdentifier(): string | null;
22
+ /**
23
+ * @param {ObjectSerializerContext} context context
24
+ */
25
+ serialize(context: ObjectSerializerContext): void;
26
+ /**
27
+ * @param {ObjectDeserializerContext} context context
28
+ * @returns {ProvideSharedDependency} deserialize fallback dependency
29
+ */
30
+ static deserialize(context: ObjectDeserializerContext): ProvideSharedDependency;
31
+ }
32
+ export default ProvideSharedDependency;