// 应用统一配置文件 const config = { // API配置 api: { baseURL: process.env.REACT_APP_API_BASE_URL || 'http://localhost:5000', timeout: 10000, retryCount: 3 }, // 应用信息 app: { name: process.env.REACT_APP_APP_NAME || 'FileSend', version: process.env.REACT_APP_VERSION || '1.0.0', description: '文件分享与传输系统' }, // 上传配置 upload: { maxFileSize: 100 * 1024 * 1024, // 100MB allowedTypes: [ 'image/*', 'application/pdf', 'text/*', 'application/zip', 'application/x-zip-compressed' ], chunkSize: 5 * 1024 * 1024 // 5MB分片 }, // 本地存储配置 storage: { path: process.env.STORAGE_PATH || './uploads', maxAge: 7 * 24 * 3600 * 1000, // 7天 cleanupInterval: 24 * 3600 * 1000 // 每天清理 }, // 数据库配置 database: { url: process.env.DATABASE_URL || 'sqlite:///filesend.db', echo: process.env.NODE_ENV !== 'production' }, // 安全配置 security: { jwtSecret: process.env.JWT_SECRET || 'your-secret-key-change-this', jwtExpire: '7d', bcryptRounds: 12, corsOrigins: process.env.CORS_ORIGINS ? process.env.CORS_ORIGINS.split(',') : ['http://localhost:3000'] }, // 邮件配置(可选) email: { enabled: process.env.EMAIL_ENABLED === 'true', host: process.env.EMAIL_HOST, port: parseInt(process.env.EMAIL_PORT) || 587, secure: process.env.EMAIL_SECURE === 'true', user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASS, from: process.env.EMAIL_FROM } }; // 环境判断 config.isDevelopment = process.env.NODE_ENV !== 'production'; config.isProduction = process.env.NODE_ENV === 'production'; module.exports = config;