From 18d0fe994d8cb5a4536986327eb2d189b017a310 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Tue, 20 Jun 2023 22:19:17 +0200 Subject: [PATCH] Add entity translations for AirQ (#94280) --- homeassistant/components/airq/sensor.py | 98 ++++++------- homeassistant/components/airq/strings.json | 151 +++++++++++++++++++++ 2 files changed, 200 insertions(+), 49 deletions(-) diff --git a/homeassistant/components/airq/sensor.py b/homeassistant/components/airq/sensor.py index 7f0d51fcaa8..dca06be67af 100644 --- a/homeassistant/components/airq/sensor.py +++ b/homeassistant/components/airq/sensor.py @@ -53,63 +53,63 @@ class AirQEntityDescription(SensorEntityDescription, AirQEntityDescriptionMixin) SENSOR_TYPES: list[AirQEntityDescription] = [ AirQEntityDescription( key="c2h4o", - name="Acetaldehyde", + translation_key="acetaldehyde", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("c2h4o"), ), AirQEntityDescription( key="nh3_MR100", - name="Ammonia", + translation_key="ammonia", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("nh3_MR100"), ), AirQEntityDescription( key="ash3", - name="Arsine", + translation_key="arsine", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ash3"), ), AirQEntityDescription( key="br2", - name="Bromine", + translation_key="bromine", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("br2"), ), AirQEntityDescription( key="ch4s", - name="CH4S", + translation_key="methanethiol", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ch4s"), ), AirQEntityDescription( key="cl2_M20", - name="Chlorine", + translation_key="chlorine", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("cl2_M20"), ), AirQEntityDescription( key="clo2", - name="ClO2", + translation_key="chlorine_dioxide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("clo2"), ), AirQEntityDescription( key="co", - name="CO", + translation_key="carbon_monoxide", native_unit_of_measurement=CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("co"), ), AirQEntityDescription( key="co2", - name="CO2", + translation_key="carbon_dioxide", device_class=SensorDeviceClass.CO2, native_unit_of_measurement=CONCENTRATION_PARTS_PER_MILLION, state_class=SensorStateClass.MEASUREMENT, @@ -117,14 +117,14 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="cs2", - name="CS2", + translation_key="carbon_disulfide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("cs2"), ), AirQEntityDescription( key="dewpt", - name="Dew point", + translation_key="dew_point", native_unit_of_measurement=UnitOfTemperature.CELSIUS, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("dewpt"), @@ -132,63 +132,63 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="ethanol", - name="Ethanol", + translation_key="ethanol", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ethanol"), ), AirQEntityDescription( key="c2h4", - name="Ethylene", + translation_key="ethylene", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("c2h4"), ), AirQEntityDescription( key="ch2o_M10", - name="Formaldehyde", + translation_key="formaldehyde", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ch2o_M10"), ), AirQEntityDescription( key="f2", - name="Fluorine", + translation_key="fluorine", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("f2"), ), AirQEntityDescription( key="h2s", - name="H2S", + translation_key="hydrogen_sulfide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("h2s"), ), AirQEntityDescription( key="hcl", - name="HCl", + translation_key="hydrochloric_acid", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("hcl"), ), AirQEntityDescription( key="hcn", - name="HCN", + translation_key="hydrogen_cyanide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("hcn"), ), AirQEntityDescription( key="hf", - name="HF", + translation_key="hydrogen_fluoride", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("hf"), ), AirQEntityDescription( key="health", - name="Health Index", + translation_key="health_index", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, icon="mdi:heart-pulse", @@ -196,7 +196,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="humidity", - name="Humidity", + translation_key="humidity", device_class=SensorDeviceClass.HUMIDITY, native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, @@ -204,7 +204,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="humidity_abs", - name="Absolute humidity", + translation_key="absolute_humidity", native_unit_of_measurement=CONCENTRATION_GRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("humidity_abs"), @@ -212,28 +212,28 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="h2_M1000", - name="Hydrogen", + translation_key="hydrogen", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("h2_M1000"), ), AirQEntityDescription( key="h2o2", - name="Hydrogen peroxide", + translation_key="hydrogen_peroxide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("h2o2"), ), AirQEntityDescription( key="ch4_MIPEX", - name="Methane", + translation_key="methane", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ch4_MIPEX"), ), AirQEntityDescription( key="n2o", - name="N2O", + translation_key="nitrous_oxide", device_class=SensorDeviceClass.NITROUS_OXIDE, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -241,7 +241,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="no_M250", - name="NO", + translation_key="nitrogen_monoxide", device_class=SensorDeviceClass.NITROGEN_MONOXIDE, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -249,7 +249,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="no2", - name="NO2", + translation_key="nitrogen_dioxide", device_class=SensorDeviceClass.NITROGEN_DIOXIDE, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -257,14 +257,14 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="acid_M100", - name="Organic acid", + translation_key="organic_acid", native_unit_of_measurement=CONCENTRATION_PARTS_PER_BILLION, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("acid_M100"), ), AirQEntityDescription( key="oxygen", - name="Oxygen", + translation_key="oxygen", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("oxygen"), @@ -272,7 +272,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="o3", - name="Ozone", + translation_key="ozone", device_class=SensorDeviceClass.OZONE, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -280,7 +280,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="performance", - name="Performance Index", + translation_key="performance_index", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, icon="mdi:head-check", @@ -288,14 +288,14 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="ph3", - name="PH3", + translation_key="hydrogen_phosphide", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("ph3"), ), AirQEntityDescription( key="pm1", - name="PM1", + translation_key="pm1", device_class=SensorDeviceClass.PM1, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -304,7 +304,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="pm2_5", - name="PM2.5", + translation_key="pm25", device_class=SensorDeviceClass.PM25, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -313,7 +313,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="pm10", - name="PM10", + translation_key="pm10", device_class=SensorDeviceClass.PM10, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -322,7 +322,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="pressure", - name="Pressure", + translation_key="pressure", device_class=SensorDeviceClass.PRESSURE, native_unit_of_measurement=UnitOfPressure.HPA, state_class=SensorStateClass.MEASUREMENT, @@ -330,7 +330,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="pressure_rel", - name="Relative pressure", + translation_key="relative_pressure", native_unit_of_measurement=UnitOfPressure.HPA, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("pressure_rel"), @@ -338,28 +338,28 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="c3h8_MIPEX", - name="Propane", + translation_key="propane", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("c3h8_MIPEX"), ), AirQEntityDescription( key="refigerant", - name="Refrigerant", + translation_key="refigerant", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("refigerant"), ), AirQEntityDescription( key="sih4", - name="SiH4", + translation_key="silicon_hydride", native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("sih4"), ), AirQEntityDescription( key="so2", - name="SO2", + translation_key="sulphur_dioxide", device_class=SensorDeviceClass.SULPHUR_DIOXIDE, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -367,7 +367,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="sound", - name="Noise", + translation_key="noise", native_unit_of_measurement=UnitOfSoundPressure.WEIGHTED_DECIBEL_A, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("sound"), @@ -375,7 +375,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="sound_max", - name="Noise (Maximum)", + translation_key="maximum_noise", native_unit_of_measurement=UnitOfSoundPressure.WEIGHTED_DECIBEL_A, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("sound_max"), @@ -383,7 +383,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="radon", - name="Radon", + translation_key="radon", native_unit_of_measurement=ACTIVITY_BECQUEREL_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("radon"), @@ -391,7 +391,7 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="temperature", - name="Temperature", + translation_key="temperature", device_class=SensorDeviceClass.TEMPERATURE, native_unit_of_measurement=UnitOfTemperature.CELSIUS, state_class=SensorStateClass.MEASUREMENT, @@ -399,21 +399,21 @@ SENSOR_TYPES: list[AirQEntityDescription] = [ ), AirQEntityDescription( key="tvoc", - name="VOC", + translation_key="volatile_organic_compounds", native_unit_of_measurement=CONCENTRATION_PARTS_PER_BILLION, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("tvoc"), ), AirQEntityDescription( key="tvoc_ionsc", - name="VOC (Industrial)", + translation_key="industrial_volatile_organic_compounds", native_unit_of_measurement=CONCENTRATION_PARTS_PER_BILLION, state_class=SensorStateClass.MEASUREMENT, value=lambda data: data.get("tvoc_ionsc"), ), AirQEntityDescription( key="virus", - name="Virus Index", + translation_key="virus_index", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, icon="mdi:virus-off", diff --git a/homeassistant/components/airq/strings.json b/homeassistant/components/airq/strings.json index 3618d9d517e..4216e4df60e 100644 --- a/homeassistant/components/airq/strings.json +++ b/homeassistant/components/airq/strings.json @@ -18,5 +18,156 @@ "abort": { "already_configured": "[%key:common::config_flow::abort::already_configured_device%]" } + }, + "entity": { + "sensor": { + "acetaldehyde": { + "name": "Acetaldehyde" + }, + "ammonia": { + "name": "Ammonia" + }, + "arsine": { + "name": "Arsine" + }, + "bromine": { + "name": "Bromine" + }, + "methanethiol": { + "name": "Methanethiol" + }, + "chlorine": { + "name": "Chlorine" + }, + "chlorine_dioxide": { + "name": "Chlorine dioxide" + }, + "carbon_monoxide": { + "name": "[%key:component::sensor::entity_component::carbon_monoxide::name%]" + }, + "carbon_dioxide": { + "name": "[%key:component::sensor::entity_component::carbon_dioxide::name%]" + }, + "carbon_disulfide": { + "name": "Carbon disulfide" + }, + "dew_point": { + "name": "Dew point" + }, + "ethanol": { + "name": "Ethanol" + }, + "ethylene": { + "name": "Ethylene" + }, + "formaldehyde": { + "name": "Formaldehyde" + }, + "fluorine": { + "name": "Fluorine" + }, + "hydrogen_sulfide": { + "name": "Hydrogen sulfide" + }, + "hydrochloric_acid": { + "name": "Hydrochloric acid" + }, + "hydrogen_cyanide": { + "name": "Hydrogen cyanide" + }, + "hydrogen_fluoride": { + "name": "Hydrogen fluoride" + }, + "health_index": { + "name": "Health Index" + }, + "humidity": { + "name": "[%key:component::sensor::entity_component::humidity::name%]" + }, + "absolute_humidity": { + "name": "Absolute humidity" + }, + "hydrogen": { + "name": "Hydrogen" + }, + "hydrogen_peroxide": { + "name": "Hydrogen peroxide" + }, + "methane": { + "name": "Methane" + }, + "nitrous_oxide": { + "name": "[%key:component::sensor::entity_component::nitrous_oxide::name%]" + }, + "nitrogen_monoxide": { + "name": "[%key:component::sensor::entity_component::nitrogen_monoxide::name%]" + }, + "nitrogen_dioxide": { + "name": "[%key:component::sensor::entity_component::nitrogen_dioxide::name%]" + }, + "organic_acid": { + "name": "Organic acid" + }, + "oxygen": { + "name": "Oxygen" + }, + "ozone": { + "name": "[%key:component::sensor::entity_component::ozone::name%]" + }, + "performance_index": { + "name": "Performance Index" + }, + "hydrogen_phosphide": { + "name": "Hydrogen Phosphide" + }, + "pm1": { + "name": "[%key:component::sensor::entity_component::pm1::name%]" + }, + "pm25": { + "name": "[%key:component::sensor::entity_component::pm25::name%]" + }, + "pm10": { + "name": "[%key:component::sensor::entity_component::pm10::name%]" + }, + "pressure": { + "name": "[%key:component::sensor::entity_component::pressure::name%]" + }, + "relative_pressure": { + "name": "Relative pressure" + }, + "propane": { + "name": "Propane" + }, + "refigerant": { + "name": "Refrigerant" + }, + "silicon_hydride": { + "name": "Silicon Hydride" + }, + "sulphur_dioxide": { + "name": "[%key:component::sensor::entity_component::sulphur_dioxide::name%]" + }, + "noise": { + "name": "Noise" + }, + "maximum_noise": { + "name": "Noise (Maximum)" + }, + "radon": { + "name": "Radon" + }, + "temperature": { + "name": "[%key:component::sensor::entity_component::temperature::name%]" + }, + "volatile_organic_compounds": { + "name": "[%key:component::sensor::entity_component::volatile_organic_compounds::name%]" + }, + "industrial_volatile_organic_compounds": { + "name": "VOCs (Industrial)" + }, + "virus_index": { + "name": "Virus Index" + } + } } }