|
import dotenv from "dotenv"; |
|
|
|
export function setupEnvironment() { |
|
dotenv.config(); |
|
|
|
const requiredVars = { |
|
GOOGLE_API_KEYS: process.env.GOOGLE_API_KEYS, |
|
AUTH_USERNAME: process.env.AUTH_USERNAME, |
|
AUTH_PASSWORD: process.env.AUTH_PASSWORD, |
|
}; |
|
|
|
|
|
const missingVars = Object.entries(requiredVars) |
|
.filter(([, value]) => !value) |
|
.map(([key]) => key); |
|
|
|
if (missingVars.length > 0) { |
|
throw new Error( |
|
`Missing required environment variables: ${missingVars.join(", ")}` |
|
); |
|
} |
|
|
|
|
|
const apiKeys = process.env.GOOGLE_API_KEYS?.split(',').map(key => key.trim()) || []; |
|
if (apiKeys.length === 0) { |
|
throw new Error('No valid Google API keys provided'); |
|
} |
|
|
|
return { |
|
GOOGLE_API_KEYS: apiKeys, |
|
AUTH_USERNAME: process.env.AUTH_USERNAME, |
|
AUTH_PASSWORD: process.env.AUTH_PASSWORD, |
|
NODE_ENV: process.env.NODE_ENV || "development", |
|
}; |
|
} |