Move Device Class definition to Home Assistant for MusicCast Select Entities (#61218)
* Add a device class mapping to the consts to map from capability IDs to HA device classes. * Use python3.8 compliant typing * Fix return type * Use relative import for musiccast constpull/62298/head
parent
4dc70536b6
commit
ba79de56ab
|
@ -56,3 +56,14 @@ ENTITY_CATEGORY_MAPPING = {
|
|||
EntityType.DIAGNOSTIC: ENTITY_CATEGORY_DIAGNOSTIC,
|
||||
EntityType.SYSTEM: ENTITY_CATEGORY_SYSTEM,
|
||||
}
|
||||
|
||||
DEVICE_CLASS_MAPPING = {
|
||||
"DIMMER": "yamaha_musiccast__dimmer",
|
||||
"zone_SLEEP": "yamaha_musiccast__zone_sleep",
|
||||
"zone_TONE_CONTROL_mode": "yamaha_musiccast__zone_tone_control_mode",
|
||||
"zone_SURR_DECODER_TYPE": "yamaha_musiccast__zone_surr_decoder_type",
|
||||
"zone_EQUALIZER_mode": "yamaha_musiccast__zone_equalizer_mode",
|
||||
"zone_LINK_AUDIO_QUALITY": "yamaha_musiccast__zone_link_audio_quality",
|
||||
"zone_LINK_CONTROL": "yamaha_musiccast__zone_link_control",
|
||||
"zone_LINK_AUDIO_DELAY": "yamaha_musiccast__zone_link_audio_delay",
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
"""The select entities for musiccast."""
|
||||
from __future__ import annotations
|
||||
|
||||
from aiomusiccast.capabilities import OptionSetter
|
||||
|
||||
|
@ -8,6 +9,7 @@ from homeassistant.core import HomeAssistant
|
|||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||
|
||||
from . import DOMAIN, MusicCastCapabilityEntity, MusicCastDataUpdateCoordinator
|
||||
from .const import DEVICE_CLASS_MAPPING
|
||||
|
||||
|
||||
async def async_setup_entry(
|
||||
|
@ -45,9 +47,9 @@ class SelectableCapapility(MusicCastCapabilityEntity, SelectEntity):
|
|||
await self.capability.set(value)
|
||||
|
||||
@property
|
||||
def device_class(self) -> str:
|
||||
"""Return the ID of the capability, to identify the entity for translations."""
|
||||
return f"{DOMAIN}__{self.capability.id.lower()}"
|
||||
def device_class(self) -> str | None:
|
||||
"""Return the device class, to identify the entity for translations."""
|
||||
return DEVICE_CLASS_MAPPING.get(self.capability.id)
|
||||
|
||||
@property
|
||||
def options(self):
|
||||
|
|
Loading…
Reference in New Issue