[READ-ONLY] Mirror of https://github.com/openstatusHQ/openstatus. 🫖 Status page with uptime monitoring & API monitoring as code 🫖 openstatus.dev
bun drizzle-orm monitoring monitoring-as-code nextjs observability on-call open-source shadcn-ui status-page statuspage synthetic-monitoring tinybird turso uptime uptime-checker uptime-monitor

feat(i18n): add Japanese (ja) translation for the status page (#2627) master

* feat(i18n): add Japanese (ja) translation for the status page Register `ja` in @openstatus/locales (locale list, `日本語` 🇯🇵, date-fns `ja`) and add `apps/status-page/messages/ja.json` with all 140 keys from `en.json`, ICU placeholders preserved. Since #2438 the API `Locale` proto enum is keyed by the shared `Locale` type, so the registry change alone fails `deno check`. Add `LOCALE_JA = 7` to the proto, regenerate `status_page_pb.ts` with buf, list it in both openapi.yaml files, map it in the RPC converters and extend the locale round-trip tests. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> * docs: list Japanese as a supported status page locale Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> * fix(i18n): refine Japanese wording after review Address cubic's review and make a few more strings read naturally on an actual status page. - `(in {duration})` → `(発生から{duration})`: state the reference point. - `(for {duration})` → `(計{duration})`: date-fns `ja` yields `2時間`, so the `間` suffix produced `2時間間`. - Quantile popover: define パーセンタイル directly. Natural-Japanese follow-ups from an on-screen review: - "Get updates" → `更新を受け取る` - "Relative" → `相対時間` - "Report resolved" → `解決済みのレポート` Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> * chore: regenerate static openapi for LOCALE_JA --------- Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>


+177 -17
13 changed files