mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-05-22 13:32:11 +00:00
*PR Created by the Glary-Bot Agent* --- Backport of #11712 to `core/1.44`. ## Summary Cherry-picks `ceb993605` ("fix(i18n): clamp unsupported browser locales to a shipped tag") onto `core/1.44`. Sidebar buttons rendered literal i18n keys (e.g. `sideToolbar.labels.assets`) on a fresh install when the user's `navigator.language` base tag wasn't one of the 12 shipped locales — German/Italian/Polish/Dutch/Brazilian-Portuguese users among others. ## Cherry-pick conflict resolution One file required manual resolution: - **`browser_tests/tests/customNodeLocales.spec.ts`** — `modify/delete` conflict. This file does not exist on `core/1.44` (it was introduced on `main` after the 1.44 branch cut, in #12132). Dropped the modification from the backport; the underlying test file is not on the release branch, so its updates are irrelevant here. All other files merged cleanly (`src/views/GraphView.vue` had an auto-merge that resolved without intervention). ## Verification - `pnpm typecheck` — clean - `pnpm test:unit src/i18n.test.ts` — **17/17 passing** (covers the new `resolveSupportedLocale` block and the updated unsupported-locale clamp behaviour) - `eslint` on all changed files — clean - **Manual verification via Playwright on the backport branch**, simulating a fresh install with `navigator.language='de-DE'`: - Sidebar `aria-label`s render real strings ("Assets (a)", "Node Library (n)", "Workflows (w)", "Settings", …) — **no** literal i18n keys like `sideToolbar.labels.assets`. - Confirmed `hasLiteralKeys: false` on the rendered DOM, matching the fixed behaviour from the original PR. - Screenshot attached. ## Files ``` apps/desktop-ui/src/i18n.ts | 3 +- browser_tests/tests/i18nLocaleFallback.spec.ts | 47 ++++++++ browser_tests/tests/templates.spec.ts | 59 +++++----- src/i18n.test.ts | 109 +++++++++++++++--- src/i18n.ts | 145 ++++++++---------------- src/locales/CONTRIBUTING.md | 44 +------ src/locales/localeConfig.ts | 82 ++++++++++++++ src/platform/settings/constants/coreSettings.ts | 21 +--- src/views/GraphView.vue | 20 ++-- ``` Backport-of: #11712 Fixes #10563 on the 1.44 release line ## Screenshots  ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-12178-backport-core-1-44-fix-i18n-clamp-unsupported-browser-locales-to-a-shipped-tag-117-35e6d73d3650817dae90d9ae68c7f0c6) by [Unito](https://www.unito.io)