fix(bienvenida,grabaciones): headline size, CTA radius, storage caption

Screen 14 / audit 14.3+14.7: welcome headline now 34px/ls-1.2 (was
headlineMedium's 28/ls-1.0), CTA restyled to a radius-18 rounded
rectangle instead of Material 3's default StadiumBorder (t4:696,715).

Screen 12 / audit 12.2+12.3: the recordings storage card now shows the
bold "X of Y used" headline ABOVE a 6px/radius-3 bar, followed by a
real folder-path + purge-policy caption below it -- was the bar first
with the "used" string as its only (small, generic) caption (t4:613).
New ARB key recordingsLibraryStorageFolderCaption, translated to all
13 locales.

Item 12.5 (folder/max-size settings living behind the header action
instead of inline on this screen) is a deliberate structural split
from WU15b; the audit itself scopes it out of this pass.
This commit is contained in:
2026-07-30 16:00:30 +02:00
parent 01615f9751
commit e036f99a61
31 changed files with 514 additions and 6 deletions
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "البلد",
"searchLanguageFilterLabel": "اللغة",
"searchMinQualityFilterLabel": "الحد الأدنى للجودة",
"searchLoadingStationsLabel": "جارٍ البحث عن محطات…",
"searchEmptyTitle": "ابحث عن محطة",
"searchNoResultsTitle": "لا توجد نتائج",
"searchNoResultsForQueryTitle": "لا توجد نتائج لـ «{query}»",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "استخدم الشريط العلوي أو الشرائح لاكتشاف إشارات من كل العالم.",
"searchNoResultsSubtitle": "جرّب إزالة الفلاتر أو كتابة اسم آخر للعثور على إشارة نشطة.",
"countrySpain": "إسبانيا",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "المعتاد",
"saveFavoritesAlarmHint": "احفظ محطات في المفضلة لاستخدامها كمنبه موسيقي.",
"useCurrentStationAction": "استخدام المحطة الحالية",
"playDuringVacations": "الرنين أثناء الإجازات",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "تكرار",
"androidReliabilityTitle": "مراجعة موثوقية Android",
"closeAction": "إغلاق",
"customOption": "مخصص",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "رفع مستوى الصوت تدريجيًا",
"countriesAllTitle": "كل الدول",
"countriesScreenTitle": "الدول",
"countriesSearchHint": "الدولة أو الرمز...",
"countriesYourLanguagesTitle": "لغاتك",
"customStationsAddCta": "إضافة محطة مخصصة",
"equalizerActiveOutputDefault": "مكبر صوت هذا الجهاز",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "أدخل اسمًا",
"recordingRenameLabel": "الاسم",
"recordingsLibraryEmptySubtitle": "التسجيلات التي تحفظها ستظهر هنا.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · يتم حذف الأقدم عند بلوغ الحد",
"recordingsLibraryEmptyTitle": "لا توجد تسجيلات بعد",
"recordingsLibrarySettingsTooltip": "إعدادات التسجيل",
"recordingsLibraryStorageCaption": "تم استخدام {usedMb} ميغابايت من أصل {totalMb} ميغابايت",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "দেশ",
"searchLanguageFilterLabel": "ভাষা",
"searchMinQualityFilterLabel": "ন্যূনতম গুণমান",
"searchLoadingStationsLabel": "স্টেশন খোঁজা হচ্ছে…",
"searchEmptyTitle": "একটি স্টেশন খুঁজুন",
"searchNoResultsTitle": "কোনো ফলাফল নেই",
"searchNoResultsForQueryTitle": "\"{query}\"-এর জন্য কোনো ফলাফল নেই",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "উপরের বার বা চিপ ব্যবহার করে সারা বিশ্বের সিগন্যাল আবিষ্কার করুন।",
"searchNoResultsSubtitle": "সক্রিয় সিগন্যাল পেতে ফিল্টার সরিয়ে বা অন্য নাম লিখে দেখুন।",
"countrySpain": "স্পেন",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "সাধারণ",
"saveFavoritesAlarmHint": "সুরেলা অ্যালার্ম হিসেবে ব্যবহার করতে প্রিয়তে স্টেশন সংরক্ষণ করুন।",
"useCurrentStationAction": "বর্তমান স্টেশন ব্যবহার করুন",
"playDuringVacations": "ছুটিতে বাজান",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "পুনরাবৃত্তি",
"androidReliabilityTitle": "Android নির্ভরযোগ্যতা দেখুন",
"closeAction": "বন্ধ করুন",
"customOption": "কাস্টম",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "ভলিউম বাড়ছে",
"countriesAllTitle": "সব দেশ",
"countriesScreenTitle": "দেশসমূহ",
"countriesSearchHint": "দেশ বা কোড...",
"countriesYourLanguagesTitle": "আপনার ভাষাসমূহ",
"customStationsAddCta": "নিজস্ব স্টেশন যোগ করুন",
"equalizerActiveOutputDefault": "এই ডিভাইসের স্পিকার",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "একটি নাম লিখুন",
"recordingRenameLabel": "নাম",
"recordingsLibraryEmptySubtitle": "আপনি যেসব রেকর্ডিং সংরক্ষণ করবেন তা এখানে দেখা যাবে।",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · সীমা পৌঁছালে সবচেয়ে পুরনোগুলো মুছে যায়",
"recordingsLibraryEmptyTitle": "এখনও কোনো রেকর্ডিং নেই",
"recordingsLibrarySettingsTooltip": "রেকর্ডিং সেটিংস",
"recordingsLibraryStorageCaption": "{totalMb} MB-এর মধ্যে {usedMb} MB ব্যবহৃত",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "Land",
"searchLanguageFilterLabel": "Sprache",
"searchMinQualityFilterLabel": "Mindestqualität",
"searchLoadingStationsLabel": "SENDER WERDEN GESUCHT…",
"searchEmptyTitle": "Suche nach einem Sender",
"searchNoResultsTitle": "Keine Ergebnisse",
"searchNoResultsForQueryTitle": "Keine Ergebnisse für „{query}“",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Nutze die obere Leiste oder die Chips, um Sender aus aller Welt zu entdecken.",
"searchNoResultsSubtitle": "Versuche, Filter zu entfernen oder einen anderen Namen einzugeben, um einen aktiven Sender zu finden.",
"countrySpain": "Spanien",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "üblich",
"saveFavoritesAlarmHint": "Speichere Sender in Favoriten, um sie als musikalischen Alarm zu verwenden.",
"useCurrentStationAction": "Aktuellen Sender verwenden",
"playDuringVacations": "Während der Ferien läuten",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "WIEDERHOLEN",
"androidReliabilityTitle": "Android-Zuverlässigkeit prüfen",
"closeAction": "Schließen",
"customOption": "Benutzerdefiniert",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Lautstärke wird erhöht",
"countriesAllTitle": "Alle Länder",
"countriesScreenTitle": "Länder",
"countriesSearchHint": "Land oder Code...",
"countriesYourLanguagesTitle": "Deine Sprachen",
"customStationsAddCta": "Benutzerdefinierten Sender hinzufügen",
"equalizerActiveOutputDefault": "Der Lautsprecher dieses Geräts",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Gib einen Namen ein",
"recordingRenameLabel": "Name",
"recordingsLibraryEmptySubtitle": "Aufnahmen, die du speicherst, erscheinen hier.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · älteste werden bei Erreichen des Limits gelöscht",
"recordingsLibraryEmptyTitle": "Noch keine Aufnahmen",
"recordingsLibrarySettingsTooltip": "Aufnahmeeinstellungen",
"recordingsLibraryStorageCaption": "{usedMb} MB von {totalMb} MB belegt",
+7
View File
@@ -233,6 +233,7 @@
}
}
},
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · purges oldest at limit",
"recordingsLibraryEmptyTitle": "No recordings yet",
"recordingsLibraryEmptySubtitle": "Recordings you save will appear here.",
"recordingActionRename": "Rename",
@@ -315,13 +316,17 @@
"searchCountryFilterLabel": "Country",
"searchLanguageFilterLabel": "Language",
"searchMinQualityFilterLabel": "Minimum quality",
"searchLoadingStationsLabel": "SEARCHING FOR STATIONS…",
"searchEmptyTitle": "Search for a station",
"searchNoResultsTitle": "No results",
"searchNoResultsForQueryTitle": "No results for \"{query}\"",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Use the top bar or chips to discover stations from around the world.",
"searchNoResultsSubtitle": "Try removing filters or typing another name to find an active station.",
"searchResultsCount": "{count, plural, =1{1 result} other{{count} results}}",
"searchClearFiltersAction": "{count, plural, =1{Clear filter} other{Clear {count} filters}}",
"countriesScreenTitle": "Countries",
"countriesSearchHint": "Country or code...",
"countriesYourLanguagesTitle": "Your languages",
"countriesAllTitle": "All countries",
"radioCountriesError": "We couldn't load the countries.",
@@ -509,6 +514,7 @@
}
}
},
"alarmSnoozeUsualLabel": "usual",
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
"useCurrentStationAction": "Use current station",
"playDuringVacations": "Play during vacations",
@@ -698,6 +704,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "REPEAT",
"androidReliabilityTitle": "Review Android reliability",
"closeAction": "Close",
"customOption": "Custom",
+7
View File
@@ -233,6 +233,7 @@
}
}
},
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · se borran las más antiguas al llegar al límite",
"recordingsLibraryEmptyTitle": "Todavía no hay grabaciones",
"recordingsLibraryEmptySubtitle": "Las grabaciones que guardes van a aparecer acá.",
"recordingActionRename": "Renombrar",
@@ -315,13 +316,17 @@
"searchCountryFilterLabel": "País",
"searchLanguageFilterLabel": "Idioma",
"searchMinQualityFilterLabel": "Calidad mínima",
"searchLoadingStationsLabel": "BUSCANDO EMISORAS…",
"searchEmptyTitle": "Buscá una emisora",
"searchNoResultsTitle": "Sin resultados",
"searchNoResultsForQueryTitle": "Sin resultados para «{query}»",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Usá la barra superior o los chips para descubrir señales de todo el mundo.",
"searchNoResultsSubtitle": "Probá quitar filtros o escribir otro nombre para encontrar una señal activa.",
"searchResultsCount": "{count, plural, =1{1 resultado} other{{count} resultados}}",
"searchClearFiltersAction": "{count, plural, =1{Quitar el filtro} other{Quitar los {count} filtros}}",
"countriesScreenTitle": "Países",
"countriesSearchHint": "País o código...",
"countriesYourLanguagesTitle": "Tus idiomas",
"countriesAllTitle": "Todos los países",
"radioCountriesError": "No pudimos cargar los países.",
@@ -509,6 +514,7 @@
}
}
},
"alarmSnoozeUsualLabel": "habitual",
"saveFavoritesAlarmHint": "Guardá emisoras en Favoritos para usarlas como alarma musical.",
"useCurrentStationAction": "Usar emisora actual",
"playDuringVacations": "Sonar durante vacaciones",
@@ -654,6 +660,7 @@
"@alarmScheduleOnce": {"placeholders": {"date": {}}},
"alarmScheduleWeekdays": "Días: {days}",
"@alarmScheduleWeekdays": {"placeholders": {"days": {}}},
"alarmRepeatSectionLabel": "REPETIR",
"androidReliabilityTitle": "Revisar fiabilidad Android",
"closeAction": "Cerrar",
"customOption": "Personalizada",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "Pays",
"searchLanguageFilterLabel": "Langue",
"searchMinQualityFilterLabel": "Qualité minimale",
"searchLoadingStationsLabel": "RECHERCHE DE STATIONS…",
"searchEmptyTitle": "Recherchez une station",
"searchNoResultsTitle": "Aucun résultat",
"searchNoResultsForQueryTitle": "Aucun résultat pour « {query} »",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Utilisez la barre du haut ou les pastilles pour découvrir des stations du monde entier.",
"searchNoResultsSubtitle": "Essayez de retirer des filtres ou de saisir un autre nom pour trouver une station active.",
"countrySpain": "Espagne",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "habituel",
"saveFavoritesAlarmHint": "Enregistrez des stations dans les Favoris pour les utiliser comme alarme musicale.",
"useCurrentStationAction": "Utiliser la station actuelle",
"playDuringVacations": "Sonner pendant les vacances",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "RÉPÉTER",
"androidReliabilityTitle": "Vérifier la fiabilité Android",
"closeAction": "Fermer",
"customOption": "Personnalisée",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Augmentation du volume",
"countriesAllTitle": "Tous les pays",
"countriesScreenTitle": "Pays",
"countriesSearchHint": "Pays ou code...",
"countriesYourLanguagesTitle": "Vos langues",
"customStationsAddCta": "Ajouter une station personnalisée",
"equalizerActiveOutputDefault": "Le haut-parleur de cet appareil",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Saisissez un nom",
"recordingRenameLabel": "Nom",
"recordingsLibraryEmptySubtitle": "Les enregistrements que vous sauvegardez apparaîtront ici.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · supprime les plus anciens à la limite",
"recordingsLibraryEmptyTitle": "Aucun enregistrement pour l'instant",
"recordingsLibrarySettingsTooltip": "Paramètres d'enregistrement",
"recordingsLibraryStorageCaption": "{usedMb} Mo sur {totalMb} Mo utilisés",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "देश",
"searchLanguageFilterLabel": "भाषा",
"searchMinQualityFilterLabel": "न्यूनतम गुणवत्ता",
"searchLoadingStationsLabel": "स्टेशन खोजे जा रहे हैं…",
"searchEmptyTitle": "एक स्टेशन खोजें",
"searchNoResultsTitle": "कोई परिणाम नहीं",
"searchNoResultsForQueryTitle": "\"{query}\" के लिए कोई परिणाम नहीं",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "दुनिया भर के सिग्नल खोजने के लिए ऊपर की बार या चिप्स इस्तेमाल करें।",
"searchNoResultsSubtitle": "सक्रिय सिग्नल पाने के लिए फ़िल्टर हटाएँ या कोई दूसरा नाम लिखें।",
"countrySpain": "स्पेन",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "सामान्य",
"saveFavoritesAlarmHint": "उन्हें संगीतमय अलार्म के रूप में इस्तेमाल करने के लिए स्टेशन पसंदीदा में सहेजें।",
"useCurrentStationAction": "वर्तमान स्टेशन इस्तेमाल करें",
"playDuringVacations": "छुट्टियों में बजाएँ",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "दोहराएं",
"androidReliabilityTitle": "Android विश्वसनीयता जाँचें",
"closeAction": "बंद करें",
"customOption": "कस्टम",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "आवाज़ बढ़ाई जा रही है",
"countriesAllTitle": "सभी देश",
"countriesScreenTitle": "देश",
"countriesSearchHint": "देश या कोड...",
"countriesYourLanguagesTitle": "आपकी भाषाएं",
"customStationsAddCta": "मनचाहा स्टेशन जोड़ें",
"equalizerActiveOutputDefault": "इस डिवाइस का स्पीकर",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "एक नाम डालें",
"recordingRenameLabel": "नाम",
"recordingsLibraryEmptySubtitle": "आप जो रिकॉर्डिंग सहेजेंगे, वे यहां दिखाई देंगी।",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · सीमा पूरी होने पर सबसे पुरानी रिकॉर्डिंग हटा दी जाती हैं",
"recordingsLibraryEmptyTitle": "अभी तक कोई रिकॉर्डिंग नहीं",
"recordingsLibrarySettingsTooltip": "रिकॉर्डिंग सेटिंग्स",
"recordingsLibraryStorageCaption": "{totalMb} MB में से {usedMb} MB इस्तेमाल हुआ",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "Negara",
"searchLanguageFilterLabel": "Bahasa",
"searchMinQualityFilterLabel": "Kualitas minimum",
"searchLoadingStationsLabel": "MENCARI STASIUN…",
"searchEmptyTitle": "Cari stasiun",
"searchNoResultsTitle": "Tidak ada hasil",
"searchNoResultsForQueryTitle": "Tidak ada hasil untuk \"{query}\"",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Gunakan bilah atas atau chip untuk menemukan sinyal dari seluruh dunia.",
"searchNoResultsSubtitle": "Coba hapus filter atau tulis nama lain untuk menemukan sinyal aktif.",
"countrySpain": "Spanyol",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "biasa",
"saveFavoritesAlarmHint": "Simpan stasiun ke Favorit untuk digunakan sebagai alarm musik.",
"useCurrentStationAction": "Gunakan stasiun saat ini",
"playDuringVacations": "Bunyi saat liburan",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "ULANGI",
"androidReliabilityTitle": "Tinjau keandalan Android",
"closeAction": "Tutup",
"customOption": "Kustom",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Menaikkan volume",
"countriesAllTitle": "Semua negara",
"countriesScreenTitle": "Negara",
"countriesSearchHint": "Negara atau kode...",
"countriesYourLanguagesTitle": "Bahasa Anda",
"customStationsAddCta": "Tambahkan stasiun khusus",
"equalizerActiveOutputDefault": "Speaker perangkat ini",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Masukkan nama",
"recordingRenameLabel": "Nama",
"recordingsLibraryEmptySubtitle": "Rekaman yang Anda simpan akan muncul di sini.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · yang terlama dihapus saat mencapai batas",
"recordingsLibraryEmptyTitle": "Belum ada rekaman",
"recordingsLibrarySettingsTooltip": "Pengaturan rekaman",
"recordingsLibraryStorageCaption": "{usedMb} MB dari {totalMb} MB terpakai",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "Paese",
"searchLanguageFilterLabel": "Lingua",
"searchMinQualityFilterLabel": "Qualità minima",
"searchLoadingStationsLabel": "RICERCA STAZIONI IN CORSO…",
"searchEmptyTitle": "Cerca un'emittente",
"searchNoResultsTitle": "Nessun risultato",
"searchNoResultsForQueryTitle": "Nessun risultato per \"{query}\"",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Usa la barra in alto o i chip per scoprire emittenti da tutto il mondo.",
"searchNoResultsSubtitle": "Prova a rimuovere i filtri o a digitare un altro nome per trovare un'emittente attiva.",
"countrySpain": "Spagna",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "abituale",
"saveFavoritesAlarmHint": "Salva emittenti nei Preferiti per usarle come sveglia musicale.",
"useCurrentStationAction": "Usa emittente attuale",
"playDuringVacations": "Suona durante le vacanze",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "RIPETI",
"androidReliabilityTitle": "Controlla affidabilità Android",
"closeAction": "Chiudi",
"customOption": "Personalizzata",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Aumento del volume",
"countriesAllTitle": "Tutti i paesi",
"countriesScreenTitle": "Paesi",
"countriesSearchHint": "Paese o codice...",
"countriesYourLanguagesTitle": "Le tue lingue",
"customStationsAddCta": "Aggiungi emittente personalizzata",
"equalizerActiveOutputDefault": "L'altoparlante di questo dispositivo",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Inserisci un nome",
"recordingRenameLabel": "Nome",
"recordingsLibraryEmptySubtitle": "Le registrazioni che salvi appariranno qui.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · elimina le più vecchie al raggiungimento del limite",
"recordingsLibraryEmptyTitle": "Ancora nessuna registrazione",
"recordingsLibrarySettingsTooltip": "Impostazioni di registrazione",
"recordingsLibraryStorageCaption": "{usedMb} MB di {totalMb} MB usati",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "国",
"searchLanguageFilterLabel": "言語",
"searchMinQualityFilterLabel": "最低品質",
"searchLoadingStationsLabel": "局を検索中…",
"searchEmptyTitle": "局を検索",
"searchNoResultsTitle": "結果がありません",
"searchNoResultsForQueryTitle": "「{query}」の結果はありません",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "上部バーやチップを使って、世界中の電波を見つけましょう。",
"searchNoResultsSubtitle": "有効な電波を見つけるには、フィルターを外すか別の名前を入力してください。",
"countrySpain": "スペイン",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "通常",
"saveFavoritesAlarmHint": "音楽アラームとして使うには、局をお気に入りに保存してください。",
"useCurrentStationAction": "現在の局を使用",
"playDuringVacations": "休暇中も鳴らす",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "繰り返し",
"androidReliabilityTitle": "Androidの信頼性を確認",
"closeAction": "閉じる",
"customOption": "カスタム",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "音量を上げています",
"countriesAllTitle": "すべての国",
"countriesScreenTitle": "国",
"countriesSearchHint": "国名またはコード...",
"countriesYourLanguagesTitle": "あなたの言語",
"customStationsAddCta": "カスタム局を追加",
"equalizerActiveOutputDefault": "この端末のスピーカー",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "名前を入力してください",
"recordingRenameLabel": "名前",
"recordingsLibraryEmptySubtitle": "保存した録音はここに表示されます。",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave・上限に達すると古い順に削除されます",
"recordingsLibraryEmptyTitle": "まだ録音がありません",
"recordingsLibrarySettingsTooltip": "録音設定",
"recordingsLibraryStorageCaption": "{totalMb} MB 中 {usedMb} MB 使用済み",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "País",
"searchLanguageFilterLabel": "Idioma",
"searchMinQualityFilterLabel": "Qualidade mínima",
"searchLoadingStationsLabel": "PROCURANDO EMISSORAS…",
"searchEmptyTitle": "Busque uma estação",
"searchNoResultsTitle": "Sem resultados",
"searchNoResultsForQueryTitle": "Nenhum resultado para \"{query}\"",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Use a barra superior ou os chips para descobrir estações do mundo todo.",
"searchNoResultsSubtitle": "Tente remover filtros ou digitar outro nome para encontrar uma estação ativa.",
"countrySpain": "Espanha",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "usual",
"saveFavoritesAlarmHint": "Salve estações nos Favoritos para usá-las como alarme musical.",
"useCurrentStationAction": "Usar estação atual",
"playDuringVacations": "Tocar durante as férias",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "REPETIÇÃO",
"androidReliabilityTitle": "Revisar confiabilidade Android",
"closeAction": "Fechar",
"customOption": "Personalizada",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Aumentando o volume",
"countriesAllTitle": "Todos os países",
"countriesScreenTitle": "Países",
"countriesSearchHint": "País ou código...",
"countriesYourLanguagesTitle": "Seus idiomas",
"customStationsAddCta": "Adicionar estação personalizada",
"equalizerActiveOutputDefault": "O alto-falante deste dispositivo",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Digite um nome",
"recordingRenameLabel": "Nome",
"recordingsLibraryEmptySubtitle": "As gravações que você salvar vão aparecer aqui.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · apaga as mais antigas ao atingir o limite",
"recordingsLibraryEmptyTitle": "Ainda não há gravações",
"recordingsLibrarySettingsTooltip": "Configurações de gravação",
"recordingsLibraryStorageCaption": "{usedMb} MB de {totalMb} MB usados",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "Страна",
"searchLanguageFilterLabel": "Язык",
"searchMinQualityFilterLabel": "Минимальное качество",
"searchLoadingStationsLabel": "ПОИСК СТАНЦИЙ…",
"searchEmptyTitle": "Найдите станцию",
"searchNoResultsTitle": "Нет результатов",
"searchNoResultsForQueryTitle": "Нет результатов по запросу «{query}»",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "Используйте верхнюю строку или чипы, чтобы находить сигналы со всего мира.",
"searchNoResultsSubtitle": "Попробуйте убрать фильтры или ввести другое название, чтобы найти активный сигнал.",
"countrySpain": "Испания",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "обычно",
"saveFavoritesAlarmHint": "Сохраните станции в избранное, чтобы использовать их как музыкальный будильник.",
"useCurrentStationAction": "Использовать текущую станцию",
"playDuringVacations": "Звонить во время отпусков",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "ПОВТОР",
"androidReliabilityTitle": "Проверить надёжность Android",
"closeAction": "Закрыть",
"customOption": "Своя",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "Громкость нарастает",
"countriesAllTitle": "Все страны",
"countriesScreenTitle": "Страны",
"countriesSearchHint": "Страна или код...",
"countriesYourLanguagesTitle": "Ваши языки",
"customStationsAddCta": "Добавить пользовательскую станцию",
"equalizerActiveOutputDefault": "Динамик этого устройства",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "Введите название",
"recordingRenameLabel": "Название",
"recordingsLibraryEmptySubtitle": "Записи, которые вы сохраните, появятся здесь.",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · при достижении лимита удаляются старые записи",
"recordingsLibraryEmptyTitle": "Записей пока нет",
"recordingsLibrarySettingsTooltip": "Настройки записи",
"recordingsLibraryStorageCaption": "Использовано {usedMb} МБ из {totalMb} МБ",
+7
View File
@@ -262,8 +262,11 @@
"searchCountryFilterLabel": "国家/地区",
"searchLanguageFilterLabel": "语言",
"searchMinQualityFilterLabel": "最低质量",
"searchLoadingStationsLabel": "正在搜索电台…",
"searchEmptyTitle": "搜索电台",
"searchNoResultsTitle": "没有结果",
"searchNoResultsForQueryTitle": "未找到与\"{query}\"相关的结果",
"@searchNoResultsForQueryTitle": {"placeholders": {"query": {}}},
"searchEmptySubtitle": "使用顶部搜索栏或筛选标签,发现世界各地的电台信号。",
"searchNoResultsSubtitle": "尝试减少筛选条件,或换个名称搜索,找到正在播出的电台。",
"countrySpain": "西班牙",
@@ -440,6 +443,7 @@
}
}
},
"alarmSnoozeUsualLabel": "常用",
"saveFavoritesAlarmHint": "将电台保存到收藏,即可把它们用作音乐闹钟。",
"useCurrentStationAction": "使用当前电台",
"playDuringVacations": "假期期间响铃",
@@ -589,6 +593,7 @@
"days": {}
}
},
"alarmRepeatSectionLabel": "重复",
"androidReliabilityTitle": "检查 Android 可靠性",
"closeAction": "关闭",
"customOption": "自定义",
@@ -705,6 +710,7 @@
"alarmVolumeRisingStatus": "音量渐强中",
"countriesAllTitle": "所有国家",
"countriesScreenTitle": "国家",
"countriesSearchHint": "国家或代码...",
"countriesYourLanguagesTitle": "你的语言",
"customStationsAddCta": "添加自定义电台",
"equalizerActiveOutputDefault": "此设备的扬声器",
@@ -746,6 +752,7 @@
"recordingRenameEmptyError": "请输入名称",
"recordingRenameLabel": "名称",
"recordingsLibraryEmptySubtitle": "你保存的录音会显示在这里。",
"recordingsLibraryStorageFolderCaption": "Music/PluriWave · 达到上限时会删除最旧的文件",
"recordingsLibraryEmptyTitle": "暂无录音",
"recordingsLibrarySettingsTooltip": "录音设置",
"recordingsLibraryStorageCaption": "已使用 {usedMb} MB / 共 {totalMb} MB",
+36
View File
@@ -880,6 +880,12 @@ abstract class AppLocalizations {
/// **'{usedMb} MB de {totalMb} MB usados'**
String recordingsLibraryStorageCaption(int usedMb, int totalMb);
/// No description provided for @recordingsLibraryStorageFolderCaption.
///
/// In es, this message translates to:
/// **'Music/PluriWave · se borran las más antiguas al llegar al límite'**
String get recordingsLibraryStorageFolderCaption;
/// No description provided for @recordingsLibraryEmptyTitle.
///
/// In es, this message translates to:
@@ -1186,6 +1192,12 @@ abstract class AppLocalizations {
/// **'Calidad mínima'**
String get searchMinQualityFilterLabel;
/// No description provided for @searchLoadingStationsLabel.
///
/// In es, this message translates to:
/// **'BUSCANDO EMISORAS…'**
String get searchLoadingStationsLabel;
/// No description provided for @searchEmptyTitle.
///
/// In es, this message translates to:
@@ -1198,6 +1210,12 @@ abstract class AppLocalizations {
/// **'Sin resultados'**
String get searchNoResultsTitle;
/// No description provided for @searchNoResultsForQueryTitle.
///
/// In es, this message translates to:
/// **'Sin resultados para «{query}»'**
String searchNoResultsForQueryTitle(Object query);
/// No description provided for @searchEmptySubtitle.
///
/// In es, this message translates to:
@@ -1228,6 +1246,12 @@ abstract class AppLocalizations {
/// **'Países'**
String get countriesScreenTitle;
/// No description provided for @countriesSearchHint.
///
/// In es, this message translates to:
/// **'País o código...'**
String get countriesSearchHint;
/// No description provided for @countriesYourLanguagesTitle.
///
/// In es, this message translates to:
@@ -1882,6 +1906,12 @@ abstract class AppLocalizations {
/// **'{minutes} min'**
String alarmSnoozeOptionLabel(int minutes);
/// No description provided for @alarmSnoozeUsualLabel.
///
/// In es, this message translates to:
/// **'habitual'**
String get alarmSnoozeUsualLabel;
/// No description provided for @saveFavoritesAlarmHint.
///
/// In es, this message translates to:
@@ -2462,6 +2492,12 @@ abstract class AppLocalizations {
/// **'Días: {days}'**
String alarmScheduleWeekdays(Object days);
/// No description provided for @alarmRepeatSectionLabel.
///
/// In es, this message translates to:
/// **'REPETIR'**
String get alarmRepeatSectionLabel;
/// No description provided for @androidReliabilityTitle.
///
/// In es, this message translates to:
+21
View File
@@ -441,6 +441,10 @@ class AppLocalizationsAr extends AppLocalizations {
return 'تم استخدام $usedMb ميغابايت من أصل $totalMb ميغابايت';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · يتم حذف الأقدم عند بلوغ الحد';
@override
String get recordingsLibraryEmptyTitle => 'لا توجد تسجيلات بعد';
@@ -612,12 +616,20 @@ class AppLocalizationsAr extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'الحد الأدنى للجودة';
@override
String get searchLoadingStationsLabel => 'جارٍ البحث عن محطات…';
@override
String get searchEmptyTitle => 'ابحث عن محطة';
@override
String get searchNoResultsTitle => 'لا توجد نتائج';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'لا توجد نتائج لـ «$query»';
}
@override
String get searchEmptySubtitle =>
'استخدم الشريط العلوي أو الشرائح لاكتشاف إشارات من كل العالم.';
@@ -655,6 +667,9 @@ class AppLocalizationsAr extends AppLocalizations {
@override
String get countriesScreenTitle => 'الدول';
@override
String get countriesSearchHint => 'الدولة أو الرمز...';
@override
String get countriesYourLanguagesTitle => 'لغاتك';
@@ -1014,6 +1029,9 @@ class AppLocalizationsAr extends AppLocalizations {
return '$minutes د';
}
@override
String get alarmSnoozeUsualLabel => 'المعتاد';
@override
String get saveFavoritesAlarmHint =>
'احفظ محطات في المفضلة لاستخدامها كمنبه موسيقي.';
@@ -1351,6 +1369,9 @@ class AppLocalizationsAr extends AppLocalizations {
return 'الأيام: $days';
}
@override
String get alarmRepeatSectionLabel => 'تكرار';
@override
String get androidReliabilityTitle => 'مراجعة موثوقية Android';
+21
View File
@@ -446,6 +446,10 @@ class AppLocalizationsBn extends AppLocalizations {
return '$totalMb MB-এর মধ্যে $usedMb MB ব্যবহৃত';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · সীমা পৌঁছালে সবচেয়ে পুরনোগুলো মুছে যায়';
@override
String get recordingsLibraryEmptyTitle => 'এখনও কোনো রেকর্ডিং নেই';
@@ -619,12 +623,20 @@ class AppLocalizationsBn extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'ন্যূনতম গুণমান';
@override
String get searchLoadingStationsLabel => 'স্টেশন খোঁজা হচ্ছে…';
@override
String get searchEmptyTitle => 'একটি স্টেশন খুঁজুন';
@override
String get searchNoResultsTitle => 'কোনো ফলাফল নেই';
@override
String searchNoResultsForQueryTitle(Object query) {
return '\"$query\"-এর জন্য কোনো ফলাফল নেই';
}
@override
String get searchEmptySubtitle =>
'উপরের বার বা চিপ ব্যবহার করে সারা বিশ্বের সিগন্যাল আবিষ্কার করুন।';
@@ -658,6 +670,9 @@ class AppLocalizationsBn extends AppLocalizations {
@override
String get countriesScreenTitle => 'দেশসমূহ';
@override
String get countriesSearchHint => 'দেশ বা কোড...';
@override
String get countriesYourLanguagesTitle => 'আপনার ভাষাসমূহ';
@@ -1019,6 +1034,9 @@ class AppLocalizationsBn extends AppLocalizations {
return '$minutes মিনিট';
}
@override
String get alarmSnoozeUsualLabel => 'সাধারণ';
@override
String get saveFavoritesAlarmHint =>
'সুরেলা অ্যালার্ম হিসেবে ব্যবহার করতে প্রিয়তে স্টেশন সংরক্ষণ করুন।';
@@ -1360,6 +1378,9 @@ class AppLocalizationsBn extends AppLocalizations {
return 'দিন: $days';
}
@override
String get alarmRepeatSectionLabel => 'পুনরাবৃত্তি';
@override
String get androidReliabilityTitle => 'Android নির্ভরযোগ্যতা দেখুন';
+21
View File
@@ -449,6 +449,10 @@ class AppLocalizationsDe extends AppLocalizations {
return '$usedMb MB von $totalMb MB belegt';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · älteste werden bei Erreichen des Limits gelöscht';
@override
String get recordingsLibraryEmptyTitle => 'Noch keine Aufnahmen';
@@ -622,12 +626,20 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Mindestqualität';
@override
String get searchLoadingStationsLabel => 'SENDER WERDEN GESUCHT…';
@override
String get searchEmptyTitle => 'Suche nach einem Sender';
@override
String get searchNoResultsTitle => 'Keine Ergebnisse';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Keine Ergebnisse für „$query';
}
@override
String get searchEmptySubtitle =>
'Nutze die obere Leiste oder die Chips, um Sender aus aller Welt zu entdecken.';
@@ -661,6 +673,9 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get countriesScreenTitle => 'Länder';
@override
String get countriesSearchHint => 'Land oder Code...';
@override
String get countriesYourLanguagesTitle => 'Deine Sprachen';
@@ -1022,6 +1037,9 @@ class AppLocalizationsDe extends AppLocalizations {
return '$minutes Min.';
}
@override
String get alarmSnoozeUsualLabel => 'üblich';
@override
String get saveFavoritesAlarmHint =>
'Speichere Sender in Favoriten, um sie als musikalischen Alarm zu verwenden.';
@@ -1368,6 +1386,9 @@ class AppLocalizationsDe extends AppLocalizations {
return 'Tage: $days';
}
@override
String get alarmRepeatSectionLabel => 'WIEDERHOLEN';
@override
String get androidReliabilityTitle => 'Android-Zuverlässigkeit prüfen';
+21
View File
@@ -443,6 +443,10 @@ class AppLocalizationsEn extends AppLocalizations {
return '$usedMb MB of $totalMb MB used';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · purges oldest at limit';
@override
String get recordingsLibraryEmptyTitle => 'No recordings yet';
@@ -615,12 +619,20 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Minimum quality';
@override
String get searchLoadingStationsLabel => 'SEARCHING FOR STATIONS…';
@override
String get searchEmptyTitle => 'Search for a station';
@override
String get searchNoResultsTitle => 'No results';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'No results for \"$query\"';
}
@override
String get searchEmptySubtitle =>
'Use the top bar or chips to discover stations from around the world.';
@@ -654,6 +666,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get countriesScreenTitle => 'Countries';
@override
String get countriesSearchHint => 'Country or code...';
@override
String get countriesYourLanguagesTitle => 'Your languages';
@@ -1014,6 +1029,9 @@ class AppLocalizationsEn extends AppLocalizations {
return '$minutes min';
}
@override
String get alarmSnoozeUsualLabel => 'usual';
@override
String get saveFavoritesAlarmHint =>
'Save stations in Favorites to use them as a music alarm.';
@@ -1352,6 +1370,9 @@ class AppLocalizationsEn extends AppLocalizations {
return 'Days: $days';
}
@override
String get alarmRepeatSectionLabel => 'REPEAT';
@override
String get androidReliabilityTitle => 'Review Android reliability';
+21
View File
@@ -447,6 +447,10 @@ class AppLocalizationsEs extends AppLocalizations {
return '$usedMb MB de $totalMb MB usados';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · se borran las más antiguas al llegar al límite';
@override
String get recordingsLibraryEmptyTitle => 'Todavía no hay grabaciones';
@@ -620,12 +624,20 @@ class AppLocalizationsEs extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Calidad mínima';
@override
String get searchLoadingStationsLabel => 'BUSCANDO EMISORAS…';
@override
String get searchEmptyTitle => 'Buscá una emisora';
@override
String get searchNoResultsTitle => 'Sin resultados';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Sin resultados para «$query»';
}
@override
String get searchEmptySubtitle =>
'Usá la barra superior o los chips para descubrir señales de todo el mundo.';
@@ -659,6 +671,9 @@ class AppLocalizationsEs extends AppLocalizations {
@override
String get countriesScreenTitle => 'Países';
@override
String get countriesSearchHint => 'País o código...';
@override
String get countriesYourLanguagesTitle => 'Tus idiomas';
@@ -1019,6 +1034,9 @@ class AppLocalizationsEs extends AppLocalizations {
return '$minutes min';
}
@override
String get alarmSnoozeUsualLabel => 'habitual';
@override
String get saveFavoritesAlarmHint =>
'Guardá emisoras en Favoritos para usarlas como alarma musical.';
@@ -1362,6 +1380,9 @@ class AppLocalizationsEs extends AppLocalizations {
return 'Días: $days';
}
@override
String get alarmRepeatSectionLabel => 'REPETIR';
@override
String get androidReliabilityTitle => 'Revisar fiabilidad Android';
+21
View File
@@ -451,6 +451,10 @@ class AppLocalizationsFr extends AppLocalizations {
return '$usedMb Mo sur $totalMb Mo utilisés';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · supprime les plus anciens à la limite';
@override
String get recordingsLibraryEmptyTitle =>
'Aucun enregistrement pour l\'instant';
@@ -624,12 +628,20 @@ class AppLocalizationsFr extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Qualité minimale';
@override
String get searchLoadingStationsLabel => 'RECHERCHE DE STATIONS…';
@override
String get searchEmptyTitle => 'Recherchez une station';
@override
String get searchNoResultsTitle => 'Aucun résultat';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Aucun résultat pour « $query »';
}
@override
String get searchEmptySubtitle =>
'Utilisez la barre du haut ou les pastilles pour découvrir des stations du monde entier.';
@@ -663,6 +675,9 @@ class AppLocalizationsFr extends AppLocalizations {
@override
String get countriesScreenTitle => 'Pays';
@override
String get countriesSearchHint => 'Pays ou code...';
@override
String get countriesYourLanguagesTitle => 'Vos langues';
@@ -1024,6 +1039,9 @@ class AppLocalizationsFr extends AppLocalizations {
return '$minutes min';
}
@override
String get alarmSnoozeUsualLabel => 'habituel';
@override
String get saveFavoritesAlarmHint =>
'Enregistrez des stations dans les Favoris pour les utiliser comme alarme musicale.';
@@ -1372,6 +1390,9 @@ class AppLocalizationsFr extends AppLocalizations {
return 'Jours : $days';
}
@override
String get alarmRepeatSectionLabel => 'RÉPÉTER';
@override
String get androidReliabilityTitle => 'Vérifier la fiabilité Android';
+21
View File
@@ -444,6 +444,10 @@ class AppLocalizationsHi extends AppLocalizations {
return '$totalMb MB में से $usedMb MB इस्तेमाल हुआ';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · सीमा पूरी होने पर सबसे पुरानी रिकॉर्डिंग हटा दी जाती हैं';
@override
String get recordingsLibraryEmptyTitle => 'अभी तक कोई रिकॉर्डिंग नहीं';
@@ -616,12 +620,20 @@ class AppLocalizationsHi extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'न्यूनतम गुणवत्ता';
@override
String get searchLoadingStationsLabel => 'स्टेशन खोजे जा रहे हैं…';
@override
String get searchEmptyTitle => 'एक स्टेशन खोजें';
@override
String get searchNoResultsTitle => 'कोई परिणाम नहीं';
@override
String searchNoResultsForQueryTitle(Object query) {
return '\"$query\" के लिए कोई परिणाम नहीं';
}
@override
String get searchEmptySubtitle =>
'दुनिया भर के सिग्नल खोजने के लिए ऊपर की बार या चिप्स इस्तेमाल करें।';
@@ -655,6 +667,9 @@ class AppLocalizationsHi extends AppLocalizations {
@override
String get countriesScreenTitle => 'देश';
@override
String get countriesSearchHint => 'देश या कोड...';
@override
String get countriesYourLanguagesTitle => 'आपकी भाषाएं';
@@ -1015,6 +1030,9 @@ class AppLocalizationsHi extends AppLocalizations {
return '$minutes मिनट';
}
@override
String get alarmSnoozeUsualLabel => 'सामान्य';
@override
String get saveFavoritesAlarmHint =>
'उन्हें संगीतमय अलार्म के रूप में इस्तेमाल करने के लिए स्टेशन पसंदीदा में सहेजें।';
@@ -1355,6 +1373,9 @@ class AppLocalizationsHi extends AppLocalizations {
return 'दिन: $days';
}
@override
String get alarmRepeatSectionLabel => 'दोहराएं';
@override
String get androidReliabilityTitle => 'Android विश्वसनीयता जाँचें';
+21
View File
@@ -444,6 +444,10 @@ class AppLocalizationsId extends AppLocalizations {
return '$usedMb MB dari $totalMb MB terpakai';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · yang terlama dihapus saat mencapai batas';
@override
String get recordingsLibraryEmptyTitle => 'Belum ada rekaman';
@@ -617,12 +621,20 @@ class AppLocalizationsId extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Kualitas minimum';
@override
String get searchLoadingStationsLabel => 'MENCARI STASIUN…';
@override
String get searchEmptyTitle => 'Cari stasiun';
@override
String get searchNoResultsTitle => 'Tidak ada hasil';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Tidak ada hasil untuk \"$query\"';
}
@override
String get searchEmptySubtitle =>
'Gunakan bilah atas atau chip untuk menemukan sinyal dari seluruh dunia.';
@@ -655,6 +667,9 @@ class AppLocalizationsId extends AppLocalizations {
@override
String get countriesScreenTitle => 'Negara';
@override
String get countriesSearchHint => 'Negara atau kode...';
@override
String get countriesYourLanguagesTitle => 'Bahasa Anda';
@@ -1018,6 +1033,9 @@ class AppLocalizationsId extends AppLocalizations {
return '$minutes mnt';
}
@override
String get alarmSnoozeUsualLabel => 'biasa';
@override
String get saveFavoritesAlarmHint =>
'Simpan stasiun ke Favorit untuk digunakan sebagai alarm musik.';
@@ -1363,6 +1381,9 @@ class AppLocalizationsId extends AppLocalizations {
return 'Hari: $days';
}
@override
String get alarmRepeatSectionLabel => 'ULANGI';
@override
String get androidReliabilityTitle => 'Tinjau keandalan Android';
+21
View File
@@ -448,6 +448,10 @@ class AppLocalizationsIt extends AppLocalizations {
return '$usedMb MB di $totalMb MB usati';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · elimina le più vecchie al raggiungimento del limite';
@override
String get recordingsLibraryEmptyTitle => 'Ancora nessuna registrazione';
@@ -622,12 +626,20 @@ class AppLocalizationsIt extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Qualità minima';
@override
String get searchLoadingStationsLabel => 'RICERCA STAZIONI IN CORSO…';
@override
String get searchEmptyTitle => 'Cerca un\'emittente';
@override
String get searchNoResultsTitle => 'Nessun risultato';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Nessun risultato per \"$query\"';
}
@override
String get searchEmptySubtitle =>
'Usa la barra in alto o i chip per scoprire emittenti da tutto il mondo.';
@@ -661,6 +673,9 @@ class AppLocalizationsIt extends AppLocalizations {
@override
String get countriesScreenTitle => 'Paesi';
@override
String get countriesSearchHint => 'Paese o codice...';
@override
String get countriesYourLanguagesTitle => 'Le tue lingue';
@@ -1023,6 +1038,9 @@ class AppLocalizationsIt extends AppLocalizations {
return '$minutes min';
}
@override
String get alarmSnoozeUsualLabel => 'abituale';
@override
String get saveFavoritesAlarmHint =>
'Salva emittenti nei Preferiti per usarle come sveglia musicale.';
@@ -1371,6 +1389,9 @@ class AppLocalizationsIt extends AppLocalizations {
return 'Giorni: $days';
}
@override
String get alarmRepeatSectionLabel => 'RIPETI';
@override
String get androidReliabilityTitle => 'Controlla affidabilità Android';
+21
View File
@@ -431,6 +431,10 @@ class AppLocalizationsJa extends AppLocalizations {
return '$totalMb MB 中 $usedMb MB 使用済み';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave・上限に達すると古い順に削除されます';
@override
String get recordingsLibraryEmptyTitle => 'まだ録音がありません';
@@ -594,12 +598,20 @@ class AppLocalizationsJa extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => '最低品質';
@override
String get searchLoadingStationsLabel => '局を検索中…';
@override
String get searchEmptyTitle => '局を検索';
@override
String get searchNoResultsTitle => '結果がありません';
@override
String searchNoResultsForQueryTitle(Object query) {
return '$query」の結果はありません';
}
@override
String get searchEmptySubtitle => '上部バーやチップを使って、世界中の電波を見つけましょう。';
@@ -630,6 +642,9 @@ class AppLocalizationsJa extends AppLocalizations {
@override
String get countriesScreenTitle => '';
@override
String get countriesSearchHint => '国名またはコード...';
@override
String get countriesYourLanguagesTitle => 'あなたの言語';
@@ -985,6 +1000,9 @@ class AppLocalizationsJa extends AppLocalizations {
return '$minutes分';
}
@override
String get alarmSnoozeUsualLabel => '通常';
@override
String get saveFavoritesAlarmHint => '音楽アラームとして使うには、局をお気に入りに保存してください。';
@@ -1312,6 +1330,9 @@ class AppLocalizationsJa extends AppLocalizations {
return '曜日: $days';
}
@override
String get alarmRepeatSectionLabel => '繰り返し';
@override
String get androidReliabilityTitle => 'Androidの信頼性を確認';
+21
View File
@@ -446,6 +446,10 @@ class AppLocalizationsPt extends AppLocalizations {
return '$usedMb MB de $totalMb MB usados';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · apaga as mais antigas ao atingir o limite';
@override
String get recordingsLibraryEmptyTitle => 'Ainda não há gravações';
@@ -619,12 +623,20 @@ class AppLocalizationsPt extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Qualidade mínima';
@override
String get searchLoadingStationsLabel => 'PROCURANDO EMISSORAS…';
@override
String get searchEmptyTitle => 'Busque uma estação';
@override
String get searchNoResultsTitle => 'Sem resultados';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Nenhum resultado para \"$query\"';
}
@override
String get searchEmptySubtitle =>
'Use a barra superior ou os chips para descobrir estações do mundo todo.';
@@ -658,6 +670,9 @@ class AppLocalizationsPt extends AppLocalizations {
@override
String get countriesScreenTitle => 'Países';
@override
String get countriesSearchHint => 'País ou código...';
@override
String get countriesYourLanguagesTitle => 'Seus idiomas';
@@ -1018,6 +1033,9 @@ class AppLocalizationsPt extends AppLocalizations {
return '$minutes min';
}
@override
String get alarmSnoozeUsualLabel => 'usual';
@override
String get saveFavoritesAlarmHint =>
'Salve estações nos Favoritos para usá-las como alarme musical.';
@@ -1360,6 +1378,9 @@ class AppLocalizationsPt extends AppLocalizations {
return 'Dias: $days';
}
@override
String get alarmRepeatSectionLabel => 'REPETIÇÃO';
@override
String get androidReliabilityTitle => 'Revisar confiabilidade Android';
+21
View File
@@ -446,6 +446,10 @@ class AppLocalizationsRu extends AppLocalizations {
return 'Использовано $usedMb МБ из $totalMb МБ';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · при достижении лимита удаляются старые записи';
@override
String get recordingsLibraryEmptyTitle => 'Записей пока нет';
@@ -618,12 +622,20 @@ class AppLocalizationsRu extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => 'Минимальное качество';
@override
String get searchLoadingStationsLabel => 'ПОИСК СТАНЦИЙ…';
@override
String get searchEmptyTitle => 'Найдите станцию';
@override
String get searchNoResultsTitle => 'Нет результатов';
@override
String searchNoResultsForQueryTitle(Object query) {
return 'Нет результатов по запросу «$query»';
}
@override
String get searchEmptySubtitle =>
'Используйте верхнюю строку или чипы, чтобы находить сигналы со всего мира.';
@@ -659,6 +671,9 @@ class AppLocalizationsRu extends AppLocalizations {
@override
String get countriesScreenTitle => 'Страны';
@override
String get countriesSearchHint => 'Страна или код...';
@override
String get countriesYourLanguagesTitle => 'Ваши языки';
@@ -1020,6 +1035,9 @@ class AppLocalizationsRu extends AppLocalizations {
return '$minutes мин';
}
@override
String get alarmSnoozeUsualLabel => 'обычно';
@override
String get saveFavoritesAlarmHint =>
'Сохраните станции в избранное, чтобы использовать их как музыкальный будильник.';
@@ -1364,6 +1382,9 @@ class AppLocalizationsRu extends AppLocalizations {
return 'Дни: $days';
}
@override
String get alarmRepeatSectionLabel => 'ПОВТОР';
@override
String get androidReliabilityTitle => 'Проверить надёжность Android';
+21
View File
@@ -429,6 +429,10 @@ class AppLocalizationsZh extends AppLocalizations {
return '已使用 $usedMb MB / 共 $totalMb MB';
}
@override
String get recordingsLibraryStorageFolderCaption =>
'Music/PluriWave · 达到上限时会删除最旧的文件';
@override
String get recordingsLibraryEmptyTitle => '暂无录音';
@@ -592,12 +596,20 @@ class AppLocalizationsZh extends AppLocalizations {
@override
String get searchMinQualityFilterLabel => '最低质量';
@override
String get searchLoadingStationsLabel => '正在搜索电台…';
@override
String get searchEmptyTitle => '搜索电台';
@override
String get searchNoResultsTitle => '没有结果';
@override
String searchNoResultsForQueryTitle(Object query) {
return '未找到与\"$query\"相关的结果';
}
@override
String get searchEmptySubtitle => '使用顶部搜索栏或筛选标签,发现世界各地的电台信号。';
@@ -628,6 +640,9 @@ class AppLocalizationsZh extends AppLocalizations {
@override
String get countriesScreenTitle => '国家';
@override
String get countriesSearchHint => '国家或代码...';
@override
String get countriesYourLanguagesTitle => '你的语言';
@@ -981,6 +996,9 @@ class AppLocalizationsZh extends AppLocalizations {
return '$minutes 分钟';
}
@override
String get alarmSnoozeUsualLabel => '常用';
@override
String get saveFavoritesAlarmHint => '将电台保存到收藏,即可把它们用作音乐闹钟。';
@@ -1307,6 +1325,9 @@ class AppLocalizationsZh extends AppLocalizations {
return '星期:$days';
}
@override
String get alarmRepeatSectionLabel => '重复';
@override
String get androidReliabilityTitle => '检查 Android 可靠性';
+15 -1
View File
@@ -92,10 +92,16 @@ class PantallaBienvenida extends StatelessWidget {
const SizedBox(height: 22),
Text(
l10n.welcomeHeadline,
// Audit 14.3 (t4 line 696): 34px/ls-1.2, not
// headlineMedium's 28/ls-1.0 — a local override,
// matching the precedent already set by every
// other one-off size correction in this screen
// (14.4-14.6 below).
style: theme.textTheme.headlineMedium?.copyWith(
fontSize: 34,
fontWeight: FontWeight.w800,
height: 1.05,
letterSpacing: -1.0,
letterSpacing: -1.2,
),
),
const SizedBox(height: 12),
@@ -143,6 +149,14 @@ class PantallaBienvenida extends StatelessWidget {
height: 58,
child: FilledButton(
onPressed: () => _empezar(context),
// Audit 14.7 (t4 line 715): radius 18 — Material 3's
// default FilledButton shape is a fully-round
// StadiumBorder, which the prototype does not draw.
style: FilledButton.styleFrom(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(18),
),
),
child: Text(
l10n.welcomeCtaLabel,
style: const TextStyle(
+20 -5
View File
@@ -308,13 +308,28 @@ class _BarraDeAlmacenamiento extends StatelessWidget {
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
ClipRRect(
borderRadius: BorderRadius.circular(8),
child: LinearProgressIndicator(value: fraccion, minHeight: 8),
),
const SizedBox(height: 8),
// Audit 12.2 (t4 line 613): the bold "used of total" headline
// sits ABOVE the bar -- was the bar first, then this same string
// rendered small below it as the only caption.
Text(
l10n.recordingsLibraryStorageCaption(usadoMb, totalMb),
style: Theme.of(
context,
).textTheme.bodySmall?.copyWith(fontWeight: FontWeight.w800),
),
const SizedBox(height: 8),
// Audit 12.2: 6px bar, radius 3 (was minHeight 8, radius 8).
ClipRRect(
borderRadius: BorderRadius.circular(3),
child: LinearProgressIndicator(value: fraccion, minHeight: 6),
),
const SizedBox(height: 7),
// Audit 12.3 (t4 line 613): the real caption names the folder
// and the purge policy -- the generic "X of Y used" line moved
// up to become the headline above, it never described either of
// those.
Text(
l10n.recordingsLibraryStorageFolderCaption,
style: Theme.of(context).textTheme.bodySmall,
),
],
@@ -133,6 +133,42 @@ void main() {
},
);
testWidgets('visual fidelity (audit 14.3): the headline is 34px/w800/ls-1.2 '
'(t4 line 696), not headlineMedium\'s 28', (tester) async {
final navegacion = EstadoNavegacionRaiz();
addTearDown(navegacion.dispose);
await tester.pumpWidget(_app(navegacion: navegacion));
await tester.pumpAndSettle();
final headline = tester.widget<Text>(find.text('Tu mundo, en directo'));
expect(headline.style?.fontSize, 34);
expect(headline.style?.fontWeight, FontWeight.w800);
expect(headline.style?.letterSpacing, -1.2);
});
testWidgets('visual fidelity (audit 14.7): the CTA is a radius-18 rounded '
'rectangle (t4 line 715), not the default fully-round StadiumBorder', (
tester,
) async {
final navegacion = EstadoNavegacionRaiz();
addTearDown(navegacion.dispose);
await tester.pumpWidget(_app(navegacion: navegacion));
await tester.pumpAndSettle();
final boton = tester.widget<FilledButton>(find.byType(FilledButton));
final forma = boton.style?.shape?.resolve(<WidgetState>{});
expect(
forma,
isA<RoundedRectangleBorder>().having(
(s) => (s.borderRadius as BorderRadius).topLeft,
'topLeft radius',
const Radius.circular(18),
),
);
});
testWidgets('rendered content contains no monetization strings', (
tester,
) async {
@@ -173,6 +173,49 @@ void main() {
expect(find.text('84 MB of 200 MB used'), findsOneWidget);
});
testWidgets(
'visual fidelity (audit 12.2/12.3): the storage card shows the bold '
'"used of total" headline ABOVE the bar, then a folder-path + purge '
'caption below it (t4 line 613)',
(tester) async {
final estado = EstadoGrabacion(
servicio: _FakeServicioGrabacionConArchivos([
fijaA,
fijaB,
fijaC,
], maxBytesFijo: 200 * 1024 * 1024),
);
addTearDown(estado.dispose);
await tester.pumpWidget(
buildScreen(
estado: estado,
reproductor: _ReproductorGrabacionesFake(const {}),
),
);
await pumpStable(tester);
final headline = tester.widget<Text>(find.text('84 MB of 200 MB used'));
expect(headline.style?.fontWeight, FontWeight.w800);
expect(
find.text('Music/PluriWave · purges oldest at limit'),
findsOneWidget,
);
final headlineY = tester.getTopLeft(find.text('84 MB of 200 MB used')).dy;
final barY = tester.getTopLeft(find.byType(LinearProgressIndicator)).dy;
final captionY =
tester
.getTopLeft(find.text('Music/PluriWave · purges oldest at limit'))
.dy;
expect(
headlineY < barY && barY < captionY,
isTrue,
reason: 'headline, then bar, then caption -- top to bottom',
);
},
);
testWidgets('15.2-A: 3 recording fixtures render as 3 rows', (tester) async {
final estado = EstadoGrabacion(
servicio: _FakeServicioGrabacionConArchivos([