Skip to content

i18n: Lingo (ui)#1583

Merged
h4rkl merged 1 commit into
mainfrom
lingo.dev/main
Jun 29, 2026
Merged

i18n: Lingo (ui)#1583
h4rkl merged 1 commit into
mainfrom
lingo.dev/main

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Hey team,

Lingo.dev here with fresh translations!

In this update

  • Added missing translations
  • Performed brand voice, context and glossary checks
  • Enhanced translations using Lingo.dev Localization Engine

Next Steps

  • Review the changes
  • Merge when ready

@vercel

vercel Bot commented Jun 19, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
solana-com Ready Ready Preview Jun 29, 2026 3:06pm
solana-com-accelerate Ready Ready Preview, Comment Jun 29, 2026 3:06pm
solana-com-breakpoint-2 Ready Ready Preview, Comment Jun 29, 2026 3:06pm
solana-com-docs Ready Ready Preview, Comment Jun 29, 2026 3:06pm
solana-com-media Ready Ready Preview, Comment Jun 29, 2026 3:06pm
templates Ready Ready Preview, Comment Jun 29, 2026 3:06pm

Request Review

@greptile-apps

greptile-apps Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This automated PR from Lingo.dev adds the new dataDashboard translation namespace (≈100 keys covering metadata, tabs, KPIs, charts, footer, errors, and build-section cards) to all 18 supported locales, and updates some existing privacy/confidential-token copy in several languages.

  • All 18 locales receive identical key coverage; the i18n.lock checksums are updated consistently to match.
  • Vietnamese lastDays retains the English word "Last", producing mixed-language output ("Last 7 ngày") for Vietnamese users.
  • Indonesian lastDays has a spurious leading space in its ICU placeholder ({ days, plural instead of {days, plural), which may cause parse failures with strict ICU implementations.

Confidence Score: 4/5

Safe to merge with minor fixes — two locale-specific string defects should be corrected before or shortly after landing.

The Vietnamese lastDays string will render "Last # ngày" to all Vietnamese users because the word "Last" was never translated. The Indonesian ICU placeholder has an extra leading space ({ days, plural) that could cause runtime parse errors in strict ICU environments. Both issues are confined to a single string in a single locale each and do not affect any other part of the codebase.

packages/i18n/messages/web/vi/common.json (untranslated "Last" prefix) and packages/i18n/messages/web/id/common.json (malformed ICU placeholder) need correction before these translations go live.

Important Files Changed

Filename Overview
packages/i18n/messages/web/vi/common.json Added dataDashboard translations; lastDays retains the untranslated English word "Last", producing mixed-language output for Vietnamese users.
packages/i18n/messages/web/id/common.json Added dataDashboard translations; lastDays ICU placeholder has a spurious leading space { days, plural instead of {days, plural.
packages/i18n/i18n.lock Adds MD5 checksums for all new dataDashboard keys across all 18 locales; structure is consistent and complete.
packages/i18n/messages/web/ar/common.json Added full dataDashboard translation block in Arabic with correct RTL text, proper ICU plural forms (one/two/few/many/other), and updated privacy/confidentialToken section copy.
packages/i18n/messages/web/de/common.json Added dataDashboard translations in German; ICU plural forms and string formatting look correct.
packages/i18n/messages/web/ja/common.json Added dataDashboard translations in Japanese; uses other for plural (correct for Japanese), all keys present.
packages/i18n/messages/web/ru/common.json Added dataDashboard translations in Russian with appropriate one/few/other plural forms.
packages/i18n/messages/web/zh/common.json Added dataDashboard translations in Chinese; correctly uses only other plural form (Chinese has no grammatical number).

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    EN[English source\ncommon.json] -->|Lingo.dev translates| LOCK[i18n.lock\nchecksums updated]
    EN --> AR & DE & EL & ES & FI & FR
    EN --> ID & IT & JA & KO & NL & PL
    EN --> PT & RU & TR & UK & VI & ZH
    ID:::warn -->|"{ days, plural …"\nleading space| BUG1[⚠ Possible ICU parse error]
    VI:::warn -->|"Last {days…}"\nuntranslated prefix| BUG2[⚠ Mixed-language UI output]
    classDef warn fill:#fff3cd,stroke:#f0ad4e
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    EN[English source\ncommon.json] -->|Lingo.dev translates| LOCK[i18n.lock\nchecksums updated]
    EN --> AR & DE & EL & ES & FI & FR
    EN --> ID & IT & JA & KO & NL & PL
    EN --> PT & RU & TR & UK & VI & ZH
    ID:::warn -->|"{ days, plural …"\nleading space| BUG1[⚠ Possible ICU parse error]
    VI:::warn -->|"Last {days…}"\nuntranslated prefix| BUG2[⚠ Mixed-language UI output]
    classDef warn fill:#fff3cd,stroke:#f0ad4e
Loading

Comments Outside Diff (1)

  1. packages/i18n/messages/web/vi/common.json, line 1 (link)

    P1 Untranslated "Last" prefix in lastDays

    The Vietnamese lastDays value is "Last {days, plural, other {# ngày}}" — the word "Last" is still in English. Every other locale translates this prefix (e.g. German "Letzte", Spanish "Últimos", French "Les … derniers"). Vietnamese users will see "Last 7 ngày" in the UI instead of a fully localised string.

Reviews (4): Last reviewed commit: "i18n: Lingo Translation Update (ui)" | Re-trigger Greptile

@vercel vercel Bot temporarily deployed to Preview – solana-com-breakpoint-2 June 19, 2026 01:54 Inactive
@vercel vercel Bot temporarily deployed to Preview – templates June 19, 2026 01:54 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-media June 19, 2026 01:54 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com June 19, 2026 01:54 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-accelerate June 19, 2026 01:54 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-media June 19, 2026 14:43 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-accelerate June 19, 2026 14:43 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-breakpoint-2 June 19, 2026 14:43 Inactive
@vercel vercel Bot temporarily deployed to Preview – templates June 19, 2026 14:43 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com June 19, 2026 14:43 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-breakpoint-2 June 22, 2026 22:19 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-media June 22, 2026 22:19 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com June 22, 2026 22:19 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-accelerate June 22, 2026 22:19 Inactive
@vercel vercel Bot temporarily deployed to Preview – templates June 22, 2026 22:19 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-breakpoint-2 June 24, 2026 18:56 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com June 24, 2026 18:56 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-media June 24, 2026 18:56 Inactive
@vercel vercel Bot temporarily deployed to Preview – templates June 24, 2026 18:56 Inactive
@vercel vercel Bot temporarily deployed to Preview – solana-com-accelerate June 24, 2026 18:56 Inactive
"allProviders": "Semua penyedia",
"noProviders": "Tidak ada penyedia yang dipilih",
"providerListSeparator": " / ",
"lastDays": "{ days, plural, one {# hari} other {# hari}} terakhir",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 The ICU placeholder has a leading space before the argument name: { days, plural, ...}. While lenient parsers may trim it, this is inconsistent with every other locale and could trip strict ICU parsers that expect the identifier to start immediately after {.

Suggested change
"lastDays": "{ days, plural, one {# hari} other {# hari}} terakhir",
"lastDays": "{days, plural, one {# hari} other {# hari}} terakhir",

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

@greptile-apps

greptile-apps Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Too many files changed for review. (598 files found, 100 file limit)

stevesarmiento
stevesarmiento previously approved these changes Jun 27, 2026
Includes UI and docs translations plus the signing workflow fix.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants