Add localization support for search and alarm features in multiple languages
- Updated Japanese, Portuguese, Russian, and Chinese localization files with new strings for search and alarm functionalities. - Enhanced the search screen with localized titles, subtitles, and filter labels. - Integrated localization into the alarm screen, including actions and messages related to alarm management. - Refactored country and language lists to use localized keys for better maintainability. - Improved user experience by providing localized hints and messages throughout the application.
This commit is contained in:
+1
-1
@@ -257,7 +257,7 @@ class _PaginaPrincipalState extends State<_PaginaPrincipal> {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
SnackBar(
|
||||
content: Text(
|
||||
'Alarma pospuesta para esta ejecución.',
|
||||
AppLocalizations.of(context).alarmPostponedCurrentExecution,
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarma pospuesta para esta ejecuci?n.",
|
||||
"searchScreenTitle": "Buscar se?al",
|
||||
"searchScreenSubtitle": "Encontr? radios por nombre, pa?s o idioma con filtros r?pidos y alto contraste.",
|
||||
"searchFiltersLabel": "Filtros",
|
||||
"searchHint": "Radio Horizonte, jazz, noticias...",
|
||||
"searchCountryFilterLabel": "Pa?s",
|
||||
"searchLanguageFilterLabel": "Idioma",
|
||||
"searchMinQualityFilterLabel": "Calidad m?nima",
|
||||
"searchEmptyTitle": "Busc? una emisora",
|
||||
"searchNoResultsTitle": "Sin resultados",
|
||||
"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.",
|
||||
"countrySpain": "Espa?a",
|
||||
"countryUsa": "EE. UU.",
|
||||
"countryMexico": "M?xico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "Reino Unido",
|
||||
"countryFrance": "Francia",
|
||||
"countryGermany": "Alemania",
|
||||
"countryItaly": "Italia",
|
||||
"countryBrazil": "Brasil",
|
||||
"countryJapan": "Jap?n",
|
||||
"languageNameSpanish": "Espa?ol",
|
||||
"languageNameEnglish": "Ingl?s",
|
||||
"languageNameFrench": "Franc?s",
|
||||
"languageNameGerman": "Alem?n",
|
||||
"languageNamePortuguese": "Portugu?s",
|
||||
"languageNameItalian": "Italiano",
|
||||
"languageNameJapanese": "Japon?s",
|
||||
"languageNameArabic": "?rabe",
|
||||
"languageNameRussian": "Ruso",
|
||||
"homeScreenSubtitle": "Radio global en vivo con se?ales limpias, favoritos inteligentes y una experiencia visual de concurso.",
|
||||
"exploreStations": "Explorar emisoras",
|
||||
"stationsCount": "{count} radios",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "Calidad HD",
|
||||
"nearYou": "Cerca de vos",
|
||||
"nearYouInCountry": "Cerca de vos ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detectar",
|
||||
"liveRadar": "Radar en directo",
|
||||
"genresTitle": "G?neros",
|
||||
"retryAction": "Reintentar",
|
||||
"noStationsAvailable": "No hay emisoras disponibles",
|
||||
"noStationsAvailableSubtitle": "Prob? refrescar o elegir otro g?nero para volver a capturar se?al.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Cl?sica",
|
||||
"genreElectronic": "Electr?nica",
|
||||
"genreNews": "Noticias",
|
||||
"genreTalk": "Charlas",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latina",
|
||||
"alarmScreenTitle": "Despertar musical",
|
||||
"alarmScreenSubtitle": "Alarmas con radio, sonido seguro, vacaciones inteligentes y pr?xima ejecuci?n siempre visible.",
|
||||
"createAlarmAction": "Crear alarma",
|
||||
"alarmsCount": "{count} alarmas",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Alarmas activas sin pr?xima ejecuci?n",
|
||||
"noActiveAlarms": "Sin alarmas activas",
|
||||
"nextAlarmTitle": "Pr?xima alarma",
|
||||
"activeAlarmsWithoutNextSubtitle": "Hay {count} alarma(s) activas, pero ahora mismo no tienen una fecha futura v?lida. Revis? fecha, d?as y vacaciones.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Cre? una alarma y PluriWave calcular? la siguiente ejecuci?n autom?ticamente.",
|
||||
"alarmVacationPlay": "Suena en vacaciones",
|
||||
"alarmVacationPause": "Pausa en vacaciones",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Siguiente ejecuci?n: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "No tiene pr?xima ejecuci?n activa.",
|
||||
"alarmSkippedExecution": "Una ejecuci?n fue omitida: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Editar",
|
||||
"skipNextAction": "Omitir siguiente",
|
||||
"deleteTooltip": "Eliminar",
|
||||
"alarmSkippedNoNextSnackbar": "Alarma omitida. No queda pr?xima ejecuci?n.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarma omitida. Volver? el {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "Est? pausada por vacaciones ({vacationName}) y sin pr?xima ejecuci?n.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "Est? pausada por vacaciones ({vacationName}) y vuelve el {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "Con vacaciones activas, volver? a sonar el {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Despertador musical",
|
||||
"newAlarmTitle": "Nueva alarma",
|
||||
"editAlarmTitle": "Editar alarma",
|
||||
"nameField": "Nombre",
|
||||
"timeField": "Hora",
|
||||
"dateField": "Fecha",
|
||||
"onceOption": "Una vez",
|
||||
"dailyOption": "Diaria",
|
||||
"weekdaysOption": "D?as",
|
||||
"soundAndVolumeSection": "Sonido y volumen",
|
||||
"alarmFadeInTitle": "Fade-in de alarma",
|
||||
"alarmFadeInOff": "0 s (sin transici?n)",
|
||||
"alarmFadeInSummary": "{seconds} s (de 5% al volumen elegido)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Sonido seguro interno",
|
||||
"soundWarmSunrise": "Amanecer c?lido",
|
||||
"soundSoftBell": "Campana suave",
|
||||
"soundDigitalPulse": "Pulso digital",
|
||||
"favoriteStationLabel": "Emisora favorita",
|
||||
"noStationUseInternalSound": "Sin emisora: usar sonido interno",
|
||||
"saveFavoritesAlarmHint": "Guard? emisoras en Favoritos para usarlas como alarma musical.",
|
||||
"useCurrentStationAction": "Usar emisora actual",
|
||||
"playDuringVacations": "Sonar durante vacaciones",
|
||||
"playDuringVacationsHint": "Si lo apag?s, la pr?xima ejecuci?n saltar? al primer d?a v?lido.",
|
||||
"saveAlarmAction": "Guardar alarma",
|
||||
"chooseOneWeekdayError": "Eleg? al menos un d?a de la semana.",
|
||||
"androidReliabilityReview": "Revisar fiabilidad Android",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pendiente",
|
||||
"androidReliabilityStatus": "Fiabilidad: exactas {exact} ? notificaciones {notifications} ? pantalla {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Rangos de vacaciones",
|
||||
"addAction": "Agregar",
|
||||
"vacationRangesHint": "Si una alarma tiene \"Pausa en vacaciones\", se salta autom?ticamente estos rangos.",
|
||||
"noVacationRangesLoaded": "Sin rangos cargados.",
|
||||
"deleteRangeTooltip": "Eliminar rango",
|
||||
"vacationsDefaultName": "Vacaciones",
|
||||
"newVacationRangeTitle": "Nuevo rango de vacaciones",
|
||||
"startField": "Inicio",
|
||||
"endField": "Fin",
|
||||
"saveRangeAction": "Guardar rango",
|
||||
"noAlarmsYetTitle": "Todav?a no hay alarmas.",
|
||||
"noAlarmsYetSubtitle": "Cre? una para dise?ar tu despertar musical.",
|
||||
"ringingInternalAudioActive": "Sonando con audio seguro interno.",
|
||||
"ringingPreparingInternalAudio": "Preparando audio seguro interno.",
|
||||
"stopAlarmAction": "Detener alarma"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
+201
-1
@@ -225,5 +225,205 @@
|
||||
"placeholders": {
|
||||
"stationName": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmPostponedCurrentExecution": "Alarm postponed for this occurrence.",
|
||||
"searchScreenTitle": "Search signal",
|
||||
"searchScreenSubtitle": "Find stations by name, country, or language with fast filters and high contrast.",
|
||||
"searchFiltersLabel": "Filters",
|
||||
"searchHint": "Radio Horizon, jazz, news...",
|
||||
"searchCountryFilterLabel": "Country",
|
||||
"searchLanguageFilterLabel": "Language",
|
||||
"searchMinQualityFilterLabel": "Minimum quality",
|
||||
"searchEmptyTitle": "Search for a station",
|
||||
"searchNoResultsTitle": "No results",
|
||||
"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.",
|
||||
"countrySpain": "Spain",
|
||||
"countryUsa": "USA",
|
||||
"countryMexico": "Mexico",
|
||||
"countryArgentina": "Argentina",
|
||||
"countryUk": "UK",
|
||||
"countryFrance": "France",
|
||||
"countryGermany": "Germany",
|
||||
"countryItaly": "Italy",
|
||||
"countryBrazil": "Brazil",
|
||||
"countryJapan": "Japan",
|
||||
"languageNameSpanish": "Spanish",
|
||||
"languageNameEnglish": "English",
|
||||
"languageNameFrench": "French",
|
||||
"languageNameGerman": "German",
|
||||
"languageNamePortuguese": "Portuguese",
|
||||
"languageNameItalian": "Italian",
|
||||
"languageNameJapanese": "Japanese",
|
||||
"languageNameArabic": "Arabic",
|
||||
"languageNameRussian": "Russian",
|
||||
"homeScreenSubtitle": "Live global radio with clean signals, smart favorites, and a show-style visual experience.",
|
||||
"exploreStations": "Explore stations",
|
||||
"stationsCount": "{count} stations",
|
||||
"@stationsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"qualityHd": "HD quality",
|
||||
"nearYou": "Near you",
|
||||
"nearYouInCountry": "Near you ? {country}",
|
||||
"@nearYouInCountry": {
|
||||
"placeholders": {
|
||||
"country": {}
|
||||
}
|
||||
},
|
||||
"detectAction": "Detect",
|
||||
"liveRadar": "Live radar",
|
||||
"genresTitle": "Genres",
|
||||
"retryAction": "Retry",
|
||||
"noStationsAvailable": "No stations available",
|
||||
"noStationsAvailableSubtitle": "Try refreshing or choosing another genre to capture a signal again.",
|
||||
"genrePop": "Pop",
|
||||
"genreRock": "Rock",
|
||||
"genreJazz": "Jazz",
|
||||
"genreClassical": "Classical",
|
||||
"genreElectronic": "Electronic",
|
||||
"genreNews": "News",
|
||||
"genreTalk": "Talk",
|
||||
"genreHipHop": "Hip-hop",
|
||||
"genreCountry": "Country",
|
||||
"genreMetal": "Metal",
|
||||
"genreReggae": "Reggae",
|
||||
"genreLatin": "Latin",
|
||||
"alarmScreenTitle": "Music wake-up",
|
||||
"alarmScreenSubtitle": "Alarms with radio, safe fallback sound, smart vacations, and the next occurrence always visible.",
|
||||
"createAlarmAction": "Create alarm",
|
||||
"alarmsCount": "{count} alarms",
|
||||
"@alarmsCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeAlarmsWithoutNextTitle": "Active alarms without a next occurrence",
|
||||
"noActiveAlarms": "No active alarms",
|
||||
"nextAlarmTitle": "Next alarm",
|
||||
"activeAlarmsWithoutNextSubtitle": "There are {count} active alarm(s), but they do not currently have a valid future date. Check date, weekdays, and vacations.",
|
||||
"@activeAlarmsWithoutNextSubtitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createAlarmHint": "Create an alarm and PluriWave will calculate the next occurrence automatically.",
|
||||
"alarmVacationPlay": "Plays during vacations",
|
||||
"alarmVacationPause": "Paused during vacations",
|
||||
"alarmFadeInLabel": "Fade-in {seconds}s",
|
||||
"@alarmFadeInLabel": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"alarmNextExecution": "Next occurrence: {date}",
|
||||
"@alarmNextExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmNoNextExecution": "It has no active next occurrence.",
|
||||
"alarmSkippedExecution": "One occurrence was skipped: {date}.",
|
||||
"@alarmSkippedExecution": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"editAction": "Edit",
|
||||
"skipNextAction": "Skip next",
|
||||
"deleteTooltip": "Delete",
|
||||
"alarmSkippedNoNextSnackbar": "Alarm skipped. There is no next occurrence left.",
|
||||
"alarmSkippedReturnsSnackbar": "Alarm skipped. It will return on {date}.",
|
||||
"@alarmSkippedReturnsSnackbar": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedNoNext": "It is paused for vacations ({vacationName}) and has no next occurrence.",
|
||||
"@alarmVacationPausedNoNext": {
|
||||
"placeholders": {
|
||||
"vacationName": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationPausedReturns": "It is paused for vacations ({vacationName}) and returns on {date}.",
|
||||
"@alarmVacationPausedReturns": {
|
||||
"placeholders": {
|
||||
"vacationName": {},
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"alarmVacationReturns": "With vacations enabled, it will ring again on {date}.",
|
||||
"@alarmVacationReturns": {
|
||||
"placeholders": {
|
||||
"date": {}
|
||||
}
|
||||
},
|
||||
"defaultAlarmName": "Music alarm",
|
||||
"newAlarmTitle": "New alarm",
|
||||
"editAlarmTitle": "Edit alarm",
|
||||
"nameField": "Name",
|
||||
"timeField": "Time",
|
||||
"dateField": "Date",
|
||||
"onceOption": "Once",
|
||||
"dailyOption": "Daily",
|
||||
"weekdaysOption": "Weekdays",
|
||||
"soundAndVolumeSection": "Sound and volume",
|
||||
"alarmFadeInTitle": "Alarm fade-in",
|
||||
"alarmFadeInOff": "0 s (no transition)",
|
||||
"alarmFadeInSummary": "{seconds} s (from 5% to the selected volume)",
|
||||
"@alarmFadeInSummary": {
|
||||
"placeholders": {
|
||||
"seconds": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"internalSafeSoundLabel": "Internal safe sound",
|
||||
"soundWarmSunrise": "Warm sunrise",
|
||||
"soundSoftBell": "Soft bell",
|
||||
"soundDigitalPulse": "Digital pulse",
|
||||
"favoriteStationLabel": "Favorite station",
|
||||
"noStationUseInternalSound": "No station: use internal sound",
|
||||
"saveFavoritesAlarmHint": "Save stations in Favorites to use them as a music alarm.",
|
||||
"useCurrentStationAction": "Use current station",
|
||||
"playDuringVacations": "Play during vacations",
|
||||
"playDuringVacationsHint": "If you turn this off, the next occurrence will jump to the first valid day.",
|
||||
"saveAlarmAction": "Save alarm",
|
||||
"chooseOneWeekdayError": "Choose at least one weekday.",
|
||||
"androidReliabilityReview": "Review Android reliability",
|
||||
"statusOk": "OK",
|
||||
"statusPending": "pending",
|
||||
"androidReliabilityStatus": "Reliability: exact {exact} ? notifications {notifications} ? screen {screen}",
|
||||
"@androidReliabilityStatus": {
|
||||
"placeholders": {
|
||||
"exact": {},
|
||||
"notifications": {},
|
||||
"screen": {}
|
||||
}
|
||||
},
|
||||
"vacationRangesTitle": "Vacation ranges",
|
||||
"addAction": "Add",
|
||||
"vacationRangesHint": "If an alarm is set to \"Paused during vacations\", it automatically skips these ranges.",
|
||||
"noVacationRangesLoaded": "No ranges loaded.",
|
||||
"deleteRangeTooltip": "Delete range",
|
||||
"vacationsDefaultName": "Vacation",
|
||||
"newVacationRangeTitle": "New vacation range",
|
||||
"startField": "Start",
|
||||
"endField": "End",
|
||||
"saveRangeAction": "Save range",
|
||||
"noAlarmsYetTitle": "There are no alarms yet.",
|
||||
"noAlarmsYetSubtitle": "Create one to design your musical wake-up.",
|
||||
"ringingInternalAudioActive": "Playing with internal safe audio.",
|
||||
"ringingPreparingInternalAudio": "Preparing internal safe audio.",
|
||||
"stopAlarmAction": "Stop alarm"
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import 'package:just_audio/just_audio.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import '../estado/estado_alarmas.dart';
|
||||
import '../l10n/gen/app_localizations.dart';
|
||||
import '../estado/estado_radio.dart';
|
||||
import '../modelos/alarma_musical.dart';
|
||||
import '../servicios/servicio_audio.dart';
|
||||
@@ -152,6 +153,7 @@ class _PantallaAlarmaSonandoState extends State<PantallaAlarmaSonando> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final alarma = widget.alarma;
|
||||
final l10n = AppLocalizations.of(context);
|
||||
return Scaffold(
|
||||
backgroundColor: const Color(0xFF061722),
|
||||
body: SafeArea(
|
||||
@@ -197,7 +199,7 @@ class _PantallaAlarmaSonandoState extends State<PantallaAlarmaSonando> {
|
||||
FilledButton.icon(
|
||||
onPressed: _detener,
|
||||
icon: const Icon(Icons.stop_rounded),
|
||||
label: const Text('Detener alarma'),
|
||||
label: Text(l10n.stopAlarmAction),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'package:flutter_animate/flutter_animate.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import '../estado/estado_radio.dart';
|
||||
import '../l10n/gen/app_localizations.dart';
|
||||
import '../widgets/pluri_glass_surface.dart';
|
||||
import '../widgets/pluri_icon.dart';
|
||||
import '../widgets/pluri_layout.dart';
|
||||
@@ -12,28 +13,28 @@ import 'package:pluriwave/widgets/tarjeta_emisora.dart';
|
||||
import 'reproducir_minimizado.dart';
|
||||
|
||||
const _paises = [
|
||||
('Espana', 'ES'),
|
||||
('USA', 'US'),
|
||||
('Mexico', 'MX'),
|
||||
('Argentina', 'AR'),
|
||||
('UK', 'GB'),
|
||||
('Francia', 'FR'),
|
||||
('Alemania', 'DE'),
|
||||
('Italia', 'IT'),
|
||||
('Brasil', 'BR'),
|
||||
('Japon', 'JP'),
|
||||
('countrySpain', 'ES'),
|
||||
('countryUsa', 'US'),
|
||||
('countryMexico', 'MX'),
|
||||
('countryArgentina', 'AR'),
|
||||
('countryUk', 'GB'),
|
||||
('countryFrance', 'FR'),
|
||||
('countryGermany', 'DE'),
|
||||
('countryItaly', 'IT'),
|
||||
('countryBrazil', 'BR'),
|
||||
('countryJapan', 'JP'),
|
||||
];
|
||||
|
||||
const _idiomas = [
|
||||
'spanish',
|
||||
'english',
|
||||
'french',
|
||||
'german',
|
||||
'portuguese',
|
||||
'italian',
|
||||
'japanese',
|
||||
'arabic',
|
||||
'russian',
|
||||
('spanish', 'languageNameSpanish'),
|
||||
('english', 'languageNameEnglish'),
|
||||
('french', 'languageNameFrench'),
|
||||
('german', 'languageNameGerman'),
|
||||
('portuguese', 'languageNamePortuguese'),
|
||||
('italian', 'languageNameItalian'),
|
||||
('japanese', 'languageNameJapanese'),
|
||||
('arabic', 'languageNameArabic'),
|
||||
('russian', 'languageNameRussian'),
|
||||
];
|
||||
|
||||
class PantallaBuscar extends StatefulWidget {
|
||||
@@ -69,17 +70,18 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
Widget build(BuildContext context) {
|
||||
final estado = context.watch<EstadoRadio>();
|
||||
final theme = Theme.of(context);
|
||||
final l10n = AppLocalizations.of(context);
|
||||
|
||||
return ListView(
|
||||
padding: PluriLayout.pageListPadding,
|
||||
children: [
|
||||
PluriScreenHeader(
|
||||
title: 'Buscar senal',
|
||||
subtitle: 'Encontra radios por nombre, pais o idioma con filtros rapidos y alto contraste.',
|
||||
title: l10n.searchScreenTitle,
|
||||
subtitle: l10n.searchScreenSubtitle,
|
||||
glyph: PluriIconGlyph.search,
|
||||
trailing: const PluriStatusPill(
|
||||
trailing: PluriStatusPill(
|
||||
icon: Icons.tune_rounded,
|
||||
label: 'Filtros',
|
||||
label: l10n.searchFiltersLabel,
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
@@ -89,7 +91,7 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
borderRadius: BorderRadius.circular(999),
|
||||
child: SearchBar(
|
||||
controller: _controller,
|
||||
hintText: 'Radio Horizonte, jazz, noticias...',
|
||||
hintText: l10n.searchHint,
|
||||
leading: const PluriIcon(
|
||||
glyph: PluriIconGlyph.search,
|
||||
variant: PluriIconVariant.filled,
|
||||
@@ -111,8 +113,8 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
),
|
||||
),
|
||||
_seccionFiltro(
|
||||
'Pais',
|
||||
_paises.map((p) => (p.$1, p.$2)).toList(),
|
||||
l10n.searchCountryFilterLabel,
|
||||
_paises.map((p) => (_countryLabel(l10n, p.$1), p.$2)).toList(),
|
||||
_paisSeleccionado,
|
||||
(v) {
|
||||
setState(() => _paisSeleccionado = v);
|
||||
@@ -120,8 +122,8 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
},
|
||||
),
|
||||
_seccionFiltro(
|
||||
'Idioma',
|
||||
_idiomas.map((i) => (i, i)).toList(),
|
||||
l10n.searchLanguageFilterLabel,
|
||||
_idiomas.map((i) => (_languageLabel(l10n, i.$2), i.$1)).toList(),
|
||||
_idiomaSeleccionado,
|
||||
(v) {
|
||||
setState(() => _idiomaSeleccionado = v);
|
||||
@@ -129,7 +131,7 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
},
|
||||
),
|
||||
_seccionFiltroInt(
|
||||
'Calidad m?nima',
|
||||
l10n.searchMinQualityFilterLabel,
|
||||
const [('64 kbps', 64), ('96 kbps', 96), ('128 kbps', 128), ('192 kbps', 192), ('320 kbps', 320)],
|
||||
_calidadMinima,
|
||||
(v) {
|
||||
@@ -234,6 +236,7 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
}
|
||||
|
||||
Widget _resultados(EstadoRadio estado, ThemeData theme) {
|
||||
final l10n = AppLocalizations.of(context);
|
||||
if (estado.cargandoBusqueda) {
|
||||
return const SizedBox(
|
||||
height: 220,
|
||||
@@ -252,10 +255,12 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
height: 260,
|
||||
child: PluriEmptyState(
|
||||
glyph: PluriIconGlyph.search,
|
||||
title: sinFiltros ? 'Busca una emisora' : 'Sin resultados',
|
||||
subtitle: sinFiltros
|
||||
? 'Usa la barra superior o los chips para descubrir senales de todo el mundo.'
|
||||
: 'Proba quitar filtros o escribir otro nombre para encontrar una senal activa.',
|
||||
title:
|
||||
sinFiltros ? l10n.searchEmptyTitle : l10n.searchNoResultsTitle,
|
||||
subtitle:
|
||||
sinFiltros
|
||||
? l10n.searchEmptySubtitle
|
||||
: l10n.searchNoResultsSubtitle,
|
||||
),
|
||||
);
|
||||
}
|
||||
@@ -288,4 +293,31 @@ class _PantallaBuscarState extends State<PantallaBuscar> {
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
String _countryLabel(AppLocalizations l10n, String key) => switch (key) {
|
||||
'countrySpain' => l10n.countrySpain,
|
||||
'countryUsa' => l10n.countryUsa,
|
||||
'countryMexico' => l10n.countryMexico,
|
||||
'countryArgentina' => l10n.countryArgentina,
|
||||
'countryUk' => l10n.countryUk,
|
||||
'countryFrance' => l10n.countryFrance,
|
||||
'countryGermany' => l10n.countryGermany,
|
||||
'countryItaly' => l10n.countryItaly,
|
||||
'countryBrazil' => l10n.countryBrazil,
|
||||
'countryJapan' => l10n.countryJapan,
|
||||
_ => key,
|
||||
};
|
||||
|
||||
String _languageLabel(AppLocalizations l10n, String key) => switch (key) {
|
||||
'languageNameSpanish' => l10n.languageNameSpanish,
|
||||
'languageNameEnglish' => l10n.languageNameEnglish,
|
||||
'languageNameFrench' => l10n.languageNameFrench,
|
||||
'languageNameGerman' => l10n.languageNameGerman,
|
||||
'languageNamePortuguese' => l10n.languageNamePortuguese,
|
||||
'languageNameItalian' => l10n.languageNameItalian,
|
||||
'languageNameJapanese' => l10n.languageNameJapanese,
|
||||
'languageNameArabic' => l10n.languageNameArabic,
|
||||
'languageNameRussian' => l10n.languageNameRussian,
|
||||
_ => key,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user