主题用 <html> 的 data-theme 标记显式选择,tokens.css 新增两组选择器块, 权重压过 prefers-color-scheme;选「跟随系统」则不标记,交回媒体查询, 系统主题切换时界面仍跟着变。 顺带把 InboundForm 和 TokenGate 里硬编码的 #fff 换成 var(--c-bg): 深色主题的强调色是浅青,白字压在上面对比度不够,深色下会看不清。
16 lines
558 B
TypeScript
16 lines
558 B
TypeScript
/**
|
|
* 备份文件名里的时间戳。
|
|
*
|
|
* 名字由服务端生成(server/config-store.ts 的 backupName),形如
|
|
* `config.yaml.bak-20260811-031000`,时间戳是服务端的本地时间。
|
|
*/
|
|
|
|
const STAMP = /\.bak-(\d{4})(\d{2})(\d{2})-(\d{2})(\d{2})(\d{2})$/
|
|
|
|
/** 把备份文件名排成可读时间。名字不合预期时返回 null,调用方退回显示原名。 */
|
|
export function backupTime(name: string): string | null {
|
|
const m = STAMP.exec(name)
|
|
if (!m) return null
|
|
return `${m[1]}-${m[2]}-${m[3]} ${m[4]}:${m[5]}:${m[6]}`
|
|
}
|