import path from 'path'; import { defineConfig, loadEnv } from 'vite'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, '.', ''); return { 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 'import.meta.env.VITE_APP_NAME': JSON.stringify( env.VITE_APP_NAME || env.APP_NAME || 'RxMinder' ), 'import.meta.env.VITE_APP_VERSION': JSON.stringify( env.VITE_APP_VERSION || env.APP_VERSION || '1.0.0' ), 'import.meta.env.VITE_BASE_URL': JSON.stringify( env.APP_BASE_URL || env.VITE_BASE_URL || 'http://localhost:5173' ), // Database configuration 'import.meta.env.VITE_COUCHDB_URL': JSON.stringify(env.VITE_COUCHDB_URL), 'import.meta.env.VITE_COUCHDB_USER': JSON.stringify( env.VITE_COUCHDB_USER ), 'import.meta.env.VITE_COUCHDB_PASSWORD': JSON.stringify( env.VITE_COUCHDB_PASSWORD ), // Email configuration 'import.meta.env.VITE_MAILGUN_API_KEY': JSON.stringify( env.VITE_MAILGUN_API_KEY ), 'import.meta.env.VITE_MAILGUN_DOMAIN': JSON.stringify( env.VITE_MAILGUN_DOMAIN ), 'import.meta.env.VITE_MAILGUN_FROM_NAME': JSON.stringify( env.VITE_MAILGUN_FROM_NAME ), 'import.meta.env.VITE_MAILGUN_FROM_EMAIL': JSON.stringify( env.VITE_MAILGUN_FROM_EMAIL ), // OAuth configuration 'import.meta.env.VITE_GOOGLE_CLIENT_ID': JSON.stringify( env.VITE_GOOGLE_CLIENT_ID ), 'import.meta.env.VITE_GITHUB_CLIENT_ID': JSON.stringify( env.VITE_GITHUB_CLIENT_ID ), // Feature flags 'import.meta.env.ENABLE_EMAIL_VERIFICATION': JSON.stringify( env.ENABLE_EMAIL_VERIFICATION !== 'false' ), 'import.meta.env.ENABLE_OAUTH': JSON.stringify( env.ENABLE_OAUTH !== 'false' ), 'import.meta.env.ENABLE_ADMIN_INTERFACE': JSON.stringify( env.ENABLE_ADMIN_INTERFACE !== 'false' ), 'import.meta.env.DEBUG_MODE': JSON.stringify( env.DEBUG_MODE === 'true' || mode === 'development' ), }, resolve: { alias: { '@': path.resolve(__dirname, '.'), }, }, }; });