61 lines
1.5 KiB
JavaScript
61 lines
1.5 KiB
JavaScript
|
|
import { defineConfig, loadEnv } from 'vite';
|
||
|
|
import react from '@vitejs/plugin-react';
|
||
|
|
|
||
|
|
export default ({ mode }) => {
|
||
|
|
const env = loadEnv(mode, process.cwd(), '');
|
||
|
|
|
||
|
|
return defineConfig({
|
||
|
|
server: {
|
||
|
|
host: true,
|
||
|
|
port: 3000,
|
||
|
|
proxy: {
|
||
|
|
// 지도 타일 서버
|
||
|
|
'/MAPS': {
|
||
|
|
target: env.VITE_MAP_TILE_URL || 'http://10.26.252.39:9090',
|
||
|
|
changeOrigin: true,
|
||
|
|
secure: false,
|
||
|
|
},
|
||
|
|
// GeoJSON 데이터
|
||
|
|
'/geo': {
|
||
|
|
target: env.VITE_MAP_TILE_URL || 'http://10.26.252.39:9090',
|
||
|
|
changeOrigin: true,
|
||
|
|
secure: false,
|
||
|
|
},
|
||
|
|
// 선박 신호 API (signal-api)
|
||
|
|
// 참조: mda-react-front/vite.config.ts
|
||
|
|
'/signal-api': {
|
||
|
|
target: env.VITE_SIGNAL_API || 'http://10.26.252.39:9090/signal-api',
|
||
|
|
changeOrigin: true,
|
||
|
|
secure: false,
|
||
|
|
rewrite: (path) => path.replace(/^\/signal-api/, ''),
|
||
|
|
},
|
||
|
|
// API 서버
|
||
|
|
'/api': {
|
||
|
|
target: env.VITE_API_URL || 'http://localhost:8080',
|
||
|
|
changeOrigin: true,
|
||
|
|
secure: false,
|
||
|
|
},
|
||
|
|
},
|
||
|
|
},
|
||
|
|
plugins: [react()],
|
||
|
|
resolve: {
|
||
|
|
alias: {
|
||
|
|
'@': '/src',
|
||
|
|
},
|
||
|
|
},
|
||
|
|
build: {
|
||
|
|
outDir: 'dist',
|
||
|
|
cssCodeSplit: true,
|
||
|
|
rollupOptions: {
|
||
|
|
output: {
|
||
|
|
manualChunks: {
|
||
|
|
vendor: ['react', 'react-dom', 'react-router-dom'],
|
||
|
|
map: ['ol', 'ol-ext'],
|
||
|
|
state: ['zustand'],
|
||
|
|
},
|
||
|
|
},
|
||
|
|
},
|
||
|
|
},
|
||
|
|
});
|
||
|
|
};
|