4.0 KiB
4.0 KiB
i18n key-map bootstrap (Angular host/player MVP)
Issue: #220
Scope: Lobby → Join → Start round → Round → Reveal → Scoreboard
Locales: en, da
This document is the gameplay key-namespace map for Angular host/player MVP.
It maps existing text keys only (no feature expansion) and stays aligned with shared/i18n/lobby.json.
Key families
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 underfrontend.ui.common.*inshared/i18n/lobby.json).errors— user-facing error keys shown by frontend (frontend.errors.*) plus backend code → frontend key bridge viabackend.error_codes.*/contract.backend_to_frontend_error_keys.*.
Gameplay flow key map
| Flow step | Family | Key | en | da |
|---|---|---|---|---|
| Lobby | host |
host.title |
Host gameplay flow | Vært gameplay-flow |
| Lobby | player |
player.title |
Player gameplay flow | Spiller gameplay-flow |
| Lobby | system (frontend.ui.common) |
common.session_code |
Session code | Sessionskode |
| Lobby | player |
player.nickname |
Nickname | Kaldenavn |
| Join | player |
player.join |
Join | Join |
| Start round | host |
host.start_round |
Start round | Start runde |
| Round | host |
host.show_question |
Show question | Vis spørgsmål |
| Round | player |
player.lie_label |
Lie | Løgn |
| Round | player |
player.submit_lie |
Submit lie | Send løgn |
| Round | player |
player.submit_guess |
Submit guess | Send gæt |
| Reveal | host |
host.mix_answers |
Mix answers → guess | Bland svar → gæt |
| Reveal | host |
host.calculate_scores |
Calculate scores → reveal | Udregn score → afslør |
| Scoreboard | host |
host.load_scoreboard |
Load scoreboard | Hent scoreboard |
| Scoreboard | host |
host.final_leaderboard |
Final leaderboard | Finale leaderboard |
| Scoreboard | player |
player.final_leaderboard |
Final leaderboard | Finale leaderboard |
| Scoreboard | system (frontend.ui.common) |
common.points_short |
pts | point |
Frontend error keys used in flow scope
| Error family | Key | en | da |
|---|---|---|---|
| Join | frontend.errors.session_code_required |
Session code is required. | Sessionskoden er påkrævet. |
| Join | frontend.errors.session_not_found |
Session code is invalid or the session no longer exists. | Sessionskoden er ugyldig, eller sessionen findes ikke længere. |
| Join | frontend.errors.nickname_invalid |
Nickname must be between 2 and 40 characters. | Kaldenavn skal være mellem 2 og 40 tegn. |
| Join | frontend.errors.nickname_taken |
Nickname is already taken. | Kaldenavnet er allerede taget. |
| Join | frontend.errors.join_failed |
Join failed. Check code or nickname and try again. | Kunne ikke joine. Tjek kode eller kaldenavn og prøv igen. |
| Start round | frontend.errors.start_round_failed |
Could not start round. Refresh the lobby and try again. | Kunne ikke starte runden. Opdater lobbyen og prøv igen. |
| Any | frontend.errors.unknown |
Action failed. Refresh status and try again. | Handlingen fejlede. Opdater status og prøv igen. |
Backend→frontend mapping for gameplay errors
Mapped in contract.backend_to_frontend_error_keys (source: shared/i18n/lobby.json):
Note:
host_only_actionis not part of the current shared contract mapping and is intentionally not listed here.
session_code_required→session_code_requirednickname_invalid→nickname_invalidsession_not_found→session_not_foundsession_not_joinable→join_failednickname_taken→nickname_takencategory_slug_required→start_round_failedcategory_not_found→start_round_failedround_start_invalid_phase→start_round_failedround_already_configured→start_round_failed
Notes
- This is a bootstrap key-map doc for MVP mergeability.
- The key/value source of truth remains
shared/i18n/lobby.json.