export function configRollupOptions() {
return {
output: {
manualChunks(id) {
if (id.includes('/node_modules/')) {
const dep = /node_modules\/(.+?)\//g.exec(id)?.[1] || '';
if (/\/opendesign2\/themes\/es\/(.*?)\//.test(id)) {
return 'opendesign2';
} else if (/\/element-plus\/es\/components\/(.*?)\/(.*)\/?style/.test(id)) {
return 'element-plus';
} else {
return 'vendor';
}
} else if (id.includes('/src/assets/baseI18n/')) {
const i18n = /src\/assets\/baseI18n\/(.+?).json/g.exec(id)?.[1];
if (i18n) {
return i18n;
}
return 'assets';
}
},
chunkFileNames: (chunkInfo: any): string => {
const facadeModuleId = chunkInfo.facadeModuleId ? chunkInfo.facadeModuleId.split('/') : [];
const fileName = facadeModuleId[facadeModuleId.length - 2] || '[name]';
return `assets/${fileName}.[hash].js`;
},
},
};
}