import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { VitePWA } from 'vite-plugin-pwa' import packageJson from './package.json' // https://vite.dev/config/ export default defineConfig({ plugins: [ vue(), VitePWA({ registerType: 'autoUpdate', includeAssets: ['favicon.svg'], manifest: { name: 'Tools App', short_name: 'Tools', description: 'A collection of useful tools', theme_color: '#4facfe', background_color: '#242424', display: 'standalone', orientation: 'portrait', icons: [ { src: 'favicon.svg', sizes: 'any', type: 'image/svg+xml', purpose: 'any maskable' } ] }, workbox: { globPatterns: ['**/*.{js,css,html,ico,png,svg,json,vue,txt,woff2}'], cleanupOutdatedCaches: true, clientsClaim: true, skipWaiting: true }, devOptions: { enabled: true, /* when using generateSW the PWA plugin will switch to classic */ type: 'module', navigateFallback: 'index.html', } }) ], define: { '__APP_VERSION__': JSON.stringify(packageJson.version) }, server: { host: true, allowedHosts: [ '.trycloudflare.com' ] } })