refactor: simplify Vite config to use unified config as single source
- Remove loadEnv() double-loading in Vite configuration - Use unifiedConfig directly for all environment variables - Add additional config variables for better frontend access - Eliminates configuration conflicts and reduces complexity - Provides cleaner, more predictable build process
This commit is contained in:
@@ -1,20 +1,13 @@
|
|||||||
import path from 'path';
|
import path from 'path';
|
||||||
import { defineConfig, loadEnv } from 'vite';
|
import { defineConfig } from 'vite';
|
||||||
import { unifiedConfig } from './config/unified.config';
|
import { unifiedConfig } from './config/unified.config';
|
||||||
|
|
||||||
export default defineConfig(({ mode }) => {
|
export default defineConfig(() => {
|
||||||
// Still load env for backward compatibility and overrides
|
// Use unified config as the single source of truth
|
||||||
const env = loadEnv(mode, '.', '');
|
|
||||||
|
|
||||||
// Use unified config as the primary source
|
|
||||||
const config = unifiedConfig;
|
const config = unifiedConfig;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
define: {
|
define: {
|
||||||
// Legacy API key support
|
|
||||||
'process.env.API_KEY': JSON.stringify(env.GEMINI_API_KEY),
|
|
||||||
'process.env.GEMINI_API_KEY': JSON.stringify(env.GEMINI_API_KEY),
|
|
||||||
|
|
||||||
// Application configuration from unified config
|
// Application configuration from unified config
|
||||||
'import.meta.env.VITE_APP_NAME': JSON.stringify(config.app.name),
|
'import.meta.env.VITE_APP_NAME': JSON.stringify(config.app.name),
|
||||||
'import.meta.env.VITE_APP_VERSION': JSON.stringify(config.app.version),
|
'import.meta.env.VITE_APP_VERSION': JSON.stringify(config.app.version),
|
||||||
@@ -71,6 +64,15 @@ export default defineConfig(({ mode }) => {
|
|||||||
'import.meta.env.IS_DEVELOPMENT': JSON.stringify(
|
'import.meta.env.IS_DEVELOPMENT': JSON.stringify(
|
||||||
config.app.environment === 'development'
|
config.app.environment === 'development'
|
||||||
),
|
),
|
||||||
|
|
||||||
|
// Additional configurations
|
||||||
|
'import.meta.env.VITE_USE_MOCK_DB': JSON.stringify(
|
||||||
|
config.database.useMock
|
||||||
|
),
|
||||||
|
'import.meta.env.VITE_LOG_LEVEL': JSON.stringify(config.logging.level),
|
||||||
|
'import.meta.env.VITE_ENABLE_MONITORING': JSON.stringify(
|
||||||
|
config.features.enableMonitoring
|
||||||
|
),
|
||||||
},
|
},
|
||||||
resolve: {
|
resolve: {
|
||||||
alias: {
|
alias: {
|
||||||
|
|||||||
Reference in New Issue
Block a user