Lang settings tab: flag-grid language picker, bootstrap es+zh targets

- New editor-shell tab (lang): translatable languages as clickable flag
  tiles (shared langs.js mapping of the 28 Seed-X languages to flags),
  saved via the settings round-trip; translator service URL(s) shown.
- Bootstrap seeds translate_langs with Spanish and Chinese (the original
  language is never a target).
- GET /_api/settings also returns primary_lang.
- PageEditor's flag/name helpers move to the shared langs.js.
This commit is contained in:
2026-09-02 20:27:37 +00:00
parent 4c886eda86
commit b1e8f0b454
7 changed files with 266 additions and 27 deletions
+4 -2
View File
@@ -282,8 +282,10 @@ Frames are JSON-encoded tagged msgspec structs (`pagerite/translate.py`;
translation of the connection's current job, matching it by (lang, key).
Which languages get translated is **server-configured**:
`Data.translate_langs` (presence-key dict, read/set via `/_api/settings`
as `translate_langs`; no editing UI yet). The dispatcher offers a
`Data.translate_langs` (presence-key dict, bootstrapped to Spanish and
Chinese — the original language is never a target — edited in the editor
shell's localization tab or set via `/_api/settings` as `translate_langs`).
The dispatcher offers a
connection jobs only in `wanted ∩ capable`; a connection without overlap
simply stays idle.