{ "config": { "step": { "user": { "title": "Bem-vindo ao TaskMate!", "description": "Configure o seu sistema de gestão de tarefas familiar. Pode personalizar a moeda de pontos que as crianças vão ganhar.", "data": { "points_name": "Nome da moeda de pontos (ex: Estrelas, Moedas, Pontos)", "points_icon": "Ícone dos pontos" } } }, "error": { "name_required": "O nome é obrigatório" }, "abort": { "already_configured": "O TaskMate já está configurado" }, "create_entry": { "default": "O TaskMate está pronto. [Abra o painel do TaskMate](/taskmate-admin) para adicionar as suas crianças com o assistente de configuração, que sugere tarefas para a idade delas." } }, "selector": { "chore_action": { "options": { "save": "Guardar alterações", "re_enable": "Reativar tarefa", "disable": "Desativar tarefa", "delete": "Eliminar esta tarefa" } }, "reward_action": { "options": { "save": "Guardar alterações", "delete": "Eliminar recompensa" } }, "time_category": { "options": { "morning": "Manhã", "afternoon": "Tarde", "evening": "Fim da tarde", "night": "Noite", "anytime": "Qualquer hora" } }, "schedule_mode": { "options": { "specific_days": "Dias específicos da semana", "recurring": "Recorrente (a cada N dias/semanas/meses)", "one_shot": "Tarefa única (um dia)" } }, "due_days_option": { "options": { "monday": "Segunda-feira", "tuesday": "Terça-feira", "wednesday": "Quarta-feira", "thursday": "Quinta-feira", "friday": "Sexta-feira", "saturday": "Sábado", "sunday": "Domingo" } }, "recurrence": { "options": { "every_2_days": "A cada 2 dias", "weekly": "Semanal", "every_2_weeks": "A cada 2 semanas", "monthly": "Mensal", "every_3_months": "A cada 3 meses", "every_6_months": "A cada 6 meses" } }, "recurrence_day_option": { "options": { "monday": "Segunda-feira", "tuesday": "Terça-feira", "wednesday": "Quarta-feira", "thursday": "Quinta-feira", "friday": "Sexta-feira", "saturday": "Sábado", "sunday": "Domingo", "any_day": "Qualquer dia" } }, "first_occurrence_mode": { "options": { "available_immediately": "Disponível imediatamente", "wait_for_first_occurrence": "Aguardar primeira ocorrência agendada" } }, "streak_reset_mode": { "options": { "reset": "Reiniciar — sequência volta a 0 num dia falhado", "pause": "Pausar — sequência preservada até próxima conclusão" } }, "visibility_operator": { "options": { "none": "Sem filtro — Mostrar sempre a tarefa", "equals": "Igual — Mostrar quando o estado da entidade corresponde exatamente", "not_equals": "Não igual — Mostrar quando o estado da entidade não corresponde", "gte": "Maior ou igual (≥) — Mostrar quando valor numérico é ≥ alvo", "lte": "Menor ou igual (≤) — Mostrar quando valor numérico é ≤ alvo", "gt": "Maior que (>) — Mostrar quando valor numérico é > alvo", "lt": "Menor que (<) — Mostrar quando valor numérico é < alvo" } }, "assignment_mode": { "options": { "everyone": "Todos — todas as crianças atribuídas veem a tarefa", "alternating": "Alternado — alterna entre as crianças atribuídas, uma por dia", "random": "Aleatório — escolhe aleatoriamente uma criança atribuída por dia", "balanced": "Equilibrado — divide as tarefas equilibradas do dia igualmente entre as crianças atribuídas", "first_come": "Quem chega primeiro — a primeira criança a concluir ganha; desaparece para as restantes", "unassigned": "Não atribuído — nenhuma criança vê esta tarefa" } }, "task_group_policy": { "options": { "sticky": "Sticky — mesma criança para todas as tarefas do grupo", "spread": "Spread — crianças diferentes no grupo hoje" } }, "task_group_action": { "options": { "save": "Guardar alterações", "delete": "Eliminar grupo" } } }, "services": { "complete_chore": { "name": "Concluir tarefa", "description": "Marcar uma tarefa como concluída por uma criança", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa a concluir" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que conclui a tarefa" }, "note": { "name": "Nota", "description": "O que a criança fez, nas suas próprias palavras. Obrigatório em tarefas abertas e mostrado ao progenitor na aprovação." }, "suggested_points": { "name": "Pontos sugeridos", "description": "Quanto a criança acha que o trabalho valeu. Apenas uma sugestão para quem aprova — não atribui pontos por si só." } } }, "complete_bonus_subtask": { "name": "Concluir subtarefa bónus", "description": "Concluir uma subtarefa bónus depois de a tarefa principal estar concluída", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa principal" }, "bonus_subtask_id": { "name": "ID da subtarefa bónus", "description": "O ID da subtarefa bónus a concluir" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que conclui a subtarefa bónus" } } }, "approve_chore": { "name": "Aprovar tarefa", "description": "Aprovar uma tarefa concluída e atribuir pontos", "fields": { "completion_id": { "name": "ID de conclusão", "description": "O ID da conclusão da tarefa a aprovar" }, "points": { "name": "Pontos", "description": "Atribuir este número de pontos em vez do valor da própria tarefa. Deixe vazio para usar os pontos da tarefa." }, "rating": { "name": "Avaliação de qualidade", "description": "Avaliação opcional de 1 a 3 estrelas sobre a qualidade da tarefa. Com as avaliações de qualidade ativadas, os pontos são multiplicados pelo multiplicador dessa estrela; deixe vazio para pagar 100%." } } }, "approve_all_chores": { "name": "Aprovar todas as tarefas", "description": "Aprovar todas as conclusões de tarefas pendentes (ou um conjunto específico) e atribuir pontos", "fields": { "completion_ids": { "name": "IDs de conclusão", "description": "IDs de conclusão específicos para aprovar; omita para aprovar todas as pendentes" }, "rating": { "name": "Avaliação de qualidade", "description": "Avaliação opcional de 1 a 3 estrelas aplicada a todas as tarefas aprovadas por esta chamada (as avaliações de qualidade têm de estar ativadas)." } } }, "reject_chore": { "name": "Rejeitar tarefa", "description": "Rejeitar uma tarefa concluída", "fields": { "completion_id": { "name": "ID de conclusão", "description": "O ID da conclusão da tarefa a rejeitar" }, "reason": { "name": "Motivo", "description": "Motivo opcional mostrado à criança" } } }, "undo_chore": { "name": "Anular tarefa", "description": "Permite a uma criança retirar a sua própria tarefa — uma submissão pendente até um pai a rever, ou uma tarefa aprovada automaticamente dentro da janela de anulação. Desligado a menos que a janela esteja acima de 0 nas definições do TaskMate; o que um pai já reviu só pode ser anulado por um pai.", "fields": { "completion_id": { "name": "ID de conclusão", "description": "O ID da tarefa concluída pela criança a retirar" } } }, "undo_chore_approval": { "name": "Anular aprovação de tarefa", "description": "Anular a aprovação acidental de uma tarefa — remove os pontos atribuídos e devolve a conclusão a pendente para que possa ser aprovada novamente.", "fields": { "completion_id": { "name": "ID de conclusão", "description": "O ID da conclusão de tarefa aprovada a repor como pendente" } } }, "undo_transaction": { "name": "Anular transação", "description": "Anular uma transação de pontos pelo seu ID — penalizações, bónus, ajustes manuais (adicionar/remover) e presentes (ambas as partes). As transações automáticas (bónus de fim de semana/sequência/semana perfeita, movimentos do mealheiro, desvalorização, juros) não podem ser anuladas.", "fields": { "transaction_id": { "name": "ID da transação", "description": "O ID da transação de pontos a reverter" } } }, "claim_reward": { "name": "Reclamar recompensa", "description": "A criança reclama uma recompensa usando os seus pontos", "fields": { "reward_id": { "name": "ID da recompensa", "description": "O ID da recompensa a reclamar" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que reclama a recompensa" } } }, "approve_reward": { "name": "Aprovar recompensa", "description": "Aprovar um pedido de recompensa", "fields": { "claim_id": { "name": "ID do pedido", "description": "O ID do pedido de recompensa a aprovar" } } }, "allocate_points_to_pool": { "name": "Alocar pontos ao mealheiro", "description": "Mover pontos do saldo disponível de uma criança para o mealheiro de uma recompensa (bloqueado).", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança que faz a alocação" }, "reward_id": { "name": "ID da recompensa", "description": "O ID do mealheiro da recompensa onde depositar" }, "points": { "name": "Pontos", "description": "Número de pontos a alocar (limitado pela capacidade do mealheiro e pelo saldo disponível)" } } }, "add_points": { "name": "Adicionar pontos", "description": "Adicionar pontos de bónus a uma criança", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança a quem adicionar pontos" }, "points": { "name": "Pontos", "description": "O número de pontos a adicionar" }, "reason": { "name": "Motivo", "description": "Motivo opcional para o bónus" } } }, "remove_points": { "name": "Remover pontos", "description": "Remover pontos de uma criança (penalização)", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança a quem remover pontos" }, "points": { "name": "Pontos", "description": "O número de pontos a remover" }, "reason": { "name": "Motivo", "description": "Motivo opcional para a penalização" } } }, "reject_reward": { "name": "Rejeitar recompensa", "description": "Rejeitar um pedido de recompensa", "fields": { "claim_id": { "name": "ID do pedido", "description": "O ID do pedido de recompensa a rejeitar" }, "reason": { "name": "Motivo", "description": "Motivo opcional mostrado à criança" } } }, "preview_sound": { "name": "Pré-visualizar som", "description": "Pré-visualizar um efeito sonoro de conclusão no navegador", "fields": { "sound": { "name": "Som", "description": "O som a pré-visualizar" } } }, "set_chore_order": { "name": "Definir ordem das tarefas", "description": "Definir a ordem de apresentação das tarefas para uma criança", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança para definir a ordem das tarefas" }, "chore_order": { "name": "Ordem das tarefas", "description": "Lista ordenada de IDs de tarefas" } } }, "add_penalty": { "name": "Adicionar penalização", "description": "Criar uma nova definição de penalização", "fields": { "name": { "name": "Nome", "description": "O nome da penalização" }, "points": { "name": "Pontos", "description": "O número de pontos a deduzir quando aplicada" }, "description": { "name": "Descrição", "description": "Descrição opcional da penalização" }, "icon": { "name": "Ícone", "description": "Ícone MDI para a penalização" }, "assigned_to": { "name": "Atribuída a", "description": "Lista de IDs de crianças a quem esta penalização se aplica" } } }, "update_penalty": { "name": "Atualizar penalização", "description": "Atualizar uma definição de penalização existente", "fields": { "penalty_id": { "name": "ID da penalização", "description": "O ID da penalização a atualizar" }, "name": { "name": "Nome", "description": "Novo nome para a penalização" }, "points": { "name": "Pontos", "description": "Novo valor de pontos" }, "description": { "name": "Descrição", "description": "Nova descrição" }, "icon": { "name": "Ícone", "description": "Novo ícone" }, "assigned_to": { "name": "Atribuída a", "description": "Nova lista de IDs de crianças" } } }, "remove_penalty": { "name": "Remover penalização", "description": "Remover uma definição de penalização", "fields": { "penalty_id": { "name": "ID da penalização", "description": "O ID da penalização a remover" } } }, "apply_penalty": { "name": "Aplicar penalização", "description": "Aplicar uma penalização a uma criança, deduzindo pontos", "fields": { "penalty_id": { "name": "ID da penalização", "description": "O ID da penalização a aplicar" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem aplicar a penalização" } } }, "add_bonus": { "name": "Adicionar bónus", "description": "Criar uma nova definição de bónus", "fields": { "name": { "name": "Nome", "description": "O nome do bónus" }, "points": { "name": "Pontos", "description": "O número de pontos a atribuir quando aplicado" }, "description": { "name": "Descrição", "description": "Descrição opcional do bónus" }, "icon": { "name": "Ícone", "description": "Ícone MDI para o bónus" }, "assigned_to": { "name": "Atribuído a", "description": "Lista de IDs de crianças a que este bónus se aplica" } } }, "update_bonus": { "name": "Atualizar bónus", "description": "Atualizar uma definição de bónus existente", "fields": { "bonus_id": { "name": "ID do bónus", "description": "O ID do bónus a atualizar" }, "name": { "name": "Nome", "description": "Novo nome para o bónus" }, "points": { "name": "Pontos", "description": "Novo valor de pontos" }, "description": { "name": "Descrição", "description": "Nova descrição" }, "icon": { "name": "Ícone", "description": "Novo ícone" }, "assigned_to": { "name": "Atribuído a", "description": "Nova lista de IDs de crianças" } } }, "remove_bonus": { "name": "Remover bónus", "description": "Remover uma definição de bónus", "fields": { "bonus_id": { "name": "ID do bónus", "description": "O ID do bónus a remover" } } }, "apply_bonus": { "name": "Aplicar bónus", "description": "Aplicar um bónus a uma criança, atribuindo pontos", "fields": { "bonus_id": { "name": "ID do bónus", "description": "O ID do bónus a aplicar" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem aplicar o bónus" } } }, "add_chore": { "name": "Adicionar tarefa", "description": "Criar uma nova tarefa dinamicamente, normalmente a partir de uma automação ou script", "fields": { "name": { "name": "Nome", "description": "O nome da tarefa" }, "description": { "name": "Descrição", "description": "Descrição opcional da tarefa" }, "points": { "name": "Pontos", "description": "Pontos atribuídos quando esta tarefa é concluída" }, "assigned_to": { "name": "Atribuída a", "description": "Lista de IDs de crianças a quem atribuir esta tarefa. Deixe vazio para atribuir a todas as crianças" }, "time_category": { "name": "Categoria de tempo", "description": "Quando esta tarefa deve ser concluída: morning, afternoon, evening, night ou anytime" }, "one_shot": { "name": "Única", "description": "Se verdadeiro, é uma tarefa única que expira após a conclusão ou no final do dia" }, "requires_approval": { "name": "Requer aprovação", "description": "Se verdadeiro, um pai/mãe deve aprovar a conclusão antes de os pontos serem atribuídos" }, "team_size": { "name": "Tamanho da equipa", "description": "Torna esta tarefa numa tarefa de equipa que só conta quando este número de crianças diferentes se juntar. Quando a equipa está completa, é submetida para todas. 0 = uma tarefa normal." }, "team_points_mode": { "name": "Pontos da equipa", "description": "Como uma tarefa de equipa paga: \"each\" dá os pontos completos a cada participante, \"split\" divide-os igualmente (arredondado para baixo)." }, "team_bonus": { "name": "Bónus de equipa", "description": "Pontos extra que cada participante ganha quando uma tarefa de equipa é concluída." } } }, "skip_chore": { "name": "Skip Chore", "description": "Advance today's rotation past the current assignee. Ephemeral — tomorrow's rotation resumes as normal.", "fields": { "chore_id": { "name": "Chore ID", "description": "The ID of the chore to skip" } } }, "set_chore_manual_start": { "name": "Set Manual Start Child", "description": "Set which child starts a rotating chore. For alternating mode this reorders the pool; for random/balanced it only overrides today's assignee.", "fields": { "chore_id": { "name": "Chore ID", "description": "The ID of the chore to update" }, "child_id": { "name": "Child ID", "description": "The ID of the child who should start the rotation" } } }, "add_task_group": { "name": "Add Task Group", "description": "Create a task group (sticky = same child, spread = different children).", "fields": { "name": { "name": "Name", "description": "Display name for the group" }, "policy": { "name": "Policy", "description": "sticky (same child) or spread (different children)" }, "chore_ids": { "name": "Chore IDs", "description": "List of chore IDs in the group. For sticky, the first chore is the leader." } } }, "update_task_group": { "name": "Update Task Group", "description": "Update a task group's name, policy, or membership.", "fields": { "group_id": { "name": "Group ID", "description": "The ID of the group to update" }, "name": { "name": "Name", "description": "New display name" }, "policy": { "name": "Policy", "description": "New policy (sticky or spread)" }, "chore_ids": { "name": "Chore IDs", "description": "Replacement chore ID list. For sticky, the first chore is the leader." } } }, "remove_task_group": { "name": "Remove Task Group", "description": "Delete a task group. Member chores are not affected.", "fields": { "group_id": { "name": "Group ID", "description": "The ID of the group to delete" } } }, "start_timed_task": { "name": "Iniciar tarefa temporizada", "description": "Iniciar ou retomar o temporizador de uma tarefa temporizada", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa temporizada" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que inicia o temporizador" } } }, "leave_team_chore": { "name": "Sair de tarefa de equipa", "description": "Retirar uma criança de uma tarefa de equipa a que se juntou hoje, antes de a equipa estar completa", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa de equipa" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que sai da equipa" } } }, "complete_next_chore": { "name": "Concluir a próxima tarefa", "description": "Conclui a próxima tarefa pendente da criança, pela ordem mostrada no cartão da criança. As tarefas que exigem uma fotografia, uma nota, um temporizador ou uma equipa são ignoradas. Pensado para botões e atalhos do relógio; aplicam-se as regras de aprovação habituais.", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança cuja próxima tarefa deve ser concluída" } } }, "post_bounty": { "name": "Publicar tarefa extra", "description": "Publicar uma tarefa extra pontual no quadro de tarefas extra por um número fixo de pontos. Qualquer criança elegível pode ficar com ela; quando feita, passa pela aprovação normal.", "fields": { "title": { "name": "Título", "description": "Qual é a tarefa, p. ex. \"Lavar o carro\"" }, "points": { "name": "Pontos", "description": "Pontos fixos pagos quando um pai ou mãe aprova a tarefa feita" }, "description": { "name": "Descrição", "description": "Detalhes opcionais para as crianças" }, "icon": { "name": "Ícone", "description": "Ícone MDI mostrado no quadro" }, "expires_at": { "name": "Expira em", "description": "Data e hora opcionais em que a tarefa extra sai do quadro se ninguém tiver ficado com ela. Deixe vazio para não expirar." }, "eligible_child_ids": { "name": "Crianças elegíveis", "description": "IDs das crianças que podem ficar com ela. Vazio = todas as crianças." }, "claim_hours": { "name": "Reserva (horas)", "description": "Quanto tempo dura uma reserva antes de a tarefa extra voltar ao quadro" }, "require_photo": { "name": "Exigir fotografia", "description": "A criança tem de anexar uma fotografia ao marcá-la como feita" }, "notify_children": { "name": "Avisar as crianças", "description": "Enviar a notificação \"Nova tarefa extra\" às crianças elegíveis" } } }, "update_bounty": { "name": "Atualizar tarefa extra", "description": "Editar uma tarefa extra. Depois de reservada, só os pontos e a expiração podem mudar.", "fields": { "bounty_id": { "name": "ID da tarefa extra", "description": "O ID da tarefa extra a editar" }, "title": { "name": "Título", "description": "Qual é a tarefa, p. ex. \"Lavar o carro\"" }, "points": { "name": "Pontos", "description": "Pontos fixos pagos quando um pai ou mãe aprova a tarefa feita" }, "description": { "name": "Descrição", "description": "Detalhes opcionais para as crianças" }, "icon": { "name": "Ícone", "description": "Ícone MDI mostrado no quadro" }, "expires_at": { "name": "Expira em", "description": "Data e hora opcionais em que a tarefa extra sai do quadro se ninguém tiver ficado com ela. Deixe vazio para não expirar." }, "eligible_child_ids": { "name": "Crianças elegíveis", "description": "IDs das crianças que podem ficar com ela. Vazio = todas as crianças." }, "claim_hours": { "name": "Reserva (horas)", "description": "Quanto tempo dura uma reserva antes de a tarefa extra voltar ao quadro" }, "require_photo": { "name": "Exigir fotografia", "description": "A criança tem de anexar uma fotografia ao marcá-la como feita" }, "notify_children": { "name": "Avisar as crianças", "description": "Enviar a notificação \"Nova tarefa extra\" às crianças elegíveis" } } }, "remove_bounty": { "name": "Remover tarefa extra", "description": "Tirar uma tarefa extra do quadro. Não é possível enquanto uma tarefa feita aguarda aprovação.", "fields": { "bounty_id": { "name": "ID da tarefa extra", "description": "O ID da tarefa extra a remover" } } }, "claim_bounty": { "name": "Reservar tarefa extra", "description": "Reservar uma tarefa extra para uma criança, que fica com ela durante o período de reserva. Cada criança só pode ter uma de cada vez.", "fields": { "bounty_id": { "name": "ID da tarefa extra", "description": "O ID da tarefa extra a reservar" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que a reserva" } } }, "give_back_bounty": { "name": "Devolver tarefa extra", "description": "Devolver uma tarefa extra reservada ao quadro para outra criança a poder levar", "fields": { "bounty_id": { "name": "ID da tarefa extra", "description": "O ID da tarefa extra reservada" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que a reservou" } } }, "complete_bounty": { "name": "Concluir tarefa extra", "description": "Marcar uma tarefa extra reservada como feita. Vai para aprovação como uma tarefa normal.", "fields": { "bounty_id": { "name": "ID da tarefa extra", "description": "O ID da tarefa extra reservada" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que a reservou" }, "photo_url": { "name": "URL da fotografia", "description": "Fotografia da tarefa feita (obrigatória quando a tarefa extra a pede)" } } }, "pause_timed_task": { "name": "Pausar tarefa temporizada", "description": "Pausar o temporizador de uma tarefa temporizada em curso", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa temporizada" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que pausa o temporizador" } } }, "stop_timed_task": { "name": "Parar tarefa temporizada", "description": "Parar o temporizador de uma tarefa temporizada e submeter para aprovação", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa temporizada" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que para o temporizador" } } }, "add_badge": { "name": "Adicionar conquista", "description": "Criar uma conquista personalizada.", "fields": { "name": { "name": "Nome", "description": "O nome de apresentação da conquista" }, "description": { "name": "Descrição", "description": "Descrição de como a conquista é ganha" }, "icon": { "name": "Ícone", "description": "Ícone da conquista (ex.: mdi:beach)" }, "tier": { "name": "Nível", "description": "Nível da conquista: bronze, prata, ouro ou platina" }, "point_bonus": { "name": "Bónus de pontos", "description": "Pontos creditados à criança quando a conquista é ganha" }, "criteria": { "name": "Critérios", "description": "Lista de dicionários metric / operator / value. Vazio = apenas atribuição manual." }, "assigned_to": { "name": "Atribuída a", "description": "Lista de IDs de crianças (vazio = todas)" }, "notify_on_earn": { "name": "Notificar ao ganhar", "description": "Enviar uma notificação quando a conquista é ganha" } } }, "update_badge": { "name": "Atualizar conquista", "description": "Atualizar uma conquista existente. Para as integradas, apenas point_bonus, tier, assigned_to, enabled e notify_on_earn são editáveis.", "fields": { "badge_id": { "name": "ID da conquista", "description": "O ID da conquista a atualizar" }, "name": { "name": "Nome", "description": "Novo nome de apresentação da conquista" }, "description": { "name": "Descrição", "description": "Nova descrição da conquista" }, "icon": { "name": "Ícone", "description": "Novo ícone da conquista" }, "tier": { "name": "Nível", "description": "Nível da conquista: bronze, prata, ouro ou platina" }, "point_bonus": { "name": "Bónus de pontos", "description": "Pontos creditados à criança quando a conquista é ganha" }, "criteria": { "name": "Critérios", "description": "Lista de dicionários metric / operator / value. Vazio = apenas atribuição manual." }, "assigned_to": { "name": "Atribuída a", "description": "Lista de IDs de crianças (vazio = todas)" }, "enabled": { "name": "Ativada", "description": "Se a conquista está ativa" }, "notify_on_earn": { "name": "Notificar ao ganhar", "description": "Enviar uma notificação quando a conquista é ganha" } } }, "remove_badge": { "name": "Remover conquista", "description": "Remover uma conquista personalizada. As integradas não podem ser removidas.", "fields": { "badge_id": { "name": "ID da conquista", "description": "O ID da conquista a remover" } } }, "award_badge_manually": { "name": "Atribuir conquista manualmente", "description": "Atribuir manualmente uma conquista a uma criança.", "fields": { "badge_id": { "name": "ID da conquista", "description": "O ID da conquista a atribuir" }, "child_id": { "name": "ID da criança", "description": "O ID da criança que recebe a conquista" } } }, "revoke_badge": { "name": "Revogar conquista", "description": "Revogar uma conquista atribuída. Se um bónus de pontos foi creditado, é revertido.", "fields": { "awarded_badge_id": { "name": "ID da conquista atribuída", "description": "O ID da conquista atribuída a revogar" } } }, "rebuild_badges": { "name": "Reconstruir conquistas", "description": "Reavaliar todas as conquistas de todas as crianças silenciosamente (sem notificações nem bónus de pontos)." }, "apply_mandatory_penalty": { "name": "Aplicar penalização obrigatória", "description": "Deduz os pontos de penalização configurados por uma tarefa obrigatória falhada e remove o item de revisão.", "fields": { "miss_id": { "name": "ID da falha", "description": "O ID do item de revisão da tarefa obrigatória falhada" } } }, "choose_avatar": { "name": "Escolher avatar", "description": "Uma criança muda para um avatar que desbloqueou.", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança" }, "icon": { "name": "Ícone do avatar", "description": "O ícone mdi de um avatar do catálogo desbloqueado (ex.: mdi:rocket-launch)." } } }, "dismiss_mandatory_chore": { "name": "Dispensar tarefa obrigatória", "description": "Remove o item de revisão de uma tarefa obrigatória falhada sem penalização.", "fields": { "miss_id": { "name": "ID da falha", "description": "O ID do item de revisão da tarefa obrigatória falhada" } } }, "gift_points": { "name": "Oferecer pontos", "description": "Transfere pontos disponíveis de uma criança para outra (controlado pelos pais).", "fields": { "from_child_id": { "name": "ID da criança de origem", "description": "O ID da criança que envia os pontos" }, "to_child_id": { "name": "ID da criança de destino", "description": "O ID da criança que recebe os pontos" }, "points": { "name": "Pontos", "description": "O número de pontos a transferir" } } }, "adjust_streak_freezes": { "name": "Ajustar congelamentos de sequência", "description": "Dá congelamentos de sequência a uma criança (quantidade positiva) ou retira alguns (negativa). Uma atribuição nunca ultrapassa o limite streak_freeze_max.", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança cujos congelamentos mudam" }, "amount": { "name": "Quantidade", "description": "Congelamentos a adicionar (positivo) ou remover (negativo)" } } }, "postpone_mandatory_chore": { "name": "Adiar tarefa obrigatória", "description": "Dá a uma tarefa obrigatória falhada outro período (ou amanhã) sem penalização e remove o item de revisão.", "fields": { "miss_id": { "name": "ID da falha", "description": "O ID do item de revisão da tarefa obrigatória falhada" } } }, "request_swap": { "name": "Pedir troca de tarefa", "description": "Uma criança pede para assumir a atribuição de rotação de hoje de uma tarefa (sujeito a aprovação dos pais).", "fields": { "chore_id": { "name": "ID da tarefa", "description": "O ID da tarefa a assumir" }, "requester_id": { "name": "ID da criança solicitante", "description": "O ID da criança que pede a troca" } } }, "test_notification": { "name": "Notificação de teste", "description": "Envia uma notificação de exemplo do tipo indicado aos destinatários ativados (ignora o interruptor principal para que o encaminhamento possa ser verificado).", "fields": { "type_id": { "name": "Tipo de notificação", "description": "ID do tipo de notificação, p. ex. pending_chore_approval, badge_earned, streak_milestone" } } }, "record_allowance_payout": { "name": "Registar pagamento de mesada", "description": "Deduzir pontos e registar um pagamento de mesada real no histórico (taxa de conversão fixa; controlado pelos pais).", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança que recebe o pagamento" }, "points": { "name": "Pontos", "description": "Pontos a converter em dinheiro e a deduzir" } } }, "add_wish": { "name": "Adicionar desejo", "description": "Uma criança adiciona algo para o qual quer poupar. Fica à espera da aprovação de um adulto.", "fields": { "child_id": { "name": "ID da criança", "description": "O ID da criança que faz o desejo" }, "name": { "name": "Nome", "description": "O que a criança quer" }, "target": { "name": "Objetivo", "description": "Número de pontos sugerido. O adulto pode alterá-lo ao aprovar." }, "link": { "name": "Ligação", "description": "Endereço web opcional (http ou https) do artigo" }, "photo_url": { "name": "Imagem", "description": "Imagem opcional acabada de enviar pelo endpoint de fotos do TaskMate" } } }, "withdraw_wish": { "name": "Retirar desejo", "description": "Uma criança retira um desejo que ainda aguarda aprovação, ou limpa um que foi recusado.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem pertence o desejo" } } }, "move_points_to_wish": { "name": "Mover pontos para desejo", "description": "Move pontos do saldo disponível de uma criança para um dos seus desejos aprovados.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem pertence o desejo" }, "points": { "name": "Pontos", "description": "Quantos pontos mover (limitado ao saldo e ao que ainda falta ao desejo)" } } }, "take_points_from_wish": { "name": "Retirar pontos do desejo", "description": "Devolve à criança parte dos seus próprios pontos poupados num desejo. Os pontos prometidos nunca saem.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem pertence o desejo" }, "points": { "name": "Pontos", "description": "Quantos pontos poupados retirar (limitado ao que a criança poupou)" } } }, "request_wish_redeem": { "name": "Pedir para resgatar desejo", "description": "Um desejo totalmente financiado passa a um pedido de recompensa à espera da aprovação do adulto.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "child_id": { "name": "ID da criança", "description": "O ID da criança a quem pertence o desejo" } } }, "approve_wish": { "name": "Aprovar desejo", "description": "Transforma um desejo pendente num objetivo de poupança, opcionalmente com outro valor.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "target": { "name": "Objetivo", "description": "Pontos que o desejo custa. Deixe vazio para manter a sugestão da criança." } } }, "decline_wish": { "name": "Recusar desejo", "description": "Recusa um desejo. Os pontos poupados voltam para a criança e as promessas são anuladas.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "reason": { "name": "Motivo", "description": "Motivo opcional mostrado à criança" } } }, "pledge_to_wish": { "name": "Prometer para desejo", "description": "Regista pontos que um familiar oferece para o desejo de uma criança. Nunca mexem em nenhum saldo.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "name": { "name": "De", "description": "De quem é a promessa, p. ex. Avó" }, "points": { "name": "Pontos", "description": "Quantos pontos prometer (limitado ao que ainda falta ao desejo)" }, "message": { "name": "Mensagem", "description": "Mensagem opcional para a criança" } } }, "remove_wish_pledge": { "name": "Remover promessa", "description": "Anula uma promessa. Possível até o desejo ser resgatado.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" }, "pledge_id": { "name": "ID da promessa", "description": "O ID da promessa a remover" } } }, "remove_wish": { "name": "Remover desejo", "description": "Apaga um desejo. Os pontos poupados voltam para a criança e as promessas são anuladas.", "fields": { "wish_id": { "name": "ID do desejo", "description": "O ID do desejo" } } }, "start_inspection": { "name": "Iniciar inspeção", "description": "Marca uma tarefa aprovada nas últimas 24 horas para uma inspeção surpresa. Aprova-a ou reprova-a antes de o prazo terminar; uma inspeção por decidir fecha-se discretamente.", "fields": { "completion_id": { "name": "ID da conclusão", "description": "O ID da conclusão aprovada a inspecionar" }, "bonus": { "name": "Bónus", "description": "Pontos pagos se passar. Por omissão, o valor das Definições." }, "window": { "name": "Prazo", "description": "Quanto tempo tens para verificar: 1h, 2h, 4h ou bed (até à hora de dormir). Por omissão, o valor das Definições." }, "tell_child": { "name": "Avisar a criança", "description": "Mostra «Vem aí uma inspeção» no cartão da criança já. Desliga para uma verificação secreta." } } }, "pass_inspection": { "name": "Aprovar inspeção", "description": "A tarefa inspecionada passou. Paga o bónus como uma entrada de pontos normal e celebra no cartão da criança.", "fields": { "inspection_id": { "name": "ID da inspeção", "description": "O ID da inspeção em curso" }, "bonus": { "name": "Bónus", "description": "Pontos a pagar. Por omissão, o bónus definido ao iniciar." }, "note": { "name": "Nota", "description": "Nota opcional mostrada à criança" } } }, "fail_inspection": { "name": "Reprovar inspeção", "description": "A tarefa inspecionada não passou. Não são retirados pontos. Pode ser devolvida para refazer; refazê-la não dá pontos extra.", "fields": { "inspection_id": { "name": "ID da inspeção", "description": "O ID da inspeção em curso" }, "redo": { "name": "Devolver para refazer", "description": "Volta a pôr a tarefa na lista da criança como não feita hoje. Por omissão, o valor das Definições." }, "note": { "name": "Nota", "description": "Nota opcional mostrada à criança (o que é preciso corrigir)" } } }, "cancel_inspection": { "name": "Cancelar inspeção", "description": "Cancela uma inspeção em curso, como se nunca tivesse começado.", "fields": { "inspection_id": { "name": "ID da inspeção", "description": "O ID da inspeção em curso" } } } }, "entity": { "sensor": { "child_stats": { "unit_of_measurement": "tarefas" }, "child_badges": { "unit_of_measurement": "medalhas" }, "child_watch": { "state": { "left": "Faltam #", "all_done": "Tudo feito", "no_chores": "Sem tarefas" } } }, "number": { "weekend_multiplier": { "name": "Multiplicador de fim de semana" }, "perfect_week_bonus": { "name": "Bónus de semana perfeita" } }, "select": { "streak_reset_mode": { "name": "Modo de reposição de sequência" }, "card_design": { "name": "Design do cartão" } } }, "exceptions": { "calendar_unknown_event": { "message": "Este evento não é uma tarefa TaskMate no calendário desta criança." }, "calendar_series_not_supported": { "message": "Uma tarefa repetida só pode ser movida ou removida no calendário um dia de cada vez. Para alterar toda a série, edite a tarefa no TaskMate." }, "calendar_repeating_create": { "message": "Não é possível adicionar eventos repetidos a partir do calendário. Crie antes uma tarefa repetida no TaskMate." }, "calendar_rename_series": { "message": "Mude o nome de uma tarefa repetida no TaskMate. No calendário só pode mover ou remover um único dia." }, "calendar_time_follows_chore": { "message": "Uma tarefa repetida mantém a sua hora do dia. No calendário só é possível alterar a data de uma única ocorrência." }, "calendar_past_date": { "message": "Não é possível adicionar tarefas a um dia passado, nem movê-las para ou de um dia passado." }, "calendar_already_scheduled": { "message": "{chore} já está marcada para {date}." }, "calendar_empty_title": { "message": "Dê um título à tarefa." }, "calendar_own_event": { "message": "Este evento foi publicado pelo próprio TaskMate, por isso não é adicionado como nova tarefa." } } }