Add some missing typing to isy994 (#99110)

This commit is contained in:
J. Nick Koston 2023-08-27 05:33:00 -05:00 committed by GitHub
parent 0362ce92b5
commit 54cd0e8183
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 18 additions and 9 deletions

View File

@ -44,6 +44,7 @@ from .const import (
TYPE_INSTEON_MOTION, TYPE_INSTEON_MOTION,
) )
from .entity import ISYNodeEntity, ISYProgramEntity from .entity import ISYNodeEntity, ISYProgramEntity
from .models import IsyData
DEVICE_PARENT_REQUIRED = [ DEVICE_PARENT_REQUIRED = [
BinarySensorDeviceClass.OPENING, BinarySensorDeviceClass.OPENING,
@ -79,7 +80,7 @@ async def async_setup_entry(
| ISYBinarySensorProgramEntity | ISYBinarySensorProgramEntity
) )
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
for node in isy_data.nodes[Platform.BINARY_SENSOR]: for node in isy_data.nodes[Platform.BINARY_SENSOR]:
assert isinstance(node, Node) assert isinstance(node, Node)

View File

@ -21,6 +21,7 @@ from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import CONF_NETWORK, DOMAIN from .const import CONF_NETWORK, DOMAIN
from .models import IsyData
async def async_setup_entry( async def async_setup_entry(
@ -29,7 +30,7 @@ async def async_setup_entry(
async_add_entities: AddEntitiesCallback, async_add_entities: AddEntitiesCallback,
) -> None: ) -> None:
"""Set up ISY/IoX button from config entry.""" """Set up ISY/IoX button from config entry."""
isy_data = hass.data[DOMAIN][config_entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][config_entry.entry_id]
isy: ISY = isy_data.root isy: ISY = isy_data.root
device_info = isy_data.devices device_info = isy_data.devices
entities: list[ entities: list[

View File

@ -56,6 +56,7 @@ from .const import (
) )
from .entity import ISYNodeEntity from .entity import ISYNodeEntity
from .helpers import convert_isy_value_to_hass from .helpers import convert_isy_value_to_hass
from .models import IsyData
async def async_setup_entry( async def async_setup_entry(
@ -64,7 +65,7 @@ async def async_setup_entry(
"""Set up the ISY thermostat platform.""" """Set up the ISY thermostat platform."""
entities = [] entities = []
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
for node in isy_data.nodes[Platform.CLIMATE]: for node in isy_data.nodes[Platform.CLIMATE]:
entities.append(ISYThermostatEntity(node, devices.get(node.primary_node))) entities.append(ISYThermostatEntity(node, devices.get(node.primary_node)))

View File

@ -18,13 +18,14 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import _LOGGER, DOMAIN, UOM_8_BIT_RANGE from .const import _LOGGER, DOMAIN, UOM_8_BIT_RANGE
from .entity import ISYNodeEntity, ISYProgramEntity from .entity import ISYNodeEntity, ISYProgramEntity
from .models import IsyData
async def async_setup_entry( async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None: ) -> None:
"""Set up the ISY cover platform.""" """Set up the ISY cover platform."""
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
entities: list[ISYCoverEntity | ISYCoverProgramEntity] = [] entities: list[ISYCoverEntity | ISYCoverProgramEntity] = []
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
for node in isy_data.nodes[Platform.COVER]: for node in isy_data.nodes[Platform.COVER]:

View File

@ -20,6 +20,7 @@ from homeassistant.util.percentage import (
from .const import _LOGGER, DOMAIN from .const import _LOGGER, DOMAIN
from .entity import ISYNodeEntity, ISYProgramEntity from .entity import ISYNodeEntity, ISYProgramEntity
from .models import IsyData
SPEED_RANGE = (1, 255) # off is not included SPEED_RANGE = (1, 255) # off is not included
@ -28,7 +29,7 @@ async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None: ) -> None:
"""Set up the ISY fan platform.""" """Set up the ISY fan platform."""
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
entities: list[ISYFanEntity | ISYFanProgramEntity] = [] entities: list[ISYFanEntity | ISYFanProgramEntity] = []

View File

@ -17,6 +17,7 @@ from homeassistant.helpers.restore_state import RestoreEntity
from .const import _LOGGER, CONF_RESTORE_LIGHT_STATE, DOMAIN, UOM_PERCENTAGE from .const import _LOGGER, CONF_RESTORE_LIGHT_STATE, DOMAIN, UOM_PERCENTAGE
from .entity import ISYNodeEntity from .entity import ISYNodeEntity
from .models import IsyData
ATTR_LAST_BRIGHTNESS = "last_brightness" ATTR_LAST_BRIGHTNESS = "last_brightness"
@ -25,7 +26,7 @@ async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None: ) -> None:
"""Set up the ISY light platform.""" """Set up the ISY light platform."""
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
isy_options = entry.options isy_options = entry.options
restore_light_state = isy_options.get(CONF_RESTORE_LIGHT_STATE, False) restore_light_state = isy_options.get(CONF_RESTORE_LIGHT_STATE, False)

View File

@ -18,6 +18,7 @@ from homeassistant.helpers.entity_platform import (
from .const import DOMAIN from .const import DOMAIN
from .entity import ISYNodeEntity, ISYProgramEntity from .entity import ISYNodeEntity, ISYProgramEntity
from .models import IsyData
from .services import ( from .services import (
SERVICE_DELETE_USER_CODE_SCHEMA, SERVICE_DELETE_USER_CODE_SCHEMA,
SERVICE_DELETE_ZWAVE_LOCK_USER_CODE, SERVICE_DELETE_ZWAVE_LOCK_USER_CODE,
@ -49,7 +50,7 @@ async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None: ) -> None:
"""Set up the ISY lock platform.""" """Set up the ISY lock platform."""
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices
entities: list[ISYLockEntity | ISYLockProgramEntity] = [] entities: list[ISYLockEntity | ISYLockProgramEntity] = []
for node in isy_data.nodes[Platform.LOCK]: for node in isy_data.nodes[Platform.LOCK]:

View File

@ -51,6 +51,7 @@ from .const import (
) )
from .entity import ISYAuxControlEntity from .entity import ISYAuxControlEntity
from .helpers import convert_isy_value_to_hass from .helpers import convert_isy_value_to_hass
from .models import IsyData
ISY_MAX_SIZE = (2**32) / 2 ISY_MAX_SIZE = (2**32) / 2
ON_RANGE = (1, 255) # Off is not included ON_RANGE = (1, 255) # Off is not included
@ -81,7 +82,7 @@ async def async_setup_entry(
async_add_entities: AddEntitiesCallback, async_add_entities: AddEntitiesCallback,
) -> None: ) -> None:
"""Set up ISY/IoX number entities from config entry.""" """Set up ISY/IoX number entities from config entry."""
isy_data = hass.data[DOMAIN][config_entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][config_entry.entry_id]
device_info = isy_data.devices device_info = isy_data.devices
entities: list[ entities: list[
ISYVariableNumberEntity | ISYAuxControlNumberEntity | ISYBacklightNumberEntity ISYVariableNumberEntity | ISYAuxControlNumberEntity | ISYBacklightNumberEntity

View File

@ -45,6 +45,7 @@ from .const import (
) )
from .entity import ISYNodeEntity from .entity import ISYNodeEntity
from .helpers import convert_isy_value_to_hass from .helpers import convert_isy_value_to_hass
from .models import IsyData
# Disable general purpose and redundant sensors by default # Disable general purpose and redundant sensors by default
AUX_DISABLED_BY_DEFAULT_MATCH = ["GV", "DO"] AUX_DISABLED_BY_DEFAULT_MATCH = ["GV", "DO"]
@ -109,7 +110,7 @@ async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None: ) -> None:
"""Set up the ISY sensor platform.""" """Set up the ISY sensor platform."""
isy_data = hass.data[DOMAIN][entry.entry_id] isy_data: IsyData = hass.data[DOMAIN][entry.entry_id]
entities: list[ISYSensorEntity] = [] entities: list[ISYSensorEntity] = []
devices: dict[str, DeviceInfo] = isy_data.devices devices: dict[str, DeviceInfo] = isy_data.devices