mirror of
https://github.com/crawlab-team/crawlab.git
synced 2026-01-21 17:21:09 +01:00
69 lines
1.8 KiB
Go
69 lines
1.8 KiB
Go
import {resolve} from 'path';
|
|
import {defineConfig, splitVendorChunkPlugin} from 'vite';
|
|
import vue from '@vitejs/plugin-vue';
|
|
import dynamicImport from 'vite-plugin-dynamic-import';
|
|
import {visualizer} from 'rollup-plugin-visualizer';
|
|
import externalGlobals from 'rollup-plugin-external-globals';
|
|
import {externalizeDeps} from 'vite-plugin-externalize-deps';
|
|
|
|
export default defineConfig({
|
|
build: {
|
|
rollupOptions: {
|
|
output: {
|
|
manualChunks: (id) => {
|
|
if (id.includes('node_modules')) {
|
|
if (id.includes('@fortawesome')) return '@fortawesome';
|
|
if (id.includes('element-plus')) return 'element-plus';
|
|
if (id.includes('zrender')) return 'zrender';
|
|
if (id.includes('echarts')) return 'echarts';
|
|
if (id.includes('codemirror')) return 'codemirror';
|
|
if (id.includes('atom-material-icons')) return 'atom-material-icons';
|
|
if (id.includes('crawlab-ui')) return 'crawlab-ui';;
|
|
return 'vendor.[hash]';
|
|
}
|
|
}
|
|
},
|
|
external: [
|
|
// 'codemirror',
|
|
// 'echarts',
|
|
],
|
|
plugins: [
|
|
// @ts-ignore
|
|
// externalGlobals({
|
|
// // codemirror: 'CodeMirror',
|
|
// echarts: 'echarts',
|
|
// })
|
|
],
|
|
}
|
|
},
|
|
resolve: {
|
|
dedupe: ['vue', 'element-plus', 'codemirror'],
|
|
alias: [
|
|
{find: '@', replacement: resolve(__dirname, 'src')},
|
|
],
|
|
extensions: [
|
|
'.js',
|
|
'.ts',
|
|
'.jsx',
|
|
'.tsx',
|
|
'.json',
|
|
'.vue',
|
|
'.scss',
|
|
]
|
|
},
|
|
plugins: [
|
|
vue(),
|
|
dynamicImport(),
|
|
// splitVendorChunkPlugin(),
|
|
// externalizeDeps(),
|
|
// @ts-ignore
|
|
visualizer({
|
|
open: true,
|
|
// open: false,
|
|
}),
|
|
],
|
|
server: {
|
|
cors: true,
|
|
},
|
|
});
|