UNPKG

storybook-addon-rslib

Version:

Storybook addon for loading configuration of Rslib

41 lines (37 loc) 1.95 kB
import CJS_COMPAT_NODE_URL_c3e111fe9bf1766e from 'node:url'; import CJS_COMPAT_NODE_PATH_c3e111fe9bf1766e from 'node:path'; import CJS_COMPAT_NODE_MODULE_c3e111fe9bf1766e from "node:module"; var __filename = CJS_COMPAT_NODE_URL_c3e111fe9bf1766e.fileURLToPath(import.meta.url); var __dirname = CJS_COMPAT_NODE_PATH_c3e111fe9bf1766e.dirname(__filename); var require = CJS_COMPAT_NODE_MODULE_c3e111fe9bf1766e.createRequire(import.meta.url); // ------------------------------------------------------------ // end of CJS compatibility banner, injected by Storybook's esbuild configuration // ------------------------------------------------------------ // src/preset.ts import { mergeRsbuildConfig } from "@rsbuild/core"; import { loadConfig } from "@rslib/core"; var rsbuildFinal = async (config, options) => { let { rslib = {} } = options, { cwd, configPath, libIndex = 0, modifyLibConfig, modifyLibRsbuildConfig } = rslib, { content } = await loadConfig({ cwd, path: configPath }), libConfig = libIndex === !1 ? {} : content.lib[libIndex]; if (!libConfig) throw new Error( `Lib config not found at index ${libIndex}, expect a lib config but got ${libConfig}` ); typeof modifyLibConfig == "function" && modifyLibConfig(libConfig); let { lib: _lib, ...nonLibConfig } = content, mergedLibConfig = mergeRsbuildConfig( nonLibConfig, libConfig ); return delete mergedLibConfig.source?.entry, delete mergedLibConfig.output?.distPath, delete mergedLibConfig.output?.filename, delete mergedLibConfig.output?.cleanDistPath, delete mergedLibConfig.output?.externals, delete mergedLibConfig.server?.publicDir, delete mergedLibConfig.dev?.progressBar, delete mergedLibConfig.output?.assetPrefix, delete mergedLibConfig.dev?.assetPrefix, typeof modifyLibRsbuildConfig == "function" && modifyLibRsbuildConfig(mergedLibConfig), mergeRsbuildConfig(config, mergedLibConfig); }; export { rsbuildFinal };