- Deleted unused API test files, RTSP diagnostic scripts, and development utility scripts to reduce clutter. - Removed outdated database schema and modularization proposal documents to maintain focus on current architecture. - Cleaned up configuration files and logging scripts that are no longer in use, enhancing project maintainability.
45 lines
1.5 KiB
TypeScript
Executable File
45 lines
1.5 KiB
TypeScript
Executable File
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react'
|
|
import federation from '@originjs/vite-plugin-federation'
|
|
import tailwindcss from '@tailwindcss/vite'
|
|
|
|
// https://vite.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
react({
|
|
jsxRuntime: 'automatic'
|
|
}),
|
|
tailwindcss(),
|
|
// Module Federation groundwork as shell. No remotes yet; does not change behavior.
|
|
federation({
|
|
name: 'dashboard-shell',
|
|
filename: 'remoteEntry.js',
|
|
exposes: {
|
|
// You can expose shared UI/components later if needed
|
|
},
|
|
remotes: {
|
|
// Allow overriding by env; default to localhost for dev
|
|
videoRemote: process.env.VITE_VIDEO_REMOTE_URL || 'http://localhost:3001/assets/remoteEntry.js',
|
|
visionSystemRemote: process.env.VITE_VISION_SYSTEM_REMOTE_URL || 'http://localhost:3002/assets/remoteEntry.js'
|
|
},
|
|
shared: {
|
|
react: { singleton: true, eager: true },
|
|
'react-dom': { singleton: true, eager: true },
|
|
},
|
|
})
|
|
],
|
|
server: {
|
|
// Allow connections from the VM hostname and any other host/IP
|
|
allowedHosts: ['exp-dash', 'localhost'],
|
|
// Proxy API calls from the browser to the API container via the compose service name
|
|
proxy: {
|
|
'/api': {
|
|
// Route to API via the host so this works whether API is on bridge (via port mapping) or host network
|
|
target: 'http://host.docker.internal:8000',
|
|
changeOrigin: true,
|
|
rewrite: (path) => path.replace(/^\/api/, ''),
|
|
},
|
|
},
|
|
},
|
|
})
|