Files
open-design/apps
SidandGitHub 1292fc5c41 fix(i18n): default id locale to English for untranslated keys (#822)
The Indonesian locale was added in fcc37c6 (#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
2026-05-07 20:47:27 +08:00
..