| 1 | import { defineConfig } from "vite"; |
| 2 | import solid from "vite-plugin-solid"; |
| 3 | import { createRequire } from "node:module"; |
| 4 | import { dirname, resolve } from "node:path"; |
| 5 | |
| 6 | export default defineConfig({ |
| 7 | root: "web", |
| 8 | plugins: [solid()], |
| 9 | resolve: { alias: { "@novnc/keyboard": resolve(dirname(createRequire(import.meta.url).resolve("@novnc/novnc")), "input/keyboard.js") } }, |
| 10 | build: { outDir: "../dist", emptyOutDir: true }, |
| 11 | server: { |
| 12 | host: true, |
| 13 | allowedHosts: [".ts.net", "sandwich"], |
| 14 | // Stands in for forward auth. |
| 15 | proxy: { |
| 16 | "/api/": { |
| 17 | target: process.env.STUDIO_DEV_API_URL ?? "http://127.0.0.1:7070", |
| 18 | xfwd: true, |
| 19 | ws: true, |
| 20 | headers: { "User-Name": process.env.STUDIO_DEV_USER ?? "snow", "User-Groups": process.env.STUDIO_DEV_GROUPS ?? "infra-admin" }, |
| 21 | }, |
| 22 | }, |
| 23 | }, |
| 24 | }); |