Remove entity description mixin in Dremel 3D Printer (#112405)

This commit is contained in:
Joost Lekkerkerker 2024-03-06 14:24:05 +01:00 committed by GitHub
parent 86503526ee
commit 5400b4055a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 9 additions and 31 deletions

View File

@ -19,20 +19,13 @@ from .const import DOMAIN
from .entity import Dremel3DPrinterEntity
@dataclass(frozen=True)
class Dremel3DPrinterBinarySensorEntityMixin:
"""Mixin for Dremel 3D Printer binary sensor."""
@dataclass(frozen=True, kw_only=True)
class Dremel3DPrinterBinarySensorEntityDescription(BinarySensorEntityDescription):
"""Describes a Dremel 3D Printer binary sensor."""
value_fn: Callable[[Dremel3DPrinter], bool]
@dataclass(frozen=True)
class Dremel3DPrinterBinarySensorEntityDescription(
BinarySensorEntityDescription, Dremel3DPrinterBinarySensorEntityMixin
):
"""Describes a Dremel 3D Printer binary sensor."""
BINARY_SENSOR_TYPES: tuple[Dremel3DPrinterBinarySensorEntityDescription, ...] = (
Dremel3DPrinterBinarySensorEntityDescription(
key="door",

View File

@ -16,20 +16,13 @@ from .const import DOMAIN
from .entity import Dremel3DPrinterEntity
@dataclass(frozen=True)
class Dremel3DPrinterButtonEntityMixin:
"""Mixin for required keys."""
@dataclass(frozen=True, kw_only=True)
class Dremel3DPrinterButtonEntityDescription(ButtonEntityDescription):
"""Describes a Dremel 3D Printer button entity."""
press_fn: Callable[[Dremel3DPrinter], None]
@dataclass(frozen=True)
class Dremel3DPrinterButtonEntityDescription(
ButtonEntityDescription, Dremel3DPrinterButtonEntityMixin
):
"""Describes a Dremel 3D Printer button entity."""
BUTTON_TYPES: tuple[Dremel3DPrinterButtonEntityDescription, ...] = (
Dremel3DPrinterButtonEntityDescription(
key="cancel_job",

View File

@ -31,19 +31,11 @@ from .const import ATTR_EXTRUDER, ATTR_PLATFORM, DOMAIN
from .entity import Dremel3DPrinterEntity
@dataclass(frozen=True)
class Dremel3DPrinterSensorEntityMixin:
"""Mixin for Dremel 3D Printer sensor."""
value_fn: Callable[[Dremel3DPrinter, str], StateType | datetime]
@dataclass(frozen=True)
class Dremel3DPrinterSensorEntityDescription(
SensorEntityDescription, Dremel3DPrinterSensorEntityMixin
):
@dataclass(frozen=True, kw_only=True)
class Dremel3DPrinterSensorEntityDescription(SensorEntityDescription):
"""Describes a Dremel 3D Printer sensor."""
value_fn: Callable[[Dremel3DPrinter, str], StateType | datetime]
available_fn: Callable[[Dremel3DPrinter, str], bool] = lambda api, _: True