import dotenv from 'dotenv'; import { dirname, resolve } from 'path'; import { fileURLToPath } from 'url'; const __dirname = dirname(fileURLToPath(import.meta.url)); dotenv.config({ path: resolve(__dirname, '../../.env'), quiet: true }); export default { port: Number(process.env.PORT) || 4208, bodyLimit: process.env.BODY_LIMIT || '100mb', corsOrigins: (process.env.CORS_ORIGINS || 'http://localhost:5173') .split(',') .map((s) => s.trim()) .filter(Boolean), googleClientId: process.env.GOOGLE_CLIENT_ID, implicitCreate: process.env.IMPLICIT_CREATE === 'true', jwtSecret: process.env.JWT_SECRET || 'fallback_secret_please_change_in_production', dbProvider: process.env.DB_PROVIDER || (process.env.SQLITE_PATH ? 'sqlite' : 'mssql'), sqlite: { filename: process.env.SQLITE_PATH || process.env.SQLITE_FILENAME || resolve(__dirname, '../../data/dash.db'), }, mssql: { server: process.env.MSSQL_SERVER, database: process.env.MSSQL_DATABASE, user: process.env.MSSQL_USER, password: process.env.MSSQL_PASSWORD, port: Number(process.env.MSSQL_PORT) || 1433, encrypt: process.env.MSSQL_ENCRYPT === 'true', trustServerCertificate: process.env.MSSQL_TRUST_SERVER_CERTIFICATE === 'true', }, };