import { fileURLToPath } from 'node:url' import tailwindcss from '@tailwindcss/vite' import vue from '@vitejs/plugin-vue' import { defineConfig } from 'vite' // In development the panel talks to a homeserver through Vite's proxy, the // same paths warp-admin proxies in production, so the code never needs to // know where the homeserver is. WARP_ADMIN_HOMESERVER points it elsewhere. const homeserver = process.env.WARP_ADMIN_HOMESERVER ?? 'http://localhost:8008' export default defineConfig({ plugins: [vue(), tailwindcss()], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) }, }, build: { // Embedded into the warp-admin binary by internal/panel. outDir: 'internal/panel/build/dist', emptyOutDir: true, assetsInlineLimit: 0, }, server: { port: 5174, proxy: { '/_matrix': { target: homeserver, changeOrigin: true }, '/_warp/admin': { target: homeserver, changeOrigin: true }, }, }, })