1
0
forked from baron/baron-sso
Files
baron-sso/devfront/vite.config.ts
2026-05-11 13:34:41 +09:00

66 lines
1.4 KiB
TypeScript

import react from "@vitejs/plugin-react";
import { defineConfig } from "vite";
const buildOutDir =
process.env.DEVFRONT_BUILD_OUT_DIR ?? "/tmp/baron-sso-devfront-dist";
const defaultAllowedHosts = [
"sdev.hmac.kr",
"localhost",
"172.16.10.176",
"127.0.0.1",
];
function hostFromUrl(value: string | undefined) {
if (!value) return undefined;
try {
return new URL(value).hostname;
} catch {
return value;
}
}
const allowedHosts = Array.from(
new Set(
[
...defaultAllowedHosts,
hostFromUrl(process.env.DEVFRONT_URL),
...(process.env.DEVFRONT_ALLOWED_HOSTS ?? "")
.split(",")
.map((host) => host.trim())
.filter(Boolean),
].filter((host): host is string => Boolean(host)),
),
);
export default defineConfig({
plugins: [react()],
cacheDir:
process.env.DEVFRONT_VITE_CACHE_DIR ?? "/tmp/baron-sso-devfront-vite-cache",
build: {
outDir: buildOutDir,
emptyOutDir: true,
},
server: {
host: "127.0.0.1",
allowedHosts,
proxy: {
"/api": {
target: process.env.API_PROXY_TARGET || "http://localhost:3000",
changeOrigin: true,
},
},
},
preview: {
host: "127.0.0.1",
port: 5173,
allowedHosts,
proxy: {
"/api": {
target: process.env.API_PROXY_TARGET || "http://localhost:3000",
changeOrigin: true,
},
},
},
});