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
+136 -67
View File
@@ -18,19 +18,20 @@ class AppLocalizationsCa extends AppLocalizations {
String get loadingWords => 'Carregant paraules...';
@override
String get matchRewards => "Recompenses de partida";
String get matchRewards => 'Recompenses de partida';
@override
String get newMedals => "Noves medalles";
String get newMedals => 'Noves medalles';
@override
String get noNewMedalsKeepFire => "Sense medalles noves aquesta vegada. Continua acumulant foc.";
String get noNewMedalsKeepFire =>
'Sense medalles noves aquesta vegada. Continua acumulant foc.';
@override
String get calculatingRewards => "Calculant recompenses...";
String get calculatingRewards => 'Calculant recompenses...';
@override
String get fireLabel => "Foc";
String get fireLabel => 'Foc';
@override
String get playersRange => '3-20 jugadors • Sense internet';
@@ -125,7 +126,7 @@ class AppLocalizationsCa extends AppLocalizations {
String get impostorClueDescription => 'L\'impostor coneix la categoria';
@override
String get debate => '🗣️ Debate';
String get debate => '🗣️ Debat';
@override
String get debateTime => '⏱️ Temps de debat';
@@ -214,16 +215,6 @@ class AppLocalizationsCa extends AppLocalizations {
@override
String get playersInDebate => 'Jugadors en debat';
@override
String voteOf(String name) {
return "Vot de $name";
}
@override
String firstTurnInstruction(String name) {
return "Comença $name dient la seva paraula.";
}
@override
String activePlayersInfo(int active, int impostors) {
return '$active actius • $impostors impostor(s) ocults';
@@ -503,131 +494,134 @@ class AppLocalizationsCa extends AppLocalizations {
String get licenses => 'Llicències';
@override
String get scanToJoin => 'Escanea el QR para unirte';
String get scanToJoin => 'Escaneja el QR per unir-te';
@override
String get connectedPlayers => 'Jugadores conectados';
String get connectedPlayers => 'Jugadors connectats';
@override
String get hostGame => 'Gestor de partida';
@override
String get waitingPlayersSeeWord => 'Esperando que todos vean su palabra...';
String get waitingPlayersSeeWord =>
'Esperant que tothom vegi la seva paraula...';
@override
String get activePlayers => 'Jugadores activos';
String get activePlayers => 'Jugadors actius';
@override
String get playersVoted => 'Han votado';
String get playersVoted => 'Han votat';
@override
String get waitingVoting => 'Esperando que voten...';
String get waitingVoting => 'Esperant els vots...';
@override
String get waitingForPlayers => 'Esperando jugadores...';
String get waitingForPlayers => 'Esperant jugadors...';
@override
String needMorePlayers(int count) {
return 'Faltan $count jugadores más';
return 'Falten $count jugadors més';
}
@override
String get starting => 'Iniciando...';
String get starting => 'Iniciant...';
@override
String get enterNameAndScan => 'Escribe tu nombre y escanea el QR del host';
String get enterNameAndScan =>
'Escriu el teu nom i escaneja el QR de l\'amfitrió';
@override
String get yourName => 'Tu nombre';
String get yourName => 'El teu nom';
@override
String get nameRequired => 'Escribe tu nombre';
String get nameRequired => 'Escriu el teu nom';
@override
String get connectingTo => 'Conectando a';
String get connectingTo => 'Connectant a';
@override
String get scanQR => 'Escanear QR';
String get scanQR => 'Escanejar QR';
@override
String get scanHostQR => 'Apunta al QR del host';
String get scanHostQR => 'Apunta al QR de l\'amfitrió';
@override
String get connectedWaiting => '¡Conectado!';
String get connectedWaiting => 'Connectat!';
@override
String get waitingForHost => 'Esperando a que el host inicie la partida...';
String get waitingForHost => 'Esperant que l\'amfitrió iniciï la partida...';
@override
String get enterNameToSearch =>
'Escribe tu nombre para buscar partidas cercanas';
'Escriu el teu nom per buscar partides properes';
@override
String get searchGames => 'Buscar partidas';
String get searchGames => 'Buscar partides';
@override
String get searchingGames => 'Buscando partidas cercanas...';
String get searchingGames => 'Buscant partides properes...';
@override
String get noGamesFound => 'No se encontraron partidas';
String get noGamesFound => 'No s\'han trobat partides';
@override
String get noGamesFoundHint =>
'Asegúrate de que el host tiene la sala abierta y estáis cerca';
'Assegura\'t que l\'amfitrió té la sala oberta i que sou a prop';
@override
String get orScanQR => '¿No aparece? Escanea el QR del host';
String get orScanQR => 'No apareix? Escaneja el QR de l\'amfitrió';
@override
String get iveSeenIt => 'Ya la he visto';
String get iveSeenIt => 'Ja l\'he vista';
@override
String clueIs(String category) {
return 'La pista es: $category';
return 'La pista és: $category';
}
@override
String get debatePhaseActive => 'Fase de debate activa';
String get debatePhaseActive => 'Fase de debat activa';
@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.';
'Parleu entre vosaltres i digueu qui creieu que és l\'impostor. Quan estigueu llestos, demaneu la votació.';
@override
String get solicitarVotacion => 'Solicitar votación';
String get solicitarVotacion => 'Demanar votació';
@override
String get votacionSolicitada => 'Votación solicitada';
String get votacionSolicitada => 'Votació demanada';
@override
String get whoDoYouThinkIsTheImpostor => '¿Quién es el impostor?';
String get whoDoYouThinkIsTheImpostor => 'Qui és l\'impostor?';
@override
String get selectOnePlayer => 'Selecciona a un jugador para votar';
String get selectOnePlayer => 'Selecciona un jugador per votar';
@override
String get votar => 'Votar';
@override
String get selectYourProfile => 'Tu perfil';
String get selectYourProfile => 'El teu perfil';
@override
String get selectProfile => 'Selecciona un perfil';
@override
String get createNewUser => 'Crear nuevo usuario';
String get createNewUser => 'Crear nou usuari';
@override
String get userNameRequired => 'El nombre no puede estar vacio';
String get userNameRequired => 'El nom no pot estar buit';
@override
String get profileSelected => 'Perfil seleccionado';
String get profileSelected => 'Perfil seleccionat';
@override
String get availableProfiles => 'Perfiles disponibles';
String get availableProfiles => 'Perfils disponibles';
@override
String get scanThisCodeFromAnotherPhone => 'Escaneja aquest codi des dun altre mòbil';
String get scanThisCodeFromAnotherPhone =>
'Escaneja aquest codi des dun altre mòbil';
@override
String get gameUsers => 'Usuaris de la partida';
@@ -660,34 +654,41 @@ class AppLocalizationsCa extends AppLocalizations {
String get delete => 'Elimina';
@override
String get selectAtLeastThreeUsersToStart => 'Selecciona almenys 3 usuaris per començar.';
String get selectAtLeastThreeUsersToStart =>
'Selecciona almenys 3 usuaris per començar.';
@override
String get hostPhoneMustSelectUser => 'El mòbil servidor ha de seleccionar almenys un usuari.';
String get hostPhoneMustSelectUser =>
'El mòbil servidor ha de seleccionar almenys un usuari.';
@override
String get roomNoLongerInLobby => 'La sala ja no és al lobby.';
@override
String get completeUserSelectionToStart => 'Completa la selecció dusuaris per començar.';
String get completeUserSelectionToStart =>
'Completa la selecció dusuaris per començar.';
@override
String get preparingSecureRoom => 'Preparant la sala segura';
@override
String get searchingNearbyBluetoothGames => 'Cercant partides properes per Bluetooth';
String get searchingNearbyBluetoothGames =>
'Cercant partides properes per Bluetooth';
@override
String get tapToJoin => 'Toca per unir-thi';
@override
String get bluetoothLocationPermissionsRequired => 'Calen permisos de Bluetooth i ubicació per cercar partides.';
String get bluetoothLocationPermissionsRequired =>
'Calen permisos de Bluetooth i ubicació per cercar partides.';
@override
String get bluetoothLocationPermissionsShort => 'Calen permisos de Bluetooth i ubicació';
String get bluetoothLocationPermissionsShort =>
'Calen permisos de Bluetooth i ubicació';
@override
String get couldNotStartSearch => 'No sha pogut iniciar la cerca. Verifica el Bluetooth i la ubicació.';
String get couldNotStartSearch =>
'No sha pogut iniciar la cerca. Verifica el Bluetooth i la ubicació.';
@override
String couldNotConnectToHost(String host) {
@@ -701,13 +702,15 @@ class AppLocalizationsCa extends AppLocalizations {
String get singleDeviceSubtitle => 'Partida en aquest dispositiu';
@override
String get singleDeviceDescription => 'Ideal per jugar tots junts passant el mòbil. Configuració ràpida i directa.';
String get singleDeviceDescription =>
'Ideal per jugar tots junts passant el mòbil. Configuració ràpida i directa.';
@override
String get multiDeviceSubtitle => 'Cada jugador al seu mòbil';
@override
String get multiDeviceDescription => 'Crea una sala premium, comparteix el QR i gestiona usuaris des del lobby.';
String get multiDeviceDescription =>
'Crea una sala premium, comparteix el QR i gestiona usuaris des del lobby.';
@override
String get singleDeviceGameLabel => 'Partida en aquest dispositiu';
@@ -719,7 +722,8 @@ class AppLocalizationsCa extends AppLocalizations {
String get mainDeviceUser => 'Usuari principal del dispositiu';
@override
String get couldNotCreateRoom => 'No sha pogut crear la sala. Verifica el Bluetooth.';
String get couldNotCreateRoom =>
'No sha pogut crear la sala. Verifica el Bluetooth.';
@override
String cannotStartWithReason(String reason) {
@@ -731,6 +735,7 @@ class AppLocalizationsCa extends AppLocalizations {
@override
String get defaultPlayerName => 'Jugador';
@override
String get play => 'Jugar';
@@ -762,7 +767,8 @@ class AppLocalizationsCa extends AppLocalizations {
String get errorNoGame => 'Error: no hi ha partida';
@override
String get disconnectedPlayersWarning => 'Hi ha jugadors amb el dispositiu desconnectat.';
String get disconnectedPlayersWarning =>
'Hi ha jugadors amb el dispositiu desconnectat.';
@override
String get assumeOnThisPhone => 'Assumir en aquest mòbil';
@@ -771,8 +777,71 @@ class AppLocalizationsCa extends AppLocalizations {
String get noResult => 'Sense resultat';
@override
String historyGameSummary(int players, int impostors, int rounds, String word, String category) {
return '$players jugadors • $impostors impostor(s) • $rounds ronda(es)\n$word$category';
String historyGameSummary(
int players,
int impostors,
int rounds,
String word,
String category,
) {
return '\$players jugadors • \$impostors impostor(s) • \$rounds ronda(es)\n\$word • \$category';
}
}
@override
String voteOf(String name) {
return 'Vot de $name';
}
@override
String firstTurnInstruction(String name) {
return 'Comença $name dient la seva paraula.';
}
@override
String get impostorsKnowEachOther => '🎭 Els impostors es coneixen';
@override
String get impostorsKnowEachOtherDescription =>
'Cada impostor veurà els noms de la resta';
@override
String get impostorsKnowEachOtherNeedsTwo =>
'Només s\'aplica amb 2 o més impostors';
@override
String otherImpostorsTitle(num count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Els altres impostors',
one: 'L\'altre impostor',
);
return '$_temp0';
}
@override
String get youAreTheOnlyImpostor => 'Ets l\'únic impostor';
@override
String impostorsAdjusted(int count) {
return 'Impostors ajustats a $count pel nombre de jugadors';
}
@override
String get eliminatedCannotVote => 'Estàs eliminat: ja no votes';
@override
String get reconnecting => 'Reconnectant...';
@override
String get reconnectingHint =>
'S\'ha perdut la connexió amb l\'amfitrió. El teu lloc a la partida es manté.';
@override
String get leaveGame => 'Sortir de la partida';
@override
String playerRejoined(String name) {
return '$name ha tornat a la partida';
}
}