UNPKG

@lynx-js/rspeedy

Version:

A webpack/rspack-based frontend toolchain for Lynx

41 lines (40 loc) 2.35 kB
import { debug, isDebug } from "./src_index_ts.js"; async function applyDebugPlugins(rsbuildInstance, config) { const debugPlugins = Object.freeze([ import("./0~emitOnErrors.plugin.js").then(({ pluginEmitOnErrors })=>pluginEmitOnErrors()), import("./0~inspect.plugin.js").then(({ pluginInspect })=>pluginInspect(config)) ]); rsbuildInstance.addPlugins(await Promise.all(debugPlugins)); } async function applyDefaultPlugins(rsbuildInstance, config) { const defaultPlugins = Object.freeze([ import("./0~api.plugin.js").then(({ pluginAPI })=>pluginAPI(config)), import("./0~chunkLoading.plugin.js").then(({ pluginChunkLoading })=>pluginChunkLoading()), import("@lynx-js/debug-metadata-rsbuild-plugin").then(({ pluginLynxDebugMetadata })=>pluginLynxDebugMetadata()), import("./0~dev.plugin.js").then(({ pluginDev })=>pluginDev(config.dev, config.server)), import("./0~minify.plugin.js").then(({ pluginMinify })=>pluginMinify(config.output?.minify)), import("./0~optimization.plugin.js").then(({ pluginOptimization })=>pluginOptimization()), import("./0~output.plugin.js").then(({ pluginOutput })=>pluginOutput(config.output)), import("./0~resolve.plugin.js").then(({ pluginResolve })=>pluginResolve()), import("./0~rsdoctor.plugin.js").then(({ pluginRsdoctor })=>pluginRsdoctor(config.tools?.rsdoctor)), import("./0~sourcemap.plugin.js").then(({ pluginSourcemap })=>pluginSourcemap()), import("./0~statsJson.plugin.js").then(({ pluginStatsJson })=>pluginStatsJson(config)), import("./0~swc.plugin.js").then(({ pluginSwc })=>pluginSwc()), import("./0~target.plugin.js").then(({ pluginTarget })=>pluginTarget()) ]); const promises = [ Promise.all(defaultPlugins).then((plugins)=>{ rsbuildInstance.addPlugins(plugins); }) ]; if (isDebug()) { debug('apply Rspeedy default debug plugins'); promises.push(applyDebugPlugins(rsbuildInstance, config)); } await Promise.all(promises); const { pluginCssMinimizer, PLUGIN_CSS_MINIMIZER_NAME } = await import("@rsbuild/plugin-css-minimizer"); if (!rsbuildInstance.isPluginExists(PLUGIN_CSS_MINIMIZER_NAME)) rsbuildInstance.addPlugins([ pluginCssMinimizer() ]); } export { applyDefaultPlugins };