Skip to content

objectui: five more hardcoded English chrome strings found in #5430's sweep radius (tab-count N items, Resize drawer, Open as full page, Record Detail, CommentThread's reaction tooltip) #5506

Description

@yinlianghui

Swept while implementing objectstack#5430. Same class as that issue — accessible names and visible defaults still hardcoded in English — but outside its four-string scope, so filed rather than fixed there.

String Site Kind
{count} items packages/components/src/renderers/layout/containers.tsx:573 — the page:tabs count badge's aria-label, built by template literal icon/number-only, so the label IS the badge to a screen reader; also English-pluralized by construction
Resize drawer packages/components/src/custom/navigation-overlay.tsx:357 — the drag handle's aria-label on role="separator" handle has no visible label
Open as full page packages/components/src/custom/navigation-overlay.tsx:279 — expandLabel prop default feeds both aria-label and title of an icon-only button; overridable by callers, but the default is what ships
Record Detail packages/components/src/custom/navigation-overlay.tsx:282 — resolvedTitle = title || 'Record Detail' visible overlay heading, not just an a11y name
1 reaction / {n} reactions packages/collaboration/src/CommentThread.tsx:520 — reaction tooltip, userIds.length === 1 ? '1 reaction' : ... English pluralization built in, exactly the shape #5430 replaced in ReactionPicker

Also in the same file, three copies of the prose Record detail overlay for {resolvedTitle}. (navigation-overlay.tsx:377, :442, :526) feed SheetDescription/DialogDescription.

Notes for whoever picks this up

The Record Detail default is the only visible string here; the rest are accessible names and hover tooltips.

Generated by Claude Code

Activity

  1. self-assigned this
    on Aug 6, 2026
  2. yinlianghui commented on Aug 6, 2026

    @yinlianghui
    CollaboratorAuthor

    认领:objectui 分片 PM 并行批第 23 单(维护者提速指令,三单同批,文件面互不相交)
    会话:session_01GTRjn8xBqp75dk7kFupVRt
    分支:claude/issue-5506-chrome-strings-i18n(代码落地 objectui 仓)
    Worktree:objectui-issue-5506
    域:objectui 分片(components / collaboration / i18n locales)
    文件面:packages/components/src/renderers/layout/containers.tsx、packages/components/src/custom/navigation-overlay.tsx、packages/collaboration/src/CommentThread.tsx、packages/i18n/src/locales/*.ts + 相应测试 + .changeset/*.md。同批:#3336(fields picker 面)、#3375(app-shell)—— 零相交。

    口径照正文 Notes:两处复数一律双 key 约定(CommentThread 无 emoji 需自己的键对,不硬套 #5430 的);collaboration 包先核 i18n 接线;Record Detail 是唯一可见串;消费半径注记(e2e 英文名定位、ObjectView 的 Close panel)照正文核对。


    Generated by Claude Code

  3. yinlianghui commented on Aug 6, 2026

    @yinlianghui
    CollaboratorAuthor

    验收:ACCEPT → objectui PR #3423(并行批第 23 单,会话 session_01GTRjn8xBqp75dk7kFupVRt),CI 全绿已入 auto-merge,合并后本单自动关闭。

    落地 5 处中的 4 处 + 三份 sr-only 描述合一(detail.recordDetailOverlay 带 {{title}}):common.resizeDrawer、common.itemCount/itemCountOne(顺带修掉旧代码从无单数分支、任何语言都念 "1 items" 的缺陷)、detail.recordDetail(唯一可见串)、detail.openAsFullPage。计数徽标插值取格式化后字符串(1.2k),i18next 对 string count 跳过自身复数解析,双 key 约定不被抢——已核 i18next@26.3.6 源。反向验证 15 红 15 绿与预测一致,两处偏差(en 单数同红、no-provider 断言双向绿)均属预期方向且预先声明。

    第 5 处(CommentThread reaction tooltip)按 dev 上报的依赖决策,PM 裁定整包接入(方案 A 范围、C 路径),承接单 objectui#3424,裁定理由(两轴)已记录在该单,veto 窗口开放。同批派生:objectstack#5733(RecordDetailDrawer 同款 Resize drawer,等 common.resizeDrawer 落地后一行修)已由 dev 立单,本轮分诊。


    Generated by Claude Code

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions