import vue from "@vitejs/plugin-vue" import path from "path" import { defineConfig, type UserConfigExport } from "vite" import { VitePWA } from "vite-plugin-pwa" export default defineConfig(({ command }) => { const config: UserConfigExport = { build: { minify: "esbuild" }, plugins: [ vue(), VitePWA({ registerType: "prompt", includeAssets: [ "favicon.ico", "apple-touch-icon.png", "apple-touch-icon-180x180.png", "favicon.png", "pwa-64x64.png", "pwa-192x192.png", "pwa-512x512.png", "masked-icon.png", "maskable-icon-512x512.png", "monochrome-icon.png", "assets/*.svg" ], manifest: { name: "Remanso", short_name: "Remanso", description: "Note taking & sharing app", background_color: "#ffa4c0", theme_color: "#ffa4c0", icons: [ { src: "pwa-64x64.png", sizes: "64x64", type: "image/png" }, { src: "pwa-192x192.png", sizes: "192x192", type: "image/png" }, { src: "pwa-512x512.png", sizes: "512x512", type: "image/png" }, { src: "maskable-icon-512x512.png", sizes: "512x512", type: "image/png", purpose: "maskable" }, { src: "monochrome-icon.png", sizes: "1024x1024", type: "image/png", purpose: "monochrome" } ] } }) ], resolve: { alias: { "@": path.resolve(__dirname, "./src"), "node-fetch": "isomorphic-fetch" } } } if (command === "serve") { config.define = { global: {} } config.server = { host: "127.0.0.1" } } return config })