The premium sheet had no close affordance or way to defer, and its copy only said "Función Premium" without stating what it unlocks. Adds a header close (X) button and a "not now" secondary action so dismissal is never harder than purchasing, and replaces the bare title with a concrete, honest breakdown of the 5 things premium unlocks (no ads, Android Auto, station recording, alarm vacation ranges, unlimited alarms) plus the one-time-purchase framing. The phone equalizer is never listed, since it stays free for everyone. New l10n keys added to all 13 locales.
1908 lines
47 KiB
Dart
1908 lines
47 KiB
Dart
// ignore: unused_import
|
||
import 'package:intl/intl.dart' as intl;
|
||
import 'app_localizations.dart';
|
||
|
||
// ignore_for_file: type=lint
|
||
|
||
/// The translations for Portuguese (`pt`).
|
||
class AppLocalizationsPt extends AppLocalizations {
|
||
AppLocalizationsPt([String locale = 'pt']) : super(locale);
|
||
|
||
@override
|
||
String get appTitle => 'PluriWave';
|
||
|
||
@override
|
||
String get navHome => 'Ouvir';
|
||
|
||
@override
|
||
String get navSearch => 'Buscar';
|
||
|
||
@override
|
||
String get navFavorites => 'Favoritos';
|
||
|
||
@override
|
||
String get navAlarms => 'Alarmes';
|
||
|
||
@override
|
||
String get navSettings => 'Configurações';
|
||
|
||
@override
|
||
String get actionOk => 'OK';
|
||
|
||
@override
|
||
String get sleepTimer => 'Timer de sono';
|
||
|
||
@override
|
||
String get sleepTimerDescription =>
|
||
'Desligamento suave da rádio com contagem regressiva exata.';
|
||
|
||
@override
|
||
String get cancelTimer => 'Cancelar timer';
|
||
|
||
@override
|
||
String get optionOther => 'Outro';
|
||
|
||
@override
|
||
String get customDurationTitle => 'Duração personalizada';
|
||
|
||
@override
|
||
String get durationGreaterThanZero => 'Escolha uma duração maior que zero.';
|
||
|
||
@override
|
||
String get hoursLabel => 'Horas';
|
||
|
||
@override
|
||
String get minutesLabel => 'Minutos';
|
||
|
||
@override
|
||
String get secondsLabel => 'Segundos';
|
||
|
||
@override
|
||
String durationHoursMinutesSeconds(
|
||
Object hours,
|
||
Object minutes,
|
||
Object seconds,
|
||
) {
|
||
return '$hours h $minutes min $seconds s';
|
||
}
|
||
|
||
@override
|
||
String durationMinutesSeconds(Object minutes, Object seconds) {
|
||
return '$minutes min $seconds s';
|
||
}
|
||
|
||
@override
|
||
String durationMinutesOnly(Object minutes) {
|
||
return '$minutes min';
|
||
}
|
||
|
||
@override
|
||
String durationSecondsOnly(Object seconds) {
|
||
return '$seconds s';
|
||
}
|
||
|
||
@override
|
||
String get saveQuickAccess => 'Salvar como acesso rápido';
|
||
|
||
@override
|
||
String get startTimer => 'Iniciar timer';
|
||
|
||
@override
|
||
String skipCurrentAlarmExecution(Object alarmName) {
|
||
return 'Esta execução de $alarmName foi ignorada.';
|
||
}
|
||
|
||
@override
|
||
String get settingsTitle => 'Configurações';
|
||
|
||
@override
|
||
String get settingsSubtitle =>
|
||
'Controle fino de som, backups e estações personalizadas.';
|
||
|
||
@override
|
||
String get settingsGroupAudioTitle => 'ÁUDIO';
|
||
|
||
@override
|
||
String get settingsGroupStationsTitle => 'ESTAÇÕES';
|
||
|
||
@override
|
||
String get settingsGroupRecordingsTitle => 'GRAVAÇÕES E MÚSICA';
|
||
|
||
@override
|
||
String get settingsGroupApplicationTitle => 'APLICATIVO';
|
||
|
||
@override
|
||
String get infoSectionTitle => 'Informações';
|
||
|
||
@override
|
||
String get languageSectionTitle => 'Idioma';
|
||
|
||
@override
|
||
String get languageSectionDescription =>
|
||
'Escolha como o idioma do app é exibido.';
|
||
|
||
@override
|
||
String get languageSystemDefault => 'Sistema';
|
||
|
||
@override
|
||
String get languageSpanish => 'Espanhol';
|
||
|
||
@override
|
||
String get languageEnglish => 'Inglês';
|
||
|
||
@override
|
||
String languageUpdated(Object languageName) {
|
||
return 'Idioma atualizado: $languageName';
|
||
}
|
||
|
||
@override
|
||
String get languageUpdatedSystem => 'Idioma atualizado: Sistema';
|
||
|
||
@override
|
||
String get timerSectionTitle => 'Timer de sono';
|
||
|
||
@override
|
||
String get timerSectionAdd => 'Adicionar';
|
||
|
||
@override
|
||
String get timerSectionDescription =>
|
||
'Personalize os acessos rápidos exibidos ao desligar a rádio automaticamente.';
|
||
|
||
@override
|
||
String get timerSectionRestoreRecommended => 'Restaurar tempos recomendados';
|
||
|
||
@override
|
||
String get newQuickAccessTitle => 'Novo acesso rápido';
|
||
|
||
@override
|
||
String get saveQuickAccessButton => 'Salvar acesso rápido';
|
||
|
||
@override
|
||
String get settingsSafeStatus => 'Seguro';
|
||
|
||
@override
|
||
String get recordingsSectionTitle => 'Gravações';
|
||
|
||
@override
|
||
String get recordingsFolderDialogTitle => 'Selecione a pasta de gravações';
|
||
|
||
@override
|
||
String get recordingsPathUpdated => 'Caminho de gravação atualizado';
|
||
|
||
@override
|
||
String recordingsPathSaveError(Object error) {
|
||
return 'Não foi possível salvar o caminho: $error';
|
||
}
|
||
|
||
@override
|
||
String get recordingsDefaultFolderRestored =>
|
||
'A pasta interna padrão será usada';
|
||
|
||
@override
|
||
String get recordingsFolderTitle => 'Pasta de gravação';
|
||
|
||
@override
|
||
String get recordingsPathCalculating => 'Calculando caminho...';
|
||
|
||
@override
|
||
String get recordingsChangePath => 'Alterar caminho';
|
||
|
||
@override
|
||
String get recordingsUseDefaultPath => 'Usar caminho padrão';
|
||
|
||
@override
|
||
String get recordingsOriginalStreamHint =>
|
||
'A rádio é salva a partir do stream original, sem recompressão.';
|
||
|
||
@override
|
||
String get equalizerActive => 'Ativo';
|
||
|
||
@override
|
||
String get equalizerDisabled => 'Desativado';
|
||
|
||
@override
|
||
String get equalizerEnable => 'Ativar equalizador';
|
||
|
||
@override
|
||
String get equalizerRealtimeSubtitle =>
|
||
'As alterações são aplicadas em tempo real à estação atual.';
|
||
|
||
@override
|
||
String get equalizerPendingSubtitle =>
|
||
'As alterações são salvas e serão aplicadas quando o Android habilitar o efeito.';
|
||
|
||
@override
|
||
String get equalizerPerStationTitle => 'Usar EQ próprio para este favorito';
|
||
|
||
@override
|
||
String equalizerPerStationActive(Object stationName) {
|
||
return 'Ativo para $stationName';
|
||
}
|
||
|
||
@override
|
||
String equalizerPerStationMain(Object stationName) {
|
||
return 'Usando o EQ principal para $stationName';
|
||
}
|
||
|
||
@override
|
||
String get equalizerBaseExplainer =>
|
||
'Este é o equalizador base: aplica-se a todas as estações sem ajuste próprio. O EQ próprio de uma estação é definido na sua própria tela de reprodução e tem prioridade sobre este.';
|
||
|
||
@override
|
||
String get equalizerActiveOutputLabel => 'Saída ativa';
|
||
|
||
@override
|
||
String get equalizerActiveOutputDefault => 'O alto-falante deste dispositivo';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqTitle => 'Estações com EQ próprio';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqSubtitle =>
|
||
'Ignoram este equalizador base';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqEmpty =>
|
||
'Nenhuma estação tem EQ próprio ainda.';
|
||
|
||
@override
|
||
String get equalizerSaveAsPresetAction => 'Salvar como Preset';
|
||
|
||
@override
|
||
String get equalizerResetToFlatAction => 'Repor para plano';
|
||
|
||
@override
|
||
String get equalizerSavePresetDialogTitle => 'Salvar como Preset';
|
||
|
||
@override
|
||
String get equalizerSavePresetNameLabel => 'Nome do Preset';
|
||
|
||
@override
|
||
String get equalizerSavePresetEmptyNameError =>
|
||
'Digite um nome para o Preset.';
|
||
|
||
@override
|
||
String get equalizerSavePresetConfirm => 'Salvar';
|
||
|
||
@override
|
||
String get preferredStationTitle => 'Estação preferida';
|
||
|
||
@override
|
||
String get preferredStationDescription =>
|
||
'Pré-selecionada ao criar alarmes e disponível para reprodução rápida.';
|
||
|
||
@override
|
||
String get preferredStationNoStationsTitle =>
|
||
'Ainda não há estações disponíveis';
|
||
|
||
@override
|
||
String get preferredStationNoStationsSubtitle =>
|
||
'Salve favoritas ou carregue estações para escolher uma preferida.';
|
||
|
||
@override
|
||
String get preferredStationAutomaticFallback => 'Fallback automático';
|
||
|
||
@override
|
||
String get preferredStationDefaultFavorite => 'Favorita padrão';
|
||
|
||
@override
|
||
String preferredStationCurrent(Object stationName) {
|
||
return 'Preferida atual: $stationName';
|
||
}
|
||
|
||
@override
|
||
String preferredStationAutoUsing(Object stationName) {
|
||
return 'Sem favoritas: usando automaticamente $stationName';
|
||
}
|
||
|
||
@override
|
||
String get preferredStationPlay => 'Reproduzir preferida';
|
||
|
||
@override
|
||
String get customStationsTitle => 'Estações personalizadas';
|
||
|
||
@override
|
||
String get customStationsAdd => 'Adicionar';
|
||
|
||
@override
|
||
String get customStationsEmpty => 'Não há estações personalizadas.';
|
||
|
||
@override
|
||
String get playAction => 'Reproduzir';
|
||
|
||
@override
|
||
String get deleteAction => 'Excluir';
|
||
|
||
@override
|
||
String get addStationTitle => 'Adicionar estação';
|
||
|
||
@override
|
||
String get stationNameLabel => 'Nome *';
|
||
|
||
@override
|
||
String get unnamedStation => 'Estação sem nome';
|
||
|
||
@override
|
||
String get requiredField => 'Campo obrigatório';
|
||
|
||
@override
|
||
String get streamUrlLabel => 'URL do stream *';
|
||
|
||
@override
|
||
String get invalidUrl => 'URL inválida';
|
||
|
||
@override
|
||
String get countryOptionalLabel => 'País (opcional)';
|
||
|
||
@override
|
||
String get saveStation => 'Salvar estação';
|
||
|
||
@override
|
||
String get backupSectionTitle => 'Backup';
|
||
|
||
@override
|
||
String get backupExportTitle => 'Exportar configuração';
|
||
|
||
@override
|
||
String get backupExportSubtitle =>
|
||
'Favoritos, estações personalizadas e presets de EQ';
|
||
|
||
@override
|
||
String get backupImportTitle => 'Importar configuração';
|
||
|
||
@override
|
||
String get backupImportSubtitle =>
|
||
'Restaurar a partir de um arquivo de backup';
|
||
|
||
@override
|
||
String get backupShareSubject => 'PluriWave — backup';
|
||
|
||
@override
|
||
String backupShareText(Object date) {
|
||
return 'Configuração do PluriWave exportada em $date';
|
||
}
|
||
|
||
@override
|
||
String backupExportError(Object error) {
|
||
return 'Erro ao exportar: $error';
|
||
}
|
||
|
||
@override
|
||
String get backupImportConfirmMessage =>
|
||
'Isso adicionará favoritos, estações e presets do arquivo. Continuar?';
|
||
|
||
@override
|
||
String get backupImportSuccess => 'Configuração importada com sucesso';
|
||
|
||
@override
|
||
String backupImportError(Object error) {
|
||
return 'Erro ao importar: $error';
|
||
}
|
||
|
||
@override
|
||
String get appVersionLoading => 'Carregando versão...';
|
||
|
||
@override
|
||
String appVersionSubtitle(Object version) {
|
||
return '$version - Rádio mundial';
|
||
}
|
||
|
||
@override
|
||
String get savedFavoritesTitle => 'Favoritos salvos';
|
||
|
||
@override
|
||
String get stationFilterTitle => 'Filtro de estações';
|
||
|
||
@override
|
||
String get stationFilterSubtitle => 'Apenas estações verificadas como ativas';
|
||
|
||
@override
|
||
String get backgroundAudioTitle => 'Áudio em segundo plano';
|
||
|
||
@override
|
||
String get backgroundAudioSubtitle => 'Continua ao desligar a tela';
|
||
|
||
@override
|
||
String get dash => '—';
|
||
|
||
@override
|
||
String get cancelAction => 'Cancelar';
|
||
|
||
@override
|
||
String get equalizerTitle => 'Equalizador';
|
||
|
||
@override
|
||
String get recordingsOpenFolder => 'Abrir pasta';
|
||
|
||
@override
|
||
String recordingsOpenFolderError(Object error) {
|
||
return 'Não foi possível abrir a pasta: $error';
|
||
}
|
||
|
||
@override
|
||
String get recordingsMaxSizeTitle => 'Tamanho máximo da gravação';
|
||
|
||
@override
|
||
String recordingsMaxSizeSubtitle(int size) {
|
||
return 'Limite atual: $size MB';
|
||
}
|
||
|
||
@override
|
||
String get recordingsMaxSizeDialogTitle => 'Tamanho máximo por gravação';
|
||
|
||
@override
|
||
String get recordingsMaxSizeMbLabel => 'Megabytes máximos';
|
||
|
||
@override
|
||
String recordingsMaxSizeSaved(int size) {
|
||
return 'Limite de gravação atualizado para $size MB';
|
||
}
|
||
|
||
@override
|
||
String get recordingsLibraryTitle => 'Minhas gravações';
|
||
|
||
@override
|
||
String recordingsLibraryStorageCaption(int usedMb, int totalMb) {
|
||
return '$usedMb MB de $totalMb MB usados';
|
||
}
|
||
|
||
@override
|
||
String get recordingsLibraryStorageFolderCaption =>
|
||
'Music/PluriWave · apaga as mais antigas ao atingir o limite';
|
||
|
||
@override
|
||
String get recordingsLibraryEmptyTitle => 'Ainda não há gravações';
|
||
|
||
@override
|
||
String get recordingsLibraryEmptySubtitle =>
|
||
'As gravações que você salvar vão aparecer aqui.';
|
||
|
||
@override
|
||
String get recordingActionRename => 'Renomear';
|
||
|
||
@override
|
||
String get recordingActionShare => 'Compartilhar';
|
||
|
||
@override
|
||
String get recordingActionDelete => 'Excluir';
|
||
|
||
@override
|
||
String get recordingRenameDialogTitle => 'Renomear gravação';
|
||
|
||
@override
|
||
String get recordingRenameLabel => 'Nome';
|
||
|
||
@override
|
||
String get recordingRenameEmptyError => 'Digite um nome';
|
||
|
||
@override
|
||
String get recordingDeleteConfirmTitle => 'Excluir gravação?';
|
||
|
||
@override
|
||
String get recordingDeleteConfirmMessage =>
|
||
'Esta ação não pode ser desfeita.';
|
||
|
||
@override
|
||
String get recordingsLibrarySettingsTooltip => 'Configurações de gravação';
|
||
|
||
@override
|
||
String get stationOrderTitle => 'Ordem das estações';
|
||
|
||
@override
|
||
String get stationOrderByName => 'Por nome';
|
||
|
||
@override
|
||
String get stationOrderByQuality => 'Por qualidade';
|
||
|
||
@override
|
||
String get stationOrderByPopularity => 'Por popularidade';
|
||
|
||
@override
|
||
String get stationOrderScopeDescription =>
|
||
'Aplica-se a favoritos, buscas, estações próximas e listas rápidas.';
|
||
|
||
@override
|
||
String get favoriteGroupsTitle => 'Listas de favoritos';
|
||
|
||
@override
|
||
String get favoriteGroupsDescription =>
|
||
'Crie listas curtas para organizar suas estações salvas.';
|
||
|
||
@override
|
||
String get favoriteGroupsAdd => 'Adicionar lista';
|
||
|
||
@override
|
||
String get favoriteGroupsEdit => 'Editar lista';
|
||
|
||
@override
|
||
String get favoriteGroupsDelete => 'Excluir lista';
|
||
|
||
@override
|
||
String get favoriteGroupsNameLabel => 'Nome da lista';
|
||
|
||
@override
|
||
String get favoriteGroupsNameTooLong => 'Máximo de 28 caracteres.';
|
||
|
||
@override
|
||
String get favoriteGroupsUnassigned => 'Sem atribuição';
|
||
|
||
@override
|
||
String get favoriteGroupsProtectedHint =>
|
||
'Lista padrão: não pode ser editada nem excluída.';
|
||
|
||
@override
|
||
String get favoriteGroupsCreated => 'Lista criada';
|
||
|
||
@override
|
||
String get favoriteGroupsUpdated => 'Lista atualizada';
|
||
|
||
@override
|
||
String get favoriteGroupsDeleted =>
|
||
'Lista excluída; suas estações voltam para Sem atribuição.';
|
||
|
||
@override
|
||
String get favoriteGroupsAssign => 'Mover para lista';
|
||
|
||
@override
|
||
String favoriteGroupsAssignSubtitle(Object groupName) {
|
||
return 'Lista atual: $groupName';
|
||
}
|
||
|
||
@override
|
||
String favoriteGroupsAssigned(Object stationName, Object groupName) {
|
||
return '$stationName movida para $groupName';
|
||
}
|
||
|
||
@override
|
||
String get favoritesTitle => 'Favoritos';
|
||
|
||
@override
|
||
String get favoritesEmptyTitle => 'Ainda sem favoritos';
|
||
|
||
@override
|
||
String get favoritesEmptySubtitle =>
|
||
'Toque no coração em qualquer estação para salvá-la na sua coleção.';
|
||
|
||
@override
|
||
String get favoritesHeaderSubtitle =>
|
||
'Organize sua coleção por listas e mantenha as rádios importantes por perto.';
|
||
|
||
@override
|
||
String get favoritesCollection => 'Coleção';
|
||
|
||
@override
|
||
String favoritesSavedCount(int count) {
|
||
return '$count salvas';
|
||
}
|
||
|
||
@override
|
||
String get favoritesRemoveTooltip => 'Remover dos favoritos';
|
||
|
||
@override
|
||
String favoritesRemovedMessage(Object stationName) {
|
||
return '$stationName removida dos favoritos';
|
||
}
|
||
|
||
@override
|
||
String get favoritesFilterAllLabel => 'Todas';
|
||
|
||
@override
|
||
String favoriteGroupsChipLabel(Object groupName, int count) {
|
||
return '$groupName · $count';
|
||
}
|
||
|
||
@override
|
||
String get favoriteGroupsManage => 'Gerenciar listas';
|
||
|
||
@override
|
||
String get customStationsAddCta => 'Adicionar estação personalizada';
|
||
|
||
@override
|
||
String get alarmPostponedCurrentExecution =>
|
||
'Alarme adiado para esta execução.';
|
||
|
||
@override
|
||
String get searchScreenTitle => 'Buscar sinal';
|
||
|
||
@override
|
||
String get searchScreenSubtitle =>
|
||
'Encontre estações por nome, país ou idioma com filtros rápidos e contraste elevado.';
|
||
|
||
@override
|
||
String get searchFiltersLabel => 'Filtros';
|
||
|
||
@override
|
||
String get searchHint => 'Rádio Horizonte, jazz, notícias...';
|
||
|
||
@override
|
||
String get searchCountryFilterLabel => 'País';
|
||
|
||
@override
|
||
String get searchLanguageFilterLabel => 'Idioma';
|
||
|
||
@override
|
||
String get searchMinQualityFilterLabel => 'Qualidade mínima';
|
||
|
||
@override
|
||
String get searchLoadingStationsLabel => 'PROCURANDO EMISSORAS…';
|
||
|
||
@override
|
||
String get searchEmptyTitle => 'Busque uma estação';
|
||
|
||
@override
|
||
String get searchNoResultsTitle => 'Sem resultados';
|
||
|
||
@override
|
||
String searchNoResultsForQueryTitle(Object query) {
|
||
return 'Nenhum resultado para \"$query\"';
|
||
}
|
||
|
||
@override
|
||
String get searchEmptySubtitle =>
|
||
'Use a barra superior ou os chips para descobrir estações do mundo todo.';
|
||
|
||
@override
|
||
String get searchNoResultsSubtitle =>
|
||
'Tente remover filtros ou digitar outro nome para encontrar uma estação ativa.';
|
||
|
||
@override
|
||
String searchResultsCount(num count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: '$count resultados',
|
||
one: '1 resultado',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String searchClearFiltersAction(num count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: 'Remover $count filtros',
|
||
one: 'Remover filtro',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String get countriesScreenTitle => 'Países';
|
||
|
||
@override
|
||
String get countriesSearchHint => 'País ou código...';
|
||
|
||
@override
|
||
String get countriesYourLanguagesTitle => 'Seus idiomas';
|
||
|
||
@override
|
||
String get countriesAllTitle => 'Todos os países';
|
||
|
||
@override
|
||
String get radioCountriesError => 'Não foi possível carregar os países.';
|
||
|
||
@override
|
||
String get countrySpain => 'Espanha';
|
||
|
||
@override
|
||
String get countryUsa => 'EUA';
|
||
|
||
@override
|
||
String get countryMexico => 'México';
|
||
|
||
@override
|
||
String get countryArgentina => 'Argentina';
|
||
|
||
@override
|
||
String get countryUk => 'Reino Unido';
|
||
|
||
@override
|
||
String get countryFrance => 'França';
|
||
|
||
@override
|
||
String get countryGermany => 'Alemanha';
|
||
|
||
@override
|
||
String get countryItaly => 'Itália';
|
||
|
||
@override
|
||
String get countryBrazil => 'Brasil';
|
||
|
||
@override
|
||
String get countryJapan => 'Japão';
|
||
|
||
@override
|
||
String get languageNameSpanish => 'espanhol';
|
||
|
||
@override
|
||
String get languageNameEnglish => 'inglês';
|
||
|
||
@override
|
||
String get languageNameFrench => 'francês';
|
||
|
||
@override
|
||
String get languageNameGerman => 'alemão';
|
||
|
||
@override
|
||
String get languageNamePortuguese => 'português';
|
||
|
||
@override
|
||
String get languageNameItalian => 'italiano';
|
||
|
||
@override
|
||
String get languageNameJapanese => 'japonês';
|
||
|
||
@override
|
||
String get languageNameArabic => 'árabe';
|
||
|
||
@override
|
||
String get languageNameRussian => 'russo';
|
||
|
||
@override
|
||
String get homeScreenSubtitle =>
|
||
'Rádio global ao vivo com sinais limpos, favoritos inteligentes e uma experiência visual de game show.';
|
||
|
||
@override
|
||
String get exploreStations => 'Explorar estações';
|
||
|
||
@override
|
||
String stationsCount(int count) {
|
||
return '$count rádios';
|
||
}
|
||
|
||
@override
|
||
String get qualityHd => 'Qualidade HD';
|
||
|
||
@override
|
||
String get yourStationsTitle => 'Suas estações';
|
||
|
||
@override
|
||
String get seeAllAction => 'Ver todas';
|
||
|
||
@override
|
||
String get openFullPlayerTooltip => 'Abrir player completo';
|
||
|
||
@override
|
||
String get nowListeningLabel => 'Ouvindo agora';
|
||
|
||
@override
|
||
String get nothingPlayingTitle => 'Ainda não há nada tocando';
|
||
|
||
@override
|
||
String get nothingPlayingSubtitle =>
|
||
'Escolha uma estação em Suas estações ou pesquise uma para começar.';
|
||
|
||
@override
|
||
String get nearYou => 'Perto de você';
|
||
|
||
@override
|
||
String nearYouInCountry(Object country) {
|
||
return 'Perto de você · $country';
|
||
}
|
||
|
||
@override
|
||
String get detectAction => 'Detectar';
|
||
|
||
@override
|
||
String get liveRadar => 'Radar ao vivo';
|
||
|
||
@override
|
||
String get genresTitle => 'Gêneros';
|
||
|
||
@override
|
||
String get exploreByTitle => 'Navegar por';
|
||
|
||
@override
|
||
String get exploreTrendingTitle => 'Tendências';
|
||
|
||
@override
|
||
String get exploreTrendingSubtitle => 'Hoje';
|
||
|
||
@override
|
||
String get exploreNewTitle => 'Novidades';
|
||
|
||
@override
|
||
String get exploreNewSubtitle => 'Nesta semana';
|
||
|
||
@override
|
||
String get popularNowTitle => 'Populares agora';
|
||
|
||
@override
|
||
String get offlineBannerTitle => 'Sem conexão';
|
||
|
||
@override
|
||
String get retryAction => 'Tentar novamente';
|
||
|
||
@override
|
||
String get noStationsAvailable => 'Não há estações disponíveis';
|
||
|
||
@override
|
||
String get noStationsAvailableSubtitle =>
|
||
'Tente atualizar ou escolher outro gênero para captar sinal novamente.';
|
||
|
||
@override
|
||
String get genrePop => 'Pop';
|
||
|
||
@override
|
||
String get genreRock => 'Rock';
|
||
|
||
@override
|
||
String get genreJazz => 'Jazz';
|
||
|
||
@override
|
||
String get genreClassical => 'Clássica';
|
||
|
||
@override
|
||
String get genreElectronic => 'Eletrônica';
|
||
|
||
@override
|
||
String get genreNews => 'Notícias';
|
||
|
||
@override
|
||
String get genreTalk => 'Conversa';
|
||
|
||
@override
|
||
String get genreHipHop => 'Hip-hop';
|
||
|
||
@override
|
||
String get genreCountry => 'Country';
|
||
|
||
@override
|
||
String get genreMetal => 'Metal';
|
||
|
||
@override
|
||
String get genreReggae => 'Reggae';
|
||
|
||
@override
|
||
String get genreLatin => 'Latina';
|
||
|
||
@override
|
||
String get alarmScreenTitle => 'Despertar musical';
|
||
|
||
@override
|
||
String get alarmScreenSubtitle =>
|
||
'Alarmes com rádio, som seguro, férias inteligentes e próxima execução sempre visível.';
|
||
|
||
@override
|
||
String get createAlarmAction => 'Criar alarme';
|
||
|
||
@override
|
||
String alarmsCount(int count) {
|
||
return '$count alarmes';
|
||
}
|
||
|
||
@override
|
||
String get activeAlarmsWithoutNextTitle =>
|
||
'Alarmes ativos sem próxima execução';
|
||
|
||
@override
|
||
String get noActiveAlarms => 'Sem alarmes ativos';
|
||
|
||
@override
|
||
String get nextAlarmTitle => 'Próximo alarme';
|
||
|
||
@override
|
||
String activeAlarmsWithoutNextSubtitle(int count) {
|
||
return 'Há $count alarme(s) ativos, mas no momento não têm uma data futura válida. Verifique data, dias e férias.';
|
||
}
|
||
|
||
@override
|
||
String get createAlarmHint =>
|
||
'Crie um alarme e o PluriWave calculará automaticamente a próxima execução.';
|
||
|
||
@override
|
||
String get alarmVacationPlay => 'Toca durante as férias';
|
||
|
||
@override
|
||
String get alarmVacationPause => 'Pausa nas férias';
|
||
|
||
@override
|
||
String alarmFadeInLabel(int seconds) {
|
||
return 'Fade-in ${seconds}s';
|
||
}
|
||
|
||
@override
|
||
String alarmNextExecution(Object date) {
|
||
return 'Próxima execução: $date';
|
||
}
|
||
|
||
@override
|
||
String get alarmNoNextExecution => 'Não há próxima execução ativa.';
|
||
|
||
@override
|
||
String alarmSkippedExecution(Object date) {
|
||
return 'Uma execução foi ignorada: $date.';
|
||
}
|
||
|
||
@override
|
||
String get editAction => 'Editar';
|
||
|
||
@override
|
||
String get skipNextAction => 'Ignorar próxima';
|
||
|
||
@override
|
||
String get deleteTooltip => 'Excluir';
|
||
|
||
@override
|
||
String get alarmHeroSkipAction => 'Pular';
|
||
|
||
@override
|
||
String get alarmDeleteConfirmTitle => 'Excluir alarme?';
|
||
|
||
@override
|
||
String get alarmDeleteConfirmMessage => 'Esta ação não pode ser desfeita.';
|
||
|
||
@override
|
||
String get alarmSkippedNoNextSnackbar =>
|
||
'Alarme ignorado. Não resta próxima execução.';
|
||
|
||
@override
|
||
String alarmSkippedReturnsSnackbar(Object date) {
|
||
return 'Alarme ignorado. Voltará em $date.';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationPausedNoNext(Object vacationName) {
|
||
return 'Está pausado por férias ($vacationName) e sem próxima execução.';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationPausedReturns(Object vacationName, Object date) {
|
||
return 'Está pausado por férias ($vacationName) e volta em $date.';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationReturns(Object date) {
|
||
return 'Com férias ativas, tocará novamente em $date.';
|
||
}
|
||
|
||
@override
|
||
String get defaultAlarmName => 'Despertador musical';
|
||
|
||
@override
|
||
String get newAlarmTitle => 'Novo alarme';
|
||
|
||
@override
|
||
String get editAlarmTitle => 'Editar alarme';
|
||
|
||
@override
|
||
String get nameField => 'Nome';
|
||
|
||
@override
|
||
String get timeField => 'Hora';
|
||
|
||
@override
|
||
String get dateField => 'Data';
|
||
|
||
@override
|
||
String get onceOption => 'Uma vez';
|
||
|
||
@override
|
||
String get dailyOption => 'Diária';
|
||
|
||
@override
|
||
String get weekdaysOption => 'Dias';
|
||
|
||
@override
|
||
String get soundAndVolumeSection => 'Som e volume';
|
||
|
||
@override
|
||
String get alarmFadeInTitle => 'Fade-in do alarme';
|
||
|
||
@override
|
||
String get alarmFadeInOff => '0 s (sem transição)';
|
||
|
||
@override
|
||
String alarmFadeInSummary(int seconds) {
|
||
return '$seconds s (de 5% ao volume escolhido)';
|
||
}
|
||
|
||
@override
|
||
String get internalSafeSoundLabel => 'Som seguro interno';
|
||
|
||
@override
|
||
String get soundWarmSunrise => 'Amanhecer acolhedor';
|
||
|
||
@override
|
||
String get soundSoftBell => 'Sino suave';
|
||
|
||
@override
|
||
String get soundDigitalPulse => 'Pulso digital';
|
||
|
||
@override
|
||
String get favoriteStationLabel => 'Estação favorita';
|
||
|
||
@override
|
||
String get noStationUseInternalSound => 'Sem estação: usar som interno';
|
||
|
||
@override
|
||
String get alarmFallbackStationLabel => 'Estação reserva';
|
||
|
||
@override
|
||
String get alarmStationPickerSearchHint => 'Buscar estação pelo nome';
|
||
|
||
@override
|
||
String get alarmSnoozeDurationTitle => 'Duração da soneca';
|
||
|
||
@override
|
||
String get snoozeAction => 'Soneca';
|
||
|
||
@override
|
||
String alarmSnoozeOptionLabel(int minutes) {
|
||
return '$minutes min';
|
||
}
|
||
|
||
@override
|
||
String get alarmSnoozeUsualLabel => 'usual';
|
||
|
||
@override
|
||
String get saveFavoritesAlarmHint =>
|
||
'Salve estações nos Favoritos para usá-las como alarme musical.';
|
||
|
||
@override
|
||
String get useCurrentStationAction => 'Usar estação atual';
|
||
|
||
@override
|
||
String get playDuringVacations => 'Tocar durante as férias';
|
||
|
||
@override
|
||
String get playDuringVacationsHint =>
|
||
'Se você desativar, a próxima execução saltará para o primeiro dia válido.';
|
||
|
||
@override
|
||
String get saveAlarmAction => 'Salvar alarme';
|
||
|
||
@override
|
||
String get chooseOneWeekdayError => 'Escolha pelo menos um dia da semana.';
|
||
|
||
@override
|
||
String get androidReliabilityReview => 'Revisar confiabilidade Android';
|
||
|
||
@override
|
||
String get statusOk => 'OK';
|
||
|
||
@override
|
||
String get statusPending => 'pendente';
|
||
|
||
@override
|
||
String androidReliabilityStatus(
|
||
Object exact,
|
||
Object notifications,
|
||
Object screen,
|
||
) {
|
||
return 'Confiabilidade: exatos $exact · notificações $notifications · tela $screen';
|
||
}
|
||
|
||
@override
|
||
String get vacationRangesTitle => 'Períodos de férias';
|
||
|
||
@override
|
||
String get addAction => 'Adicionar';
|
||
|
||
@override
|
||
String get vacationRangesHint =>
|
||
'Se um alarme tiver \"Pausa nas férias\", estes períodos serão ignorados automaticamente.';
|
||
|
||
@override
|
||
String get noVacationRangesLoaded => 'Nenhum período carregado.';
|
||
|
||
@override
|
||
String get deleteRangeTooltip => 'Excluir período';
|
||
|
||
@override
|
||
String vacationRangesCount(int count) {
|
||
return '$count períodos';
|
||
}
|
||
|
||
@override
|
||
String vacationSummaryActiveCountdown(int days) {
|
||
return 'Em andamento · faltam $days dias';
|
||
}
|
||
|
||
@override
|
||
String vacationSummaryUpcomingCountdown(int days) {
|
||
return 'Próximo período em $days dias';
|
||
}
|
||
|
||
@override
|
||
String vacationImpactPausedLabel(Object times) {
|
||
return 'Pausado: $times';
|
||
}
|
||
|
||
@override
|
||
String vacationImpactContinuesLabel(Object times) {
|
||
return 'Continua tocando: $times';
|
||
}
|
||
|
||
@override
|
||
String get vacationUpcomingSectionTitle => 'PROGRAMADOS';
|
||
|
||
@override
|
||
String get vacationPastSectionTitle => 'Períodos passados';
|
||
|
||
@override
|
||
String get addVacationRangeCta => 'Adicionar período';
|
||
|
||
@override
|
||
String get vacationExplainerBanner =>
|
||
'Durante esses periodos, os alarmes marcados como \"pausar nas ferias\" nao tocam. Os marcados como \"tocar sempre\" nao sao afetados.';
|
||
|
||
@override
|
||
String get vacationNoActiveRangeHint =>
|
||
'Não há período de férias ativo no momento.';
|
||
|
||
@override
|
||
String get vacationsDefaultName => 'Férias';
|
||
|
||
@override
|
||
String get newVacationRangeTitle => 'Novo período de férias';
|
||
|
||
@override
|
||
String get editVacationRangeTitle => 'Editar período de férias';
|
||
|
||
@override
|
||
String get vacationDeleteConfirmTitle => 'Excluir período de férias?';
|
||
|
||
@override
|
||
String get vacationDeleteConfirmMessage => 'Esta ação não pode ser desfeita.';
|
||
|
||
@override
|
||
String get startField => 'Início';
|
||
|
||
@override
|
||
String get endField => 'Fim';
|
||
|
||
@override
|
||
String get saveRangeAction => 'Salvar período';
|
||
|
||
@override
|
||
String get noAlarmsYetTitle => 'Ainda não há alarmes.';
|
||
|
||
@override
|
||
String get noAlarmsYetSubtitle =>
|
||
'Crie um para configurar seu despertar musical.';
|
||
|
||
@override
|
||
String get ringingInternalAudioActive => 'Tocando com som seguro interno.';
|
||
|
||
@override
|
||
String get ringingPreparingInternalAudio => 'Preparando som seguro interno.';
|
||
|
||
@override
|
||
String get stopAlarmAction => 'Parar alarme';
|
||
|
||
@override
|
||
String get alarmStopFailedMessage =>
|
||
'Não conseguimos confirmar que o alarme parou. Tente novamente.';
|
||
|
||
@override
|
||
String get alarmForceStopAction => 'Forçar parada';
|
||
|
||
@override
|
||
String get alarmMissedNotificationTitle => 'Alarme perdido';
|
||
|
||
@override
|
||
String alarmMissedNotificationText(Object name) {
|
||
return '$name foi silenciado automaticamente após 10 minutos.';
|
||
}
|
||
|
||
@override
|
||
String get pauseAction => 'Pausar';
|
||
|
||
@override
|
||
String miniPlayerOpenLabel(Object stationName) {
|
||
return 'Abrir reprodutor de $stationName';
|
||
}
|
||
|
||
@override
|
||
String get playerIconLabel => 'Reprodutor';
|
||
|
||
@override
|
||
String get playbackStatusConnecting => 'Conectando...';
|
||
|
||
@override
|
||
String get playbackStatusLive => 'Ao vivo';
|
||
|
||
@override
|
||
String get playbackStatusPaused => 'Pausado';
|
||
|
||
@override
|
||
String get playbackStatusReconnecting => 'Reconectando...';
|
||
|
||
@override
|
||
String get playbackStatusConnectionError => 'Erro de conexão';
|
||
|
||
@override
|
||
String get playbackStatusStopped => 'Parado';
|
||
|
||
@override
|
||
String stationSemanticLabel(Object stationName) {
|
||
return 'Estação $stationName';
|
||
}
|
||
|
||
@override
|
||
String get favoritesAddTooltip => 'Adicionar aos favoritos';
|
||
|
||
@override
|
||
String favoritesAddedMessage(Object stationName) {
|
||
return '$stationName adicionada aos favoritos';
|
||
}
|
||
|
||
@override
|
||
String get stationIconLabel => 'Ícone da estação';
|
||
|
||
@override
|
||
String get liveNow => 'Ao vivo';
|
||
|
||
@override
|
||
String equalizerBandLabel(Object band) {
|
||
return 'Banda $band';
|
||
}
|
||
|
||
@override
|
||
String equalizerBandValue(Object value) {
|
||
return '$value decibéis';
|
||
}
|
||
|
||
@override
|
||
String get equalizerPresetFlat => 'Plano';
|
||
|
||
@override
|
||
String get equalizerPresetRock => 'Rock';
|
||
|
||
@override
|
||
String get equalizerPresetPop => 'Pop';
|
||
|
||
@override
|
||
String get equalizerPresetBassBoost => 'Reforço de graves';
|
||
|
||
@override
|
||
String get equalizerPresetJazz => 'Jazz';
|
||
|
||
@override
|
||
String get equalizerPresetVoice => 'Voz';
|
||
|
||
@override
|
||
String get equalizerPresetCustom => 'Personalizado';
|
||
|
||
@override
|
||
String get onboardingTitle => 'Bem-vindo ao PluriWave';
|
||
|
||
@override
|
||
String get onboardingNewsTitle => 'Novidades';
|
||
|
||
@override
|
||
String get onboardingStartAction => 'Começar';
|
||
|
||
@override
|
||
String get onboardingCloseTooltip => 'Fechar';
|
||
|
||
@override
|
||
String radioRecordingError(Object error) {
|
||
return 'Erro ao gravar a rádio: $error';
|
||
}
|
||
|
||
@override
|
||
String get radioApiConnectionError => 'Sem conexão com a API de rádio';
|
||
|
||
@override
|
||
String get radioSearchError => 'Erro na busca. Verifique sua conexão.';
|
||
|
||
@override
|
||
String get radioLoadMoreStationsError =>
|
||
'Não foi possível carregar mais estações.';
|
||
|
||
@override
|
||
String get radioNearbyStationsError =>
|
||
'Não foi possível detectar estações próximas. Use filtros por país.';
|
||
|
||
@override
|
||
String radioCannotPlayStation(Object stationName) {
|
||
return 'Não é possível reproduzir \"$stationName\"';
|
||
}
|
||
|
||
@override
|
||
String get recordingSelectStationFirst =>
|
||
'Primeiro selecione uma estação para gravar.';
|
||
|
||
@override
|
||
String recordingStartError(Object error) {
|
||
return 'Não foi possível iniciar a gravação: $error';
|
||
}
|
||
|
||
@override
|
||
String get unsupportedConfigVersion =>
|
||
'Versão de configuração não compatível';
|
||
|
||
@override
|
||
String get audioErrorGeneric => 'Erro de reprodução';
|
||
|
||
@override
|
||
String get audioErrorNoInternet => 'Sem conexão com a internet';
|
||
|
||
@override
|
||
String get audioErrorInvalidUrl => 'A URL da rádio não é válida';
|
||
|
||
@override
|
||
String get audioErrorNotFound => 'A rádio não está disponível (erro 404)';
|
||
|
||
@override
|
||
String get audioErrorTimeout => 'Tempo esgotado ao conectar';
|
||
|
||
@override
|
||
String get audioErrorCannotConnect => 'Não é possível conectar à rádio';
|
||
|
||
@override
|
||
String get audioErrorUnsupportedFormat => 'Formato de stream não compatível';
|
||
|
||
@override
|
||
String get audioErrorDecode => 'Erro ao decodificar o stream de áudio';
|
||
|
||
@override
|
||
String get audioErrorCleartext =>
|
||
'Esta rádio usa HTTP sem criptografia, o que não é permitido';
|
||
|
||
@override
|
||
String get audioErrorSsl => 'Certificado SSL inválido na rádio';
|
||
|
||
@override
|
||
String get audioErrorCannotPlay => 'Não é possível reproduzir esta rádio';
|
||
|
||
@override
|
||
String get audioErrorUnexpectedPlayback => 'Erro inesperado ao reproduzir';
|
||
|
||
@override
|
||
String get androidExactAlarmScheduleError =>
|
||
'O Android não conseguiu agendar um alarme exato. Verifique a permissão de alarmes exatos.';
|
||
|
||
@override
|
||
String get recordingPathEmptyError =>
|
||
'O caminho de gravação não pode estar vazio';
|
||
|
||
@override
|
||
String get recordingMaxSizeInvalidError =>
|
||
'O tamanho máximo deve ser maior que zero';
|
||
|
||
@override
|
||
String get recordingAlreadyActiveError => 'Já há uma gravação em andamento';
|
||
|
||
@override
|
||
String get alarmRingingFallbackActive => 'Tocando com áudio interno seguro.';
|
||
|
||
@override
|
||
String get alarmRingingPreparingFallback =>
|
||
'Preparando áudio interno seguro.';
|
||
|
||
@override
|
||
String get alarmRingingTryingStation =>
|
||
'Tentando reproduzir sua estação com a maior qualidade disponível.';
|
||
|
||
@override
|
||
String get alarmScheduleDaily => 'Todas as manhãs';
|
||
|
||
@override
|
||
String alarmScheduleOnce(Object date) {
|
||
return 'Uma vez · $date';
|
||
}
|
||
|
||
@override
|
||
String alarmScheduleWeekdays(Object days) {
|
||
return 'Dias: $days';
|
||
}
|
||
|
||
@override
|
||
String get alarmRepeatSectionLabel => 'REPETIÇÃO';
|
||
|
||
@override
|
||
String get alarmVolumeLabel => 'Volume';
|
||
|
||
@override
|
||
String get androidReliabilityTitle => 'Revisar confiabilidade Android';
|
||
|
||
@override
|
||
String get closeAction => 'Fechar';
|
||
|
||
@override
|
||
String get customOption => 'Personalizada';
|
||
|
||
@override
|
||
String get endLabel => 'Fim';
|
||
|
||
@override
|
||
String get equalizerDisable => 'Desativar equalizador';
|
||
|
||
@override
|
||
String get helpTitle => 'Ajuda e tutorial';
|
||
|
||
@override
|
||
String get helpSubtitle => '9 ecrãs · reveja quando quiser';
|
||
|
||
@override
|
||
String get tutorialSkipAction => 'Pular';
|
||
|
||
@override
|
||
String get tutorialNextAction => 'Avançar';
|
||
|
||
@override
|
||
String get tutorialPage1Headline => 'Guarde as suas estações e agrupe-as';
|
||
|
||
@override
|
||
String get tutorialPage1Body =>
|
||
'Toque no coração para guardar uma estação. Em «Suas estações» pode criar grupos como «Todas as manhãs» ou «Carro» e reordená-las arrastando.';
|
||
|
||
@override
|
||
String get tutorialPage2Headline =>
|
||
'Um equalizador geral e outro por estação';
|
||
|
||
@override
|
||
String get tutorialPage2Body =>
|
||
'Em Definições define o equalizador geral. E, ao reproduzir uma estação específica, pode dar-lhe o seu próprio ajuste, que prevalece sobre o geral.';
|
||
|
||
@override
|
||
String get tutorialPage3Headline => 'Grave o que está a ouvir';
|
||
|
||
@override
|
||
String get tutorialPage3Body =>
|
||
'Na bandeja de ferramentas do leitor, «Gravar» guarda o stream original. Encontre as suas gravações em Definições › Gravações.';
|
||
|
||
@override
|
||
String get tutorialPage4Headline => 'Alarmes que se adaptam a si';
|
||
|
||
@override
|
||
String get tutorialPage4Body =>
|
||
'Acorde com a sua estação favorita, adie 3, 5 ou 10 minutos, e adicione períodos de férias para que alguns alarmes se saltem sozinhos.';
|
||
|
||
@override
|
||
String get tutorialPage5Headline => 'Os seus favoritos, também no carro';
|
||
|
||
@override
|
||
String get tutorialPage5Body =>
|
||
'Ligue o telemóvel ao Android Auto e encontre Favoritos, Todas as estações, Suas estações e a sua Música local, com botões grandes pensados para conduzir.';
|
||
|
||
@override
|
||
String get tutorialPage6Headline => 'Reconecta-se sozinho';
|
||
|
||
@override
|
||
String get tutorialPage6Body =>
|
||
'Se o sinal cair, o PluriWave tenta novamente de forma automática e continua a mostrar os seus favoritos guardados mesmo sem ligação.';
|
||
|
||
@override
|
||
String get tutorialPage7Headline => 'Escolha quanto tempo adiar';
|
||
|
||
@override
|
||
String get tutorialPage7Body =>
|
||
'Quando um alarme toca, não existe um único «adiar»: escolhe 3, 5 ou 10 minutos conforme o que precisar nesse momento.';
|
||
|
||
@override
|
||
String get tutorialPage8Headline => 'Não a encontra? Adicione-a você mesmo';
|
||
|
||
@override
|
||
String get tutorialPage8Body =>
|
||
'Em «Suas estações» → Adicionar estação personalizada, cole o URL do stream de uma estação que não esteja na pesquisa. Fica guardada em «Suas estações», também disponível no carro.';
|
||
|
||
@override
|
||
String get tutorialPage9Headline => 'Pronto, já conhece o essencial';
|
||
|
||
@override
|
||
String get tutorialPage9BannerBody =>
|
||
'Para rever este tutorial quando quiser: Definições → Informação → Ajuda e tutorial.';
|
||
|
||
@override
|
||
String get indefiniteOption => 'Indefinida';
|
||
|
||
@override
|
||
String get invalidNumber => 'Número inválido';
|
||
|
||
@override
|
||
String get nameLabel => 'Nome';
|
||
|
||
@override
|
||
String get notPlaying => 'Não está reproduzindo';
|
||
|
||
@override
|
||
String get oneTimeOption => 'Uma vez';
|
||
|
||
@override
|
||
String get pausePlaybackTooltip => 'Pausar reprodução';
|
||
|
||
@override
|
||
String get playerQualityChangeAction => 'Alterar';
|
||
|
||
@override
|
||
String get playerToolEqLabel => 'EQ próprio';
|
||
|
||
@override
|
||
String qualityOriginal(Object quality) {
|
||
return 'Qualidade original: $quality';
|
||
}
|
||
|
||
@override
|
||
String get qualityUnknown => 'Qualidade não informada';
|
||
|
||
@override
|
||
String get recordAction => 'Gravar';
|
||
|
||
@override
|
||
String get recordDurationTitle => 'Duração da gravação';
|
||
|
||
@override
|
||
String get recordRadioSubtitle => 'Escolha por quanto tempo deseja gravar.';
|
||
|
||
@override
|
||
String get recordRadioTitle => 'Gravar rádio';
|
||
|
||
@override
|
||
String get recordingActiveTitle => 'Gravando rádio';
|
||
|
||
@override
|
||
String get recordingDirectTitle => 'Gravação direta';
|
||
|
||
@override
|
||
String get recordingsOpenFolderPlainError =>
|
||
'Não foi possível abrir a pasta de gravações';
|
||
|
||
@override
|
||
String get recordingsOpenLatest => 'Abrir última gravação';
|
||
|
||
@override
|
||
String get recordingsOpenLatestError =>
|
||
'Não foi possível abrir a última gravação';
|
||
|
||
@override
|
||
String get startLabel => 'Início';
|
||
|
||
@override
|
||
String get startPlaybackTooltip => 'Iniciar reprodução';
|
||
|
||
@override
|
||
String get stopAction => 'Parar';
|
||
|
||
@override
|
||
String get stopPlaybackTooltip => 'Parar reprodução';
|
||
|
||
@override
|
||
String get weekdayShortMonday => 'Seg';
|
||
|
||
@override
|
||
String get weekdayShortTuesday => 'Ter';
|
||
|
||
@override
|
||
String get weekdayShortWednesday => 'Qua';
|
||
|
||
@override
|
||
String get weekdayShortThursday => 'Qui';
|
||
|
||
@override
|
||
String get weekdayShortFriday => 'Sex';
|
||
|
||
@override
|
||
String get weekdayShortSaturday => 'Sáb';
|
||
|
||
@override
|
||
String get weekdayShortSunday => 'Dom';
|
||
|
||
@override
|
||
String stationCount(int count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: '$count estações',
|
||
one: '1 estação',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String get alarmIconLabel => 'Alarme musical';
|
||
|
||
@override
|
||
String get vacationIconLabel => 'Modo férias';
|
||
|
||
@override
|
||
String get alarmAdvancedSectionTitle => 'Avançado';
|
||
|
||
@override
|
||
String get alarmInlineHourLabel => 'Hora';
|
||
|
||
@override
|
||
String get alarmInlineMinuteLabel => 'Minuto';
|
||
|
||
@override
|
||
String get alarmVolumeRisingStatus => 'Aumentando o volume';
|
||
|
||
@override
|
||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||
|
||
@override
|
||
String get advancedEqSectionTitle => 'Opções avançadas de equalização';
|
||
|
||
@override
|
||
String get advancedEqEnableToggle => 'Ativar EQ por dispositivo';
|
||
|
||
@override
|
||
String get advancedEqEnableToggleSubtitle =>
|
||
'Aplica automaticamente um preset de EQ diferente quando a saída de áudio muda.';
|
||
|
||
@override
|
||
String get advancedEqKnownDevicesTitle => 'Dispositivos de áudio conhecidos';
|
||
|
||
@override
|
||
String get advancedEqKnownDevicesEmpty =>
|
||
'Nenhum dispositivo de áudio registrado ainda. Conecte um dispositivo para começar.';
|
||
|
||
@override
|
||
String advancedEqDevicePresetLabel(Object presetName) {
|
||
return 'Preset: $presetName';
|
||
}
|
||
|
||
@override
|
||
String preNoticeCountdown(int minutes) {
|
||
return 'Começa em $minutes min';
|
||
}
|
||
|
||
@override
|
||
String snoozeCountdown(int minutes) {
|
||
return 'Toca em $minutes min';
|
||
}
|
||
|
||
@override
|
||
String get snoozeAgainAction => 'Adiar novamente';
|
||
|
||
@override
|
||
String get alarmRingingNotificationTitle => 'Alarme PluriWave';
|
||
|
||
@override
|
||
String get alarmFireChannelName => 'Alarmes tocando';
|
||
|
||
@override
|
||
String get alarmFireChannelDescription =>
|
||
'Som e tela urgentes quando um alarme musical deve tocar';
|
||
|
||
@override
|
||
String get alarmPreNoticeChannelName => 'Avisos de alarme';
|
||
|
||
@override
|
||
String get alarmPreNoticeChannelDescription =>
|
||
'Notificações silenciosas antes do alarme';
|
||
|
||
@override
|
||
String get openFolderChooserTitle => 'Abrir pasta';
|
||
|
||
@override
|
||
String get openRecordingChooserTitle => 'Abrir gravação';
|
||
|
||
@override
|
||
String get eqDeviceEditTitle => 'Editar dispositivo';
|
||
|
||
@override
|
||
String get eqDeviceNameLabel => 'Nome do dispositivo';
|
||
|
||
@override
|
||
String get eqDeviceNameHint => 'Ex: Caixa da sala';
|
||
|
||
@override
|
||
String get eqDeviceNameConfirm => 'Salvar';
|
||
|
||
@override
|
||
String get eqDeviceConnected => 'Conectado';
|
||
|
||
@override
|
||
String get eqDeviceActiveOutput => 'O áudio está a sair por este dispositivo';
|
||
|
||
@override
|
||
String get eqDeviceRemove => 'Remover dispositivo';
|
||
|
||
@override
|
||
String eqDeviceRemoved(Object device) {
|
||
return '$device removido';
|
||
}
|
||
|
||
@override
|
||
String get localMusicSectionTitle => 'Música local (Android Auto)';
|
||
|
||
@override
|
||
String get localMusicSectionDescription =>
|
||
'Escolha uma pasta neste dispositivo para navegar e reproduzir os arquivos de áudio dela no carro.';
|
||
|
||
@override
|
||
String get localMusicFolderNotConfigured => 'Nenhuma pasta selecionada';
|
||
|
||
@override
|
||
String get localMusicFolderTitle => 'Pasta de música local';
|
||
|
||
@override
|
||
String get localMusicChoosePath => 'Escolher pasta';
|
||
|
||
@override
|
||
String get localMusicChangePath => 'Alterar pasta';
|
||
|
||
@override
|
||
String get localMusicFolderUpdated => 'Pasta de música local atualizada';
|
||
|
||
@override
|
||
String localMusicFolderSaveError(Object error) {
|
||
return 'Não foi possível salvar a pasta: $error';
|
||
}
|
||
|
||
@override
|
||
String get localMusicFolderGenericName => 'Pasta selecionada';
|
||
|
||
@override
|
||
String get welcomeHeadline => 'Seu mundo, ao vivo';
|
||
|
||
@override
|
||
String get welcomeBody =>
|
||
'53.412 estações de 238 países. Salve suas favoritas, leve-as para o carro e acorde com elas.';
|
||
|
||
@override
|
||
String get welcomeBullet1Title => 'Equalizador por estação';
|
||
|
||
@override
|
||
String get welcomeBullet1Subtitle =>
|
||
'Além de um Preset por dispositivo de saída';
|
||
|
||
@override
|
||
String get welcomeBullet2Title => 'Android Auto';
|
||
|
||
@override
|
||
String get welcomeBullet2Subtitle =>
|
||
'Suas favoritas e sua música local no carro';
|
||
|
||
@override
|
||
String get welcomeBullet3Title => 'Alarmes musicais';
|
||
|
||
@override
|
||
String get welcomeBullet3Subtitle =>
|
||
'Com aumento progressivo do volume e modo férias';
|
||
|
||
@override
|
||
String get welcomeCtaLabel => 'Começar a ouvir';
|
||
|
||
@override
|
||
String get eqCustomActionEnableLabel => 'Ativar equalizador';
|
||
|
||
@override
|
||
String get eqCustomActionDisableLabel => 'Desativar equalizador';
|
||
|
||
@override
|
||
String eqCustomActionPresetLabel(String preset) {
|
||
return 'Predefinição: $preset';
|
||
}
|
||
|
||
@override
|
||
String get alarmCardVacationPausedBadge => 'Pausada por férias';
|
||
|
||
@override
|
||
String get alarmCardSchedulingFailedMessage =>
|
||
'Este alarme não pôde ser registrado no sistema, por isso pode não tocar.';
|
||
|
||
@override
|
||
String get alarmCardPreNoticeFailedMessage =>
|
||
'Este alarme está agendado, mas seu aviso antecipado não pôde ser configurado.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsExactAlarmsTitle => 'Agendamento exato do alarme';
|
||
|
||
@override
|
||
String get alarmDiagnosticsExactAlarmsHint =>
|
||
'Permite que o alarme toque no minuto exato definido, mesmo com o telefone em repouso.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNotificationsTitle => 'Notificações';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNotificationsHint =>
|
||
'Necessárias para mostrar o alarme e o aviso prévio.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsFullScreenTitle =>
|
||
'Exibição em tela cheia do alarme';
|
||
|
||
@override
|
||
String get alarmDiagnosticsFullScreenHint =>
|
||
'Permite que a tela do alarme apareça automaticamente, mesmo com o telefone bloqueado.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsBatteryTitle => 'Otimização de bateria';
|
||
|
||
@override
|
||
String get alarmDiagnosticsBatteryHint =>
|
||
'Evita que o sistema feche o PluriWave em segundo plano, para que o alarme ainda possa tocar.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNativeCountTitle =>
|
||
'Alarmes registrados no Android';
|
||
|
||
@override
|
||
String alarmDiagnosticsNativeCountValue(int count) {
|
||
return 'Registrados agora: $count';
|
||
}
|
||
|
||
@override
|
||
String get alarmDiagnosticsNativeCountAttentionHint =>
|
||
'Você tem um alarme ativado, mas nenhum está registrado no sistema ainda. Reabra o PluriWave ou resolva primeiro os itens acima.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsManufacturerLabel => 'Fabricante';
|
||
|
||
@override
|
||
String get alarmDiagnosticsSdkLabel => 'Versão do Android (SDK)';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNeedsAttentionStatus => 'Precisa de atenção';
|
||
|
||
@override
|
||
String get alarmDiagnosticsAutostartTitle =>
|
||
'Mais uma etapa manual neste telefone';
|
||
|
||
@override
|
||
String alarmDiagnosticsAutostartBody(String manufacturer) {
|
||
return 'Telefones $manufacturer costumam fechar apps em segundo plano para economizar bateria. Não existe uma configuração que o PluriWave possa ativar sozinho: você precisa ativar por conta própria o Início automático (às vezes chamado de \"Autostart\" ou \"Atividade em segundo plano\") para o PluriWave. Procure em Configurações, em Apps ou Bateria, ou no próprio app de Segurança do telefone.';
|
||
}
|
||
|
||
@override
|
||
String get alarmDiagnosticsFixAction => 'Resolver';
|
||
|
||
@override
|
||
String get alarmDiagnosticsIntentUnavailable =>
|
||
'Não foi possível abrir essa tela de configurações neste telefone. Tente procurá-la manualmente nas Configurações.';
|
||
|
||
@override
|
||
String get alarmDiagnosticsUnavailableHint =>
|
||
'Ainda não conseguimos verificar as configurações do seu alarme.';
|
||
|
||
@override
|
||
String get autoEqDisableOption => 'Desativar';
|
||
|
||
@override
|
||
String get funcionPremium => 'Recurso Premium';
|
||
|
||
@override
|
||
String get limiteAlarmasAlcanzado =>
|
||
'Você atingiu o limite gratuito de 5 alarmes.';
|
||
|
||
@override
|
||
String get desbloquearPremium => 'Desbloquear Premium';
|
||
|
||
@override
|
||
String get restaurarCompras => 'Restaurar compras';
|
||
|
||
@override
|
||
String get compraError =>
|
||
'Não foi possível concluir a compra. Tente novamente.';
|
||
|
||
@override
|
||
String get restauracionSinCompras =>
|
||
'Não encontramos nenhuma compra anterior nesta conta.';
|
||
|
||
@override
|
||
String get premiumActivo => 'Premium ativo';
|
||
|
||
@override
|
||
String get premiumHojaTitulo => 'Desbloqueie o PluriWave Premium';
|
||
|
||
@override
|
||
String get premiumBeneficioSinAnuncios => 'Sem anúncios em todo o app';
|
||
|
||
@override
|
||
String get premiumBeneficioAndroidAuto => 'Android Auto';
|
||
|
||
@override
|
||
String get premiumBeneficioGrabacion => 'Gravação de emissoras';
|
||
|
||
@override
|
||
String get premiumBeneficioVacaciones => 'Períodos de férias para os alarmes';
|
||
|
||
@override
|
||
String get premiumBeneficioAlarmasIlimitadas =>
|
||
'Alarmes ilimitados (o plano gratuito permite até 5)';
|
||
|
||
@override
|
||
String get premiumPagoUnico =>
|
||
'Pagamento único, para sempre. Não é uma assinatura.';
|
||
|
||
@override
|
||
String get premiumAhoraNo => 'Agora não';
|
||
}
|