Files

40 lines
1.2 KiB
JavaScript
Raw Permalink Normal View History

/**
* 通用配置常量
* 集中管理分页、文件上传、重试等配置
*/
module.exports = {
PAGINATION: {
DEFAULT_PAGE_SIZE: parseInt(process.env.DEFAULT_PAGE_SIZE, 10) || 10,
MAX_PAGE_SIZE: parseInt(process.env.MAX_PAGE_SIZE, 10) || 1000,
PAGE_SIZE_OPTIONS: [10, 20, 30, 50, 100],
},
FILE_UPLOAD: {
MAX_FILE_SIZE: (parseInt(process.env.MAX_FILE_SIZE_MB, 10) || 500) * 1024 * 1024,
MAX_AVATAR_SIZE: (parseInt(process.env.MAX_AVATAR_SIZE_MB, 10) || 5) * 1024 * 1024,
ALLOWED_IMAGE_TYPES: ['image/jpeg', 'image/png', 'image/gif', 'image/webp'],
ALLOWED_DOC_TYPES: [
'application/pdf',
'application/msword',
'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
'application/vnd.ms-excel',
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
],
},
RETRY: {
MAX_RETRIES: parseInt(process.env.MAX_RETRIES, 10) || 3,
RETRY_DELAY: parseInt(process.env.RETRY_DELAY, 10) || 1000,
},
TIMEOUT: {
API_TIMEOUT: parseInt(process.env.API_TIMEOUT, 10) || 30000,
DB_QUERY_TIMEOUT: parseInt(process.env.DB_QUERY_TIMEOUT, 10) || 30000,
},
FRONTEND: {
DEFAULT_PORT: parseInt(process.env.FRONTEND_PORT, 10) || 3000,
},
};