Skip to main content

rspack_plugin_mf/
lib.rs

1mod container;
2mod manifest;
3mod sharing;
4
5pub use container::{
6  container_plugin::{ContainerPlugin, ContainerPluginOptions, ExposeOptions},
7  container_reference_plugin::{
8    ContainerReferencePlugin, ContainerReferencePluginOptions, RemoteOptions,
9  },
10  embed_federation_runtime_module::EmbedFederationRuntimeModule,
11  module_federation_runtime_plugin::{
12    ModuleFederationRuntimeExperimentsOptions, ModuleFederationRuntimePlugin,
13    ModuleFederationRuntimePluginOptions,
14  },
15};
16pub use manifest::{
17  ManifestExposeOption, ManifestSharedOption, ModuleFederationManifestPlugin,
18  ModuleFederationManifestPluginOptions, RemoteAliasTarget, StatsBuildInfo,
19};
20pub use sharing::{
21  consume_shared_module::ConsumeSharedModule,
22  consume_shared_plugin::{
23    ConsumeOptions, ConsumeSharedPlugin, ConsumeSharedPluginOptions, ConsumeVersion,
24  },
25  provide_shared_module::ProvideSharedModule,
26  provide_shared_plugin::{ProvideOptions, ProvideSharedPlugin, ProvideVersion},
27  share_runtime_module::{
28    CodeGenerationDataShareInit, DataInitStage, ShareInitData, ShareRuntimeModule,
29  },
30  share_runtime_plugin::ShareRuntimePlugin,
31};
32
33mod utils {
34  use std::fmt;
35
36  use serde::Serialize;
37
38  pub fn json_stringify<T: ?Sized + Serialize + fmt::Debug>(v: &T) -> String {
39    serde_json::to_string(v).unwrap_or_else(|e| panic!("{e}: {v:?} should able to json stringify"))
40  }
41}