1
0
mirror of https://github.com/home-assistant/core.git synced 2026-02-14 23:28:42 +00:00

Use icon translations for Teslemetry battery percent entities (#162140)

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Brett Adams
2026-02-10 21:15:30 +10:00
committed by GitHub
parent 83c41c265d
commit 3c73cc8bad
4 changed files with 35 additions and 14 deletions

View File

@@ -173,7 +173,6 @@
"default": "mdi:ev-plug-ccs2"
}
},
"device_tracker": {
"location": {
"default": "mdi:map-marker"
@@ -196,6 +195,38 @@
"default": "mdi:car-speed-limiter"
}
},
"number": {
"backup_reserve_percent": {
"default": "mdi:battery-outline",
"range": {
"10": "mdi:battery-10",
"20": "mdi:battery-20",
"30": "mdi:battery-30",
"40": "mdi:battery-40",
"50": "mdi:battery-50",
"60": "mdi:battery-60",
"70": "mdi:battery-70",
"80": "mdi:battery-80",
"90": "mdi:battery-90",
"100": "mdi:battery"
}
},
"off_grid_vehicle_charging_reserve_percent": {
"default": "mdi:battery-outline",
"range": {
"10": "mdi:battery-10",
"20": "mdi:battery-20",
"30": "mdi:battery-30",
"40": "mdi:battery-40",
"50": "mdi:battery-50",
"60": "mdi:battery-60",
"70": "mdi:battery-70",
"80": "mdi:battery-80",
"90": "mdi:battery-90",
"100": "mdi:battery"
}
}
},
"select": {
"climate_state_seat_heater_left": {
"default": "mdi:car-seat-heater",

View File

@@ -27,7 +27,6 @@ from homeassistant.const import (
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
from homeassistant.helpers.icon import icon_for_battery_level
from . import TeslemetryConfigEntry
from .entity import (
@@ -296,7 +295,6 @@ class TeslemetryEnergyInfoNumberSensorEntity(TeslemetryEnergyInfoEntity, NumberE
def _async_update_attrs(self) -> None:
"""Update the attributes of the entity."""
self._attr_native_value = self._value
self._attr_icon = icon_for_battery_level(self.native_value)
async def async_set_native_value(self, value: float) -> None:
"""Set new value."""

View File

@@ -71,13 +71,7 @@ rules:
comment: |
ConfigEntryAuthFailed and UpdateFailed exceptions can have translated messages.
Also one "unknown error" that cannot be translated.
icon-translations:
status: todo
comment: |
number.py:299 uses _attr_icon = icon_for_battery_level() instead of
range-based icons in icons.json. Affects backup_reserve_percent and
off_grid_vehicle_charging_reserve_percent entities. Remove the dynamic
icon assignment and add range-based icon entries to icons.json.
icon-translations: done
reconfiguration-flow: done
repair-issues:
status: exempt

View File

@@ -29,7 +29,7 @@
'options': dict({
}),
'original_device_class': <NumberDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-alert',
'original_icon': None,
'original_name': 'Backup reserve',
'platform': 'teslemetry',
'previous_unique_id': None,
@@ -45,7 +45,6 @@
'attributes': ReadOnlyDict({
'device_class': 'battery',
'friendly_name': 'Energy Site Backup reserve',
'icon': 'mdi:battery-alert',
'max': 100,
'min': 0,
'mode': <NumberMode.AUTO: 'auto'>,
@@ -90,7 +89,7 @@
'options': dict({
}),
'original_device_class': <NumberDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-unknown',
'original_icon': None,
'original_name': 'Off-grid reserve',
'platform': 'teslemetry',
'previous_unique_id': None,
@@ -106,7 +105,6 @@
'attributes': ReadOnlyDict({
'device_class': 'battery',
'friendly_name': 'Energy Site Off-grid reserve',
'icon': 'mdi:battery-unknown',
'max': 100,
'min': 0,
'mode': <NumberMode.AUTO: 'auto'>,