Files
testing-tool/config
雨霖铃 aa23a263fe refactor: 迁移 i18n 系统从 react-i18next 到 chrome.i18n
- 移除 react-i18next、i18next 及相关依赖
- 删除旧的 i18n/ 目录和 useLazyTranslation 工具
- 新增 utils/chromeI18n.ts 类型安全 wrapper(useI18n Hook + getMessage)
- 生成 public/_locales/{zh,en}/messages.json(298 个翻译 key)
- 批量更新 39+ 组件文件的导入和翻译调用
- 转换翻译键格式:namespace:key → namespace_key
- 修复 ErrorBoundary/PageErrorBoundary 从 withTranslation HOC 改为直接调用 getMessage
- 更新 vitest.setup.ts mock 加载实际翻译文本
- 修复 11 个测试文件的断言以匹配中文翻译
- TypeScript、ESLint、547 项测试全部通过

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 19:21:54 +08:00
..

config/

应用级配置目录,存放功能特性的注册中心。

文件说明

文件 用途
features.tsx 核心配置文件,定义所有工具功能的注册信息

features.tsx

FEATURES 数组是路由和功能元数据的单一事实来源,每个功能定义包含:

  • key:页面类型标识(PageType
  • labelKey / descriptionKeyi18n 翻译键
  • themeColorKey:主题色(primary/success/warning/error/secondary/info
  • iconlucide-react 图标组件
  • defaultVisible:默认是否可见
  • components:三种渲染模式的懒加载组件(popupsidepaneltab

已注册功能(11 个)

key 图标 说明
dashboard 仪表盘首页
timestamp Clock 时间戳转换工具
storageCleaner Database 存储清理工具
qrCode QrCode 二维码工具
textStatistics FileText 文本统计工具
jwt Key JWT 解析工具
jsonDiff GitCompareArrows JSON 差异比较工具
base64Converter ArrowLeftRight Base64 转换器
markdownToHtml Code Markdown 转 HTML
htmlToMarkdown File HTML 转 Markdown
rightClickRestorer MousePointerClick 右键菜单恢复工具

导出函数

  • getFeatureByKey(key) — 根据 key 获取功能配置
  • getDefaultVisibleFeatureKeys() — 获取默认可见的功能 key 列表
  • getAllFeatureKeys() — 获取所有功能 key 列表
  • getDefaultPageOrder() — 获取默认页面排序(不含 dashboard)
  • getEntryPointType() — 判断当前入口类型(popup/sidepanel/tab