nervtn-web/vite.config.js

64 lines
1.7 KiB
JavaScript

/* jshint -W097 */ // don't warn about "use strict"
"use strict";
import path from 'path';
import {defineConfig} from 'vite';
import vue from '@vitejs/plugin-vue';
import vueI18n from '@intlify/vite-plugin-vue-i18n';
import {VitePWA} from 'vite-plugin-pwa';
// https://vitejs.dev/config/
export default defineConfig({
build: {
sourcemap: true,
manifest: true
},
plugins: [
vue(),
vueI18n({
include: path.resolve(__dirname, '**/locale/**'),
compositionOnly: true,
fullInstall: true
}),
VitePWA({
mode: "production",
base: "/",
srcDir: "src",
filename: "sw.js",
includeAssets: [
"/favicon.png"
],
strategies: "injectManifest",
workbox: {
sourcemap: true
},
manifest: {
name: "Nerv Tales Network",
short_name: "NervTN",
start_url: "/",
display: "standalone",
icons: [
{
src: "icon-192.png",
sizes: "192x192",
type: "image/png"
},
{
src: "icon-512.png",
sizes: "512x512",
type: "image/png"
},
{
src: "apple-touch-icon.png",
sizes: "512x512",
type: "image/png"
}
]
}
})
],
server: {
strictPort: true,
force: true
}
});