81 lines
2.9 KiB
JavaScript
81 lines
2.9 KiB
JavaScript
import path from "path";
|
|
import vue from '@vitejs/plugin-vue';
|
|
import vuetify from 'vite-plugin-vuetify';
|
|
|
|
export default {
|
|
|
|
plugins: [
|
|
vue(),
|
|
vuetify(),
|
|
],
|
|
|
|
// vite app is loaded from /meshchatx/src/frontend
|
|
root: path.join(__dirname, "meshchatx", "src", "frontend"),
|
|
|
|
build: {
|
|
|
|
// we want to compile vite app to /public which is bundled and served by the python executable
|
|
outDir: path.join(__dirname, "public"),
|
|
emptyOutDir: true,
|
|
|
|
rollupOptions: {
|
|
input: {
|
|
|
|
// we want to use /meshchatx/src/frontend/index.html as the entrypoint for this vite app
|
|
app: path.join(__dirname, "meshchatx", "src", "frontend", "index.html"),
|
|
|
|
// we want to use /meshchatx/src/frontend/call.html as the entrypoint for the phone call app
|
|
call: path.join(__dirname, "meshchatx", "src", "frontend", "call.html"),
|
|
|
|
},
|
|
output: {
|
|
manualChunks(id) {
|
|
if (id.includes('node_modules')) {
|
|
if (id.includes('vuetify')) {
|
|
return 'vendor-vuetify';
|
|
}
|
|
if (id.includes('vis-network') || id.includes('vis-data')) {
|
|
return 'vendor-vis';
|
|
}
|
|
if (id.includes('vue-router')) {
|
|
return 'vendor-vue-router';
|
|
}
|
|
if (id.includes('vue')) {
|
|
return 'vendor-vue';
|
|
}
|
|
if (id.includes('protobufjs') || id.includes('@protobufjs')) {
|
|
return 'vendor-protobuf';
|
|
}
|
|
if (id.includes('moment')) {
|
|
return 'vendor-moment';
|
|
}
|
|
if (id.includes('axios')) {
|
|
return 'vendor-axios';
|
|
}
|
|
if (id.includes('@mdi/js')) {
|
|
return 'vendor-mdi';
|
|
}
|
|
if (id.includes('compressorjs')) {
|
|
return 'vendor-compressor';
|
|
}
|
|
if (id.includes('click-outside-vue3')) {
|
|
return 'vendor-click-outside';
|
|
}
|
|
if (id.includes('mitt')) {
|
|
return 'vendor-mitt';
|
|
}
|
|
if (id.includes('micron-parser')) {
|
|
return 'vendor-micron';
|
|
}
|
|
if (id.includes('electron-prompt')) {
|
|
return 'vendor-electron-prompt';
|
|
}
|
|
return 'vendor-other';
|
|
}
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
}
|