feat(i18n): fill the translation backlog and add the new strings

40 keys existed only in app_es.arb and fell back to Spanish everywhere else
(15 of them in English). Most were multi-device screens: hostGame, votar,
clueIs, whoDoYouThinkIsTheImpostor, waitingPlayersSeeWord.

Adds those plus the new keys for impostor awareness, the adjusted impostor
count, the eliminated-player notice and the reconnection screen.

51 keys across the 18 supported languages.
This commit is contained in:
2026-07-25 20:36:39 +02:00
parent 863690168c
commit b1b12cc8af
36 changed files with 3677 additions and 1206 deletions
+137 -70
View File
@@ -18,19 +18,20 @@ class AppLocalizationsPl extends AppLocalizations {
String get loadingWords => 'Ładowanie słów...';
@override
String get matchRewards => "Nagrody za grę";
String get matchRewards => 'Nagrody za grę';
@override
String get newMedals => "Nowe medale";
String get newMedals => 'Nowe medale';
@override
String get noNewMedalsKeepFire => "Tym razem bez nowych medali. Podtrzymuj swój ogień.";
String get noNewMedalsKeepFire =>
'Tym razem bez nowych medali. Podtrzymuj swój ogień.';
@override
String get calculatingRewards => "Obliczanie nagród...";
String get calculatingRewards => 'Obliczanie nagród...';
@override
String get fireLabel => "Ogień";
String get fireLabel => 'Ogień';
@override
String get playersRange => '3-20 graczy • Bez internetu';
@@ -125,7 +126,7 @@ class AppLocalizationsPl extends AppLocalizations {
String get impostorClueDescription => 'Oszust zna kategorię';
@override
String get debate => '🗣️ Debate';
String get debate => '🗣️ Dyskusja';
@override
String get debateTime => '⏱️ Czas debaty';
@@ -214,16 +215,6 @@ class AppLocalizationsPl extends AppLocalizations {
@override
String get playersInDebate => 'Gracze w debacie';
@override
String voteOf(String name) {
return "Głos gracza $name";
}
@override
String firstTurnInstruction(String name) {
return "$name zaczyna, mówiąc swoje słowo.";
}
@override
String activePlayersInfo(int active, int impostors) {
return '$active aktywnych • $impostors ukrytych oszustów';
@@ -503,128 +494,129 @@ class AppLocalizationsPl extends AppLocalizations {
String get licenses => 'Licencje';
@override
String get scanToJoin => 'Escanea el QR para unirte';
String get scanToJoin => 'Zeskanuj kod QR, aby dołączyć';
@override
String get connectedPlayers => 'Jugadores conectados';
String get connectedPlayers => 'Połączeni gracze';
@override
String get hostGame => 'Gestor de partida';
String get hostGame => 'Zarządzanie grą';
@override
String get waitingPlayersSeeWord => 'Esperando que todos vean su palabra...';
String get waitingPlayersSeeWord =>
'Czekamy, aż wszyscy zobaczą swoje słowo...';
@override
String get activePlayers => 'Jugadores activos';
String get activePlayers => 'Aktywni gracze';
@override
String get playersVoted => 'Han votado';
String get playersVoted => 'Zagłosowali';
@override
String get waitingVoting => 'Esperando que voten...';
String get waitingVoting => 'Czekamy na głosy...';
@override
String get waitingForPlayers => 'Esperando jugadores...';
String get waitingForPlayers => 'Czekamy na graczy...';
@override
String needMorePlayers(int count) {
return 'Faltan $count jugadores más';
return 'Brakuje jeszcze $count graczy';
}
@override
String get starting => 'Iniciando...';
String get starting => 'Uruchamianie...';
@override
String get enterNameAndScan => 'Escribe tu nombre y escanea el QR del host';
String get enterNameAndScan =>
'Wpisz swoje imię i zeskanuj kod QR gospodarza';
@override
String get yourName => 'Tu nombre';
String get yourName => 'Twoje imię';
@override
String get nameRequired => 'Escribe tu nombre';
String get nameRequired => 'Wpisz swoje imię';
@override
String get connectingTo => 'Conectando a';
String get connectingTo => 'Łączenie z';
@override
String get scanQR => 'Escanear QR';
String get scanQR => 'Zeskanuj kod QR';
@override
String get scanHostQR => 'Apunta al QR del host';
String get scanHostQR => 'Wyceluj w kod QR gospodarza';
@override
String get connectedWaiting => '¡Conectado!';
String get connectedWaiting => 'Połączono!';
@override
String get waitingForHost => 'Esperando a que el host inicie la partida...';
String get waitingForHost => 'Czekamy, aż gospodarz rozpocznie grę...';
@override
String get enterNameToSearch =>
'Escribe tu nombre para buscar partidas cercanas';
String get enterNameToSearch => 'Wpisz swoje imię, aby znaleźć gry w pobliżu';
@override
String get searchGames => 'Buscar partidas';
String get searchGames => 'Szukaj gier';
@override
String get searchingGames => 'Buscando partidas cercanas...';
String get searchingGames => 'Szukanie gier w pobliżu...';
@override
String get noGamesFound => 'No se encontraron partidas';
String get noGamesFound => 'Nie znaleziono gier';
@override
String get noGamesFoundHint =>
'Asegúrate de que el host tiene la sala abierta y estáis cerca';
'Upewnij się, że gospodarz ma otwarty pokój i jesteście blisko siebie';
@override
String get orScanQR => '¿No aparece? Escanea el QR del host';
String get orScanQR => 'Nie widzisz gry? Zeskanuj kod QR gospodarza';
@override
String get iveSeenIt => 'Ya la he visto';
String get iveSeenIt => 'Już zobaczyłem';
@override
String clueIs(String category) {
return 'La pista es: $category';
return 'Wskazówka: $category';
}
@override
String get debatePhaseActive => 'Fase de debate activa';
String get debatePhaseActive => 'Trwa faza dyskusji';
@override
String get debateInstructions =>
'Hablad entre vosotros y decid quién creéis que es el impostor. Cuando estéis listos, solicitad la votación.';
'Porozmawiajcie ze sobą i powiedzcie, kto waszym zdaniem jest oszustem. Gdy będziecie gotowi, poproście o głosowanie.';
@override
String get solicitarVotacion => 'Solicitar votación';
String get solicitarVotacion => 'Poproś o głosowanie';
@override
String get votacionSolicitada => 'Votación solicitada';
String get votacionSolicitada => 'Poproszono o głosowanie';
@override
String get whoDoYouThinkIsTheImpostor => '¿Quién es el impostor?';
String get whoDoYouThinkIsTheImpostor => 'Kto jest oszustem?';
@override
String get selectOnePlayer => 'Selecciona a un jugador para votar';
String get selectOnePlayer => 'Wybierz gracza, na którego głosujesz';
@override
String get votar => 'Votar';
String get votar => 'Głosuj';
@override
String get selectYourProfile => 'Tu perfil';
String get selectYourProfile => 'Twój profil';
@override
String get selectProfile => 'Selecciona un perfil';
String get selectProfile => 'Wybierz profil';
@override
String get createNewUser => 'Crear nuevo usuario';
String get createNewUser => 'Utwórz nowego użytkownika';
@override
String get userNameRequired => 'El nombre no puede estar vacio';
String get userNameRequired => 'Imię nie może być puste';
@override
String get profileSelected => 'Perfil seleccionado';
String get profileSelected => 'Wybrano profil';
@override
String get availableProfiles => 'Perfiles disponibles';
String get availableProfiles => 'Dostępne profile';
@override
String get scanThisCodeFromAnotherPhone => 'Zeskanuj ten kod innym telefonem';
@@ -660,34 +652,41 @@ class AppLocalizationsPl extends AppLocalizations {
String get delete => 'Usuń';
@override
String get selectAtLeastThreeUsersToStart => 'Select at least 3 users to start.';
String get selectAtLeastThreeUsersToStart =>
'Select at least 3 users to start.';
@override
String get hostPhoneMustSelectUser => 'The host phone must select at least one user.';
String get hostPhoneMustSelectUser =>
'The host phone must select at least one user.';
@override
String get roomNoLongerInLobby => 'The room is no longer in the lobby.';
@override
String get completeUserSelectionToStart => 'Complete user selection to start.';
String get completeUserSelectionToStart =>
'Complete user selection to start.';
@override
String get preparingSecureRoom => 'Preparing the secure room';
@override
String get searchingNearbyBluetoothGames => 'Searching nearby games over Bluetooth';
String get searchingNearbyBluetoothGames =>
'Searching nearby games over Bluetooth';
@override
String get tapToJoin => 'Tap to join';
@override
String get bluetoothLocationPermissionsRequired => 'Bluetooth and location permissions are required to search for games.';
String get bluetoothLocationPermissionsRequired =>
'Bluetooth and location permissions are required to search for games.';
@override
String get bluetoothLocationPermissionsShort => 'Bluetooth and location permissions are required';
String get bluetoothLocationPermissionsShort =>
'Bluetooth and location permissions are required';
@override
String get couldNotStartSearch => 'Could not start the search. Check Bluetooth and location.';
String get couldNotStartSearch =>
'Could not start the search. Check Bluetooth and location.';
@override
String couldNotConnectToHost(String host) {
@@ -701,13 +700,15 @@ class AppLocalizationsPl extends AppLocalizations {
String get singleDeviceSubtitle => 'Game on this device';
@override
String get singleDeviceDescription => 'Ideal for playing together by passing the phone around. Fast, direct setup.';
String get singleDeviceDescription =>
'Ideal for playing together by passing the phone around. Fast, direct setup.';
@override
String get multiDeviceSubtitle => 'Each player on their phone';
@override
String get multiDeviceDescription => 'Create a premium room, share the QR code and manage users from the lobby.';
String get multiDeviceDescription =>
'Create a premium room, share the QR code and manage users from the lobby.';
@override
String get singleDeviceGameLabel => 'Game on this device';
@@ -719,7 +720,8 @@ class AppLocalizationsPl extends AppLocalizations {
String get mainDeviceUser => 'Main device user';
@override
String get couldNotCreateRoom => 'Could not create the room. Check Bluetooth.';
String get couldNotCreateRoom =>
'Could not create the room. Check Bluetooth.';
@override
String cannotStartWithReason(String reason) {
@@ -731,6 +733,7 @@ class AppLocalizationsPl extends AppLocalizations {
@override
String get defaultPlayerName => 'Gracz';
@override
String get play => 'Graj';
@@ -762,7 +765,8 @@ class AppLocalizationsPl extends AppLocalizations {
String get errorNoGame => 'Błąd: brak gry';
@override
String get disconnectedPlayersWarning => 'Niektórzy gracze mają rozłączone urządzenie.';
String get disconnectedPlayersWarning =>
'Niektórzy gracze mają rozłączone urządzenie.';
@override
String get assumeOnThisPhone => 'Przejmij na tym telefonie';
@@ -771,8 +775,71 @@ class AppLocalizationsPl extends AppLocalizations {
String get noResult => 'Brak wyniku';
@override
String historyGameSummary(int players, int impostors, int rounds, String word, String category) {
return '$players graczy • $impostors impostor(ów) • $rounds rund\n$word$category';
String historyGameSummary(
int players,
int impostors,
int rounds,
String word,
String category,
) {
return '\$players graczy • \$impostors impostor(ów) • \$rounds rund\n\$word • \$category';
}
}
@override
String voteOf(String name) {
return 'Głos gracza $name';
}
@override
String firstTurnInstruction(String name) {
return '$name zaczyna, mówiąc swoje słowo.';
}
@override
String get impostorsKnowEachOther => '🎭 Oszuści znają się nawzajem';
@override
String get impostorsKnowEachOtherDescription =>
'Każdy oszust zobaczy imiona pozostałych';
@override
String get impostorsKnowEachOtherNeedsTwo =>
'Działa tylko przy 2 lub więcej oszustach';
@override
String otherImpostorsTitle(num count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Pozostali oszuści',
one: 'Drugi oszust',
);
return '$_temp0';
}
@override
String get youAreTheOnlyImpostor => 'Jesteś jedynym oszustem';
@override
String impostorsAdjusted(int count) {
return 'Liczba oszustów dostosowana do $count z powodu liczby graczy';
}
@override
String get eliminatedCannotVote => 'Jesteś wyeliminowany już nie głosujesz';
@override
String get reconnecting => 'Ponowne łączenie...';
@override
String get reconnectingHint =>
'Utracono połączenie z gospodarzem. Twoje miejsce w grze jest zachowane.';
@override
String get leaveGame => 'Opuść grę';
@override
String playerRejoined(String name) {
return '$name wrócił(a) do gry';
}
}