From 2585b240d33ed244e72717a539d7d50f9e63470d Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Tue, 5 Mar 2024 08:43:37 +0100 Subject: [PATCH] Add icon translations to Prusalink (#112188) --- homeassistant/components/prusalink/button.py | 3 -- homeassistant/components/prusalink/icons.json | 35 +++++++++++++++++++ homeassistant/components/prusalink/sensor.py | 6 ---- 3 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 homeassistant/components/prusalink/icons.json diff --git a/homeassistant/components/prusalink/button.py b/homeassistant/components/prusalink/button.py index 8f8a62794a9..46d10fc9703 100644 --- a/homeassistant/components/prusalink/button.py +++ b/homeassistant/components/prusalink/button.py @@ -40,7 +40,6 @@ BUTTONS: dict[str, tuple[PrusaLinkButtonEntityDescription, ...]] = { PrusaLinkButtonEntityDescription[PrinterStatus]( key="printer.cancel_job", translation_key="cancel_job", - icon="mdi:cancel", press_fn=lambda api: api.cancel_job, available_fn=lambda data: ( data["printer"]["state"] @@ -50,7 +49,6 @@ BUTTONS: dict[str, tuple[PrusaLinkButtonEntityDescription, ...]] = { PrusaLinkButtonEntityDescription[PrinterStatus]( key="job.pause_job", translation_key="pause_job", - icon="mdi:pause", press_fn=lambda api: api.pause_job, available_fn=lambda data: cast( bool, data["printer"]["state"] == PrinterState.PRINTING.value @@ -59,7 +57,6 @@ BUTTONS: dict[str, tuple[PrusaLinkButtonEntityDescription, ...]] = { PrusaLinkButtonEntityDescription[PrinterStatus]( key="job.resume_job", translation_key="resume_job", - icon="mdi:play", press_fn=lambda api: api.resume_job, available_fn=lambda data: cast( bool, data["printer"]["state"] == PrinterState.PAUSED.value diff --git a/homeassistant/components/prusalink/icons.json b/homeassistant/components/prusalink/icons.json new file mode 100644 index 00000000000..4d97ea76ddd --- /dev/null +++ b/homeassistant/components/prusalink/icons.json @@ -0,0 +1,35 @@ +{ + "entity": { + "button": { + "cancel_job": { + "default": "mdi:cancel" + }, + "pause_job": { + "default": "mdi:pause" + }, + "resume_job": { + "default": "mdi:play" + } + }, + "sensor": { + "printer_state": { + "default": "mdi:printer-3d" + }, + "material": { + "default": "mdi:palette-swatch-variant" + }, + "progress": { + "default": "mdi:progress-clock" + }, + "filename": { + "default": "mdi:file-image-outline" + }, + "print_start": { + "default": "mdi:clock-start" + }, + "print_finish": { + "default": "mdi:clock-end" + } + } + } +} diff --git a/homeassistant/components/prusalink/sensor.py b/homeassistant/components/prusalink/sensor.py index 29e1d5c9757..efdd044399a 100644 --- a/homeassistant/components/prusalink/sensor.py +++ b/homeassistant/components/prusalink/sensor.py @@ -54,7 +54,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { PrusaLinkSensorEntityDescription[PrinterStatus]( key="printer.state", name=None, - icon="mdi:printer-3d", value_fn=lambda data: (cast(str, data["printer"]["state"].lower())), device_class=SensorDeviceClass.ENUM, options=[state.value.lower() for state in PrinterState], @@ -137,7 +136,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { PrusaLinkSensorEntityDescription[LegacyPrinterStatus]( key="printer.telemetry.material", translation_key="material", - icon="mdi:palette-swatch-variant", value_fn=lambda data: cast(str, data["telemetry"]["material"]), ), ), @@ -145,7 +143,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { PrusaLinkSensorEntityDescription[JobInfo]( key="job.progress", translation_key="progress", - icon="mdi:progress-clock", native_unit_of_measurement=PERCENTAGE, value_fn=lambda data: cast(float, data["progress"]), available_fn=lambda data: data.get("progress") is not None, @@ -153,7 +150,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { PrusaLinkSensorEntityDescription[JobInfo]( key="job.filename", translation_key="filename", - icon="mdi:file-image-outline", value_fn=lambda data: cast(str, data["file"]["display_name"]), available_fn=lambda data: data.get("file") is not None, ), @@ -161,7 +157,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { key="job.start", translation_key="print_start", device_class=SensorDeviceClass.TIMESTAMP, - icon="mdi:clock-start", value_fn=ignore_variance( lambda data: (utcnow() - timedelta(seconds=data["time_printing"])), timedelta(minutes=2), @@ -171,7 +166,6 @@ SENSORS: dict[str, tuple[PrusaLinkSensorEntityDescription, ...]] = { PrusaLinkSensorEntityDescription[JobInfo]( key="job.finish", translation_key="print_finish", - icon="mdi:clock-end", device_class=SensorDeviceClass.TIMESTAMP, value_fn=ignore_variance( lambda data: (utcnow() + timedelta(seconds=data["time_remaining"])),