mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 21:27:38 +00:00
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 const
This commit is contained in:
parent
4dc70536b6
commit
ba79de56ab
@ -56,3 +56,14 @@ ENTITY_CATEGORY_MAPPING = {
|
|||||||
EntityType.DIAGNOSTIC: ENTITY_CATEGORY_DIAGNOSTIC,
|
EntityType.DIAGNOSTIC: ENTITY_CATEGORY_DIAGNOSTIC,
|
||||||
EntityType.SYSTEM: ENTITY_CATEGORY_SYSTEM,
|
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."""
|
"""The select entities for musiccast."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
from aiomusiccast.capabilities import OptionSetter
|
from aiomusiccast.capabilities import OptionSetter
|
||||||
|
|
||||||
@ -8,6 +9,7 @@ from homeassistant.core import HomeAssistant
|
|||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
|
||||||
from . import DOMAIN, MusicCastCapabilityEntity, MusicCastDataUpdateCoordinator
|
from . import DOMAIN, MusicCastCapabilityEntity, MusicCastDataUpdateCoordinator
|
||||||
|
from .const import DEVICE_CLASS_MAPPING
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_entry(
|
async def async_setup_entry(
|
||||||
@ -45,9 +47,9 @@ class SelectableCapapility(MusicCastCapabilityEntity, SelectEntity):
|
|||||||
await self.capability.set(value)
|
await self.capability.set(value)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def device_class(self) -> str:
|
def device_class(self) -> str | None:
|
||||||
"""Return the ID of the capability, to identify the entity for translations."""
|
"""Return the device class, to identify the entity for translations."""
|
||||||
return f"{DOMAIN}__{self.capability.id.lower()}"
|
return DEVICE_CLASS_MAPPING.get(self.capability.id)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def options(self):
|
def options(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user