1 """The FiveM entity."""
3 from __future__
import annotations
5 from collections.abc
import Mapping
6 from dataclasses
import dataclass
14 from .const
import DOMAIN, MANUFACTURER
15 from .coordinator
import FiveMDataUpdateCoordinator
17 _LOGGER = logging.getLogger(__name__)
20 @dataclass(frozen=True)
22 """Describes FiveM entity."""
24 extra_attrs: list[str] |
None =
None
28 """Representation of a FiveM base entity."""
30 _attr_has_entity_name =
True
32 entity_description: FiveMEntityDescription
36 coordinator: FiveMDataUpdateCoordinator,
37 description: FiveMEntityDescription,
39 """Initialize base entity."""
43 self.
_attr_unique_id_attr_unique_id = f
"{self.coordinator.unique_id}-{description.key}".lower()
45 identifiers={(DOMAIN, self.coordinator.unique_id)},
46 manufacturer=MANUFACTURER,
47 model=self.coordinator.server,
48 name=self.coordinator.host,
49 sw_version=self.coordinator.version,
54 """Return the extra attributes of the sensor."""
59 attr: self.coordinator.data[attr]
None __init__(self, FiveMDataUpdateCoordinator coordinator, FiveMEntityDescription description)
Mapping[str, Any]|None extra_state_attributes(self)