diff --git a/docs/i18n-keymap.md b/docs/i18n-keymap.md index 3b22679..9c5becf 100644 --- a/docs/i18n-keymap.md +++ b/docs/i18n-keymap.md @@ -9,11 +9,10 @@ It maps existing text keys only (no feature expansion) and stays aligned with `s ## Key families -- `frontend.ui.host.*` — host-facing gameplay actions and status text. -- `frontend.ui.player.*` — player-facing gameplay actions and status text. -- `frontend.ui.common.*` — shared labels used across host/player views. -- `frontend.errors.*` — user-facing error keys shown by frontend. -- `backend.error_codes.*` / `contract.backend_to_frontend_error_keys.*` — backend code → frontend key bridge. +- `host` — `frontend.ui.host.*` host-facing gameplay actions and status text. +- `player` — `frontend.ui.player.*` player-facing gameplay actions and status text. +- `system` — shared UI labels used across host/player views (implemented under `frontend.ui.common.*` in `shared/i18n/lobby.json`). +- `errors` — user-facing error keys shown by frontend (`frontend.errors.*`) plus backend code → frontend key bridge via `backend.error_codes.*` / `contract.backend_to_frontend_error_keys.*`. ## Gameplay flow key map @@ -21,7 +20,7 @@ It maps existing text keys only (no feature expansion) and stays aligned with `s |---|---|---|---|---| | Lobby | `frontend.ui.host` | `host.title` | Host gameplay flow | Vært gameplay-flow | | Lobby | `frontend.ui.player` | `player.title` | Player gameplay flow | Spiller gameplay-flow | -| Lobby | `frontend.ui.common` | `common.session_code` | Session code | Sessionskode | +| Lobby | `system` (`frontend.ui.common`) | `common.session_code` | Session code | Sessionskode | | Lobby | `frontend.ui.player` | `player.nickname` | Nickname | Kaldenavn | | Join | `frontend.ui.player` | `player.join` | Join | Join | | Start round | `frontend.ui.host` | `host.start_round` | Start round | Start runde | @@ -34,7 +33,7 @@ It maps existing text keys only (no feature expansion) and stays aligned with `s | Scoreboard | `frontend.ui.host` | `host.load_scoreboard` | Load scoreboard | Hent scoreboard | | Scoreboard | `frontend.ui.host` | `host.final_leaderboard` | Final leaderboard | Finale leaderboard | | Scoreboard | `frontend.ui.player` | `player.final_leaderboard` | Final leaderboard | Finale leaderboard | -| Scoreboard | `frontend.ui.common` | `common.points_short` | pts | point | +| Scoreboard | `system` (`frontend.ui.common`) | `common.points_short` | pts | point | ## Frontend error keys used in flow scope @@ -52,6 +51,8 @@ It maps existing text keys only (no feature expansion) and stays aligned with `s Mapped in `contract.backend_to_frontend_error_keys` (source: `shared/i18n/lobby.json`): +> Note: `host_only_action` is **not** part of the current shared contract mapping and is intentionally not listed here. + - `session_code_required` → `session_code_required` - `nickname_invalid` → `nickname_invalid` - `session_not_found` → `session_not_found` @@ -61,7 +62,6 @@ Mapped in `contract.backend_to_frontend_error_keys` (source: `shared/i18n/lobby. - `category_not_found` → `start_round_failed` - `round_start_invalid_phase` → `start_round_failed` - `round_already_configured` → `start_round_failed` -- `host_only_action` → `start_round_failed` ## Notes