Remove Rituals Parfume Genie entity descriptions required fields mixins (#103999)

This commit is contained in:
Franck Nijhof 2023-11-15 03:48:31 +01:00 committed by GitHub
parent 1a079d7c6f
commit 76ccad40ff
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 12 additions and 41 deletions

View File

@ -21,21 +21,14 @@ from .coordinator import RitualsDataUpdateCoordinator
from .entity import DiffuserEntity from .entity import DiffuserEntity
@dataclass @dataclass(kw_only=True)
class RitualsentityDescriptionMixin: class RitualsBinarySensorEntityDescription(BinarySensorEntityDescription):
"""Mixin values for Rituals entities.""" """Class describing Rituals binary sensor entities."""
is_on_fn: Callable[[Diffuser], bool] is_on_fn: Callable[[Diffuser], bool]
has_fn: Callable[[Diffuser], bool] has_fn: Callable[[Diffuser], bool]
@dataclass
class RitualsBinarySensorEntityDescription(
BinarySensorEntityDescription, RitualsentityDescriptionMixin
):
"""Class describing Rituals binary sensor entities."""
ENTITY_DESCRIPTIONS = ( ENTITY_DESCRIPTIONS = (
RitualsBinarySensorEntityDescription( RitualsBinarySensorEntityDescription(
key="charging", key="charging",

View File

@ -17,21 +17,14 @@ from .coordinator import RitualsDataUpdateCoordinator
from .entity import DiffuserEntity from .entity import DiffuserEntity
@dataclass @dataclass(kw_only=True)
class RitualsNumberEntityDescriptionMixin: class RitualsNumberEntityDescription(NumberEntityDescription):
"""Mixin for required keys.""" """Class describing Rituals number entities."""
value_fn: Callable[[Diffuser], int] value_fn: Callable[[Diffuser], int]
set_value_fn: Callable[[Diffuser, int], Awaitable[Any]] set_value_fn: Callable[[Diffuser, int], Awaitable[Any]]
@dataclass
class RitualsNumberEntityDescription(
NumberEntityDescription, RitualsNumberEntityDescriptionMixin
):
"""Class describing Rituals number entities."""
ENTITY_DESCRIPTIONS = ( ENTITY_DESCRIPTIONS = (
RitualsNumberEntityDescription( RitualsNumberEntityDescription(
key="perfume_amount", key="perfume_amount",

View File

@ -17,21 +17,14 @@ from .coordinator import RitualsDataUpdateCoordinator
from .entity import DiffuserEntity from .entity import DiffuserEntity
@dataclass @dataclass(kw_only=True)
class RitualsEntityDescriptionMixin: class RitualsSelectEntityDescription(SelectEntityDescription):
"""Mixin for required keys.""" """Class describing Rituals select entities."""
current_fn: Callable[[Diffuser], str] current_fn: Callable[[Diffuser], str]
select_fn: Callable[[Diffuser, str], Awaitable[None]] select_fn: Callable[[Diffuser, str], Awaitable[None]]
@dataclass
class RitualsSelectEntityDescription(
SelectEntityDescription, RitualsEntityDescriptionMixin
):
"""Class describing Rituals select entities."""
ENTITY_DESCRIPTIONS = ( ENTITY_DESCRIPTIONS = (
RitualsSelectEntityDescription( RitualsSelectEntityDescription(
key="room_size_square_meter", key="room_size_square_meter",

View File

@ -21,20 +21,12 @@ from .coordinator import RitualsDataUpdateCoordinator
from .entity import DiffuserEntity from .entity import DiffuserEntity
@dataclass @dataclass(kw_only=True)
class RitualsEntityDescriptionMixin: class RitualsSensorEntityDescription(SensorEntityDescription):
"""Mixin values for Rituals entities."""
value_fn: Callable[[Diffuser], int | str]
@dataclass
class RitualsSensorEntityDescription(
SensorEntityDescription, RitualsEntityDescriptionMixin
):
"""Class describing Rituals sensor entities.""" """Class describing Rituals sensor entities."""
has_fn: Callable[[Diffuser], bool] = lambda _: True has_fn: Callable[[Diffuser], bool] = lambda _: True
value_fn: Callable[[Diffuser], int | str]
ENTITY_DESCRIPTIONS = ( ENTITY_DESCRIPTIONS = (