From 37e0a9d9c75218e4ba8de154c0967a0592b56f7c Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Mon, 11 Mar 2024 11:57:22 +0100 Subject: [PATCH] Remove entity description mixin in SleepIQ (#112940) --- homeassistant/components/sleepiq/button.py | 13 +++---------- homeassistant/components/sleepiq/number.py | 13 +++---------- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/homeassistant/components/sleepiq/button.py b/homeassistant/components/sleepiq/button.py index f82de232276..94b010066c9 100644 --- a/homeassistant/components/sleepiq/button.py +++ b/homeassistant/components/sleepiq/button.py @@ -18,20 +18,13 @@ from .coordinator import SleepIQData from .entity import SleepIQEntity -@dataclass(frozen=True) -class SleepIQButtonEntityDescriptionMixin: - """Describes a SleepIQ Button entity.""" +@dataclass(frozen=True, kw_only=True) +class SleepIQButtonEntityDescription(ButtonEntityDescription): + """Class to describe a Button entity.""" press_action: Callable[[SleepIQBed], Any] -@dataclass(frozen=True) -class SleepIQButtonEntityDescription( - ButtonEntityDescription, SleepIQButtonEntityDescriptionMixin -): - """Class to describe a Button entity.""" - - ENTITY_DESCRIPTIONS = [ SleepIQButtonEntityDescription( key="calibrate", diff --git a/homeassistant/components/sleepiq/number.py b/homeassistant/components/sleepiq/number.py index f42bed004fc..54912fc2a77 100644 --- a/homeassistant/components/sleepiq/number.py +++ b/homeassistant/components/sleepiq/number.py @@ -31,9 +31,9 @@ from .coordinator import SleepIQData, SleepIQDataUpdateCoordinator from .entity import SleepIQBedEntity, sleeper_for_side -@dataclass(frozen=True) -class SleepIQNumberEntityDescriptionMixin: - """Mixin to describe a SleepIQ number entity.""" +@dataclass(frozen=True, kw_only=True) +class SleepIQNumberEntityDescription(NumberEntityDescription): + """Class to describe a SleepIQ number entity.""" value_fn: Callable[[Any], float] set_value_fn: Callable[[Any, int], Coroutine[None, None, None]] @@ -41,13 +41,6 @@ class SleepIQNumberEntityDescriptionMixin: get_unique_id_fn: Callable[[SleepIQBed, Any], str] -@dataclass(frozen=True) -class SleepIQNumberEntityDescription( - NumberEntityDescription, SleepIQNumberEntityDescriptionMixin -): - """Class to describe a SleepIQ number entity.""" - - async def _async_set_firmness(sleeper: SleepIQSleeper, firmness: int) -> None: await sleeper.set_sleepnumber(firmness)