Use covariant for fire event data type (#110843)

This commit is contained in:
Franck Nijhof 2024-02-18 13:21:55 +01:00 committed by GitHub
parent 66a31407f9
commit 1c55ba0cb2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 9 additions and 9 deletions

View File

@ -262,7 +262,7 @@ class ImageProcessingFaceEntity(ImageProcessingEntity):
continue continue
face.update({ATTR_ENTITY_ID: self.entity_id}) face.update({ATTR_ENTITY_ID: self.entity_id})
self.hass.bus.async_fire(EVENT_DETECT_FACE, face) # type: ignore[arg-type] self.hass.bus.async_fire(EVENT_DETECT_FACE, face)
# Update entity store # Update entity store
self.faces = faces self.faces = faces

View File

@ -1,7 +1,7 @@
"""Event parser and human readable log generator.""" """Event parser and human readable log generator."""
from __future__ import annotations from __future__ import annotations
from collections.abc import Callable from collections.abc import Callable, Mapping
from typing import Any from typing import Any
from homeassistant.components.sensor import ATTR_STATE_CLASS from homeassistant.components.sensor import ATTR_STATE_CLASS
@ -96,7 +96,7 @@ def async_determine_event_types(
@callback @callback
def extract_attr(source: dict[str, Any], attr: str) -> list[str]: def extract_attr(source: Mapping[str, Any], attr: str) -> list[str]:
"""Extract an attribute as a list or string.""" """Extract an attribute as a list or string."""
if (value := source.get(attr)) is None: if (value := source.get(attr)) is None:
return [] return []

View File

@ -1,7 +1,7 @@
"""Event parser and human readable log generator.""" """Event parser and human readable log generator."""
from __future__ import annotations from __future__ import annotations
from collections.abc import Callable from collections.abc import Callable, Mapping
from dataclasses import dataclass from dataclasses import dataclass
from typing import TYPE_CHECKING, Any, cast from typing import TYPE_CHECKING, Any, cast
@ -103,7 +103,7 @@ class LazyEventPartialState:
class EventAsRow: class EventAsRow:
"""Convert an event to a row.""" """Convert an event to a row."""
data: dict[str, Any] data: Mapping[str, Any]
context: Context context: Context
context_id_bin: bytes context_id_bin: bytes
time_fired_ts: float time_fired_ts: float

View File

@ -30,7 +30,7 @@ def async_describe_events(
device: dr.DeviceEntry | None = None device: dr.DeviceEntry | None = None
device_name: str = "Unknown device" device_name: str = "Unknown device"
zha_device: ZHADevice | None = None zha_device: ZHADevice | None = None
event_data: dict = event.data event_data = event.data
event_type: str | None = None event_type: str | None = None
event_subtype: str | None = None event_subtype: str | None = None

View File

@ -1067,7 +1067,7 @@ class Event:
def __init__( def __init__(
self, self,
event_type: str, event_type: str,
data: dict[str, Any] | None = None, data: Mapping[str, Any] | None = None,
origin: EventOrigin = EventOrigin.local, origin: EventOrigin = EventOrigin.local,
time_fired: datetime.datetime | None = None, time_fired: datetime.datetime | None = None,
context: Context | None = None, context: Context | None = None,
@ -1204,7 +1204,7 @@ class EventBus:
def fire( def fire(
self, self,
event_type: str, event_type: str,
event_data: dict[str, Any] | None = None, event_data: Mapping[str, Any] | None = None,
origin: EventOrigin = EventOrigin.local, origin: EventOrigin = EventOrigin.local,
context: Context | None = None, context: Context | None = None,
) -> None: ) -> None:
@ -1217,7 +1217,7 @@ class EventBus:
def async_fire( def async_fire(
self, self,
event_type: str, event_type: str,
event_data: dict[str, Any] | None = None, event_data: Mapping[str, Any] | None = None,
origin: EventOrigin = EventOrigin.local, origin: EventOrigin = EventOrigin.local,
context: Context | None = None, context: Context | None = None,
time_fired: datetime.datetime | None = None, time_fired: datetime.datetime | None = None,