import { defineConfig } from 'vite' import { svelte } from '@sveltejs/vite-plugin-svelte' import tailwindcss from '@tailwindcss/vite' import fs from 'fs' const port = parseInt(process.env.VITE_PORT || '5188') const apiPort = process.env.VITE_API_PORT || '3100' const host = process.env.VITE_HOST || 'arch-razer.chimera-dinosaur.ts.net' const certPath = 'tmp/tls/cert.pem' const keyPath = 'tmp/tls/key.pem' const hasCerts = fs.existsSync(certPath) && fs.existsSync(keyPath) // https://vite.dev/config/ export default defineConfig({ plugins: [tailwindcss(), svelte()], server: { port, host: '0.0.0.0', ...(hasCerts ? { https: { cert: fs.readFileSync(certPath), key: fs.readFileSync(keyPath), }, } : {}), proxy: { '/api': { target: `https://${host}:${apiPort}`, changeOrigin: true, secure: false, }, '/cable': { target: `wss://${host}:${apiPort}`, ws: true, secure: false, }, }, }, })