Repository navigation
chore: reuse the Title column string for the note title aria-label - #775
Conversation
The note title field added in #765 used a new planSheet.noteTitle string only as an aria-label. Use a plain English label instead and remove the string from the XLIFF so translators have nothing extra to translate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟢 Approval recommended
The change is a small, self-consistent revert verified across all touched files (no stale noteTitle references, the referenced strings bundle exists, and the test remains valid).
No open issues 🎉
What changed in this PR
This PR reverts the localization of an accessibility-only aria-label introduced in #765. Since the "Note title" label only exists to identify the note title text box for screen readers, it should not create work for translators. The string is replaced with a plain, intentionally-unlocalized English aria-label and removed from the model, reducer, XLIFF sources, and the regenerated localization bundle.
Changes:
NoteTitleField.tsxno longer selectsplanSheetstrings from Redux; it uses a hard-coded'Note title'aria-labelwith an explanatory comment.- The
noteTitlekey is removed from theIPlanSheetStringsinterface, the localization reducer defaults, and both XLIFF source files. - The generated strings bundle pointer (
exported-strings-name.json) is updated to the newly generatedstrings7f2e4ccf.json, and the test drops its now-unnecessaryreact-reduxmock.
| File | Description |
|---|---|
| web/src/components/Sheet/NoteTitleField.tsx | Removes Redux selector usage; uses a plain, unlocalized aria-label. |
| web/src/components/Sheet/NoteTitleField.test.tsx | Drops the react-redux mock; test still locates the field by name "Note title". |
| web/src/store/localization/model.tsx | Removes the noteTitle field from IPlanSheetStrings. |
| web/src/store/localization/reducers.tsx | Removes the noteTitle default string. |
| web/src/store/localization/exported-strings-name.json | Points to the regenerated localization bundle. |
| localization/TranscriberAdmin-en.xlf | Removes the planSheet.noteTitle unit. |
| localization/TranscriberAdmin-en-1.2.xliff | Removes the planSheet.noteTitle trans-unit. |
Review effort: Balanced
Use the existing scriptureTable.title string ("Title", the visible column
header) as the note title aria-label instead of a hard-coded English one.
Also keep develop's strings bundle and drop only noteTitle from it:
regenerating from the committed XLIFF files lost newer Arabic and Tamil
translations.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Add guidance to the localization doc: an aria-label should reuse the string of the control's visible label rather than add a new XLIFF unit, so translators get no extra strings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟢 Approval recommended
It is a small, verified localization cleanup where the reused selector, type field, string value, bundle, tests, and XLIFF removals are all consistent with no remaining references to the removed string.
No open issues 🎉
Review effort: Balanced
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Summary
Use the existing
scriptureTable.title("Title"), the same text as is visible, instead of a new localized string for the aria label. Also add guidance directing AIs to reuse visible strings for aria labels