587 lines
14 KiB
Dart
587 lines
14 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 => 'FocusBuddy';
|
|
|
|
@override
|
|
String get startFocusing => 'Começar a focar';
|
|
|
|
@override
|
|
String minutes(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: 'minutos',
|
|
one: 'minuto',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String minutesValue(int count, Object minutes) {
|
|
return '$count $minutes';
|
|
}
|
|
|
|
@override
|
|
String get tapDistractionAnytime =>
|
|
'Toque em \'Me distraí\'\na qualquer momento\n—sem culpa';
|
|
|
|
@override
|
|
String get history => 'Histórico';
|
|
|
|
@override
|
|
String get settings => 'Configurações';
|
|
|
|
@override
|
|
String get iGotDistracted => 'Me distraí';
|
|
|
|
@override
|
|
String get pause => 'Pausar';
|
|
|
|
@override
|
|
String get resume => 'Continuar';
|
|
|
|
@override
|
|
String get stopSession => 'Parar sessão';
|
|
|
|
@override
|
|
String get whatPulledYouAway => 'O que te distraiu?';
|
|
|
|
@override
|
|
String get skipThisTime => 'Pular desta vez';
|
|
|
|
@override
|
|
String get stopEarly => 'Parar mais cedo?';
|
|
|
|
@override
|
|
String stopEarlyMessage(int minutes, Object minuteText) {
|
|
return 'Tudo bem — você focou por $minutes $minuteText!';
|
|
}
|
|
|
|
@override
|
|
String get keepGoing => 'Continuar';
|
|
|
|
@override
|
|
String get yesStop => 'Sim, parar';
|
|
|
|
@override
|
|
String get distractionEncouragement => 'Acontece. Vamos voltar gentilmente.';
|
|
|
|
@override
|
|
String get focusComplete => 'Sessão de foco completa!';
|
|
|
|
@override
|
|
String get youFocusedFor => 'Você focou por';
|
|
|
|
@override
|
|
String totalToday(int minutes) {
|
|
return 'Total hoje: $minutes min';
|
|
}
|
|
|
|
@override
|
|
String distractionsCount(int count, Object times) {
|
|
return 'Distrações: $count $times';
|
|
}
|
|
|
|
@override
|
|
String times(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: 'vezes',
|
|
one: 'vez',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get startAnother => 'Começar outra';
|
|
|
|
@override
|
|
String get viewHistory => 'Ver histórico';
|
|
|
|
@override
|
|
String get yourFocusJourney => 'Sua jornada de foco';
|
|
|
|
@override
|
|
String get noFocusSessionsYet => 'Ainda não há sessões de foco';
|
|
|
|
@override
|
|
String get startFirstSession =>
|
|
'Comece sua primeira sessão\npara ver seu progresso aqui!';
|
|
|
|
@override
|
|
String get today => 'Hoje';
|
|
|
|
@override
|
|
String sessions(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count sessões',
|
|
one: '$count sessão',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get completed => 'Concluída';
|
|
|
|
@override
|
|
String get stoppedEarly => 'Parada cedo';
|
|
|
|
@override
|
|
String distractions(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: 'distrações',
|
|
one: 'distração',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get focusSettings => 'Configurações de foco';
|
|
|
|
@override
|
|
String get defaultFocusDuration => 'Duração padrão do foco';
|
|
|
|
@override
|
|
String get defaultLabel => 'Padrão';
|
|
|
|
@override
|
|
String get about => 'Sobre';
|
|
|
|
@override
|
|
String get privacyPolicy => 'Política de Privacidade';
|
|
|
|
@override
|
|
String get termsOfService => 'Termos de Serviço';
|
|
|
|
@override
|
|
String get aboutFocusBuddy => 'Sobre FocusBuddy';
|
|
|
|
@override
|
|
String get resetOnboarding => 'Redefinir introdução';
|
|
|
|
@override
|
|
String get version => 'Versão 1.0.0 (MVP)';
|
|
|
|
@override
|
|
String get privacyPolicyTitle => 'Política de Privacidade';
|
|
|
|
@override
|
|
String get privacyPolicyContent =>
|
|
'FocusBuddy funciona 100% offline. Não coletamos seu nome, e-mail, localização ou dados de uso. Todas as sessões ficam no seu dispositivo.\n\nNão há sincronização na nuvem, sistema de conta ou rastreamento de análise.\n\nPara a política de privacidade completa, visite:\nhttps://ytc1012.github.io/focusbuddy-site/privacy-policy.html';
|
|
|
|
@override
|
|
String get termsOfServiceTitle => 'Termos de Serviço';
|
|
|
|
@override
|
|
String get termsOfServiceContent =>
|
|
'FocusBuddy é fornecido \"como está\" sem garantias. Ao usar este aplicativo, você concorda em usá-lo por sua própria conta e risco.\n\nEste aplicativo é projetado como uma ferramenta de temporizador de foco e não garante resultados específicos. Todos os dados são armazenados localmente no seu dispositivo.\n\nPara os termos de serviço completos, visite:\nhttps://ytc1012.github.io/focusbuddy-site/terms-of-service.html';
|
|
|
|
@override
|
|
String get close => 'Fechar';
|
|
|
|
@override
|
|
String get aboutTitle => 'Sobre FocusBuddy';
|
|
|
|
@override
|
|
String get aboutSubtitle =>
|
|
'Um temporizador de foco gentil para mentes neurodivergentes';
|
|
|
|
@override
|
|
String get aboutQuote =>
|
|
'\"Foco não é sobre nunca se distrair — é sobre voltar gentilmente toda vez que você se distrai.\"';
|
|
|
|
@override
|
|
String get aboutFeatures =>
|
|
'✨ Sem punição por distrações\n💚 Encorajamento em vez de crítica\n🔒 100% offline e privado\n🌱 Feito com carinho';
|
|
|
|
@override
|
|
String get resetOnboardingTitle => 'Redefinir introdução?';
|
|
|
|
@override
|
|
String get resetOnboardingMessage =>
|
|
'Isso mostrará as telas de introdução novamente quando você reiniciar o aplicativo.';
|
|
|
|
@override
|
|
String get cancel => 'Cancelar';
|
|
|
|
@override
|
|
String get reset => 'Redefinir';
|
|
|
|
@override
|
|
String get onboardingReset =>
|
|
'Introdução redefinida. Reinicie o aplicativo para vê-la novamente.';
|
|
|
|
@override
|
|
String get onboarding1Title => 'Foque sem culpa';
|
|
|
|
@override
|
|
String get onboarding1Description =>
|
|
'Este aplicativo é diferente — ele não vai punir você por perder o foco.\n\nPerfeito para TDAH, ansiedade ou qualquer pessoa que ache os temporizadores tradicionais muito severos.';
|
|
|
|
@override
|
|
String get onboarding2Title => 'Toque quando se distrair';
|
|
|
|
@override
|
|
String get onboarding2Description =>
|
|
'Nós vamos gentilmente lembrá-lo de voltar.\n\nSem vergonha. Sem estresse. Apenas um lembrete amigável.';
|
|
|
|
@override
|
|
String get onboarding3Title => 'Acompanhe seu progresso';
|
|
|
|
@override
|
|
String get onboarding3Description =>
|
|
'Veja como você está melhorando, uma sessão por vez.\n\nCada distração é apenas um dado — não um fracasso.';
|
|
|
|
@override
|
|
String get skip => 'Pular';
|
|
|
|
@override
|
|
String get next => 'Próximo';
|
|
|
|
@override
|
|
String get getStarted => 'Começar';
|
|
|
|
@override
|
|
String get notificationFocusInProgress => 'Sessão de foco em andamento';
|
|
|
|
@override
|
|
String notificationRemaining(String time) {
|
|
return '$time restante';
|
|
}
|
|
|
|
@override
|
|
String get notificationFocusCompleteTitle => '🎉 Sessão de foco completa!';
|
|
|
|
@override
|
|
String notificationFocusCompleteBodyNoDistractions(
|
|
int minutes,
|
|
Object minuteText,
|
|
) {
|
|
return 'Você focou por $minutes $minuteText sem distrações!';
|
|
}
|
|
|
|
@override
|
|
String notificationFocusCompleteBody(int minutes, Object minuteText) {
|
|
return 'Você focou por $minutes $minuteText. Ótimo esforço!';
|
|
}
|
|
|
|
@override
|
|
String get distractionPhoneNotification => 'Telefone / Notificação';
|
|
|
|
@override
|
|
String get distractionSocialMedia => 'Redes sociais';
|
|
|
|
@override
|
|
String get distractionThoughts => 'Pensamentos / Devaneio';
|
|
|
|
@override
|
|
String get distractionOther => 'Outro';
|
|
|
|
@override
|
|
String get language => 'Idioma';
|
|
|
|
@override
|
|
String get selectLanguage => 'Selecionar idioma';
|
|
|
|
@override
|
|
String get english => 'English';
|
|
|
|
@override
|
|
String get chinese => '中文';
|
|
|
|
@override
|
|
String get japanese => '日本語';
|
|
|
|
@override
|
|
String get korean => '한국어';
|
|
|
|
@override
|
|
String get spanish => 'Español';
|
|
|
|
@override
|
|
String get german => 'Deutsch';
|
|
|
|
@override
|
|
String get french => 'Français';
|
|
|
|
@override
|
|
String get portuguese => 'Português';
|
|
|
|
@override
|
|
String get russian => 'Русский';
|
|
|
|
@override
|
|
String get hindi => 'हिन्दी';
|
|
|
|
@override
|
|
String get indonesian => 'Bahasa Indonesia';
|
|
|
|
@override
|
|
String get italian => 'Italiano';
|
|
|
|
@override
|
|
String get arabic => 'العربية';
|
|
|
|
@override
|
|
String get points => 'Pontos';
|
|
|
|
@override
|
|
String get level => 'Nível';
|
|
|
|
@override
|
|
String get checked => 'Verificado';
|
|
|
|
@override
|
|
String get checkIn => 'Check-in';
|
|
|
|
@override
|
|
String get earnedPoints => 'Ganhou:';
|
|
|
|
@override
|
|
String get basePoints => 'Pontos base';
|
|
|
|
@override
|
|
String get honestyBonus => 'Bônus de honestidade';
|
|
|
|
@override
|
|
String totalPoints(int count) {
|
|
return 'Total de pontos: $count ⚡';
|
|
}
|
|
|
|
@override
|
|
String distractionsRecorded(int count, Object distractionText) {
|
|
return '($count $distractionText registradas)';
|
|
}
|
|
|
|
@override
|
|
String get achievementUnlocked => '🎖️ Conquista desbloqueada!';
|
|
|
|
@override
|
|
String bonusPoints(int points) {
|
|
return '+$points Pontos ⚡';
|
|
}
|
|
|
|
@override
|
|
String checkInSuccess(int points) {
|
|
return 'Check-in bem-sucedido! +$points pontos ⚡';
|
|
}
|
|
|
|
@override
|
|
String get weeklyStreakBonus => '🎉 Bônus de sequência semanal!';
|
|
|
|
@override
|
|
String get newAchievementUnlocked => '🎖️ Nova conquista desbloqueada!';
|
|
|
|
@override
|
|
String get alreadyCheckedIn => 'Você já fez check-in hoje! Volte amanhã 📅';
|
|
|
|
@override
|
|
String get checkInCalendar => 'Calendário de check-in 📅';
|
|
|
|
@override
|
|
String get checkInToday => '📅 Fazer check-in hoje';
|
|
|
|
@override
|
|
String get checkedInToday => '✓ Check-in feito hoje';
|
|
|
|
@override
|
|
String get currentStreak => '🔥 Sequência atual';
|
|
|
|
@override
|
|
String get longestStreak => '🏆 Maior sequência';
|
|
|
|
@override
|
|
String get days => 'dias';
|
|
|
|
@override
|
|
String daysCount(int count) {
|
|
return '$count dias';
|
|
}
|
|
|
|
@override
|
|
String get achievements => 'Conquistas 🎖️';
|
|
|
|
@override
|
|
String get viewAllAchievements => 'Ver todas as conquistas';
|
|
|
|
@override
|
|
String get allAchievementsComingSoon =>
|
|
'Tela completa de conquistas em breve!';
|
|
|
|
@override
|
|
String get profile => 'Perfil';
|
|
|
|
@override
|
|
String get focuser => 'Focador';
|
|
|
|
@override
|
|
String pointsToNextLevel(int points, int level) {
|
|
return '$points pontos até o nível $level';
|
|
}
|
|
|
|
@override
|
|
String get achievement_first_session_name => 'Novato em foco';
|
|
|
|
@override
|
|
String get achievement_first_session_desc =>
|
|
'Complete sua primeira sessão de foco';
|
|
|
|
@override
|
|
String get achievement_sessions_10_name => 'Começando';
|
|
|
|
@override
|
|
String get achievement_sessions_10_desc => 'Complete 10 sessões de foco';
|
|
|
|
@override
|
|
String get achievement_sessions_50_name => 'Entusiasta do foco';
|
|
|
|
@override
|
|
String get achievement_sessions_50_desc => 'Complete 50 sessões de foco';
|
|
|
|
@override
|
|
String get achievement_sessions_100_name => 'Mestre do foco';
|
|
|
|
@override
|
|
String get achievement_sessions_100_desc => 'Complete 100 sessões de foco';
|
|
|
|
@override
|
|
String get achievement_honest_bronze_name => 'Rastreador honesto · Bronze';
|
|
|
|
@override
|
|
String get achievement_honest_bronze_desc =>
|
|
'Registre 50 distrações honestamente';
|
|
|
|
@override
|
|
String get achievement_honest_silver_name => 'Rastreador honesto · Prata';
|
|
|
|
@override
|
|
String get achievement_honest_silver_desc =>
|
|
'Registre 200 distrações honestamente';
|
|
|
|
@override
|
|
String get achievement_honest_gold_name => 'Rastreador honesto · Ouro';
|
|
|
|
@override
|
|
String get achievement_honest_gold_desc =>
|
|
'Registre 500 distrações honestamente';
|
|
|
|
@override
|
|
String get achievement_marathon_name => 'Corredor de maratona';
|
|
|
|
@override
|
|
String get achievement_marathon_desc => 'Acumule 10 horas de tempo de foco';
|
|
|
|
@override
|
|
String get achievement_century_name => 'Clube do século';
|
|
|
|
@override
|
|
String get achievement_century_desc => 'Acumule 100 horas de tempo de foco';
|
|
|
|
@override
|
|
String get achievement_master_name => 'Grão-mestre do foco';
|
|
|
|
@override
|
|
String get achievement_master_desc => 'Acumule 1000 horas de tempo de foco';
|
|
|
|
@override
|
|
String get achievement_persistence_star_name => 'Estrela da persistência';
|
|
|
|
@override
|
|
String get achievement_persistence_star_desc =>
|
|
'Faça check-in por 7 dias consecutivos';
|
|
|
|
@override
|
|
String get achievement_monthly_habit_name => 'Hábito mensal';
|
|
|
|
@override
|
|
String get achievement_monthly_habit_desc =>
|
|
'Faça check-in por 30 dias consecutivos';
|
|
|
|
@override
|
|
String get achievement_centurion_name => 'Centurião';
|
|
|
|
@override
|
|
String get achievement_centurion_desc =>
|
|
'Faça check-in por 100 dias consecutivos';
|
|
|
|
@override
|
|
String get achievement_year_warrior_name => 'Guerreiro do ano';
|
|
|
|
@override
|
|
String get achievement_year_warrior_desc =>
|
|
'Faça check-in por 365 dias consecutivos';
|
|
|
|
@override
|
|
String get total => 'Total';
|
|
|
|
@override
|
|
String get status => 'Status';
|
|
|
|
@override
|
|
String get pointsBreakdown => 'Detalhamento de pontos';
|
|
|
|
@override
|
|
String get focusTimePoints => 'Tempo de foco';
|
|
|
|
@override
|
|
String get focusTimePointsDesc => '1 ponto por minuto de foco';
|
|
|
|
@override
|
|
String get honestyBonusLabel => 'Bônus de honestidade';
|
|
|
|
@override
|
|
String get honestyBonusDesc => 'Pontos extras por registrar distrações';
|
|
|
|
@override
|
|
String get checkInPoints => 'Check-in diário';
|
|
|
|
@override
|
|
String get checkInPointsDesc => 'Pontos base para check-in diário';
|
|
|
|
@override
|
|
String get streakBonus => 'Bônus de sequência';
|
|
|
|
@override
|
|
String streakBonusDesc(int days) {
|
|
return '$days check-ins consecutivos';
|
|
}
|
|
|
|
@override
|
|
String get achievementBonusLabel => 'Bônus de conquista';
|
|
|
|
@override
|
|
String get weekdayS => 'D';
|
|
|
|
@override
|
|
String get weekdayM => 'S';
|
|
|
|
@override
|
|
String get weekdayT => 'T';
|
|
|
|
@override
|
|
String get weekdayW => 'Q';
|
|
|
|
@override
|
|
String get weekdayTh => 'Q';
|
|
|
|
@override
|
|
String get weekdayF => 'S';
|
|
|
|
@override
|
|
String get weekdaySa => 'S';
|
|
}
|