# -*- coding: utf-8 -*- r'''清掉管理页剩下的深色主题残留。 管理页整体已经改成白色了(--bg:#ffffff), 但 CSS 里还有几处是给深色底配的,在白底上很扎眼: .url{background:#0b1220} 深藏青的地址框 button:hover{background:#262c36} 深灰悬停 tbody tr:hover td{#1b222c} 深灰行悬停 tr.picked td{#1c2733} 深色选中行 button.del{background:#2d1214} 暗红删除按钮 .dot{background:#484f58} 深灰圆点 a.logout{border-bottom:#484f58} 深灰虚线下划线 换成浅色系。 ''' from __future__ import annotations import ast import sys from pathlib import Path ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote") RELAY = ROOT / "relay" / "relay.py" # (旧, 新, 说明) FIXES = [ # 公网地址框:深藏青 -> 浅蓝 ("background:#0b1220;border:1px solid #1f6feb44", "background:#f6f8fa;border:1px solid #d0d7de", "地址框底色"), ("color:#0969da;word-break:break-all;\n background:#f6f8fa", "color:#0969da;word-break:break-all;\n background:#f6f8fa", "(保持)"), # 按钮悬停 ("button:hover{background:#262c36;border-color:#484f58}", "button:hover{background:#f3f4f6;border-color:#d1d5db}", "按钮悬停"), ("button.primary:hover{background:#4a95f8;border-color:#4a95f8}", "button.primary:hover{background:#1d4ed8;border-color:#1d4ed8}", "主按钮悬停"), # 删除按钮:暗红 -> 浅红 ("button.del{background:#2d1214;border-color:#6e2b2b;color:#ff7b72}", "button.del{background:#fff5f5;border-color:#ffc9c9;color:#c92a2a}", "删除按钮"), ("button.del:hover{background:#4a1a1e;border-color:#a33;color:#ffa198}", "button.del:hover{background:#ffe3e3;border-color:#ffa8a8;color:#a61b1b}", "删除按钮悬停"), # 表格行悬停 ("tbody tr:hover td{background:#1b222c}", "tbody tr:hover td{background:#f6f8fa}", "表格行悬停"), # 选中行 ("tr.picked td{background:#1c2733}", "tr.picked td{background:#eff6ff}", "选中行"), ("tr.picked:hover td{background:#213042}", "tr.picked:hover td{background:#dbeafe}", "选中行悬停"), # 圆点 ("vertical-align:middle;background:#484f58}", "vertical-align:middle;background:#d0d7de}", "状态圆点"), # 退出登录的下划线 ("border-bottom:1px dashed #484f58;transition:.12s}", "border-bottom:1px dashed #d0d7de;transition:.12s}", "退出登录下划线"), # 提示条阴影(白底上要淡一点) ("box-shadow:0 8px 24px #0008;opacity:0;", "box-shadow:0 8px 24px #0002;opacity:0;", "提示条阴影"), ] def main() -> int: text = RELAY.read_text(encoding="utf-8") changed = [] for old, new, why in FIXES: if old == new: continue if new in text: continue if old in text: text = text.replace(old, new) changed.append(why) if changed: RELAY.write_text(text, encoding="utf-8", newline="\n") print(" 改了:") for c in changed: print(" " + c) else: print(" 没有要改的") try: ast.parse(text) print(" 语法 OK") except SyntaxError as exc: print(" [失败] 语法错误: 行 %s: %s" % (exc.lineno, exc.msg)) return 1 # 复核:还有没有深色残留 print() print(" 残留的深色值检查:") DARK = ["#0b1220", "#262c36", "#1b222c", "#1c2733", "#213042", "#2d1214", "#4a1a1e", "#484f58", "#2a313c", "#0d1117"] left = [c for c in DARK if c in text] if left: print(" 还有: %s" % " ".join(left)) for c in left: import re for m in re.finditer(r".*" + re.escape(c) + r".*", text): print(" %s" % m.group(0).strip()[:80]) else: print(" 无 ✓") return 0 if __name__ == "__main__": sys.exit(main())