-
Notifications
You must be signed in to change notification settings - Fork 0
/
vite.config.js
64 lines (61 loc) · 1.58 KB
/
vite.config.js
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
import { defineConfig } from "vite";
import { fileURLToPath, URL } from 'node:url'
import { terser } from "rollup-plugin-terser";
import vue from "@vitejs/plugin-vue";
import vueJsx from "@vitejs/plugin-vue-jsx";
const production = process.env.NODE_ENV === "production";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue(), vueJsx()],
build: {
cssMinify: false,
minify: production,
lib: {
// src/indext.ts is where we have exported the component(s)
entry: fileURLToPath(new URL('./src/index.ts', import.meta.url)),
name: "Vue3ContentPlaceHolder",
// the name of the output files when the build is run
fileName: "vue3-content-placeholders",
},
css: {
preprocessorOptions: {
scss: {
additionalData: `
@import "./src/styles.scss";
`,
},
},
},
rollupOptions: {
// make sure to externalize deps that shouldn't be bundled
// into your library
external: ["vue"],
plugins: [
terser({
compress: {
defaults: false,
drop_console: true,
},
mangle: {
eval: true,
module: true,
toplevel: true,
safari10: true,
properties: false,
},
output: {
comments: false,
ecma: "2020",
},
}),
],
output: {
// Provide global variables to use in the UMD build
// for externalized deps
globals: {
vue: "Vue",
},
},
},
},
});