-
Notifications
You must be signed in to change notification settings - Fork 6
New Crowdin updates #592
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
New Crowdin updates #592
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
Note
Due to the large number of review comments, Critical, Major severity comments were prioritized as inline comments.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
apps/web/src/features/i18n/locales/ja-JP.json (3)
470-470: Critical: Chinese text in mute-success message.Line 470 contains Chinese text "僅用於中文" instead of Japanese translation. This should be "投稿をミュート" or similar appropriate Japanese text.
🔎 Proposed fix
- "mute-success": "僅用於中文", + "mute-success": "投稿をミュート",
1736-1736: Critical: Mixed Chinese-Japanese text in tag validation.Line 1736 contains Chinese text "僅用於中文" mixed with Japanese. This appears to be a placeholder that was never properly translated.
🔎 Proposed fix
- "limited_tags": "僅用於中文 10 タグ、いくつか削除", + "limited_tags": "最大 10 タグまで、いくつか削除してください",
2124-2124: Critical: Chinese text in leave-channel message.Line 2124 contains Chinese text "僅用於中文" instead of Japanese translation. This should be "チャンネルを退出" or similar.
🔎 Proposed fix
- "leave-channel": "僅用於中文", + "leave-channel": "チャンネルを退出",apps/web/src/features/i18n/locales/lt-LT.json (1)
473-479: Partial translations in entry-menu and entry-translate sections.Some keys are properly translated (
"promote": "Reklamuok","boost": "Paspartinti"), but others remain in English:
- Line 473:
"translate": "Translate"- Line 476:
"edit-classic": "Edit in Classic Editor"- Line 479:
"target-language": "Target language"
🤖 Fix all issues with AI Agents
In @apps/web/src/features/i18n/locales/bg-BG.json:
- Line 50: Several keys in the Bulgarian locale (bg-BG.json) contain English
placeholders and need Bulgarian translations: replace English values for
"promoted", "send-tip", "count", "count_plural", "external-wallets-label",
"with-hiveauth", "invalid-key", "key-error", the chat/pinning keys around lines
2143-2148, "must-claim", and "transfer-saving" with appropriate Bulgarian
translations; coordinate with the translation team or use the approved
translation source to update each key's value in bg-BG.json (e.g., update the
string for "promoted" and the HiveAuth/chat/tip-related keys listed) so all
user-facing strings are localized.
In @apps/web/src/features/i18n/locales/de-DE.json:
- Around line 449-452: The "count" translation key currently uses the English
word "tip" while "count_plural" uses German; update the singular translation for
the "count" key to the correct German word by changing its value to "{{count}}
Tipp" so singular and plural are consistent with the existing "count_plural"
entry.
In @apps/web/src/features/i18n/locales/it-IT.json:
- Around line 449-452: The translations for tipping are inconsistent and mix
meanings: update the values for the keys "title", "send-tip", "count", and
"count_plural" so they consistently use the same Italian term for "tip"
(recommended "mancia" for monetary tip, or "suggerimento" if you truly mean
suggestion); replace "Invia omaggio" and "Invia un suggerimento" with a single
choice (e.g., "Invia una mancia" and "Invia mancia"), and make "count" and
"count_plural" use the matching pluralization (e.g., "{{count}} mancia" and
"{{count}} mance" or "{{count}} suggerimento"/"{{count}} suggerimenti" if
choosing suggestion).
In @apps/web/src/features/i18n/locales/ja-JP.json:
- Line 2146: The ja-JP locale contains Chinese text for the "pinned-messages"
key; replace the value "僅用於中文" with a proper Japanese translation (e.g.,
"中国語のみで使用") in the ja-JP.json entry for "pinned-messages" and ensure the JSON
remains valid and linted after the change.
- Around line 449-453: Replace incorrect "hint" translations for the tipping
feature: update the keys "title", "send-tip", "count", and "count_plural" to use
monetary tipping terms (e.g., "チップ" or "投げ銭") rather than "ヒント"; specifically
change "title" to "チップ" or "投げ銭", "send-tip" to "チップを送る" or "投げ銭を送る", and make
"count" and "count_plural" use the same Japanese wording (e.g., "{{count}} チップ")
since Japanese does not require separate plural forms; ensure the JSON values
for "count" and "count_plural" are consistent and reflect monetary tipping
terminology.
In @apps/web/src/features/i18n/locales/lt-LT.json:
- Line 2508: The "must-claim" locale entry is still in English; replace the
value for the "must-claim" key in the lt-LT locale (key "must-claim") with a
correct Lithuanian translation (e.g., "Nėra balanso reikalauti arba jau
pareikštas.") ensuring it matches the project's punctuation and style
conventions and then run any localization validation/lint to confirm the JSON
remains valid.
- Line 50: The "promoted" value in the Lithuanian locale is still English;
update the "promoted" key in apps/web/src/features/i18n/locales/lt-LT.json to
the proper Lithuanian translation (match the style used elsewhere, e.g., use the
same term as "filter-promoted" on line 141 such as "reklamuojama" or the
existing project convention) so the entry is localized consistently with keys
like "muted".
- Around line 2143-2148: The listed keys ("no-message", "translate",
"translate-target-language", "pinned-messages", "pin-message", "unpin-message")
are still in English; replace their values with proper Lithuanian translations
in apps/web/src/features/i18n/locales/lt-LT.json—e.g., provide Lithuanian
strings for "No message content.", "Translate", "Target language", "Pinned
messages", "Pin message", and "Unpin message" (ensure grammar/case fits UI
context) and run a quick lint/format check; if unsure about nuances, flag the
entries for a native speaker review.
- Line 3016: The key "transfer-saving" currently has an English value "To
Savings"; replace that value with the correct Lithuanian translation (e.g., "Į
santaupas") so the "transfer-saving" entry matches the file's Lithuanian
localization and other wallet-related translations.
- Line 1409: The translation for the key "external-wallets-label" is still in
English; replace the value so "Wallet" is translated to Lithuanian (e.g.,
"Piniginė") while keeping the cryptocurrency symbols unchanged, for example
change "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)" to "Piniginė (BTC, ETH, SOL,
BNB, TRX, TON, APT)".
- Around line 449-452: The entry-tip block has untranslated keys: update
"send-tip", "count", and "count_plural" in the lt-LT.json locale to Lithuanian
equivalents (e.g., translate "Send a tip" and the singular/plural forms
"{{count}} tip" / "{{count}} tips"); ensure you keep the exact keys "send-tip",
"count", and "count_plural" and preserve the {{count}} interpolation and
pluralization format used by the i18n system.
- Around line 1540-1542: Replace the English strings for the i18n keys with
Lithuanian translations: update "with-hiveauth" to a Lithuanian button/CTA such
as "Prisijungti per HiveAuth", change "invalid-key" to "Neteisingas rakto
formatas. Patikrinkite, ar nėra neteisingų simbolių." and change "key-error" to
"Nepavyko apdoroti rakto. Patikrinkite, ar jis yra teisingas."; ensure the three
keys ("with-hiveauth", "invalid-key", "key-error") are updated in the locale
JSON so the UI shows Lithuanian text.
In @apps/web/src/features/i18n/locales/nl-NL.json:
- Around line 1540-1542: Update the Dutch translation for the "invalid-key"
entry: fix the gender agreement by replacing "Ongeldige sleutelformaat.
Controleer op ongeldige tekens." with a grammatically correct phrase such as
"Ongeldig sleutelformaat. Controleer op ongeldige tekens." so the adjective
matches the neuter noun; modify the value for the "invalid-key" key in the
nl-NL.json file accordingly.
In @apps/web/src/features/i18n/locales/pcm-NG.json:
- Line 2508: Update the PCM-NG locale entry for the "must-claim" key so the
error message reads more clearly; replace the current value "No claiming balance
or already claimed." with a grammatically correct alternative such as "No
claimable balance or already claimed.", "No balance to claim or already
claimed.", or "Nothing to claim or already claimed." Ensure you only modify the
value for the "must-claim" key in
apps/web/src/features/i18n/locales/pcm-NG.json.
In @apps/web/src/features/i18n/locales/pt-PT.json:
- Around line 448-453: The pluralization strings in the "entry-tip" object are
incorrect: replace "count": "{{count}} tip" with "{{count}} dica" for singular
and replace "count_plural": "Dicas de {{count}}" with "{{count}} dicas" for
plural so both follow the consistent "{{count}} <word>" Portuguese pattern;
update the "entry-tip" keys ("count" and "count_plural") accordingly.
In @apps/web/src/features/i18n/locales/ru-RU.json:
- Around line 449-452: The "send-tip" and count strings in the locale entry are
incorrect/unfinished: replace the "send-tip" value with a proper Russian phrase
like "Отправить чаевые" (or "Дать чаевые"), and convert the "count" and
"count_plural" entries to proper Russian translations using ICU pluralization or
explicit forms; update "count" to a singular/one form such as "{{count}} чаевые"
and provide correct plural variants (e.g., use an ICU plural key like "{count,
plural, one {{count} чаевые} few {{count} чаевых} many {{count} чаевых} other
{{count} чаевых}}" or ensure "count_plural" is "{{count}} чаевых") so the UI
shows grammatically correct Russian for all counts (refer to keys "send-tip",
"count", "count_plural").
- Line 50: Multiple entries use the same translation key "promoted" with
inconsistent Russian strings; standardize by choosing one translation (e.g.,
"Продвинуто" or your preferred variant) and replace all occurrences of the
"promoted" key (the entries currently "продвигается", "Продвинуто", and
"Продвигаемое") so every "promoted" entry uses the chosen string across the
locale file.
In @apps/web/src/features/i18n/locales/sr-CS.json:
- Line 1409: Update the value for the JSON key "external-wallets-label" to
translate "Wallet" into Serbian while leaving the cryptocurrency ticker symbols
and surrounding punctuation unchanged; replace "Wallet (BTC, ETH, SOL, BNB, TRX,
TON, APT)" with "Novčanik (BTC, ETH, SOL, BNB, TRX, TON, APT)".
- Line 3016: The JSON key "transfer-saving" currently has an English value ("To
Savings"); update its value to Serbian (e.g., "U štednju" or "Na štednju") so
the Serbian locale displays the translated wallet operation label; edit the
value string for "transfer-saving" in the sr-CS.json locale entry to the chosen
Serbian translation.
In @apps/web/src/features/i18n/locales/tr-TR.json:
- Line 50: The "promoted" locale key is still in English; update the value for
the "promoted" key in the TR locale JSON to the Turkish translation "sponsorlu"
(consistent with the existing "sponsorlu" use elsewhere) so the entry becomes
"promoted": "sponsorlu".
- Line 1409: The translation for the key "external-wallets-label" currently
contains the English word "Wallet"; update its value to use the Turkish word
"Cüzdan" while keeping the cryptocurrency abbreviations unchanged, e.g. change
"external-wallets-label" value to "Cüzdan (BTC, ETH, SOL, BNB, TRX, TON, APT)".
- Around line 1540-1542: Translate the three HiveAuth locale entries into
Turkish: replace "with-hiveauth" value with a natural Turkish string like
"HiveAuth ile giriş yap" (or similar), translate "invalid-key" to something like
"Geçersiz anahtar formatı. Lütfen geçersiz karakterleri kontrol edin." and
translate "key-error" to something like "Anahtar işlenemedi. Lütfen doğruluğunu
kontrol edin."; update the values for the keys "with-hiveauth", "invalid-key",
and "key-error" in the tr-TR.json accordingly.
- Line 3016: The key "transfer-saving" currently has the English value "To
Savings"; update its value to the Turkish translation used elsewhere
("Birikimlere aktar") for consistency, i.e., change the string for
"transfer-saving" in tr-TR.json to "Birikimlere aktar", and while there, review
the nearby wallet operation keys around the same block (referenced by
"transfer-saving" and the existing "transfer-to-savings") to ensure all
operation labels are translated consistently.
- Line 2508: The "must-claim" localization key is still in English; update the
tr-TR locale entry for "must-claim" to Turkish for consistency (key:
"must-claim") — for example replace "No claiming balance or already claimed."
with "Talep edilecek bakiye yok veya zaten talep edilmiş." so the error messages
in the chain-error section are fully translated.
- Around line 2143-2148: Translate the six chat i18n keys into Turkish by
replacing the English values for "no-message", "translate",
"translate-target-language", "pinned-messages", "pin-message", and
"unpin-message" with appropriate Turkish phrases (suggestions: "Mesaj içeriği
yok." for no-message, "Çevir" for translate, "Hedef dil" for
translate-target-language, "Sabitlenmiş mesajlar" for pinned-messages, "Mesajı
sabitle" for pin-message, and "Mesaj sabitlemesini kaldır" for unpin-message) so
the chat UI is fully localized.
- Around line 449-452: The remaining i18n keys for the "entry-tip" block are
still in English; update the values for "send-tip", "count", and "count_plural"
to Turkish to match "title": use "send-tip": "Bahşiş gönder", and for counts use
Turkish wording such as "count": "{{count}} bahşiş" and "count_plural":
"{{count}} bahşiş" (Turkish uses the same form for singular/plural), ensuring
the keys "send-tip", "count", and "count_plural" in the tr-TR.json entry are
replaced accordingly.
🟡 Minor comments (21)
apps/web/src/features/i18n/locales/it-IT.json-449-452 (1)
449-452: Fix language inconsistency and terminology confusion in tipping translationsThere are two issues with the tipping feature translations:
- Language inconsistency: Line 451 uses English "tip" while line 452 uses Italian "suggerimenti". Both should use Italian for consistency.
- Terminology confusion: Line 449 uses "omaggio" (gift/complimentary item) while line 450 uses "suggerimento" (tip/suggestion). These represent different concepts and may confuse users.
🔎 Suggested fixes
"entry-tip": { - "title": "Invia omaggio", + "title": "Invia mancia", "send-tip": "Invia un suggerimento", - "count": "{{count}} tip", + "count": "{{count}} mancia", "count_plural": "{{count}} suggerimenti" },Note: "mancia" is the standard Italian word for "tip" (monetary gratuity), which would be more consistent. Alternatively, if "suggestion" is the intended meaning, use "suggerimento" throughout. If "gift" is intended, use "omaggio" throughout.
apps/web/src/features/i18n/locales/nl-NL.json-1540-1542 (1)
1540-1542: Minor grammar correction needed in Dutch translationIn line 1541, the phrase "Ongeldige sleutelformaat" has a gender agreement issue in Dutch. The adjective "ongeldige" (invalid) should match the gender of "formaat" (format), which is neuter in Dutch.
Suggested correction:
- "invalid-key": "Ongeldige sleutelformaat. Controleer op ongeldige tekens.", + "invalid-key": "Ongeldig sleutelformaat. Controleer op ongeldige tekens.",The rest of the HiveAuth translations look good and provide clear, actionable error messages to users.
apps/web/src/features/i18n/locales/ru-RU.json-50-50 (1)
50-50: Standardize the translation of "promoted" key across the file.The same key "promoted" has three different translations in this file: "продвигается" (line 50), "Продвинуто" (line 415), and "Продвигаемое" (line 494). Choose one consistent translation and apply it to all occurrences to ensure uniform terminology throughout the Russian localization.
apps/web/src/features/i18n/locales/bg-BG.json-50-50 (1)
50-50: Multiple untranslated strings in Bulgarian locale file.This locale file (bg-BG.json) contains several newly added keys with English text instead of Bulgarian translations:
- Line 50:
"promoted": "promoted"- Lines 450-452:
"send-tip","count","count_plural"- Line 1409:
"external-wallets-label"- Lines 1540-1542: HiveAuth keys (
"with-hiveauth","invalid-key","key-error")- Lines 2144-2148: Chat translation/pinning strings
- Line 2508:
"must-claim"- Line 3016:
"transfer-saving"While this pattern is common in i18n workflows (English strings added first, then translated later by contributors), Bulgarian users will see English text for these features until translations are provided.
Consider coordinating with the translation team to prioritize Bulgarian translations for these new strings, especially for user-facing features like tips, HiveAuth authentication, and chat functionality.
Also applies to: 449-453, 1409-1409, 1540-1542, 2143-2148, 2508-2508, 3016-3016
apps/web/src/features/i18n/locales/pt-PT.json-448-453 (1)
448-453: Fix incomplete translation (previously reported issue remains unfixed).The translation issues in the entry-tip section identified in the previous review have not been addressed:
- Line 451: Contains untranslated English text "tip" - should be "{{count}} dica"
- Line 452: Unnatural word order "Dicas de {{count}}" - should be "{{count}} dicas"
Both singular and plural forms should follow the consistent "{{count}} " pattern used in Portuguese.
🔎 Proposed fix
"entry-tip": { "title": "Dica", "send-tip": "Enviar uma dica", - "count": "{{count}} tip", - "count_plural": "Dicas de {{count}}" + "count": "{{count}} dica", + "count_plural": "{{count}} dicas" }apps/web/src/features/i18n/locales/tr-TR.json-50-50 (1)
50-50: Translate "promoted" to Turkish.The translation value is left in English ("promoted") instead of being translated to Turkish. For consistency with other similar keys in this section (e.g., "hot": "akış", "trending": "akış"), this should be translated.
Consider translating to something like "sponsorlu" (which is already used for promoted posts elsewhere in the file at line 415).
apps/web/src/features/i18n/locales/tr-TR.json-1409-1409 (1)
1409-1409: Translate "Wallet" to Turkish.The label contains the English word "Wallet" which should be translated to Turkish (e.g., "Cüzdan"). The cryptocurrency symbols can remain as standard abbreviations.
Example:
"Cüzdan (BTC, ETH, SOL, BNB, TRX, TON, APT)"apps/web/src/features/i18n/locales/tr-TR.json-1540-1542 (1)
1540-1542: Translate HiveAuth-related keys to Turkish.The newly added HiveAuth keys are not translated:
with-hiveauth: "Sign with HiveAuth"invalid-key: "Invalid key format. Please check for invalid characters."key-error: "Failed to process the key. Please verify it is correct."These user-facing messages should be translated to Turkish for consistency with the rest of the locale file.
apps/web/src/features/i18n/locales/tr-TR.json-3016-3016 (1)
3016-3016: Translate wallet operation to Turkish for consistency.The operation label "To Savings" is in English, but earlier in the file (line 1202), a similar key
transfer-to-savingsis translated to Turkish as "Birikimlere aktar".For consistency, consider translating this to Turkish. Note that lines 3015-3029 contain several wallet operations that should all be reviewed for translation consistency.
apps/web/src/features/i18n/locales/tr-TR.json-2508-2508 (1)
2508-2508: Translate error message to Turkish.The
must-claimerror message is in English: "No claiming balance or already claimed."Other error messages in the
chain-errorsection are translated to Turkish, so this should be translated as well for consistency.apps/web/src/features/i18n/locales/tr-TR.json-2143-2148 (1)
2143-2148: Translate chat-related keys to Turkish.Six new chat feature keys were added but remain untranslated:
no-message: "No message content."translate: "Translate"translate-target-language: "Target language"pinned-messages: "Pinned messages"pin-message: "Pin message"unpin-message: "Unpin message"These should be translated to Turkish to maintain a consistent user experience in the chat interface.
apps/web/src/features/i18n/locales/tr-TR.json-449-452 (1)
449-452: Complete Turkish translations for entry-tip keys.Only the title is translated to Turkish, while the remaining keys remain in English:
send-tip: "Send a tip"count: "{{count}} tip"count_plural: "{{count}} tips"For a complete localization experience, these should be translated to Turkish as well.
apps/web/src/features/i18n/locales/pcm-NG.json-2508-2508 (1)
2508-2508: Improve grammar in error message.The phrase "No claiming balance or already claimed." is grammatically awkward. Consider revising to one of these clearer alternatives:
- "No balance to claim or already claimed."
- "No claimable balance or already claimed."
- "Nothing to claim or already claimed."
🔎 Suggested fix
- "must-claim": "No claiming balance or already claimed.", + "must-claim": "No balance to claim or already claimed.",apps/web/src/features/i18n/locales/lt-LT.json-2508-2508 (1)
2508-2508: Untranslated chain error message.The error message
"No claiming balance or already claimed."is in English. This user-facing message should be translated to Lithuanian.apps/web/src/features/i18n/locales/lt-LT.json-50-50 (1)
50-50: Untranslated string in Lithuanian locale.The value
"promoted"is in English. For consistency with other entries in this locale file (e.g.,"muted": "užblokuotas"), this should be translated to Lithuanian (e.g., "reklamuojama" or similar, matching the existingfilter-promotedtranslation on line 141).apps/web/src/features/i18n/locales/lt-LT.json-2143-2148 (1)
2143-2148: Untranslated chat feature strings.All newly added chat-related translations are in English:
"no-message","translate","translate-target-language""pinned-messages","pin-message","unpin-message"These user-facing strings should be translated to Lithuanian.
apps/web/src/features/i18n/locales/lt-LT.json-3016-3016 (1)
3016-3016: Wallet operation label in English.The value
"To Savings"is in English. For consistency with other translated wallet terms in this file (e.g.,"wallet.savings"section uses "SANTAUPOS"), consider translating this to Lithuanian (e.g., "Į santaupas").apps/web/src/features/i18n/locales/lt-LT.json-1409-1409 (1)
1409-1409: Untranslated external wallets label.The word "Wallet" should be translated to Lithuanian (e.g., "Piniginė"). The cryptocurrency symbols (BTC, ETH, etc.) are universal and can remain as-is.
apps/web/src/features/i18n/locales/lt-LT.json-449-452 (1)
449-452: Multiple untranslated strings in entry-tip section.While
titlehas a Lithuanian translation ("Arbatpinigiai"), the newly added keys remain in English:
send-tip: "Send a tip"count: "{{count}} tip"count_plural: "{{count}} tips"These should be translated to Lithuanian for consistency.
apps/web/src/features/i18n/locales/lt-LT.json-1540-1542 (1)
1540-1542: Untranslated HiveAuth error messages.These new validation/error messages are in English and should be translated to Lithuanian:
"with-hiveauth": "Sign with HiveAuth""invalid-key": Error message about invalid key format"key-error": Error message about key processing failureapps/web/src/features/i18n/locales/de-DE.json-449-452 (1)
449-452: Translation inconsistency in singular form.The singular translation uses the English word "tip" while the plural correctly uses the German "Tipps". For consistency, the singular should also use German.
🔎 Suggested fix
"entry-tip": { "title": "Hinweis", "send-tip": "Tipp senden", - "count": "{{count}} tip", + "count": "{{count}} Tipp", "count_plural": "{{count}} Tipps" },
🧹 Nitpick comments (13)
apps/web/src/features/i18n/locales/it-IT.json (1)
2143-2148: Improve chat feature translations for better Italian idiomsSeveral translations could be more idiomatic in Italian:
- Line 2144: "Trasla" is uncommon; "Traduci" is the standard Italian word for "Translate"
- Lines 2146-2148: The pinning feature translations are problematic:
- "Messaggi bloccati" means "blocked messages" not "pinned messages"
- "Messaggio di pin" mixes Italian with English "pin"
- "Sblocca messaggio" means "unlock/unblock message" not "unpin message"
🔎 Suggested improvements
"no-message": "Nessun contenuto del messaggio.", -"translate": "Trasla", +"translate": "Traduci", "translate-target-language": "Lingua di destinazione", -"pinned-messages": "Messaggi bloccati", +"pinned-messages": "Messaggi fissati", -"pin-message": "Messaggio di pin", +"pin-message": "Fissa messaggio", -"unpin-message": "Sblocca messaggio" +"unpin-message": "Rimuovi messaggio fissato"Alternative: If brevity is preferred for "unpin-message", use "Togli fissaggio" or "Sblocca fissaggio"
apps/web/src/features/i18n/locales/ac-ace.json (1)
50-50: Consider translating new keys to ac-ace language.Several newly added translation keys contain English text rather than ac-ace language translations:
- Line 50:
"promoted": "promoted"- Lines 449-452: Entry-tip keys (
send-tip,count,count_plural)- Line 1409:
"external-wallets-label"- Lines 1540-1542: HiveAuth keys (
invalid-key,key-error)- Lines 2143-2148: Chat translation keys
- Line 2508:
"must-claim"- Line 3016:
"transfer-saving"While using English as a fallback is acceptable, translating these keys to the ac-ace language would provide a more consistent user experience for ac-ace locale users.
Also applies to: 449-452, 1409-1409, 1540-1542, 2143-2148, 2508-2508, 3016-3016
apps/web/src/features/i18n/locales/nl-NL.json (2)
2143-2148: Improve naturalness of "target language" translationThe new chat translation features are well-added, but line 2145 has an unnatural phrasing in Dutch. "Taal van doel" is grammatically awkward and not commonly used.
Suggested improvement:
- "translate-target-language": "Taal van doel", + "translate-target-language": "Doeltaal","Doeltaal" is the standard Dutch term for "target language" and is more natural and concise. The other chat-related translations (translate, pinned-messages, pin-message, unpin-message) look good.
2508-2508: Optional: Consider more natural phrasing for error messageThe updated chain error message is understandable but could be slightly more natural in Dutch:
Current: "Geen claim saldo of wordt al beweerd."
Suggestion: "Geen saldo om te claimen of al geclaimd."This alternative is more idiomatic and easier to understand quickly. However, the current translation is acceptable and conveys the meaning correctly.
apps/web/src/features/i18n/locales/ru-RU.json (2)
1409-1409: Consider using plural form for external wallets label.The label uses singular "Кошелёк" (wallet) but lists multiple cryptocurrencies (BTC, ETH, SOL, BNB, TRX, TON, APT). Consider using the plural form "Кошельки" for grammatical consistency, or a more descriptive phrase like "Внешние кошельки" (External wallets) to better match the key name.
🔎 Suggested alternatives
- "external-wallets-label": "Кошелёк (BTC, ETH, SOL, BNB, TRX, TON, APT)", + "external-wallets-label": "Кошельки (BTC, ETH, SOL, BNB, TRX, TON, APT)",Or:
- "external-wallets-label": "Кошелёк (BTC, ETH, SOL, BNB, TRX, TON, APT)", + "external-wallets-label": "Внешние кошельки (BTC, ETH, SOL, BNB, TRX, TON, APT)",
1541-1541: Improve error message clarity.The phrase "проверьте недопустимые символы" is somewhat awkward in Russian. Consider rephrasing to "проверьте наличие недопустимых символов" or "убедитесь в отсутствии недопустимых символов" for better clarity and natural flow.
🔎 Proposed improvement
- "invalid-key": "Неверный формат ключа. Пожалуйста, проверьте недопустимые символы.", + "invalid-key": "Неверный формат ключа. Пожалуйста, проверьте наличие недопустимых символов.",apps/web/src/features/i18n/locales/pt-PT.json (1)
3016-3016: Consider more precise translation.The translation "Para economizar" (meaning "to economize/save money") may be ambiguous. Based on context (wallet operations for transferring TO savings), a more precise translation would be:
- "Para poupança" (To savings)
- "Para a poupança" (To the savings)
This would better match the existing translation on line 1202 "Transfer to savings" → "Transferir para as poupanças" and maintain consistency.
🔎 Proposed fix
- "transfer-saving": "Para economizar", + "transfer-saving": "Para poupança",apps/web/src/features/i18n/locales/hi-IN.json (3)
50-50: Aligng.promotedwith existing Hindi translation for “promoted”
g.promotedis left as"promoted"while related keys like"entry-filter.filter-promoted","entry-payout.promoted"and"entry-list-item.promoted"already use the Hindi"प्रचारित". For consistency across the UI, consider reusing"प्रचारित"here as well.
449-452: Localizeentry-tipcount strings for the Hindi localeThe tipping keys are wired correctly and keep the
{{count}}placeholder, but the visible text is still English:
"send-tip": "Send a tip""count": "{{count}} tip""count_plural": "{{count}} tips"If you want a more consistent Hindi experience, you can localize these while preserving the placeholders.
- "title": "टिप", - "send-tip": "Send a tip", - "count": "{{count}} tip", - "count_plural": "{{count}} tips" + "title": "टिप", + "send-tip": "टिप भेजें", + "count": "{{count}} टिप", + "count_plural": "{{count}} टिप्स"</suggested change>
1409-1409: Optionally localizetransfer.external-wallets-label“Wallet”The new label
"external-wallets-label": "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)"is consistent with other locales, but for the Hindi locale you might want to localize just “Wallet” (keeping the token tickers as-is), e.g.
"वॉलेट (BTC, ETH, SOL, BNB, TRX, TON, APT)", to match the rest of the wallet UI.apps/web/src/features/i18n/locales/zh-CN.json (3)
50-50:g.promotedlikely misaligned with existing “promoted” wording
g.promotedis translated as"已升级", which reads more like “upgraded”. Other “promoted” usages in this locale (e.g."entry-list-item.promoted": "推广","entry-payout.promoted": "已推广") suggest the concept is “promoted content/ads”, not “upgraded”.To avoid confusing users, consider aligning this to something like
"推广"or"已推广"to match the rest of the UI.
449-452: Consider localizingentry-tipcount text to ChineseThe pluralization keys and
{{count}}placeholder are correct, but the visible text remains English:"send-tip": "发送提示", "count": "{{count}} tip", "count_plural": "{{count}} tips"If you want fully localized tipping UI, you could switch to Chinese wording while keeping the placeholders, e.g.:
- "title": "礼物", - "send-tip": "发送提示", - "count": "{{count}} tip", - "count_plural": "{{count}} tips" + "title": "打赏", + "send-tip": "发送打赏", + "count": "{{count}} 次打赏", + "count_plural": "{{count}} 次打赏"(Adjust wording to match your product copy style.)
2143-2148: Unify simplified/traditional characters in pinned messages labelsIn the chat section:
"pinned-messages": "置頂消息", "pin-message": "置顶消息", "unpin-message": "取消置顶消息"
"pinned-messages"uses traditional頂while the singular actions use simplified顶. For zh-CN you probably want consistent simplified characters across all three, e.g.:- "pinned-messages": "置頂消息", + "pinned-messages": "置顶消息",This keeps the UI consistent without changing meaning.
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (23)
apps/web/src/features/i18n/locales/ac-ace.jsonapps/web/src/features/i18n/locales/bg-BG.jsonapps/web/src/features/i18n/locales/de-DE.jsonapps/web/src/features/i18n/locales/es-ES.jsonapps/web/src/features/i18n/locales/fr-FR.jsonapps/web/src/features/i18n/locales/hi-IN.jsonapps/web/src/features/i18n/locales/id-ID.jsonapps/web/src/features/i18n/locales/it-IT.jsonapps/web/src/features/i18n/locales/ja-JP.jsonapps/web/src/features/i18n/locales/lt-LT.jsonapps/web/src/features/i18n/locales/nl-NL.jsonapps/web/src/features/i18n/locales/pcm-NG.jsonapps/web/src/features/i18n/locales/pl-PL.jsonapps/web/src/features/i18n/locales/pt-PT.jsonapps/web/src/features/i18n/locales/ru-RU.jsonapps/web/src/features/i18n/locales/sr-CS.jsonapps/web/src/features/i18n/locales/th-TH.jsonapps/web/src/features/i18n/locales/tr-TR.jsonapps/web/src/features/i18n/locales/uk-UA.jsonapps/web/src/features/i18n/locales/ur-PK.jsonapps/web/src/features/i18n/locales/uz-UZ.jsonapps/web/src/features/i18n/locales/yo-NG.jsonapps/web/src/features/i18n/locales/zh-CN.json
🚧 Files skipped from review as they are similar to previous changes (7)
- apps/web/src/features/i18n/locales/id-ID.json
- apps/web/src/features/i18n/locales/uk-UA.json
- apps/web/src/features/i18n/locales/uz-UZ.json
- apps/web/src/features/i18n/locales/yo-NG.json
- apps/web/src/features/i18n/locales/th-TH.json
- apps/web/src/features/i18n/locales/pl-PL.json
- apps/web/src/features/i18n/locales/fr-FR.json
🔇 Additional comments (44)
apps/web/src/features/i18n/locales/it-IT.json (5)
50-50: LGTM - New promoted labelThe translation for "promoted" → "promosso" is correct and appropriate for Italian.
1409-1409: LGTM - External wallets labelThe translation is correct. "Portafoglio" properly translates "Wallet" and the cryptocurrency symbols are appropriately preserved.
1540-1542: LGTM - HiveAuth error messagesThe new HiveAuth authentication error messages are well-translated and provide clear, helpful guidance to users. The Italian translations are grammatically correct and consistent with other error messages in the file.
2508-2508: LGTM - Improved error messageThe updated error message is clearer and more comprehensive than the previous version. It correctly handles both scenarios: when there's no claimable balance and when rewards have already been claimed.
3016-3016: LGTM - Improved savings transfer labelThe updated translation "Al Risparmio" is more concise and natural than the previous version. It correctly conveys "To Savings" in Italian.
apps/web/src/features/i18n/locales/nl-NL.json (4)
50-50: LGTM: Translation additionThe "promoted" translation is correctly added and consistent with the existing Dutch translations in this section.
448-453: LGTM: Tipping feature translations with proper pluralizationThe new entry-tip translations are well-structured with proper i18next pluralization support using
countandcount_pluralkeys. The{{count}}placeholder usage is consistent with the framework's expectations.
3016-3016: LGTM: Improved clarity and consistencyThe update from "Spaartegoedbon" (Savings voucher) to "Naar spaargeld" (To savings) improves clarity and better aligns with related translations in the file, such as the transfer-saving operations described elsewhere. This makes the wallet operations more intuitive for Dutch users.
1409-1409: Theexternal-wallets-labelkey in the locale files is not referenced anywhere in the codebase. No component uses this translation string, making the concerns about UI layout, text overflow, and mobile compatibility unfounded. The application only usesexternal-wallets-offerandexternal-wallets-signuprelated keys in its components.Likely an incorrect or invalid review comment.
apps/web/src/features/i18n/locales/ru-RU.json (3)
2143-2148: LGTM! Chat feature translations are accurate.The translations for chat message translation and pinning features are well-done:
- Proper use of Russian grammar and cases
- Consistent terminology with existing translations (закрепить/открепить used at lines 89-90)
- Natural and clear phrasing for Russian users
2508-2508: LGTM! Clear error message translation.The chain error message is accurately translated. The phrase "Нет залогового баланса или уже получено" clearly conveys both error conditions (no staked balance or already claimed) in proper Russian grammar.
3016-3016: LGTM! Improved label for transfer to savings.The update from "Сберегательный депозит" to "В сбережения" is an improvement:
- More concise and better suited for UI
- Action-oriented phrasing matches other operation labels
- Correct use of accusative case for destination
- Consistent with the transfer operation context
apps/web/src/features/i18n/locales/ja-JP.json (5)
50-50: LGTM: Translation for promoted contentThe translation "昇格しました" appropriately conveys the meaning of promoted or featured content.
1409-1409: LGTM: External wallets labelThe translation correctly describes supported cryptocurrency wallets with proper terminology.
1540-1542: LGTM: HiveAuth authentication translationsAll three HiveAuth-related translations are accurate and provide clear guidance to users for authentication and key error scenarios.
2143-2145: LGTM: Chat translation and pinning controls (excluding line 2146)The translations for no-message, translate, translate-target-language, pin-message, and unpin-message are all accurate and properly convey the intended functionality.
Also applies to: 2147-2148
2508-2508: LGTM: Error message and wallet operation labelBoth translations are grammatically correct:
- Line 2508: Properly conveys the claim balance error condition
- Line 3016: Correctly translates "transfer to savings" operation
Also applies to: 3016-3016
apps/web/src/features/i18n/locales/ur-PK.json (7)
50-50: New key added successfully, translation pending.The
g.promotedkey has been added with correct JSON structure. The value currently contains English placeholder text ("promoted") rather than Urdu translation, which is typical for Crowdin synchronization workflows where keys are added before translations are completed.
449-452: Tipping feature strings added, translations pending.The
entry-tipsection has been properly expanded with new keys for the tipping feature, including correct pluralization support (countandcount_plural). The JSON structure follows i18n best practices. All values currently contain English placeholder text pending Urdu translation.
1409-1409: External wallets label added appropriately.The
external-wallets-labelkey has been added with cryptocurrency ticker symbols (BTC, ETH, SOL, BNB, TRX, TON, APT). Keeping these internationally recognized technical abbreviations in English is standard practice across localization, as they are universally understood technical terms.
1540-1542: HiveAuth error messages added, translations pending.The
key-or-hotsection has been expanded with two new error message keys (invalid-keyandkey-error) for HiveAuth functionality. The keys are properly structured, though the error messages currently contain English placeholder text. These user-facing error messages should be translated to Urdu to maintain consistency with the locale.
2143-2148: Chat feature strings added, translations pending.The chat section has been expanded with new keys for translation features (
translate,translate-target-language) and message pinning functionality (pinned-messages,pin-message,unpin-message). The JSON structure is correct and properly nested. All values currently contain English placeholder text pending Urdu translation.
2508-2508: Chain error message updated, translation pending.The
chain-error.must-claimmessage has been updated to "No claiming balance or already claimed." This user-facing blockchain error message currently contains English placeholder text and should be translated to Urdu for consistency with the locale.
3016-3016: Wallet operation label improved, translation pending.The
transfer-savinglabel has been updated from "Savings Deposit" to the more concise "To Savings", which improves clarity in the UI. The label currently contains English placeholder text and should be translated to Urdu to align with the locale.apps/web/src/features/i18n/locales/pt-PT.json (5)
50-50: LGTM!The translation "promovido" is correct for the promoted filter option.
1409-1409: Verify singular vs. plural form.The translation uses "Carteira" (singular), but lists multiple cryptocurrencies. Consider whether "Carteiras" (plural) would be more appropriate depending on whether this refers to:
- One wallet supporting multiple currencies (singular is correct)
- Multiple individual wallets (plural would be correct)
Please verify the intended meaning in the UI context.
1540-1542: LGTM!The HiveAuth translations are accurate and natural Portuguese:
- Sign-in option properly translated
- Error messages are clear and user-friendly
2143-2148: LGTM!The chat translation and message pinning features are properly translated. All terms are accurate and consistent with Portuguese conventions.
2508-2508: LGTM!The error message translation accurately conveys both possible states (nothing to claim or already claimed).
apps/web/src/features/i18n/locales/sr-CS.json (4)
50-50: Translate "promoted" to Serbian.This issue was already flagged in a previous review. The value is in English but should be in Serbian for this locale file.
Likely an incorrect or invalid review comment.
1540-1542: Translate HiveAuth strings to Serbian.This issue was already flagged in a previous review. The three HiveAuth authentication strings remain in English but should be translated to Serbian for consistency.
Likely an incorrect or invalid review comment.
449-452: Translate tip-related strings to Serbian.This issue was already flagged in a previous review. All four strings in the
entry-tipsection remain in English but should be in Serbian.Likely an incorrect or invalid review comment.
2143-2148: Translate chat feature strings to Serbian.This issue was already flagged in a previous review. The six new chat-related strings for message translation and pinning remain in English but should be translated to Serbian.
Likely an incorrect or invalid review comment.
apps/web/src/features/i18n/locales/hi-IN.json (4)
1540-1542: HiveAuth key-error messages look correctly wiredNew HiveAuth-related strings (
with-hiveauth,invalid-key,key-error) are added underkey-or-hotwith no missing placeholders and clear English messaging. This matches how nearby login strings mix English and Hindi.
2143-2148: Chat “no-message” / pin / translate strings are consistent with existing chat EnglishThe newly added chat strings (
no-message,translate,translate-target-language,pinned-messages,pin-message,unpin-message) are in English, which is consistent with the rest of thechatsection in this locale (also largely English) and keep all keys and semantics intact. No functional issues from an i18n standpoint.
2508-2508: Updatedchain-error.must-claimmessage is acceptableThe new text
"No claiming balance or already claimed."is grammatically a bit awkward but is clear enough and aligns with English phrasing used for other chain errors in this file. Placeholders aren’t involved, so there’s no runtime risk.
3016-3016:profile-wallet.operations.transfer-savinglabel fits existing pattern
"transfer-saving": "To Savings"matches the short, English action labels used for other operations in the same block (e.g.,transfer,power-up,power-down). No placeholder or key issues here.apps/web/src/features/i18n/locales/zh-CN.json (4)
1410-1410:transfer.external-wallets-labellooks correctThe label
"external-wallets-label": "钱包 (BTC, ETH, SOL, BNB, TRX, TON, APT)"is clear, keeps all token tickers intact, and fits other wallet copy. No issues from an i18n or key-usage standpoint.
1540-1542: HiveAuth key error strings correctly added and localizedNew keys under
key-or-hot(with-hiveauth,invalid-key,key-error) are present, localized, and contain no placeholders, so they’re safe to use across contexts where this block is shown.
2508-2508: Updatedchain-error.must-claimtranslation looks fine
"must-claim": "没有索要余额或已经索要。"accurately reflects the intended message and doesn’t involve placeholders, so there’s no risk of interpolation issues.
3016-3016:profile-wallet.operations.transfer-savinglabel is consistent and descriptive
"transfer-saving": "储蓄账户"is a reasonable short label for the “to savings” operation in the wallet, and matches surrounding localized operation names. Keys are unchanged, so runtime lookups remain intact.apps/web/src/features/i18n/locales/lt-LT.json (1)
1-3086: Configure Crowdin export settings to skip untranslated strings or ensure translations are completed.This Lithuanian locale file contains multiple untranslated strings with English fallback text. By default, Crowdin exports untranslated/unapproved strings filled with the source language if "Skip untranslated strings" is not enabled in the export configuration.
To prevent untranslated English text from appearing to Lithuanian users, verify that either:
- "Skip untranslated strings" is enabled in your Crowdin project export settings (or
--skip-untranslated-stringsflag if using CLI/Actions)- Or the missing translations are completed and approved in Crowdin before this PR is merged
Affected sections with English-only strings:
g.promoted(line 50)entry-tipsection (lines 449–452)entry-menu.translate(line 476)transfer.external-wallets-label(line 1409)key-or-hotsection (lines 1540–1542)chatsection (multiple keys, lines 2143–2148)profile-wallet.operations(line 3016)apps/web/src/features/i18n/locales/es-ES.json (1)
50-50: LGTM! Translation updates look technically sound.These Crowdin translation updates add Spanish localization for new features including:
- Promoted content labels
- Tipping functionality with proper pluralization
- External wallet support
- HiveAuth error messages
- Chat translation and message pinning
All changes follow standard i18n patterns with:
- Correct JSON structure
- Proper placeholder variables ({{count}}, {{suffix}}, etc.)
- Standard pluralization patterns (count/count_plural)
- Valid HTML escaping where needed
Also applies to: 449-452, 1409-1409, 1540-1542, 1788-1788, 1969-1969, 2117-2117, 2132-2132, 2143-2148
apps/web/src/features/i18n/locales/de-DE.json (1)
50-50: LGTM! Translation quality is good.The German translations for the new and updated strings are grammatically correct and use appropriate terminology. The changes improve clarity and consistency across the application.
Also applies to: 1409-1409, 1541-1542, 2143-2148, 2508-2508, 3016-3016
| "title": "Tip", | ||
| "send-tip": "ヒントを送信", | ||
| "count": "{{count}} tip", | ||
| "count_plural": "{{count}} のヒント" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Incorrect tipping translations remain unfixed.
This segment still contains the same critical translation issues previously flagged:
- Line 449:
"title": "Tip"- Untranslated English text - Line 450: Uses "ヒント" (hint/clue) instead of "チップ" or "投げ銭" (monetary tip)
- Lines 451-452: Mix of untranslated English and incorrect Japanese terminology
The tipping feature is being misrepresented as a "hint" system rather than a monetary gratuity feature, which will confuse Japanese users.
🔎 Proposed fix
"entry-tip": {
- "title": "Tip",
- "send-tip": "ヒントを送信",
- "count": "{{count}} tip",
- "count_plural": "{{count}} のヒント"
+ "title": "チップ",
+ "send-tip": "チップを送る",
+ "count": "{{count}} チップ",
+ "count_plural": "{{count}} チップ"
},🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/ja-JP.json around lines 449 - 453,
Replace incorrect "hint" translations for the tipping feature: update the keys
"title", "send-tip", "count", and "count_plural" to use monetary tipping terms
(e.g., "チップ" or "投げ銭") rather than "ヒント"; specifically change "title" to "チップ"
or "投げ銭", "send-tip" to "チップを送る" or "投げ銭を送る", and make "count" and
"count_plural" use the same Japanese wording (e.g., "{{count}} チップ") since
Japanese does not require separate plural forms; ensure the JSON values for
"count" and "count_plural" are consistent and reflect monetary tipping
terminology.
| "title": "Чаевые", | ||
| "send-tip": "Подсказка", | ||
| "count": "{{count}} tip", | ||
| "count_plural": "{{count}} tips" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix incorrect and incomplete translations in entry-tip section.
Multiple translation issues identified:
-
Line 450: "Подсказка" is incorrect. This translates to "hint/clue", not "tip" (gratuity). Should be "Отправить чаевые" or "Дать чай".
-
Lines 451-452: English text left untranslated. The strings "{{count}} tip" and "{{count}} tips" should be fully translated to Russian with proper pluralization rules.
For Russian, proper ICU plural format should be used:
count: "{{count}} чаевые"count_plural: "{{count}} чаевых"
Or use Russian pluralization categories (one/few/many) if the framework supports it.
🔎 Proposed fix
"entry-tip": {
- "title": "Чаевые",
- "send-tip": "Подсказка",
- "count": "{{count}} tip",
- "count_plural": "{{count}} tips"
+ "title": "Чаевые",
+ "send-tip": "Отправить чаевые",
+ "count": "{{count}} чаевые",
+ "count_plural": "{{count}} чаевых"
},📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "title": "Чаевые", | |
| "send-tip": "Подсказка", | |
| "count": "{{count}} tip", | |
| "count_plural": "{{count}} tips" | |
| "title": "Чаевые", | |
| "send-tip": "Отправить чаевые", | |
| "count": "{{count}} чаевые", | |
| "count_plural": "{{count}} чаевых" |
🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/ru-RU.json around lines 449 - 452, The
"send-tip" and count strings in the locale entry are incorrect/unfinished:
replace the "send-tip" value with a proper Russian phrase like "Отправить
чаевые" (or "Дать чаевые"), and convert the "count" and "count_plural" entries
to proper Russian translations using ICU pluralization or explicit forms; update
"count" to a singular/one form such as "{{count}} чаевые" and provide correct
plural variants (e.g., use an ICU plural key like "{count, plural, one {{count}
чаевые} few {{count} чаевых} many {{count} чаевых} other {{count} чаевых}}" or
ensure "count_plural" is "{{count}} чаевых") so the UI shows grammatically
correct Russian for all counts (refer to keys "send-tip", "count",
"count_plural").
| "to-placeholder": "korisničko ime", | ||
| "to-not-found": "Korisnik kome želite poslati sredstva ne postoji!", | ||
| "to-bad-actor": "Budite oprezni pri slanju na ovaj račun. Molim, dodatno proverite slova zbog moguće prevare.", | ||
| "external-wallets-label": "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Translate "Wallet" to Serbian.
This issue was already flagged in a previous review. The word "Wallet" should be translated to Serbian (e.g., "Novčanik") while keeping the cryptocurrency ticker symbols unchanged.
🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/sr-CS.json at line 1409, Update the value
for the JSON key "external-wallets-label" to translate "Wallet" into Serbian
while leaving the cryptocurrency ticker symbols and surrounding punctuation
unchanged; replace "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)" with "Novčanik
(BTC, ETH, SOL, BNB, TRX, TON, APT)".
| "operations": { | ||
| "transfer": "Transfer", | ||
| "transfer-saving": "Savings Deposit", | ||
| "transfer-saving": "To Savings", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Translate "To Savings" to Serbian.
This is a Serbian locale file, but the value is in English. Serbian-speaking users will see English text instead of their language when viewing this wallet operation label.
Expected Serbian translation, for example: "U štednju" or "Na štednju".
🔎 Suggested fix
- "transfer-saving": "To Savings",
+ "transfer-saving": "U štednju",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "transfer-saving": "To Savings", | |
| "transfer-saving": "U štednju", |
🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/sr-CS.json at line 3016, The JSON key
"transfer-saving" currently has an English value ("To Savings"); update its
value to Serbian (e.g., "U štednju" or "Na štednju") so the Serbian locale
displays the translated wallet operation label; edit the value string for
"transfer-saving" in the sr-CS.json locale entry to the chosen Serbian
translation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
Note
Due to the large number of review comments, Critical severity comments were prioritized as inline comments.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
apps/web/src/features/i18n/locales/bg-BG.json (1)
1-3102: Coordinate with translation team for complete Bulgarian localization.This PR adds many new translation keys, but most are in English rather than Bulgarian. Since this is titled "New Crowdin updates," these strings may be pending translation. Consider:
- Ensuring all new keys are submitted to Crowdin for Bulgarian translation
- Holding this PR until translations are complete, or
- Merging with a follow-up PR planned for completed translations
The untranslated strings affect user-facing features including tags page, tipping, wallet operations, HiveAuth authentication, and chat functionality.
Based on learnings, Crowdin updates may sometimes include untranslated strings that are completed in subsequent syncs.
apps/web/src/features/i18n/locales/ja-JP.json (3)
486-486: Critical: Chinese text in Japanese locale file.Line 486 contains Chinese text "僅用於中文" (meaning "for Chinese use only") instead of a proper Japanese translation for "mute-success". This is a critical localization error.
🔎 Proposed fix
- "mute-success": "僅用於中文", + "mute-success": "投稿をミュートしました",
1752-1752: Critical: Chinese text mixed with Japanese.Line 1752 contains Chinese text "僅用於中文" (meaning "for Chinese use only") mixed with Japanese. This should be a proper Japanese translation for the tag limit warning.
🔎 Proposed fix
- "limited_tags": "僅用於中文 10 タグ、いくつか削除", + "limited_tags": "最大 10 タグまで。いくつか削除してください",
2140-2140: Critical: Chinese text in Japanese locale file.Line 2140 contains Chinese text "僅用於中文" (meaning "for Chinese use only") instead of a proper Japanese translation for "leave-channel".
🔎 Proposed fix
- "leave-channel": "僅用於中文", + "leave-channel": "チャンネルから退出",
🤖 Fix all issues with AI agents
In @apps/web/src/features/i18n/locales/ja-JP.json:
- Line 2162: The ja-JP locale contains Chinese text for the "pinned-messages"
key; open the locales/ja-JP.json, find the "pinned-messages" entry and replace
the Chinese string "僅用於中文" with an appropriate Japanese translation such as
"中国語のみ" (or another approved Japanese wording), then save and run localization
checks/CI to ensure no other locale keys are mismatched.
In @apps/web/src/features/i18n/locales/pt-PT.json:
- Line 423: The "loading" translation value is corrupted ("Carregandochar@@0");
update the pt-PT locale entry for the "loading" key in
apps/web/src/features/i18n/locales/pt-PT.json to the correct string
"Carregando..." so the UI shows a proper loading message; edit the JSON value
for the "loading" property (the "loading" key) to replace "Carregandochar@@0"
with "Carregando..." and ensure the file remains valid JSON (proper quotes and
comma placement).
🟠 Major comments (23)
apps/web/src/features/i18n/locales/id-ID.json-1425-1425 (1)
1425-1425: Missing Indonesian translation for "Wallet".The value uses English "Wallet" instead of Indonesian. Based on line 228 where "wallet" is translated as "Dompet", this should be:
"Dompet (BTC, ETH, SOL, BNB, TRX, TON, APT)"apps/web/src/features/i18n/locales/id-ID.json-2524-2524 (1)
2524-2524: Missing Indonesian translation for error message.The error message "No claiming balance or already claimed." is in English and should be translated to Indonesian.
apps/web/src/features/i18n/locales/id-ID.json-411-426 (1)
411-426: Entire section contains English text instead of Indonesian translations.The
tags-pagesection (lines 411-426) contains English strings like "Trending tags", "Discover the most active topics", "Tag", "Comments", etc. Since this is the Indonesian locale file (id-ID.json), all these values should be translated to Indonesian.apps/web/src/features/i18n/locales/id-ID.json-1556-1558 (1)
1556-1558: Missing Indonesian translations for HiveAuth error messages.All three new keys contain English text:
- "Sign with HiveAuth" (line 1556)
- "Invalid key format. Please check for invalid characters." (line 1557)
- "Failed to process the key. Please verify it is correct." (line 1558)
These user-facing error messages should be translated to Indonesian.
apps/web/src/features/i18n/locales/id-ID.json-50-50 (1)
50-50: Missing Indonesian translation.The value
"promoted"is in English. For an Indonesian locale file (id-ID), this should be translated to Indonesian (e.g., "dipromosikan" based on line 141).apps/web/src/features/i18n/locales/id-ID.json-3032-3032 (1)
3032-3032: Missing Indonesian translation for wallet operation.The value "To Savings" is in English. Based on line 1403 where "transfer-saving-title" is translated as "Transfer ke Tabungan", this should be translated to Indonesian (e.g., "Ke Tabungan").
apps/web/src/features/i18n/locales/id-ID.json-2159-2164 (1)
2159-2164: Missing Indonesian translations for chat features.The chat translation and message pinning features (lines 2159-2164) contain English strings:
- "No message content."
- "Translate"
- "Target language"
- "Pinned messages"
- "Pin message"
- "Unpin message"
All should be translated to Indonesian.
apps/web/src/features/i18n/locales/id-ID.json-465-468 (1)
465-468: Missing Indonesian translations for tip functionality.All values in the
entry-tipsection are in English:
- "Send a tip" (line 466)
- "{{count}} tip" (line 467)
- "{{count}} tips" (line 468)
These should be translated to Indonesian.
apps/web/src/features/i18n/locales/sr-CS.json-50-50 (1)
50-50: Translate "promoted" to Serbian.This issue was already flagged in a previous review. The value is still in English but should be in Serbian for this locale file. Based on line 141 where "filter-promoted" uses "Promovisano", the translation should be "promovisano".
apps/web/src/features/i18n/locales/sr-CS.json-465-468 (1)
465-468: Translate tip-related strings to Serbian.This issue was already flagged in a previous review. All four strings in the
entry-tipsection are still in English but should be in Serbian for this locale file.apps/web/src/features/i18n/locales/sr-CS.json-411-426 (1)
411-426: Translate tags-page section to Serbian.The entire
tags-pagesection (lines 411-426) contains English strings that need Serbian translation for this locale file.🔎 Suggested translations
"tags-page": { - "title": "Trending tags", - "description": "Discover the most active topics with their comment volume, top posts, and payouts.", - "error": "Unable to load trending tags right now.", + "title": "Popularne oznake", + "description": "Otkrijte najaktivnije teme sa brojem komentara, vrhunskim objavama i isplatama.", + "error": "Trenutno nije moguće učitati popularne oznake.", "columns": { - "tag": "Tag", - "comments": "Comments", - "top-posts": "Top posts", - "total-payouts": "Total payouts" + "tag": "Oznaka", + "comments": "Komentari", + "top-posts": "Vrhunske objave", + "total-payouts": "Ukupne isplate" }, "load-more": { - "cta": "Load more", - "loading": "Loading...", - "done": "No more tags" + "cta": "Učitaj još", + "loading": "Učitavanje...", + "done": "Nema više oznaka" } },apps/web/src/features/i18n/locales/sr-CS.json-2159-2164 (1)
2159-2164: Translate chat feature strings to Serbian.This issue was already flagged in a previous review. Six new chat-related strings for message translation and pinning are still in English but should be in Serbian.
apps/web/src/features/i18n/locales/uk-UA.json-467-468 (1)
467-468: Неперекладені англійські рядки в українському локалізаційному файліЗначення для
countтаcount_pluralзалишилися англійською мовою. Їх потрібно перекласти українською для узгодженості з рештою файлу.🌍 Запропонований переклад
- "count": "{{count}} tip", - "count_plural": "{{count}} tips" + "count": "{{count}} чайових", + "count_plural": "{{count}} чайових"apps/web/src/features/i18n/locales/uk-UA.json-2524-2524 (1)
2524-2524: Fix Ukrainian translation to match English meaningThe Ukrainian translation "Баланс або вже не видається." does not correspond to the English text "Pending rewards already claimed." The current Ukrainian translation literally means "Balance or is not shown," which is unclear and inaccurate.
Update to: "Очікувані винагороди вже отримані." (or similar translation that captures "Pending rewards already claimed")
apps/web/src/features/i18n/locales/pt-PT.json-3032-3032 (1)
3032-3032: Incorrect translation for wallet operation.The translation changed from "Depósito de Poupança" (Savings Deposit) to "Para economizar" (To economize), but this doesn't correctly represent a "transfer to savings" wallet operation.
In the context of wallet operations (transfer, power-up, delegate, etc.), "transfer-saving" should indicate moving funds to a savings account, not general economizing.
🔧 Proposed fix
"operations": { "transfer": "Transferência", - "transfer-saving": "Para economizar", + "transfer-saving": "Transferir para Poupança", "power-up": "Aumentar o Poder",Or alternatively: "Para Poupança" (To Savings)
apps/web/src/features/i18n/locales/bg-BG.json-411-426 (1)
411-426: Translate entire "tags-page" section to Bulgarian.All strings in this new section are in English. Since this is the Bulgarian locale file (bg-BG.json), all values should be translated to Bulgarian, including:
- title, description, error messages
- column labels (tag, comments, top-posts, total-payouts)
- load-more states (cta, loading, done)
apps/web/src/features/i18n/locales/bg-BG.json-50-50 (1)
50-50: Translate "promoted" to Bulgarian.This is a Bulgarian locale file, but the value is in English. This string should be translated to Bulgarian to maintain consistency with other translations in this section.
apps/web/src/features/i18n/locales/bg-BG.json-2524-2524 (1)
2524-2524: Translate blockchain error message to Bulgarian.The "must-claim" error message is in English: "No claiming balance or already claimed." This user-facing error message should be translated to Bulgarian.
apps/web/src/features/i18n/locales/bg-BG.json-3032-3032 (1)
3032-3032: Translate wallet operation label to Bulgarian.The "transfer-saving" label was updated to "To Savings" but remains in English. This should be translated to Bulgarian. Note that several other operation labels in this section (lines 3031-3045) also appear to be in English and may need translation as well.
apps/web/src/features/i18n/locales/bg-BG.json-1556-1558 (1)
1556-1558: Translate HiveAuth authentication strings to Bulgarian.Three new authentication-related strings are in English:
- "with-hiveauth": Button text for signing with HiveAuth
- "invalid-key": Error message for invalid key format
- "key-error": Error message for key processing failure
These should be translated to Bulgarian for proper localization of the authentication flow.
apps/web/src/features/i18n/locales/bg-BG.json-1425-1425 (1)
1425-1425: Translate "external-wallets-label" to Bulgarian.The label text "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)" should be translated to Bulgarian. While the currency codes can remain as-is (they are standard abbreviations), the word "Wallet" should be localized.
apps/web/src/features/i18n/locales/bg-BG.json-466-468 (1)
466-468: Translate new entry-tip keys to Bulgarian.The new keys "send-tip", "count", and "count_plural" are in English, while the existing "title" key in this section is properly translated to Bulgarian ("Бакшиш"). These new strings should also be translated for consistency.
apps/web/src/features/i18n/locales/bg-BG.json-2159-2164 (1)
2159-2164: Translate chat feature strings to Bulgarian.Six new chat-related strings are in English, including:
- Message content and translation options
- Pinned message functionality
Notably, the "translate" key itself is not translated, which is ironic given its purpose. All these strings should be localized to Bulgarian.
🟡 Minor comments (19)
apps/web/src/features/i18n/locales/tr-TR.json-50-50 (1)
50-50: Incomplete Turkish translation for new key.The value for
g.promotedis in English ("promoted") but should be translated to Turkish for the tr-TR locale. Turkish users will see English text for this feature.Consider translating to an appropriate Turkish equivalent (e.g.,
"sponsorlu"or"öne çıkarılan").apps/web/src/features/i18n/locales/tr-TR.json-411-426 (1)
411-426: Entiretags-pagesection requires Turkish translation.This newly added section contains 11 keys with English values that need Turkish translation:
title,description,error- Column labels:
tag,comments,top-posts,total-payouts- Load-more states:
cta,loading,doneTurkish users will see the tags page entirely in English until these strings are translated.
apps/web/src/features/i18n/locales/tr-TR.json-2524-2524 (1)
2524-2524: Updated strings remain in English instead of Turkish.Two existing keys have been updated with new English values that need Turkish translation:
- Line 2524:
chain-error.must-claimchanged to "No claiming balance or already claimed."- Line 3032:
wallet.operations.transfer-savingchanged to "To Savings"These user-facing error messages and operation labels should be translated to Turkish.
Also applies to: 3032-3032
apps/web/src/features/i18n/locales/tr-TR.json-465-468 (1)
465-468: Multiple new features lack Turkish translations.Several feature areas have been added with English strings that need Turkish translation:
Entry tipping (lines 465-468):
send-tip,count,count_pluralWallet transfers (line 1425):
external-wallets-label- "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)"HiveAuth authentication (lines 1556-1558):
with-hiveauth,invalid-key,key-errorChat features (lines 2159-2164):
no-message,translate,translate-target-language,pinned-messages,pin-message,unpin-messageTurkish users will encounter English text in these features until properly localized.
Also applies to: 1425-1425, 1556-1558, 2159-2164
apps/web/src/features/i18n/locales/uz-UZ.json-411-426 (1)
411-426: Complete "tags-page" section needs Uzbek translation.The entire newly added
tags-pagesection (lines 411-426) contains English strings such as "Trending tags", "Discover the most active topics...", "Tag", "Comments", "Top posts", "Total payouts", "Load more", "Loading...", and "No more tags". All of these should be translated to Uzbek for consistency with the rest of the uz-UZ locale file.apps/web/src/features/i18n/locales/uz-UZ.json-465-468 (1)
465-468: Tipping feature strings need Uzbek translation.The newly added tipping keys ("send-tip", "count", "count_plural") remain in English. These should be translated to Uzbek:
- "Send a tip" → Uzbek translation needed
- "{{count}} tip" / "{{count}} tips" → Uzbek translations needed (maintaining the
{{count}}placeholder)apps/web/src/features/i18n/locales/uz-UZ.json-3032-3032 (1)
3032-3032: Transfer to savings operation needs Uzbek translation.The "transfer-saving" operation label is in English ("To Savings") but should be translated to Uzbek for consistency with other wallet operation labels (e.g., line 3031 "transfer": "O'tkazma", line 3033 "power-up": "Power Up").
apps/web/src/features/i18n/locales/uz-UZ.json-50-50 (1)
50-50: Incomplete Uzbek translation for "promoted".The value remains in English ("promoted") but should be translated to Uzbek to maintain consistency with other translations in this locale file (e.g., line 48 "trending": "lenta", line 51 "muted": "bloklash").
apps/web/src/features/i18n/locales/uz-UZ.json-2159-2164 (1)
2159-2164: Chat translation and pinning features need Uzbek translation.The newly added chat functionality strings (lines 2159-2164) are all in English:
- "No message content."
- "Translate"
- "Target language"
- "Pinned messages"
- "Pin message"
- "Unpin message"
All of these should be translated to Uzbek to ensure a consistent user experience for Uzbek-speaking users.
apps/web/src/features/i18n/locales/uz-UZ.json-1425-1425 (1)
1425-1425: External wallet label needs Uzbek translation.The "external-wallets-label" value "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)" should have "Wallet" translated to Uzbek. The cryptocurrency ticker symbols (BTC, ETH, etc.) can remain as-is since they are internationally recognized standards.
apps/web/src/features/i18n/locales/uz-UZ.json-1556-1558 (1)
1556-1558: HiveAuth authentication strings need Uzbek translation.The newly added HiveAuth-related keys contain English error messages and labels:
- "Sign with HiveAuth" → translate "Sign with" to Uzbek (keep "HiveAuth" as proper name)
- "Invalid key format. Please check for invalid characters." → full Uzbek translation needed
- "Failed to process the key. Please verify it is correct." → full Uzbek translation needed
apps/web/src/features/i18n/locales/zh-CN.json-2159-2164 (1)
2159-2164: Minor inconsistency: Mixed Traditional and Simplified Chinese characters.The chat translation and pinning features are well-translated, but there's a character inconsistency:
- Line 2162:
pinned-messagesuses "置頂" (Traditional Chinese 頂)- Lines 2163-2164:
pin-messageandunpin-messageuse "置顶" (Simplified Chinese 顶)For consistency in a Simplified Chinese (zh-CN) locale, all should use "置顶".
🔧 Suggested fix for character consistency
- "pinned-messages": "置頂消息", + "pinned-messages": "置顶消息",apps/web/src/features/i18n/locales/uk-UA.json-413-413 (1)
413-413: Неточний переклад слова "volume"У описі використано слово "гучністю", що буквально означає "голосність" або "гучність звуку". У контексті активності тегів краще використати "обсягом" або "активністю".
💬 Запропонований переклад
- "description": "Відкрийте для себе найбільш активні теми з їх гучністю, коментарями, головними повідомленнями та виплатами.", + "description": "Відкрийте для себе найбільш активні теми з їх обсягом, коментарями, головними повідомленнями та виплатами.",або
- "description": "Відкрийте для себе найбільш активні теми з їх гучністю, коментарями, головними повідомленнями та виплатами.", + "description": "Відкрийте для себе найбільш активні теми з їх активністю, коментарями, головними повідомленнями та виплатами.",apps/web/src/features/i18n/locales/pl-PL.json-465-468 (1)
465-468: Fix incomplete Polish translations in entry-tip section.Two translation issues found:
Line 467: The singular form
"count": "{{count}} tip"contains untranslated English text "tip" while the plural form on line 468 is properly translated as "Porady {{count}}".Line 466:
"Wyślij napiwk"appears to be missing the final letter - should likely be"Wyślij napiwek".🌐 Proposed translation fixes
"title": "Napiwek", - "send-tip": "Wyślij napiwk", - "count": "{{count}} tip", + "send-tip": "Wyślij napiwek", + "count": "{{count}} napiwek", "count_plural": "Porady {{count}}"apps/web/src/features/i18n/locales/pt-PT.json-467-468 (1)
467-468: The translation issues from the previous review were not fixed.The same two problems remain:
- Line 467: Still contains untranslated English text "tip". This must be translated to Portuguese: "dica"
- Line 468: The word order "Dicas de {{count}}" remains unnatural in Portuguese. It should follow the pattern "{{count}} dicas"
🔧 Proposed fix
"entry-tip": { "title": "Dica", "send-tip": "Enviar uma dica", - "count": "{{count}} tip", - "count_plural": "Dicas de {{count}}" + "count": "{{count}} dica", + "count_plural": "{{count}} dicas" }apps/web/src/features/i18n/locales/de-DE.json-1556-1558 (1)
1556-1558: Tippfehler und kleinere Grammatikverbesserung in HiveAuth-Übersetzungen.Zeile 1556: Tippfehler - "HiveAuh" sollte "HiveAuth" sein.
Zeile 1557: Die Formulierung könnte verbessert werden. "Bitte überprüfen Sie ungültige Zeichen" sollte besser "Bitte überprüfen Sie auf ungültige Zeichen" lauten.
🔧 Vorgeschlagene Korrekturen
- "with-hiveauth": "Mit HiveAuh signieren", - "invalid-key": "Ungültiges Schlüsselformat. Bitte überprüfen Sie ungültige Zeichen.", + "with-hiveauth": "Mit HiveAuth signieren", + "invalid-key": "Ungültiges Schlüsselformat. Bitte überprüfen Sie auf ungültige Zeichen.", "key-error": "Fehler bei der Verarbeitung des Schlüssels. Bitte überprüfen Sie, ob er korrekt ist."apps/web/src/features/i18n/locales/de-DE.json-465-468 (1)
465-468: Inkonsistente und fehlende Übersetzung im entry-tip Abschnitt.Es gibt zwei Probleme:
Zeile 467: Enthält englischen Text
"{{count}} tip"statt deutscher Übersetzung. Dies sollte"{{count}} Tipp"sein, um mit der Pluralform in Zeile 468 übereinzustimmen.Zeile 465: Die Übersetzung "Hinweis" (note/hint) scheint nicht zum Kontext von Trinkgeld/Tipping zu passen. In Zeile 466 wird korrekt "Tipp" verwendet. Erwägen Sie, Zeile 465 auf "Trinkgeld" oder "Tipp" zu ändern, um konsistent zu sein.
🔧 Vorgeschlagene Korrekturen
"entry-tip": { - "title": "Hinweis", + "title": "Trinkgeld", "send-tip": "Tipp senden", - "count": "{{count}} tip", + "count": "{{count}} Tipp", "count_plural": "{{count}} Tipps" },apps/web/src/features/i18n/locales/es-ES.json-411-426 (1)
411-426: Translate "top-posts" to Spanish for consistency.The new
tags-pagesection looks good overall, but line 418 contains English text in a Spanish locale file:"top-posts": "Top posts",This should be translated to Spanish. Consider:
- "Posts principales"
- "Mejores posts"
- "Posts destacados"
🌐 Suggested translation fix
- "top-posts": "Top posts", + "top-posts": "Posts principales",apps/web/src/features/i18n/locales/es-ES.json-1985-1985 (1)
1985-1985: Fix grammar error in proposal creation description.Line 1985 contains a grammatical error in the Spanish text:
"asegúrate de hacer una publicar en Hive"
This mixes verb forms incorrectly. It should be either:
- "hacer una publicación" (make a post)
- Simply "publicar" (to post)
📝 Proposed grammar fix
- "description": "<p>Antes de enviar una propuesta, asegúrate de hacer una publicar en Hive que explique el alcance del trabajo y enlazarla a la propuesta. Crear una propuesta cuesta <strong>10 HBD</strong> más <strong>1 HBD</strong> por cada día más allá de los 60 días.</p>", + "description": "<p>Antes de enviar una propuesta, asegúrate de hacer una publicación en Hive que explique el alcance del trabajo y enlazarla a la propuesta. Crear una propuesta cuesta <strong>10 HBD</strong> más <strong>1 HBD</strong> por cada día más allá de los 60 días.</p>",
🧹 Nitpick comments (16)
apps/web/src/features/i18n/locales/lt-LT.json (9)
50-50: Consider translating "promoted" to Lithuanian.The value for
g.promotedis currently in English. Since this is the Lithuanian locale file (lt-LT), consider providing a Lithuanian translation. For example, "reklamuojama" or "paremta" (similar to the existing translation at line 431 for "promoted").Suggested translation
- "promoted": "promoted", + "promoted": "reklamuojama",
411-426: Translate tags-page section to Lithuanian.The entire
tags-pagesection (lines 411-426) contains English text. Since this is the Lithuanian locale file, these strings should be translated to provide a consistent user experience for Lithuanian-speaking users.Note: As this PR comes from Crowdin, these may be placeholder texts awaiting translation through the translation workflow.
466-468: Complete Lithuanian translations for entry-tip keys.The
entry-tip.titleis translated to Lithuanian ("Arbatpinigiai"), but the newly added keyssend-tip,count, andcount_pluralremain in English. Consider completing these translations for consistency.
1425-1425: Consider partial translation of external-wallets-label.The word "Wallet" could be translated to Lithuanian "Piniginė" (as used elsewhere in the file, e.g., line 228), while keeping the crypto ticker symbols unchanged:
Suggested translation
- "external-wallets-label": "Wallet (BTC, ETH, SOL, BNB, TRX, TON, APT)", + "external-wallets-label": "Piniginė (BTC, ETH, SOL, BNB, TRX, TON, APT)",
2524-2524: Translate chain-error.must-claim to Lithuanian.This error message is displayed in English. Consider translating it to Lithuanian for better user experience. For example: "Nėra atsiimamo balanso arba jau atsiimta."
3032-3032: Translate transfer-saving operation label to Lithuanian.The label "To Savings" should be translated to Lithuanian for consistency. A similar translation exists at line 1402: "Pervesti į Santaupas" which could be adapted here.
Suggested translation
- "transfer-saving": "To Savings", + "transfer-saving": "Į Santaupas",
2160-2164: Translate chat message-related keys to Lithuanian.The newly added chat keys (
no-message,translate,translate-target-language,pinned-messages,pin-message,unpin-message) are all in English. Consider translating these to Lithuanian for a consistent user experience in the chat feature.
489-489: Translate entry-menu.translate to Lithuanian.The
translatekey is in English while the surrounding keyspromote("Reklamuok") andboost("Paspartinti") are properly translated to Lithuanian. Consider translating this for consistency, e.g., "Versti" or "Išversti".
1556-1558: Translate HiveAuth authentication messages to Lithuanian.The new HiveAuth-related keys (
with-hiveauth,invalid-key,key-error) are in English. Since these are authentication-related messages that users will see during the login process, translating them to Lithuanian would improve the user experience.apps/web/src/features/i18n/locales/ur-PK.json (1)
1-3102: Translation file updates look structurally correct.All the i18n key additions and updates in this locale file are structurally sound and properly formatted. The changes align with the PR objectives for Crowdin translation updates.
Note: This file is designated for Urdu (Pakistan) locale (
ur-PK), but most translations remain in English. This is likely part of the translation workflow where keys are added first and translated progressively through Crowdin. If complete Urdu translations are expected, you may want to verify the translation status in Crowdin.apps/web/src/features/i18n/locales/ru-RU.json (2)
50-50: Consider consistency with existing "promoted" translations.This file uses different Russian translations for "promoted" in different contexts:
- Line 50:
"продвигается"(present tense verb)- Line 141:
"Рекламируется"(advertised)- Line 431:
"Продвинуто"(past tense)While context may justify some variation, ensure the translation here fits the intended UI context where it will appear.
1557-1558: Consider more specific wording for key-error message.While both error messages are understandable, line 1558's "проверьте правильность" (check correctness) could be more specific. Consider: "Пожалуйста, проверьте, что ключ введён правильно" (please check that the key is entered correctly) for better user guidance.
apps/web/src/features/i18n/locales/pt-PT.json (2)
1425-1425: Consider making the translation more descriptive.The key
external-wallets-labelsuggests "External Wallets", but the translation "Carteira (BTC, ETH, SOL, BNB, TRX, TON, APT)" only says "Carteira" (Wallet), missing the "external" qualifier. This could be confusing in context where both internal and external wallets exist.Consider: "Carteira Externa (BTC, ETH, SOL, BNB, TRX, TON, APT)" or "Carteiras Externas (BTC, ETH, SOL, BNB, TRX, TON, APT)"
2524-2524: Clarify contradictory error message.The translation "Nenhum saldo reivindicado ou já reivindicado" (No balance claimed or already claimed) is contradictory. It should clearly indicate one condition: either there's nothing available to claim, or it has already been claimed.
Consider: "Nenhum saldo disponível para reivindicar" (No balance available to claim) or "Saldo já reivindicado" (Balance already claimed)
apps/web/src/features/i18n/locales/de-DE.json (1)
2524-2524: Verbesserungsvorschlag für chain-error.must-claim Formulierung.Die Formulierung "Kein beanspruchender Saldo" ist grammatikalisch ungewöhnlich im Deutschen. Eine natürlichere Formulierung wäre "Kein zu beanspruchender Saldo" oder "Kein beanspruchbarer Saldo".
💡 Vorgeschlagene Verbesserung
- "must-claim": "Kein beanspruchender Saldo oder bereits beansprucht.", + "must-claim": "Kein zu beanspruchender Saldo oder bereits beansprucht.",Alternativ:
- "must-claim": "Kein beanspruchender Saldo oder bereits beansprucht.", + "must-claim": "Kein beanspruchbarer Saldo oder bereits beansprucht.",apps/web/src/features/i18n/locales/es-ES.json (1)
465-468: Consider consistency in "tip" translation.There's a terminology inconsistency in the tip feature translations:
- Line 465:
"title": "Sugerencia"(means "suggestion/hint")- Line 466:
"send-tip": "Enviar una propina"(correctly means "send a tip/gratuity")Since this appears to be a financial tipping feature (based on context), consider using "Propina" consistently throughout this section for clarity.
♻️ Suggested consistency improvement
- "title": "Sugerencia", + "title": "Propina", "send-tip": "Enviar una propina",
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (23)
apps/web/src/features/i18n/locales/ac-ace.jsonapps/web/src/features/i18n/locales/bg-BG.jsonapps/web/src/features/i18n/locales/de-DE.jsonapps/web/src/features/i18n/locales/es-ES.jsonapps/web/src/features/i18n/locales/fr-FR.jsonapps/web/src/features/i18n/locales/hi-IN.jsonapps/web/src/features/i18n/locales/id-ID.jsonapps/web/src/features/i18n/locales/it-IT.jsonapps/web/src/features/i18n/locales/ja-JP.jsonapps/web/src/features/i18n/locales/lt-LT.jsonapps/web/src/features/i18n/locales/nl-NL.jsonapps/web/src/features/i18n/locales/pcm-NG.jsonapps/web/src/features/i18n/locales/pl-PL.jsonapps/web/src/features/i18n/locales/pt-PT.jsonapps/web/src/features/i18n/locales/ru-RU.jsonapps/web/src/features/i18n/locales/sr-CS.jsonapps/web/src/features/i18n/locales/th-TH.jsonapps/web/src/features/i18n/locales/tr-TR.jsonapps/web/src/features/i18n/locales/uk-UA.jsonapps/web/src/features/i18n/locales/ur-PK.jsonapps/web/src/features/i18n/locales/uz-UZ.jsonapps/web/src/features/i18n/locales/yo-NG.jsonapps/web/src/features/i18n/locales/zh-CN.json
🚧 Files skipped from review as they are similar to previous changes (3)
- apps/web/src/features/i18n/locales/hi-IN.json
- apps/web/src/features/i18n/locales/nl-NL.json
- apps/web/src/features/i18n/locales/it-IT.json
🔇 Additional comments (78)
apps/web/src/features/i18n/locales/tr-TR.json (1)
1-3102: Translation workflow consideration.This PR appears to be an automated sync from Crowdin with incomplete Turkish translations. While it's common for translation management systems to add keys in the base language first, consider:
- Before merging: Verify with the localization team whether Turkish translations are pending or if this intermediate state is intentional.
- User impact: Turkish locale users will see English text for all new/updated features until translations are completed.
- Tracking: If merging incomplete translations, ensure there's a follow-up task or issue to complete the Turkish translations.
Based on learnings: Translation PRs from Crowdin often require review by language maintainers before merging to production.
apps/web/src/features/i18n/locales/sr-CS.json (3)
1425-1425: Translate "Wallet" to Serbian.This issue was already flagged in a previous review. The word "Wallet" should be translated to Serbian (e.g., "Novčanik") while keeping the cryptocurrency ticker symbols unchanged.
Likely an incorrect or invalid review comment.
3032-3032: Translate "To Savings" to Serbian.This issue was already flagged in a previous review. The value is still in English but should be in Serbian (e.g., "U štednju" or "Na štednju") for this locale file.
Likely an incorrect or invalid review comment.
1556-1558: Translate HiveAuth strings to Serbian.This issue was already flagged in a previous review. Three HiveAuth authentication strings are still in English but should be in Serbian for consistency with the rest of the file.
Likely an incorrect or invalid review comment.
apps/web/src/features/i18n/locales/ur-PK.json (8)
50-50: LGTM - New translation key added.The new
g.promotedkey has been added correctly to support promoted content labeling throughout the application.
411-426: LGTM - Tags page translations added.The new
tags-pagesection provides all necessary translation keys for the trending tags page feature, including table columns and pagination controls. The structure is well-organized with proper nesting.
465-468: LGTM - Tipping feature translations expanded.The
entry-tipsection has been properly expanded with pluralization support (countandcount_plural) for displaying tip counts, following standard i18n conventions.
1425-1425: LGTM - External wallets label added.The
external-wallets-labelkey has been added to support the display of compatible external wallet types in transfer operations.
1556-1558: LGTM - HiveAuth error messages added.New error handling keys have been added to provide clear feedback when key validation fails, distinguishing between format errors and processing errors.
2159-2164: LGTM - Chat feature translations added.The chat section has been expanded with translation keys for message translation functionality and message pinning features, enabling these capabilities in the chat interface.
2524-2524: LGTM - Error message improved.The
must-claimerror message has been updated to more accurately describe the claim failure scenarios, improving clarity for users.
3032-3032: LGTM - Operation label simplified.The
transfer-savinglabel has been simplified to "To Savings" for better conciseness while maintaining clarity.apps/web/src/features/i18n/locales/zh-CN.json (7)
50-50: LGTM! Translation addition looks good.The new
promotedkey under the global namespace with translation "已升级" is properly placed and follows the existing structure.
411-426: LGTM! New tags page section properly structured.The new
tags-pagesection is well-organized with appropriate nested objects for columns and load-more states. All translations appear contextually correct for a tags discovery page.
465-468: LGTM! Tipping feature translations properly implemented.The expanded
entry-tipsection correctly implements pluralization withcountandcount_pluralkeys, preserving the{{count}}template variable as expected.
1425-1425: LGTM! External wallets label is clear and comprehensive.The
external-wallets-labelappropriately lists supported cryptocurrency wallets with preserved ticker symbols, making it easy for users to identify wallet options.
1557-1558: LGTM! HiveAuth error messages provide clear user guidance.The new
invalid-keyandkey-errormessages offer actionable feedback for authentication failures, helping users understand and resolve key-related issues.
2524-2524: LGTM! Improved error message clarity.The updated
must-claimerror message "没有索要余额或已经索要。" is clearer than the previous version, properly conveying that there's either no balance to claim or it has already been claimed.
3032-3032: LGTM! More accurate wallet terminology.Changing
transfer-savingfrom "储蓄存款" (savings deposit) to "储蓄账户" (savings account) uses more accurate and standard terminology for wallet operations.apps/web/src/features/i18n/locales/ru-RU.json (6)
411-426: LGTM!The new
tags-pagetranslations are complete and properly structured. All keys including columns and load-more states are appropriately translated into Russian.
1425-1425: Translation looks appropriate.The external wallets label correctly translates to "Кошелёк" (Wallet) with the cryptocurrency list in parentheses. The singular form is appropriate for a field label.
2159-2164: LGTM!All new chat-related translations are accurate and properly translated into Russian. The terminology is consistent and appropriate for chat messaging features.
2524-2524: Improved error message translation.The updated translation better reflects the actual blockchain error condition, distinguishing between "no vesting balance" and "already claimed" scenarios, which is more informative for users.
3032-3032: More appropriate action-oriented label.The change from "Сберегательный депозит" (Savings deposit) to "В сбережения" (To savings) better fits the context of an action/operation label, making it clearer this is a transfer action.
465-468: Fix incorrect and incomplete translations in entry-tip section (still present).The previously reported translation issues in this section remain unresolved:
Line 466: "Подсказка" is incorrect — this means "hint/clue", not "tip" (gratuity). Should be "Отправить чаевые" or "Дать чаевые".
Lines 467-468: The count strings remain in English and need full Russian translation with proper ICU pluralization.
Likely an incorrect or invalid review comment.
apps/web/src/features/i18n/locales/uk-UA.json (1)
1425-1425: Дублікат раніше зафіксованої проблеми: англійське слово "Wallet" потребує перекладуЦе питання вже було відзначено в попередніх коментарях до огляду. Англійське слово "Wallet" слід перекласти українською як "Гаманець" для узгодженості з рештою файлу локалізації (наприклад, рядки 228, 1051, 2431).
Likely an incorrect or invalid review comment.
apps/web/src/features/i18n/locales/pcm-NG.json (8)
50-50: LGTM! New global promoted label added.The new
promotedkey is correctly placed in the global strings section and follows the existing pattern where some UI labels remain in English.
411-426: LGTM! Complete tags-page feature localization added.The new
tags-pagesection is well-structured with appropriate keys for the trending tags feature including titles, descriptions, table columns, and pagination states.
465-468: LGTM! Tipping feature strings with proper pluralization.The entry-tip section is correctly extended with
send-tip,count, andcount_pluralkeys. Pluralization follows i18n best practices.
2159-2164: LGTM! Chat translation and pinning features added.New keys support message translation and pinning functionality in the chat interface. All strings are clear and appropriately named.
1425-1425: LGTM! External wallet support label added.The new
external-wallets-labelappropriately lists supported cryptocurrencies. Keeping crypto ticker symbols untranslated is correct practice.
1556-1558: LGTM! HiveAuth authentication support added.New HiveAuth signing option and associated error messages are properly integrated alongside existing authentication methods (HiveSigner, Keychain).
2524-2524: LGTM! Improved error message clarity.The updated
must-claimmessage now covers both scenarios: no available balance and already claimed rewards. This provides better user feedback.
3032-3032: LGTM! Simplified transfer label.The updated label "To Savings" is more concise and action-oriented than "Savings Deposit", making the transfer operation clearer to users.
apps/web/src/features/i18n/locales/pl-PL.json (7)
50-50: LGTM - Translation addition looks correct.The Polish translation "promowane" for the promoted filter is appropriate and consistent with other usages in the file (e.g., line 431).
411-426: LGTM - New tags page section properly translated.The new
tags-pagesection is well-structured with appropriate Polish translations for all keys including the nestedcolumnsandload-moresubsections. The translations are clear and follow consistent terminology.
1425-1425: LGTM - External wallet label translation is correct.The translation "Portfel" for wallet is appropriate, and cryptocurrency ticker symbols are correctly left untranslated as they are standard international identifiers.
1556-1558: LGTM - HiveAuth error messages properly translated.The new HiveAuth error keys are well-translated with clear, user-friendly Polish messages that appropriately convey invalid key format and key processing failures.
2159-2164: LGTM - Chat translation and pinning features properly localized.All new chat-related keys are correctly translated with appropriate Polish terminology for translation features and message pinning/unpinning actions. The translations are consistent with similar UI patterns throughout the file.
2524-2524: LGTM - Chain error message updated with generic phrasing.The updated
must-claimerror message uses appropriate generic Polish wording that aligns with the coordinated update across multiple locales mentioned in the PR summary.
3032-3032: LGTM - Transfer-saving label appropriately shortened.The simplified label "Oszczędności" (Savings) is a cleaner, more concise translation that aligns with the standardization effort across locales described in the PR summary.
apps/web/src/features/i18n/locales/yo-NG.json (8)
50-50: LGTM! New translation key added correctly.The
g.promotedkey follows the existing pattern for feed filter labels and is properly placed within the global namespace.
411-426: LGTM! Well-structured translation section.The new
tags-pagesection is properly organized with clear hierarchical keys for page content, table columns, and load-more states. The structure follows i18n best practices.
464-469: LGTM! Correct pluralization pattern.The
entry-tipsection now includes proper pluralization keys (count/count_plural) following standard i18n conventions. The interpolation syntax{{count}}is correctly formatted.
1425-1425: LGTM! Informative wallet types label.The
external-wallets-labelclearly lists supported cryptocurrency wallet types and is appropriately positioned within the transfer section.
1556-1558: LGTM! Clear authentication and error messages.The new HiveAuth signing option and error message keys provide good user feedback. The distinction between format validation (
invalid-key) and processing errors (key-error) helps users understand different failure modes.
2159-2164: LGTM! Chat features expanded appropriately.New keys for message translation and pinning functionality are clearly named and logically organized within the
entry-chatsection. These additions support the new chat features mentioned in the summary.
2524-2524: LGTM! Improved error message clarity.The updated
must-claimmessage better explains the two possible reasons for claim failure: no available balance or already claimed. This is more informative than the previous wording.
3032-3032: LGTM! More concise operation label.The simplified
transfer-savinglabel "To Savings" is more concise and consistent with the adjacent operation labels while clearly indicating the transfer direction.apps/web/src/features/i18n/locales/ac-ace.json (8)
50-50: LGTM! New translation key added correctly.The new
g.promotedkey has been added consistently with the existing feed-type translation keys in this section.
411-426: LGTM! New tags page section structured correctly.The new
tags-pagesection follows the established pattern for feature-specific translation groups, with properly nested keys for UI elements, columns, and loading states.
465-468: LGTM! Tip-related translations added with proper pluralization.The new keys in the
entry-tipsection include proper pluralization support (countandcount_plural) which is the correct pattern for handling singular/plural forms in i18n.
1425-1425: LGTM! External wallets label added.The new
external-wallets-labelkey appropriately lists the supported cryptocurrency wallets for the transfer functionality.
1557-1558: LGTM! HiveAuth error messages added.The new
invalid-keyandkey-errorkeys provide appropriate error feedback for key validation in the HiveAuth flow.
2159-2164: LGTM! Chat feature translations added.The new keys provide localization for chat message translation and pinning features, expanding the chat functionality with proper i18n support.
2524-2524: LGTM! Improved error message clarity.The updated
must-claimmessage now more accurately describes the error condition by covering both scenarios: no claimable balance or already claimed rewards.
3032-3032: LGTM! Wallet operation label updated.The
transfer-savinglabel has been updated to "To Savings" which provides clearer context for the wallet operation.apps/web/src/features/i18n/locales/fr-FR.json (9)
50-50: LGTM! New translation key added.The addition of
"promoted": "promu"is appropriate for the global strings section and aligns with the PR's objective of adding new i18n keys.
411-426: LGTM! Tags page translations added.The new
tags-pagesection provides comprehensive French translations for the trending tags feature, including proper structure for nested keys (columns and load-more sub-sections). The translations follow existing patterns in the file.
465-468: LGTM! Tipping feature translations added.The extended
entry-tipsection includes proper pluralization keys and correctly uses the{{count}}placeholder variable. This follows i18n best practices for handling plural forms.
1425-1425: LGTM! External wallet label added.The
external-wallets-labelkey appropriately lists supported external cryptocurrency wallets. This helps users identify when they're transferring to external wallet addresses.
1556-1558: LGTM! Authentication error messages added.The new
invalid-keyandkey-errormessages provide clear, actionable feedback for users encountering key validation issues during HiveAuth authentication. The messages appropriately guide users to check for invalid characters and verify their keys.
2159-2164: LGTM! Chat translation and pinning features added.The new chat keys provide French translations for:
- Message translation functionality with target language selection
- Message pinning/unpinning capabilities
- Empty message state handling
These additions align with the PR's objective of enhancing chat features.
2524-2524: LGTM! Error message translation improved.The updated
must-claimerror message changes from "Récompenses en attente déjà réclamées" to "Aucun solde réclamé ou déjà réclamé", which appears to provide clearer feedback to users about the claim status. This is a translation refinement that improves user experience.
3032-3032: LGTM! Wallet operation label simplified.The updated
transfer-savinglabel changes from "Dépôt d'épargne" to "Épargner", providing a more concise and action-oriented label that better aligns with other operation labels in the wallet section.
1-3102: Overall assessment: Translation updates look good!This PR successfully adds and updates French translations for several new features:
- Trending tags page (lines 411-426)
- Tipping functionality (lines 465-468)
- External crypto wallets support (line 1425)
- HiveAuth error handling (lines 1556-1558)
- Chat translation and message pinning (lines 2159-2164)
The JSON structure is valid, placeholder variables are correctly preserved, and key naming follows existing conventions. All changes align with the AI-generated summary.
Note: While the technical implementation is correct, ideally a native French speaker should review the translation quality to ensure accuracy and natural phrasing.
apps/web/src/features/i18n/locales/th-TH.json (1)
1-3102: LGTM! Localization update looks good.This Crowdin translation update for Thai (th-TH) adds and updates i18n strings consistently with the broader PR changes. The JSON structure is valid, placeholder variables ({{n}}, {{count}}, etc.) follow standard patterns, and the new keys align with feature additions mentioned in the AI summary:
g.promotedfor promoted content labelstags-pagesection with pagination and column headersentry-tipexpansion for tipping UIexternal-wallets-labellisting supported crypto walletskey-or-hoterror keys for HiveAuth key validationchattranslation and pinning features- Updated error messages and wallet operation labels
apps/web/src/features/i18n/locales/es-ES.json (6)
50-50: LGTM! Translation is accurate.The translation "promocionado" for "promoted" is grammatically correct and stylistically consistent with other UI labels in this section.
1425-1425: LGTM! Wallet label translation is correct.The translation "Cartera (BTC, ETH, SOL, BNB, TRX, TON, APT)" appropriately uses the Spanish word for wallet while preserving the cryptocurrency ticker symbols.
1556-1558: LGTM! HiveAuth key error translations are clear.The new HiveAuth-related error messages are well-translated:
- "Firmar con HiveAuth" (Sign with HiveAuth) ✓
- Error messages use appropriate formal register consistent with the rest of the application
- Grammar and punctuation are correct
1804-1804: LGTM! Monthly posts notification translation is excellent.The translation properly handles pluralization with the
{{suffix}}variable and uses natural, encouraging Spanish phrasing ("¡Sigue así!").
2133-2133: LGTM! Chat status translations use appropriate ongoing action forms.Both translations correctly use Spanish gerund forms with ellipsis:
- "Marcando…" (Marking as read)
- "Uniéndose…" (Joining channel)
These are natural and clear status indicators for ongoing actions.
Also applies to: 2148-2148
2159-2164: LGTM! Chat translation and pinning features are well-translated.All new chat feature translations are accurate and consistent:
- Translation controls use clear, concise Spanish
- Pin/unpin terminology matches existing usage in the file (lines 89-90)
- "Idioma destino" is a natural, commonly-used phrase for "target language"
apps/web/src/features/i18n/locales/ja-JP.json (5)
50-50: LGTM: New promoted label added.The Japanese translation "昇格しました" for the promoted label is appropriate and grammatically correct.
411-426: LGTM: Tags page translations added.The new
tags-pageblock with Japanese translations for title, description, columns, and load-more states appears well-structured and contextually appropriate.
1425-1425: LGTM: External wallets and HiveAuth keys added.The new translations for external wallet labels and HiveAuth-related error messages are contextually appropriate and grammatically correct in Japanese.
Also applies to: 1556-1558
2159-2161: LGTM: Chat translation and pinning features added.The Japanese translations for the new chat translation and message pinning features (lines 2159-2161, 2163-2164) are appropriate and grammatically correct.
Also applies to: 2163-2164
2524-2524: LGTM: Updated translations for error messages and transfers.The updated translations at lines 2524 (
must-claim) and 3032 (transfer-saving) are contextually appropriate and grammatically correct in Japanese.Also applies to: 3032-3032
| "entry-tip": { | ||
| "title": "Tip" | ||
| "title": "Tip", | ||
| "send-tip": "ヒントを送信", | ||
| "count": "{{count}} tip", | ||
| "count_plural": "{{count}} のヒント" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Incorrect tipping translations remain unfixed.
This segment still contains the same critical translation issues previously flagged:
- Line 465:
"title": "Tip"- Untranslated English text - Line 466: Uses "ヒント" (hint/clue) instead of "チップ" or "投げ銭" (monetary tip)
- Lines 467-468: Mix of untranslated English and incorrect Japanese terminology using "ヒント"
The tipping feature is being misrepresented as a "hint" system rather than a monetary gratuity feature, which will confuse Japanese users.
🔎 Proposed fix
"entry-tip": {
- "title": "Tip",
- "send-tip": "ヒントを送信",
- "count": "{{count}} tip",
- "count_plural": "{{count}} のヒント"
+ "title": "チップ",
+ "send-tip": "チップを送る",
+ "count": "{{count}} チップ",
+ "count_plural": "{{count}} チップ"
},📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "entry-tip": { | |
| "title": "Tip" | |
| "title": "Tip", | |
| "send-tip": "ヒントを送信", | |
| "count": "{{count}} tip", | |
| "count_plural": "{{count}} のヒント" | |
| }, | |
| "entry-tip": { | |
| "title": "チップ", | |
| "send-tip": "チップを送る", | |
| "count": "{{count}} チップ", | |
| "count_plural": "{{count}} チップ" | |
| }, |
| "no-message": "メッセージの内容がありません。", | ||
| "translate": "翻訳する", | ||
| "translate-target-language": "翻訳先の言語", | ||
| "pinned-messages": "僅用於中文", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Chinese text in Japanese locale file remains unfixed.
Line 2162 still contains Chinese text "僅用於中文" (meaning "for Chinese use only") instead of the proper Japanese translation. This critical localization error was flagged in previous reviews but has not been corrected.
🔎 Proposed fix
- "pinned-messages": "僅用於中文",
+ "pinned-messages": "ピン留めされたメッセージ",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "pinned-messages": "僅用於中文", | |
| "pinned-messages": "ピン留めされたメッセージ", |
🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/ja-JP.json at line 2162, The ja-JP locale
contains Chinese text for the "pinned-messages" key; open the
locales/ja-JP.json, find the "pinned-messages" entry and replace the Chinese
string "僅用於中文" with an appropriate Japanese translation such as "中国語のみ" (or
another approved Japanese wording), then save and run localization checks/CI to
ensure no other locale keys are mismatched.
| }, | ||
| "load-more": { | ||
| "cta": "Carregue mais", | ||
| "loading": "Carregandochar@@0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix corrupted translation string.
The loading text contains what appears to be encoding artifacts: "Carregandochar@@0". This should be "Carregando..." (Loading...).
🔧 Proposed fix
"load-more": {
"cta": "Carregue mais",
- "loading": "Carregandochar@@0",
+ "loading": "Carregando...",
"done": "Sem mais tags"
}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "loading": "Carregandochar@@0", | |
| "loading": "Carregando...", |
🤖 Prompt for AI Agents
In @apps/web/src/features/i18n/locales/pt-PT.json at line 423, The "loading"
translation value is corrupted ("Carregandochar@@0"); update the pt-PT locale
entry for the "loading" key in apps/web/src/features/i18n/locales/pt-PT.json to
the correct string "Carregando..." so the UI shows a proper loading message;
edit the JSON value for the "loading" property (the "loading" key) to replace
"Carregandochar@@0" with "Carregando..." and ensure the file remains valid JSON
(proper quotes and comma placement).
Summary by CodeRabbit
New Features
Improvements
✏️ Tip: You can customize this high-level summary in your review settings.