@elora-cloud/elora-cli
Version:
elora build cli 前端打包脚手架
34 lines (30 loc) • 1.23 kB
JavaScript
;
var names = require('../utils/names.cjs');
const sourceThemeChalk = `@/${names.themeChalk}`;
function EloraPluginStyle(options) {
const bundleThemeChalk = `${options.packageName}/${names.themeChalk}`;
const bundleThemeChalkSrc = `${options.packageName}/${names.themeChalk}/src`;
return {
name: 'elora-plugin-style',
generateBundle(config, bundle) {
const keys = Object.keys(bundle);
for (const key of keys) {
const bundler = bundle[key];
let codeTmp = bundler.code;
if (codeTmp.includes('.css')) {
codeTmp = codeTmp.replaceAll(sourceThemeChalk, bundleThemeChalk);
}
else if (codeTmp.includes('.scss')) {
codeTmp = codeTmp.replaceAll(sourceThemeChalk, bundleThemeChalkSrc);
}
bundler.code = codeTmp;
// this.emitFile({
// type: 'asset',
// fileName: key.replace('index.js', 'css.js'),
// source: bundler.code.replace(/\.scss/g, '.css')
// });
}
},
};
}
exports.EloraPluginStyle = EloraPluginStyle;