diff --git a/homeassistant/components/kostal_plenticore/number.py b/homeassistant/components/kostal_plenticore/number.py index d53982535da..2e544a16fec 100644 --- a/homeassistant/components/kostal_plenticore/number.py +++ b/homeassistant/components/kostal_plenticore/number.py @@ -27,9 +27,9 @@ from .helper import PlenticoreDataFormatter, SettingDataUpdateCoordinator _LOGGER = logging.getLogger(__name__) -@dataclass(frozen=True) -class PlenticoreNumberEntityDescriptionMixin: - """Define an entity description mixin for number entities.""" +@dataclass(frozen=True, kw_only=True) +class PlenticoreNumberEntityDescription(NumberEntityDescription): + """Describes a Plenticore number entity.""" module_id: str data_id: str @@ -37,13 +37,6 @@ class PlenticoreNumberEntityDescriptionMixin: fmt_to: str -@dataclass(frozen=True) -class PlenticoreNumberEntityDescription( - NumberEntityDescription, PlenticoreNumberEntityDescriptionMixin -): - """Describes a Plenticore number entity.""" - - NUMBER_SETTINGS_DATA = [ PlenticoreNumberEntityDescription( key="battery_min_soc", diff --git a/homeassistant/components/kostal_plenticore/select.py b/homeassistant/components/kostal_plenticore/select.py index 2f6d9334071..555bb89641b 100644 --- a/homeassistant/components/kostal_plenticore/select.py +++ b/homeassistant/components/kostal_plenticore/select.py @@ -20,20 +20,13 @@ from .helper import Plenticore, SelectDataUpdateCoordinator _LOGGER = logging.getLogger(__name__) -@dataclass(frozen=True) -class PlenticoreRequiredKeysMixin: - """A class that describes required properties for plenticore select entities.""" +@dataclass(frozen=True, kw_only=True) +class PlenticoreSelectEntityDescription(SelectEntityDescription): + """A class that describes plenticore select entities.""" module_id: str -@dataclass(frozen=True) -class PlenticoreSelectEntityDescription( - SelectEntityDescription, PlenticoreRequiredKeysMixin -): - """A class that describes plenticore select entities.""" - - SELECT_SETTINGS_DATA = [ PlenticoreSelectEntityDescription( module_id="devices:local", diff --git a/homeassistant/components/kostal_plenticore/sensor.py b/homeassistant/components/kostal_plenticore/sensor.py index 88714620a46..d6e13ecb5b7 100644 --- a/homeassistant/components/kostal_plenticore/sensor.py +++ b/homeassistant/components/kostal_plenticore/sensor.py @@ -34,21 +34,14 @@ from .helper import PlenticoreDataFormatter, ProcessDataUpdateCoordinator _LOGGER = logging.getLogger(__name__) -@dataclass(frozen=True) -class PlenticoreRequiredKeysMixin: - """A class that describes required properties for plenticore sensor entities.""" +@dataclass(frozen=True, kw_only=True) +class PlenticoreSensorEntityDescription(SensorEntityDescription): + """A class that describes plenticore sensor entities.""" module_id: str formatter: str -@dataclass(frozen=True) -class PlenticoreSensorEntityDescription( - SensorEntityDescription, PlenticoreRequiredKeysMixin -): - """A class that describes plenticore sensor entities.""" - - SENSOR_PROCESS_DATA = [ PlenticoreSensorEntityDescription( module_id="devices:local", diff --git a/homeassistant/components/kostal_plenticore/switch.py b/homeassistant/components/kostal_plenticore/switch.py index f1e75edd5bd..f2ea1a5ef7c 100644 --- a/homeassistant/components/kostal_plenticore/switch.py +++ b/homeassistant/components/kostal_plenticore/switch.py @@ -21,9 +21,9 @@ from .helper import SettingDataUpdateCoordinator _LOGGER = logging.getLogger(__name__) -@dataclass(frozen=True) -class PlenticoreRequiredKeysMixin: - """A class that describes required properties for plenticore switch entities.""" +@dataclass(frozen=True, kw_only=True) +class PlenticoreSwitchEntityDescription(SwitchEntityDescription): + """A class that describes plenticore switch entities.""" module_id: str is_on: str @@ -33,13 +33,6 @@ class PlenticoreRequiredKeysMixin: off_label: str -@dataclass(frozen=True) -class PlenticoreSwitchEntityDescription( - SwitchEntityDescription, PlenticoreRequiredKeysMixin -): - """A class that describes plenticore switch entities.""" - - SWITCH_SETTINGS_DATA = [ PlenticoreSwitchEntityDescription( module_id="devices:local",