55 lines
1.2 KiB
JavaScript
55 lines
1.2 KiB
JavaScript
import { defineConfig, splitVendorChunkPlugin } from "vite";
|
|
import vue from "@vitejs/plugin-vue";
|
|
import liveReload from "vite-plugin-live-reload";
|
|
import path from "path";
|
|
import fs from "fs";
|
|
import basicSsl from "@vitejs/plugin-basic-ssl";
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
vue({
|
|
template: {
|
|
transformAssetUrls: {
|
|
base: "plugins/gamutable",
|
|
includeAbsolute: false,
|
|
},
|
|
},
|
|
}),
|
|
liveReload([__dirname + "/**/*.php", __dirname + "/**/*.html"]),
|
|
splitVendorChunkPlugin(),
|
|
// basicSsl(),
|
|
],
|
|
|
|
// config
|
|
root: "src",
|
|
base: process.env.APP_ENV === "development" ? "/" : "/dist/",
|
|
|
|
build: {
|
|
outDir: "../dist",
|
|
emptyOutDir: true,
|
|
manifest: true,
|
|
|
|
rollupOptions: {
|
|
input: path.resolve(__dirname, "src/gamutable.js"),
|
|
},
|
|
},
|
|
|
|
server: {
|
|
strictPort: true,
|
|
port: 5134,
|
|
https: {
|
|
key: fs.readFileSync("certs/vite.key.pem"),
|
|
cert: fs.readFileSync("certs/vite.crt.pem"),
|
|
},
|
|
cors: true,
|
|
},
|
|
|
|
// required for in-browser template compilation
|
|
// https://vuejs.org/guide/scaling-up/tooling.html#note-on-in-browser-template-compilation
|
|
resolve: {
|
|
alias: {
|
|
vue: "vue/dist/vue.esm-bundler.js",
|
|
},
|
|
},
|
|
});
|