mirror of
https://github.com/nexu-io/open-design.git
synced 2026-10-27 09:51:12 +01:00
The Indonesian locale was added infcc37c6(#fcc37c6) right around the same time the Cloudflare Pages artifact deployment feature landed (09eb88f). The Cloudflare PR added 18 new keys to `Dict` and translated them in every existing locale, but `id.ts` was populated against the previous shape — so once both PRs sat on main, every workspace `tsc -b --noEmit` failed with: src/i18n/locales/id.ts(3,14): error TS2740: Type ... is missing the following properties from type 'Dict': 'fileViewer.deployProviderLabel', 'fileViewer.vercelProvider', 'fileViewer.cloudflarePagesProvider', 'fileViewer.deployToProvider', and 14 more. That turns CI red on every open PR until someone adds the missing keys. The same race will happen the next time a feature lands new strings unless the locale defaults to English fallbacks the way de / es-ES / fr / hu / ja / ko / pl / tr already do. Apply the `import { en } from './en'; ...en, ...overrides` pattern to id.ts. Existing Indonesian translations stay as overrides — no regression on what the user already sees in Indonesian — and any new key landed by a future feature inherits an English fallback automatically. Translators can replace fallbacks one key at a time without breaking the build in between. Verified locally: - web `tsc -b --noEmit` clean (was failing on `id.ts(3,14)`) - `tsx scripts/i18n-check.ts` passes