pt.ts 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454
  1. export default {
  2. email_sent: "Email enviado",
  3. cant_send_email: "Não foi possível enviar o email",
  4. logout: "Terminar sessão",
  5. verify_email: "Verifique o seu email",
  6. verify_email_subtitle: "Por favor, verifique o seu email para continuar.",
  7. resend_email: "Reenviar email",
  8. resend_email_countdown: "Reenviar email em {seconds} segundos",
  9. signin_error_subtitle: "Por favor, verifique as suas credenciais e tente novamente.",
  10. register_title: "Criar conta",
  11. register_description: "Insira os seus dados abaixo para criar uma conta",
  12. register_terms: "Ao registar-se, concorda com os nossos",
  13. register_privacy: "Termos e Condições",
  14. register_privacy_link: "e com a nossa",
  15. register_privacy_link_2: "Política de Privacidade",
  16. password_forgot_title: "Esqueceu-se da palavra-passe?",
  17. password_forgot_subtitle: "Insira o seu email para redefinir a palavra-passe",
  18. new_password: "Nova palavra-passe",
  19. new_password_placeholder: "Insira a nova palavra-passe",
  20. current_password: "Palavra-passe atual",
  21. current_password_placeholder: "Insira a palavra-passe atual",
  22. confirm_password: "Confirmar palavra-passe",
  23. confirm_password_placeholder: "Confirme a palavra-passe",
  24. success: {
  25. feedback_sent: "Feedback enviado",
  26. password_forgot_success: "Email enviado",
  27. reset_password_success: "Palavra-passe redefinida com sucesso",
  28. password_updated_successfully: "Palavra-passe atualizada com sucesso",
  29. },
  30. error: {
  31. invalid_credentials: "Credenciais inválidas ou conta inexistente",
  32. upload_failed: "Falha ao enviar ficheiro",
  33. generic_error: "Erro durante a operação",
  34. sending_email: "Erro ao enviar email",
  35. },
  36. backend_errors: {
  37. EMAIL_ALREADY_EXISTS: "Este email já está registado",
  38. INVALID_FILE_TYPE: "Tipo de ficheiro inválido",
  39. FILE_TOO_LARGE: "Ficheiro demasiado grande",
  40. NO_FILE_UPLOADED: "Nenhum ficheiro enviado",
  41. IMAGE_PROCESSING_ERROR: "Erro no processamento da imagem",
  42. upload_failed: "Falha no envio",
  43. },
  44. profile: {
  45. new_workout: "Novo treino",
  46. alert: {
  47. title: "O seu progresso está guardado no navegador.",
  48. create_account: "Crie uma conta",
  49. log_in: "Inicie sessão",
  50. to_ensure_it_is_not_getting_lost: "para garantir que não se perde.",
  51. },
  52. },
  53. // Release Notes
  54. release_notes: {
  55. title: "Novidades",
  56. release_notes: "Notas de Lançamento",
  57. notes: {
  58. note_2025_06_22: {
  59. title: "🌍 Novos idiomas e melhorias de desempenho!",
  60. content:
  61. "A aplicação agora está disponível em chinês e russo! Também melhoramos o desempenho do arrastar e largar para uma experiência mais fluida. ⚡",
  62. },
  63. note_2025_06_19: {
  64. title: "📱 Agora disponível como PWA!",
  65. content:
  66. "O Workout.cool v1.2 já é uma Progressive Web App! Instale-a no seu telemóvel para uma experiência de aplicação nativa com acesso offline. 🚀",
  67. },
  68. note_2025_06_18: {
  69. title: "🚀 Nº 1 em destaque no Hacker News!",
  70. content:
  71. "O Workout.cool chegou ao primeiro lugar no Hacker News! Obrigado a todos pelo apoio incrível e bem-vindos todos os novos utilizadores! 💪",
  72. },
  73. note_2025_06_01: {
  74. title: "🎉 Novo: Dialogo de Notas de Lançamento",
  75. content: "Agora pode ver as novidades diretamente no cabeçalho! Fique atento a mais atualizações.",
  76. },
  77. note_2025_05_20: {
  78. title: "Melhorias na UI",
  79. content: "Responsividade móvel aprimorada e efeitos subtis ao passar o cursor sobre botões.",
  80. },
  81. },
  82. },
  83. // Donation Alert
  84. donation_alert: {
  85. title: "Mantém Workout.cool gratuito. Apoia-nos via",
  86. or: "ou",
  87. },
  88. // Donation Modal
  89. donation_modal: {
  90. support_via: "Apoiar via...",
  91. title: "Apoiar o projeto",
  92. congrats: "Parabéns pelo seu treino! 🎉",
  93. subtitle: "Esta app ajuda-o gratuitamente, mas tem um custo real para mim...",
  94. costs_title: "A realidade dos custos",
  95. costs_description:
  96. "Actualmente, as doações nem sequer cobrem os custos básicos: servidores, autenticação, infraestrutura, base de dados, etc.",
  97. open_source_title: "100% Open Source",
  98. open_source_description:
  99. "Esta app é completamente gratuita e de código aberto. Não há lucro - é um projeto de paixão para ajudar a comunidade e ajudar as pessoas a fazer exercício.",
  100. no_ads: "Sem publicidade",
  101. no_tracking: "Sem rastreamento",
  102. impact_title: "O seu impacto",
  103. impact_3_euros: "• Mesmo 3€ cobrem 1 semana de servidor",
  104. impact_support: "• O seu apoio mantém a app gratuita para todos",
  105. impact_footer: "Cada doação, mesmo pequena, faz uma diferença real! 🙏",
  106. later_button: "Mais tarde",
  107. support_button: "Apoiar o projeto",
  108. },
  109. // Contact Support
  110. contact_support: "Contactar Suporte",
  111. contact_support_subtitle: "Descreva o seu problema e iremos ajudá-lo o mais rápido possível. Também pode escrever-nos diretamente para",
  112. // Social Platforms
  113. social_platforms: {
  114. x: "X (Twitter)",
  115. facebook: "Facebook",
  116. email: "Email",
  117. whatsapp: "WhatsApp",
  118. website: "Website",
  119. phone: "Telefone",
  120. youtube: "YouTube",
  121. linkedin: "LinkedIn",
  122. snapchat: "Snapchat",
  123. instagram: "Instagram",
  124. tiktok: "TikTok",
  125. threads: "Threads",
  126. },
  127. // Workout Builder
  128. workout_builder: {
  129. confirm_delete: "Tem a certeza de que pretende eliminar esta sessão de treino?",
  130. steps: {
  131. equipment: {
  132. title: "Equipamento",
  133. description: "Selecione o seu equipamento",
  134. },
  135. muscles: {
  136. title: "Músculos",
  137. description: "Escolha a sua zona de treino",
  138. },
  139. exercises: {
  140. title: "Exercícios",
  141. description: "Personalize o seu treino",
  142. },
  143. },
  144. muscles: {
  145. back: "Costas",
  146. abdominals: "Abdominais",
  147. biceps: "Bíceps",
  148. triceps: "Tríceps",
  149. chest: "Peito",
  150. shoulders: "Ombros",
  151. quadriceps: "Quadríceps",
  152. hamstrings: "Isquiotibiais",
  153. glutes: "Glúteos",
  154. calves: "Panturrilhas",
  155. forearms: "Antebraços",
  156. traps: "Trapézio",
  157. obliques: "Oblíquos",
  158. },
  159. exercise: {
  160. watch_video: "Ver vídeo",
  161. shuffle: "Aleatorizar",
  162. pick: "Escolher",
  163. remove: "Remover",
  164. no_video_available: "Vídeo indisponível.",
  165. },
  166. loading: {
  167. exercises: "A carregar exercícios...",
  168. },
  169. error: {
  170. loading_exercises: "Erro ao carregar exercícios",
  171. },
  172. no_exercises_found: "Nenhum exercício encontrado. Experimente mudar a seleção de equipamento ou músculos.",
  173. equipment: {
  174. bodyweight: {
  175. label: "Peso corporal",
  176. description: "Exercícios apenas com o peso do corpo",
  177. },
  178. dumbbell: {
  179. label: "Halteres",
  180. description: "Exercícios com halteres",
  181. },
  182. barbell: {
  183. label: "Barra",
  184. description: "Movimentos compostos com barra",
  185. },
  186. kettlebell: {
  187. label: "Kettlebell",
  188. description: "Exercícios dinâmicos com kettlebell",
  189. },
  190. band: {
  191. label: "Elástico",
  192. description: "Exercícios com banda de resistência",
  193. },
  194. plate: {
  195. label: "Placa",
  196. description: "Exercícios usando discos de peso",
  197. },
  198. pullup_bar: {
  199. label: "Barra de barra fixa",
  200. description: "Exercícios para a parte superior do corpo com barra fixa",
  201. },
  202. bench: {
  203. label: "Banco",
  204. description: "Exercícios de banco e apoio",
  205. },
  206. },
  207. navigation: {
  208. previous: "Anterior",
  209. continue: "Continuar",
  210. complete: "Concluir",
  211. },
  212. stats: {
  213. "muscle_selected#zero": "0 músculos selecionados",
  214. "muscle_selected#one": "1 músculo selecionado",
  215. "muscle_selected#other": "{count} músculos selecionados",
  216. "equipment_selected#zero": "0 equipamentos selecionados",
  217. "equipment_selected#one": "1 equipamento selecionado",
  218. "equipment_selected#other": "{count} equipamentos selecionados",
  219. selected: "Selecionado",
  220. total: "Total",
  221. equipment_ready: "equipamento pronto",
  222. equipment_ready_plural: "equipamentos prontos",
  223. },
  224. selection: {
  225. choose_your_arsenal: "Escolha o seu arsenal",
  226. select_equipment_description: "Selecione equipamento para desbloquear treinos personalizados",
  227. clear_all: "Limpar tudo",
  228. muscle_selection_coming_soon: "Seleção de músculos (Em breve)",
  229. muscle_selection_description: "Selecione o(s) músculo(s) que deseja treinar clicando neles.",
  230. exercise_selection_coming_soon: "Seleção de exercícios (Em breve)",
  231. exercise_selection_description: "Nesta etapa verá recomendações de exercícios personalizadas.",
  232. },
  233. session: {
  234. back_to_workout: "Voltar ao treino",
  235. congrats: "Parabéns, treino concluído! 🎉",
  236. congrats_subtitle: "Conseguiu!",
  237. see_instructions: "Ver instruções",
  238. finish_set: "Concluir série",
  239. finish_session: "Terminar sessão",
  240. bodyweight: "Peso corporal",
  241. weight: "Peso",
  242. reps: "Reps",
  243. time: "Tempo",
  244. next_exercise: "Próximo exercício",
  245. add_set: "Adicionar série",
  246. add_column: "Adicionar coluna",
  247. add_row: "Adicionar linha",
  248. remove_column: "Remover coluna",
  249. set_number: "Série {number}",
  250. set_number_plural: "Séries {number}",
  251. set_number_singular: "Série {number}",
  252. set_number_plural_singular: "Séries {number}",
  253. workout_in_progress: "Treino em curso",
  254. started_at: "Iniciado às",
  255. quit_workout: "Abandonar treino",
  256. elapsed_time: "Tempo decorrido",
  257. chronometer: "Cronómetro",
  258. exercise_progress: "Progresso do exercício",
  259. total_volume: "Volume total",
  260. current_exercise: "Exercício atual",
  261. complete: "Concluído",
  262. active: "Ativo",
  263. already_have_a_active_session: "Já tem uma sessão ativa. Não é possível repetir sem terminar ou abandonar o treino.",
  264. no_exercise_selected: "Nenhum exercício selecionado",
  265. quit_workout_title: "Abandonar treino?",
  266. progress: "Progresso",
  267. quit_warning: "Tem a certeza de que pretende abandonar? Pode guardar o progresso ou perdê-lo completamente.",
  268. save_and_quit: "Guardar e sair",
  269. quit_without_save: "Sair sem guardar",
  270. continue_workout: "Continuar treino",
  271. history: "Histórico de treinos [{count}]",
  272. no_workout_yet: "Ainda sem treinos.",
  273. start: "iniciar",
  274. end: "terminar",
  275. exercise: "EXERCÍCIO",
  276. repeat: "Repetir",
  277. delete: "Eliminar",
  278. },
  279. attribute_value: {
  280. bodyweight: "Peso corporal",
  281. strength: "Força",
  282. powerlifting: "Powerlifting",
  283. calisthenic: "Calistenia",
  284. plyometrics: "Pliometria",
  285. stretching: "Alongamento",
  286. strongman: "Strongman",
  287. cardio: "Cardio",
  288. stabilization: "Estabilização",
  289. power: "Potência",
  290. resistance: "Resistência",
  291. crossfit: "CrossFit",
  292. weightlifting: "Levantamento de peso",
  293. neck: "Pescoço",
  294. lats: "Dorsais",
  295. adductors: "Adutores",
  296. abductors: "Abdutores",
  297. groin: "Virilha",
  298. full_body: "Corpo inteiro",
  299. rotator_cuff: "Manguito rotador",
  300. hip_flexor: "Flexor da anca",
  301. achilles_tendon: "Tendão de Aquiles",
  302. fingers: "Dedos",
  303. smith_machine: "Máquina Smith",
  304. other: "Outro",
  305. ez_bar: "Barra EZ",
  306. machine: "Máquina",
  307. desk: "Secretária",
  308. none: "Nenhum",
  309. cable: "Cabo",
  310. medicine_ball: "Medicine ball",
  311. swiss_ball: "Swiss ball",
  312. foam_roll: "Rolo de espuma",
  313. trx: "TRX",
  314. box: "Caixa",
  315. ropes: "Corda",
  316. spin_bike: "Bicicleta de spinning",
  317. step: "Step",
  318. bosu: "BOSU",
  319. tyre: "Pneu",
  320. sandbag: "Saco de areia",
  321. pole: "Barra vertical",
  322. wall: "Parede",
  323. bar: "Barra",
  324. rack: "Rack",
  325. car: "Carro",
  326. sled: "Sledge",
  327. chain: "Corrente",
  328. skierg: "SkiErg",
  329. rope: "Corda",
  330. na: "N/D",
  331. isolation: "Isolamento",
  332. compound: "Composto",
  333. },
  334. },
  335. commons: {
  336. signup_with: "Inscrever com {provider}",
  337. signin_with: "Entrar com {provider}",
  338. signup: "Inscrever-se",
  339. login: "Iniciar sessão",
  340. connecting: "A ligar...",
  341. login_to_your_account_title: "Inicie sessão na sua conta",
  342. login_to_your_account_subtitle: "Insira as suas credenciais abaixo para entrar",
  343. password_forgot: "Esqueceu-se da palavra-passe?",
  344. password_reset_success: "Palavra-passe redefinida com sucesso",
  345. dont_have_account: "Ainda não tem conta?",
  346. already_have_account: "Já tem uma conta?",
  347. or: "Ou",
  348. add: "Adicionar",
  349. your_feminine: "a sua",
  350. password: "Palavra-passe",
  351. email: "Email",
  352. logout: "Terminar sessão",
  353. first_name: "Nome",
  354. last_name: "Apelido",
  355. verify_password: "Verificar palavra-passe",
  356. submit: "Enviar",
  357. upload: "Carregar",
  358. cancel: "Cancelar",
  359. save_changes: "Guardar alterações",
  360. change: "Alterar",
  361. subject: "Assunto",
  362. message: "Mensagem",
  363. saving: "A guardar...",
  364. edit: "Editar",
  365. more_options: "Mais opções",
  366. open_link: "Abrir ligação",
  367. hide: "Ocultar",
  368. make_visible: "Tornar visível",
  369. delete: "Eliminar",
  370. share: "Partilhar",
  371. title: "Título",
  372. subtitle: "Subtítulo",
  373. content: "Conteúdo",
  374. save: "Guardar",
  375. button: "Botão",
  376. card: "Cartão",
  377. go_back: "Voltar atrás",
  378. next: "Seguinte",
  379. choose_image: "Escolher imagem",
  380. soon: "Em breve",
  381. coming_soon_with_emoji: "Em breve 🤫",
  382. no_image: "Sem imagem",
  383. description: "Descrição",
  384. price: "Preço",
  385. duration: "Duração",
  386. location: "Localização",
  387. schedule: "Agenda",
  388. participants_info: "Informação dos participantes",
  389. description_placeholder: "Insira a descrição",
  390. title_placeholder: "Insira o título",
  391. changes_saved: "Alterações guardadas",
  392. replace: "Substituir",
  393. loading: "A carregar...",
  394. image_deleted: "A imagem foi eliminada",
  395. discover_workoutcool: "Descubra o Workout Cool",
  396. received_just_now: "Recebido agora mesmo",
  397. copied: "Copiado",
  398. url_copied: "A URL foi copiada",
  399. copy_failed: "Falha ao copiar",
  400. accordion: "Acordeão",
  401. image: "Imagem",
  402. other: "Outro",
  403. register: "Registar",
  404. instantly: "instantaneamente",
  405. immediately: "imediatamente",
  406. link: "Ligação",
  407. accept: "Aceitar",
  408. deny: "Negar",
  409. invalid_input: "Entrada inválida. Por favor, verifique os erros.",
  410. copy_url: "Copiar URL",
  411. page_url: "URL da página",
  412. saving_short: "A guardar...",
  413. saved_short: "OK",
  414. looks_like_you_are_lost: "Parece que está perdido",
  415. the_page_you_are_looking_for_is_not_available: "A página que procura não está disponível",
  416. go_to_home: "Ir para o início",
  417. go_to_profile: "Ir para o perfil",
  418. terms: "Termos de Serviço",
  419. privacy: "Política de Privacidade",
  420. sales_terms: "Termos de Venda",
  421. consent_banner: "Utilizamos cookies para melhorar a sua experiência. Ao clicar em Aceitar, concorda com a nossa utilização de cookies.",
  422. about: "Sobre nós",
  423. profile: "Perfil",
  424. donate: "Doar",
  425. my_account: "A minha conta",
  426. dashboard: "Dashboard",
  427. home: "Início",
  428. changelog: "Histórico de alterações",
  429. stop_impersonation_button: "Parar personificação",
  430. impersonating_user_label: "Personificando utilizador",
  431. re_hello: "Re Olá",
  432. back_to_login: "Voltar para Login",
  433. sending: "A enviar...",
  434. send_me_link: "Enviar-me ligação",
  435. extremely_dissatisfied: "Extremamente insatisfeito",
  436. somewhat_dissatisfied: "Ligeiramente insatisfeito",
  437. neutral: "Neutro",
  438. satisfied: "Satisfeito",
  439. support: "Suporte",
  440. change_language: "Alterar idioma",
  441. in_progress: "Em progresso",
  442. },
  443. } as const;