refactor: 完成项目整体目录重构与路径别名配置
1. 重构项目文件结构,统一文件存放位置与命名规则 2. 配置tsconfig路径别名,替换原有相对路径导入 3. 迁移drama-status枚举到dramas.types统一管理 4. 新增全局配置文件与工具类,补充完整注释与文档 5. 修复所有导入路径与依赖引用问题
This commit is contained in:
59
config/app.config.ts
Normal file
59
config/app.config.ts
Normal file
@@ -0,0 +1,59 @@
|
||||
/**
|
||||
* App config.
|
||||
* @file 应用运行配置
|
||||
* @module config/app.config
|
||||
* @author zhxiao1124
|
||||
*/
|
||||
|
||||
// 注意:本文件不主动加载 .env,环境变量由 src/main.ts 顶部的 `import "dotenv/config"` 注入。
|
||||
// e2e 测试不加载 .env,DB_CONFIG.host 为空时应用自动退回内存模式(见 src/app/app.module.ts 的门控)。
|
||||
|
||||
const numberEnv = (key: string, fallback: number) => {
|
||||
const value = Number(process.env[key]);
|
||||
return Number.isFinite(value) ? value : fallback;
|
||||
};
|
||||
|
||||
const boolEnv = (key: string, fallback: boolean) => {
|
||||
const value = process.env[key];
|
||||
if (value === undefined) return fallback;
|
||||
return value === "true" || value === "1";
|
||||
};
|
||||
|
||||
export const APP_CONFIG = {
|
||||
APP_NAME: "cth-tk-backend",
|
||||
PORT: numberEnv("PORT", 3000),
|
||||
};
|
||||
|
||||
export const OPTIONS_CONFIG = {
|
||||
cors: {
|
||||
origin: process.env.CORS_ORIGIN?.split(","),
|
||||
credentials: true,
|
||||
},
|
||||
};
|
||||
|
||||
export const DB_CONFIG = {
|
||||
type: "mysql" as const,
|
||||
host: process.env.DB_HOST,
|
||||
port: numberEnv("DB_PORT", 3306),
|
||||
username: process.env.DB_USERNAME ?? "root",
|
||||
password: process.env.DB_PASSWORD ?? "",
|
||||
database: process.env.DB_DATABASE ?? "cth_tk",
|
||||
synchronize: boolEnv("DB_SYNCHRONIZE", false),
|
||||
};
|
||||
|
||||
export const AUTH_CONFIG = {
|
||||
jwtTokenSecret: process.env.JWT_SECRET ?? "development-secret",
|
||||
expiresIn: "30d" as const,
|
||||
};
|
||||
|
||||
export const ADMIN_AUTH_CONFIG = {
|
||||
jwtTokenSecret: process.env.ADMIN_JWT_SECRET ?? process.env.JWT_SECRET ?? "development-secret",
|
||||
expiresIn: "12h" as const,
|
||||
username: process.env.ADMIN_USERNAME ?? "admin",
|
||||
password: process.env.ADMIN_PASSWORD ?? "admin123",
|
||||
email: process.env.ADMIN_EMAIL ?? "admin@example.com",
|
||||
};
|
||||
|
||||
export const BYTEPLUS_CONFIG = {
|
||||
bucket: process.env.BYTEPLUS_BUCKET ?? "mock-short-drama",
|
||||
};
|
||||
Reference in New Issue
Block a user