Files
lynq-chat/packages/frontend/vite.config.ts
T
2026-05-23 19:54:03 +09:00

52 lines
1.1 KiB
TypeScript
Executable File

import { defineConfig, loadEnv } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";
import { VitePWA } from "vite-plugin-pwa";
export default defineConfig(({ mode }) => {
const env = loadEnv(mode, process.cwd(), "")
const apiPort = Number(env.VITE_API_PORT) || 3300
return {
plugins: [
vue(),
VitePWA({
strategies: "injectManifest",
srcDir: "./src/lib",
filename: "sw.ts",
injectRegister: false,
manifest: false,
injectManifest: {
injectionPoint: undefined,
},
devOptions: {
enabled: true,
type: "module",
},
}),
],
server: {
hmr: {
clientPort: 5173,
protocol: "ws",
},
proxy: {
"/api": {
target: `http://localhost:${apiPort}`,
changeOrigin: true,
},
"/manifest.json": {
target: `http://localhost:${apiPort}`,
changeOrigin: true,
},
},
},
resolve: {
alias: {
"@": path.resolve(__dirname, "src"),
},
},
}
})