Drop UNIT_ prefix for percentage constant (#39383)

This commit is contained in:
springstan 2020-09-05 21:09:14 +02:00 committed by GitHub
parent cdc93d7110
commit d2b1918e9c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
183 changed files with 639 additions and 661 deletions

View file

@ -5,12 +5,12 @@ from homeassistant.const import (
LENGTH_FEET, LENGTH_FEET,
LENGTH_INCHES, LENGTH_INCHES,
LENGTH_METERS, LENGTH_METERS,
PERCENTAGE,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
SPEED_MILES_PER_HOUR, SPEED_MILES_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
UV_INDEX, UV_INDEX,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
@ -53,15 +53,15 @@ FORECAST_SENSOR_TYPES = {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-cloudy", ATTR_ICON: "mdi:weather-cloudy",
ATTR_LABEL: "Cloud Cover Day", ATTR_LABEL: "Cloud Cover Day",
ATTR_UNIT_METRIC: UNIT_PERCENTAGE, ATTR_UNIT_METRIC: PERCENTAGE,
ATTR_UNIT_IMPERIAL: UNIT_PERCENTAGE, ATTR_UNIT_IMPERIAL: PERCENTAGE,
}, },
"CloudCoverNight": { "CloudCoverNight": {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-cloudy", ATTR_ICON: "mdi:weather-cloudy",
ATTR_LABEL: "Cloud Cover Night", ATTR_LABEL: "Cloud Cover Night",
ATTR_UNIT_METRIC: UNIT_PERCENTAGE, ATTR_UNIT_METRIC: PERCENTAGE,
ATTR_UNIT_IMPERIAL: UNIT_PERCENTAGE, ATTR_UNIT_IMPERIAL: PERCENTAGE,
}, },
"Grass": { "Grass": {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
@ -130,15 +130,15 @@ FORECAST_SENSOR_TYPES = {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-lightning", ATTR_ICON: "mdi:weather-lightning",
ATTR_LABEL: "Thunderstorm Probability Day", ATTR_LABEL: "Thunderstorm Probability Day",
ATTR_UNIT_METRIC: UNIT_PERCENTAGE, ATTR_UNIT_METRIC: PERCENTAGE,
ATTR_UNIT_IMPERIAL: UNIT_PERCENTAGE, ATTR_UNIT_IMPERIAL: PERCENTAGE,
}, },
"ThunderstormProbabilityNight": { "ThunderstormProbabilityNight": {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-lightning", ATTR_ICON: "mdi:weather-lightning",
ATTR_LABEL: "Thunderstorm Probability Night", ATTR_LABEL: "Thunderstorm Probability Night",
ATTR_UNIT_METRIC: UNIT_PERCENTAGE, ATTR_UNIT_METRIC: PERCENTAGE,
ATTR_UNIT_IMPERIAL: UNIT_PERCENTAGE, ATTR_UNIT_IMPERIAL: PERCENTAGE,
}, },
"Tree": { "Tree": {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
@ -210,8 +210,8 @@ SENSOR_TYPES = {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-cloudy", ATTR_ICON: "mdi:weather-cloudy",
ATTR_LABEL: "Cloud Cover", ATTR_LABEL: "Cloud Cover",
ATTR_UNIT_METRIC: UNIT_PERCENTAGE, ATTR_UNIT_METRIC: PERCENTAGE,
ATTR_UNIT_IMPERIAL: UNIT_PERCENTAGE, ATTR_UNIT_IMPERIAL: PERCENTAGE,
}, },
"DewPoint": { "DewPoint": {
ATTR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE, ATTR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE,

View file

@ -1,5 +1,5 @@
"""Support for Acmeda Roller Blind Batteries.""" """Support for Acmeda Roller Blind Batteries."""
from homeassistant.const import DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -33,7 +33,7 @@ class AcmedaBattery(AcmedaBase):
"""Representation of a Acmeda cover device.""" """Representation of a Acmeda cover device."""
device_class = DEVICE_CLASS_BATTERY device_class = DEVICE_CLASS_BATTERY
unit_of_measurement = UNIT_PERCENTAGE unit_of_measurement = PERCENTAGE
@property @property
def name(self): def name(self):

View file

@ -11,7 +11,7 @@ from homeassistant.components.adguard.const import (
DOMAIN, DOMAIN,
) )
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import TIME_MILLISECONDS, UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE, TIME_MILLISECONDS
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
from homeassistant.helpers.typing import HomeAssistantType from homeassistant.helpers.typing import HomeAssistantType
@ -134,7 +134,7 @@ class AdGuardHomePercentageBlockedSensor(AdGuardHomeSensor):
"AdGuard DNS Queries Blocked Ratio", "AdGuard DNS Queries Blocked Ratio",
"mdi:magnify-close", "mdi:magnify-close",
"blocked_percentage", "blocked_percentage",
UNIT_PERCENTAGE, PERCENTAGE,
) )
async def _adguard_update(self) -> None: async def _adguard_update(self) -> None:

View file

@ -7,9 +7,9 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
PRESSURE_HPA, PRESSURE_HPA,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.update_coordinator import CoordinatorEntity from homeassistant.helpers.update_coordinator import CoordinatorEntity
@ -42,7 +42,7 @@ SENSOR_TYPES = {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_ICON: None, ATTR_ICON: None,
ATTR_LABEL: ATTR_API_HUMIDITY.capitalize(), ATTR_LABEL: ATTR_API_HUMIDITY.capitalize(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_API_PRESSURE: { ATTR_API_PRESSURE: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_PRESSURE, ATTR_DEVICE_CLASS: DEVICE_CLASS_PRESSURE,

View file

@ -15,8 +15,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
@ -57,8 +57,8 @@ GEOGRAPHY_SENSORS = [
GEOGRAPHY_SENSOR_LOCALES = {"cn": "Chinese", "us": "U.S."} GEOGRAPHY_SENSOR_LOCALES = {"cn": "Chinese", "us": "U.S."}
NODE_PRO_SENSORS = [ NODE_PRO_SENSORS = [
(SENSOR_KIND_BATTERY_LEVEL, "Battery", DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE), (SENSOR_KIND_BATTERY_LEVEL, "Battery", DEVICE_CLASS_BATTERY, PERCENTAGE),
(SENSOR_KIND_HUMIDITY, "Humidity", DEVICE_CLASS_HUMIDITY, UNIT_PERCENTAGE), (SENSOR_KIND_HUMIDITY, "Humidity", DEVICE_CLASS_HUMIDITY, PERCENTAGE),
(SENSOR_KIND_TEMPERATURE, "Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS), (SENSOR_KIND_TEMPERATURE, "Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS),
] ]

View file

@ -15,10 +15,10 @@ from homeassistant.const import (
CONF_API_KEY, CONF_API_KEY,
DEGREE, DEGREE,
EVENT_HOMEASSISTANT_STOP, EVENT_HOMEASSISTANT_STOP,
PERCENTAGE,
POWER_WATT, POWER_WATT,
SPEED_MILES_PER_HOUR, SPEED_MILES_PER_HOUR,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.exceptions import ConfigEntryNotReady from homeassistant.exceptions import ConfigEntryNotReady
@ -160,18 +160,18 @@ SENSOR_TYPES = {
TYPE_EVENTRAININ: ("Event Rain", "in", TYPE_SENSOR, None), TYPE_EVENTRAININ: ("Event Rain", "in", TYPE_SENSOR, None),
TYPE_FEELSLIKE: ("Feels Like", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"), TYPE_FEELSLIKE: ("Feels Like", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
TYPE_HOURLYRAININ: ("Hourly Rain Rate", "in/hr", TYPE_SENSOR, None), TYPE_HOURLYRAININ: ("Hourly Rain Rate", "in/hr", TYPE_SENSOR, None),
TYPE_HUMIDITY10: ("Humidity 10", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY10: ("Humidity 10", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY1: ("Humidity 1", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY1: ("Humidity 1", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY2: ("Humidity 2", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY2: ("Humidity 2", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY3: ("Humidity 3", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY3: ("Humidity 3", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY4: ("Humidity 4", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY4: ("Humidity 4", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY5: ("Humidity 5", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY5: ("Humidity 5", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY6: ("Humidity 6", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY6: ("Humidity 6", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY7: ("Humidity 7", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY7: ("Humidity 7", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY8: ("Humidity 8", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY8: ("Humidity 8", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY9: ("Humidity 9", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY9: ("Humidity 9", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITY: ("Humidity", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITY: ("Humidity", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_HUMIDITYIN: ("Humidity In", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_HUMIDITYIN: ("Humidity In", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_LASTRAIN: ("Last Rain", None, TYPE_SENSOR, "timestamp"), TYPE_LASTRAIN: ("Last Rain", None, TYPE_SENSOR, "timestamp"),
TYPE_MAXDAILYGUST: ("Max Gust", SPEED_MILES_PER_HOUR, TYPE_SENSOR, None), TYPE_MAXDAILYGUST: ("Max Gust", SPEED_MILES_PER_HOUR, TYPE_SENSOR, None),
TYPE_MONTHLYRAININ: ("Monthly Rain", "in", TYPE_SENSOR, None), TYPE_MONTHLYRAININ: ("Monthly Rain", "in", TYPE_SENSOR, None),
@ -185,16 +185,16 @@ SENSOR_TYPES = {
TYPE_RELAY7: ("Relay 7", None, TYPE_BINARY_SENSOR, "connectivity"), TYPE_RELAY7: ("Relay 7", None, TYPE_BINARY_SENSOR, "connectivity"),
TYPE_RELAY8: ("Relay 8", None, TYPE_BINARY_SENSOR, "connectivity"), TYPE_RELAY8: ("Relay 8", None, TYPE_BINARY_SENSOR, "connectivity"),
TYPE_RELAY9: ("Relay 9", None, TYPE_BINARY_SENSOR, "connectivity"), TYPE_RELAY9: ("Relay 9", None, TYPE_BINARY_SENSOR, "connectivity"),
TYPE_SOILHUM10: ("Soil Humidity 10", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM10: ("Soil Humidity 10", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM1: ("Soil Humidity 1", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM1: ("Soil Humidity 1", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM2: ("Soil Humidity 2", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM2: ("Soil Humidity 2", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM3: ("Soil Humidity 3", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM3: ("Soil Humidity 3", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM4: ("Soil Humidity 4", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM4: ("Soil Humidity 4", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM5: ("Soil Humidity 5", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM5: ("Soil Humidity 5", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM6: ("Soil Humidity 6", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM6: ("Soil Humidity 6", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM7: ("Soil Humidity 7", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM7: ("Soil Humidity 7", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM8: ("Soil Humidity 8", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM8: ("Soil Humidity 8", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILHUM9: ("Soil Humidity 9", UNIT_PERCENTAGE, TYPE_SENSOR, "humidity"), TYPE_SOILHUM9: ("Soil Humidity 9", PERCENTAGE, TYPE_SENSOR, "humidity"),
TYPE_SOILTEMP10F: ("Soil Temp 10", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"), TYPE_SOILTEMP10F: ("Soil Temp 10", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
TYPE_SOILTEMP1F: ("Soil Temp 1", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"), TYPE_SOILTEMP1F: ("Soil Temp 1", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
TYPE_SOILTEMP2F: ("Soil Temp 2", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"), TYPE_SOILTEMP2F: ("Soil Temp 2", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),

View file

@ -4,7 +4,7 @@ import logging
from amcrest import AmcrestError from amcrest import AmcrestError
from homeassistant.const import CONF_NAME, CONF_SENSORS, UNIT_PERCENTAGE from homeassistant.const import CONF_NAME, CONF_SENSORS, PERCENTAGE
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -20,7 +20,7 @@ SENSOR_SDCARD = "sdcard"
# Sensor types are defined like: Name, units, icon # Sensor types are defined like: Name, units, icon
SENSORS = { SENSORS = {
SENSOR_PTZ_PRESET: ["PTZ Preset", None, "mdi:camera-iris"], SENSOR_PTZ_PRESET: ["PTZ Preset", None, "mdi:camera-iris"],
SENSOR_SDCARD: ["SD Used", UNIT_PERCENTAGE, "mdi:sd"], SENSOR_SDCARD: ["SD Used", PERCENTAGE, "mdi:sd"],
} }

View file

@ -10,11 +10,11 @@ from homeassistant.const import (
ELECTRICAL_CURRENT_AMPERE, ELECTRICAL_CURRENT_AMPERE,
ELECTRICAL_VOLT_AMPERE, ELECTRICAL_VOLT_AMPERE,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_MINUTES, TIME_MINUTES,
TIME_SECONDS, TIME_SECONDS,
UNIT_PERCENTAGE,
VOLT, VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -34,7 +34,7 @@ SENSOR_TYPES = {
"battdate": ["Battery Replaced", "", "mdi:calendar-clock"], "battdate": ["Battery Replaced", "", "mdi:calendar-clock"],
"battstat": ["Battery Status", "", "mdi:information-outline"], "battstat": ["Battery Status", "", "mdi:information-outline"],
"battv": ["Battery Voltage", VOLT, "mdi:flash"], "battv": ["Battery Voltage", VOLT, "mdi:flash"],
"bcharge": ["Battery", UNIT_PERCENTAGE, "mdi:battery"], "bcharge": ["Battery", PERCENTAGE, "mdi:battery"],
"cable": ["Cable Type", "", "mdi:ethernet-cable"], "cable": ["Cable Type", "", "mdi:ethernet-cable"],
"cumonbatt": ["Total Time on Battery", "", "mdi:timer-outline"], "cumonbatt": ["Total Time on Battery", "", "mdi:timer-outline"],
"date": ["Status Date", "", "mdi:calendar-clock"], "date": ["Status Date", "", "mdi:calendar-clock"],
@ -48,20 +48,20 @@ SENSOR_TYPES = {
"firmware": ["Firmware Version", "", "mdi:information-outline"], "firmware": ["Firmware Version", "", "mdi:information-outline"],
"hitrans": ["Transfer High", VOLT, "mdi:flash"], "hitrans": ["Transfer High", VOLT, "mdi:flash"],
"hostname": ["Hostname", "", "mdi:information-outline"], "hostname": ["Hostname", "", "mdi:information-outline"],
"humidity": ["Ambient Humidity", UNIT_PERCENTAGE, "mdi:water-percent"], "humidity": ["Ambient Humidity", PERCENTAGE, "mdi:water-percent"],
"itemp": ["Internal Temperature", TEMP_CELSIUS, "mdi:thermometer"], "itemp": ["Internal Temperature", TEMP_CELSIUS, "mdi:thermometer"],
"lastxfer": ["Last Transfer", "", "mdi:transfer"], "lastxfer": ["Last Transfer", "", "mdi:transfer"],
"linefail": ["Input Voltage Status", "", "mdi:information-outline"], "linefail": ["Input Voltage Status", "", "mdi:information-outline"],
"linefreq": ["Line Frequency", FREQUENCY_HERTZ, "mdi:information-outline"], "linefreq": ["Line Frequency", FREQUENCY_HERTZ, "mdi:information-outline"],
"linev": ["Input Voltage", VOLT, "mdi:flash"], "linev": ["Input Voltage", VOLT, "mdi:flash"],
"loadpct": ["Load", UNIT_PERCENTAGE, "mdi:gauge"], "loadpct": ["Load", PERCENTAGE, "mdi:gauge"],
"loadapnt": ["Load Apparent Power", UNIT_PERCENTAGE, "mdi:gauge"], "loadapnt": ["Load Apparent Power", PERCENTAGE, "mdi:gauge"],
"lotrans": ["Transfer Low", VOLT, "mdi:flash"], "lotrans": ["Transfer Low", VOLT, "mdi:flash"],
"mandate": ["Manufacture Date", "", "mdi:calendar"], "mandate": ["Manufacture Date", "", "mdi:calendar"],
"masterupd": ["Master Update", "", "mdi:information-outline"], "masterupd": ["Master Update", "", "mdi:information-outline"],
"maxlinev": ["Input Voltage High", VOLT, "mdi:flash"], "maxlinev": ["Input Voltage High", VOLT, "mdi:flash"],
"maxtime": ["Battery Timeout", "", "mdi:timer-off-outline"], "maxtime": ["Battery Timeout", "", "mdi:timer-off-outline"],
"mbattchg": ["Battery Shutdown", UNIT_PERCENTAGE, "mdi:battery-alert"], "mbattchg": ["Battery Shutdown", PERCENTAGE, "mdi:battery-alert"],
"minlinev": ["Input Voltage Low", VOLT, "mdi:flash"], "minlinev": ["Input Voltage Low", VOLT, "mdi:flash"],
"mintimel": ["Shutdown Time", "", "mdi:timer-outline"], "mintimel": ["Shutdown Time", "", "mdi:timer-outline"],
"model": ["Model", "", "mdi:information-outline"], "model": ["Model", "", "mdi:information-outline"],
@ -76,7 +76,7 @@ SENSOR_TYPES = {
"reg1": ["Register 1 Fault", "", "mdi:information-outline"], "reg1": ["Register 1 Fault", "", "mdi:information-outline"],
"reg2": ["Register 2 Fault", "", "mdi:information-outline"], "reg2": ["Register 2 Fault", "", "mdi:information-outline"],
"reg3": ["Register 3 Fault", "", "mdi:information-outline"], "reg3": ["Register 3 Fault", "", "mdi:information-outline"],
"retpct": ["Restore Requirement", UNIT_PERCENTAGE, "mdi:battery-alert"], "retpct": ["Restore Requirement", PERCENTAGE, "mdi:battery-alert"],
"selftest": ["Last Self Test", "", "mdi:calendar-clock"], "selftest": ["Last Self Test", "", "mdi:calendar-clock"],
"sense": ["Sensitivity", "", "mdi:information-outline"], "sense": ["Sensitivity", "", "mdi:information-outline"],
"serialno": ["Serial Number", "", "mdi:information-outline"], "serialno": ["Serial Number", "", "mdi:information-outline"],
@ -98,14 +98,14 @@ SPECIFIC_UNITS = {"ITEMP": TEMP_CELSIUS}
INFERRED_UNITS = { INFERRED_UNITS = {
" Minutes": TIME_MINUTES, " Minutes": TIME_MINUTES,
" Seconds": TIME_SECONDS, " Seconds": TIME_SECONDS,
" Percent": UNIT_PERCENTAGE, " Percent": PERCENTAGE,
" Volts": VOLT, " Volts": VOLT,
" Ampere": ELECTRICAL_CURRENT_AMPERE, " Ampere": ELECTRICAL_CURRENT_AMPERE,
" Volt-Ampere": ELECTRICAL_VOLT_AMPERE, " Volt-Ampere": ELECTRICAL_VOLT_AMPERE,
" Watts": POWER_WATT, " Watts": POWER_WATT,
" Hz": FREQUENCY_HERTZ, " Hz": FREQUENCY_HERTZ,
" C": TEMP_CELSIUS, " C": TEMP_CELSIUS,
" Percent Load Capacity": UNIT_PERCENTAGE, " Percent Load Capacity": PERCENTAGE,
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -6,10 +6,10 @@ import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
PERCENTAGE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -20,7 +20,7 @@ from . import DOMAIN, UPDATE_TOPIC
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
TEMP_UNITS = [TEMP_CELSIUS, TEMP_FAHRENHEIT] TEMP_UNITS = [TEMP_CELSIUS, TEMP_FAHRENHEIT]
PERCENT_UNITS = [UNIT_PERCENTAGE, UNIT_PERCENTAGE] PERCENT_UNITS = [PERCENTAGE, PERCENTAGE]
SALT_UNITS = ["g/L", "PPM"] SALT_UNITS = ["g/L", "PPM"]
WATT_UNITS = [POWER_WATT, POWER_WATT] WATT_UNITS = [POWER_WATT, POWER_WATT]
NO_UNITS = [None, None] NO_UNITS = [None, None]

View file

@ -10,8 +10,8 @@ from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -28,10 +28,10 @@ SENSOR_TYPES = {
"last_capture": ["Last", None, "run-fast"], "last_capture": ["Last", None, "run-fast"],
"total_cameras": ["Arlo Cameras", None, "video"], "total_cameras": ["Arlo Cameras", None, "video"],
"captured_today": ["Captured Today", None, "file-video"], "captured_today": ["Captured Today", None, "file-video"],
"battery_level": ["Battery Level", UNIT_PERCENTAGE, "battery-50"], "battery_level": ["Battery Level", PERCENTAGE, "battery-50"],
"signal_strength": ["Signal Strength", None, "signal"], "signal_strength": ["Signal Strength", None, "signal"],
"temperature": ["Temperature", TEMP_CELSIUS, "thermometer"], "temperature": ["Temperature", TEMP_CELSIUS, "thermometer"],
"humidity": ["Humidity", UNIT_PERCENTAGE, "water-percent"], "humidity": ["Humidity", PERCENTAGE, "water-percent"],
"air_quality": ["Air Quality", CONCENTRATION_PARTS_PER_MILLION, "biohazard"], "air_quality": ["Air Quality", CONCENTRATION_PARTS_PER_MILLION, "biohazard"],
} }

View file

@ -2,11 +2,11 @@
from homeassistant.const import ( from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
PRESSURE_BAR, PRESSURE_BAR,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
) )
from . import DOMAIN, AtagEntity from . import DOMAIN, AtagEntity
@ -67,7 +67,7 @@ class AtagSensor(AtagEntity):
PRESSURE_BAR, PRESSURE_BAR,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE, PERCENTAGE,
TIME_HOURS, TIME_HOURS,
]: ]:
return self.coordinator.data[self._id].measure return self.coordinator.data[self._id].measure

View file

@ -4,7 +4,7 @@ import logging
from august.activity import ActivityType from august.activity import ActivityType
from homeassistant.components.sensor import DEVICE_CLASS_BATTERY from homeassistant.components.sensor import DEVICE_CLASS_BATTERY
from homeassistant.const import ATTR_ENTITY_PICTURE, UNIT_PERCENTAGE from homeassistant.const import ATTR_ENTITY_PICTURE, PERCENTAGE
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.helpers.entity_registry import async_get_registry from homeassistant.helpers.entity_registry import async_get_registry
@ -244,7 +244,7 @@ class AugustBatterySensor(AugustEntityMixin, Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_class(self): def device_class(self):

View file

@ -14,8 +14,8 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
API_CO2 = "carbon_dioxide" API_CO2 = "carbon_dioxide"
@ -49,14 +49,14 @@ SENSOR_TYPES = {
API_SCORE: { API_SCORE: {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:blur", ATTR_ICON: "mdi:blur",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_LABEL: "Awair score", ATTR_LABEL: "Awair score",
ATTR_UNIQUE_ID: "score", # matches legacy format ATTR_UNIQUE_ID: "score", # matches legacy format
}, },
API_HUMID: { API_HUMID: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_ICON: None, ATTR_ICON: None,
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_LABEL: "Humidity", ATTR_LABEL: "Humidity",
ATTR_UNIQUE_ID: "HUMID", # matches legacy format ATTR_UNIQUE_ID: "HUMID", # matches legacy format
}, },

View file

@ -11,8 +11,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -25,8 +25,8 @@ DEFAULT_NAME = "BeeWi SmartClim"
# Sensor config # Sensor config
SENSOR_TYPES = [ SENSOR_TYPES = [
[DEVICE_CLASS_TEMPERATURE, "Temperature", TEMP_CELSIUS], [DEVICE_CLASS_TEMPERATURE, "Temperature", TEMP_CELSIUS],
[DEVICE_CLASS_HUMIDITY, "Humidity", UNIT_PERCENTAGE], [DEVICE_CLASS_HUMIDITY, "Humidity", PERCENTAGE],
[DEVICE_CLASS_BATTERY, "Battery", UNIT_PERCENTAGE], [DEVICE_CLASS_BATTERY, "Battery", PERCENTAGE],
] ]
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -6,9 +6,9 @@ import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -30,7 +30,7 @@ SENSOR_TYPES = [
# Sensor units - these do not currently align with the API documentation # Sensor units - these do not currently align with the API documentation
SENSOR_UNITS_IMPERIAL = { SENSOR_UNITS_IMPERIAL = {
"Temperature": TEMP_FAHRENHEIT, "Temperature": TEMP_FAHRENHEIT,
"Humidity": UNIT_PERCENTAGE, "Humidity": PERCENTAGE,
"Pressure": "inHg", "Pressure": "inHg",
"Luminance": "cd/m²", "Luminance": "cd/m²",
"Voltage": "mV", "Voltage": "mV",
@ -39,7 +39,7 @@ SENSOR_UNITS_IMPERIAL = {
# Metric units # Metric units
SENSOR_UNITS_METRIC = { SENSOR_UNITS_METRIC = {
"Temperature": TEMP_CELSIUS, "Temperature": TEMP_CELSIUS,
"Humidity": UNIT_PERCENTAGE, "Humidity": PERCENTAGE,
"Pressure": "mbar", "Pressure": "mbar",
"Luminance": "cd/m²", "Luminance": "cd/m²",
"Voltage": "mV", "Voltage": "mV",

View file

@ -11,8 +11,8 @@ from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
CONF_NAME, CONF_NAME,
PERCENTAGE,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -49,7 +49,7 @@ SENSOR_HUMID = "humidity"
SENSOR_PRESS = "pressure" SENSOR_PRESS = "pressure"
SENSOR_TYPES = { SENSOR_TYPES = {
SENSOR_TEMP: ["Temperature", None], SENSOR_TEMP: ["Temperature", None],
SENSOR_HUMID: ["Humidity", UNIT_PERCENTAGE], SENSOR_HUMID: ["Humidity", PERCENTAGE],
SENSOR_PRESS: ["Pressure", "mb"], SENSOR_PRESS: ["Pressure", "mb"],
} }
DEFAULT_MONITORED = [SENSOR_TEMP, SENSOR_HUMID, SENSOR_PRESS] DEFAULT_MONITORED = [SENSOR_TEMP, SENSOR_HUMID, SENSOR_PRESS]

View file

@ -11,8 +11,8 @@ from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
CONF_NAME, CONF_NAME,
PERCENTAGE,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -55,10 +55,10 @@ SENSOR_GAS = "gas"
SENSOR_AQ = "airquality" SENSOR_AQ = "airquality"
SENSOR_TYPES = { SENSOR_TYPES = {
SENSOR_TEMP: ["Temperature", None], SENSOR_TEMP: ["Temperature", None],
SENSOR_HUMID: ["Humidity", UNIT_PERCENTAGE], SENSOR_HUMID: ["Humidity", PERCENTAGE],
SENSOR_PRESS: ["Pressure", "mb"], SENSOR_PRESS: ["Pressure", "mb"],
SENSOR_GAS: ["Gas Resistance", "Ohms"], SENSOR_GAS: ["Gas Resistance", "Ohms"],
SENSOR_AQ: ["Air Quality", UNIT_PERCENTAGE], SENSOR_AQ: ["Air Quality", PERCENTAGE],
} }
DEFAULT_MONITORED = [SENSOR_TEMP, SENSOR_HUMID, SENSOR_PRESS, SENSOR_AQ] DEFAULT_MONITORED = [SENSOR_TEMP, SENSOR_HUMID, SENSOR_PRESS, SENSOR_AQ]
OVERSAMPLING_VALUES = {0, 1, 2, 4, 8, 16} OVERSAMPLING_VALUES = {0, 1, 2, 4, 8, 16}

View file

@ -8,8 +8,8 @@ from homeassistant.const import (
CONF_UNIT_SYSTEM_IMPERIAL, CONF_UNIT_SYSTEM_IMPERIAL,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
LENGTH_MILES, LENGTH_MILES,
PERCENTAGE,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
VOLUME_GALLONS, VOLUME_GALLONS,
VOLUME_LITERS, VOLUME_LITERS,
) )
@ -31,7 +31,7 @@ ATTR_TO_HA_METRIC = {
"charging_time_remaining": ["mdi:update", TIME_HOURS], "charging_time_remaining": ["mdi:update", TIME_HOURS],
"charging_status": ["mdi:battery-charging", None], "charging_status": ["mdi:battery-charging", None],
# No icon as this is dealt with directly as a special case in icon() # No icon as this is dealt with directly as a special case in icon()
"charging_level_hv": [None, UNIT_PERCENTAGE], "charging_level_hv": [None, PERCENTAGE],
} }
ATTR_TO_HA_IMPERIAL = { ATTR_TO_HA_IMPERIAL = {
@ -44,7 +44,7 @@ ATTR_TO_HA_IMPERIAL = {
"charging_time_remaining": ["mdi:update", TIME_HOURS], "charging_time_remaining": ["mdi:update", TIME_HOURS],
"charging_status": ["mdi:battery-charging", None], "charging_status": ["mdi:battery-charging", None],
# No icon as this is dealt with directly as a special case in icon() # No icon as this is dealt with directly as a special case in icon()
"charging_level_hv": [None, UNIT_PERCENTAGE], "charging_level_hv": [None, PERCENTAGE],
} }

View file

@ -21,9 +21,9 @@ from homeassistant.const import (
CONF_NAME, CONF_NAME,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
LENGTH_METERS, LENGTH_METERS,
PERCENTAGE,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -71,7 +71,7 @@ SENSOR_TYPES = {
"press_msl": ["Pressure msl", "msl"], "press_msl": ["Pressure msl", "msl"],
"press_tend": ["Pressure Tend", None], "press_tend": ["Pressure Tend", None],
"rain_trace": ["Rain Today", "mm"], "rain_trace": ["Rain Today", "mm"],
"rel_hum": ["Relative Humidity", UNIT_PERCENTAGE], "rel_hum": ["Relative Humidity", PERCENTAGE],
"sea_state": ["Sea State", None], "sea_state": ["Sea State", None],
"swell_dir_worded": ["Swell Direction", None], "swell_dir_worded": ["Swell Direction", None],
"swell_height": ["Swell Height", LENGTH_METERS], "swell_height": ["Swell Height", LENGTH_METERS],

View file

@ -9,7 +9,7 @@ from homeassistant.components.sensor import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PLATFORM_SCHEMA, PLATFORM_SCHEMA,
) )
from homeassistant.const import CONF_HOST, TEMP_CELSIUS, UNIT_PERCENTAGE from homeassistant.const import CONF_HOST, PERCENTAGE, TEMP_CELSIUS
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers import config_validation as cv from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -22,7 +22,7 @@ _LOGGER = logging.getLogger(__name__)
SENSOR_TYPES = { SENSOR_TYPES = {
"temperature": ("Temperature", TEMP_CELSIUS, DEVICE_CLASS_TEMPERATURE), "temperature": ("Temperature", TEMP_CELSIUS, DEVICE_CLASS_TEMPERATURE),
"air_quality": ("Air Quality", None, None), "air_quality": ("Air Quality", None, None),
"humidity": ("Humidity", UNIT_PERCENTAGE, DEVICE_CLASS_HUMIDITY), "humidity": ("Humidity", PERCENTAGE, DEVICE_CLASS_HUMIDITY),
"light": ("Light", None, DEVICE_CLASS_ILLUMINANCE), "light": ("Light", None, DEVICE_CLASS_ILLUMINANCE),
"noise": ("Noise", None, None), "noise": ("Noise", None, None),
} }

View file

@ -1,5 +1,5 @@
"""Constants for Brother integration.""" """Constants for Brother integration."""
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
ATTR_BELT_UNIT_REMAINING_LIFE = "belt_unit_remaining_life" ATTR_BELT_UNIT_REMAINING_LIFE = "belt_unit_remaining_life"
ATTR_BLACK_DRUM_COUNTER = "black_drum_counter" ATTR_BLACK_DRUM_COUNTER = "black_drum_counter"
@ -75,92 +75,92 @@ SENSOR_TYPES = {
ATTR_DRUM_REMAINING_LIFE: { ATTR_DRUM_REMAINING_LIFE: {
ATTR_ICON: "mdi:chart-donut", ATTR_ICON: "mdi:chart-donut",
ATTR_LABEL: ATTR_DRUM_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_DRUM_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_BLACK_DRUM_REMAINING_LIFE: { ATTR_BLACK_DRUM_REMAINING_LIFE: {
ATTR_ICON: "mdi:chart-donut", ATTR_ICON: "mdi:chart-donut",
ATTR_LABEL: ATTR_BLACK_DRUM_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_BLACK_DRUM_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_CYAN_DRUM_REMAINING_LIFE: { ATTR_CYAN_DRUM_REMAINING_LIFE: {
ATTR_ICON: "mdi:chart-donut", ATTR_ICON: "mdi:chart-donut",
ATTR_LABEL: ATTR_CYAN_DRUM_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_CYAN_DRUM_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_MAGENTA_DRUM_REMAINING_LIFE: { ATTR_MAGENTA_DRUM_REMAINING_LIFE: {
ATTR_ICON: "mdi:chart-donut", ATTR_ICON: "mdi:chart-donut",
ATTR_LABEL: ATTR_MAGENTA_DRUM_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_MAGENTA_DRUM_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_YELLOW_DRUM_REMAINING_LIFE: { ATTR_YELLOW_DRUM_REMAINING_LIFE: {
ATTR_ICON: "mdi:chart-donut", ATTR_ICON: "mdi:chart-donut",
ATTR_LABEL: ATTR_YELLOW_DRUM_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_YELLOW_DRUM_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_BELT_UNIT_REMAINING_LIFE: { ATTR_BELT_UNIT_REMAINING_LIFE: {
ATTR_ICON: "mdi:current-ac", ATTR_ICON: "mdi:current-ac",
ATTR_LABEL: ATTR_BELT_UNIT_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_BELT_UNIT_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_FUSER_REMAINING_LIFE: { ATTR_FUSER_REMAINING_LIFE: {
ATTR_ICON: "mdi:water-outline", ATTR_ICON: "mdi:water-outline",
ATTR_LABEL: ATTR_FUSER_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_FUSER_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_LASER_REMAINING_LIFE: { ATTR_LASER_REMAINING_LIFE: {
ATTR_ICON: "mdi:spotlight-beam", ATTR_ICON: "mdi:spotlight-beam",
ATTR_LABEL: ATTR_LASER_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_LASER_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_PF_KIT_1_REMAINING_LIFE: { ATTR_PF_KIT_1_REMAINING_LIFE: {
ATTR_ICON: "mdi:printer-3d", ATTR_ICON: "mdi:printer-3d",
ATTR_LABEL: ATTR_PF_KIT_1_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_PF_KIT_1_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_PF_KIT_MP_REMAINING_LIFE: { ATTR_PF_KIT_MP_REMAINING_LIFE: {
ATTR_ICON: "mdi:printer-3d", ATTR_ICON: "mdi:printer-3d",
ATTR_LABEL: ATTR_PF_KIT_MP_REMAINING_LIFE.replace("_", " ").title(), ATTR_LABEL: ATTR_PF_KIT_MP_REMAINING_LIFE.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_BLACK_TONER_REMAINING: { ATTR_BLACK_TONER_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_BLACK_TONER_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_BLACK_TONER_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_CYAN_TONER_REMAINING: { ATTR_CYAN_TONER_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_CYAN_TONER_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_CYAN_TONER_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_MAGENTA_TONER_REMAINING: { ATTR_MAGENTA_TONER_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_MAGENTA_TONER_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_MAGENTA_TONER_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_YELLOW_TONER_REMAINING: { ATTR_YELLOW_TONER_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_YELLOW_TONER_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_YELLOW_TONER_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_BLACK_INK_REMAINING: { ATTR_BLACK_INK_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_BLACK_INK_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_BLACK_INK_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_CYAN_INK_REMAINING: { ATTR_CYAN_INK_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_CYAN_INK_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_CYAN_INK_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_MAGENTA_INK_REMAINING: { ATTR_MAGENTA_INK_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_MAGENTA_INK_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_MAGENTA_INK_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_YELLOW_INK_REMAINING: { ATTR_YELLOW_INK_REMAINING: {
ATTR_ICON: "mdi:printer-3d-nozzle", ATTR_ICON: "mdi:printer-3d-nozzle",
ATTR_LABEL: ATTR_YELLOW_INK_REMAINING.replace("_", " ").title(), ATTR_LABEL: ATTR_YELLOW_INK_REMAINING.replace("_", " ").title(),
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
}, },
ATTR_UPTIME: {ATTR_ICON: None, ATTR_LABEL: ATTR_UPTIME.title(), ATTR_UNIT: None}, ATTR_UPTIME: {ATTR_ICON: None, ATTR_LABEL: ATTR_UPTIME.title(), ATTR_UNIT: None},
} }

View file

@ -30,10 +30,10 @@ from homeassistant.const import (
DEGREE, DEGREE,
IRRADIATION_WATTS_PER_SQUARE_METER, IRRADIATION_WATTS_PER_SQUARE_METER,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
PERCENTAGE,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -71,7 +71,7 @@ SENSOR_TYPES = {
"symbol": ["Symbol", None, None], "symbol": ["Symbol", None, None],
# new in json api (>1.0.0): # new in json api (>1.0.0):
"feeltemperature": ["Feel temperature", TEMP_CELSIUS, "mdi:thermometer"], "feeltemperature": ["Feel temperature", TEMP_CELSIUS, "mdi:thermometer"],
"humidity": ["Humidity", UNIT_PERCENTAGE, "mdi:water-percent"], "humidity": ["Humidity", PERCENTAGE, "mdi:water-percent"],
"temperature": ["Temperature", TEMP_CELSIUS, "mdi:thermometer"], "temperature": ["Temperature", TEMP_CELSIUS, "mdi:thermometer"],
"groundtemperature": ["Ground temperature", TEMP_CELSIUS, "mdi:thermometer"], "groundtemperature": ["Ground temperature", TEMP_CELSIUS, "mdi:thermometer"],
"windspeed": ["Wind speed", SPEED_KILOMETERS_PER_HOUR, "mdi:weather-windy"], "windspeed": ["Wind speed", SPEED_KILOMETERS_PER_HOUR, "mdi:weather-windy"],
@ -124,16 +124,16 @@ SENSOR_TYPES = {
"maxrain_3d": ["Maximum rain 3d", "mm", "mdi:weather-pouring"], "maxrain_3d": ["Maximum rain 3d", "mm", "mdi:weather-pouring"],
"maxrain_4d": ["Maximum rain 4d", "mm", "mdi:weather-pouring"], "maxrain_4d": ["Maximum rain 4d", "mm", "mdi:weather-pouring"],
"maxrain_5d": ["Maximum rain 5d", "mm", "mdi:weather-pouring"], "maxrain_5d": ["Maximum rain 5d", "mm", "mdi:weather-pouring"],
"rainchance_1d": ["Rainchance 1d", UNIT_PERCENTAGE, "mdi:weather-pouring"], "rainchance_1d": ["Rainchance 1d", PERCENTAGE, "mdi:weather-pouring"],
"rainchance_2d": ["Rainchance 2d", UNIT_PERCENTAGE, "mdi:weather-pouring"], "rainchance_2d": ["Rainchance 2d", PERCENTAGE, "mdi:weather-pouring"],
"rainchance_3d": ["Rainchance 3d", UNIT_PERCENTAGE, "mdi:weather-pouring"], "rainchance_3d": ["Rainchance 3d", PERCENTAGE, "mdi:weather-pouring"],
"rainchance_4d": ["Rainchance 4d", UNIT_PERCENTAGE, "mdi:weather-pouring"], "rainchance_4d": ["Rainchance 4d", PERCENTAGE, "mdi:weather-pouring"],
"rainchance_5d": ["Rainchance 5d", UNIT_PERCENTAGE, "mdi:weather-pouring"], "rainchance_5d": ["Rainchance 5d", PERCENTAGE, "mdi:weather-pouring"],
"sunchance_1d": ["Sunchance 1d", UNIT_PERCENTAGE, "mdi:weather-partly-cloudy"], "sunchance_1d": ["Sunchance 1d", PERCENTAGE, "mdi:weather-partly-cloudy"],
"sunchance_2d": ["Sunchance 2d", UNIT_PERCENTAGE, "mdi:weather-partly-cloudy"], "sunchance_2d": ["Sunchance 2d", PERCENTAGE, "mdi:weather-partly-cloudy"],
"sunchance_3d": ["Sunchance 3d", UNIT_PERCENTAGE, "mdi:weather-partly-cloudy"], "sunchance_3d": ["Sunchance 3d", PERCENTAGE, "mdi:weather-partly-cloudy"],
"sunchance_4d": ["Sunchance 4d", UNIT_PERCENTAGE, "mdi:weather-partly-cloudy"], "sunchance_4d": ["Sunchance 4d", PERCENTAGE, "mdi:weather-partly-cloudy"],
"sunchance_5d": ["Sunchance 5d", UNIT_PERCENTAGE, "mdi:weather-partly-cloudy"], "sunchance_5d": ["Sunchance 5d", PERCENTAGE, "mdi:weather-partly-cloudy"],
"windforce_1d": ["Wind force 1d", "Bft", "mdi:weather-windy"], "windforce_1d": ["Wind force 1d", "Bft", "mdi:weather-windy"],
"windforce_2d": ["Wind force 2d", "Bft", "mdi:weather-windy"], "windforce_2d": ["Wind force 2d", "Bft", "mdi:weather-windy"],
"windforce_3d": ["Wind force 3d", "Bft", "mdi:weather-windy"], "windforce_3d": ["Wind force 3d", "Bft", "mdi:weather-windy"],

View file

@ -1,7 +1,7 @@
"""Support for Canary sensors.""" """Support for Canary sensors."""
from canary.api import SensorType from canary.api import SensorType
from homeassistant.const import TEMP_CELSIUS, UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE, TEMP_CELSIUS
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.helpers.icon import icon_for_battery_level from homeassistant.helpers.icon import icon_for_battery_level
@ -21,10 +21,10 @@ CANARY_FLEX = "Canary Flex"
# sensor type name, unit_of_measurement, icon # sensor type name, unit_of_measurement, icon
SENSOR_TYPES = [ SENSOR_TYPES = [
["temperature", TEMP_CELSIUS, "mdi:thermometer", [CANARY_PRO]], ["temperature", TEMP_CELSIUS, "mdi:thermometer", [CANARY_PRO]],
["humidity", UNIT_PERCENTAGE, "mdi:water-percent", [CANARY_PRO]], ["humidity", PERCENTAGE, "mdi:water-percent", [CANARY_PRO]],
["air_quality", None, "mdi:weather-windy", [CANARY_PRO]], ["air_quality", None, "mdi:weather-windy", [CANARY_PRO]],
["wifi", "dBm", "mdi:wifi", [CANARY_FLEX]], ["wifi", "dBm", "mdi:wifi", [CANARY_FLEX]],
["battery", UNIT_PERCENTAGE, "mdi:battery-50", [CANARY_FLEX]], ["battery", PERCENTAGE, "mdi:battery-50", [CANARY_FLEX]],
] ]
STATE_AIR_QUALITY_NORMAL = "normal" STATE_AIR_QUALITY_NORMAL = "normal"

View file

@ -18,7 +18,7 @@ from homeassistant.const import (
CONF_FOR, CONF_FOR,
CONF_PLATFORM, CONF_PLATFORM,
CONF_TYPE, CONF_TYPE,
UNIT_PERCENTAGE, PERCENTAGE,
) )
from homeassistant.core import CALLBACK_TYPE, HomeAssistant from homeassistant.core import CALLBACK_TYPE, HomeAssistant
from homeassistant.helpers import config_validation as cv, entity_registry from homeassistant.helpers import config_validation as cv, entity_registry
@ -178,7 +178,7 @@ async def async_get_trigger_capabilities(hass: HomeAssistant, config):
if trigger_type == "current_temperature_changed": if trigger_type == "current_temperature_changed":
unit_of_measurement = hass.config.units.temperature_unit unit_of_measurement = hass.config.units.temperature_unit
else: else:
unit_of_measurement = UNIT_PERCENTAGE unit_of_measurement = PERCENTAGE
return { return {
"extra_fields": vol.Schema( "extra_fields": vol.Schema(

View file

@ -29,11 +29,11 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_DAYS, TIME_DAYS,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -79,7 +79,7 @@ SENSOR_TYPES = {
ATTR_CURRENT_HUMIDITY: { ATTR_CURRENT_HUMIDITY: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_LABEL: "Inside Humidity", ATTR_LABEL: "Inside Humidity",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:water-percent", ATTR_ICON: "mdi:water-percent",
ATTR_ID: SENSOR_HUMIDITY_EXTRACT, ATTR_ID: SENSOR_HUMIDITY_EXTRACT,
}, },
@ -94,7 +94,7 @@ SENSOR_TYPES = {
ATTR_OUTSIDE_HUMIDITY: { ATTR_OUTSIDE_HUMIDITY: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_LABEL: "Outside Humidity", ATTR_LABEL: "Outside Humidity",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:water-percent", ATTR_ICON: "mdi:water-percent",
ATTR_ID: SENSOR_HUMIDITY_OUTDOOR, ATTR_ID: SENSOR_HUMIDITY_OUTDOOR,
}, },
@ -109,7 +109,7 @@ SENSOR_TYPES = {
ATTR_SUPPLY_HUMIDITY: { ATTR_SUPPLY_HUMIDITY: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_LABEL: "Supply Humidity", ATTR_LABEL: "Supply Humidity",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:water-percent", ATTR_ICON: "mdi:water-percent",
ATTR_ID: SENSOR_HUMIDITY_SUPPLY, ATTR_ID: SENSOR_HUMIDITY_SUPPLY,
}, },
@ -123,7 +123,7 @@ SENSOR_TYPES = {
ATTR_SUPPLY_FAN_DUTY: { ATTR_SUPPLY_FAN_DUTY: {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_LABEL: "Supply Fan Duty", ATTR_LABEL: "Supply Fan Duty",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:fan", ATTR_ICON: "mdi:fan",
ATTR_ID: SENSOR_FAN_SUPPLY_DUTY, ATTR_ID: SENSOR_FAN_SUPPLY_DUTY,
}, },
@ -137,7 +137,7 @@ SENSOR_TYPES = {
ATTR_EXHAUST_FAN_DUTY: { ATTR_EXHAUST_FAN_DUTY: {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_LABEL: "Exhaust Fan Duty", ATTR_LABEL: "Exhaust Fan Duty",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:fan", ATTR_ICON: "mdi:fan",
ATTR_ID: SENSOR_FAN_EXHAUST_DUTY, ATTR_ID: SENSOR_FAN_EXHAUST_DUTY,
}, },
@ -152,7 +152,7 @@ SENSOR_TYPES = {
ATTR_EXHAUST_HUMIDITY: { ATTR_EXHAUST_HUMIDITY: {
ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, ATTR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
ATTR_LABEL: "Exhaust Humidity", ATTR_LABEL: "Exhaust Humidity",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:water-percent", ATTR_ICON: "mdi:water-percent",
ATTR_ID: SENSOR_HUMIDITY_EXHAUST, ATTR_ID: SENSOR_HUMIDITY_EXHAUST,
}, },
@ -173,7 +173,7 @@ SENSOR_TYPES = {
ATTR_BYPASS_STATE: { ATTR_BYPASS_STATE: {
ATTR_DEVICE_CLASS: None, ATTR_DEVICE_CLASS: None,
ATTR_LABEL: "Bypass State", ATTR_LABEL: "Bypass State",
ATTR_UNIT: UNIT_PERCENTAGE, ATTR_UNIT: PERCENTAGE,
ATTR_ICON: "mdi:camera-iris", ATTR_ICON: "mdi:camera-iris",
ATTR_ID: SENSOR_BYPASS_STATE, ATTR_ID: SENSOR_BYPASS_STATE,
}, },

View file

@ -6,7 +6,7 @@ import logging
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import CONF_HOST, CONF_PORT, UNIT_PERCENTAGE from homeassistant.const import CONF_HOST, CONF_PORT, PERCENTAGE
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -268,7 +268,7 @@ class MarkerSensor(Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_state_attributes(self): def device_state_attributes(self):

View file

@ -9,9 +9,9 @@ from homeassistant.const import (
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
PERCENTAGE,
POWER_KILO_WATT, POWER_KILO_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
ATTR_TARGET_TEMPERATURE = "target_temperature" ATTR_TARGET_TEMPERATURE = "target_temperature"
@ -48,13 +48,13 @@ SENSOR_TYPES = {
CONF_NAME: "Humidity", CONF_NAME: "Humidity",
CONF_TYPE: SENSOR_TYPE_HUMIDITY, CONF_TYPE: SENSOR_TYPE_HUMIDITY,
CONF_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, CONF_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
CONF_UNIT_OF_MEASUREMENT: UNIT_PERCENTAGE, CONF_UNIT_OF_MEASUREMENT: PERCENTAGE,
}, },
ATTR_TARGET_HUMIDITY: { ATTR_TARGET_HUMIDITY: {
CONF_NAME: "Target Humidity", CONF_NAME: "Target Humidity",
CONF_TYPE: SENSOR_TYPE_HUMIDITY, CONF_TYPE: SENSOR_TYPE_HUMIDITY,
CONF_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, CONF_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
CONF_UNIT_OF_MEASUREMENT: UNIT_PERCENTAGE, CONF_UNIT_OF_MEASUREMENT: PERCENTAGE,
}, },
ATTR_TOTAL_POWER: { ATTR_TOTAL_POWER: {
CONF_NAME: "Total Power Consumption", CONF_NAME: "Total Power Consumption",

View file

@ -7,8 +7,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -48,22 +48,22 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
], ],
[ [
"Danfoss Air Remaining Filter", "Danfoss Air Remaining Filter",
UNIT_PERCENTAGE, PERCENTAGE,
ReadCommand.filterPercent, ReadCommand.filterPercent,
None, None,
], ],
[ [
"Danfoss Air Humidity", "Danfoss Air Humidity",
UNIT_PERCENTAGE, PERCENTAGE,
ReadCommand.humidity, ReadCommand.humidity,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
], ],
["Danfoss Air Fan Step", UNIT_PERCENTAGE, ReadCommand.fan_step, None], ["Danfoss Air Fan Step", PERCENTAGE, ReadCommand.fan_step, None],
["Danfoss Air Exhaust Fan Speed", "RPM", ReadCommand.exhaust_fan_speed, None], ["Danfoss Air Exhaust Fan Speed", "RPM", ReadCommand.exhaust_fan_speed, None],
["Danfoss Air Supply Fan Speed", "RPM", ReadCommand.supply_fan_speed, None], ["Danfoss Air Supply Fan Speed", "RPM", ReadCommand.supply_fan_speed, None],
[ [
"Danfoss Air Dial Battery", "Danfoss Air Dial Battery",
UNIT_PERCENTAGE, PERCENTAGE,
ReadCommand.battery_percent, ReadCommand.battery_percent,
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
], ],

View file

@ -18,13 +18,13 @@ from homeassistant.const import (
DEGREE, DEGREE,
LENGTH_CENTIMETERS, LENGTH_CENTIMETERS,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
PERCENTAGE,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
SPEED_METERS_PER_SECOND, SPEED_METERS_PER_SECOND,
SPEED_MILES_PER_HOUR, SPEED_MILES_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
UV_INDEX, UV_INDEX,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -119,11 +119,11 @@ SENSOR_TYPES = {
], ],
"precip_probability": [ "precip_probability": [
"Precip Probability", "Precip Probability",
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:water-percent", "mdi:water-percent",
["currently", "minutely", "hourly", "daily"], ["currently", "minutely", "hourly", "daily"],
], ],
@ -199,21 +199,21 @@ SENSOR_TYPES = {
], ],
"cloud_cover": [ "cloud_cover": [
"Cloud Coverage", "Cloud Coverage",
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:weather-partly-cloudy", "mdi:weather-partly-cloudy",
["currently", "hourly", "daily"], ["currently", "hourly", "daily"],
], ],
"humidity": [ "humidity": [
"Humidity", "Humidity",
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:water-percent", "mdi:water-percent",
["currently", "hourly", "daily"], ["currently", "hourly", "daily"],
], ],

View file

@ -22,10 +22,10 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
PERCENTAGE,
POWER_WATT, POWER_WATT,
PRESSURE_HPA, PRESSURE_HPA,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.dispatcher import ( from homeassistant.helpers.dispatcher import (
@ -59,7 +59,7 @@ ICON = {
UNIT_OF_MEASUREMENT = { UNIT_OF_MEASUREMENT = {
Consumption: ENERGY_KILO_WATT_HOUR, Consumption: ENERGY_KILO_WATT_HOUR,
Humidity: UNIT_PERCENTAGE, Humidity: PERCENTAGE,
LightLevel: "lx", LightLevel: "lx",
Power: POWER_WATT, Power: POWER_WATT,
Pressure: PRESSURE_HPA, Pressure: PRESSURE_HPA,
@ -234,7 +234,7 @@ class DeconzBattery(DeconzDevice):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement of this entity.""" """Return the unit of measurement of this entity."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_state_attributes(self): def device_state_attributes(self):

View file

@ -3,8 +3,8 @@ from homeassistant.const import (
ATTR_BATTERY_LEVEL, ATTR_BATTERY_LEVEL,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -28,7 +28,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
"Outside Humidity", "Outside Humidity",
54, 54,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
UNIT_PERCENTAGE, PERCENTAGE,
None, None,
), ),
] ]

View file

@ -9,8 +9,8 @@ from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
CONF_NAME, CONF_NAME,
PERCENTAGE,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -33,7 +33,7 @@ SENSOR_TEMPERATURE = "temperature"
SENSOR_HUMIDITY = "humidity" SENSOR_HUMIDITY = "humidity"
SENSOR_TYPES = { SENSOR_TYPES = {
SENSOR_TEMPERATURE: ["Temperature", None], SENSOR_TEMPERATURE: ["Temperature", None],
SENSOR_HUMIDITY: ["Humidity", UNIT_PERCENTAGE], SENSOR_HUMIDITY: ["Humidity", PERCENTAGE],
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -6,7 +6,7 @@ import re
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import CONF_SENSORS, DATA_GIGABYTES, UNIT_PERCENTAGE from homeassistant.const import CONF_SENSORS, DATA_GIGABYTES, PERCENTAGE
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -27,7 +27,7 @@ SENSORS = {
SENSOR_SIGNAL: ( SENSOR_SIGNAL: (
"signal strength", "signal strength",
"Signal Strength", "Signal Strength",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:signal", "mdi:signal",
), ),
SENSOR_SMS_UNREAD: ("sms unread", "SMS unread", "", "mdi:message-text-outline"), SENSOR_SMS_UNREAD: ("sms unread", "SMS unread", "", "mdi:message-text-outline"),

View file

@ -4,7 +4,7 @@ import logging
from libpurecool.dyson_pure_cool import DysonPureCool from libpurecool.dyson_pure_cool import DysonPureCool
from libpurecool.dyson_pure_cool_link import DysonPureCoolLink from libpurecool.dyson_pure_cool_link import DysonPureCoolLink
from homeassistant.const import STATE_OFF, TEMP_CELSIUS, TIME_HOURS, UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE, STATE_OFF, TEMP_CELSIUS, TIME_HOURS
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from . import DYSON_DEVICES from . import DYSON_DEVICES
@ -13,7 +13,7 @@ SENSOR_UNITS = {
"air_quality": None, "air_quality": None,
"dust": None, "dust": None,
"filter_life": TIME_HOURS, "filter_life": TIME_HOURS,
"humidity": UNIT_PERCENTAGE, "humidity": PERCENTAGE,
} }
SENSOR_ICONS = { SENSOR_ICONS = {

View file

@ -17,8 +17,8 @@ from homeassistant.const import (
CONF_PASSWORD, CONF_PASSWORD,
CONF_USERNAME, CONF_USERNAME,
DATA_GIGABITS, DATA_GIGABITS,
PERCENTAGE,
TIME_DAYS, TIME_DAYS,
UNIT_PERCENTAGE,
) )
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -36,7 +36,7 @@ SCAN_INTERVAL = timedelta(minutes=15)
MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=15) MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=15)
SENSOR_TYPES = { SENSOR_TYPES = {
"usage": ["Usage", UNIT_PERCENTAGE, "mdi:percent"], "usage": ["Usage", PERCENTAGE, "mdi:percent"],
"balance": ["Balance", PRICE, "mdi:cash-usd"], "balance": ["Balance", PRICE, "mdi:cash-usd"],
"limit": ["Data limit", DATA_GIGABITS, "mdi:download"], "limit": ["Data limit", DATA_GIGABITS, "mdi:download"],
"days_left": ["Days left", TIME_DAYS, "mdi:calendar-today"], "days_left": ["Days left", TIME_DAYS, "mdi:calendar-today"],

View file

@ -4,8 +4,8 @@ from pyecobee.const import ECOBEE_STATE_CALIBRATING, ECOBEE_STATE_UNKNOWN
from homeassistant.const import ( from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -13,7 +13,7 @@ from .const import _LOGGER, DOMAIN, ECOBEE_MODEL_TO_NAME, MANUFACTURER
SENSOR_TYPES = { SENSOR_TYPES = {
"temperature": ["Temperature", TEMP_FAHRENHEIT], "temperature": ["Temperature", TEMP_FAHRENHEIT],
"humidity": ["Humidity", UNIT_PERCENTAGE], "humidity": ["Humidity", PERCENTAGE],
} }

View file

@ -1,7 +1,7 @@
"""Support for Eight Sleep sensors.""" """Support for Eight Sleep sensors."""
import logging import logging
from homeassistant.const import TEMP_CELSIUS, TEMP_FAHRENHEIT, UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE, TEMP_CELSIUS, TEMP_FAHRENHEIT
from . import ( from . import (
CONF_SENSORS, CONF_SENSORS,
@ -20,9 +20,9 @@ ATTR_AVG_RESP_RATE = "Average Respiratory Rate"
ATTR_HEART_RATE = "Heart Rate" ATTR_HEART_RATE = "Heart Rate"
ATTR_AVG_HEART_RATE = "Average Heart Rate" ATTR_AVG_HEART_RATE = "Average Heart Rate"
ATTR_SLEEP_DUR = "Time Slept" ATTR_SLEEP_DUR = "Time Slept"
ATTR_LIGHT_PERC = f"Light Sleep {UNIT_PERCENTAGE}" ATTR_LIGHT_PERC = f"Light Sleep {PERCENTAGE}"
ATTR_DEEP_PERC = f"Deep Sleep {UNIT_PERCENTAGE}" ATTR_DEEP_PERC = f"Deep Sleep {PERCENTAGE}"
ATTR_REM_PERC = f"REM Sleep {UNIT_PERCENTAGE}" ATTR_REM_PERC = f"REM Sleep {PERCENTAGE}"
ATTR_TNT = "Tosses & Turns" ATTR_TNT = "Tosses & Turns"
ATTR_SLEEP_STAGE = "Sleep Stage" ATTR_SLEEP_STAGE = "Sleep Stage"
ATTR_TARGET_HEAT = "Target Heating Level" ATTR_TARGET_HEAT = "Target Heating Level"
@ -102,7 +102,7 @@ class EightHeatSensor(EightSleepHeatEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit the value is expressed in.""" """Return the unit the value is expressed in."""
return UNIT_PERCENTAGE return PERCENTAGE
async def async_update(self): async def async_update(self):
"""Retrieve latest state.""" """Retrieve latest state."""

View file

@ -11,11 +11,11 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
POWER_WATT, POWER_WATT,
STATE_CLOSED, STATE_CLOSED,
STATE_OPEN, STATE_OPEN,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.restore_state import RestoreEntity from homeassistant.helpers.restore_state import RestoreEntity
@ -39,7 +39,7 @@ SENSOR_TYPE_WINDOWHANDLE = "windowhandle"
SENSOR_TYPES = { SENSOR_TYPES = {
SENSOR_TYPE_HUMIDITY: { SENSOR_TYPE_HUMIDITY: {
"name": "Humidity", "name": "Humidity",
"unit": UNIT_PERCENTAGE, "unit": PERCENTAGE,
"icon": "mdi:water-percent", "icon": "mdi:water-percent",
"class": DEVICE_CLASS_HUMIDITY, "class": DEVICE_CLASS_HUMIDITY,
}, },

View file

@ -6,19 +6,19 @@ from epsonprinter_pkg.epsonprinterapi import EpsonPrinterAPI
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import CONF_HOST, CONF_MONITORED_CONDITIONS, UNIT_PERCENTAGE from homeassistant.const import CONF_HOST, CONF_MONITORED_CONDITIONS, PERCENTAGE
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
MONITORED_CONDITIONS = { MONITORED_CONDITIONS = {
"black": ["Ink level Black", UNIT_PERCENTAGE, "mdi:water"], "black": ["Ink level Black", PERCENTAGE, "mdi:water"],
"photoblack": ["Ink level Photoblack", UNIT_PERCENTAGE, "mdi:water"], "photoblack": ["Ink level Photoblack", PERCENTAGE, "mdi:water"],
"magenta": ["Ink level Magenta", UNIT_PERCENTAGE, "mdi:water"], "magenta": ["Ink level Magenta", PERCENTAGE, "mdi:water"],
"cyan": ["Ink level Cyan", UNIT_PERCENTAGE, "mdi:water"], "cyan": ["Ink level Cyan", PERCENTAGE, "mdi:water"],
"yellow": ["Ink level Yellow", UNIT_PERCENTAGE, "mdi:water"], "yellow": ["Ink level Yellow", PERCENTAGE, "mdi:water"],
"clean": ["Cleaning level", UNIT_PERCENTAGE, "mdi:water"], "clean": ["Cleaning level", PERCENTAGE, "mdi:water"],
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
{ {

View file

@ -7,9 +7,9 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -31,7 +31,7 @@ SENSOR_TYPES = {
"CO2": ["CO2", CONCENTRATION_PARTS_PER_MILLION, "mdi:cloud", None], "CO2": ["CO2", CONCENTRATION_PARTS_PER_MILLION, "mdi:cloud", None],
"com.fibaro.humiditySensor": [ "com.fibaro.humiditySensor": [
"Humidity", "Humidity",
UNIT_PERCENTAGE, PERCENTAGE,
None, None,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
], ],

View file

@ -19,9 +19,9 @@ from homeassistant.const import (
LENGTH_FEET, LENGTH_FEET,
MASS_KILOGRAMS, MASS_KILOGRAMS,
MASS_MILLIGRAMS, MASS_MILLIGRAMS,
PERCENTAGE,
TIME_MILLISECONDS, TIME_MILLISECONDS,
TIME_MINUTES, TIME_MINUTES,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -97,11 +97,11 @@ FITBIT_RESOURCES_LIST = {
], ],
"activities/tracker/steps": ["Tracker Steps", "steps", "walk"], "activities/tracker/steps": ["Tracker Steps", "steps", "walk"],
"body/bmi": ["BMI", "BMI", "human"], "body/bmi": ["BMI", "BMI", "human"],
"body/fat": ["Body Fat", UNIT_PERCENTAGE, "human"], "body/fat": ["Body Fat", PERCENTAGE, "human"],
"body/weight": ["Weight", "", "human"], "body/weight": ["Weight", "", "human"],
"devices/battery": ["Battery", None, None], "devices/battery": ["Battery", None, None],
"sleep/awakeningsCount": ["Awakenings Count", "times awaken", "sleep"], "sleep/awakeningsCount": ["Awakenings Count", "times awaken", "sleep"],
"sleep/efficiency": ["Sleep Efficiency", UNIT_PERCENTAGE, "sleep"], "sleep/efficiency": ["Sleep Efficiency", PERCENTAGE, "sleep"],
"sleep/minutesAfterWakeup": ["Minutes After Wakeup", TIME_MINUTES, "sleep"], "sleep/minutesAfterWakeup": ["Minutes After Wakeup", TIME_MINUTES, "sleep"],
"sleep/minutesAsleep": ["Sleep Minutes Asleep", TIME_MINUTES, "sleep"], "sleep/minutesAsleep": ["Sleep Minutes Asleep", TIME_MINUTES, "sleep"],
"sleep/minutesAwake": ["Sleep Minutes Awake", TIME_MINUTES, "sleep"], "sleep/minutesAwake": ["Sleep Minutes Awake", TIME_MINUTES, "sleep"],

View file

@ -15,9 +15,9 @@ from homeassistant.const import (
CONCENTRATION_PARTS_PER_MILLION, CONCENTRATION_PARTS_PER_MILLION,
CONF_TOKEN, CONF_TOKEN,
CONF_USERNAME, CONF_USERNAME,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_SECONDS, TIME_SECONDS,
UNIT_PERCENTAGE,
) )
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.aiohttp_client import async_get_clientsession
@ -38,14 +38,14 @@ SENSOR_TYPES = {
"time": [ATTR_TIME, TIME_SECONDS], "time": [ATTR_TIME, TIME_SECONDS],
"pm": [ATTR_PM2_5, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, "mdi:cloud"], "pm": [ATTR_PM2_5, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, "mdi:cloud"],
"tmp": [ATTR_TEMPERATURE, TEMP_CELSIUS, "mdi:thermometer"], "tmp": [ATTR_TEMPERATURE, TEMP_CELSIUS, "mdi:thermometer"],
"hum": [ATTR_HUMIDITY, UNIT_PERCENTAGE, "mdi:water-percent"], "hum": [ATTR_HUMIDITY, PERCENTAGE, "mdi:water-percent"],
"co2": [ATTR_CARBON_DIOXIDE, CONCENTRATION_PARTS_PER_MILLION, "mdi:molecule-co2"], "co2": [ATTR_CARBON_DIOXIDE, CONCENTRATION_PARTS_PER_MILLION, "mdi:molecule-co2"],
"voc": [ "voc": [
ATTR_VOLATILE_ORGANIC_COMPOUNDS, ATTR_VOLATILE_ORGANIC_COMPOUNDS,
CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_BILLION,
"mdi:cloud", "mdi:cloud",
], ],
"allpollu": [ATTR_FOOBOT_INDEX, UNIT_PERCENTAGE, "mdi:percent"], "allpollu": [ATTR_FOOBOT_INDEX, PERCENTAGE, "mdi:percent"],
} }
SCAN_INTERVAL = timedelta(minutes=10) SCAN_INTERVAL = timedelta(minutes=10)

View file

@ -3,8 +3,8 @@ from homeassistant.const import (
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
LENGTH_METERS, LENGTH_METERS,
MASS_KILOGRAMS, MASS_KILOGRAMS,
PERCENTAGE,
TIME_MINUTES, TIME_MINUTES,
UNIT_PERCENTAGE,
) )
DOMAIN = "garmin_connect" DOMAIN = "garmin_connect"
@ -191,49 +191,49 @@ GARMIN_ENTITY_LIST = {
], ],
"stressPercentage": [ "stressPercentage": [
"Stress Percentage", "Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"restStressPercentage": [ "restStressPercentage": [
"Rest Stress Percentage", "Rest Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"activityStressPercentage": [ "activityStressPercentage": [
"Activity Stress Percentage", "Activity Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"uncategorizedStressPercentage": [ "uncategorizedStressPercentage": [
"Uncat. Stress Percentage", "Uncat. Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"lowStressPercentage": [ "lowStressPercentage": [
"Low Stress Percentage", "Low Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"mediumStressPercentage": [ "mediumStressPercentage": [
"Medium Stress Percentage", "Medium Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
], ],
"highStressPercentage": [ "highStressPercentage": [
"High Stress Percentage", "High Stress Percentage",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:flash-alert", "mdi:flash-alert",
None, None,
False, False,
@ -261,42 +261,42 @@ GARMIN_ENTITY_LIST = {
], ],
"bodyBatteryChargedValue": [ "bodyBatteryChargedValue": [
"Body Battery Charged", "Body Battery Charged",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:battery-charging-100", "mdi:battery-charging-100",
None, None,
True, True,
], ],
"bodyBatteryDrainedValue": [ "bodyBatteryDrainedValue": [
"Body Battery Drained", "Body Battery Drained",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:battery-alert-variant-outline", "mdi:battery-alert-variant-outline",
None, None,
True, True,
], ],
"bodyBatteryHighestValue": [ "bodyBatteryHighestValue": [
"Body Battery Highest", "Body Battery Highest",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:battery-heart", "mdi:battery-heart",
None, None,
True, True,
], ],
"bodyBatteryLowestValue": [ "bodyBatteryLowestValue": [
"Body Battery Lowest", "Body Battery Lowest",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:battery-heart-outline", "mdi:battery-heart-outline",
None, None,
True, True,
], ],
"bodyBatteryMostRecentValue": [ "bodyBatteryMostRecentValue": [
"Body Battery Most Recent", "Body Battery Most Recent",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:battery-positive", "mdi:battery-positive",
None, None,
True, True,
], ],
"averageSpo2": ["Average SPO2", UNIT_PERCENTAGE, "mdi:diabetes", None, True], "averageSpo2": ["Average SPO2", PERCENTAGE, "mdi:diabetes", None, True],
"lowestSpo2": ["Lowest SPO2", UNIT_PERCENTAGE, "mdi:diabetes", None, True], "lowestSpo2": ["Lowest SPO2", PERCENTAGE, "mdi:diabetes", None, True],
"latestSpo2": ["Latest SPO2", UNIT_PERCENTAGE, "mdi:diabetes", None, True], "latestSpo2": ["Latest SPO2", PERCENTAGE, "mdi:diabetes", None, True],
"latestSpo2ReadingTimeLocal": [ "latestSpo2ReadingTimeLocal": [
"Latest SPO2 Time", "Latest SPO2 Time",
"", "",
@ -306,7 +306,7 @@ GARMIN_ENTITY_LIST = {
], ],
"averageMonitoringEnvironmentAltitude": [ "averageMonitoringEnvironmentAltitude": [
"Average Altitude", "Average Altitude",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:image-filter-hdr", "mdi:image-filter-hdr",
None, None,
False, False,
@ -341,8 +341,8 @@ GARMIN_ENTITY_LIST = {
], ],
"weight": ["Weight", MASS_KILOGRAMS, "mdi:weight-kilogram", None, False], "weight": ["Weight", MASS_KILOGRAMS, "mdi:weight-kilogram", None, False],
"bmi": ["BMI", "", "mdi:food", None, False], "bmi": ["BMI", "", "mdi:food", None, False],
"bodyFat": ["Body Fat", UNIT_PERCENTAGE, "mdi:food", None, False], "bodyFat": ["Body Fat", PERCENTAGE, "mdi:food", None, False],
"bodyWater": ["Body Water", UNIT_PERCENTAGE, "mdi:water-percent", None, False], "bodyWater": ["Body Water", PERCENTAGE, "mdi:water-percent", None, False],
"bodyMass": ["Body Mass", MASS_KILOGRAMS, "mdi:food", None, False], "bodyMass": ["Body Mass", MASS_KILOGRAMS, "mdi:food", None, False],
"muscleMass": ["Muscle Mass", MASS_KILOGRAMS, "mdi:dumbbell", None, False], "muscleMass": ["Muscle Mass", MASS_KILOGRAMS, "mdi:dumbbell", None, False],
"physiqueRating": ["Physique Rating", "", "mdi:numeric", None, False], "physiqueRating": ["Physique Rating", "", "mdi:numeric", None, False],

View file

@ -2,7 +2,7 @@
from datetime import timedelta from datetime import timedelta
from typing import Any, Dict from typing import Any, Dict
from homeassistant.const import DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.helpers.typing import ConfigType, HomeAssistantType from homeassistant.helpers.typing import ConfigType, HomeAssistantType
import homeassistant.util.dt as dt_util import homeassistant.util.dt as dt_util
@ -77,7 +77,7 @@ class GeniusBattery(GeniusDevice):
@property @property
def unit_of_measurement(self) -> str: def unit_of_measurement(self) -> str:
"""Return the unit of measurement of the sensor.""" """Return the unit of measurement of the sensor."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def state(self) -> str: def state(self) -> str:

View file

@ -1,12 +1,7 @@
"""Constants for Glances component.""" """Constants for Glances component."""
import sys import sys
from homeassistant.const import ( from homeassistant.const import DATA_GIBIBYTES, DATA_MEBIBYTES, PERCENTAGE, TEMP_CELSIUS
DATA_GIBIBYTES,
DATA_MEBIBYTES,
TEMP_CELSIUS,
UNIT_PERCENTAGE,
)
DOMAIN = "glances" DOMAIN = "glances"
CONF_VERSION = "version" CONF_VERSION = "version"
@ -26,13 +21,13 @@ else:
CPU_ICON = "mdi:cpu-32-bit" CPU_ICON = "mdi:cpu-32-bit"
SENSOR_TYPES = { SENSOR_TYPES = {
"disk_use_percent": ["fs", "used percent", UNIT_PERCENTAGE, "mdi:harddisk"], "disk_use_percent": ["fs", "used percent", PERCENTAGE, "mdi:harddisk"],
"disk_use": ["fs", "used", DATA_GIBIBYTES, "mdi:harddisk"], "disk_use": ["fs", "used", DATA_GIBIBYTES, "mdi:harddisk"],
"disk_free": ["fs", "free", DATA_GIBIBYTES, "mdi:harddisk"], "disk_free": ["fs", "free", DATA_GIBIBYTES, "mdi:harddisk"],
"memory_use_percent": ["mem", "RAM used percent", UNIT_PERCENTAGE, "mdi:memory"], "memory_use_percent": ["mem", "RAM used percent", PERCENTAGE, "mdi:memory"],
"memory_use": ["mem", "RAM used", DATA_MEBIBYTES, "mdi:memory"], "memory_use": ["mem", "RAM used", DATA_MEBIBYTES, "mdi:memory"],
"memory_free": ["mem", "RAM free", DATA_MEBIBYTES, "mdi:memory"], "memory_free": ["mem", "RAM free", DATA_MEBIBYTES, "mdi:memory"],
"swap_use_percent": ["memswap", "Swap used percent", UNIT_PERCENTAGE, "mdi:memory"], "swap_use_percent": ["memswap", "Swap used percent", PERCENTAGE, "mdi:memory"],
"swap_use": ["memswap", "Swap used", DATA_GIBIBYTES, "mdi:memory"], "swap_use": ["memswap", "Swap used", DATA_GIBIBYTES, "mdi:memory"],
"swap_free": ["memswap", "Swap free", DATA_GIBIBYTES, "mdi:memory"], "swap_free": ["memswap", "Swap free", DATA_GIBIBYTES, "mdi:memory"],
"processor_load": ["load", "CPU load", "15 min", CPU_ICON], "processor_load": ["load", "CPU load", "15 min", CPU_ICON],
@ -40,10 +35,10 @@ SENSOR_TYPES = {
"process_total": ["processcount", "Total", "Count", CPU_ICON], "process_total": ["processcount", "Total", "Count", CPU_ICON],
"process_thread": ["processcount", "Thread", "Count", CPU_ICON], "process_thread": ["processcount", "Thread", "Count", CPU_ICON],
"process_sleeping": ["processcount", "Sleeping", "Count", CPU_ICON], "process_sleeping": ["processcount", "Sleeping", "Count", CPU_ICON],
"cpu_use_percent": ["cpu", "CPU used", UNIT_PERCENTAGE, CPU_ICON], "cpu_use_percent": ["cpu", "CPU used", PERCENTAGE, CPU_ICON],
"sensor_temp": ["sensors", "Temp", TEMP_CELSIUS, "mdi:thermometer"], "sensor_temp": ["sensors", "Temp", TEMP_CELSIUS, "mdi:thermometer"],
"docker_active": ["docker", "Containers active", "", "mdi:docker"], "docker_active": ["docker", "Containers active", "", "mdi:docker"],
"docker_cpu_use": ["docker", "Containers CPU used", UNIT_PERCENTAGE, "mdi:docker"], "docker_cpu_use": ["docker", "Containers CPU used", PERCENTAGE, "mdi:docker"],
"docker_memory_use": [ "docker_memory_use": [
"docker", "docker",
"Containers RAM used", "Containers RAM used",

View file

@ -13,8 +13,8 @@ from homeassistant.const import (
CONF_STATE, CONF_STATE,
CONF_TYPE, CONF_TYPE,
EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_START,
PERCENTAGE,
TIME_HOURS, TIME_HOURS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import CoreState, callback from homeassistant.core import CoreState, callback
from homeassistant.exceptions import TemplateError from homeassistant.exceptions import TemplateError
@ -41,7 +41,7 @@ CONF_TYPE_KEYS = [CONF_TYPE_TIME, CONF_TYPE_RATIO, CONF_TYPE_COUNT]
DEFAULT_NAME = "unnamed statistics" DEFAULT_NAME = "unnamed statistics"
UNITS = { UNITS = {
CONF_TYPE_TIME: TIME_HOURS, CONF_TYPE_TIME: TIME_HOURS,
CONF_TYPE_RATIO: UNIT_PERCENTAGE, CONF_TYPE_RATIO: PERCENTAGE,
CONF_TYPE_COUNT: "", CONF_TYPE_COUNT: "",
} }
ICON = "mdi:chart-line" ICON = "mdi:chart-line"

View file

@ -7,7 +7,7 @@ import homeconnect
from homeconnect.api import HomeConnectError from homeconnect.api import HomeConnectError
from homeassistant import config_entries, core from homeassistant import config_entries, core
from homeassistant.const import DEVICE_CLASS_TIMESTAMP, TIME_SECONDS, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_TIMESTAMP, PERCENTAGE, TIME_SECONDS
from homeassistant.helpers import config_entry_oauth2_flow from homeassistant.helpers import config_entry_oauth2_flow
from homeassistant.helpers.dispatcher import dispatcher_send from homeassistant.helpers.dispatcher import dispatcher_send
@ -140,7 +140,7 @@ class DeviceWithPrograms(HomeConnectDevice):
sensors = { sensors = {
"Remaining Program Time": (None, None, DEVICE_CLASS_TIMESTAMP, 1), "Remaining Program Time": (None, None, DEVICE_CLASS_TIMESTAMP, 1),
"Duration": (TIME_SECONDS, "mdi:update", None, 1), "Duration": (TIME_SECONDS, "mdi:update", None, 1),
"Program Progress": (UNIT_PERCENTAGE, "mdi:progress-clock", None, 1), "Program Progress": (PERCENTAGE, "mdi:progress-clock", None, 1),
} }
return [ return [
{ {

View file

@ -24,11 +24,11 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
STATE_ON, STATE_ON,
STATE_UNAVAILABLE, STATE_UNAVAILABLE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
__version__, __version__,
) )
from homeassistant.core import Context, callback as ha_callback, split_entity_id from homeassistant.core import Context, callback as ha_callback, split_entity_id
@ -189,7 +189,7 @@ def get_accessory(hass, driver, state, aid, config):
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
): ):
a_type = "TemperatureSensor" a_type = "TemperatureSensor"
elif device_class == DEVICE_CLASS_HUMIDITY and unit == UNIT_PERCENTAGE: elif device_class == DEVICE_CLASS_HUMIDITY and unit == PERCENTAGE:
a_type = "HumiditySensor" a_type = "HumiditySensor"
elif device_class == DEVICE_CLASS_PM25 or DEVICE_CLASS_PM25 in state.entity_id: elif device_class == DEVICE_CLASS_PM25 or DEVICE_CLASS_PM25 in state.entity_id:
a_type = "AirQualitySensor" a_type = "AirQualitySensor"

View file

@ -17,10 +17,10 @@ from homeassistant.components.humidifier.const import (
from homeassistant.const import ( from homeassistant.const import (
ATTR_DEVICE_CLASS, ATTR_DEVICE_CLASS,
ATTR_ENTITY_ID, ATTR_ENTITY_ID,
PERCENTAGE,
SERVICE_TURN_OFF, SERVICE_TURN_OFF,
SERVICE_TURN_ON, SERVICE_TURN_ON,
STATE_ON, STATE_ON,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.event import async_track_state_change_event from homeassistant.helpers.event import async_track_state_change_event
@ -215,7 +215,7 @@ class HumidifierDehumidifier(HomeAccessory):
SERVICE_SET_HUMIDITY, SERVICE_SET_HUMIDITY,
{ATTR_ENTITY_ID: self.entity_id, ATTR_HUMIDITY: humidity}, {ATTR_ENTITY_ID: self.entity_id, ATTR_HUMIDITY: humidity},
f"{self._target_humidity_char_name} to " f"{self._target_humidity_char_name} to "
f"{char_values[self._target_humidity_char_name]}{UNIT_PERCENTAGE}", f"{char_values[self._target_humidity_char_name]}{PERCENTAGE}",
) )
@callback @callback

View file

@ -47,9 +47,9 @@ from homeassistant.const import (
ATTR_ENTITY_ID, ATTR_ENTITY_ID,
ATTR_SUPPORTED_FEATURES, ATTR_SUPPORTED_FEATURES,
ATTR_TEMPERATURE, ATTR_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
@ -376,7 +376,7 @@ class Thermostat(HomeAccessory):
_LOGGER.debug("%s: Set target humidity to %d", self.entity_id, value) _LOGGER.debug("%s: Set target humidity to %d", self.entity_id, value)
params = {ATTR_ENTITY_ID: self.entity_id, ATTR_HUMIDITY: value} params = {ATTR_ENTITY_ID: self.entity_id, ATTR_HUMIDITY: value}
self.call_service( self.call_service(
DOMAIN_CLIMATE, SERVICE_SET_HUMIDITY, params, f"{value}{UNIT_PERCENTAGE}" DOMAIN_CLIMATE, SERVICE_SET_HUMIDITY, params, f"{value}{PERCENTAGE}"
) )
@callback @callback

View file

@ -7,8 +7,8 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
@ -47,7 +47,7 @@ class HomeKitHumiditySensor(HomeKitEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return units for the sensor.""" """Return units for the sensor."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def state(self): def state(self):
@ -195,7 +195,7 @@ class HomeKitBatterySensor(HomeKitEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return units for the sensor.""" """Return units for the sensor."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def is_low_battery(self): def is_low_battery(self):

View file

@ -9,10 +9,10 @@ from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE,
POWER_WATT, POWER_WATT,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
VOLT, VOLT,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
@ -38,7 +38,7 @@ HM_STATE_HA_CAST = {
} }
HM_UNIT_HA_CAST = { HM_UNIT_HA_CAST = {
"HUMIDITY": UNIT_PERCENTAGE, "HUMIDITY": PERCENTAGE,
"TEMPERATURE": TEMP_CELSIUS, "TEMPERATURE": TEMP_CELSIUS,
"ACTUAL_TEMPERATURE": TEMP_CELSIUS, "ACTUAL_TEMPERATURE": TEMP_CELSIUS,
"BRIGHTNESS": "#", "BRIGHTNESS": "#",
@ -62,7 +62,7 @@ HM_UNIT_HA_CAST = {
"AIR_PRESSURE": "hPa", "AIR_PRESSURE": "hPa",
"FREQUENCY": FREQUENCY_HERTZ, "FREQUENCY": FREQUENCY_HERTZ,
"VALUE": "#", "VALUE": "#",
"VALVE_STATE": UNIT_PERCENTAGE, "VALVE_STATE": PERCENTAGE,
} }
HM_DEVICE_CLASS_HA_CAST = { HM_DEVICE_CLASS_HA_CAST = {

View file

@ -30,10 +30,10 @@ from homeassistant.const import (
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
POWER_WATT, POWER_WATT,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.typing import HomeAssistantType from homeassistant.helpers.typing import HomeAssistantType
@ -156,7 +156,7 @@ class HomematicipAccesspointStatus(HomematicipGenericEntity):
@property @property
def unit_of_measurement(self) -> str: def unit_of_measurement(self) -> str:
"""Return the unit this state is expressed in.""" """Return the unit this state is expressed in."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_state_attributes(self) -> Dict[str, Any]: def device_state_attributes(self) -> Dict[str, Any]:
@ -195,7 +195,7 @@ class HomematicipHeatingThermostat(HomematicipGenericEntity):
@property @property
def unit_of_measurement(self) -> str: def unit_of_measurement(self) -> str:
"""Return the unit this state is expressed in.""" """Return the unit this state is expressed in."""
return UNIT_PERCENTAGE return PERCENTAGE
class HomematicipHumiditySensor(HomematicipGenericEntity): class HomematicipHumiditySensor(HomematicipGenericEntity):
@ -218,7 +218,7 @@ class HomematicipHumiditySensor(HomematicipGenericEntity):
@property @property
def unit_of_measurement(self) -> str: def unit_of_measurement(self) -> str:
"""Return the unit this state is expressed in.""" """Return the unit this state is expressed in."""
return UNIT_PERCENTAGE return PERCENTAGE
class HomematicipTemperatureSensor(HomematicipGenericEntity): class HomematicipTemperatureSensor(HomematicipGenericEntity):

View file

@ -8,7 +8,7 @@ import smbus # pylint: disable=import-error
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import CONF_NAME, TEMP_FAHRENHEIT, UNIT_PERCENTAGE from homeassistant.const import CONF_NAME, PERCENTAGE, TEMP_FAHRENHEIT
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.util import Throttle from homeassistant.util import Throttle
@ -50,7 +50,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
dev = [ dev = [
HTU21DSensor(sensor_handler, name, SENSOR_TEMPERATURE, temp_unit), HTU21DSensor(sensor_handler, name, SENSOR_TEMPERATURE, temp_unit),
HTU21DSensor(sensor_handler, name, SENSOR_HUMIDITY, UNIT_PERCENTAGE), HTU21DSensor(sensor_handler, name, SENSOR_HUMIDITY, PERCENTAGE),
] ]
async_add_entities(dev) async_add_entities(dev)

View file

@ -10,8 +10,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -108,7 +108,7 @@ class HueBattery(GenericHueSensor):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement of this entity.""" """Return the unit of measurement of this entity."""
return UNIT_PERCENTAGE return PERCENTAGE
SENSOR_CONFIG_MAP.update( SENSOR_CONFIG_MAP.update(

View file

@ -20,7 +20,7 @@ from homeassistant.const import (
CONF_FOR, CONF_FOR,
CONF_PLATFORM, CONF_PLATFORM,
CONF_TYPE, CONF_TYPE,
UNIT_PERCENTAGE, PERCENTAGE,
) )
from homeassistant.core import CALLBACK_TYPE, HomeAssistant from homeassistant.core import CALLBACK_TYPE, HomeAssistant
from homeassistant.helpers import config_validation as cv, entity_registry from homeassistant.helpers import config_validation as cv, entity_registry
@ -114,10 +114,10 @@ async def async_get_trigger_capabilities(hass: HomeAssistant, config):
"extra_fields": vol.Schema( "extra_fields": vol.Schema(
{ {
vol.Optional( vol.Optional(
CONF_ABOVE, description={"suffix": UNIT_PERCENTAGE} CONF_ABOVE, description={"suffix": PERCENTAGE}
): vol.Coerce(int), ): vol.Coerce(int),
vol.Optional( vol.Optional(
CONF_BELOW, description={"suffix": UNIT_PERCENTAGE} CONF_BELOW, description={"suffix": PERCENTAGE}
): vol.Coerce(int), ): vol.Coerce(int),
vol.Optional(CONF_FOR): cv.positive_time_period_dict, vol.Optional(CONF_FOR): cv.positive_time_period_dict,
} }

View file

@ -3,7 +3,7 @@ import logging
from aiopvapi.resources.shade import factory as PvShade from aiopvapi.resources.shade import factory as PvShade
from homeassistant.const import DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.core import callback from homeassistant.core import callback
from .const import ( from .const import (
@ -49,7 +49,7 @@ class PowerViewShadeBatterySensor(ShadeEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def name(self): def name(self):

View file

@ -3,7 +3,7 @@ import logging
from typing import Dict from typing import Dict
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -83,7 +83,7 @@ class IcloudDeviceBatterySensor(Entity):
@property @property
def unit_of_measurement(self) -> str: def unit_of_measurement(self) -> str:
"""Battery state measured in percentage.""" """Battery state measured in percentage."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def icon(self) -> str: def icon(self) -> str:

View file

@ -1,11 +1,11 @@
"""Support for Home Assistant iOS app sensors.""" """Support for Home Assistant iOS app sensors."""
from homeassistant.components import ios from homeassistant.components import ios
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.helpers.icon import icon_for_battery_level from homeassistant.helpers.icon import icon_for_battery_level
SENSOR_TYPES = { SENSOR_TYPES = {
"level": ["Battery Level", UNIT_PERCENTAGE], "level": ["Battery Level", PERCENTAGE],
"state": ["Battery State", None], "state": ["Battery State", None],
} }

View file

@ -3,7 +3,7 @@ from datetime import timedelta
from typing import Any, Callable, Dict, List, Optional from typing import Any, Callable, Dict, List, Optional
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import DEVICE_CLASS_TIMESTAMP, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_TIMESTAMP, PERCENTAGE
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.helpers.typing import HomeAssistantType from homeassistant.helpers.typing import HomeAssistantType
from homeassistant.util.dt import utcnow from homeassistant.util.dt import utcnow
@ -114,7 +114,7 @@ class IPPMarkerSensor(IPPSensor):
icon="mdi:water", icon="mdi:water",
key=f"marker_{marker_index}", key=f"marker_{marker_index}",
name=f"{coordinator.data.info.name} {coordinator.data.markers[marker_index].name}", name=f"{coordinator.data.info.name} {coordinator.data.markers[marker_index].name}",
unit_of_measurement=UNIT_PERCENTAGE, unit_of_measurement=PERCENTAGE,
) )
@property @property

View file

@ -56,6 +56,7 @@ from homeassistant.const import (
LENGTH_MILES, LENGTH_MILES,
MASS_KILOGRAMS, MASS_KILOGRAMS,
MASS_POUNDS, MASS_POUNDS,
PERCENTAGE,
POWER_WATT, POWER_WATT,
PRESSURE_INHG, PRESSURE_INHG,
SERVICE_LOCK, SERVICE_LOCK,
@ -83,7 +84,6 @@ from homeassistant.const import (
TIME_MONTHS, TIME_MONTHS,
TIME_SECONDS, TIME_SECONDS,
TIME_YEARS, TIME_YEARS,
UNIT_PERCENTAGE,
UV_INDEX, UV_INDEX,
VOLT, VOLT,
VOLUME_GALLONS, VOLUME_GALLONS,
@ -359,7 +359,7 @@ UOM_FRIENDLY_NAME = {
"48": SPEED_MILES_PER_HOUR, "48": SPEED_MILES_PER_HOUR,
"49": SPEED_METERS_PER_SECOND, "49": SPEED_METERS_PER_SECOND,
"50": "", "50": "",
"51": UNIT_PERCENTAGE, "51": PERCENTAGE,
"52": MASS_POUNDS, "52": MASS_POUNDS,
"53": "pf", "53": "pf",
"54": CONCENTRATION_PARTS_PER_MILLION, "54": CONCENTRATION_PARTS_PER_MILLION,

View file

@ -7,7 +7,7 @@ from homeassistant.const import (
CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER,
CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_BILLION,
CONCENTRATION_PARTS_PER_MILLION, CONCENTRATION_PARTS_PER_MILLION,
UNIT_PERCENTAGE, PERCENTAGE,
) )
DOMAIN = "kaiterra" DOMAIN = "kaiterra"
@ -54,7 +54,7 @@ ATTR_AQI_POLLUTANT = "air_quality_index_pollutant"
AVAILABLE_AQI_STANDARDS = ["us", "cn", "in"] AVAILABLE_AQI_STANDARDS = ["us", "cn", "in"]
AVAILABLE_UNITS = [ AVAILABLE_UNITS = [
"x", "x",
UNIT_PERCENTAGE, PERCENTAGE,
"C", "C",
"F", "F",
CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER,

View file

@ -9,8 +9,8 @@ from homeassistant.const import (
CONF_ZONE, CONF_ZONE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -22,7 +22,7 @@ _LOGGER = logging.getLogger(__name__)
SENSOR_TYPES = { SENSOR_TYPES = {
DEVICE_CLASS_TEMPERATURE: ["Temperature", TEMP_CELSIUS], DEVICE_CLASS_TEMPERATURE: ["Temperature", TEMP_CELSIUS],
DEVICE_CLASS_HUMIDITY: ["Humidity", UNIT_PERCENTAGE], DEVICE_CLASS_HUMIDITY: ["Humidity", PERCENTAGE],
} }

View file

@ -14,8 +14,8 @@ from homeassistant.const import (
CONF_SENSORS, CONF_SENSORS,
CONF_TYPE, CONF_TYPE,
EVENT_HOMEASSISTANT_STOP, EVENT_HOMEASSISTANT_STOP,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -194,7 +194,7 @@ class LaCrosseHumidity(LaCrosseSensor):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def state(self): def state(self):

View file

@ -3,10 +3,10 @@ from itertools import product
from homeassistant.const import ( from homeassistant.const import (
DEGREE, DEGREE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TEMP_KELVIN, TEMP_KELVIN,
UNIT_PERCENTAGE,
VOLT, VOLT,
) )
@ -160,7 +160,7 @@ VAR_UNITS = [
"LX", "LX",
"M/S", "M/S",
"METERPERSECOND", "METERPERSECOND",
UNIT_PERCENTAGE, PERCENTAGE,
"PERCENT", "PERCENT",
"PPM", "PPM",
"VOLT", "VOLT",

View file

@ -1,5 +1,5 @@
"""Support for LightwaveRF TRV - Associated Battery.""" """Support for LightwaveRF TRV - Associated Battery."""
from homeassistant.const import CONF_NAME, DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import CONF_NAME, DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from . import CONF_SERIAL, LIGHTWAVE_LINK from . import CONF_SERIAL, LIGHTWAVE_LINK
@ -50,7 +50,7 @@ class LightwaveBattery(Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the state of the sensor.""" """Return the state of the sensor."""
return UNIT_PERCENTAGE return PERCENTAGE
def update(self): def update(self):
"""Communicate with a Lightwave RTF Proxy to get state.""" """Communicate with a Lightwave RTF Proxy to get state."""

View file

@ -6,12 +6,7 @@ from batinfo import Batteries
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( from homeassistant.const import ATTR_NAME, CONF_NAME, DEVICE_CLASS_BATTERY, PERCENTAGE
ATTR_NAME,
CONF_NAME,
DEVICE_CLASS_BATTERY,
UNIT_PERCENTAGE,
)
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -103,7 +98,7 @@ class LinuxBatterySensor(Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit the value is expressed in.""" """Return the unit the value is expressed in."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_state_attributes(self): def device_state_attributes(self):

View file

@ -1,5 +1,5 @@
"""Constants in Logi Circle component.""" """Constants in Logi Circle component."""
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
DOMAIN = "logi_circle" DOMAIN = "logi_circle"
DATA_LOGI = DOMAIN DATA_LOGI = DOMAIN
@ -15,11 +15,11 @@ RECORDING_MODE_KEY = "RECORDING_MODE"
# Sensor types: Name, unit of measure, icon per sensor key. # Sensor types: Name, unit of measure, icon per sensor key.
LOGI_SENSORS = { LOGI_SENSORS = {
"battery_level": ["Battery", UNIT_PERCENTAGE, "battery-50"], "battery_level": ["Battery", PERCENTAGE, "battery-50"],
"last_activity_time": ["Last Activity", None, "history"], "last_activity_time": ["Last Activity", None, "history"],
"recording": ["Recording Mode", None, "eye"], "recording": ["Recording Mode", None, "eye"],
"signal_strength_category": ["WiFi Signal Category", None, "wifi"], "signal_strength_category": ["WiFi Signal Category", None, "wifi"],
"signal_strength_percentage": ["WiFi Signal Strength", UNIT_PERCENTAGE, "wifi"], "signal_strength_percentage": ["WiFi Signal Strength", PERCENTAGE, "wifi"],
"streaming": ["Streaming Mode", None, "camera"], "streaming": ["Streaming Mode", None, "camera"],
} }

View file

@ -12,8 +12,8 @@ from homeassistant.const import (
CONF_SCAN_INTERVAL, CONF_SCAN_INTERVAL,
CONF_SENSORS, CONF_SENSORS,
CONF_SHOW_ON_MAP, CONF_SHOW_ON_MAP,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.exceptions import ConfigEntryNotReady from homeassistant.exceptions import ConfigEntryNotReady
@ -43,7 +43,7 @@ TOPIC_UPDATE = f"{DOMAIN}_data_update"
SENSORS = { SENSORS = {
SENSOR_TEMPERATURE: ["Temperature", "mdi:thermometer", TEMP_CELSIUS], SENSOR_TEMPERATURE: ["Temperature", "mdi:thermometer", TEMP_CELSIUS],
SENSOR_HUMIDITY: ["Humidity", "mdi:water-percent", UNIT_PERCENTAGE], SENSOR_HUMIDITY: ["Humidity", "mdi:water-percent", PERCENTAGE],
SENSOR_PRESSURE: ["Pressure", "mdi:arrow-down-bold", "Pa"], SENSOR_PRESSURE: ["Pressure", "mdi:arrow-down-bold", "Pa"],
SENSOR_PRESSURE_AT_SEALEVEL: ["Pressure at sealevel", "mdi:download", "Pa"], SENSOR_PRESSURE_AT_SEALEVEL: ["Pressure at sealevel", "mdi:download", "Pa"],
SENSOR_PM10: [ SENSOR_PM10: [

View file

@ -4,10 +4,10 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
PERCENTAGE,
PRESSURE_HPA, PRESSURE_HPA,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
DOMAIN = "meteo_france" DOMAIN = "meteo_france"
@ -44,7 +44,7 @@ SENSOR_TYPES = {
}, },
"rain_chance": { "rain_chance": {
ENTITY_NAME: "Rain chance", ENTITY_NAME: "Rain chance",
ENTITY_UNIT: UNIT_PERCENTAGE, ENTITY_UNIT: PERCENTAGE,
ENTITY_ICON: "mdi:weather-rainy", ENTITY_ICON: "mdi:weather-rainy",
ENTITY_DEVICE_CLASS: None, ENTITY_DEVICE_CLASS: None,
ENTITY_ENABLE: True, ENTITY_ENABLE: True,
@ -52,7 +52,7 @@ SENSOR_TYPES = {
}, },
"snow_chance": { "snow_chance": {
ENTITY_NAME: "Snow chance", ENTITY_NAME: "Snow chance",
ENTITY_UNIT: UNIT_PERCENTAGE, ENTITY_UNIT: PERCENTAGE,
ENTITY_ICON: "mdi:weather-snowy", ENTITY_ICON: "mdi:weather-snowy",
ENTITY_DEVICE_CLASS: None, ENTITY_DEVICE_CLASS: None,
ENTITY_ENABLE: True, ENTITY_ENABLE: True,
@ -60,7 +60,7 @@ SENSOR_TYPES = {
}, },
"freeze_chance": { "freeze_chance": {
ENTITY_NAME: "Freeze chance", ENTITY_NAME: "Freeze chance",
ENTITY_UNIT: UNIT_PERCENTAGE, ENTITY_UNIT: PERCENTAGE,
ENTITY_ICON: "mdi:snowflake", ENTITY_ICON: "mdi:snowflake",
ENTITY_DEVICE_CLASS: None, ENTITY_DEVICE_CLASS: None,
ENTITY_ENABLE: True, ENTITY_ENABLE: True,
@ -116,7 +116,7 @@ SENSOR_TYPES = {
}, },
"cloud": { "cloud": {
ENTITY_NAME: "Cloud cover", ENTITY_NAME: "Cloud cover",
ENTITY_UNIT: UNIT_PERCENTAGE, ENTITY_UNIT: PERCENTAGE,
ENTITY_ICON: "mdi:weather-partly-cloudy", ENTITY_ICON: "mdi:weather-partly-cloudy",
ENTITY_DEVICE_CLASS: None, ENTITY_DEVICE_CLASS: None,
ENTITY_ENABLE: True, ENTITY_ENABLE: True,

View file

@ -7,9 +7,9 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
PERCENTAGE,
SPEED_MILES_PER_HOUR, SPEED_MILES_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
UV_INDEX, UV_INDEX,
) )
from homeassistant.core import callback from homeassistant.core import callback
@ -74,11 +74,11 @@ SENSOR_TYPES = {
"precipitation": [ "precipitation": [
"Probability of Precipitation", "Probability of Precipitation",
None, None,
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:weather-rainy", "mdi:weather-rainy",
True, True,
], ],
"humidity": ["Humidity", DEVICE_CLASS_HUMIDITY, UNIT_PERCENTAGE, None, False], "humidity": ["Humidity", DEVICE_CLASS_HUMIDITY, PERCENTAGE, None, False],
} }

View file

@ -6,7 +6,7 @@ from pycsspeechtts import pycsspeechtts
import voluptuous as vol import voluptuous as vol
from homeassistant.components.tts import CONF_LANG, PLATFORM_SCHEMA, Provider from homeassistant.components.tts import CONF_LANG, PLATFORM_SCHEMA, Provider
from homeassistant.const import CONF_API_KEY, CONF_TYPE, UNIT_PERCENTAGE from homeassistant.const import CONF_API_KEY, CONF_TYPE, PERCENTAGE
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
CONF_GENDER = "gender" CONF_GENDER = "gender"
@ -122,8 +122,8 @@ class MicrosoftProvider(Provider):
self._gender = gender self._gender = gender
self._type = ttype self._type = ttype
self._output = DEFAULT_OUTPUT self._output = DEFAULT_OUTPUT
self._rate = f"{rate}{UNIT_PERCENTAGE}" self._rate = f"{rate}{PERCENTAGE}"
self._volume = f"{volume}{UNIT_PERCENTAGE}" self._volume = f"{volume}{PERCENTAGE}"
self._pitch = pitch self._pitch = pitch
self._contour = contour self._contour = contour
self._region = region self._region = region

View file

@ -17,9 +17,9 @@ from homeassistant.const import (
CONF_NAME, CONF_NAME,
CONF_SCAN_INTERVAL, CONF_SCAN_INTERVAL,
EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_START,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -54,9 +54,9 @@ ATTR_LAST_SUCCESSFUL_UPDATE = "last_successful_update"
SENSOR_TYPES = { SENSOR_TYPES = {
"temperature": ["Temperature", TEMP_CELSIUS, "mdi:thermometer"], "temperature": ["Temperature", TEMP_CELSIUS, "mdi:thermometer"],
"light": ["Light intensity", "lx", "mdi:white-balance-sunny"], "light": ["Light intensity", "lx", "mdi:white-balance-sunny"],
"moisture": ["Moisture", UNIT_PERCENTAGE, "mdi:water-percent"], "moisture": ["Moisture", PERCENTAGE, "mdi:water-percent"],
"conductivity": ["Conductivity", CONDUCTIVITY, "mdi:flash-circle"], "conductivity": ["Conductivity", CONDUCTIVITY, "mdi:flash-circle"],
"battery": ["Battery", UNIT_PERCENTAGE, "mdi:battery-charging"], "battery": ["Battery", PERCENTAGE, "mdi:battery-charging"],
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -15,8 +15,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -48,8 +48,8 @@ DEFAULT_TIMEOUT = 10
# Sensor types are defined like: Name, units # Sensor types are defined like: Name, units
SENSOR_TYPES = { SENSOR_TYPES = {
"temperature": [DEVICE_CLASS_TEMPERATURE, "Temperature", TEMP_CELSIUS], "temperature": [DEVICE_CLASS_TEMPERATURE, "Temperature", TEMP_CELSIUS],
"humidity": [DEVICE_CLASS_HUMIDITY, "Humidity", UNIT_PERCENTAGE], "humidity": [DEVICE_CLASS_HUMIDITY, "Humidity", PERCENTAGE],
"battery": [DEVICE_CLASS_BATTERY, "Battery", UNIT_PERCENTAGE], "battery": [DEVICE_CLASS_BATTERY, "Battery", PERCENTAGE],
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -10,10 +10,10 @@ from homeassistant.const import (
ATTR_UNIT_OF_MEASUREMENT, ATTR_UNIT_OF_MEASUREMENT,
CONF_NAME, CONF_NAME,
EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_START,
PERCENTAGE,
STATE_UNKNOWN, STATE_UNKNOWN,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -247,7 +247,7 @@ class MoldIndicator(Entity):
) )
return None return None
if unit != UNIT_PERCENTAGE: if unit != PERCENTAGE:
_LOGGER.error( _LOGGER.error(
"Humidity sensor %s has unsupported unit: %s %s", "Humidity sensor %s has unsupported unit: %s %s",
state.entity_id, state.entity_id,
@ -362,7 +362,7 @@ class MoldIndicator(Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def state(self): def state(self):

View file

@ -2,7 +2,7 @@
import logging import logging
from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant.helpers.icon import icon_for_battery_level from homeassistant.helpers.icon import icon_for_battery_level
@ -27,7 +27,7 @@ SENSORS = [
EVSensorConfig("Charged By", "estimatedFullChargeBy"), EVSensorConfig("Charged By", "estimatedFullChargeBy"),
EVSensorConfig("Charge Mode", "chargeMode"), EVSensorConfig("Charge Mode", "chargeMode"),
EVSensorConfig( EVSensorConfig(
"Battery Level", BATTERY_SENSOR, UNIT_PERCENTAGE, "mdi:battery", ["charging"] "Battery Level", BATTERY_SENSOR, PERCENTAGE, "mdi:battery", ["charging"]
), ),
] ]

View file

@ -10,18 +10,18 @@ from homeassistant.const import (
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
LENGTH_METERS, LENGTH_METERS,
MASS_KILOGRAMS, MASS_KILOGRAMS,
PERCENTAGE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
VOLT, VOLT,
) )
SENSORS = { SENSORS = {
"V_TEMP": [None, "mdi:thermometer"], "V_TEMP": [None, "mdi:thermometer"],
"V_HUM": [UNIT_PERCENTAGE, "mdi:water-percent"], "V_HUM": [PERCENTAGE, "mdi:water-percent"],
"V_DIMMER": [UNIT_PERCENTAGE, "mdi:percent"], "V_DIMMER": [PERCENTAGE, "mdi:percent"],
"V_PERCENTAGE": [UNIT_PERCENTAGE, "mdi:percent"], "V_PERCENTAGE": [PERCENTAGE, "mdi:percent"],
"V_PRESSURE": [None, "mdi:gauge"], "V_PRESSURE": [None, "mdi:gauge"],
"V_FORECAST": [None, "mdi:weather-partly-cloudy"], "V_FORECAST": [None, "mdi:weather-partly-cloudy"],
"V_RAIN": [None, "mdi:weather-rainy"], "V_RAIN": [None, "mdi:weather-rainy"],
@ -34,7 +34,7 @@ SENSORS = {
"V_IMPEDANCE": ["ohm", None], "V_IMPEDANCE": ["ohm", None],
"V_WATT": [POWER_WATT, None], "V_WATT": [POWER_WATT, None],
"V_KWH": [ENERGY_KILO_WATT_HOUR, None], "V_KWH": [ENERGY_KILO_WATT_HOUR, None],
"V_LIGHT_LEVEL": [UNIT_PERCENTAGE, "mdi:white-balance-sunny"], "V_LIGHT_LEVEL": [PERCENTAGE, "mdi:white-balance-sunny"],
"V_FLOW": [LENGTH_METERS, "mdi:gauge"], "V_FLOW": [LENGTH_METERS, "mdi:gauge"],
"V_VOLUME": ["", None], "V_VOLUME": ["", None],
"V_LEVEL": { "V_LEVEL": {

View file

@ -5,7 +5,7 @@ import logging
from pybotvac.exceptions import NeatoRobotException from pybotvac.exceptions import NeatoRobotException
from homeassistant.components.sensor import DEVICE_CLASS_BATTERY from homeassistant.components.sensor import DEVICE_CLASS_BATTERY
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from .const import NEATO_DOMAIN, NEATO_LOGIN, NEATO_ROBOTS, SCAN_INTERVAL_MINUTES from .const import NEATO_DOMAIN, NEATO_LOGIN, NEATO_ROBOTS, SCAN_INTERVAL_MINUTES
@ -86,7 +86,7 @@ class NeatoSensor(Entity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return unit of measurement.""" """Return unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def device_info(self): def device_info(self):

View file

@ -5,10 +5,10 @@ from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
STATE_OFF, STATE_OFF,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from . import CONF_SENSORS, DATA_NEST, DATA_NEST_CONFIG, NestSensorDevice from . import CONF_SENSORS, DATA_NEST, DATA_NEST_CONFIG, NestSensorDevice
@ -42,7 +42,7 @@ _VALID_SENSOR_TYPES = (
+ STRUCTURE_CAMERA_SENSOR_TYPES + STRUCTURE_CAMERA_SENSOR_TYPES
) )
SENSOR_UNITS = {"humidity": UNIT_PERCENTAGE} SENSOR_UNITS = {"humidity": PERCENTAGE}
SENSOR_DEVICE_CLASSES = {"humidity": DEVICE_CLASS_HUMIDITY} SENSOR_DEVICE_CLASSES = {"humidity": DEVICE_CLASS_HUMIDITY}

View file

@ -12,10 +12,10 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
PRESSURE_MBAR, PRESSURE_MBAR,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import HomeAssistant, callback from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.device_registry import async_entries_for_config_entry from homeassistant.helpers.device_registry import async_entries_for_config_entry
@ -51,13 +51,13 @@ SENSOR_TYPES = {
"co2": ["CO2", CONCENTRATION_PARTS_PER_MILLION, "mdi:molecule-co2", None], "co2": ["CO2", CONCENTRATION_PARTS_PER_MILLION, "mdi:molecule-co2", None],
"pressure": ["Pressure", PRESSURE_MBAR, None, DEVICE_CLASS_PRESSURE], "pressure": ["Pressure", PRESSURE_MBAR, None, DEVICE_CLASS_PRESSURE],
"noise": ["Noise", "dB", "mdi:volume-high", None], "noise": ["Noise", "dB", "mdi:volume-high", None],
"humidity": ["Humidity", UNIT_PERCENTAGE, None, DEVICE_CLASS_HUMIDITY], "humidity": ["Humidity", PERCENTAGE, None, DEVICE_CLASS_HUMIDITY],
"rain": ["Rain", "mm", "mdi:weather-rainy", None], "rain": ["Rain", "mm", "mdi:weather-rainy", None],
"sum_rain_1": ["Rain last hour", "mm", "mdi:weather-rainy", None], "sum_rain_1": ["Rain last hour", "mm", "mdi:weather-rainy", None],
"sum_rain_24": ["Rain last 24h", "mm", "mdi:weather-rainy", None], "sum_rain_24": ["Rain last 24h", "mm", "mdi:weather-rainy", None],
"battery_vp": ["Battery", "", "mdi:battery", None], "battery_vp": ["Battery", "", "mdi:battery", None],
"battery_lvl": ["Battery Level", "", "mdi:battery", None], "battery_lvl": ["Battery Level", "", "mdi:battery", None],
"battery_percent": ["Battery Percent", UNIT_PERCENTAGE, None, DEVICE_CLASS_BATTERY], "battery_percent": ["Battery Percent", PERCENTAGE, None, DEVICE_CLASS_BATTERY],
"min_temp": ["Min Temp.", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE], "min_temp": ["Min Temp.", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
"max_temp": ["Max Temp.", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE], "max_temp": ["Max Temp.", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
"windangle": ["Direction", None, "mdi:compass-outline", None], "windangle": ["Direction", None, "mdi:compass-outline", None],

View file

@ -13,7 +13,7 @@ from homeassistant.const import (
CONF_NAME, CONF_NAME,
CONF_PORT, CONF_PORT,
CONF_RESOURCES, CONF_RESOURCES,
UNIT_PERCENTAGE, PERCENTAGE,
) )
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.aiohttp_client import async_get_clientsession
@ -79,7 +79,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
try: try:
resource_data = netdata.api.metrics[sensor] resource_data = netdata.api.metrics[sensor]
unit = ( unit = (
UNIT_PERCENTAGE PERCENTAGE
if resource_data["units"] == "percentage" if resource_data["units"] == "percentage"
else resource_data["units"] else resource_data["units"]
) )

View file

@ -1,7 +1,7 @@
"""Define possible sensor types.""" """Define possible sensor types."""
from homeassistant.components.binary_sensor import DEVICE_CLASS_CONNECTIVITY from homeassistant.components.binary_sensor import DEVICE_CLASS_CONNECTIVITY
from homeassistant.const import DATA_MEBIBYTES, UNIT_PERCENTAGE from homeassistant.const import DATA_MEBIBYTES, PERCENTAGE
SENSOR_SMS = "sms" SENSOR_SMS = "sms"
SENSOR_SMS_TOTAL = "sms_total" SENSOR_SMS_TOTAL = "sms_total"
@ -11,7 +11,7 @@ SENSOR_UNITS = {
SENSOR_SMS: "unread", SENSOR_SMS: "unread",
SENSOR_SMS_TOTAL: "messages", SENSOR_SMS_TOTAL: "messages",
SENSOR_USAGE: DATA_MEBIBYTES, SENSOR_USAGE: DATA_MEBIBYTES,
"radio_quality": UNIT_PERCENTAGE, "radio_quality": PERCENTAGE,
"rx_level": "dBm", "rx_level": "dBm",
"tx_level": "dBm", "tx_level": "dBm",
"upstream": None, "upstream": None,

View file

@ -5,9 +5,9 @@ from nexia.const import UNIT_CELSIUS
from homeassistant.const import ( from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from .const import DOMAIN, NEXIA_DEVICE, UPDATE_COORDINATOR from .const import DOMAIN, NEXIA_DEVICE, UPDATE_COORDINATOR
@ -57,7 +57,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
"get_current_compressor_speed", "get_current_compressor_speed",
"Current Compressor Speed", "Current Compressor Speed",
None, None,
UNIT_PERCENTAGE, PERCENTAGE,
percent_conv, percent_conv,
) )
) )
@ -68,7 +68,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
"get_requested_compressor_speed", "get_requested_compressor_speed",
"Requested Compressor Speed", "Requested Compressor Speed",
None, None,
UNIT_PERCENTAGE, PERCENTAGE,
percent_conv, percent_conv,
) )
) )
@ -98,7 +98,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
"get_relative_humidity", "get_relative_humidity",
"Relative Humidity", "Relative Humidity",
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
UNIT_PERCENTAGE, PERCENTAGE,
percent_conv, percent_conv,
) )
) )

View file

@ -14,7 +14,7 @@ from homeassistant.components.notify import (
PLATFORM_SCHEMA, PLATFORM_SCHEMA,
BaseNotificationService, BaseNotificationService,
) )
from homeassistant.const import CONF_HOST, CONF_TIMEOUT, HTTP_OK, UNIT_PERCENTAGE from homeassistant.const import CONF_HOST, CONF_TIMEOUT, HTTP_OK, PERCENTAGE
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
@ -68,11 +68,11 @@ POSITIONS = {
TRANSPARENCIES = { TRANSPARENCIES = {
"default": 0, "default": 0,
f"0{UNIT_PERCENTAGE}": 1, f"0{PERCENTAGE}": 1,
f"25{UNIT_PERCENTAGE}": 2, f"25{PERCENTAGE}": 2,
f"50{UNIT_PERCENTAGE}": 3, f"50{PERCENTAGE}": 3,
f"75{UNIT_PERCENTAGE}": 4, f"75{PERCENTAGE}": 4,
f"100{UNIT_PERCENTAGE}": 5, f"100{PERCENTAGE}": 5,
} }
COLORS = { COLORS = {

View file

@ -1,7 +1,7 @@
"""Battery Charge and Range Support for the Nissan Leaf.""" """Battery Charge and Range Support for the Nissan Leaf."""
import logging import logging
from homeassistant.const import DEVICE_CLASS_BATTERY, UNIT_PERCENTAGE from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.helpers.icon import icon_for_battery_level from homeassistant.helpers.icon import icon_for_battery_level
from homeassistant.util.distance import LENGTH_KILOMETERS, LENGTH_MILES from homeassistant.util.distance import LENGTH_KILOMETERS, LENGTH_MILES
from homeassistant.util.unit_system import IMPERIAL_SYSTEM, METRIC_SYSTEM from homeassistant.util.unit_system import IMPERIAL_SYSTEM, METRIC_SYSTEM
@ -56,7 +56,7 @@ class LeafBatterySensor(LeafEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Battery state measured in percentage.""" """Battery state measured in percentage."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def icon(self): def icon(self):

View file

@ -8,10 +8,10 @@ from homeassistant.const import (
ELECTRICAL_CURRENT_AMPERE, ELECTRICAL_CURRENT_AMPERE,
ELECTRICAL_VOLT_AMPERE, ELECTRICAL_VOLT_AMPERE,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_SECONDS, TIME_SECONDS,
UNIT_PERCENTAGE,
VOLT, VOLT,
) )
@ -48,8 +48,8 @@ SENSOR_TYPES = {
"mdi:thermometer", "mdi:thermometer",
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
], ],
"ups.load": ["Load", UNIT_PERCENTAGE, "mdi:gauge", None], "ups.load": ["Load", PERCENTAGE, "mdi:gauge", None],
"ups.load.high": ["Overload Setting", UNIT_PERCENTAGE, "mdi:gauge", None], "ups.load.high": ["Overload Setting", PERCENTAGE, "mdi:gauge", None],
"ups.id": ["System identifier", "", "mdi:information-outline", None], "ups.id": ["System identifier", "", "mdi:information-outline", None],
"ups.delay.start": ["Load Restart Delay", TIME_SECONDS, "mdi:timer-outline", None], "ups.delay.start": ["Load Restart Delay", TIME_SECONDS, "mdi:timer-outline", None],
"ups.delay.reboot": ["UPS Reboot Delay", TIME_SECONDS, "mdi:timer-outline", None], "ups.delay.reboot": ["UPS Reboot Delay", TIME_SECONDS, "mdi:timer-outline", None],
@ -77,7 +77,7 @@ SENSOR_TYPES = {
"ups.test.date": ["Self-Test Date", "", "mdi:calendar", None], "ups.test.date": ["Self-Test Date", "", "mdi:calendar", None],
"ups.display.language": ["Language", "", "mdi:information-outline", None], "ups.display.language": ["Language", "", "mdi:information-outline", None],
"ups.contacts": ["External Contacts", "", "mdi:information-outline", None], "ups.contacts": ["External Contacts", "", "mdi:information-outline", None],
"ups.efficiency": ["Efficiency", UNIT_PERCENTAGE, "mdi:gauge", None], "ups.efficiency": ["Efficiency", PERCENTAGE, "mdi:gauge", None],
"ups.power": ["Current Apparent Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None], "ups.power": ["Current Apparent Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None],
"ups.power.nominal": ["Nominal Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None], "ups.power.nominal": ["Nominal Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None],
"ups.realpower": [ "ups.realpower": [
@ -101,20 +101,20 @@ SENSOR_TYPES = {
"ups.shutdown": ["Shutdown Ability", "", "mdi:information-outline", None], "ups.shutdown": ["Shutdown Ability", "", "mdi:information-outline", None],
"battery.charge": [ "battery.charge": [
"Battery Charge", "Battery Charge",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:gauge", "mdi:gauge",
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
], ],
"battery.charge.low": ["Low Battery Setpoint", UNIT_PERCENTAGE, "mdi:gauge", None], "battery.charge.low": ["Low Battery Setpoint", PERCENTAGE, "mdi:gauge", None],
"battery.charge.restart": [ "battery.charge.restart": [
"Minimum Battery to Start", "Minimum Battery to Start",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:gauge", "mdi:gauge",
None, None,
], ],
"battery.charge.warning": [ "battery.charge.warning": [
"Warning Battery Setpoint", "Warning Battery Setpoint",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:gauge", "mdi:gauge",
None, None,
], ],

View file

@ -18,9 +18,9 @@ from homeassistant.const import (
CONF_SENSORS, CONF_SENSORS,
CONF_SSL, CONF_SSL,
CONTENT_TYPE_JSON, CONTENT_TYPE_JSON,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_SECONDS, TIME_SECONDS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers import discovery from homeassistant.helpers import discovery
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -76,7 +76,7 @@ SENSOR_TYPES = {
"job", "job",
"progress", "progress",
"completion", "completion",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:file-percent", "mdi:file-percent",
], ],
"Time Remaining": [ "Time Remaining": [

View file

@ -3,7 +3,7 @@ import logging
import requests import requests
from homeassistant.const import TEMP_CELSIUS, UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE, TEMP_CELSIUS
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from . import DOMAIN as COMPONENT_DOMAIN, SENSOR_TYPES from . import DOMAIN as COMPONENT_DOMAIN, SENSOR_TYPES
@ -111,7 +111,7 @@ class OctoPrintSensor(Entity):
def state(self): def state(self):
"""Return the state of the sensor.""" """Return the state of the sensor."""
sensor_unit = self.unit_of_measurement sensor_unit = self.unit_of_measurement
if sensor_unit in (TEMP_CELSIUS, UNIT_PERCENTAGE): if sensor_unit in (TEMP_CELSIUS, PERCENTAGE):
# API sometimes returns null and not 0 # API sometimes returns null and not 0
if self._state is None: if self._state is None:
self._state = 0 self._state = 0

View file

@ -12,8 +12,8 @@ from homeassistant.const import (
CONF_HOST, CONF_HOST,
CONF_PORT, CONF_PORT,
ELECTRICAL_CURRENT_AMPERE, ELECTRICAL_CURRENT_AMPERE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
VOLT, VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -67,14 +67,14 @@ HOBBYBOARD_EF = {
SENSOR_TYPES = { SENSOR_TYPES = {
# SensorType: [ Measured unit, Unit ] # SensorType: [ Measured unit, Unit ]
"temperature": ["temperature", TEMP_CELSIUS], "temperature": ["temperature", TEMP_CELSIUS],
"humidity": ["humidity", UNIT_PERCENTAGE], "humidity": ["humidity", PERCENTAGE],
"humidity_raw": ["humidity", UNIT_PERCENTAGE], "humidity_raw": ["humidity", PERCENTAGE],
"pressure": ["pressure", "mb"], "pressure": ["pressure", "mb"],
"illuminance": ["illuminance", "lux"], "illuminance": ["illuminance", "lux"],
"wetness_0": ["wetness", UNIT_PERCENTAGE], "wetness_0": ["wetness", PERCENTAGE],
"wetness_1": ["wetness", UNIT_PERCENTAGE], "wetness_1": ["wetness", PERCENTAGE],
"wetness_2": ["wetness", UNIT_PERCENTAGE], "wetness_2": ["wetness", PERCENTAGE],
"wetness_3": ["wetness", UNIT_PERCENTAGE], "wetness_3": ["wetness", PERCENTAGE],
"moisture_0": ["moisture", "cb"], "moisture_0": ["moisture", "cb"],
"moisture_1": ["moisture", "cb"], "moisture_1": ["moisture", "cb"],
"moisture_2": ["moisture", "cb"], "moisture_2": ["moisture", "cb"],

View file

@ -3,10 +3,10 @@ import pyotgw.vars as gw_vars
from homeassistant.const import ( from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_HOURS, TIME_HOURS,
TIME_MINUTES, TIME_MINUTES,
UNIT_PERCENTAGE,
) )
ATTR_GW_ID = "gateway_id" ATTR_GW_ID = "gateway_id"
@ -124,7 +124,7 @@ SENSOR_INFO = {
gw_vars.DATA_MASTER_MEMBERID: [None, None, "Thermostat Member ID {}"], gw_vars.DATA_MASTER_MEMBERID: [None, None, "Thermostat Member ID {}"],
gw_vars.DATA_SLAVE_MEMBERID: [None, None, "Boiler Member ID {}"], gw_vars.DATA_SLAVE_MEMBERID: [None, None, "Boiler Member ID {}"],
gw_vars.DATA_SLAVE_OEM_FAULT: [None, None, "Boiler OEM Fault Code {}"], gw_vars.DATA_SLAVE_OEM_FAULT: [None, None, "Boiler OEM Fault Code {}"],
gw_vars.DATA_COOLING_CONTROL: [None, UNIT_PERCENTAGE, "Cooling Control Signal {}"], gw_vars.DATA_COOLING_CONTROL: [None, PERCENTAGE, "Cooling Control Signal {}"],
gw_vars.DATA_CONTROL_SETPOINT_2: [ gw_vars.DATA_CONTROL_SETPOINT_2: [
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
TEMP_CELSIUS, TEMP_CELSIUS,
@ -137,13 +137,13 @@ SENSOR_INFO = {
], ],
gw_vars.DATA_SLAVE_MAX_RELATIVE_MOD: [ gw_vars.DATA_SLAVE_MAX_RELATIVE_MOD: [
None, None,
UNIT_PERCENTAGE, PERCENTAGE,
"Boiler Maximum Relative Modulation {}", "Boiler Maximum Relative Modulation {}",
], ],
gw_vars.DATA_SLAVE_MAX_CAPACITY: [None, UNIT_KW, "Boiler Maximum Capacity {}"], gw_vars.DATA_SLAVE_MAX_CAPACITY: [None, UNIT_KW, "Boiler Maximum Capacity {}"],
gw_vars.DATA_SLAVE_MIN_MOD_LEVEL: [ gw_vars.DATA_SLAVE_MIN_MOD_LEVEL: [
None, None,
UNIT_PERCENTAGE, PERCENTAGE,
"Boiler Minimum Modulation Level {}", "Boiler Minimum Modulation Level {}",
], ],
gw_vars.DATA_ROOM_SETPOINT: [ gw_vars.DATA_ROOM_SETPOINT: [
@ -151,7 +151,7 @@ SENSOR_INFO = {
TEMP_CELSIUS, TEMP_CELSIUS,
"Room Setpoint {}", "Room Setpoint {}",
], ],
gw_vars.DATA_REL_MOD_LEVEL: [None, UNIT_PERCENTAGE, "Relative Modulation Level {}"], gw_vars.DATA_REL_MOD_LEVEL: [None, PERCENTAGE, "Relative Modulation Level {}"],
gw_vars.DATA_CH_WATER_PRESS: [None, UNIT_BAR, "Central Heating Water Pressure {}"], gw_vars.DATA_CH_WATER_PRESS: [None, UNIT_BAR, "Central Heating Water Pressure {}"],
gw_vars.DATA_DHW_FLOW_RATE: [None, UNIT_L_MIN, "Hot Water Flow Rate {}"], gw_vars.DATA_DHW_FLOW_RATE: [None, UNIT_L_MIN, "Hot Water Flow Rate {}"],
gw_vars.DATA_ROOM_SETPOINT_2: [ gw_vars.DATA_ROOM_SETPOINT_2: [

View file

@ -14,10 +14,10 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
PERCENTAGE,
PRESSURE_PA, PRESSURE_PA,
SPEED_METERS_PER_SECOND, SPEED_METERS_PER_SECOND,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
DOMAIN = "openweathermap" DOMAIN = "openweathermap"
@ -103,7 +103,7 @@ WEATHER_SENSOR_TYPES = {
ATTR_API_WIND_BEARING: {SENSOR_NAME: "Wind bearing", SENSOR_UNIT: DEGREE}, ATTR_API_WIND_BEARING: {SENSOR_NAME: "Wind bearing", SENSOR_UNIT: DEGREE},
ATTR_API_HUMIDITY: { ATTR_API_HUMIDITY: {
SENSOR_NAME: "Humidity", SENSOR_NAME: "Humidity",
SENSOR_UNIT: UNIT_PERCENTAGE, SENSOR_UNIT: PERCENTAGE,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY, SENSOR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
}, },
ATTR_API_PRESSURE: { ATTR_API_PRESSURE: {
@ -111,7 +111,7 @@ WEATHER_SENSOR_TYPES = {
SENSOR_UNIT: PRESSURE_PA, SENSOR_UNIT: PRESSURE_PA,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_PRESSURE, SENSOR_DEVICE_CLASS: DEVICE_CLASS_PRESSURE,
}, },
ATTR_API_CLOUDS: {SENSOR_NAME: "Cloud coverage", SENSOR_UNIT: UNIT_PERCENTAGE}, ATTR_API_CLOUDS: {SENSOR_NAME: "Cloud coverage", SENSOR_UNIT: PERCENTAGE},
ATTR_API_RAIN: {SENSOR_NAME: "Rain", SENSOR_UNIT: "mm"}, ATTR_API_RAIN: {SENSOR_NAME: "Rain", SENSOR_UNIT: "mm"},
ATTR_API_SNOW: {SENSOR_NAME: "Snow", SENSOR_UNIT: "mm"}, ATTR_API_SNOW: {SENSOR_NAME: "Snow", SENSOR_UNIT: "mm"},
ATTR_API_CONDITION: {SENSOR_NAME: "Condition"}, ATTR_API_CONDITION: {SENSOR_NAME: "Condition"},

View file

@ -1,7 +1,7 @@
"""Constants for the pi_hole integration.""" """Constants for the pi_hole integration."""
from datetime import timedelta from datetime import timedelta
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
DOMAIN = "pi_hole" DOMAIN = "pi_hole"
@ -27,7 +27,7 @@ SENSOR_DICT = {
"ads_blocked_today": ["Ads Blocked Today", "ads", "mdi:close-octagon-outline"], "ads_blocked_today": ["Ads Blocked Today", "ads", "mdi:close-octagon-outline"],
"ads_percentage_today": [ "ads_percentage_today": [
"Ads Percentage Blocked Today", "Ads Percentage Blocked Today",
UNIT_PERCENTAGE, PERCENTAGE,
"mdi:close-octagon-outline", "mdi:close-octagon-outline",
], ],
"clients_ever_seen": ["Seen Clients", "clients", "mdi:account-outline"], "clients_ever_seen": ["Seen Clients", "clients", "mdi:account-outline"],

View file

@ -2,7 +2,7 @@
import logging import logging
from homeassistant.const import UNIT_PERCENTAGE from homeassistant.const import PERCENTAGE
from homeassistant.helpers.dispatcher import ( from homeassistant.helpers.dispatcher import (
async_dispatcher_connect, async_dispatcher_connect,
async_dispatcher_send, async_dispatcher_send,
@ -146,7 +146,7 @@ class PlaatoSensor(Entity):
if self._type == ATTR_BPM: if self._type == ATTR_BPM:
return "bpm" return "bpm"
if self._type == ATTR_ABV: if self._type == ATTR_ABV:
return UNIT_PERCENTAGE return PERCENTAGE
return "" return ""

View file

@ -12,12 +12,12 @@ from homeassistant.const import (
ATTR_UNIT_OF_MEASUREMENT, ATTR_UNIT_OF_MEASUREMENT,
CONDUCTIVITY, CONDUCTIVITY,
CONF_SENSORS, CONF_SENSORS,
PERCENTAGE,
STATE_OK, STATE_OK,
STATE_PROBLEM, STATE_PROBLEM,
STATE_UNAVAILABLE, STATE_UNAVAILABLE,
STATE_UNKNOWN, STATE_UNKNOWN,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.exceptions import HomeAssistantError from homeassistant.exceptions import HomeAssistantError
@ -134,7 +134,7 @@ class Plant(Entity):
READINGS = { READINGS = {
READING_BATTERY: { READING_BATTERY: {
ATTR_UNIT_OF_MEASUREMENT: UNIT_PERCENTAGE, ATTR_UNIT_OF_MEASUREMENT: PERCENTAGE,
"min": CONF_MIN_BATTERY_LEVEL, "min": CONF_MIN_BATTERY_LEVEL,
}, },
READING_TEMPERATURE: { READING_TEMPERATURE: {
@ -143,7 +143,7 @@ class Plant(Entity):
"max": CONF_MAX_TEMPERATURE, "max": CONF_MAX_TEMPERATURE,
}, },
READING_MOISTURE: { READING_MOISTURE: {
ATTR_UNIT_OF_MEASUREMENT: UNIT_PERCENTAGE, ATTR_UNIT_OF_MEASUREMENT: PERCENTAGE,
"min": CONF_MIN_MOISTURE, "min": CONF_MIN_MOISTURE,
"max": CONF_MAX_MOISTURE, "max": CONF_MAX_MOISTURE,
}, },

View file

@ -10,10 +10,10 @@ from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
PERCENTAGE,
POWER_WATT, POWER_WATT,
PRESSURE_BAR, PRESSURE_BAR,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
from homeassistant.core import callback from homeassistant.core import callback
@ -41,7 +41,7 @@ ATTR_TEMPERATURE = [
] ]
ATTR_BATTERY_LEVEL = [ ATTR_BATTERY_LEVEL = [
"Charge", "Charge",
UNIT_PERCENTAGE, PERCENTAGE,
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
] ]
ATTR_ILLUMINANCE = [ ATTR_ILLUMINANCE = [
@ -147,8 +147,8 @@ ENERGY_SENSOR_MAP = {
MISC_SENSOR_MAP = { MISC_SENSOR_MAP = {
"battery": ATTR_BATTERY_LEVEL, "battery": ATTR_BATTERY_LEVEL,
"illuminance": ATTR_ILLUMINANCE, "illuminance": ATTR_ILLUMINANCE,
"modulation_level": ["Heater Modulation Level", UNIT_PERCENTAGE, None], "modulation_level": ["Heater Modulation Level", PERCENTAGE, None],
"valve_position": ["Valve Position", UNIT_PERCENTAGE, None], "valve_position": ["Valve Position", PERCENTAGE, None],
"water_pressure": ATTR_PRESSURE, "water_pressure": ATTR_PRESSURE,
} }
@ -297,7 +297,7 @@ class PwThermostatSensor(SmileSensor, Entity):
measurement = data[self._sensor] measurement = data[self._sensor]
if self._sensor == "battery" or self._sensor == "valve_position": if self._sensor == "battery" or self._sensor == "valve_position":
measurement = measurement * 100 measurement = measurement * 100
if self._unit_of_measurement == UNIT_PERCENTAGE: if self._unit_of_measurement == PERCENTAGE:
measurement = int(measurement) measurement = int(measurement)
self._state = measurement self._state = measurement
self._icon = CUSTOM_ICONS.get(self._sensor, self._icon) self._icon = CUSTOM_ICONS.get(self._sensor, self._icon)

View file

@ -6,8 +6,8 @@ from homeassistant.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.util.dt import parse_datetime from homeassistant.util.dt import parse_datetime
@ -22,7 +22,7 @@ DEVICE_CLASS_SOUND = "sound_level"
SENSOR_TYPES = { SENSOR_TYPES = {
DEVICE_CLASS_TEMPERATURE: (None, 1, TEMP_CELSIUS), DEVICE_CLASS_TEMPERATURE: (None, 1, TEMP_CELSIUS),
DEVICE_CLASS_PRESSURE: (None, 0, "hPa"), DEVICE_CLASS_PRESSURE: (None, 0, "hPa"),
DEVICE_CLASS_HUMIDITY: (None, 1, UNIT_PERCENTAGE), DEVICE_CLASS_HUMIDITY: (None, 1, PERCENTAGE),
DEVICE_CLASS_SOUND: ("mdi:ear-hearing", 1, "dBa"), DEVICE_CLASS_SOUND: ("mdi:ear-hearing", 1, "dBa"),
} }

View file

@ -7,8 +7,8 @@ from homeassistant.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
@ -26,7 +26,7 @@ SENSORS = {
}, },
"pH": {"unit": None, "icon": "mdi:pool", "name": "pH", "device_class": None}, "pH": {"unit": None, "icon": "mdi:pool", "name": "pH", "device_class": None},
"Battery": { "Battery": {
"unit": UNIT_PERCENTAGE, "unit": PERCENTAGE,
"icon": None, "icon": None,
"name": "Battery", "name": "Battery",
"device_class": DEVICE_CLASS_BATTERY, "device_class": DEVICE_CLASS_BATTERY,

View file

@ -3,11 +3,7 @@ import logging
from tesla_powerwall import MeterType, convert_to_kw from tesla_powerwall import MeterType, convert_to_kw
from homeassistant.const import ( from homeassistant.const import DEVICE_CLASS_BATTERY, DEVICE_CLASS_POWER, PERCENTAGE
DEVICE_CLASS_BATTERY,
DEVICE_CLASS_POWER,
UNIT_PERCENTAGE,
)
from .const import ( from .const import (
ATTR_ENERGY_EXPORTED, ATTR_ENERGY_EXPORTED,
@ -69,7 +65,7 @@ class PowerWallChargeSensor(PowerWallEntity):
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
"""Return the unit of measurement.""" """Return the unit of measurement."""
return UNIT_PERCENTAGE return PERCENTAGE
@property @property
def name(self): def name(self):

View file

@ -24,11 +24,11 @@ from homeassistant.const import (
ATTR_UNIT_OF_MEASUREMENT, ATTR_UNIT_OF_MEASUREMENT,
CONTENT_TYPE_TEXT_PLAIN, CONTENT_TYPE_TEXT_PLAIN,
EVENT_STATE_CHANGED, EVENT_STATE_CHANGED,
PERCENTAGE,
STATE_ON, STATE_ON,
STATE_UNAVAILABLE, STATE_UNAVAILABLE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
UNIT_PERCENTAGE,
) )
from homeassistant.helpers import entityfilter, state as state_helper from homeassistant.helpers import entityfilter, state as state_helper
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -439,7 +439,7 @@ class PrometheusMetrics:
units = { units = {
TEMP_CELSIUS: "c", TEMP_CELSIUS: "c",
TEMP_FAHRENHEIT: "c", # F should go into C metric TEMP_FAHRENHEIT: "c", # F should go into C metric
UNIT_PERCENTAGE: "percent", PERCENTAGE: "percent",
} }
default = unit.replace("/", "_per_") default = unit.replace("/", "_per_")
default = default.lower() default = default.lower()

View file

@ -18,8 +18,8 @@ from homeassistant.const import (
CONF_VERIFY_SSL, CONF_VERIFY_SSL,
DATA_GIBIBYTES, DATA_GIBIBYTES,
DATA_RATE_MEBIBYTES_PER_SECOND, DATA_RATE_MEBIBYTES_PER_SECOND,
PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
UNIT_PERCENTAGE,
) )
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -62,12 +62,12 @@ _SYSTEM_MON_COND = {
} }
_CPU_MON_COND = { _CPU_MON_COND = {
"cpu_temp": ["CPU Temperature", TEMP_CELSIUS, "mdi:thermometer"], "cpu_temp": ["CPU Temperature", TEMP_CELSIUS, "mdi:thermometer"],
"cpu_usage": ["CPU Usage", UNIT_PERCENTAGE, "mdi:chip"], "cpu_usage": ["CPU Usage", PERCENTAGE, "mdi:chip"],
} }
_MEMORY_MON_COND = { _MEMORY_MON_COND = {
"memory_free": ["Memory Available", DATA_GIBIBYTES, "mdi:memory"], "memory_free": ["Memory Available", DATA_GIBIBYTES, "mdi:memory"],
"memory_used": ["Memory Used", DATA_GIBIBYTES, "mdi:memory"], "memory_used": ["Memory Used", DATA_GIBIBYTES, "mdi:memory"],
"memory_percent_used": ["Memory Usage", UNIT_PERCENTAGE, "mdi:memory"], "memory_percent_used": ["Memory Usage", PERCENTAGE, "mdi:memory"],
} }
_NETWORK_MON_COND = { _NETWORK_MON_COND = {
"network_link_status": ["Network Link", None, "mdi:checkbox-marked-circle-outline"], "network_link_status": ["Network Link", None, "mdi:checkbox-marked-circle-outline"],
@ -81,7 +81,7 @@ _DRIVE_MON_COND = {
_VOLUME_MON_COND = { _VOLUME_MON_COND = {
"volume_size_used": ["Used Space", DATA_GIBIBYTES, "mdi:chart-pie"], "volume_size_used": ["Used Space", DATA_GIBIBYTES, "mdi:chart-pie"],
"volume_size_free": ["Free Space", DATA_GIBIBYTES, "mdi:chart-pie"], "volume_size_free": ["Free Space", DATA_GIBIBYTES, "mdi:chart-pie"],
"volume_percentage_used": ["Volume Used", UNIT_PERCENTAGE, "mdi:chart-pie"], "volume_percentage_used": ["Volume Used", PERCENTAGE, "mdi:chart-pie"],
} }
_MONITORED_CONDITIONS = ( _MONITORED_CONDITIONS = (

Some files were not shown because too many files have changed in this diff Show more