257 files
This commit is contained in:
1 parent
7c55603942
commit
c29f5cc088
258 files changed
+24621
-3136
No files matched your search
@@ -38,6 +38,8 @@
|
||||
"reset": "Reset",
|
||||
"snooze": "Snooze",
|
||||
"snoozed": "Snoozed",
|
||||
"snoozed_for": "Reminders muted for {hours} hours — until {until}",
|
||||
"snoozed_for_one": "Reminders muted for one hour — until {until}",
|
||||
"cancel": "Cancel",
|
||||
"bulk_select": "Select",
|
||||
"bulk_select_all": "Select all",
|
||||
@@ -63,7 +65,10 @@
|
||||
"counter": "Counter",
|
||||
"state_change": "State change",
|
||||
"runtime": "Runtime",
|
||||
"trigger_type_due_date": "Date from a sensor",
|
||||
"runtime_hours": "Target runtime (hours)",
|
||||
"days_before": "Days before the date",
|
||||
"days_before_help": "For a sensor that reports when the maintenance is due (a date or timestamp). 0 = on the date itself. The device's own \"done\" button moves the date forward, which clears the trigger — make it the completion action.",
|
||||
"target_value": "Target value",
|
||||
"target_changes": "Target changes",
|
||||
"for_minutes": "For (minutes)",
|
||||
@@ -235,6 +240,8 @@
|
||||
"model_optional": "Model (optional)",
|
||||
"serial_number_optional": "Serial number (optional)",
|
||||
"serial_number_label": "S/N",
|
||||
"object_replaces": "Replaces",
|
||||
"object_replaced_by": "Replaced by",
|
||||
"documentation_url_label": "Manual",
|
||||
"object_notes_label": "Notes",
|
||||
"sort_due_date": "Due date",
|
||||
@@ -422,7 +429,7 @@
|
||||
"qr_action_view": "View maintenance info",
|
||||
"qr_action_complete": "Mark maintenance as complete",
|
||||
"qr_action_quick_complete": "Quick-complete — no dialog",
|
||||
"qr_print_quick_none": "Quick-complete codes need quick-complete defaults on a task (task dialog → Quick-complete defaults) — none of the chosen objects' tasks has them yet.",
|
||||
"qr_print_quick_none": "Quick-complete codes need quick-complete defaults on a task (Settings → Advanced Features → Completion actions; task dialog → Quick-complete defaults) — none of the chosen objects' tasks has them yet.",
|
||||
"qr_url_mode": "Link type",
|
||||
"qr_mode_companion": "Companion App",
|
||||
"qr_mode_local": "Local (mDNS)",
|
||||
@@ -578,8 +585,6 @@
|
||||
"settings_features_desc": "Enable or disable advanced features. Disabling hides them from the UI but does not delete data.",
|
||||
"feat_adaptive": "Adaptive Scheduling",
|
||||
"feat_adaptive_desc": "Learn optimal intervals from maintenance history",
|
||||
"feat_predictions": "Sensor Predictions",
|
||||
"feat_predictions_desc": "Predict trigger dates from sensor degradation",
|
||||
"feat_seasonal": "Seasonal Adjustments",
|
||||
"feat_seasonal_desc": "Adjust intervals based on seasonal patterns",
|
||||
"feat_environmental": "Environmental Correlation",
|
||||
@@ -671,6 +676,10 @@
|
||||
"settings_currency": "Currency",
|
||||
"settings_currency_decimals": "Decimal places for amounts",
|
||||
"settings_currency_decimals_hint": "How many decimals every amount shows: KPIs, budgets, costs in lists and reports, budget alerts. 0 = whole numbers.",
|
||||
"settings_parts_cost_mode": "Spare parts count as spending",
|
||||
"settings_parts_cost_purchase": "When bought",
|
||||
"settings_parts_cost_use": "When used",
|
||||
"settings_parts_cost_mode_hint": "When bought: a buy reminder's cost counts, and the parts a job uses are shown as information. When used: every completion books the value of the parts it used, and a purchase sets the part's price instead of counting. Applies to completions from now on — history keeps how it was booked.",
|
||||
"settings_budget_monthly": "Monthly budget",
|
||||
"settings_budget_yearly": "Yearly budget",
|
||||
"settings_budget_alerts": "Budget alerts",
|
||||
@@ -683,15 +692,17 @@
|
||||
"settings_import_placeholder": "Paste JSON or CSV content here…",
|
||||
"settings_import_btn": "Import",
|
||||
"settings_import_success": "{count} objects imported successfully.",
|
||||
"settings_import_unmatched_users": "Not found on this instance: {names}. Their task assignments were removed — add people with the same names in Home Assistant and import again to keep them.",
|
||||
"settings_export_success": "Export downloaded.",
|
||||
"settings_saved": "Setting saved.",
|
||||
"settings_include_history": "Include history",
|
||||
"settings_export_selection": "Limit to selected objects (optional)",
|
||||
"settings_docs_archive": "Documents archive (with files)",
|
||||
"settings_docs_archive_hint": "The JSON/YAML/CSV exports carry settings only. This ZIP includes the uploaded file contents so a restore is complete.",
|
||||
"settings_docs_archive_hint": "The JSON and YAML exports list your documents but not their files; CSV leaves documents out. This ZIP holds the uploaded files — restore it after importing the JSON and nothing is missing.",
|
||||
"settings_docs_export_btn": "Download documents ZIP",
|
||||
"settings_docs_import_btn": "Restore documents ZIP",
|
||||
"settings_docs_import_success": "Restored: {blobs} files, {docs} documents",
|
||||
"settings_docs_import_missing": "{n} skipped — their files were not in the ZIP",
|
||||
"sort_alphabetical": "Alphabetical",
|
||||
"sort_due_soonest": "Due soonest",
|
||||
"sort_task_count": "Task count",
|
||||
@@ -777,7 +788,7 @@
|
||||
"has_overdue": "Has overdue tasks",
|
||||
"object": "Object",
|
||||
"settings_panel_access": "Panel access",
|
||||
"settings_panel_access_desc": "Admins always have full access. To delegate create, edit and delete to specific non-admins, switch this on and pick them below — everyone else sees only Complete and Skip.",
|
||||
"settings_panel_access_desc": "Admins always have full access. To delegate create, edit and delete to specific non-admins, switch this on and pick them below — everyone else only gets Complete, Skip, Reset, Postpone and Snooze.",
|
||||
"settings_operator_write": "Allow selected users to create, edit & delete",
|
||||
"settings_operator_write_desc": "Off: only admins can change content. On: the selected users below get full access too.",
|
||||
"no_non_admin_users": "No non-admin users found. Add some in Settings → People.",
|
||||
@@ -788,11 +799,16 @@
|
||||
"on_complete_action_desc": "Calls an HA service when the task is completed — e.g. reset a counter on the device.",
|
||||
"on_complete_action_target": "Target entity",
|
||||
"on_complete_action_target_hint": "Note: the entity domain must match the service — e.g. 'button.press' only works on button.*, 'counter.increment' only on counter.*, 'input_button.press' only on input_button.* etc. On a mismatch the action will silently fail (HA logs 'Referenced entities ... missing or not currently available').",
|
||||
"on_complete_action_target_more": "This action targets more than this field shows: {targets}. That is kept as it is — choosing another entity here replaces the whole target.",
|
||||
"on_complete_action_skip_auto": "Not when the task completes itself (its sensor recovered)",
|
||||
"on_complete_action_data": "Data (JSON, optional)",
|
||||
"on_complete_action_test": "Validate configuration",
|
||||
"on_complete_action_test_success": "✓ Configuration valid (action will fire only on task completion)",
|
||||
"on_complete_action_test_failed": "Failed",
|
||||
"action_test_bad_format": "Invalid service format (expected 'domain.service')",
|
||||
"action_test_unknown_service": "Service \"{service}\" is not registered in Home Assistant. Check the spelling and that the integration providing it is loaded.",
|
||||
"action_test_domain_mismatch": "Service \"{service}\" only works on {domain}.* entities; entity \"{entity}\" is in {entity_domain}.* — pick a service that matches the entity's domain (e.g. {suggestion})",
|
||||
"action_test_entity_missing": "Target entity \"{entity}\" was not found in Home Assistant — it may have been renamed or its integration removed.",
|
||||
"quick_complete_defaults_title": "Quick-complete defaults (for QR scans, optional)",
|
||||
"quick_complete_defaults_desc": "Pre-set values for quick-complete QR scans. Without these, the QR opens the complete dialog.",
|
||||
"quick_complete_defaults_notes": "Notes",
|
||||
@@ -850,6 +866,7 @@
|
||||
"doc_too_large": "File is too large (max 25 MB).",
|
||||
"doc_upload_failed": "Upload failed.",
|
||||
"docs_archive_too_large": "The archive is too large (max {max}).",
|
||||
"docs_archive_no_manifest": "This ZIP has no manifest.json, so the restore cannot tell which document a file belongs to. Keep manifest.json next to the folders when zipping again.",
|
||||
"completion_photos_optional": "Completion photos (optional)",
|
||||
"completion_photos": "Completion photos",
|
||||
"choose_photos": "Choose photos",
|
||||
@@ -910,6 +927,11 @@
|
||||
"paused": "Paused",
|
||||
"pause_object": "Pause",
|
||||
"resume_object": "Resume",
|
||||
"pause_task": "Pause",
|
||||
"resume_task": "Resume",
|
||||
"pause_task_prompt": "Freeze this task's schedule — it does not become due and does not notify until you resume it, and resuming starts a fresh cycle from that day. The object's other tasks keep running. Optionally set a date to resume by itself.",
|
||||
"task_paused": "Task paused",
|
||||
"task_resumed": "Task resumed — its schedule restarted",
|
||||
"pause_until_prompt": "Freeze this object's schedules — nothing becomes due and nothing notifies until it is resumed. Optionally set an auto-resume date.",
|
||||
"pause_until_label": "Resume on (optional)",
|
||||
"object_paused": "Object paused",
|
||||
@@ -919,7 +941,18 @@
|
||||
"replace_object": "Replace…",
|
||||
"replace_object_prompt": "Retire this object and create a successor. History and costs stay archived on the old one; tasks and documents carry over to the new one, counters start fresh.",
|
||||
"replace_name_label": "Successor name",
|
||||
"replace_device_heading": "Device in Home Assistant",
|
||||
"replace_device_keep": "Same device as before ({device})",
|
||||
"replace_device_keep_hint": "Also the choice when the new unit is not in Home Assistant yet: once it is, pick it as the object's device in its settings — the sensor triggers move along then.",
|
||||
"replace_device_other": "The new unit is another device",
|
||||
"replace_device_pick": "Device of the new unit",
|
||||
"replace_device_other_hint": "Sensor triggers, completion actions and the counter reset move to the matching entities of that device.",
|
||||
"replace_device_none": "No device",
|
||||
"object_replaced": "Object replaced — successor created",
|
||||
"device_swap_moved": "{count} sensor links moved to the new device.",
|
||||
"device_swap_moved_one": "One sensor link moved to the new device.",
|
||||
"device_swap_unmatched": "{count} could not be matched — check those tasks' sensor triggers.",
|
||||
"device_swap_unmatched_one": "One could not be matched — check that task's sensor trigger.",
|
||||
"reading_unit_label": "Reading unit (e.g. kWh, m³)",
|
||||
"reading_unit_help": "Shown next to the recorded value when completing this task.",
|
||||
"reading_value_label": "Reading value",
|
||||
@@ -1016,6 +1049,9 @@
|
||||
"part_stock": "Stock",
|
||||
"part_reorder_threshold": "Reorder at",
|
||||
"part_restock_quantity": "Restock quantity",
|
||||
"part_package_size": "Package size (units)",
|
||||
"part_restock_packages": "Restock amount (packages)",
|
||||
"part_package_hint": "Bought in packages, used in the unit: stock, the amount a task uses and the reorder threshold count units; the restock amount and the price are per package.",
|
||||
"part_auto_buy": "Auto-create buy task when low",
|
||||
"part_restock": "Adjust stock",
|
||||
"parts_used_by": "Used by",
|
||||
@@ -1056,6 +1092,10 @@
|
||||
"trigger_hint_counter_delta_edit": "Counts usage since the last completion: due after +{target}; the count restarts after each completion.",
|
||||
"trigger_hint_counter_abs": "The task becomes due once the sensor reaches {target}.",
|
||||
"trigger_hint_runtime": "The task becomes due after {hours} h of accumulated on-time; the counter restarts after each completion.",
|
||||
"trigger_hint_due_date": "The task becomes due {days} days before the date the sensor reports.",
|
||||
"trigger_hint_due_date_one": "The task becomes due one day before the date the sensor reports.",
|
||||
"trigger_hint_due_date_same_day": "The task becomes due on the date the sensor reports.",
|
||||
"trigger_hint_due_date_now": "Reported date: {date}.",
|
||||
"trigger_hint_state_change": "The task becomes due after {count} state change(s).",
|
||||
"trigger_hint_state_change_to": "The task becomes due after {count} change(s) to “{state}”.",
|
||||
"trigger_hint_state_now": "Current state: {value}.",
|
||||
@@ -1067,6 +1107,11 @@
|
||||
"settings_notify_scope_hint": "Only tasks matching the selected saved view's label/user filters send reminders. Status, sorting and grouping of the view are ignored here.",
|
||||
"settings_notify_completed": "Completion notifications",
|
||||
"settings_notify_completed_hint": "Household news when a task is completed, with the reason and who did it. \"Automatic only\" announces just the completions nobody made on the spot: sensor recovery, shopping-list check-off, an automation's service call. Sent to the household service only; quiet hours and the daily cap apply.",
|
||||
"settings_title_style": "Notification title style",
|
||||
"settings_title_style_hint": "What appears as the notification's TITLE. Default keeps the per-status text (e.g. 'Maintenance overdue!'). Object name / Task name help when phone notifications stack.",
|
||||
"title_style_default": "Default (per-status title)",
|
||||
"title_style_object_name": "Object name as title",
|
||||
"title_style_task_name": "Task name as title",
|
||||
"notify_completed_off": "Off",
|
||||
"notify_completed_automatic": "Automatic completions only",
|
||||
"notify_completed_all": "All completions",
|
||||
@@ -1078,7 +1123,7 @@
|
||||
"settings_notify_extra_data_hint": "JSON or YAML, Jinja allowed; merged into the notify call's data (your keys win). Variables: kind, status, priority, labels, notes, area_name, object_name, task_name, object_ref, task_ref, days_until_due, next_due, last_performed, responsible_user_id, sensor_entity_id, url, target, title, message. Test it with the Send test button.",
|
||||
"card_saved_view": "Saved view",
|
||||
"card_saved_view_none": "None",
|
||||
"card_saved_view_help": "Applies the view's status, user and label filters on top of the filters above. The view's sorting and grouping are panel display settings and are not applied on the card.",
|
||||
"card_saved_view_help": "Applies the view's status, user, label and priority filters on top of the filters above. The view's sorting and grouping are panel display settings and are not applied on the card.",
|
||||
"panel_card_tab": "Open on tab",
|
||||
"panel_card_tab_default": "Remembered tab (as in the panel)",
|
||||
"panel_card_view": "Open with saved view",
|
||||
@@ -1189,6 +1234,14 @@
|
||||
"row_actions_back": "Back to icons",
|
||||
"battery_fleet_forecast_overdue": "Predicted date passed — the battery still reports healthy. If you swapped it, record the replacement; otherwise the forecast was off.",
|
||||
"cost_from_parts": "Use ≈ {amount} from parts",
|
||||
"cost_parts_booked": "Parts used ≈ {amount} are booked automatically — enter only additional costs.",
|
||||
"cost_parts_info": "Parts used ≈ {amount} — counted when they were bought, not here.",
|
||||
"cost_purchase_use_hint": "The price paid becomes the part's price — spare parts count when they are used.",
|
||||
"history_parts_counted": "Parts: {amount}",
|
||||
"history_parts_counted_hint": "Value of the parts used — counted as spending",
|
||||
"history_parts_info": "Parts ≈ {amount}",
|
||||
"history_parts_info_hint": "Value of the parts used — information only; the money counted when they were bought",
|
||||
"history_purchase_stock": "Bought for {amount} (counted when used)",
|
||||
"dismiss": "Dismiss",
|
||||
"gs_label": "Getting started — these hints retire as your setup grows",
|
||||
"gs_setups_chip": "Suggested setups found {n} devices with pre-wired triggers",
|
||||
@@ -1203,6 +1256,8 @@
|
||||
"cal_editor_window_fortnight": "Fortnight (14 days)",
|
||||
"cal_editor_window_month": "Month (30 days, default)",
|
||||
"cal_editor_window_year": "Year (365 days, empty days collapsed)",
|
||||
"cal_editor_window_past_30": "Past 30 days (history)",
|
||||
"cal_editor_window_past_90": "Past 90 days (history)",
|
||||
"cal_editor_show_chips": "Show window chips inside the card",
|
||||
"cal_editor_chips_hint": "Hide the chips when the card is embedded in a strategy view that already serves as the window selector.",
|
||||
"cal_editor_show_user_filter": "Show user filter dropdown",
|
||||
|
||||
Reference in new issue
Block a user