fix: add missing i18n translation keys for Timestamp Picker in 9 languages#7017
fix: add missing i18n translation keys for Timestamp Picker in 9 languages#7017Peersheik wants to merge 2 commits intoRocketChat:developfrom
Conversation
## What does this PR do? Adds missing i18n translation keys for the Timestamp Picker feature across 9 languages: English, Portuguese, Spanish, German, French, Russian, Chinese (Simplified), Japanese, and Korean. ## Why is this needed? The Timestamp Picker feature (reference: RocketChat#6524) introduced new UI strings but translation keys were missing for non-English languages. This ensures users worldwide can use the feature in their native language. ## Languages added - 🇺🇸 English (en) - 🇧🇷 Portuguese (pt) - 🇪🇸 Spanish (es) - 🇩🇪 German (de) - 🇫🇷 French (fr) - 🇷🇺 Russian (ru) - 🇨🇳 Chinese Simplified (zh-CN) - 🇯🇵 Japanese (ja) - 🇰🇷 Korean (ko) ## Type of change - Bug fix / improvement (non-breaking)
|
|
WalkthroughThis PR adds timestamp-related localization keys across 9 language locale files (German, English, Spanish, French, Japanese, Korean, Portuguese, Russian, and Simplified Chinese). Each locale receives 13–14 new translation keys for timestamp picker UI components and timestamp format representations. JSON syntax is corrected with trailing commas. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested labels
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
app/i18n/locales/en.json (1)
1027-1039: Consider adding locale key-parity validation in CI.This PR fixes missing keys manually; a keyset parity check across locale JSON files would prevent this class of regression going forward.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@app/i18n/locales/en.json` around lines 1027 - 1039, Add an automated locale key-parity check to CI so missing keys like "Timestamp_Picker", "Timestamp_Full", "Timestamp_Relative", etc. are detected; implement a small validation script (e.g., validate-locales or i18n-parity) that loads all locale JSONs, compares key sets against the canonical en locale, and exits non-zero on mismatch, then add a CI job (e.g., i18n-parity) to run that script on PRs; ensure the script prints missing/extra keys per locale and integrate it into package.json scripts so CI can call it.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@app/i18n/locales/en.json`:
- Around line 1027-1039: Add an automated locale key-parity check to CI so
missing keys like "Timestamp_Picker", "Timestamp_Full", "Timestamp_Relative",
etc. are detected; implement a small validation script (e.g., validate-locales
or i18n-parity) that loads all locale JSONs, compares key sets against the
canonical en locale, and exits non-zero on mismatch, then add a CI job (e.g.,
i18n-parity) to run that script on PRs; ensure the script prints missing/extra
keys per locale and integrate it into package.json scripts so CI can call it.
ℹ️ Review info
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (9)
app/i18n/locales/de.jsonapp/i18n/locales/en.jsonapp/i18n/locales/es.jsonapp/i18n/locales/fr.jsonapp/i18n/locales/ja.jsonapp/i18n/locales/ko.jsonapp/i18n/locales/pt-PT.jsonapp/i18n/locales/ru.jsonapp/i18n/locales/zh-CN.json
📜 Review details
🔇 Additional comments (9)
app/i18n/locales/ko.json (1)
1-13: Timestamp picker localization block looks good.The added Korean keys are complete and consistent with the new timestamp picker surface.
app/i18n/locales/es.json (1)
481-494: Spanish timestamp keys are correctly integrated.The new entries are complete and appended safely without breaking the locale file structure.
app/i18n/locales/de.json (1)
912-925: German timestamp localization additions look correct.All expected timestamp picker keys are present and values are locale-appropriate.
app/i18n/locales/fr.json (1)
805-818: French timestamp picker translations are solid.The additions are complete and correctly scoped to the new feature keys.
app/i18n/locales/en.json (1)
1026-1039: English timestamp keys and string continuity look correct.This segment cleanly adds the timestamp picker labels and examples with valid JSON structure.
app/i18n/locales/zh-CN.json (1)
651-664: Simplified Chinese timestamp localization is complete.The new timestamp picker keys are consistently added and structurally correct.
app/i18n/locales/pt-PT.json (1)
540-553: Portuguese (pt-PT) timestamp additions are in good shape.Keys are complete and integrated without structural issues.
app/i18n/locales/ja.json (1)
579-592: Japanese timestamp picker localization block looks correct.The added keys are complete and aligned with the feature’s i18n surface.
app/i18n/locales/ru.json (1)
852-865: LGTM!The timestamp picker translations are well-implemented:
- Russian translations are idiomatic and accurate
- Date format examples correctly use Russian conventions (DD.MM.YYYY format in line 862, Russian month name "июля" in lines 863-864)
- Key naming follows the existing
PascalCase_With_Underscoresconvention- JSON syntax is valid with proper comma placement
Proposed changes
Issue(s)
How to test or reproduce
Screenshots
Types of changes
Checklist
Further comments
Summary by CodeRabbit