-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvite.config.mjs
82 lines (80 loc) · 2.11 KB
/
vite.config.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import { defineConfig } from "vite"
import vue from "@vitejs/plugin-vue"
import path from "path"
import copy from "rollup-plugin-copy"
import { visualizer } from "rollup-plugin-visualizer"
import VueDevTools from 'vite-plugin-vue-devtools'
// https://vitejs.dev/config/
export default defineConfig({
define: {
'__APP_VERSION__': JSON.stringify(process.env.npm_package_version),
},
plugins: [
visualizer(),
copy({
targets: [
{
src: path.join(__dirname, "node_modules", "@viur", "shoelace", "dist", "assets"),
dest: path.join(__dirname, "public", "shoelace")
},
{
src: path.join(__dirname, "node_modules", "@viur", "vue-components", "applications", "scriptor","public"),
dest: path.join(__dirname, "public", "scriptor")
}
]
}),
vue({
template: {
compilerOptions: {
isCustomElement: (tag) => tag.startsWith("sl-")
}
}
})
//,VueDevTools() //#activate if needed
],
css: {
preprocessorOptions: {}
},
resolve: {
alias: {
"@": path.resolve(__dirname, "./src")
}
},
server: {
fs: {
allow: ["/"]
}
},
base: "/vi/s",
build: {
//emptyOutDir:true,
//target:['esnext'],
outDir: path.resolve(__dirname, "../../../deploy/vi"),
assetsInlineLimit: 0,
chunkSizeWarningLimit: 700,
rollupOptions: {
input: {
index: path.resolve(__dirname, "main.html")
},
output: {
chunkFileNames: (chunkinfo) => {
if (
chunkinfo["moduleIds"].filter((x) => x.includes("node_modules/@viur/shoelace/dist/components")).length > 0
) {
return `[name].js`
} else {
return `[name]-[hash].js`
}
},
manualChunks(id) {
if (id.includes("node_modules/@viur/shoelace/dist/components")) {
return "shoelace/component_" + id.split("/").slice(-2)[0]
}
if (id.includes("node_modules/@viur/ckeditor5-build-classic/build/ckeditor.js")) {
return "viur-ckeditor.js"
}
}
}
}
}
})