Files
dc-observatio/services/pcp-tgu-ui-service/vite.config.ts
T

67 lines
2.6 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { fileURLToPath } from 'node:url'
import { nstartAuth } from '@nstart/auth/vite'
import react from '@vitejs/plugin-react'
// vitest/config расширяет vite defineConfig — нужно для блока test ниже.
import { defineConfig } from 'vitest/config'
// Сборочная заглушка @nstart/ui: @nstart/auth реэкспортирует ProfilePage/UserPanel
// (с lottie ~6 МБ), которые в сервисе не используются. Алиас отдаёт их импорты в
// лёгкий стаб, чтобы их UI не попадал в бандл. Типы tsc берёт из реального пакета.
const nstartUiStub = fileURLToPath(new URL('./src/stubs/nstart-ui.tsx', import.meta.url))
export default defineConfig({
// nstartAuth() обслуживает /silent-check-sso.html (нужен части режимов входа);
// при loginMode=redirect безвреден. @nstart/ui-плагины и tailwind НЕ подключаем —
// их UI в сервисе не используется.
plugins: [nstartAuth(), react()],
resolve: {
dedupe: ['react', 'react-dom'],
alias: [{ find: /^@nstart\/ui$/, replacement: nstartUiStub }],
},
server: {
host: '0.0.0.0',
port: 5174,
// ТГУ ходит в несколько бэкендов через префиксы. В проде эти маршруты
// повторяются в nginx.conf (зеркало) либо на gateway/ingress.
proxy: {
'/api/pcp-request': {
target: 'http://localhost:7005',
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/api\/pcp-request/, ''),
},
'/api/pcp-ballistics': {
target: 'http://localhost:7003',
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/api\/pcp-ballistics/, ''),
},
'/api/pcp-mission': {
target: 'http://localhost:7010',
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/api\/pcp-mission/, ''),
},
'/api/pcp-tgu': {
target: 'http://localhost:7011',
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/api\/pcp-tgu/, ''),
},
'/api/pcp-complex': {
target: 'http://localhost:7002',
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/api\/pcp-complex/, ''),
},
'/api/stations': {
target: 'http://localhost:7009',
changeOrigin: true,
},
'/api': {
target: 'http://localhost:7008',
changeOrigin: true,
},
},
},
test: {
environment: 'jsdom',
globals: true,
},
})