Skip to content

feat(demo): 为 Demo 增加中英文国际化切换 - #43

Open
wszxdhr wants to merge 1 commit into
mainfrom
agent/agent/01a0a462
Open

wszxdhr wants to merge 1 commit into
mainfrom
agent/agent/01a0a462

Conversation

@wszxdhr

@wszxdhr wszxdhr commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Summary

为 Demo 增加完整的中英文国际化切换能力(关联 Multica 任务:HAM-14)。

  • 新增 apps/demo/src/locales/zh-CN.ts、apps/demo/src/locales/en-US.ts 语言资源与 apps/demo/src/i18n.ts,通过共享 TranslationKey 类型在编译期校验两套资源完整对应,无第三方运行时依赖
  • apps/demo/src/main.ts 接入类型安全的翻译键,为文本节点添加稳定的 data-i18n 标记;Hero 顶部新增“中 / EN”语义化切换组,切换时只原位更新文案、html.lang、当前态与 aria-pressed,不重建 DOM
  • apps/demo/src/style.css 补充语言切换控件样式、键盘焦点态与窄屏换行布局
  • 新增 tests/e2e/i18n.spec.ts,覆盖初始中文渲染、双向切换、按钮当前态以及切换前后拖拽行为
  • OpenSpec:主 Spec demo-internationalization 已同步;Change add-demo-i18n 已归档至 openspec/changes/archive/2026-09-15-add-demo-i18n/

Testing

  • yarn build:通过
  • yarn test:11 suites / 26 tests 通过
  • yarn lint:通过
  • PLAYWRIGHT_BROWSERS_PATH=/tmp/opencode/pw-browsers CI=1 yarn test:e2e:8/8 通过
  • openspec validate --all --strict:2 passed / 0 failed
  • git diff --check:通过
  • 本次变更的 TS / E2E 文件 Prettier check:通过
  • 全仓 yarn format:check:报告 46 个既存未格式化文件(均非本次变更文件),未做批量修复

OpenSpec

  • Change:add-demo-i18n
  • Specs:已同步(openspec/specs/demo-internationalization/spec.md)
  • Archive:已归档(openspec/changes/archive/2026-09-15-add-demo-i18n/)

- 新增 zh-CN / en-US 语言资源与类型安全的 i18n 模块,无第三方运行时依赖
- Hero 顶部新增“中 / EN”语言切换组,原位更新文案与 html.lang,不重建 DOM
- 补充语言切换控件样式与窄屏布局,保持拖拽交互不受影响
- 新增 Playwright 用例覆盖初始中文、双向切换、按钮状态与切换前后拖拽
- 同步主 Spec 并归档 OpenSpec Change add-demo-i18n

Refs HAM-14

Co-authored-by: multica-agent <github@multica.ai>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant