zephyr-xpack-internal
Version:
Xpack internals for Zephyr
36 lines (35 loc) • 1.49 kB
JavaScript
import __rslib_shim_module__ from "node:module";
const require = /*#__PURE__*/ __rslib_shim_module__.createRequire(/*#__PURE__*/ (()=>import.meta.url)());
import { ze_log } from "zephyr-agent";
function mutableFederationConfig(plugin) {
if ('configOverride' in plugin) {
plugin.configOverride ??= {};
return plugin.configOverride;
}
const options = plugin._options ?? plugin.options ?? plugin.config;
if (!options) return;
return 'config' in options ? options.config : options;
}
function runtimePluginInsert(plugin) {
try {
const runtimePluginPath = require.resolve('./runtime-plugin');
ze_log.remotes(`Adding Zephyr runtime plugin: ${runtimePluginPath}`);
return configureZephyrRuntimePlugin(plugin, runtimePluginPath);
} catch (error) {
ze_log.remotes(`Failed to resolve runtime plugin path: ${error}`);
return false;
}
}
function configureZephyrRuntimePlugin(plugin, runtimePluginPath) {
const configRef = mutableFederationConfig(plugin);
if (!configRef) {
ze_log.remotes('No MF config found.');
return false;
}
configRef.runtimePlugins ??= [];
if (!configRef.runtimePlugins.includes(runtimePluginPath)) configRef.runtimePlugins.push(runtimePluginPath);
ze_log.remotes("Runtime plugin added to Module Federation config");
return true;
}
export { configureZephyrRuntimePlugin, runtimePluginInsert };
//# sourceMappingURL=runtime-plugin-insert.mjs.map