From 105b7678b858b69b17b2f00e31e1cffa8d7425dd Mon Sep 17 00:00:00 2001 From: Philip Allgaier Date: Mon, 19 Oct 2020 14:30:40 +0200 Subject: [PATCH] Make error texts of device automation picker translatable (#7370) --- src/components/device/ha-device-action-picker.ts | 12 ++++++++++-- .../device/ha-device-automation-picker.ts | 16 ++++++++++++---- .../device/ha-device-condition-picker.ts | 12 ++++++++++-- .../device/ha-device-trigger-picker.ts | 12 ++++++++++-- src/translations/en.json | 13 ++++++++++--- 5 files changed, 52 insertions(+), 13 deletions(-) diff --git a/src/components/device/ha-device-action-picker.ts b/src/components/device/ha-device-action-picker.ts index eaca169438..e8e50f5b47 100644 --- a/src/components/device/ha-device-action-picker.ts +++ b/src/components/device/ha-device-action-picker.ts @@ -9,9 +9,17 @@ import { HaDeviceAutomationPicker } from "./ha-device-automation-picker"; @customElement("ha-device-action-picker") class HaDeviceActionPicker extends HaDeviceAutomationPicker { - protected NO_AUTOMATION_TEXT = "No actions"; + protected get NO_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.actions.no_actions" + ); + } - protected UNKNOWN_AUTOMATION_TEXT = "Unknown action"; + protected get UNKNOWN_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.actions.unknown_action" + ); + } constructor() { super( diff --git a/src/components/device/ha-device-automation-picker.ts b/src/components/device/ha-device-automation-picker.ts index 540cfc5c9d..fe56884a09 100644 --- a/src/components/device/ha-device-automation-picker.ts +++ b/src/components/device/ha-device-automation-picker.ts @@ -33,16 +33,24 @@ export abstract class HaDeviceAutomationPicker< @property() public value?: T; - protected NO_AUTOMATION_TEXT = "No automations"; - - protected UNKNOWN_AUTOMATION_TEXT = "Unknown automation"; - @internalProperty() private _automations: T[] = []; // Trigger an empty render so we start with a clean DOM. // paper-listbox does not like changing things around. @internalProperty() private _renderEmpty = false; + protected get NO_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.actions.no_actions" + ); + } + + protected get UNKNOWN_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.actions.unknown_action" + ); + } + private _localizeDeviceAutomation: ( hass: HomeAssistant, automation: T diff --git a/src/components/device/ha-device-condition-picker.ts b/src/components/device/ha-device-condition-picker.ts index dbe95c8f6a..89fefbafaf 100644 --- a/src/components/device/ha-device-condition-picker.ts +++ b/src/components/device/ha-device-condition-picker.ts @@ -11,9 +11,17 @@ import { HaDeviceAutomationPicker } from "./ha-device-automation-picker"; class HaDeviceConditionPicker extends HaDeviceAutomationPicker< DeviceCondition > { - protected NO_AUTOMATION_TEXT = "No conditions"; + protected get NO_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.conditions.no_conditions" + ); + } - protected UNKNOWN_AUTOMATION_TEXT = "Unknown condition"; + protected get UNKNOWN_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.conditions.unknown_condition" + ); + } constructor() { super( diff --git a/src/components/device/ha-device-trigger-picker.ts b/src/components/device/ha-device-trigger-picker.ts index ec140426ae..d1ff66d37e 100644 --- a/src/components/device/ha-device-trigger-picker.ts +++ b/src/components/device/ha-device-trigger-picker.ts @@ -9,9 +9,17 @@ import { HaDeviceAutomationPicker } from "./ha-device-automation-picker"; @customElement("ha-device-trigger-picker") class HaDeviceTriggerPicker extends HaDeviceAutomationPicker { - protected NO_AUTOMATION_TEXT = "No triggers"; + protected get NO_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.triggers.no_triggers" + ); + } - protected UNKNOWN_AUTOMATION_TEXT = "Unknown trigger"; + protected get UNKNOWN_AUTOMATION_TEXT() { + return this.hass.localize( + "ui.panel.config.devices.automation.triggers.unknown_trigger" + ); + } constructor() { super( diff --git a/src/translations/en.json b/src/translations/en.json index a206807ee7..98a4f009fd 100755 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -1604,15 +1604,22 @@ "automation": { "automations": "Automations", "no_automations": "No automations", + "unknown_automation": "Unknown automation", "create": "Create automation with device", "triggers": { - "caption": "Do something when..." + "caption": "Do something when...", + "no_triggers": "No triggers", + "unknown_trigger": "Unknown trigger" }, "conditions": { - "caption": "Only do something if..." + "caption": "Only do something if...", + "no_conditions": "No conditions", + "unknown_condition": "Unknown condition" }, "actions": { - "caption": "When something is triggered..." + "caption": "When something is triggered...", + "no_actions": "No actions", + "unknown_action": "Unknown action" }, "no_device_automations": "There are no automations available for this device." },