Improve config flow type hints in volumio (#125318)

This commit is contained in:
epenet 2024-09-06 14:57:04 +02:00 committed by GitHub
parent ba81a68982
commit 053e38db38
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -11,7 +11,7 @@ import voluptuous as vol
from homeassistant.components import zeroconf from homeassistant.components import zeroconf
from homeassistant.config_entries import ConfigFlow, ConfigFlowResult from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
from homeassistant.const import CONF_HOST, CONF_ID, CONF_NAME, CONF_PORT from homeassistant.const import CONF_HOST, CONF_ID, CONF_NAME, CONF_PORT
from homeassistant.core import callback from homeassistant.core import HomeAssistant, callback
from homeassistant.exceptions import HomeAssistantError from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.aiohttp_client import async_get_clientsession
@ -25,7 +25,7 @@ DATA_SCHEMA = vol.Schema(
) )
async def validate_input(hass, host, port): async def validate_input(hass: HomeAssistant, host: str, port: int) -> dict[str, Any]:
"""Validate the user input allows us to connect.""" """Validate the user input allows us to connect."""
volumio = Volumio(host, port, async_get_clientsession(hass)) volumio = Volumio(host, port, async_get_clientsession(hass))
@ -40,15 +40,13 @@ class VolumioConfigFlow(ConfigFlow, domain=DOMAIN):
VERSION = 1 VERSION = 1
def __init__(self) -> None: _host: str
"""Initialize flow.""" _port: int
self._host: str | None = None _name: str
self._port: int | None = None _uuid: str | None
self._name: str | None = None
self._uuid: str | None = None
@callback @callback
def _async_get_entry(self): def _async_get_entry(self) -> ConfigFlowResult:
return self.async_create_entry( return self.async_create_entry(
title=self._name, title=self._name,
data={ data={
@ -103,7 +101,7 @@ class VolumioConfigFlow(ConfigFlow, domain=DOMAIN):
) -> ConfigFlowResult: ) -> ConfigFlowResult:
"""Handle zeroconf discovery.""" """Handle zeroconf discovery."""
self._host = discovery_info.host self._host = discovery_info.host
self._port = discovery_info.port self._port = discovery_info.port or 3000
self._name = discovery_info.properties["volumioName"] self._name = discovery_info.properties["volumioName"]
self._uuid = discovery_info.properties["UUID"] self._uuid = discovery_info.properties["UUID"]
@ -111,7 +109,9 @@ class VolumioConfigFlow(ConfigFlow, domain=DOMAIN):
return await self.async_step_discovery_confirm() return await self.async_step_discovery_confirm()
async def async_step_discovery_confirm(self, user_input=None): async def async_step_discovery_confirm(
self, user_input: dict[str, Any] | None = None
) -> ConfigFlowResult:
"""Handle user-confirmation of discovered node.""" """Handle user-confirmation of discovered node."""
if user_input is not None: if user_input is not None:
try: try: