2025-08-12 21:50:58 +08:00
|
|
|
|
export interface AdminConfig {
|
2025-08-13 13:20:58 +08:00
|
|
|
|
ConfigSubscribtion: {
|
|
|
|
|
|
URL: string;
|
|
|
|
|
|
AutoUpdate: boolean;
|
|
|
|
|
|
LastCheck: string;
|
|
|
|
|
|
};
|
2025-08-13 00:30:31 +08:00
|
|
|
|
ConfigFile: string;
|
2025-08-12 21:50:58 +08:00
|
|
|
|
SiteConfig: {
|
|
|
|
|
|
SiteName: string;
|
|
|
|
|
|
Announcement: string;
|
|
|
|
|
|
SearchDownstreamMaxPage: number;
|
|
|
|
|
|
SiteInterfaceCacheTime: number;
|
|
|
|
|
|
DoubanProxyType: string;
|
|
|
|
|
|
DoubanProxy: string;
|
|
|
|
|
|
DoubanImageProxyType: string;
|
|
|
|
|
|
DoubanImageProxy: string;
|
|
|
|
|
|
DisableYellowFilter: boolean;
|
2025-08-17 17:32:42 +08:00
|
|
|
|
FluidSearch: boolean;
|
2025-12-02 01:00:42 +08:00
|
|
|
|
// 弹幕配置
|
|
|
|
|
|
DanmakuApiBase: string;
|
|
|
|
|
|
DanmakuApiToken: string;
|
2025-12-14 22:15:38 +08:00
|
|
|
|
// TMDB配置
|
|
|
|
|
|
TMDBApiKey?: string;
|
2025-12-20 22:11:34 +08:00
|
|
|
|
TMDBProxy?: string;
|
2025-12-03 18:20:34 +08:00
|
|
|
|
// 评论功能开关
|
|
|
|
|
|
EnableComments: boolean;
|
2025-12-04 22:14:48 +08:00
|
|
|
|
// 自定义去广告代码
|
|
|
|
|
|
CustomAdFilterCode?: string;
|
|
|
|
|
|
CustomAdFilterVersion?: number; // 代码版本号(时间戳)
|
2025-12-13 13:03:46 +08:00
|
|
|
|
// 注册相关配置
|
|
|
|
|
|
EnableRegistration?: boolean; // 开启注册
|
|
|
|
|
|
RegistrationRequireTurnstile?: boolean; // 注册启用Cloudflare Turnstile
|
|
|
|
|
|
LoginRequireTurnstile?: boolean; // 登录启用Cloudflare Turnstile
|
|
|
|
|
|
TurnstileSiteKey?: string; // Cloudflare Turnstile Site Key
|
|
|
|
|
|
TurnstileSecretKey?: string; // Cloudflare Turnstile Secret Key
|
|
|
|
|
|
DefaultUserTags?: string[]; // 新注册用户的默认用户组
|
2025-12-13 15:11:14 +08:00
|
|
|
|
// OIDC配置
|
|
|
|
|
|
EnableOIDCLogin?: boolean; // 启用OIDC登录
|
|
|
|
|
|
EnableOIDCRegistration?: boolean; // 启用OIDC注册
|
|
|
|
|
|
OIDCIssuer?: string; // OIDC Issuer URL (用于自动发现)
|
|
|
|
|
|
OIDCAuthorizationEndpoint?: string; // 授权端点
|
|
|
|
|
|
OIDCTokenEndpoint?: string; // Token端点
|
|
|
|
|
|
OIDCUserInfoEndpoint?: string; // 用户信息端点
|
|
|
|
|
|
OIDCClientId?: string; // OIDC Client ID
|
|
|
|
|
|
OIDCClientSecret?: string; // OIDC Client Secret
|
2025-12-13 17:36:57 +08:00
|
|
|
|
OIDCButtonText?: string; // OIDC登录按钮文字
|
2025-08-12 21:50:58 +08:00
|
|
|
|
};
|
|
|
|
|
|
UserConfig: {
|
|
|
|
|
|
Users: {
|
|
|
|
|
|
username: string;
|
|
|
|
|
|
role: 'user' | 'admin' | 'owner';
|
|
|
|
|
|
banned?: boolean;
|
2025-08-21 13:05:46 +08:00
|
|
|
|
enabledApis?: string[]; // 优先级高于tags限制
|
|
|
|
|
|
tags?: string[]; // 多 tags 取并集限制
|
|
|
|
|
|
}[];
|
|
|
|
|
|
Tags?: {
|
|
|
|
|
|
name: string;
|
|
|
|
|
|
enabledApis: string[];
|
2025-08-12 21:50:58 +08:00
|
|
|
|
}[];
|
|
|
|
|
|
};
|
|
|
|
|
|
SourceConfig: {
|
|
|
|
|
|
key: string;
|
|
|
|
|
|
name: string;
|
|
|
|
|
|
api: string;
|
|
|
|
|
|
detail?: string;
|
|
|
|
|
|
from: 'config' | 'custom';
|
|
|
|
|
|
disabled?: boolean;
|
|
|
|
|
|
}[];
|
|
|
|
|
|
CustomCategories: {
|
|
|
|
|
|
name?: string;
|
|
|
|
|
|
type: 'movie' | 'tv';
|
|
|
|
|
|
query: string;
|
|
|
|
|
|
from: 'config' | 'custom';
|
|
|
|
|
|
disabled?: boolean;
|
|
|
|
|
|
}[];
|
2025-08-24 00:26:48 +08:00
|
|
|
|
LiveConfig?: {
|
|
|
|
|
|
key: string;
|
|
|
|
|
|
name: string;
|
|
|
|
|
|
url: string; // m3u 地址
|
|
|
|
|
|
ua?: string;
|
|
|
|
|
|
epg?: string; // 节目单
|
|
|
|
|
|
from: 'config' | 'custom';
|
|
|
|
|
|
channelNumber?: number;
|
|
|
|
|
|
disabled?: boolean;
|
|
|
|
|
|
}[];
|
2025-12-12 18:06:34 +08:00
|
|
|
|
ThemeConfig?: {
|
|
|
|
|
|
enableBuiltInTheme: boolean; // 是否启用内置主题
|
|
|
|
|
|
builtInTheme: string; // 内置主题名称
|
|
|
|
|
|
customCSS: string; // 自定义CSS
|
|
|
|
|
|
enableCache: boolean; // 是否启用浏览器缓存
|
|
|
|
|
|
cacheMinutes: number; // 缓存时间(分钟)
|
|
|
|
|
|
cacheVersion: number; // CSS版本号(用于缓存控制)
|
|
|
|
|
|
};
|
2025-12-22 00:42:27 +08:00
|
|
|
|
OpenListConfig?: {
|
2025-12-22 23:08:03 +08:00
|
|
|
|
Enabled: boolean; // 是否启用私人影库功能
|
2025-12-22 00:42:27 +08:00
|
|
|
|
URL: string; // OpenList 服务器地址
|
2025-12-22 21:38:51 +08:00
|
|
|
|
Username: string; // 账号(用于登录获取Token)
|
|
|
|
|
|
Password: string; // 密码(用于登录获取Token)
|
2025-12-22 00:42:27 +08:00
|
|
|
|
RootPath: string; // 根目录路径,默认 "/"
|
|
|
|
|
|
LastRefreshTime?: number; // 上次刷新时间戳
|
|
|
|
|
|
ResourceCount?: number; // 资源数量
|
2025-12-22 22:28:54 +08:00
|
|
|
|
ScanInterval?: number; // 定时扫描间隔(分钟),0表示关闭,最低60分钟
|
2025-12-22 00:42:27 +08:00
|
|
|
|
};
|
2025-08-12 21:50:58 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export interface AdminConfigResult {
|
|
|
|
|
|
Role: 'owner' | 'admin';
|
|
|
|
|
|
Config: AdminConfig;
|
|
|
|
|
|
}
|