Improved chuncking.
This commit is contained in:
parent
6eb9f8d37f
commit
72fea29593
@ -9,16 +9,74 @@ export default defineConfig({
|
||||
plugins: [react(), svgo(), svgr(), eslintPlugin()],
|
||||
build: {
|
||||
outDir: 'build',
|
||||
chunkSizeWarningLimit: 1500,
|
||||
rollupOptions: {
|
||||
output: {
|
||||
manualChunks: {
|
||||
antd: ['antd'],
|
||||
codemirror: [
|
||||
'@codemirror/lang-javascript',
|
||||
'@codemirror/lang-python' /* etc */
|
||||
],
|
||||
three: ['three', 'gcode-preview'],
|
||||
'react-vendor': ['react', 'react-dom', 'react-router-dom']
|
||||
manualChunks(id) {
|
||||
// --- CodeMirror
|
||||
if (id.includes('node_modules/@codemirror')) {
|
||||
return 'codemirror'
|
||||
}
|
||||
|
||||
// --- Lezer
|
||||
if (id.includes('node_modules/@lezer')) {
|
||||
return 'lezer'
|
||||
}
|
||||
|
||||
// --- Ant Design
|
||||
if (id.includes('node_modules/antd')) {
|
||||
return 'antd'
|
||||
}
|
||||
|
||||
if (id.includes('node_modules/@ant-design/icons')) {
|
||||
return 'ant-icons'
|
||||
}
|
||||
|
||||
if (id.includes('node_modules/@ant-design/charts')) {
|
||||
return 'ant-charts'
|
||||
}
|
||||
|
||||
// --- AntV
|
||||
if (id.includes('node_modules/@antv')) {
|
||||
return 'antv'
|
||||
}
|
||||
|
||||
// --- Three.js
|
||||
if (id.includes('node_modules/three')) {
|
||||
return 'three'
|
||||
}
|
||||
|
||||
// --- GCode Preview
|
||||
if (id.includes('node_modules/gcode-preview')) {
|
||||
return 'gcode-preview'
|
||||
}
|
||||
|
||||
// --- Online 3D Viewer
|
||||
if (id.includes('node_modules/online-3d-viewer')) {
|
||||
return 'online-3d-viewer'
|
||||
}
|
||||
|
||||
// --- Lodash
|
||||
if (id.includes('node_modules/lodash')) {
|
||||
return 'lodash'
|
||||
}
|
||||
|
||||
// --- tsparticles
|
||||
if (
|
||||
id.includes('node_modules/@tsparticles') ||
|
||||
id.includes('node_modules/tsparticles')
|
||||
) {
|
||||
return 'tsparticles'
|
||||
}
|
||||
|
||||
// --- React vendor
|
||||
if (
|
||||
id.includes('node_modules/react') ||
|
||||
id.includes('node_modules/react-dom') ||
|
||||
id.includes('node_modules/react-router-dom')
|
||||
) {
|
||||
return 'react-vendor'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user