From f18448950cf61e47fa37d0e325600b6c29f4568c Mon Sep 17 00:00:00 2001
From: Jan-Philipp Benecke <jan-philipp@bnck.me>
Date: Sun, 4 Feb 2024 23:21:57 +0100
Subject: [PATCH] Add icon translations to Utility meter helper (#109656)

---
 homeassistant/components/utility_meter/const.py   |  2 --
 homeassistant/components/utility_meter/icons.json | 14 ++++++++++++++
 homeassistant/components/utility_meter/select.py  | 11 +++--------
 homeassistant/components/utility_meter/sensor.py  |  2 +-
 4 files changed, 18 insertions(+), 11 deletions(-)
 create mode 100644 homeassistant/components/utility_meter/icons.json

diff --git a/homeassistant/components/utility_meter/const.py b/homeassistant/components/utility_meter/const.py
index 6e1cabac509..4f62925069d 100644
--- a/homeassistant/components/utility_meter/const.py
+++ b/homeassistant/components/utility_meter/const.py
@@ -1,8 +1,6 @@
 """Constants for the utility meter component."""
 DOMAIN = "utility_meter"
 
-TARIFF_ICON = "mdi:clock-outline"
-
 QUARTER_HOURLY = "quarter-hourly"
 HOURLY = "hourly"
 DAILY = "daily"
diff --git a/homeassistant/components/utility_meter/icons.json b/homeassistant/components/utility_meter/icons.json
new file mode 100644
index 00000000000..7260fbfbe96
--- /dev/null
+++ b/homeassistant/components/utility_meter/icons.json
@@ -0,0 +1,14 @@
+{
+  "entity": {
+    "sensor": {
+      "utility_meter": {
+        "default": "mdi:counter"
+      }
+    },
+    "select": {
+      "tariff": {
+        "default": "mdi:clock-outline"
+      }
+    }
+  }
+}
diff --git a/homeassistant/components/utility_meter/select.py b/homeassistant/components/utility_meter/select.py
index 64b271d4200..86433ca77f8 100644
--- a/homeassistant/components/utility_meter/select.py
+++ b/homeassistant/components/utility_meter/select.py
@@ -13,13 +13,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
 from homeassistant.helpers.restore_state import RestoreEntity
 from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
 
-from .const import (
-    CONF_METER,
-    CONF_SOURCE_SENSOR,
-    CONF_TARIFFS,
-    DATA_UTILITY,
-    TARIFF_ICON,
-)
+from .const import CONF_METER, CONF_SOURCE_SENSOR, CONF_TARIFFS, DATA_UTILITY
 
 _LOGGER = logging.getLogger(__name__)
 
@@ -100,6 +94,8 @@ async def async_setup_platform(
 class TariffSelect(SelectEntity, RestoreEntity):
     """Representation of a Tariff selector."""
 
+    _attr_translation_key = "tariff"
+
     def __init__(
         self,
         name,
@@ -113,7 +109,6 @@ class TariffSelect(SelectEntity, RestoreEntity):
         self._attr_device_info = device_info
         self._current_tariff: str | None = None
         self._tariffs = tariffs
-        self._attr_icon = TARIFF_ICON
         self._attr_should_poll = False
 
     @property
diff --git a/homeassistant/components/utility_meter/sensor.py b/homeassistant/components/utility_meter/sensor.py
index ee0d5f85b3b..e9ad7a1ba30 100644
--- a/homeassistant/components/utility_meter/sensor.py
+++ b/homeassistant/components/utility_meter/sensor.py
@@ -362,7 +362,7 @@ class UtilitySensorExtraStoredData(SensorExtraStoredData):
 class UtilityMeterSensor(RestoreSensor):
     """Representation of an utility meter sensor."""
 
-    _attr_icon = "mdi:counter"
+    _attr_translation_key = "utility_meter"
     _attr_should_poll = False
 
     def __init__(