Use new device class in darksky (#83362)

This commit is contained in:
epenet 2022-12-06 10:55:12 +01:00 committed by GitHub
parent b8613ec09d
commit 8a1a341b3a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -25,18 +25,13 @@ from homeassistant.const import (
CONF_NAME, CONF_NAME,
CONF_SCAN_INTERVAL, CONF_SCAN_INTERVAL,
DEGREE, DEGREE,
LENGTH_CENTIMETERS,
LENGTH_INCHES,
LENGTH_KILOMETERS,
LENGTH_MILES,
PERCENTAGE, PERCENTAGE,
PRESSURE_MBAR,
SPEED_KILOMETERS_PER_HOUR,
SPEED_METERS_PER_SECOND,
SPEED_MILES_PER_HOUR,
TEMP_CELSIUS,
TEMP_FAHRENHEIT,
UV_INDEX, UV_INDEX,
UnitOfLength,
UnitOfPrecipitationDepth,
UnitOfPressure,
UnitOfSpeed,
UnitOfTemperature,
UnitOfVolumetricFlux, UnitOfVolumetricFlux,
) )
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
@ -117,11 +112,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
"nearest_storm_distance": DarkskySensorEntityDescription( "nearest_storm_distance": DarkskySensorEntityDescription(
key="nearest_storm_distance", key="nearest_storm_distance",
name="Nearest Storm Distance", name="Nearest Storm Distance",
si_unit=LENGTH_KILOMETERS, si_unit=UnitOfLength.KILOMETERS,
us_unit=LENGTH_MILES, us_unit=UnitOfLength.MILES,
ca_unit=LENGTH_KILOMETERS, ca_unit=UnitOfLength.KILOMETERS,
uk_unit=LENGTH_KILOMETERS, uk_unit=UnitOfLength.KILOMETERS,
uk2_unit=LENGTH_MILES, uk2_unit=UnitOfLength.MILES,
icon="mdi:weather-lightning", icon="mdi:weather-lightning",
forecast_mode=["currently"], forecast_mode=["currently"],
), ),
@ -167,11 +162,12 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
"precip_accumulation": DarkskySensorEntityDescription( "precip_accumulation": DarkskySensorEntityDescription(
key="precip_accumulation", key="precip_accumulation",
name="Precip Accumulation", name="Precip Accumulation",
si_unit=LENGTH_CENTIMETERS, device_class=SensorDeviceClass.PRECIPITATION,
us_unit=LENGTH_INCHES, si_unit=UnitOfPrecipitationDepth.CENTIMETERS,
ca_unit=LENGTH_CENTIMETERS, us_unit=UnitOfPrecipitationDepth.INCHES,
uk_unit=LENGTH_CENTIMETERS, ca_unit=UnitOfPrecipitationDepth.CENTIMETERS,
uk2_unit=LENGTH_CENTIMETERS, uk_unit=UnitOfPrecipitationDepth.CENTIMETERS,
uk2_unit=UnitOfPrecipitationDepth.CENTIMETERS,
icon="mdi:weather-snowy", icon="mdi:weather-snowy",
forecast_mode=["hourly", "daily"], forecast_mode=["hourly", "daily"],
), ),
@ -180,11 +176,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
name="Temperature", name="Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["currently", "hourly"], forecast_mode=["currently", "hourly"],
), ),
"apparent_temperature": DarkskySensorEntityDescription( "apparent_temperature": DarkskySensorEntityDescription(
@ -192,11 +188,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
name="Apparent Temperature", name="Apparent Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["currently", "hourly"], forecast_mode=["currently", "hourly"],
), ),
"dew_point": DarkskySensorEntityDescription( "dew_point": DarkskySensorEntityDescription(
@ -204,22 +200,22 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
name="Dew Point", name="Dew Point",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["currently", "hourly", "daily"], forecast_mode=["currently", "hourly", "daily"],
), ),
"wind_speed": DarkskySensorEntityDescription( "wind_speed": DarkskySensorEntityDescription(
key="wind_speed", key="wind_speed",
name="Wind Speed", name="Wind Speed",
si_unit=SPEED_METERS_PER_SECOND, device_class=SensorDeviceClass.WIND_SPEED,
us_unit=SPEED_MILES_PER_HOUR, si_unit=UnitOfSpeed.METERS_PER_SECOND,
ca_unit=SPEED_KILOMETERS_PER_HOUR, us_unit=UnitOfSpeed.MILES_PER_HOUR,
uk_unit=SPEED_MILES_PER_HOUR, ca_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
uk2_unit=SPEED_MILES_PER_HOUR, uk_unit=UnitOfSpeed.MILES_PER_HOUR,
icon="mdi:weather-windy", uk2_unit=UnitOfSpeed.MILES_PER_HOUR,
forecast_mode=["currently", "hourly", "daily"], forecast_mode=["currently", "hourly", "daily"],
), ),
"wind_bearing": DarkskySensorEntityDescription( "wind_bearing": DarkskySensorEntityDescription(
@ -236,11 +232,12 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
"wind_gust": DarkskySensorEntityDescription( "wind_gust": DarkskySensorEntityDescription(
key="wind_gust", key="wind_gust",
name="Wind Gust", name="Wind Gust",
si_unit=SPEED_METERS_PER_SECOND, device_class=SensorDeviceClass.WIND_SPEED,
us_unit=SPEED_MILES_PER_HOUR, si_unit=UnitOfSpeed.METERS_PER_SECOND,
ca_unit=SPEED_KILOMETERS_PER_HOUR, us_unit=UnitOfSpeed.MILES_PER_HOUR,
uk_unit=SPEED_MILES_PER_HOUR, ca_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
uk2_unit=SPEED_MILES_PER_HOUR, uk_unit=UnitOfSpeed.MILES_PER_HOUR,
uk2_unit=UnitOfSpeed.MILES_PER_HOUR,
icon="mdi:weather-windy-variant", icon="mdi:weather-windy-variant",
forecast_mode=["currently", "hourly", "daily"], forecast_mode=["currently", "hourly", "daily"],
), ),
@ -271,21 +268,21 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
key="pressure", key="pressure",
name="Pressure", name="Pressure",
device_class=SensorDeviceClass.PRESSURE, device_class=SensorDeviceClass.PRESSURE,
si_unit=PRESSURE_MBAR, si_unit=UnitOfPressure.MBAR,
us_unit=PRESSURE_MBAR, us_unit=UnitOfPressure.MBAR,
ca_unit=PRESSURE_MBAR, ca_unit=UnitOfPressure.MBAR,
uk_unit=PRESSURE_MBAR, uk_unit=UnitOfPressure.MBAR,
uk2_unit=PRESSURE_MBAR, uk2_unit=UnitOfPressure.MBAR,
forecast_mode=["currently", "hourly", "daily"], forecast_mode=["currently", "hourly", "daily"],
), ),
"visibility": DarkskySensorEntityDescription( "visibility": DarkskySensorEntityDescription(
key="visibility", key="visibility",
name="Visibility", name="Visibility",
si_unit=LENGTH_KILOMETERS, si_unit=UnitOfLength.KILOMETERS,
us_unit=LENGTH_MILES, us_unit=UnitOfLength.MILES,
ca_unit=LENGTH_KILOMETERS, ca_unit=UnitOfLength.KILOMETERS,
uk_unit=LENGTH_KILOMETERS, uk_unit=UnitOfLength.KILOMETERS,
uk2_unit=LENGTH_MILES, uk2_unit=UnitOfLength.MILES,
icon="mdi:eye", icon="mdi:eye",
forecast_mode=["currently", "hourly", "daily"], forecast_mode=["currently", "hourly", "daily"],
), ),
@ -304,88 +301,88 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = {
key="apparent_temperature_max", key="apparent_temperature_max",
name="Daily High Apparent Temperature", name="Daily High Apparent Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"apparent_temperature_high": DarkskySensorEntityDescription( "apparent_temperature_high": DarkskySensorEntityDescription(
key="apparent_temperature_high", key="apparent_temperature_high",
name="Daytime High Apparent Temperature", name="Daytime High Apparent Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"apparent_temperature_min": DarkskySensorEntityDescription( "apparent_temperature_min": DarkskySensorEntityDescription(
key="apparent_temperature_min", key="apparent_temperature_min",
name="Daily Low Apparent Temperature", name="Daily Low Apparent Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"apparent_temperature_low": DarkskySensorEntityDescription( "apparent_temperature_low": DarkskySensorEntityDescription(
key="apparent_temperature_low", key="apparent_temperature_low",
name="Overnight Low Apparent Temperature", name="Overnight Low Apparent Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"temperature_max": DarkskySensorEntityDescription( "temperature_max": DarkskySensorEntityDescription(
key="temperature_max", key="temperature_max",
name="Daily High Temperature", name="Daily High Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"temperature_high": DarkskySensorEntityDescription( "temperature_high": DarkskySensorEntityDescription(
key="temperature_high", key="temperature_high",
name="Daytime High Temperature", name="Daytime High Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"temperature_min": DarkskySensorEntityDescription( "temperature_min": DarkskySensorEntityDescription(
key="temperature_min", key="temperature_min",
name="Daily Low Temperature", name="Daily Low Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"temperature_low": DarkskySensorEntityDescription( "temperature_low": DarkskySensorEntityDescription(
key="temperature_low", key="temperature_low",
name="Overnight Low Temperature", name="Overnight Low Temperature",
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
si_unit=TEMP_CELSIUS, si_unit=UnitOfTemperature.CELSIUS,
us_unit=TEMP_FAHRENHEIT, us_unit=UnitOfTemperature.FAHRENHEIT,
ca_unit=TEMP_CELSIUS, ca_unit=UnitOfTemperature.CELSIUS,
uk_unit=TEMP_CELSIUS, uk_unit=UnitOfTemperature.CELSIUS,
uk2_unit=TEMP_CELSIUS, uk2_unit=UnitOfTemperature.CELSIUS,
forecast_mode=["daily"], forecast_mode=["daily"],
), ),
"precip_intensity_max": DarkskySensorEntityDescription( "precip_intensity_max": DarkskySensorEntityDescription(