mirror of
https://github.com/home-assistant/core.git
synced 2025-07-10 06:47:09 +00:00
Refactor DeviceAutomationTriggerProtocol (#144888)
This commit is contained in:
parent
49b7559b1f
commit
d44a34ce1e
@ -8,11 +8,7 @@ import voluptuous as vol
|
|||||||
|
|
||||||
from homeassistant.const import CONF_DOMAIN
|
from homeassistant.const import CONF_DOMAIN
|
||||||
from homeassistant.core import CALLBACK_TYPE, HomeAssistant
|
from homeassistant.core import CALLBACK_TYPE, HomeAssistant
|
||||||
from homeassistant.helpers.trigger import (
|
from homeassistant.helpers.trigger import TriggerActionType, TriggerInfo
|
||||||
TriggerActionType,
|
|
||||||
TriggerInfo,
|
|
||||||
TriggerProtocol,
|
|
||||||
)
|
|
||||||
from homeassistant.helpers.typing import ConfigType
|
from homeassistant.helpers.typing import ConfigType
|
||||||
|
|
||||||
from . import (
|
from . import (
|
||||||
@ -25,13 +21,28 @@ from .helpers import async_validate_device_automation_config
|
|||||||
TRIGGER_SCHEMA = DEVICE_TRIGGER_BASE_SCHEMA.extend({}, extra=vol.ALLOW_EXTRA)
|
TRIGGER_SCHEMA = DEVICE_TRIGGER_BASE_SCHEMA.extend({}, extra=vol.ALLOW_EXTRA)
|
||||||
|
|
||||||
|
|
||||||
class DeviceAutomationTriggerProtocol(TriggerProtocol, Protocol):
|
class DeviceAutomationTriggerProtocol(Protocol):
|
||||||
"""Define the format of device_trigger modules.
|
"""Define the format of device_trigger modules.
|
||||||
|
|
||||||
Each module must define either TRIGGER_SCHEMA or async_validate_trigger_config
|
Each module must define either TRIGGER_SCHEMA or async_validate_trigger_config.
|
||||||
from TriggerProtocol.
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
TRIGGER_SCHEMA: vol.Schema
|
||||||
|
|
||||||
|
async def async_validate_trigger_config(
|
||||||
|
self, hass: HomeAssistant, config: ConfigType
|
||||||
|
) -> ConfigType:
|
||||||
|
"""Validate config."""
|
||||||
|
|
||||||
|
async def async_attach_trigger(
|
||||||
|
self,
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
action: TriggerActionType,
|
||||||
|
trigger_info: TriggerInfo,
|
||||||
|
) -> CALLBACK_TYPE:
|
||||||
|
"""Attach a trigger."""
|
||||||
|
|
||||||
async def async_get_trigger_capabilities(
|
async def async_get_trigger_capabilities(
|
||||||
self, hass: HomeAssistant, config: ConfigType
|
self, hass: HomeAssistant, config: ConfigType
|
||||||
) -> dict[str, vol.Schema]:
|
) -> dict[str, vol.Schema]:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user