187 files

This commit is contained in:
Home Assistant Version Control committed 2026-10-09 11:57:31 +00:00
1 parent 28fa34d78a
commit 1e1b12d52b
187 files changed
+40899 -32654

No files matched your search

+142 -31
View File
@@ -109,7 +109,7 @@
"approvals.apply_penalty": "Apply penalty",
"approvals.postpone": "Postpone",
"approvals.dismiss": "Dismiss",
"approvals.penalty_points": "Penalty: −{points} pts",
"approvals.penalty_points": "Penalty: −{points} {pointsName}",
"approvals.no_penalty": "No penalty set",
"approvals.timed_duration": "{count} min",
"badge.criteria_and": "AND",
@@ -259,6 +259,7 @@
"child.open_ended_tag": "Describe it",
"child.weekly_target_done": "Done for this week",
"child.weekly_target_progress": "{done}/{target} this week",
"child.weekly_target_bonus_reached": "🎉 Weekly target reached! +{points}",
"child.team_progress": "{joined} / {size} joined",
"child.team_you_joined": "You're in",
"child.team_join": "Join",
@@ -332,8 +333,8 @@
"child.paused": "Paused",
"child.please_define_child_id": "Please define a child_id",
"child.please_define_entity": "Please define an entity (taskmate overview sensor)",
"child.pts_per_min": "pts/min",
"child.pts_per_n_min": "pts/{count} min",
"child.pts_per_min": "{pointsName}/min",
"child.pts_per_n_min": "{pointsName}/{count} min",
"child.recurring": "Recurring",
"child.resume": "Resume",
"child.start": "Start",
@@ -364,6 +365,8 @@
"common.editor.header_colour_helper": "Card header background colour",
"common.editor.overview_entity": "Overview Entity",
"common.editor.overview_entity_helper": "The TaskMate overview sensor entity",
"common.editor.show_parent_actions": "Show parent actions",
"common.editor.show_parent_actions_helper": "Turn off on a shared kids' dashboard to show this card exactly as a child sees it, even while a parent is signed in. Display only — permissions are unchanged.",
"common.entity": "Entity",
"common.entity_not_found": "Entity not found: {entity}",
"common.error": "Error",
@@ -822,6 +825,8 @@
"panel.chore_weekly_target_pill": "{count}×/week",
"panel.chore_weekly_target_hint": "How many times a week this has to be done, on any of the chosen days. It stops being offered once the count is reached, and resets on Monday.",
"panel.chore_weekly_target_label": "Weekly target (0 = off)",
"panel.chore_weekly_target_bonus_label": "Weekly target bonus",
"panel.chore_weekly_target_bonus_hint": "Extra points paid once the weekly target is reached, on top of each completion's points. Paid once a week, when the last completion is approved. 0 = no bonus.",
"panel.chore_team_section": "Teamwork (optional)",
"panel.chore_team_hint": "A teamwork chore only counts once this many different children have joined it. Each child's Done tap joins, and when the team is full it's submitted for all of them. Joins reset each day. Needs the \"Everyone\" assignment and can't be open-ended.",
"panel.chore_team_size_label": "Team size (0 = off)",
@@ -841,6 +846,9 @@
"panel.chore_points_label": "Points",
"panel.chore_points_per_window_label": "Points per window",
"panel.chore_recurrence_day_hint": "e.g. monday — leave blank for any day",
"panel.chore_recurrence_interval_label": "Repeat every (days)",
"panel.chore_recurrence_interval_hint": "Whole number of days, {min}–{max}",
"panel.chore_recurrence_interval_invalid": "Enter a number of days between {min} and {max}",
"panel.chore_recurrence_day_label": "Day of week (weekly only)",
"panel.chore_recurrence_label": "Recurrence",
"panel.chore_recurrence_start_hint": "Anchor date — blank = today",
@@ -1277,8 +1285,10 @@
"panel.penbon_table_name": "Name",
"panel.penbon_table_points": "Points",
"panel.pending_tooltip": "{count} pending — click to review",
"panel.pts_display": "{count} pts",
"panel.pts_display": "{count} {points_name}",
"panel.recurrence_every_2_days": "Every 2 days",
"panel.recurrence_every_n_days": "Every N days (custom)",
"panel.recurrence_every_count_days": "Every {count} days",
"panel.recurrence_every_2_weeks": "Every 2 weeks",
"panel.recurrence_every_3_months": "Every 3 months",
"panel.recurrence_every_6_months": "Every 6 months",
@@ -1528,7 +1538,7 @@
"panel.template_builtin_template_packs": "Built-in template packs",
"panel.template_builtin_templates": "Built-in templates",
"panel.template_chores_in_template": "Chores in this template",
"panel.template_confirm_bar": "{count} chore(s) will be created · {points} pts total",
"panel.template_confirm_bar": "{count} chore(s) will be created · {points} {points_name} total",
"panel.template_create_btn": "Create {count} chore(s)",
"panel.template_create_title": "Create Template",
"panel.template_custom": "Custom",
@@ -1540,7 +1550,7 @@
"panel.template_name_label": "Name",
"panel.template_picker_title": "Add from Template",
"panel.template_preview_hint": "Review and customise each chore before creating. Expand to edit all fields, or remove with ✕.",
"panel.template_pts_total": "{count} chore(s) · {points} pts total",
"panel.template_pts_total": "{count} chore(s) · {points} {points_name} total",
"panel.template_requires_approval_label": "Requires approval",
"panel.template_requires_approval_no": "No",
"panel.template_requires_approval_yes": "Yes",
@@ -1752,7 +1762,7 @@
"points_display.this_week": "This Week",
"points_display.total_points": "Total Points",
"points_display.weekly_plus": "+{count} this week",
"points_display.weekly_pts": "{count} pts",
"points_display.weekly_pts": "{count} {pointsName}",
"reorder.add_chores_first": "Add chores to this child first",
"reorder.card_description": "A card for reordering chores per child, organized by time category",
"reorder.card_name": "TaskMate Reorder Card",
@@ -1857,9 +1867,9 @@
"streak.achievement.hundred_desc": "Complete 100 chores",
"streak.achievement.hundred_name": "100 Done",
"streak.achievement.points100_desc": "Earn 100 points total",
"streak.achievement.points100_name": "100 ⭐",
"streak.achievement.points100_name": "100 {pointsName}",
"streak.achievement.points50_desc": "Earn 50 points total",
"streak.achievement.points50_name": "50 ⭐",
"streak.achievement.points50_name": "50 {pointsName}",
"streak.achievement.streak14_desc": "14 day streak",
"streak.achievement.streak14_name": "2 Weeks",
"streak.achievement.streak30_desc": "30 day streak",
@@ -1948,8 +1958,8 @@
"panel.settings_surprise_params_label": "Surprise bonus settings",
"panel.settings_surprise_params_hint": "Daily chance per child, and the random points range awarded on a hit.",
"panel.settings_surprise_chance": "Chance %",
"panel.settings_surprise_min": "Min pts",
"panel.settings_surprise_max": "Max pts",
"panel.settings_surprise_min": "Min {points_name}",
"panel.settings_surprise_max": "Max {points_name}",
"panel.reward_restock_label": "Auto-restock",
"panel.reward_restock_hint": "Periodically reset this reward's stock back to a set amount.",
"panel.reward_restock_amount": "Restock to",
@@ -1995,7 +2005,7 @@
"panel.settings_spendcap_enabled_hint": "Limit how many points each child can spend on rewards per period.",
"panel.settings_spendcap_params_label": "Spending cap settings",
"panel.settings_spendcap_params_hint": "Max points spendable per period (0 = no limit).",
"panel.settings_spendcap_amount": "Cap (pts)",
"panel.settings_spendcap_amount": "Cap ({points_name})",
"panel.settings_interest_enabled_label": "Savings interest",
"panel.settings_interest_enabled_hint": "Periodically pay each child interest on their spendable balance (rewards saving).",
"panel.settings_interest_params_label": "Savings interest settings",
@@ -2229,7 +2239,6 @@
"bounty.left": "{time} left",
"bounty.no_expiry": "No expiry",
"bounty.photo_tag": "photo",
"bounty.pts": "PTS",
"bounty.claim": "Claim",
"bounty.claim_hint": "You'll have {hours}h to finish",
"bounty.finish_first": "Finish your bounty first",
@@ -2238,23 +2247,23 @@
"bounty.give_back": "Give back",
"bounty.sibling_on_it": "{name} is on it",
"bounty.sibling_back_in": "back on the board in {time} if not finished",
"bounty.waiting": "Waiting for a grown-up to check · +{points} ★ pending",
"bounty.waiting": "Waiting for a grown-up to check · +{points} {pointsName} pending",
"bounty.undo": "Undo",
"bounty.sibling_checking": "{name} finished it — being checked",
"bounty.you_earned": "You earned +{points} ★",
"bounty.you_earned": "You earned +{points} {pointsName}",
"bounty.done_by": "Done by {name}",
"bounty.recent": "Recently completed",
"bounty.claim_title": "Claim \"{title}\"?",
"bounty.claim_body": "It's yours for {hours} hours. If it's not done by then, it goes back on the board for everyone.",
"bounty.not_now": "Not now",
"bounty.claim_it": "Claim it — {points} ★",
"bounty.claim_it": "Claim it — {points} {pointsName}",
"bounty.photo_title": "Show us the finished job",
"bounty.photo_body": "\"{title}\" needs a photo",
"bounty.cancel": "Cancel",
"bounty.take_photo": "Take photo & send",
"bounty.uploading": "Sending…",
"bounty.yay_title": "Nice work!",
"bounty.yay_body": "A grown-up will check \"{title}\" and then you get {points} ★.",
"bounty.yay_body": "A grown-up will check \"{title}\" and then you get {points} {pointsName}.",
"bounty.ok": "OK",
"bounty.dur_days": "{d}d {h}h",
"bounty.dur_hours": "{h}h {m}m",
@@ -2279,7 +2288,7 @@
"panel.bounty_status_completed": "Completed",
"panel.bounty_status_expired": "Expired",
"panel.bounty_claimed_meta": "{name} · {time} left",
"panel.bounty_completed_meta": "{name} · +{points} ★",
"panel.bounty_completed_meta": "{name} · +{points} {points_name}",
"panel.bounty_expired_meta": "Nobody claimed · {date}",
"panel.bounty_expired_lapsed_meta": "Expired after a claim lapsed · {date}",
"panel.bounty_expired_unfinished_meta": "Claimed but never finished · {date}",
@@ -2332,10 +2341,10 @@
"auction.no_child": "Pick a child in the card editor to see their auctions.",
"auction.results": "Results",
"auction.load_failed": "Couldn't load the auctions: {error}",
"auction.up_to": "up to {points} ★",
"auction.up_to": "up to {points} {pointsName}",
"auction.lowest_wins": "Lowest bid wins",
"auction.gauge_max": "max {points} ★",
"auction.gauge_hint": "Normally worth {points} ★ · bid the fewest points you'd do it for",
"auction.gauge_max": "max {points} {pointsName}",
"auction.gauge_hint": "Normally worth {points} {pointsName} · bid the fewest points you'd do it for",
"auction.your_bid": "Your sealed bid",
"auction.change": "Change",
"auction.withdraw": "Withdraw",
@@ -2352,17 +2361,17 @@
"auction.backspace": "Delete last digit",
"auction.rule_secret": "Secret: nobody sees your number.",
"auction.rule_lowest": "Lowest bid wins. If it's a tie, whoever bid first wins.",
"auction.rule_min": "Bids start at {points} ★.",
"auction.rule_min": "Bids start at {points} {pointsName}.",
"auction.rule_win": "If you win, you do it on {date} and get your bid when it's approved.",
"auction.cancel": "Cancel",
"auction.seal": "Seal my bid · {points} ★",
"auction.you_won": "You won! {points} ★ is yours",
"auction.seal": "Seal my bid · {points} {pointsName}",
"auction.you_won": "You won! {points} {pointsName} is yours",
"auction.you_won_sub": "when you've done it on {date} and a grown-up approves it",
"auction.in_your_chores": "It's in your chores for {date}",
"auction.sibling_won": "{name} won this one",
"auction.sibling_won_sub": "at {points} ★. Lowest bid wins, so try a little lower next time!",
"auction.sibling_won_sub_bid": "at {points} ★ · you bid {bid} ★. Lowest bid wins, so try a little lower next time!",
"auction.tied_sub": "You both bid {points} ★. It was a tie, and {name} got their bid in first.",
"auction.sibling_won_sub": "at {points} {pointsName}. Lowest bid wins, so try a little lower next time!",
"auction.sibling_won_sub_bid": "at {points} {pointsName} · you bid {bid} {pointsName}. Lowest bid wins, so try a little lower next time!",
"auction.tied_sub": "You both bid {points} {pointsName}. It was a tie, and {name} got their bid in first.",
"auction.no_bids": "No bids this time",
"auction.no_bids_sub": "{chore} goes back to its normal assignment on {date}.",
"auction.closed_at": "Closed {when}",
@@ -2389,8 +2398,8 @@
"panel.auction_col_closes": "Closes",
"panel.auction_col_result": "Result",
"panel.auction_col_status": "Chore status",
"panel.auction_normally": "{date} · normally {points} ★",
"panel.auction_min_meta": "min {points} ★",
"panel.auction_normally": "{date} · normally {points} {points_name}",
"panel.auction_min_meta": "min {points} {points_name}",
"panel.auction_no_bids_yet": "No bids yet",
"panel.auction_no_bids": "No bids",
"panel.auction_sealed": "sealed",
@@ -2419,7 +2428,7 @@
"panel.auction_no_occurrences": "No upcoming occurrence of this chore can be auctioned in the next 60 days.",
"panel.auction_no_chores": "No chore can be auctioned yet. Teamwork, timed, open-ended and unassigned chores can't be.",
"panel.auction_max_label": "Maximum bid",
"panel.auction_normally_worth": "normally worth {points} ★",
"panel.auction_normally_worth": "normally worth {points} {points_name}",
"panel.auction_max_hint": "Children can bid anything from the minimum up to this. Lowest wins; ties go to the earliest bid.",
"panel.auction_min_label": "Minimum bid",
"panel.auction_min_hint": "Off: any bid from 1 counts. On: stops a race to the bottom.",
@@ -2591,6 +2600,11 @@
"kiosk.editor.show_reward_progress": "Next reward progress",
"kiosk.editor.show_picker_progress": "Progress on the picker",
"kiosk.editor.show_picker_progress_helper": "“3 of 6 done” under each face",
"kiosk.editor.play_sounds": "Sounds",
"kiosk.editor.play_sounds_helper": "Each chore's completion sound, and the undo sound",
"kiosk.editor.show_confetti": "Confetti",
"kiosk.editor.show_completion_popup": "Celebration popup",
"kiosk.editor.show_completion_popup_helper": "A short “Awesome!” with the points after each chore",
"kiosk.editor.children_heading": "Children shown and PINs",
"kiosk.editor.children_hint": "Untick a child to hide them. Use the arrows to set the order on the picker.",
"kiosk.editor.require_pin": "Require PIN",
@@ -2883,5 +2897,102 @@
"chore_board.editor.tap_to_complete_helper": "Turn off for a view-only board",
"chore_board.editor.show_legend": "Show the legend",
"chore_board.editor.hide_done_periods": "Hide finished time periods",
"chore_board.editor.hide_done_periods_helper": "Drop a time of day once every child has finished its chores"
"chore_board.editor.hide_done_periods_helper": "Drop a time of day once every child has finished its chores",
"notify.bedtime_reminder": "{child_name}, you still have chores to do before bedtime.",
"notify.streak_at_risk": "{child_name}, complete a chore today to keep your {streak}-day streak!",
"notify.all_chores_done": "{child_name} finished every chore today!",
"notify.badge_earned": "{child_name} earned the {badge_name} badge!",
"notify.pending_chore_approval": "{child_name} completed '{chore_name}' (+{points} {points_name}) — awaiting approval.",
"notify.pending_reward_claim": "{child_name} claimed '{reward_name}' ({cost} {points_name}) — awaiting approval.",
"notify.streak_milestone": "{child_name} hit a {days}-day streak — +{points} {points_name}!",
"notify.level_up": "{child_name} reached level {level}! 🎉",
"notify.weekly_digest": "TaskMate weekly digest:\n{summary}",
"notify.celebration": "🎉 {message}",
"notify.mandatory_reminder": "{child_name}, you still need to do '{chore_name}'.",
"notify.mandatory_parent_alert": "{child_name} still hasn't done the mandatory chore '{chore_name}'.",
"notify.monthly_report": "TaskMate {month} report:\n{summary}",
"notify.season_champion": "🏆 {child_name} won the {month} leaderboard with {points} {points_name}!",
"notify.family_goal_reached": "🎉 Family goal reached: {goal_name}! Time for {goal_reward}.",
"notify.birthday": "🎂 Happy birthday, {child_name}! Every chore pays {multiplier}× today.",
"notify.streak_freeze_used": "❄️ A streak freeze saved {child_name}'s {streak}-day streak ({freezes_left} left).",
"notify.presence_arrival": "🏠 You're home, {child_name} — {count} chores left today.",
"notify.wish_requested": "{child_name} wished for '{wish_name}' ({target} {points_name}) — waiting for your approval.",
"notify.wish_pledged": "💝 {pledger} added {points} {points_name} to your wish '{wish_name}'!",
"notify.bounty_posted": "🏁 New bounty: {bounty_name} — {points} {points_name}. First to claim it gets it!",
"notify.bounty_claim_lapsing": "⏳ {child_name}, {minutes} minutes left to finish '{bounty_name}' before it goes back on the board.",
"notify.recap_ready": "✨ Your {period} recap is ready, {child_name}! Tap to watch it.",
"notify.item_rejected": "↩️ {child_name}, '{item_name}' was sent back{reason_text}",
"notify.auction_opened": "🔨 New auction: {chore_name} on {date}, up to {max_points} {points_name}. Lowest bid wins!",
"notify.auction_closing": "⏳ {child_name}, bidding on '{chore_name}' closes in {minutes} minutes.",
"notify.auction_result": "🔨 Auction closed: {result_text}",
"notify.inspection_started": "🔍 {child_name}, a grown-up is coming to inspect '{chore_name}' before {until}. Keep it looking great for +{bonus} {points_name}!",
"notify.inspection_passed": "🌟 Inspection passed, {child_name}! '{chore_name}' looked great: +{bonus} {points_name}{note_text}",
"notify.inspection_reminder": "🔍 {child_name}'s '{chore_name}' inspection closes in {minutes} minutes — pass or fail it before {until}.",
"notify.auction_won": "{child_name} won '{chore_name}' on {date} for {points} {points_name}.",
"notify.auction_no_bids": "no bids for '{chore_name}', so it goes back to the normal rota.",
"notify.auction_called_off": "the auction for '{chore_name}' was called off. It goes back to the normal rota.",
"notify.weekly_digest_line": "• {child_name}: {chores} chores, {points} {points_name} earned",
"notify.monthly_report_line": "• {child_name}: {chores} chores, {points} {points_name}, level {level}, best streak {streak}",
"notify.action_approve": "Approve",
"notify.action_reject": "Reject",
"notify.action_reject_placeholder": "Reason (optional)",
"notify.approve_in_panel_hint": "Open the TaskMate panel to approve or reject.",
"notify.celebrate_all_chores_done": "{child_name} finished every chore today!",
"notify.celebrate_birthday": "Happy birthday, {child_name}!",
"notify.celebrate_challenge_completed": "{child_name} completed the challenge '{challenge_name}'!",
"notify.celebrate_inspection_passed": "{child_name}'s {chore_name} passed inspection!",
"notify.celebrate_level_up": "{child_name} reached level {level}!",
"notify.celebrate_perfect_week": "{child_name} earned a perfect week — +{bonus}!",
"notify.celebrate_weekly_target": "{child_name} reached the weekly target for '{chore_name}' — +{bonus}!",
"notify.celebrate_quest_completed": "{child_name} completed the quest '{quest_name}'!",
"notify.celebrate_streak_milestone": "{child_name} hit a {days}-day streak!",
"notify.recap_ready_many": "✨ {count} new recaps are ready, {child_name}! Tap to watch them.",
"notify.recap_parent_one": "✨ New {period} recaps are ready for {names}. Tap to see them.",
"notify.recap_parent_many": "✨ New recaps are ready for {names}. Tap to see them.",
"notify.period_weekly": "weekly",
"notify.period_range": "{start}–{end}",
"notify.names_and": "{names} and {last}",
"notify.month_year": "{month} {year}",
"notify.short_date": "{weekday} {day} {month}",
"notify.month_1": "January",
"notify.month_2": "February",
"notify.month_3": "March",
"notify.month_4": "April",
"notify.month_5": "May",
"notify.month_6": "June",
"notify.month_7": "July",
"notify.month_8": "August",
"notify.month_9": "September",
"notify.month_10": "October",
"notify.month_11": "November",
"notify.month_12": "December",
"notify.month_short_1": "Jan",
"notify.month_short_2": "Feb",
"notify.month_short_3": "Mar",
"notify.month_short_4": "Apr",
"notify.month_short_5": "May",
"notify.month_short_6": "Jun",
"notify.month_short_7": "Jul",
"notify.month_short_8": "Aug",
"notify.month_short_9": "Sep",
"notify.month_short_10": "Oct",
"notify.month_short_11": "Nov",
"notify.month_short_12": "Dec",
"notify.weekday_short_1": "Mon",
"notify.weekday_short_2": "Tue",
"notify.weekday_short_3": "Wed",
"notify.weekday_short_4": "Thu",
"notify.weekday_short_5": "Fri",
"notify.weekday_short_6": "Sat",
"notify.weekday_short_7": "Sun",
"notify.sample_chore": "Tidy room",
"notify.sample_reward": "Movie night",
"notify.sample_badge": "Star Helper",
"notify.sample_goal": "Movie night fund",
"notify.sample_goal_reward": "a family movie night",
"notify.sample_wish": "Lego set",
"notify.sample_pledger": "Grandma",
"notify.sample_bounty": "Wash the car",
"notify.sample_reason": "Not finished",
"notify.sample_note": "Brilliant job!"
}