[MVP][READY] #220 Angular host/player shared i18n key-map bootstrap (da+en) #233

Merged
integrator-bot merged 3 commits from feat/issue-220-angular-shared-i18n-keymap-bootstrap into main 2026-03-02 00:00:05 +01:00
Showing only changes of commit bc78f79f78 - Show all commits

View File

@@ -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