homeassistant 2025.7.4__py3-none-any.whl → 2025.8.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant/bootstrap.py +31 -38
- homeassistant/brands/frient.json +5 -0
- homeassistant/brands/third_reality.json +1 -1
- homeassistant/brands/ubiquiti.json +1 -1
- homeassistant/components/accuweather/translations/ga.json +6 -0
- homeassistant/components/adguard/translations/ga.json +11 -0
- homeassistant/components/aemet/translations/de.json +1 -1
- homeassistant/components/ai_task/__init__.py +34 -2
- homeassistant/components/ai_task/const.py +6 -0
- homeassistant/components/ai_task/entity.py +7 -4
- homeassistant/components/ai_task/manifest.json +2 -1
- homeassistant/components/ai_task/services.yaml +17 -3
- homeassistant/components/ai_task/strings.json +8 -0
- homeassistant/components/ai_task/task.py +100 -6
- homeassistant/components/ai_task/translations/bg.json +11 -1
- homeassistant/components/ai_task/translations/cs.json +8 -0
- homeassistant/components/ai_task/translations/de.json +8 -0
- homeassistant/components/ai_task/translations/el.json +8 -0
- homeassistant/components/ai_task/translations/en-GB.json +8 -0
- homeassistant/components/ai_task/translations/en.json +8 -0
- homeassistant/components/ai_task/translations/es.json +8 -0
- homeassistant/components/ai_task/translations/et.json +8 -0
- homeassistant/components/ai_task/translations/fr.json +7 -0
- homeassistant/components/ai_task/translations/ga.json +8 -0
- homeassistant/components/ai_task/translations/ja.json +8 -0
- homeassistant/components/ai_task/translations/lt.json +8 -0
- homeassistant/components/ai_task/translations/nl.json +3 -0
- homeassistant/components/ai_task/translations/pt.json +8 -0
- homeassistant/components/ai_task/translations/ru.json +7 -0
- homeassistant/components/ai_task/translations/sk.json +8 -0
- homeassistant/components/ai_task/translations/zh-Hans.json +8 -0
- homeassistant/components/ai_task/translations/zh-Hant.json +8 -0
- homeassistant/components/airgradient/manifest.json +1 -0
- homeassistant/components/airgradient/quality_scale.yaml +14 -18
- homeassistant/components/airgradient/translations/ga.json +42 -0
- homeassistant/components/airgradient/translations/it.json +3 -3
- homeassistant/components/airly/translations/de.json +1 -1
- homeassistant/components/airnow/__init__.py +0 -8
- homeassistant/components/airnow/config_flow.py +2 -2
- homeassistant/components/airnow/translations/de.json +1 -1
- homeassistant/components/airos/__init__.py +42 -0
- homeassistant/components/airos/config_flow.py +82 -0
- homeassistant/components/airos/const.py +9 -0
- homeassistant/components/airos/coordinator.py +70 -0
- homeassistant/components/airos/diagnostics.py +33 -0
- homeassistant/components/airos/entity.py +36 -0
- homeassistant/components/airos/manifest.json +10 -0
- homeassistant/components/airos/quality_scale.yaml +72 -0
- homeassistant/components/airos/sensor.py +145 -0
- homeassistant/components/airos/strings.json +80 -0
- homeassistant/components/airos/translations/bg.json +68 -0
- homeassistant/components/airos/translations/cs.json +80 -0
- homeassistant/components/airos/translations/de.json +80 -0
- homeassistant/components/airos/translations/el.json +29 -0
- homeassistant/components/airos/translations/en-GB.json +80 -0
- homeassistant/components/airos/translations/en.json +80 -0
- homeassistant/components/airos/translations/es.json +80 -0
- homeassistant/components/airos/translations/et.json +80 -0
- homeassistant/components/airos/translations/ga.json +63 -0
- homeassistant/components/airos/translations/he.json +29 -0
- homeassistant/components/airos/translations/ko.json +13 -0
- homeassistant/components/airos/translations/nl.json +10 -0
- homeassistant/components/airos/translations/sk.json +80 -0
- homeassistant/components/airos/translations/sv.json +52 -0
- homeassistant/components/airos/translations/zh-Hans.json +80 -0
- homeassistant/components/airos/translations/zh-Hant.json +80 -0
- homeassistant/components/airq/const.py +0 -1
- homeassistant/components/airq/icons.json +0 -3
- homeassistant/components/airq/sensor.py +3 -5
- homeassistant/components/airq/strings.json +0 -3
- homeassistant/components/airq/translations/bg.json +0 -3
- homeassistant/components/airq/translations/ca.json +0 -3
- homeassistant/components/airq/translations/cs.json +0 -3
- homeassistant/components/airq/translations/de.json +0 -3
- homeassistant/components/airq/translations/el.json +0 -3
- homeassistant/components/airq/translations/en-GB.json +0 -3
- homeassistant/components/airq/translations/en.json +0 -3
- homeassistant/components/airq/translations/es.json +0 -3
- homeassistant/components/airq/translations/et.json +0 -3
- homeassistant/components/airq/translations/fi.json +0 -3
- homeassistant/components/airq/translations/fr.json +0 -3
- homeassistant/components/airq/translations/ga.json +17 -0
- homeassistant/components/airq/translations/hu.json +0 -3
- homeassistant/components/airq/translations/id.json +0 -3
- homeassistant/components/airq/translations/it.json +0 -3
- homeassistant/components/airq/translations/ja.json +0 -3
- homeassistant/components/airq/translations/ko.json +0 -3
- homeassistant/components/airq/translations/lt.json +0 -3
- homeassistant/components/airq/translations/nl.json +0 -3
- homeassistant/components/airq/translations/pl.json +0 -3
- homeassistant/components/airq/translations/pt-BR.json +0 -3
- homeassistant/components/airq/translations/pt.json +0 -3
- homeassistant/components/airq/translations/ro.json +0 -3
- homeassistant/components/airq/translations/ru.json +0 -3
- homeassistant/components/airq/translations/sk.json +0 -3
- homeassistant/components/airq/translations/sv.json +0 -3
- homeassistant/components/airq/translations/tr.json +0 -3
- homeassistant/components/airq/translations/uk.json +0 -3
- homeassistant/components/airq/translations/zh-Hans.json +0 -3
- homeassistant/components/airq/translations/zh-Hant.json +0 -3
- homeassistant/components/airthings/__init__.py +2 -5
- homeassistant/components/airthings/config_flow.py +2 -3
- homeassistant/components/airthings/coordinator.py +10 -1
- homeassistant/components/airthings/sensor.py +2 -2
- homeassistant/components/airtouch4/translations/ga.json +11 -0
- homeassistant/components/airtouch5/translations/ga.json +16 -0
- homeassistant/components/airtouch5/translations/ko.json +11 -0
- homeassistant/components/airvisual_pro/translations/ga.json +11 -0
- homeassistant/components/airzone/translations/ga.json +6 -0
- homeassistant/components/airzone/translations/it.json +1 -1
- homeassistant/components/airzone/translations/ko.json +9 -0
- homeassistant/components/airzone_cloud/manifest.json +1 -1
- homeassistant/components/airzone_cloud/translations/ga.json +4 -0
- homeassistant/components/airzone_cloud/translations/it.json +2 -2
- homeassistant/components/airzone_cloud/translations/ko.json +13 -0
- homeassistant/components/alarmdecoder/translations/ga.json +10 -0
- homeassistant/components/alert/translations/he.json +1 -1
- homeassistant/components/alexa_devices/__init__.py +15 -6
- homeassistant/components/alexa_devices/config_flow.py +75 -9
- homeassistant/components/alexa_devices/coordinator.py +22 -5
- homeassistant/components/alexa_devices/icons.json +8 -0
- homeassistant/components/alexa_devices/manifest.json +2 -2
- homeassistant/components/alexa_devices/quality_scale.yaml +14 -16
- homeassistant/components/alexa_devices/services.py +121 -0
- homeassistant/components/alexa_devices/services.yaml +504 -0
- homeassistant/components/alexa_devices/strings.json +536 -3
- homeassistant/components/alexa_devices/translations/bg.json +35 -0
- homeassistant/components/alexa_devices/translations/ca.json +6 -0
- homeassistant/components/alexa_devices/translations/cs.json +536 -3
- homeassistant/components/alexa_devices/translations/de.json +536 -3
- homeassistant/components/alexa_devices/translations/el.json +15 -3
- homeassistant/components/alexa_devices/translations/en-GB.json +536 -3
- homeassistant/components/alexa_devices/translations/en.json +536 -3
- homeassistant/components/alexa_devices/translations/es.json +233 -3
- homeassistant/components/alexa_devices/translations/et.json +536 -3
- homeassistant/components/alexa_devices/translations/ga.json +517 -3
- homeassistant/components/alexa_devices/translations/he.json +6 -0
- homeassistant/components/alexa_devices/translations/hu.json +0 -8
- homeassistant/components/alexa_devices/translations/it.json +0 -8
- homeassistant/components/alexa_devices/translations/ja.json +14 -2
- homeassistant/components/alexa_devices/translations/ko.json +18 -0
- homeassistant/components/alexa_devices/translations/lt.json +14 -2
- homeassistant/components/alexa_devices/translations/mk.json +5 -1
- homeassistant/components/alexa_devices/translations/nl.json +19 -6
- homeassistant/components/alexa_devices/translations/pt.json +14 -2
- homeassistant/components/alexa_devices/translations/ru.json +20 -0
- homeassistant/components/alexa_devices/translations/sk.json +536 -3
- homeassistant/components/alexa_devices/translations/sv.json +36 -6
- homeassistant/components/alexa_devices/translations/zh-Hans.json +215 -3
- homeassistant/components/alexa_devices/translations/zh-Hant.json +536 -3
- homeassistant/components/alexa_devices/utils.py +2 -2
- homeassistant/components/altruist/translations/ko.json +11 -0
- homeassistant/components/amberelectric/__init__.py +12 -1
- homeassistant/components/amberelectric/const.py +11 -1
- homeassistant/components/amberelectric/coordinator.py +2 -23
- homeassistant/components/amberelectric/helpers.py +25 -0
- homeassistant/components/amberelectric/icons.json +5 -0
- homeassistant/components/amberelectric/sensor.py +2 -6
- homeassistant/components/amberelectric/services.py +121 -0
- homeassistant/components/amberelectric/services.yaml +16 -0
- homeassistant/components/amberelectric/strings.json +46 -10
- homeassistant/components/amberelectric/translations/cs.json +36 -0
- homeassistant/components/amberelectric/translations/de.json +37 -1
- homeassistant/components/amberelectric/translations/el.json +36 -0
- homeassistant/components/amberelectric/translations/en-GB.json +36 -0
- homeassistant/components/amberelectric/translations/en.json +36 -0
- homeassistant/components/amberelectric/translations/es.json +36 -0
- homeassistant/components/amberelectric/translations/et.json +36 -0
- homeassistant/components/amberelectric/translations/ga.json +36 -0
- homeassistant/components/amberelectric/translations/lt.json +36 -0
- homeassistant/components/amberelectric/translations/mk.json +19 -1
- homeassistant/components/amberelectric/translations/nb.json +14 -0
- homeassistant/components/amberelectric/translations/sk.json +36 -0
- homeassistant/components/amberelectric/translations/zh-Hans.json +36 -0
- homeassistant/components/amberelectric/translations/zh-Hant.json +36 -0
- homeassistant/components/ambient_network/translations/ga.json +84 -0
- homeassistant/components/ambient_station/translations/ga.json +12 -0
- homeassistant/components/amcrest/manifest.json +1 -1
- homeassistant/components/analytics/__init__.py +3 -0
- homeassistant/components/analytics/analytics.py +86 -2
- homeassistant/components/analytics/http.py +27 -0
- homeassistant/components/analytics/manifest.json +1 -1
- homeassistant/components/analytics_insights/__init__.py +0 -8
- homeassistant/components/analytics_insights/config_flow.py +6 -2
- homeassistant/components/analytics_insights/translations/ga.json +15 -4
- homeassistant/components/androidtv/media_player.py +1 -1
- homeassistant/components/androidtv_remote/__init__.py +6 -21
- homeassistant/components/androidtv_remote/config_flow.py +35 -18
- homeassistant/components/androidtv_remote/diagnostics.py +1 -1
- homeassistant/components/androidtv_remote/entity.py +4 -2
- homeassistant/components/androidtv_remote/helpers.py +4 -2
- homeassistant/components/androidtv_remote/manifest.json +1 -1
- homeassistant/components/androidtv_remote/media_player.py +10 -10
- homeassistant/components/androidtv_remote/remote.py +3 -2
- homeassistant/components/androidtv_remote/strings.json +26 -3
- homeassistant/components/androidtv_remote/translations/bg.json +7 -1
- homeassistant/components/androidtv_remote/translations/ca.json +7 -1
- homeassistant/components/androidtv_remote/translations/cs.json +25 -2
- homeassistant/components/androidtv_remote/translations/de.json +25 -2
- homeassistant/components/androidtv_remote/translations/el.json +25 -2
- homeassistant/components/androidtv_remote/translations/en-GB.json +25 -2
- homeassistant/components/androidtv_remote/translations/en.json +25 -2
- homeassistant/components/androidtv_remote/translations/es.json +25 -2
- homeassistant/components/androidtv_remote/translations/et.json +25 -2
- homeassistant/components/androidtv_remote/translations/ga.json +33 -1
- homeassistant/components/androidtv_remote/translations/he.json +25 -2
- homeassistant/components/androidtv_remote/translations/ja.json +19 -1
- homeassistant/components/androidtv_remote/translations/ko.json +5 -0
- homeassistant/components/androidtv_remote/translations/lt.json +25 -2
- homeassistant/components/androidtv_remote/translations/nl.json +7 -1
- homeassistant/components/androidtv_remote/translations/pt.json +25 -2
- homeassistant/components/androidtv_remote/translations/sk.json +25 -2
- homeassistant/components/androidtv_remote/translations/sl.json +2 -1
- homeassistant/components/androidtv_remote/translations/sv.json +7 -1
- homeassistant/components/androidtv_remote/translations/zh-Hans.json +25 -2
- homeassistant/components/androidtv_remote/translations/zh-Hant.json +25 -2
- homeassistant/components/anova/translations/ga.json +27 -0
- homeassistant/components/anova/translations/he.json +1 -1
- homeassistant/components/anthemav/strings.json +1 -1
- homeassistant/components/anthropic/__init__.py +87 -11
- homeassistant/components/anthropic/config_flow.py +1 -1
- homeassistant/components/anthropic/const.py +2 -2
- homeassistant/components/anthropic/conversation.py +9 -405
- homeassistant/components/anthropic/entity.py +395 -0
- homeassistant/components/anthropic/strings.json +1 -1
- homeassistant/components/anthropic/translations/ga.json +3 -1
- homeassistant/components/anthropic/translations/ko.json +12 -1
- homeassistant/components/aosmith/translations/ga.json +19 -0
- homeassistant/components/apcupsd/translations/es.json +3 -3
- homeassistant/components/apcupsd/translations/ga.json +205 -0
- homeassistant/components/apple_tv/manifest.json +1 -1
- homeassistant/components/apple_tv/media_player.py +2 -2
- homeassistant/components/apple_tv/translations/ga.json +10 -0
- homeassistant/components/aprilaire/translations/ga.json +35 -0
- homeassistant/components/aprilaire/translations/he.json +4 -4
- homeassistant/components/aprilaire/translations/it.json +14 -14
- homeassistant/components/aprilaire/translations/ko.json +10 -0
- homeassistant/components/apsystems/translations/ga.json +29 -0
- homeassistant/components/apsystems/translations/ko.json +9 -0
- homeassistant/components/aquacell/translations/ko.json +1 -1
- homeassistant/components/aquacell/translations/nl.json +3 -0
- homeassistant/components/aranet/translations/ga.json +5 -0
- homeassistant/components/arcam_fmj/manifest.json +1 -1
- homeassistant/components/arve/translations/ga.json +20 -0
- homeassistant/components/aseko_pool_live/translations/ko.json +6 -0
- homeassistant/components/assist_pipeline/__init__.py +0 -4
- homeassistant/components/assist_pipeline/const.py +0 -1
- homeassistant/components/assist_pipeline/pipeline.py +1 -46
- homeassistant/components/assist_satellite/__init__.py +4 -4
- homeassistant/components/assist_satellite/services.yaml +4 -3
- homeassistant/components/assist_satellite/translations/he.json +1 -1
- homeassistant/components/assist_satellite/translations/sl.json +7 -0
- homeassistant/components/asuswrt/router.py +12 -3
- homeassistant/components/august/manifest.json +1 -1
- homeassistant/components/august/translations/ga.json +9 -0
- homeassistant/components/aurora_abb_powerone/translations/ga.json +24 -0
- homeassistant/components/autarco/translations/ko.json +17 -0
- homeassistant/components/automation/translations/it.json +2 -2
- homeassistant/components/awair/const.py +1 -0
- homeassistant/components/awair/sensor.py +10 -0
- homeassistant/components/awair/strings.json +3 -0
- homeassistant/components/awair/translations/cs.json +3 -0
- homeassistant/components/awair/translations/de.json +3 -0
- homeassistant/components/awair/translations/el.json +3 -0
- homeassistant/components/awair/translations/en-GB.json +3 -0
- homeassistant/components/awair/translations/en.json +3 -0
- homeassistant/components/awair/translations/es.json +3 -0
- homeassistant/components/awair/translations/et.json +3 -0
- homeassistant/components/awair/translations/ga.json +9 -1
- homeassistant/components/awair/translations/ja.json +3 -0
- homeassistant/components/awair/translations/lt.json +3 -0
- homeassistant/components/awair/translations/mk.json +3 -0
- homeassistant/components/awair/translations/nl.json +3 -0
- homeassistant/components/awair/translations/pt.json +3 -0
- homeassistant/components/awair/translations/ru.json +3 -0
- homeassistant/components/awair/translations/sk.json +3 -0
- homeassistant/components/awair/translations/zh-Hans.json +3 -0
- homeassistant/components/awair/translations/zh-Hant.json +3 -0
- homeassistant/components/axis/__init__.py +3 -1
- homeassistant/components/axis/manifest.json +1 -1
- homeassistant/components/axis/translations/ga.json +4 -0
- homeassistant/components/azure_data_explorer/translations/ga.json +8 -1
- homeassistant/components/azure_devops/translations/ga.json +30 -0
- homeassistant/components/azure_storage/translations/ga.json +3 -0
- homeassistant/components/backup/__init__.py +18 -34
- homeassistant/components/backup/coordinator.py +2 -6
- homeassistant/components/backup/manager.py +31 -8
- homeassistant/components/backup/onboarding.py +8 -3
- homeassistant/components/backup/services.py +36 -0
- homeassistant/components/backup/translations/he.json +1 -1
- homeassistant/components/backup/websocket.py +25 -1
- homeassistant/components/balboa/translations/ga.json +28 -0
- homeassistant/components/bang_olufsen/strings.json +4 -4
- homeassistant/components/bang_olufsen/translations/cs.json +4 -0
- homeassistant/components/bang_olufsen/translations/fr.json +16 -0
- homeassistant/components/bang_olufsen/translations/ga.json +15 -0
- homeassistant/components/bauknecht/__init__.py +1 -0
- homeassistant/components/bauknecht/manifest.json +6 -0
- homeassistant/components/binary_sensor/translations/ga.json +8 -0
- homeassistant/components/binary_sensor/translations/it.json +4 -4
- homeassistant/components/blebox/translations/ko.json +3 -1
- homeassistant/components/blink/translations/ga.json +42 -0
- homeassistant/components/blue_current/__init__.py +33 -14
- homeassistant/components/blue_current/const.py +11 -0
- homeassistant/components/blue_current/icons.json +11 -0
- homeassistant/components/blue_current/manifest.json +1 -1
- homeassistant/components/blue_current/strings.json +11 -0
- homeassistant/components/blue_current/switch.py +169 -0
- homeassistant/components/blue_current/translations/cs.json +11 -0
- homeassistant/components/blue_current/translations/de.json +11 -0
- homeassistant/components/blue_current/translations/el.json +8 -0
- homeassistant/components/blue_current/translations/en-GB.json +11 -0
- homeassistant/components/blue_current/translations/en.json +11 -0
- homeassistant/components/blue_current/translations/es.json +11 -0
- homeassistant/components/blue_current/translations/et.json +11 -0
- homeassistant/components/blue_current/translations/fi.json +11 -0
- homeassistant/components/blue_current/translations/ga.json +34 -0
- homeassistant/components/blue_current/translations/ko.json +9 -0
- homeassistant/components/blue_current/translations/sk.json +11 -0
- homeassistant/components/blue_current/translations/zh-Hans.json +11 -0
- homeassistant/components/blue_current/translations/zh-Hant.json +11 -0
- homeassistant/components/bluemaestro/translations/ga.json +9 -0
- homeassistant/components/bluesound/manifest.json +1 -1
- homeassistant/components/bluesound/translations/ko.json +10 -0
- homeassistant/components/bluetooth/manifest.json +5 -5
- homeassistant/components/bmw_connected_drive/translations/es.json +1 -1
- homeassistant/components/bmw_connected_drive/translations/ga.json +32 -1
- homeassistant/components/bond/translations/ga.json +11 -0
- homeassistant/components/bosch_alarm/__init__.py +2 -2
- homeassistant/components/bosch_alarm/services.py +3 -2
- homeassistant/components/bosch_alarm/translations/ga.json +2 -1
- homeassistant/components/bosch_alarm/translations/ko.json +22 -0
- homeassistant/components/bosch_shc/translations/ga.json +11 -0
- homeassistant/components/bring/__init__.py +13 -0
- homeassistant/components/bring/const.py +4 -1
- homeassistant/components/bring/icons.json +3 -0
- homeassistant/components/bring/services.py +110 -0
- homeassistant/components/bring/services.yaml +25 -0
- homeassistant/components/bring/strings.json +27 -0
- homeassistant/components/bring/translations/bg.json +11 -0
- homeassistant/components/bring/translations/ca.json +12 -0
- homeassistant/components/bring/translations/cs.json +26 -0
- homeassistant/components/bring/translations/de.json +26 -0
- homeassistant/components/bring/translations/el.json +26 -0
- homeassistant/components/bring/translations/en-GB.json +26 -0
- homeassistant/components/bring/translations/en.json +26 -0
- homeassistant/components/bring/translations/es.json +26 -0
- homeassistant/components/bring/translations/et.json +26 -0
- homeassistant/components/bring/translations/ga.json +80 -0
- homeassistant/components/bring/translations/it.json +3 -0
- homeassistant/components/bring/translations/ko.json +22 -0
- homeassistant/components/bring/translations/lt.json +26 -0
- homeassistant/components/bring/translations/mk.json +14 -0
- homeassistant/components/bring/translations/pt.json +26 -0
- homeassistant/components/bring/translations/sk.json +26 -0
- homeassistant/components/bring/translations/zh-Hans.json +26 -0
- homeassistant/components/bring/translations/zh-Hant.json +26 -0
- homeassistant/components/broadlink/const.py +1 -0
- homeassistant/components/broadlink/sensor.py +19 -0
- homeassistant/components/broadlink/updater.py +12 -0
- homeassistant/components/brother/manifest.json +1 -1
- homeassistant/components/brother/translations/ga.json +3 -0
- homeassistant/components/brother/translations/ko.json +5 -0
- homeassistant/components/bryant_evolution/translations/ga.json +3 -0
- homeassistant/components/bsblan/config_flow.py +130 -14
- homeassistant/components/bsblan/manifest.json +7 -1
- homeassistant/components/bsblan/sensor.py +2 -0
- homeassistant/components/bsblan/strings.json +19 -1
- homeassistant/components/bsblan/translations/bg.json +6 -0
- homeassistant/components/bsblan/translations/ca.json +7 -0
- homeassistant/components/bsblan/translations/cs.json +19 -1
- homeassistant/components/bsblan/translations/de.json +19 -1
- homeassistant/components/bsblan/translations/el.json +19 -1
- homeassistant/components/bsblan/translations/en-GB.json +19 -1
- homeassistant/components/bsblan/translations/en.json +19 -1
- homeassistant/components/bsblan/translations/es.json +19 -1
- homeassistant/components/bsblan/translations/et.json +19 -1
- homeassistant/components/bsblan/translations/ga.json +27 -0
- homeassistant/components/bsblan/translations/he.json +6 -0
- homeassistant/components/bsblan/translations/ko.json +6 -0
- homeassistant/components/bsblan/translations/lt.json +19 -1
- homeassistant/components/bsblan/translations/nl.json +7 -0
- homeassistant/components/bsblan/translations/pt.json +19 -1
- homeassistant/components/bsblan/translations/sk.json +19 -1
- homeassistant/components/bsblan/translations/sv.json +19 -1
- homeassistant/components/bsblan/translations/zh-Hans.json +19 -1
- homeassistant/components/bsblan/translations/zh-Hant.json +19 -1
- homeassistant/components/bthome/coordinator.py +1 -1
- homeassistant/components/bthome/device_trigger.py +1 -1
- homeassistant/components/bthome/translations/ga.json +3 -1
- homeassistant/components/caldav/manifest.json +1 -1
- homeassistant/components/calendar/translations/ga.json +27 -0
- homeassistant/components/calendar/translations/it.json +2 -2
- homeassistant/components/cambridge_audio/media_player.py +1 -1
- homeassistant/components/cambridge_audio/translations/ga.json +1 -0
- homeassistant/components/cambridge_audio/translations/it.json +2 -2
- homeassistant/components/cambridge_audio/translations/ko.json +16 -0
- homeassistant/components/camera/translations/he.json +1 -1
- homeassistant/components/ccm15/translations/ko.json +12 -0
- homeassistant/components/chacon_dio/translations/ko.json +12 -0
- homeassistant/components/climate/translations/ga.json +12 -0
- homeassistant/components/climate/translations/he.json +1 -1
- homeassistant/components/climate/translations/it.json +9 -9
- homeassistant/components/cloud/backup.py +6 -15
- homeassistant/components/cloud/client.py +2 -1
- homeassistant/components/cloud/http_api.py +1 -1
- homeassistant/components/cloud/manifest.json +1 -1
- homeassistant/components/cloud/repairs.py +3 -3
- homeassistant/components/cloud/strings.json +4 -0
- homeassistant/components/cloud/subscription.py +5 -12
- homeassistant/components/cloud/translations/cs.json +4 -0
- homeassistant/components/cloud/translations/de.json +4 -0
- homeassistant/components/cloud/translations/el.json +4 -0
- homeassistant/components/cloud/translations/en-GB.json +4 -0
- homeassistant/components/cloud/translations/en.json +4 -0
- homeassistant/components/cloud/translations/es.json +4 -0
- homeassistant/components/cloud/translations/et.json +4 -0
- homeassistant/components/cloud/translations/fr.json +4 -0
- homeassistant/components/cloud/translations/ga.json +38 -0
- homeassistant/components/cloud/translations/he.json +4 -0
- homeassistant/components/cloud/translations/nl.json +3 -0
- homeassistant/components/cloud/translations/ru.json +4 -0
- homeassistant/components/cloud/translations/sk.json +4 -0
- homeassistant/components/cloud/translations/zh-Hans.json +4 -0
- homeassistant/components/cloud/translations/zh-Hant.json +4 -0
- homeassistant/components/cloud/tts.py +31 -4
- homeassistant/components/co2signal/translations/ga.json +32 -0
- homeassistant/components/co2signal/translations/ko.json +5 -0
- homeassistant/components/comelit/translations/ga.json +20 -0
- homeassistant/components/comelit/translations/ko.json +7 -0
- homeassistant/components/command_line/sensor.py +1 -12
- homeassistant/components/compensation/__init__.py +17 -7
- homeassistant/components/compensation/manifest.json +1 -1
- homeassistant/components/compensation/sensor.py +55 -27
- homeassistant/components/control4/__init__.py +9 -15
- homeassistant/components/control4/config_flow.py +6 -2
- homeassistant/components/conversation/__init__.py +4 -11
- homeassistant/components/conversation/agent_manager.py +2 -7
- homeassistant/components/conversation/chat_log.py +18 -0
- homeassistant/components/conversation/const.py +0 -1
- homeassistant/components/conversation/manifest.json +1 -1
- homeassistant/components/conversation/translations/ga.json +7 -0
- homeassistant/components/conversation/util.py +47 -0
- homeassistant/components/cookidoo/translations/ga.json +4 -0
- homeassistant/components/cookidoo/translations/ko.json +24 -0
- homeassistant/components/coolmaster/__init__.py +13 -1
- homeassistant/components/cover/translations/da.json +2 -1
- homeassistant/components/daikin/translations/ga.json +9 -0
- homeassistant/components/datadog/__init__.py +64 -34
- homeassistant/components/datadog/config_flow.py +203 -0
- homeassistant/components/datadog/const.py +10 -0
- homeassistant/components/datadog/manifest.json +2 -1
- homeassistant/components/datadog/strings.json +56 -0
- homeassistant/components/datadog/translations/bg.json +28 -0
- homeassistant/components/datadog/translations/cs.json +56 -0
- homeassistant/components/datadog/translations/de.json +56 -0
- homeassistant/components/datadog/translations/el.json +56 -0
- homeassistant/components/datadog/translations/en-GB.json +56 -0
- homeassistant/components/datadog/translations/en.json +56 -0
- homeassistant/components/datadog/translations/es.json +56 -0
- homeassistant/components/datadog/translations/et.json +56 -0
- homeassistant/components/datadog/translations/ga.json +40 -0
- homeassistant/components/datadog/translations/he.json +28 -0
- homeassistant/components/datadog/translations/ko.json +12 -0
- homeassistant/components/datadog/translations/mk.json +14 -0
- homeassistant/components/datadog/translations/nl.json +28 -0
- homeassistant/components/datadog/translations/ru.json +56 -0
- homeassistant/components/datadog/translations/sk.json +56 -0
- homeassistant/components/datadog/translations/sv.json +44 -0
- homeassistant/components/datadog/translations/zh-Hans.json +56 -0
- homeassistant/components/datadog/translations/zh-Hant.json +56 -0
- homeassistant/components/deconz/translations/ga.json +11 -0
- homeassistant/components/deluge/translations/ga.json +9 -0
- homeassistant/components/deluge/translations/he.json +1 -1
- homeassistant/components/demo/translations/ga.json +12 -0
- homeassistant/components/demo/translations/it.json +3 -3
- homeassistant/components/demo/vacuum.py +6 -19
- homeassistant/components/denonavr/__init__.py +0 -9
- homeassistant/components/denonavr/config_flow.py +6 -2
- homeassistant/components/denonavr/manifest.json +1 -1
- homeassistant/components/derivative/__init__.py +58 -6
- homeassistant/components/derivative/config_flow.py +4 -0
- homeassistant/components/derivative/sensor.py +83 -45
- homeassistant/components/derivative/strings.json +5 -0
- homeassistant/components/derivative/translations/ca.json +5 -0
- homeassistant/components/derivative/translations/cs.json +5 -0
- homeassistant/components/derivative/translations/de.json +5 -0
- homeassistant/components/derivative/translations/el.json +5 -0
- homeassistant/components/derivative/translations/en-GB.json +5 -0
- homeassistant/components/derivative/translations/en.json +5 -0
- homeassistant/components/derivative/translations/es.json +5 -0
- homeassistant/components/derivative/translations/et.json +5 -0
- homeassistant/components/derivative/translations/fr.json +5 -0
- homeassistant/components/derivative/translations/ga.json +7 -0
- homeassistant/components/derivative/translations/ja.json +5 -0
- homeassistant/components/derivative/translations/lt.json +5 -0
- homeassistant/components/derivative/translations/nl.json +5 -0
- homeassistant/components/derivative/translations/pt.json +5 -0
- homeassistant/components/derivative/translations/sk.json +5 -0
- homeassistant/components/derivative/translations/sv.json +5 -0
- homeassistant/components/derivative/translations/zh-Hans.json +5 -0
- homeassistant/components/derivative/translations/zh-Hant.json +5 -0
- homeassistant/components/devialet/translations/ga.json +16 -0
- homeassistant/components/devolo_home_control/config_flow.py +49 -60
- homeassistant/components/devolo_home_control/entity.py +28 -3
- homeassistant/components/devolo_home_control/strings.json +1 -1
- homeassistant/components/devolo_home_control/translations/ko.json +5 -0
- homeassistant/components/devolo_home_network/coordinator.py +4 -3
- homeassistant/components/devolo_home_network/device_tracker.py +13 -22
- homeassistant/components/devolo_home_network/entity.py +1 -1
- homeassistant/components/devolo_home_network/manifest.json +1 -0
- homeassistant/components/devolo_home_network/quality_scale.yaml +84 -0
- homeassistant/components/devolo_home_network/sensor.py +6 -2
- homeassistant/components/devolo_home_network/strings.json +4 -4
- homeassistant/components/devolo_home_network/translations/ga.json +18 -0
- homeassistant/components/devolo_home_network/translations/ko.json +7 -1
- homeassistant/components/dexcom/translations/ga.json +17 -0
- homeassistant/components/dhcp/manifest.json +1 -1
- homeassistant/components/diagnostics/__init__.py +14 -2
- homeassistant/components/directv/translations/ga.json +11 -0
- homeassistant/components/discovergy/__init__.py +7 -2
- homeassistant/components/discovergy/coordinator.py +9 -2
- homeassistant/components/discovergy/manifest.json +1 -1
- homeassistant/components/discovergy/quality_scale.yaml +16 -9
- homeassistant/components/discovergy/strings.json +11 -0
- homeassistant/components/discovergy/translations/cs.json +11 -0
- homeassistant/components/discovergy/translations/de.json +11 -0
- homeassistant/components/discovergy/translations/el.json +11 -0
- homeassistant/components/discovergy/translations/en-GB.json +11 -0
- homeassistant/components/discovergy/translations/en.json +11 -0
- homeassistant/components/discovergy/translations/es.json +11 -0
- homeassistant/components/discovergy/translations/et.json +11 -0
- homeassistant/components/discovergy/translations/ga.json +11 -0
- homeassistant/components/discovergy/translations/lt.json +11 -0
- homeassistant/components/discovergy/translations/nb.json +11 -0
- homeassistant/components/discovergy/translations/sk.json +11 -0
- homeassistant/components/discovergy/translations/sv.json +8 -0
- homeassistant/components/discovergy/translations/zh-Hans.json +11 -0
- homeassistant/components/discovergy/translations/zh-Hant.json +11 -0
- homeassistant/components/dlink/translations/ga.json +11 -0
- homeassistant/components/dnsip/__init__.py +0 -6
- homeassistant/components/dnsip/config_flow.py +5 -2
- homeassistant/components/dnsip/strings.json +2 -1
- homeassistant/components/dnsip/translations/cs.json +2 -1
- homeassistant/components/dnsip/translations/de.json +2 -1
- homeassistant/components/dnsip/translations/el.json +2 -1
- homeassistant/components/dnsip/translations/en-GB.json +2 -1
- homeassistant/components/dnsip/translations/en.json +2 -1
- homeassistant/components/dnsip/translations/es.json +2 -1
- homeassistant/components/dnsip/translations/et.json +2 -1
- homeassistant/components/dnsip/translations/ga.json +3 -0
- homeassistant/components/dnsip/translations/he.json +2 -1
- homeassistant/components/dnsip/translations/ja.json +2 -1
- homeassistant/components/dnsip/translations/lt.json +2 -1
- homeassistant/components/dnsip/translations/pt.json +2 -1
- homeassistant/components/dnsip/translations/sk.json +2 -1
- homeassistant/components/dnsip/translations/sv.json +2 -1
- homeassistant/components/dnsip/translations/zh-Hans.json +2 -1
- homeassistant/components/dnsip/translations/zh-Hant.json +2 -1
- homeassistant/components/dominos/strings.json +2 -2
- homeassistant/components/doods/manifest.json +1 -1
- homeassistant/components/doorbird/translations/ga.json +5 -0
- homeassistant/components/doorbird/translations/ko.json +6 -0
- homeassistant/components/downloader/__init__.py +3 -0
- homeassistant/components/downloader/services.py +27 -19
- homeassistant/components/downloader/strings.json +8 -0
- homeassistant/components/downloader/translations/cs.json +8 -0
- homeassistant/components/downloader/translations/de.json +8 -0
- homeassistant/components/downloader/translations/en-GB.json +8 -0
- homeassistant/components/downloader/translations/en.json +8 -0
- homeassistant/components/downloader/translations/et.json +8 -0
- homeassistant/components/downloader/translations/ga.json +12 -0
- homeassistant/components/downloader/translations/ru.json +8 -0
- homeassistant/components/downloader/translations/sk.json +8 -0
- homeassistant/components/downloader/translations/zh-Hans.json +8 -0
- homeassistant/components/downloader/translations/zh-Hant.json +8 -0
- homeassistant/components/drop_connect/translations/ga.json +83 -0
- homeassistant/components/dsmr/strings.json +1 -1
- homeassistant/components/dsmr/translations/fr.json +2 -1
- homeassistant/components/dsmr/translations/ga.json +3 -0
- homeassistant/components/dsmr_reader/strings.json +1 -1
- homeassistant/components/dsmr_reader/translations/ga.json +8 -0
- homeassistant/components/duke_energy/translations/ko.json +12 -0
- homeassistant/components/duotecno/translations/ga.json +18 -0
- homeassistant/components/duotecno/translations/ko.json +1 -0
- homeassistant/components/dwd_weather_warnings/strings.json +2 -2
- homeassistant/components/dwd_weather_warnings/translations/ga.json +17 -0
- homeassistant/components/dynalite/__init__.py +2 -2
- homeassistant/components/dynalite/services.py +1 -1
- homeassistant/components/easyenergy/translations/ga.json +16 -0
- homeassistant/components/ecobee/translations/ga.json +11 -0
- homeassistant/components/ecoforest/translations/ga.json +24 -0
- homeassistant/components/ecoforest/translations/it.json +2 -2
- homeassistant/components/ecovacs/binary_sensor.py +49 -2
- homeassistant/components/ecovacs/manifest.json +1 -1
- homeassistant/components/ecovacs/sensor.py +48 -2
- homeassistant/components/ecovacs/translations/ga.json +191 -2
- homeassistant/components/ecovacs/translations/he.json +1 -1
- homeassistant/components/ecovacs/translations/ko.json +11 -0
- homeassistant/components/ecovacs/translations/nl.json +7 -0
- homeassistant/components/ecovacs/vacuum.py +2 -30
- homeassistant/components/ecowitt/sensor.py +3 -0
- homeassistant/components/eheimdigital/config_flow.py +55 -1
- homeassistant/components/eheimdigital/manifest.json +2 -2
- homeassistant/components/eheimdigital/quality_scale.yaml +10 -8
- homeassistant/components/eheimdigital/strings.json +11 -1
- homeassistant/components/eheimdigital/translations/bg.json +7 -1
- homeassistant/components/eheimdigital/translations/ca.json +7 -1
- homeassistant/components/eheimdigital/translations/cs.json +11 -1
- homeassistant/components/eheimdigital/translations/de.json +11 -1
- homeassistant/components/eheimdigital/translations/el.json +11 -1
- homeassistant/components/eheimdigital/translations/en-GB.json +11 -1
- homeassistant/components/eheimdigital/translations/en.json +11 -1
- homeassistant/components/eheimdigital/translations/es.json +11 -1
- homeassistant/components/eheimdigital/translations/et.json +11 -1
- homeassistant/components/eheimdigital/translations/ga.json +9 -0
- homeassistant/components/eheimdigital/translations/he.json +7 -1
- homeassistant/components/eheimdigital/translations/ja.json +11 -1
- homeassistant/components/eheimdigital/translations/ko.json +16 -0
- homeassistant/components/eheimdigital/translations/lt.json +11 -1
- homeassistant/components/eheimdigital/translations/nl.json +7 -1
- homeassistant/components/eheimdigital/translations/pt.json +11 -1
- homeassistant/components/eheimdigital/translations/ru.json +8 -0
- homeassistant/components/eheimdigital/translations/sk.json +11 -1
- homeassistant/components/eheimdigital/translations/sv.json +11 -1
- homeassistant/components/eheimdigital/translations/zh-Hans.json +11 -1
- homeassistant/components/eheimdigital/translations/zh-Hant.json +11 -1
- homeassistant/components/electric_kiwi/translations/ga.json +22 -0
- homeassistant/components/electric_kiwi/translations/ko.json +3 -0
- homeassistant/components/elevenlabs/__init__.py +2 -1
- homeassistant/components/elevenlabs/config_flow.py +9 -11
- homeassistant/components/elevenlabs/const.py +0 -2
- homeassistant/components/elevenlabs/manifest.json +1 -1
- homeassistant/components/elevenlabs/strings.json +2 -3
- homeassistant/components/elevenlabs/translations/bg.json +2 -1
- homeassistant/components/elevenlabs/translations/ca.json +2 -2
- homeassistant/components/elevenlabs/translations/cs.json +2 -3
- homeassistant/components/elevenlabs/translations/de.json +2 -3
- homeassistant/components/elevenlabs/translations/el.json +2 -3
- homeassistant/components/elevenlabs/translations/en-GB.json +2 -3
- homeassistant/components/elevenlabs/translations/en.json +2 -3
- homeassistant/components/elevenlabs/translations/es.json +2 -3
- homeassistant/components/elevenlabs/translations/et.json +2 -3
- homeassistant/components/elevenlabs/translations/fr.json +2 -3
- homeassistant/components/elevenlabs/translations/ga.json +0 -2
- homeassistant/components/elevenlabs/translations/he.json +2 -1
- homeassistant/components/elevenlabs/translations/hu.json +0 -2
- homeassistant/components/elevenlabs/translations/ja.json +0 -2
- homeassistant/components/elevenlabs/translations/ko.json +1 -1
- homeassistant/components/elevenlabs/translations/lt.json +2 -3
- homeassistant/components/elevenlabs/translations/nl.json +2 -2
- homeassistant/components/elevenlabs/translations/pt.json +0 -2
- homeassistant/components/elevenlabs/translations/ru.json +0 -2
- homeassistant/components/elevenlabs/translations/sk.json +2 -3
- homeassistant/components/elevenlabs/translations/sv.json +2 -3
- homeassistant/components/elevenlabs/translations/tr.json +0 -2
- homeassistant/components/elevenlabs/translations/zh-Hans.json +2 -3
- homeassistant/components/elevenlabs/translations/zh-Hant.json +2 -3
- homeassistant/components/elevenlabs/tts.py +4 -11
- homeassistant/components/elmax/translations/ga.json +39 -0
- homeassistant/components/elmax/translations/ko.json +6 -0
- homeassistant/components/elvia/translations/ga.json +18 -0
- homeassistant/components/elvia/translations/ko.json +11 -0
- homeassistant/components/emoncms/__init__.py +0 -6
- homeassistant/components/emoncms/config_flow.py +72 -3
- homeassistant/components/emoncms/const.py +3 -0
- homeassistant/components/emoncms/strings.json +13 -2
- homeassistant/components/emoncms/translations/bg.json +2 -1
- homeassistant/components/emoncms/translations/ca.json +2 -1
- homeassistant/components/emoncms/translations/cs.json +12 -1
- homeassistant/components/emoncms/translations/de.json +12 -1
- homeassistant/components/emoncms/translations/el.json +4 -1
- homeassistant/components/emoncms/translations/en-GB.json +12 -1
- homeassistant/components/emoncms/translations/en.json +12 -1
- homeassistant/components/emoncms/translations/es.json +12 -1
- homeassistant/components/emoncms/translations/et.json +12 -1
- homeassistant/components/emoncms/translations/ga.json +6 -1
- homeassistant/components/emoncms/translations/he.json +3 -0
- homeassistant/components/emoncms/translations/it.json +1 -0
- homeassistant/components/emoncms/translations/ja.json +4 -1
- homeassistant/components/emoncms/translations/ko.json +12 -0
- homeassistant/components/emoncms/translations/lt.json +4 -1
- homeassistant/components/emoncms/translations/nl.json +4 -0
- homeassistant/components/emoncms/translations/pt.json +4 -1
- homeassistant/components/emoncms/translations/sk.json +12 -1
- homeassistant/components/emoncms/translations/sv.json +3 -1
- homeassistant/components/emoncms/translations/zh-Hans.json +12 -1
- homeassistant/components/emoncms/translations/zh-Hant.json +12 -1
- homeassistant/components/energenie_power_sockets/translations/ga.json +23 -0
- homeassistant/components/energenie_power_sockets/translations/ko.json +11 -0
- homeassistant/components/energy/sensor.py +2 -7
- homeassistant/components/energy/translations/sl.json +4 -0
- homeassistant/components/energy/validate.py +5 -14
- homeassistant/components/energyzero/translations/ga.json +42 -0
- homeassistant/components/enigma2/translations/ga.json +8 -0
- homeassistant/components/enigma2/translations/ko.json +14 -0
- homeassistant/components/enphase_envoy/__init__.py +0 -9
- homeassistant/components/enphase_envoy/binary_sensor.py +2 -0
- homeassistant/components/enphase_envoy/config_flow.py +2 -2
- homeassistant/components/enphase_envoy/coordinator.py +8 -0
- homeassistant/components/enphase_envoy/diagnostics.py +2 -0
- homeassistant/components/enphase_envoy/manifest.json +1 -1
- homeassistant/components/enphase_envoy/number.py +1 -0
- homeassistant/components/enphase_envoy/select.py +1 -0
- homeassistant/components/enphase_envoy/sensor.py +3 -0
- homeassistant/components/enphase_envoy/strings.json +1 -1
- homeassistant/components/enphase_envoy/switch.py +2 -0
- homeassistant/components/enphase_envoy/translations/ga.json +117 -0
- homeassistant/components/enphase_envoy/translations/he.json +1 -1
- homeassistant/components/enphase_envoy/translations/ko.json +13 -0
- homeassistant/components/environment_canada/translations/fr.json +98 -0
- homeassistant/components/epic_games_store/translations/ga.json +22 -1
- homeassistant/components/epic_games_store/translations/ko.json +12 -0
- homeassistant/components/epion/translations/ko.json +11 -0
- homeassistant/components/epson/translations/ga.json +3 -0
- homeassistant/components/eq3btsmart/manifest.json +1 -1
- homeassistant/components/eq3btsmart/translations/ga.json +12 -0
- homeassistant/components/esphome/alarm_control_panel.py +28 -7
- homeassistant/components/esphome/button.py +1 -1
- homeassistant/components/esphome/climate.py +14 -6
- homeassistant/components/esphome/config_flow.py +33 -4
- homeassistant/components/esphome/cover.py +25 -7
- homeassistant/components/esphome/date.py +7 -1
- homeassistant/components/esphome/datetime.py +3 -1
- homeassistant/components/esphome/encryption_key_storage.py +94 -0
- homeassistant/components/esphome/entity.py +74 -8
- homeassistant/components/esphome/entry_data.py +44 -27
- homeassistant/components/esphome/fan.py +17 -5
- homeassistant/components/esphome/light.py +2 -2
- homeassistant/components/esphome/lock.py +9 -3
- homeassistant/components/esphome/manager.py +96 -4
- homeassistant/components/esphome/manifest.json +3 -3
- homeassistant/components/esphome/media_player.py +23 -5
- homeassistant/components/esphome/number.py +3 -1
- homeassistant/components/esphome/select.py +3 -1
- homeassistant/components/esphome/switch.py +6 -2
- homeassistant/components/esphome/text.py +3 -1
- homeassistant/components/esphome/time.py +7 -1
- homeassistant/components/esphome/translations/ga.json +4 -0
- homeassistant/components/esphome/update.py +10 -2
- homeassistant/components/esphome/valve.py +14 -4
- homeassistant/components/evil_genius_labs/translations/ga.json +11 -0
- homeassistant/components/ezviz/__init__.py +0 -7
- homeassistant/components/ezviz/config_flow.py +6 -2
- homeassistant/components/faa_delays/translations/es.json +1 -1
- homeassistant/components/faa_delays/translations/ga.json +73 -0
- homeassistant/components/fan/translations/ga.json +7 -0
- homeassistant/components/fan/translations/it.json +2 -2
- homeassistant/components/fastdotcom/translations/ga.json +9 -0
- homeassistant/components/feedreader/__init__.py +0 -9
- homeassistant/components/feedreader/config_flow.py +4 -5
- homeassistant/components/feedreader/translations/ga.json +3 -0
- homeassistant/components/feedreader/translations/ko.json +16 -0
- homeassistant/components/file/__init__.py +0 -6
- homeassistant/components/file/config_flow.py +2 -2
- homeassistant/components/file/translations/ga.json +66 -0
- homeassistant/components/filesize/translations/ga.json +5 -0
- homeassistant/components/filter/translations/ko.json +9 -0
- homeassistant/components/fitbit/translations/ga.json +11 -0
- homeassistant/components/fitbit/translations/ko.json +3 -0
- homeassistant/components/fjaraskupan/translations/da.json +7 -0
- homeassistant/components/flexit_bacnet/translations/ga.json +73 -0
- homeassistant/components/flipr/sensor.py +1 -1
- homeassistant/components/folder_watcher/translations/ga.json +72 -0
- homeassistant/components/forecast_solar/__init__.py +0 -9
- homeassistant/components/forecast_solar/config_flow.py +2 -2
- homeassistant/components/freebox/translations/ga.json +11 -0
- homeassistant/components/fritz/__init__.py +0 -8
- homeassistant/components/fritz/config_flow.py +6 -2
- homeassistant/components/fritz/strings.json +1 -1
- homeassistant/components/fritz/translations/ga.json +20 -0
- homeassistant/components/fritz/translations/ko.json +9 -0
- homeassistant/components/fritzbox/translations/ga.json +8 -0
- homeassistant/components/fritzbox/translations/ko.json +5 -0
- homeassistant/components/fritzbox_callmonitor/__init__.py +0 -8
- homeassistant/components/fritzbox_callmonitor/config_flow.py +2 -2
- homeassistant/components/fritzbox_callmonitor/translations/ga.json +49 -0
- homeassistant/components/fritzbox_callmonitor/translations/he.json +1 -1
- homeassistant/components/fritzbox_callmonitor/translations/ko.json +11 -0
- homeassistant/components/fronius/__init__.py +6 -0
- homeassistant/components/fronius/translations/ga.json +1 -0
- homeassistant/components/fronius/translations/he.json +1 -1
- homeassistant/components/fronius/translations/ko.json +5 -0
- homeassistant/components/frontend/__init__.py +7 -0
- homeassistant/components/frontend/manifest.json +1 -1
- homeassistant/components/fujitsu_fglair/translations/ko.json +17 -0
- homeassistant/components/fyta/translations/ga.json +55 -7
- homeassistant/components/fyta/translations/ko.json +16 -0
- homeassistant/components/garages_amsterdam/manifest.json +1 -1
- homeassistant/components/gardena_bluetooth/__init__.py +2 -0
- homeassistant/components/gardena_bluetooth/number.py +6 -0
- homeassistant/components/gardena_bluetooth/translations/da.json +9 -0
- homeassistant/components/gardena_bluetooth/valve.py +6 -1
- homeassistant/components/generic/config_flow.py +5 -15
- homeassistant/components/generic/manifest.json +1 -1
- homeassistant/components/generic/translations/ga.json +8 -0
- homeassistant/components/generic_hygrostat/__init__.py +44 -6
- homeassistant/components/generic_hygrostat/config_flow.py +2 -0
- homeassistant/components/generic_hygrostat/humidifier.py +19 -18
- homeassistant/components/generic_hygrostat/translations/ga.json +23 -4
- homeassistant/components/generic_hygrostat/translations/it.json +47 -2
- homeassistant/components/generic_hygrostat/translations/ko.json +11 -0
- homeassistant/components/generic_thermostat/__init__.py +44 -6
- homeassistant/components/generic_thermostat/climate.py +20 -19
- homeassistant/components/generic_thermostat/config_flow.py +2 -0
- homeassistant/components/generic_thermostat/translations/it.json +39 -6
- homeassistant/components/generic_thermostat/translations/ko.json +9 -0
- homeassistant/components/geniushub/translations/ko.json +16 -0
- homeassistant/components/geo_location/trigger.py +6 -3
- homeassistant/components/geocaching/translations/ga.json +4 -0
- homeassistant/components/geocaching/translations/ko.json +3 -0
- homeassistant/components/gios/const.py +2 -0
- homeassistant/components/gios/icons.json +3 -0
- homeassistant/components/gios/sensor.py +18 -0
- homeassistant/components/gios/strings.json +3 -0
- homeassistant/components/gios/translations/cs.json +3 -0
- homeassistant/components/gios/translations/de.json +3 -0
- homeassistant/components/gios/translations/el.json +3 -0
- homeassistant/components/gios/translations/en-GB.json +3 -0
- homeassistant/components/gios/translations/en.json +3 -0
- homeassistant/components/gios/translations/es.json +3 -0
- homeassistant/components/gios/translations/et.json +3 -0
- homeassistant/components/gios/translations/ga.json +7 -0
- homeassistant/components/gios/translations/lt.json +3 -0
- homeassistant/components/gios/translations/pl.json +3 -0
- homeassistant/components/gios/translations/pt.json +3 -0
- homeassistant/components/gios/translations/ru.json +3 -0
- homeassistant/components/gios/translations/sk.json +3 -0
- homeassistant/components/gios/translations/sv.json +3 -0
- homeassistant/components/gios/translations/zh-Hans.json +3 -0
- homeassistant/components/gios/translations/zh-Hant.json +3 -0
- homeassistant/components/github/__init__.py +0 -6
- homeassistant/components/github/config_flow.py +2 -2
- homeassistant/components/glances/translations/ga.json +81 -0
- homeassistant/components/go2rtc/__init__.py +0 -1
- homeassistant/components/goalzero/strings.json +1 -1
- homeassistant/components/goalzero/translations/ca.json +0 -3
- homeassistant/components/goalzero/translations/el.json +0 -3
- homeassistant/components/goalzero/translations/en-GB.json +1 -1
- homeassistant/components/goalzero/translations/en.json +1 -1
- homeassistant/components/goalzero/translations/es.json +1 -1
- homeassistant/components/goalzero/translations/fi.json +0 -3
- homeassistant/components/goalzero/translations/ga.json +53 -0
- homeassistant/components/goalzero/translations/hu.json +0 -3
- homeassistant/components/goalzero/translations/id.json +0 -3
- homeassistant/components/goalzero/translations/it.json +0 -3
- homeassistant/components/goalzero/translations/ja.json +0 -3
- homeassistant/components/goalzero/translations/ko.json +0 -3
- homeassistant/components/goalzero/translations/lt.json +0 -3
- homeassistant/components/goalzero/translations/nb.json +0 -3
- homeassistant/components/goalzero/translations/nl.json +0 -3
- homeassistant/components/goalzero/translations/pl.json +0 -3
- homeassistant/components/goalzero/translations/pt-BR.json +0 -3
- homeassistant/components/goalzero/translations/pt.json +0 -3
- homeassistant/components/goalzero/translations/ro.json +0 -3
- homeassistant/components/goalzero/translations/ru.json +1 -1
- homeassistant/components/goalzero/translations/sk.json +1 -1
- homeassistant/components/goalzero/translations/sl.json +0 -3
- homeassistant/components/goalzero/translations/sv.json +0 -3
- homeassistant/components/goalzero/translations/tr.json +0 -3
- homeassistant/components/goalzero/translations/uk.json +0 -3
- homeassistant/components/goodwe/__init__.py +14 -2
- homeassistant/components/goodwe/config_flow.py +23 -13
- homeassistant/components/goodwe/manifest.json +1 -1
- homeassistant/components/goodwe/select.py +18 -11
- homeassistant/components/google/calendar.py +4 -4
- homeassistant/components/google/manifest.json +1 -1
- homeassistant/components/google/translations/ga.json +3 -1
- homeassistant/components/google/translations/ko.json +3 -0
- homeassistant/components/google_assistant_sdk/application_credentials.py +12 -6
- homeassistant/components/google_assistant_sdk/helpers.py +2 -2
- homeassistant/components/google_assistant_sdk/manifest.json +1 -1
- homeassistant/components/google_assistant_sdk/strings.json +1 -1
- homeassistant/components/google_assistant_sdk/translations/ga.json +4 -0
- homeassistant/components/google_assistant_sdk/translations/ko.json +3 -0
- homeassistant/components/google_cloud/const.py +10 -0
- homeassistant/components/google_cloud/stt.py +13 -3
- homeassistant/components/google_drive/translations/ga.json +2 -0
- homeassistant/components/google_drive/translations/ko.json +11 -0
- homeassistant/components/google_generative_ai_conversation/__init__.py +126 -64
- homeassistant/components/google_generative_ai_conversation/ai_task.py +81 -0
- homeassistant/components/google_generative_ai_conversation/config_flow.py +50 -4
- homeassistant/components/google_generative_ai_conversation/const.py +19 -3
- homeassistant/components/google_generative_ai_conversation/conversation.py +4 -21
- homeassistant/components/google_generative_ai_conversation/entity.py +102 -3
- homeassistant/components/google_generative_ai_conversation/strings.json +61 -1
- homeassistant/components/google_generative_ai_conversation/stt.py +259 -0
- homeassistant/components/google_generative_ai_conversation/translations/bg.json +38 -0
- homeassistant/components/google_generative_ai_conversation/translations/ca.json +29 -0
- homeassistant/components/google_generative_ai_conversation/translations/cs.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/de.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/el.json +55 -0
- homeassistant/components/google_generative_ai_conversation/translations/en-GB.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/en.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/es.json +55 -0
- homeassistant/components/google_generative_ai_conversation/translations/et.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/fr.json +55 -0
- homeassistant/components/google_generative_ai_conversation/translations/ga.json +66 -2
- homeassistant/components/google_generative_ai_conversation/translations/he.json +32 -0
- homeassistant/components/google_generative_ai_conversation/translations/ja.json +23 -0
- homeassistant/components/google_generative_ai_conversation/translations/ko.json +38 -0
- homeassistant/components/google_generative_ai_conversation/translations/lt.json +55 -0
- homeassistant/components/google_generative_ai_conversation/translations/mk.json +21 -0
- homeassistant/components/google_generative_ai_conversation/translations/nl.json +29 -0
- homeassistant/components/google_generative_ai_conversation/translations/pt.json +23 -0
- homeassistant/components/google_generative_ai_conversation/translations/ru.json +49 -0
- homeassistant/components/google_generative_ai_conversation/translations/sk.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/sl.json +9 -0
- homeassistant/components/google_generative_ai_conversation/translations/sv.json +52 -0
- homeassistant/components/google_generative_ai_conversation/translations/zh-Hans.json +60 -0
- homeassistant/components/google_generative_ai_conversation/translations/zh-Hant.json +60 -0
- homeassistant/components/google_generative_ai_conversation/tts.py +3 -0
- homeassistant/components/google_mail/translations/ga.json +4 -0
- homeassistant/components/google_mail/translations/ko.json +3 -0
- homeassistant/components/google_photos/translations/fr.json +2 -1
- homeassistant/components/google_photos/translations/ga.json +2 -0
- homeassistant/components/google_photos/translations/ko.json +5 -0
- homeassistant/components/google_sheets/translations/ga.json +4 -0
- homeassistant/components/google_sheets/translations/ko.json +3 -0
- homeassistant/components/google_tasks/translations/ga.json +5 -0
- homeassistant/components/google_tasks/translations/ko.json +3 -0
- homeassistant/components/google_travel_time/strings.json +1 -1
- homeassistant/components/google_travel_time/translations/ga.json +65 -0
- homeassistant/components/google_travel_time/translations/ko.json +5 -0
- homeassistant/components/gpsd/translations/ga.json +19 -0
- homeassistant/components/gpsd/translations/ko.json +16 -1
- homeassistant/components/gree/translations/ga.json +15 -0
- homeassistant/components/group/config_flow.py +6 -6
- homeassistant/components/group/strings.json +18 -5
- homeassistant/components/group/translations/ca.json +4 -9
- homeassistant/components/group/translations/cs.json +18 -5
- homeassistant/components/group/translations/da.json +4 -9
- homeassistant/components/group/translations/de.json +18 -5
- homeassistant/components/group/translations/el.json +4 -9
- homeassistant/components/group/translations/en-GB.json +18 -5
- homeassistant/components/group/translations/en.json +18 -5
- homeassistant/components/group/translations/es.json +4 -9
- homeassistant/components/group/translations/et.json +18 -5
- homeassistant/components/group/translations/fi.json +4 -9
- homeassistant/components/group/translations/fr.json +18 -5
- homeassistant/components/group/translations/fy.json +0 -14
- homeassistant/components/group/translations/ga.json +50 -0
- homeassistant/components/group/translations/he.json +18 -5
- homeassistant/components/group/translations/hu.json +4 -9
- homeassistant/components/group/translations/id.json +4 -9
- homeassistant/components/group/translations/it.json +6 -11
- homeassistant/components/group/translations/ja.json +4 -9
- homeassistant/components/group/translations/ko.json +4 -9
- homeassistant/components/group/translations/lt.json +4 -9
- homeassistant/components/group/translations/lv.json +1 -2
- homeassistant/components/group/translations/nb.json +4 -9
- homeassistant/components/group/translations/nl.json +3 -7
- homeassistant/components/group/translations/pl.json +4 -9
- homeassistant/components/group/translations/pt-BR.json +4 -9
- homeassistant/components/group/translations/pt.json +4 -9
- homeassistant/components/group/translations/ro.json +4 -9
- homeassistant/components/group/translations/ru.json +4 -9
- homeassistant/components/group/translations/sk.json +18 -5
- homeassistant/components/group/translations/sl.json +4 -9
- homeassistant/components/group/translations/sv.json +4 -9
- homeassistant/components/group/translations/tr.json +4 -9
- homeassistant/components/group/translations/uk.json +4 -9
- homeassistant/components/group/translations/vi.json +4 -9
- homeassistant/components/group/translations/zh-Hans.json +18 -5
- homeassistant/components/group/translations/zh-Hant.json +18 -5
- homeassistant/components/growatt_server/__init__.py +91 -8
- homeassistant/components/growatt_server/coordinator.py +210 -0
- homeassistant/components/growatt_server/models.py +17 -0
- homeassistant/components/growatt_server/sensor/__init__.py +56 -285
- homeassistant/components/guardian/__init__.py +2 -2
- homeassistant/components/guardian/services.py +3 -2
- homeassistant/components/guardian/translations/ga.json +23 -0
- homeassistant/components/habitica/button.py +22 -81
- homeassistant/components/habitica/config_flow.py +0 -2
- homeassistant/components/habitica/coordinator.py +8 -11
- homeassistant/components/habitica/entity.py +2 -2
- homeassistant/components/habitica/icons.json +0 -9
- homeassistant/components/habitica/sensor.py +9 -161
- homeassistant/components/habitica/strings.json +0 -13
- homeassistant/components/habitica/switch.py +7 -9
- homeassistant/components/habitica/translations/bg.json +1 -11
- homeassistant/components/habitica/translations/ca.json +0 -3
- homeassistant/components/habitica/translations/cs.json +0 -13
- homeassistant/components/habitica/translations/de.json +0 -13
- homeassistant/components/habitica/translations/el.json +0 -13
- homeassistant/components/habitica/translations/en-GB.json +0 -13
- homeassistant/components/habitica/translations/en.json +0 -13
- homeassistant/components/habitica/translations/es.json +0 -13
- homeassistant/components/habitica/translations/et.json +0 -13
- homeassistant/components/habitica/translations/ga.json +35 -12
- homeassistant/components/habitica/translations/he.json +1 -11
- homeassistant/components/habitica/translations/hu.json +0 -13
- homeassistant/components/habitica/translations/it.json +0 -12
- homeassistant/components/habitica/translations/ja.json +0 -13
- homeassistant/components/habitica/translations/ko.json +32 -0
- homeassistant/components/habitica/translations/lt.json +0 -13
- homeassistant/components/habitica/translations/nl.json +0 -10
- homeassistant/components/habitica/translations/pt-BR.json +0 -3
- homeassistant/components/habitica/translations/pt.json +0 -13
- homeassistant/components/habitica/translations/ru.json +0 -13
- homeassistant/components/habitica/translations/sk.json +0 -13
- homeassistant/components/habitica/translations/sv.json +0 -13
- homeassistant/components/habitica/translations/tr.json +0 -13
- homeassistant/components/habitica/translations/zh-Hans.json +0 -13
- homeassistant/components/habitica/translations/zh-Hant.json +0 -13
- homeassistant/components/habitica/util.py +14 -14
- homeassistant/components/harmony/translations/es.json +1 -1
- homeassistant/components/harmony/translations/ga.json +18 -0
- homeassistant/components/harmony/translations/sv.json +1 -1
- homeassistant/components/hassio/backup.py +2 -2
- homeassistant/components/hassio/ingress.py +8 -8
- homeassistant/components/hassio/issues.py +4 -2
- homeassistant/components/hassio/strings.json +42 -30
- homeassistant/components/hassio/translations/bg.json +0 -1
- homeassistant/components/hassio/translations/ca.json +0 -22
- homeassistant/components/hassio/translations/cs.json +37 -25
- homeassistant/components/hassio/translations/da.json +0 -2
- homeassistant/components/hassio/translations/de.json +37 -25
- homeassistant/components/hassio/translations/el.json +3 -25
- homeassistant/components/hassio/translations/en-GB.json +37 -25
- homeassistant/components/hassio/translations/en.json +37 -25
- homeassistant/components/hassio/translations/es.json +3 -25
- homeassistant/components/hassio/translations/et.json +3 -25
- homeassistant/components/hassio/translations/fi.json +0 -23
- homeassistant/components/hassio/translations/fr.json +3 -24
- homeassistant/components/hassio/translations/fy.json +0 -7
- homeassistant/components/hassio/translations/ga.json +57 -0
- homeassistant/components/hassio/translations/gsw.json +0 -2
- homeassistant/components/hassio/translations/he.json +37 -25
- homeassistant/components/hassio/translations/hr.json +0 -2
- homeassistant/components/hassio/translations/hu.json +0 -25
- homeassistant/components/hassio/translations/id.json +0 -25
- homeassistant/components/hassio/translations/it.json +0 -22
- homeassistant/components/hassio/translations/ja.json +0 -23
- homeassistant/components/hassio/translations/ko.json +3 -22
- homeassistant/components/hassio/translations/lt.json +3 -25
- homeassistant/components/hassio/translations/nb.json +0 -22
- homeassistant/components/hassio/translations/nl.json +0 -23
- homeassistant/components/hassio/translations/pl.json +0 -22
- homeassistant/components/hassio/translations/pt-BR.json +0 -22
- homeassistant/components/hassio/translations/pt.json +0 -25
- homeassistant/components/hassio/translations/ro.json +0 -22
- homeassistant/components/hassio/translations/ru.json +0 -25
- homeassistant/components/hassio/translations/sk.json +37 -25
- homeassistant/components/hassio/translations/sl.json +0 -21
- homeassistant/components/hassio/translations/sv.json +0 -25
- homeassistant/components/hassio/translations/tr.json +0 -25
- homeassistant/components/hassio/translations/uk.json +0 -22
- homeassistant/components/hassio/translations/vi.json +0 -23
- homeassistant/components/hassio/translations/zh-Hans.json +3 -25
- homeassistant/components/hassio/translations/zh-Hant.json +37 -25
- homeassistant/components/heos/__init__.py +2 -2
- homeassistant/components/heos/config_flow.py +51 -41
- homeassistant/components/heos/manifest.json +2 -1
- homeassistant/components/heos/services.py +3 -2
- homeassistant/components/heos/translations/ga.json +11 -0
- homeassistant/components/heos/translations/ko.json +21 -0
- homeassistant/components/here_travel_time/__init__.py +30 -1
- homeassistant/components/here_travel_time/config_flow.py +16 -1
- homeassistant/components/here_travel_time/const.py +1 -0
- homeassistant/components/here_travel_time/coordinator.py +11 -1
- homeassistant/components/here_travel_time/model.py +2 -1
- homeassistant/components/here_travel_time/strings.json +5 -3
- homeassistant/components/here_travel_time/translations/ca.json +0 -5
- homeassistant/components/here_travel_time/translations/cs.json +4 -2
- homeassistant/components/here_travel_time/translations/de.json +4 -2
- homeassistant/components/here_travel_time/translations/el.json +4 -2
- homeassistant/components/here_travel_time/translations/en-GB.json +4 -2
- homeassistant/components/here_travel_time/translations/en.json +4 -2
- homeassistant/components/here_travel_time/translations/es.json +4 -2
- homeassistant/components/here_travel_time/translations/et.json +4 -2
- homeassistant/components/here_travel_time/translations/fi.json +0 -5
- homeassistant/components/here_travel_time/translations/fr.json +1 -2
- homeassistant/components/here_travel_time/translations/ga.json +16 -0
- homeassistant/components/here_travel_time/translations/hu.json +1 -2
- homeassistant/components/here_travel_time/translations/id.json +0 -5
- homeassistant/components/here_travel_time/translations/it.json +0 -5
- homeassistant/components/here_travel_time/translations/ja.json +1 -2
- homeassistant/components/here_travel_time/translations/ko.json +0 -5
- homeassistant/components/here_travel_time/translations/lt.json +1 -2
- homeassistant/components/here_travel_time/translations/mk.json +3 -0
- homeassistant/components/here_travel_time/translations/nb.json +0 -5
- homeassistant/components/here_travel_time/translations/nl.json +0 -5
- homeassistant/components/here_travel_time/translations/pl.json +0 -5
- homeassistant/components/here_travel_time/translations/pt-BR.json +0 -5
- homeassistant/components/here_travel_time/translations/pt.json +1 -2
- homeassistant/components/here_travel_time/translations/ro.json +0 -5
- homeassistant/components/here_travel_time/translations/ru.json +1 -2
- homeassistant/components/here_travel_time/translations/sk.json +4 -2
- homeassistant/components/here_travel_time/translations/sv.json +1 -2
- homeassistant/components/here_travel_time/translations/tr.json +1 -2
- homeassistant/components/here_travel_time/translations/uk.json +0 -5
- homeassistant/components/here_travel_time/translations/zh-Hans.json +4 -2
- homeassistant/components/here_travel_time/translations/zh-Hant.json +4 -2
- homeassistant/components/history_stats/__init__.py +43 -1
- homeassistant/components/history_stats/config_flow.py +135 -2
- homeassistant/components/history_stats/coordinator.py +7 -0
- homeassistant/components/history_stats/data.py +5 -1
- homeassistant/components/history_stats/helpers.py +9 -4
- homeassistant/components/history_stats/sensor.py +54 -8
- homeassistant/components/hive/translations/it.json +3 -3
- homeassistant/components/hko/translations/ga.json +9 -0
- homeassistant/components/hko/translations/ko.json +11 -0
- homeassistant/components/holiday/__init__.py +0 -6
- homeassistant/components/holiday/config_flow.py +2 -2
- homeassistant/components/holiday/manifest.json +1 -1
- homeassistant/components/holiday/translations/ga.json +5 -0
- homeassistant/components/home_connect/__init__.py +2 -2
- homeassistant/components/home_connect/coordinator.py +22 -24
- homeassistant/components/home_connect/services.py +3 -2
- homeassistant/components/home_connect/strings.json +10 -21
- homeassistant/components/home_connect/translations/cs.json +2 -11
- homeassistant/components/home_connect/translations/da.json +6 -0
- homeassistant/components/home_connect/translations/de.json +0 -11
- homeassistant/components/home_connect/translations/el.json +0 -11
- homeassistant/components/home_connect/translations/en-GB.json +0 -11
- homeassistant/components/home_connect/translations/en.json +0 -11
- homeassistant/components/home_connect/translations/es.json +0 -11
- homeassistant/components/home_connect/translations/et.json +0 -11
- homeassistant/components/home_connect/translations/ga.json +2 -10
- homeassistant/components/home_connect/translations/hu.json +0 -10
- homeassistant/components/home_connect/translations/it.json +44 -56
- homeassistant/components/home_connect/translations/ko.json +3 -0
- homeassistant/components/home_connect/translations/lt.json +0 -11
- homeassistant/components/home_connect/translations/pt.json +0 -11
- homeassistant/components/home_connect/translations/ru.json +6 -15
- homeassistant/components/home_connect/translations/sk.json +0 -11
- homeassistant/components/home_connect/translations/sv.json +0 -10
- homeassistant/components/home_connect/translations/zh-Hans.json +0 -11
- homeassistant/components/home_connect/translations/zh-Hant.json +0 -11
- homeassistant/components/homeassistant/__init__.py +7 -2
- homeassistant/components/homeassistant/strings.json +3 -3
- homeassistant/components/homeassistant/translations/de.json +1 -1
- homeassistant/components/homeassistant/translations/fr.json +3 -0
- homeassistant/components/homeassistant/translations/ga.json +32 -0
- homeassistant/components/homeassistant/translations/nl.json +3 -0
- homeassistant/components/homeassistant/triggers/time.py +20 -1
- homeassistant/components/homeassistant_hardware/coordinator.py +9 -1
- homeassistant/components/homeassistant_sky_connect/translations/ga.json +1 -0
- homeassistant/components/homeassistant_sky_connect/update.py +1 -0
- homeassistant/components/homeassistant_yellow/update.py +1 -0
- homeassistant/components/homee/__init__.py +4 -6
- homeassistant/components/homee/config_flow.py +60 -0
- homeassistant/components/homee/manifest.json +1 -1
- homeassistant/components/homee/quality_scale.yaml +11 -8
- homeassistant/components/homee/strings.json +14 -2
- homeassistant/components/homee/translations/bg.json +12 -0
- homeassistant/components/homee/translations/ca.json +8 -0
- homeassistant/components/homee/translations/cs.json +12 -0
- homeassistant/components/homee/translations/da.json +12 -0
- homeassistant/components/homee/translations/de.json +12 -0
- homeassistant/components/homee/translations/el.json +12 -0
- homeassistant/components/homee/translations/en-GB.json +12 -0
- homeassistant/components/homee/translations/en.json +12 -0
- homeassistant/components/homee/translations/es.json +13 -1
- homeassistant/components/homee/translations/et.json +12 -0
- homeassistant/components/homee/translations/ga.json +9 -0
- homeassistant/components/homee/translations/he.json +8 -0
- homeassistant/components/homee/translations/it.json +1 -1
- homeassistant/components/homee/translations/ja.json +12 -0
- homeassistant/components/homee/translations/ko.json +22 -0
- homeassistant/components/homee/translations/lt.json +12 -0
- homeassistant/components/homee/translations/nl.json +12 -0
- homeassistant/components/homee/translations/pt.json +12 -0
- homeassistant/components/homee/translations/ru.json +18 -1
- homeassistant/components/homee/translations/sk.json +12 -0
- homeassistant/components/homee/translations/sv.json +12 -0
- homeassistant/components/homee/translations/zh-Hans.json +12 -0
- homeassistant/components/homee/translations/zh-Hant.json +12 -0
- homeassistant/components/homekit/__init__.py +7 -4
- homeassistant/components/homekit_controller/translations/ga.json +15 -0
- homeassistant/components/homekit_controller/translations/he.json +1 -1
- homeassistant/components/homematicip_cloud/const.py +1 -0
- homeassistant/components/homematicip_cloud/cover.py +2 -1
- homeassistant/components/homematicip_cloud/icons.json +11 -0
- homeassistant/components/homematicip_cloud/light.py +76 -1
- homeassistant/components/homematicip_cloud/manifest.json +1 -1
- homeassistant/components/homematicip_cloud/sensor.py +304 -102
- homeassistant/components/homematicip_cloud/strings.json +11 -0
- homeassistant/components/homematicip_cloud/switch.py +6 -0
- homeassistant/components/homematicip_cloud/translations/cs.json +11 -0
- homeassistant/components/homematicip_cloud/translations/de.json +11 -0
- homeassistant/components/homematicip_cloud/translations/el.json +11 -0
- homeassistant/components/homematicip_cloud/translations/en-GB.json +11 -0
- homeassistant/components/homematicip_cloud/translations/en.json +11 -0
- homeassistant/components/homematicip_cloud/translations/es.json +11 -0
- homeassistant/components/homematicip_cloud/translations/et.json +11 -0
- homeassistant/components/homematicip_cloud/translations/ga.json +11 -0
- homeassistant/components/homematicip_cloud/translations/it.json +11 -0
- homeassistant/components/homematicip_cloud/translations/ja.json +11 -0
- homeassistant/components/homematicip_cloud/translations/lt.json +11 -0
- homeassistant/components/homematicip_cloud/translations/mk.json +9 -0
- homeassistant/components/homematicip_cloud/translations/nl.json +9 -0
- homeassistant/components/homematicip_cloud/translations/pt.json +11 -0
- homeassistant/components/homematicip_cloud/translations/sk.json +11 -0
- homeassistant/components/homematicip_cloud/translations/sv.json +11 -0
- homeassistant/components/homematicip_cloud/translations/zh-Hans.json +11 -0
- homeassistant/components/homematicip_cloud/translations/zh-Hant.json +11 -0
- homeassistant/components/homematicip_cloud/valve.py +59 -0
- homeassistant/components/homewizard/translations/ga.json +40 -0
- homeassistant/components/homeworks/translations/es.json +2 -2
- homeassistant/components/homeworks/translations/ga.json +147 -1
- homeassistant/components/homeworks/translations/ko.json +41 -0
- homeassistant/components/honeywell/__init__.py +0 -9
- homeassistant/components/honeywell/config_flow.py +2 -2
- homeassistant/components/honeywell/translations/ga.json +55 -0
- homeassistant/components/html5/strings.json +1 -1
- homeassistant/components/html5/translations/fr.json +1 -0
- homeassistant/components/html5/translations/ko.json +9 -0
- homeassistant/components/http/__init__.py +1 -25
- homeassistant/components/http/translations/sv.json +1 -1
- homeassistant/components/huawei_lte/__init__.py +5 -17
- homeassistant/components/huawei_lte/config_flow.py +14 -9
- homeassistant/components/huawei_lte/const.py +1 -1
- homeassistant/components/huawei_lte/diagnostics.py +86 -0
- homeassistant/components/huawei_lte/notify.py +0 -3
- homeassistant/components/huawei_lte/translations/ga.json +112 -0
- homeassistant/components/hue/translations/ga.json +13 -0
- homeassistant/components/hue/v1/light.py +2 -0
- homeassistant/components/hue/v1/sensor_base.py +1 -0
- homeassistant/components/humidifier/translations/he.json +1 -1
- homeassistant/components/humidifier/translations/it.json +3 -3
- homeassistant/components/hunterdouglas_powerview/__init__.py +15 -2
- homeassistant/components/hunterdouglas_powerview/translations/ga.json +17 -0
- homeassistant/components/husqvarna_automower/button.py +2 -7
- homeassistant/components/husqvarna_automower/calendar.py +22 -3
- homeassistant/components/husqvarna_automower/coordinator.py +150 -126
- homeassistant/components/husqvarna_automower/entity.py +9 -18
- homeassistant/components/husqvarna_automower/icons.json +23 -3
- homeassistant/components/husqvarna_automower/lawn_mower.py +2 -2
- homeassistant/components/husqvarna_automower/manifest.json +1 -1
- homeassistant/components/husqvarna_automower/sensor.py +58 -6
- homeassistant/components/husqvarna_automower/strings.json +27 -7
- homeassistant/components/husqvarna_automower/translations/bg.json +10 -0
- homeassistant/components/husqvarna_automower/translations/cs.json +20 -0
- homeassistant/components/husqvarna_automower/translations/de.json +20 -0
- homeassistant/components/husqvarna_automower/translations/el.json +8 -0
- homeassistant/components/husqvarna_automower/translations/en-GB.json +20 -0
- homeassistant/components/husqvarna_automower/translations/en.json +20 -0
- homeassistant/components/husqvarna_automower/translations/es.json +20 -0
- homeassistant/components/husqvarna_automower/translations/et.json +20 -0
- homeassistant/components/husqvarna_automower/translations/ga.json +235 -2
- homeassistant/components/husqvarna_automower/translations/he.json +7 -0
- homeassistant/components/husqvarna_automower/translations/it.json +1 -1
- homeassistant/components/husqvarna_automower/translations/ko.json +11 -0
- homeassistant/components/husqvarna_automower/translations/lt.json +8 -0
- homeassistant/components/husqvarna_automower/translations/mk.json +7 -0
- homeassistant/components/husqvarna_automower/translations/nl.json +1 -0
- homeassistant/components/husqvarna_automower/translations/sk.json +20 -0
- homeassistant/components/husqvarna_automower/translations/sv.json +20 -0
- homeassistant/components/husqvarna_automower/translations/zh-Hans.json +20 -0
- homeassistant/components/husqvarna_automower/translations/zh-Hant.json +20 -0
- homeassistant/components/husqvarna_automower_ble/__init__.py +1 -0
- homeassistant/components/husqvarna_automower_ble/coordinator.py +3 -3
- homeassistant/components/husqvarna_automower_ble/entity.py +16 -0
- homeassistant/components/husqvarna_automower_ble/sensor.py +51 -0
- homeassistant/components/huum/__init__.py +14 -32
- homeassistant/components/huum/binary_sensor.py +41 -0
- homeassistant/components/huum/climate.py +32 -50
- homeassistant/components/huum/config_flow.py +2 -2
- homeassistant/components/huum/const.py +5 -1
- homeassistant/components/huum/coordinator.py +60 -0
- homeassistant/components/huum/entity.py +24 -0
- homeassistant/components/huum/light.py +62 -0
- homeassistant/components/huum/manifest.json +2 -2
- homeassistant/components/huum/strings.json +7 -0
- homeassistant/components/huum/translations/bg.json +7 -0
- homeassistant/components/huum/translations/cs.json +7 -0
- homeassistant/components/huum/translations/de.json +7 -0
- homeassistant/components/huum/translations/el.json +7 -0
- homeassistant/components/huum/translations/en-GB.json +7 -0
- homeassistant/components/huum/translations/en.json +7 -0
- homeassistant/components/huum/translations/es.json +7 -0
- homeassistant/components/huum/translations/et.json +7 -0
- homeassistant/components/huum/translations/fi.json +7 -0
- homeassistant/components/huum/translations/ga.json +10 -0
- homeassistant/components/huum/translations/he.json +7 -0
- homeassistant/components/huum/translations/ko.json +12 -0
- homeassistant/components/huum/translations/nl.json +7 -0
- homeassistant/components/huum/translations/ru.json +7 -0
- homeassistant/components/huum/translations/sk.json +7 -0
- homeassistant/components/huum/translations/sv.json +7 -0
- homeassistant/components/huum/translations/zh-Hans.json +7 -0
- homeassistant/components/huum/translations/zh-Hant.json +7 -0
- homeassistant/components/hydrawise/binary_sensor.py +36 -21
- homeassistant/components/hydrawise/const.py +1 -0
- homeassistant/components/hydrawise/coordinator.py +90 -2
- homeassistant/components/hydrawise/entity.py +4 -2
- homeassistant/components/hydrawise/manifest.json +1 -1
- homeassistant/components/hydrawise/sensor.py +53 -30
- homeassistant/components/hydrawise/switch.py +16 -7
- homeassistant/components/hydrawise/translations/ga.json +26 -1
- homeassistant/components/hydrawise/translations/ko.json +15 -0
- homeassistant/components/hydrawise/valve.py +16 -6
- homeassistant/components/hyperion/__init__.py +0 -6
- homeassistant/components/hyperion/config_flow.py +2 -2
- homeassistant/components/hyperion/translations/ga.json +5 -0
- homeassistant/components/ibeacon/translations/ga.json +15 -0
- homeassistant/components/idasen_desk/translations/ga.json +18 -0
- homeassistant/components/image_upload/manifest.json +1 -1
- homeassistant/components/imap/translations/ga.json +100 -0
- homeassistant/components/imeon_inverter/coordinator.py +2 -5
- homeassistant/components/imeon_inverter/icons.json +0 -27
- homeassistant/components/imeon_inverter/manifest.json +1 -1
- homeassistant/components/imeon_inverter/sensor.py +0 -69
- homeassistant/components/imeon_inverter/strings.json +0 -27
- homeassistant/components/imeon_inverter/translations/cs.json +0 -27
- homeassistant/components/imeon_inverter/translations/de.json +0 -27
- homeassistant/components/imeon_inverter/translations/el.json +0 -27
- homeassistant/components/imeon_inverter/translations/en-GB.json +0 -27
- homeassistant/components/imeon_inverter/translations/en.json +0 -27
- homeassistant/components/imeon_inverter/translations/es.json +0 -27
- homeassistant/components/imeon_inverter/translations/et.json +0 -27
- homeassistant/components/imeon_inverter/translations/ga.json +0 -27
- homeassistant/components/imeon_inverter/translations/hu.json +0 -27
- homeassistant/components/imeon_inverter/translations/it.json +0 -9
- homeassistant/components/imeon_inverter/translations/ko.json +13 -0
- homeassistant/components/imeon_inverter/translations/lt.json +0 -27
- homeassistant/components/imeon_inverter/translations/pt.json +0 -27
- homeassistant/components/imeon_inverter/translations/ru.json +0 -27
- homeassistant/components/imeon_inverter/translations/sk.json +0 -27
- homeassistant/components/imeon_inverter/translations/sv.json +0 -27
- homeassistant/components/imeon_inverter/translations/zh-Hans.json +0 -27
- homeassistant/components/imeon_inverter/translations/zh-Hant.json +0 -27
- homeassistant/components/imgw_pib/icons.json +6 -0
- homeassistant/components/imgw_pib/manifest.json +1 -1
- homeassistant/components/imgw_pib/sensor.py +42 -1
- homeassistant/components/imgw_pib/strings.json +40 -0
- homeassistant/components/imgw_pib/translations/bg.json +22 -0
- homeassistant/components/imgw_pib/translations/cs.json +40 -0
- homeassistant/components/imgw_pib/translations/de.json +40 -0
- homeassistant/components/imgw_pib/translations/el.json +40 -0
- homeassistant/components/imgw_pib/translations/en-GB.json +40 -0
- homeassistant/components/imgw_pib/translations/en.json +40 -0
- homeassistant/components/imgw_pib/translations/es.json +40 -0
- homeassistant/components/imgw_pib/translations/et.json +40 -0
- homeassistant/components/imgw_pib/translations/ga.json +53 -0
- homeassistant/components/imgw_pib/translations/he.json +17 -0
- homeassistant/components/imgw_pib/translations/lt.json +38 -0
- homeassistant/components/imgw_pib/translations/mk.json +40 -1
- homeassistant/components/imgw_pib/translations/nl.json +11 -0
- homeassistant/components/imgw_pib/translations/pl.json +40 -0
- homeassistant/components/imgw_pib/translations/pt.json +3 -0
- homeassistant/components/imgw_pib/translations/ru.json +15 -0
- homeassistant/components/imgw_pib/translations/sk.json +40 -0
- homeassistant/components/imgw_pib/translations/sv.json +38 -0
- homeassistant/components/imgw_pib/translations/zh-Hans.json +40 -0
- homeassistant/components/imgw_pib/translations/zh-Hant.json +40 -0
- homeassistant/components/immich/__init__.py +12 -0
- homeassistant/components/immich/icons.json +5 -0
- homeassistant/components/immich/manifest.json +1 -1
- homeassistant/components/immich/media_source.py +119 -29
- homeassistant/components/immich/services.py +98 -0
- homeassistant/components/immich/services.yaml +18 -0
- homeassistant/components/immich/strings.json +37 -0
- homeassistant/components/immich/translations/cs.json +37 -0
- homeassistant/components/immich/translations/de.json +37 -0
- homeassistant/components/immich/translations/en-GB.json +37 -0
- homeassistant/components/immich/translations/en.json +37 -0
- homeassistant/components/immich/translations/es.json +37 -0
- homeassistant/components/immich/translations/et.json +37 -0
- homeassistant/components/immich/translations/fr.json +37 -0
- homeassistant/components/immich/translations/ga.json +37 -0
- homeassistant/components/immich/translations/he.json +10 -0
- homeassistant/components/immich/translations/ko.json +18 -0
- homeassistant/components/immich/translations/nl.json +10 -0
- homeassistant/components/immich/translations/sk.json +37 -0
- homeassistant/components/immich/translations/sv.json +13 -0
- homeassistant/components/immich/translations/zh-Hans.json +37 -0
- homeassistant/components/immich/translations/zh-Hant.json +37 -0
- homeassistant/components/incomfort/translations/ga.json +11 -1
- homeassistant/components/incomfort/translations/it.json +1 -1
- homeassistant/components/incomfort/translations/ko.json +13 -0
- homeassistant/components/input_boolean/translations/it.json +2 -2
- homeassistant/components/input_button/translations/ga.json +7 -0
- homeassistant/components/input_text/__init__.py +13 -4
- homeassistant/components/insteon/strings.json +5 -5
- homeassistant/components/integration/__init__.py +44 -6
- homeassistant/components/integration/config_flow.py +2 -0
- homeassistant/components/integration/sensor.py +33 -23
- homeassistant/components/intellifire/translations/ko.json +8 -0
- homeassistant/components/iometer/translations/ko.json +11 -0
- homeassistant/components/iotawatt/translations/ga.json +11 -0
- homeassistant/components/iotty/translations/ko.json +11 -0
- homeassistant/components/ipp/translations/he.json +1 -1
- homeassistant/components/iqvia/manifest.json +1 -1
- homeassistant/components/iron_os/__init__.py +13 -16
- homeassistant/components/iron_os/const.py +4 -0
- homeassistant/components/iron_os/coordinator.py +3 -1
- homeassistant/components/iron_os/icons.json +6 -0
- homeassistant/components/iron_os/number.py +156 -69
- homeassistant/components/iron_os/strings.json +3 -0
- homeassistant/components/iron_os/switch.py +19 -2
- homeassistant/components/iron_os/translations/cs.json +3 -0
- homeassistant/components/iron_os/translations/de.json +3 -0
- homeassistant/components/iron_os/translations/el.json +3 -0
- homeassistant/components/iron_os/translations/en-GB.json +3 -0
- homeassistant/components/iron_os/translations/en.json +3 -0
- homeassistant/components/iron_os/translations/es.json +4 -1
- homeassistant/components/iron_os/translations/et.json +3 -0
- homeassistant/components/iron_os/translations/ga.json +3 -0
- homeassistant/components/iron_os/translations/he.json +1 -1
- homeassistant/components/iron_os/translations/it.json +5 -5
- homeassistant/components/iron_os/translations/ja.json +3 -0
- homeassistant/components/iron_os/translations/lt.json +3 -0
- homeassistant/components/iron_os/translations/pt.json +3 -0
- homeassistant/components/iron_os/translations/ru.json +3 -0
- homeassistant/components/iron_os/translations/sk.json +3 -0
- homeassistant/components/iron_os/translations/zh-Hans.json +3 -0
- homeassistant/components/iron_os/translations/zh-Hant.json +3 -0
- homeassistant/components/iskra/strings.json +8 -8
- homeassistant/components/iskra/translations/ko.json +22 -0
- homeassistant/components/islamic_prayer_times/coordinator.py +3 -3
- homeassistant/components/israel_rail/manifest.json +1 -1
- homeassistant/components/ista_ecotrend/translations/ga.json +31 -0
- homeassistant/components/ista_ecotrend/translations/ko.json +22 -0
- homeassistant/components/isy994/__init__.py +0 -6
- homeassistant/components/isy994/config_flow.py +3 -3
- homeassistant/components/ituran/__init__.py +1 -0
- homeassistant/components/ituran/binary_sensor.py +75 -0
- homeassistant/components/ituran/device_tracker.py +4 -2
- homeassistant/components/ituran/icons.json +3 -0
- homeassistant/components/ituran/manifest.json +1 -1
- homeassistant/components/ituran/sensor.py +24 -4
- homeassistant/components/ituran/strings.json +3 -0
- homeassistant/components/ituran/translations/cs.json +3 -0
- homeassistant/components/ituran/translations/de.json +3 -0
- homeassistant/components/ituran/translations/en-GB.json +3 -0
- homeassistant/components/ituran/translations/en.json +3 -0
- homeassistant/components/ituran/translations/es.json +3 -0
- homeassistant/components/ituran/translations/et.json +3 -0
- homeassistant/components/ituran/translations/ga.json +3 -0
- homeassistant/components/ituran/translations/he.json +3 -0
- homeassistant/components/ituran/translations/sk.json +3 -0
- homeassistant/components/ituran/translations/sv.json +3 -0
- homeassistant/components/ituran/translations/zh-Hans.json +3 -0
- homeassistant/components/ituran/translations/zh-Hant.json +3 -0
- homeassistant/components/jellyfin/browse_media.py +47 -0
- homeassistant/components/jellyfin/media_player.py +24 -3
- homeassistant/components/jellyfin/translations/ga.json +9 -0
- homeassistant/components/jewish_calendar/__init__.py +0 -7
- homeassistant/components/jewish_calendar/binary_sensor.py +17 -55
- homeassistant/components/jewish_calendar/config_flow.py +6 -2
- homeassistant/components/jewish_calendar/entity.py +62 -3
- homeassistant/components/jewish_calendar/sensor.py +55 -72
- homeassistant/components/jewish_calendar/services.py +0 -1
- homeassistant/components/jewish_calendar/translations/ga.json +7 -1
- homeassistant/components/jewish_calendar/translations/ko.json +17 -0
- homeassistant/components/jewish_calendar/translations/nl.json +7 -2
- homeassistant/components/justnimbus/translations/ga.json +27 -0
- homeassistant/components/jvc_projector/translations/ga.json +13 -1
- homeassistant/components/jvc_projector/translations/it.json +1 -1
- homeassistant/components/keba/strings.json +1 -1
- homeassistant/components/keenetic_ndms2/__init__.py +0 -7
- homeassistant/components/keenetic_ndms2/config_flow.py +27 -7
- homeassistant/components/keenetic_ndms2/strings.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/bg.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/ca.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/cs.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/de.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/el.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/en-GB.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/en.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/es.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/et.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/ga.json +12 -0
- homeassistant/components/keenetic_ndms2/translations/he.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/ja.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/lt.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/nl.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/pt.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/ru.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/sk.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/sv.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/zh-Hans.json +2 -1
- homeassistant/components/keenetic_ndms2/translations/zh-Hant.json +2 -1
- homeassistant/components/keymitt_ble/manifest.json +3 -3
- homeassistant/components/kitchen_sink/__init__.py +0 -7
- homeassistant/components/kitchen_sink/config_flow.py +3 -3
- homeassistant/components/kitchen_sink/translations/ga.json +12 -0
- homeassistant/components/kitchen_sink/translations/ko.json +11 -0
- homeassistant/components/knocki/translations/ga.json +15 -0
- homeassistant/components/knocki/translations/ko.json +12 -0
- homeassistant/components/knx/__init__.py +11 -298
- homeassistant/components/knx/binary_sensor.py +13 -12
- homeassistant/components/knx/button.py +2 -2
- homeassistant/components/knx/climate.py +2 -2
- homeassistant/components/knx/config_flow.py +83 -63
- homeassistant/components/knx/const.py +1 -1
- homeassistant/components/knx/cover.py +18 -34
- homeassistant/components/knx/date.py +2 -2
- homeassistant/components/knx/datetime.py +2 -2
- homeassistant/components/knx/device.py +1 -1
- homeassistant/components/knx/device_trigger.py +1 -1
- homeassistant/components/knx/diagnostics.py +1 -1
- homeassistant/components/knx/entity.py +2 -2
- homeassistant/components/knx/expose.py +1 -1
- homeassistant/components/knx/fan.py +2 -2
- homeassistant/components/knx/knx_module.py +301 -0
- homeassistant/components/knx/light.py +91 -77
- homeassistant/components/knx/manifest.json +1 -1
- homeassistant/components/knx/notify.py +2 -2
- homeassistant/components/knx/number.py +2 -2
- homeassistant/components/knx/quality_scale.yaml +1 -1
- homeassistant/components/knx/scene.py +2 -2
- homeassistant/components/knx/select.py +2 -2
- homeassistant/components/knx/sensor.py +2 -2
- homeassistant/components/knx/services.py +2 -2
- homeassistant/components/knx/storage/__init__.py +1 -1
- homeassistant/components/knx/storage/config_store.py +17 -2
- homeassistant/components/knx/storage/const.py +14 -7
- homeassistant/components/knx/storage/entity_store_schema.py +106 -89
- homeassistant/components/knx/storage/entity_store_validation.py +1 -1
- homeassistant/components/knx/storage/knx_selector.py +26 -0
- homeassistant/components/knx/storage/migration.py +42 -0
- homeassistant/components/knx/storage/util.py +51 -0
- homeassistant/components/knx/strings.json +12 -150
- homeassistant/components/knx/switch.py +10 -17
- homeassistant/components/knx/text.py +2 -2
- homeassistant/components/knx/time.py +2 -2
- homeassistant/components/knx/translations/bg.json +0 -48
- homeassistant/components/knx/translations/ca.json +3 -132
- homeassistant/components/knx/translations/cs.json +10 -148
- homeassistant/components/knx/translations/da.json +0 -13
- homeassistant/components/knx/translations/de.json +10 -148
- homeassistant/components/knx/translations/el.json +10 -148
- homeassistant/components/knx/translations/en-GB.json +10 -148
- homeassistant/components/knx/translations/en.json +10 -148
- homeassistant/components/knx/translations/es.json +10 -148
- homeassistant/components/knx/translations/et.json +10 -148
- homeassistant/components/knx/translations/fi.json +0 -119
- homeassistant/components/knx/translations/fr.json +0 -76
- homeassistant/components/knx/translations/ga.json +29 -48
- homeassistant/components/knx/translations/gl.json +0 -33
- homeassistant/components/knx/translations/he.json +3 -15
- homeassistant/components/knx/translations/hu.json +0 -148
- homeassistant/components/knx/translations/id.json +0 -100
- homeassistant/components/knx/translations/it.json +0 -119
- homeassistant/components/knx/translations/ja.json +0 -148
- homeassistant/components/knx/translations/ko.json +0 -119
- homeassistant/components/knx/translations/lt.json +10 -148
- homeassistant/components/knx/translations/lv.json +0 -26
- homeassistant/components/knx/translations/nb.json +0 -100
- homeassistant/components/knx/translations/nl.json +3 -125
- homeassistant/components/knx/translations/pl.json +0 -97
- homeassistant/components/knx/translations/pt-BR.json +0 -117
- homeassistant/components/knx/translations/pt.json +10 -148
- homeassistant/components/knx/translations/ro.json +0 -88
- homeassistant/components/knx/translations/ru.json +0 -148
- homeassistant/components/knx/translations/sk.json +10 -148
- homeassistant/components/knx/translations/sl.json +0 -13
- homeassistant/components/knx/translations/sv.json +3 -148
- homeassistant/components/knx/translations/tr.json +0 -148
- homeassistant/components/knx/translations/uk.json +0 -89
- homeassistant/components/knx/translations/vi.json +0 -5
- homeassistant/components/knx/translations/zh-Hans.json +10 -148
- homeassistant/components/knx/translations/zh-Hant.json +11 -149
- homeassistant/components/knx/trigger.py +1 -1
- homeassistant/components/knx/weather.py +2 -2
- homeassistant/components/knx/websocket.py +3 -3
- homeassistant/components/kodi/translations/ga.json +13 -0
- homeassistant/components/kostal_plenticore/switch.py +20 -1
- homeassistant/components/kostal_plenticore/translations/ga.json +3 -0
- homeassistant/components/kostal_plenticore/translations/ko.json +6 -0
- homeassistant/components/kraken/__init__.py +1 -0
- homeassistant/components/kulersky/translations/ko.json +7 -0
- homeassistant/components/lamarzocco/__init__.py +0 -7
- homeassistant/components/lamarzocco/config_flow.py +2 -2
- homeassistant/components/lamarzocco/sensor.py +15 -1
- homeassistant/components/lamarzocco/translations/ga.json +86 -0
- homeassistant/components/lamarzocco/translations/ko.json +26 -0
- homeassistant/components/lametric/strings.json +1 -1
- homeassistant/components/lametric/translations/ga.json +4 -0
- homeassistant/components/lametric/translations/ko.json +3 -0
- homeassistant/components/lastfm/__init__.py +0 -6
- homeassistant/components/lastfm/config_flow.py +6 -2
- homeassistant/components/laundrify/strings.json +1 -1
- homeassistant/components/laundrify/translations/ga.json +9 -0
- homeassistant/components/lcn/__init__.py +5 -1
- homeassistant/components/lcn/binary_sensor.py +4 -132
- homeassistant/components/lcn/helpers.py +9 -2
- homeassistant/components/lcn/light.py +28 -22
- homeassistant/components/lcn/manifest.json +1 -1
- homeassistant/components/lcn/quality_scale.yaml +1 -1
- homeassistant/components/lcn/services.py +6 -4
- homeassistant/components/lcn/strings.json +19 -7
- homeassistant/components/lcn/translations/cs.json +18 -2
- homeassistant/components/lcn/translations/de.json +14 -2
- homeassistant/components/lcn/translations/el.json +14 -2
- homeassistant/components/lcn/translations/en-GB.json +14 -2
- homeassistant/components/lcn/translations/en.json +14 -2
- homeassistant/components/lcn/translations/es.json +16 -4
- homeassistant/components/lcn/translations/et.json +14 -2
- homeassistant/components/lcn/translations/ga.json +17 -2
- homeassistant/components/lcn/translations/hu.json +0 -5
- homeassistant/components/lcn/translations/ja.json +14 -2
- homeassistant/components/lcn/translations/ko.json +58 -0
- homeassistant/components/lcn/translations/lt.json +14 -2
- homeassistant/components/lcn/translations/nl.json +0 -5
- homeassistant/components/lcn/translations/pt-BR.json +0 -5
- homeassistant/components/lcn/translations/pt.json +14 -2
- homeassistant/components/lcn/translations/ru.json +9 -2
- homeassistant/components/lcn/translations/sk.json +14 -2
- homeassistant/components/lcn/translations/sv.json +0 -5
- homeassistant/components/lcn/translations/tr.json +0 -5
- homeassistant/components/lcn/translations/zh-Hans.json +14 -2
- homeassistant/components/lcn/translations/zh-Hant.json +14 -2
- homeassistant/components/leaone/strings.json +1 -1
- homeassistant/components/leaone/translations/de.json +1 -1
- homeassistant/components/leaone/translations/el.json +1 -2
- homeassistant/components/leaone/translations/en-GB.json +1 -1
- homeassistant/components/leaone/translations/en.json +1 -1
- homeassistant/components/leaone/translations/es.json +1 -1
- homeassistant/components/leaone/translations/fi.json +1 -2
- homeassistant/components/leaone/translations/fr.json +1 -2
- homeassistant/components/leaone/translations/ga.json +8 -0
- homeassistant/components/leaone/translations/hu.json +1 -2
- homeassistant/components/leaone/translations/ja.json +1 -2
- homeassistant/components/leaone/translations/ko.json +11 -0
- homeassistant/components/leaone/translations/lt.json +1 -2
- homeassistant/components/leaone/translations/nl.json +1 -2
- homeassistant/components/leaone/translations/pt.json +1 -2
- homeassistant/components/leaone/translations/ru.json +1 -2
- homeassistant/components/leaone/translations/sk.json +1 -1
- homeassistant/components/leaone/translations/sv.json +1 -2
- homeassistant/components/leaone/translations/tr.json +1 -2
- homeassistant/components/lektrico/translations/ko.json +10 -0
- homeassistant/components/letpot/__init__.py +7 -2
- homeassistant/components/letpot/binary_sensor.py +3 -1
- homeassistant/components/letpot/coordinator.py +7 -6
- homeassistant/components/letpot/entity.py +3 -2
- homeassistant/components/letpot/manifest.json +2 -1
- homeassistant/components/letpot/sensor.py +6 -2
- homeassistant/components/letpot/switch.py +22 -8
- homeassistant/components/letpot/time.py +10 -6
- homeassistant/components/letpot/translations/ko.json +17 -0
- homeassistant/components/lg_netcast/translations/ga.json +21 -0
- homeassistant/components/lg_netcast/translations/ko.json +12 -0
- homeassistant/components/lg_thinq/climate.py +49 -62
- homeassistant/components/lg_thinq/icons.json +15 -0
- homeassistant/components/lg_thinq/sensor.py +40 -0
- homeassistant/components/lg_thinq/strings.json +56 -5
- homeassistant/components/lg_thinq/translations/bg.json +3 -0
- homeassistant/components/lg_thinq/translations/cs.json +51 -0
- homeassistant/components/lg_thinq/translations/de.json +51 -0
- homeassistant/components/lg_thinq/translations/el.json +28 -0
- homeassistant/components/lg_thinq/translations/en-GB.json +51 -0
- homeassistant/components/lg_thinq/translations/en.json +51 -0
- homeassistant/components/lg_thinq/translations/es.json +53 -2
- homeassistant/components/lg_thinq/translations/et.json +51 -0
- homeassistant/components/lg_thinq/translations/ga.json +50 -0
- homeassistant/components/lg_thinq/translations/he.json +7 -0
- homeassistant/components/lg_thinq/translations/it.json +16 -16
- homeassistant/components/lg_thinq/translations/mk.json +11 -0
- homeassistant/components/lg_thinq/translations/nl.json +21 -0
- homeassistant/components/lg_thinq/translations/sk.json +51 -0
- homeassistant/components/lg_thinq/translations/sv.json +45 -0
- homeassistant/components/lg_thinq/translations/zh-Hans.json +51 -0
- homeassistant/components/lg_thinq/translations/zh-Hant.json +51 -0
- homeassistant/components/life360/translations/ga.json +8 -0
- homeassistant/components/lifx/const.py +1 -0
- homeassistant/components/lifx/coordinator.py +49 -1
- homeassistant/components/lifx/manager.py +7 -3
- homeassistant/components/lifx/manifest.json +1 -1
- homeassistant/components/light/icons.json +3 -0
- homeassistant/components/light/translations/ga.json +37 -0
- homeassistant/components/light/translations/it.json +2 -2
- homeassistant/components/linkplay/const.py +1 -1
- homeassistant/components/linkplay/icons.json +5 -0
- homeassistant/components/linkplay/media_player.py +14 -9
- homeassistant/components/linkplay/select.py +112 -0
- homeassistant/components/linkplay/strings.json +11 -0
- homeassistant/components/linkplay/translations/bg.json +13 -0
- homeassistant/components/linkplay/translations/ca.json +12 -0
- homeassistant/components/linkplay/translations/cs.json +11 -0
- homeassistant/components/linkplay/translations/de.json +11 -0
- homeassistant/components/linkplay/translations/el.json +11 -0
- homeassistant/components/linkplay/translations/en-GB.json +11 -0
- homeassistant/components/linkplay/translations/en.json +11 -0
- homeassistant/components/linkplay/translations/es.json +11 -0
- homeassistant/components/linkplay/translations/et.json +11 -0
- homeassistant/components/linkplay/translations/ga.json +11 -0
- homeassistant/components/linkplay/translations/ko.json +11 -0
- homeassistant/components/linkplay/translations/lt.json +11 -0
- homeassistant/components/linkplay/translations/mk.json +14 -1
- homeassistant/components/linkplay/translations/nl.json +11 -0
- homeassistant/components/linkplay/translations/pt.json +11 -0
- homeassistant/components/linkplay/translations/ru.json +11 -0
- homeassistant/components/linkplay/translations/sk.json +11 -0
- homeassistant/components/linkplay/translations/sv.json +9 -0
- homeassistant/components/linkplay/translations/zh-Hans.json +11 -0
- homeassistant/components/linkplay/translations/zh-Hant.json +11 -0
- homeassistant/components/litterrobot/coordinator.py +3 -0
- homeassistant/components/litterrobot/icons.json +3 -0
- homeassistant/components/litterrobot/manifest.json +1 -1
- homeassistant/components/litterrobot/sensor.py +15 -1
- homeassistant/components/litterrobot/strings.json +5 -1
- homeassistant/components/litterrobot/translations/bg.json +4 -0
- homeassistant/components/litterrobot/translations/ca.json +4 -0
- homeassistant/components/litterrobot/translations/cs.json +4 -0
- homeassistant/components/litterrobot/translations/de.json +4 -0
- homeassistant/components/litterrobot/translations/el.json +4 -0
- homeassistant/components/litterrobot/translations/en-GB.json +4 -0
- homeassistant/components/litterrobot/translations/en.json +4 -0
- homeassistant/components/litterrobot/translations/es.json +4 -0
- homeassistant/components/litterrobot/translations/et.json +4 -0
- homeassistant/components/litterrobot/translations/ga.json +4 -0
- homeassistant/components/litterrobot/translations/it.json +5 -1
- homeassistant/components/litterrobot/translations/lt.json +4 -0
- homeassistant/components/litterrobot/translations/mk.json +4 -0
- homeassistant/components/litterrobot/translations/nl.json +3 -0
- homeassistant/components/litterrobot/translations/pt.json +4 -0
- homeassistant/components/litterrobot/translations/ru.json +4 -0
- homeassistant/components/litterrobot/translations/sensor.it.json +1 -1
- homeassistant/components/litterrobot/translations/sk.json +4 -0
- homeassistant/components/litterrobot/translations/sv.json +4 -0
- homeassistant/components/litterrobot/translations/zh-Hans.json +4 -0
- homeassistant/components/litterrobot/translations/zh-Hant.json +4 -0
- homeassistant/components/local_calendar/calendar.py +1 -1
- homeassistant/components/local_calendar/manifest.json +1 -1
- homeassistant/components/local_file/translations/ko.json +9 -0
- homeassistant/components/local_todo/manifest.json +1 -1
- homeassistant/components/lock/translations/da.json +2 -0
- homeassistant/components/lock/translations/ga.json +4 -0
- homeassistant/components/lookin/__init__.py +1 -1
- homeassistant/components/lookin/media_player.py +2 -4
- homeassistant/components/luftdaten/strings.json +1 -1
- homeassistant/components/luftdaten/translations/ru.json +7 -0
- homeassistant/components/lupusec/translations/ga.json +9 -0
- homeassistant/components/lupusec/translations/ko.json +13 -0
- homeassistant/components/lutron/translations/ga.json +26 -0
- homeassistant/components/lutron/translations/ko.json +13 -0
- homeassistant/components/lutron_caseta/translations/it.json +2 -2
- homeassistant/components/lyric/translations/ga.json +14 -0
- homeassistant/components/lyric/translations/ko.json +3 -0
- homeassistant/components/madvr/translations/ga.json +1 -0
- homeassistant/components/madvr/translations/ko.json +18 -0
- homeassistant/components/mastodon/translations/ko.json +10 -0
- homeassistant/components/matrix/__init__.py +2 -2
- homeassistant/components/matrix/manifest.json +1 -1
- homeassistant/components/matrix/services.py +3 -2
- homeassistant/components/matter/binary_sensor.py +21 -21
- homeassistant/components/matter/cover.py +6 -0
- homeassistant/components/matter/entity.py +2 -2
- homeassistant/components/matter/icons.json +8 -0
- homeassistant/components/matter/manifest.json +1 -1
- homeassistant/components/matter/number.py +204 -12
- homeassistant/components/matter/select.py +42 -20
- homeassistant/components/matter/sensor.py +52 -25
- homeassistant/components/matter/strings.json +28 -4
- homeassistant/components/matter/switch.py +6 -6
- homeassistant/components/matter/translations/bg.json +3 -0
- homeassistant/components/matter/translations/ca.json +11 -0
- homeassistant/components/matter/translations/cs.json +26 -2
- homeassistant/components/matter/translations/de.json +26 -2
- homeassistant/components/matter/translations/el.json +20 -2
- homeassistant/components/matter/translations/en-GB.json +26 -2
- homeassistant/components/matter/translations/en.json +26 -2
- homeassistant/components/matter/translations/es.json +27 -3
- homeassistant/components/matter/translations/et.json +26 -2
- homeassistant/components/matter/translations/fr.json +27 -3
- homeassistant/components/matter/translations/ga.json +46 -3
- homeassistant/components/matter/translations/he.json +26 -2
- homeassistant/components/matter/translations/hu.json +3 -3
- homeassistant/components/matter/translations/it.json +17 -6
- homeassistant/components/matter/translations/ja.json +15 -0
- homeassistant/components/matter/translations/lt.json +20 -2
- homeassistant/components/matter/translations/mk.json +3 -0
- homeassistant/components/matter/translations/nl.json +3 -0
- homeassistant/components/matter/translations/pt.json +20 -2
- homeassistant/components/matter/translations/ru.json +20 -2
- homeassistant/components/matter/translations/sk.json +26 -2
- homeassistant/components/matter/translations/sv.json +9 -3
- homeassistant/components/matter/translations/zh-Hans.json +26 -2
- homeassistant/components/matter/translations/zh-Hant.json +26 -2
- homeassistant/components/matter/vacuum.py +30 -28
- homeassistant/components/mazda/translations/ga.json +8 -0
- homeassistant/components/mcp/translations/ko.json +16 -0
- homeassistant/components/mcp_server/config_flow.py +14 -5
- homeassistant/components/mcp_server/server.py +1 -1
- homeassistant/components/mcp_server/strings.json +3 -0
- homeassistant/components/mcp_server/translations/cs.json +3 -0
- homeassistant/components/mcp_server/translations/de.json +3 -0
- homeassistant/components/mcp_server/translations/el.json +3 -0
- homeassistant/components/mcp_server/translations/en-GB.json +3 -0
- homeassistant/components/mcp_server/translations/en.json +3 -0
- homeassistant/components/mcp_server/translations/es.json +3 -0
- homeassistant/components/mcp_server/translations/et.json +3 -0
- homeassistant/components/mcp_server/translations/fr.json +3 -0
- homeassistant/components/mcp_server/translations/ga.json +6 -0
- homeassistant/components/mcp_server/translations/lt.json +3 -0
- homeassistant/components/mcp_server/translations/pt.json +3 -0
- homeassistant/components/mcp_server/translations/ru.json +3 -0
- homeassistant/components/mcp_server/translations/sk.json +3 -0
- homeassistant/components/mcp_server/translations/zh-Hans.json +3 -0
- homeassistant/components/mcp_server/translations/zh-Hant.json +3 -0
- homeassistant/components/mealie/const.py +2 -0
- homeassistant/components/mealie/icons.json +3 -0
- homeassistant/components/mealie/manifest.json +2 -1
- homeassistant/components/mealie/services.py +39 -0
- homeassistant/components/mealie/services.yaml +21 -0
- homeassistant/components/mealie/strings.json +21 -0
- homeassistant/components/mealie/todo.py +4 -2
- homeassistant/components/mealie/translations/cs.json +21 -0
- homeassistant/components/mealie/translations/de.json +21 -0
- homeassistant/components/mealie/translations/el.json +8 -0
- homeassistant/components/mealie/translations/en-GB.json +21 -0
- homeassistant/components/mealie/translations/en.json +21 -0
- homeassistant/components/mealie/translations/es.json +21 -0
- homeassistant/components/mealie/translations/et.json +21 -0
- homeassistant/components/mealie/translations/fr.json +19 -0
- homeassistant/components/mealie/translations/ga.json +26 -0
- homeassistant/components/mealie/translations/ko.json +14 -0
- homeassistant/components/mealie/translations/sk.json +21 -0
- homeassistant/components/mealie/translations/sv.json +16 -0
- homeassistant/components/mealie/translations/zh-Hans.json +21 -0
- homeassistant/components/mealie/translations/zh-Hant.json +21 -0
- homeassistant/components/medcom_ble/__init__.py +3 -33
- homeassistant/components/medcom_ble/coordinator.py +50 -0
- homeassistant/components/medcom_ble/sensor.py +5 -13
- homeassistant/components/media_extractor/manifest.json +1 -1
- homeassistant/components/media_extractor/translations/ga.json +18 -0
- homeassistant/components/media_player/__init__.py +2 -1
- homeassistant/components/media_player/const.py +8 -1
- homeassistant/components/media_player/translations/he.json +1 -1
- homeassistant/components/media_player/translations/it.json +6 -6
- homeassistant/components/media_source/__init__.py +5 -4
- homeassistant/components/media_source/const.py +8 -0
- homeassistant/components/media_source/local_source.py +5 -5
- homeassistant/components/media_source/models.py +21 -5
- homeassistant/components/mediaroom/media_player.py +3 -3
- homeassistant/components/melcloud/__init__.py +6 -10
- homeassistant/components/melcloud/climate.py +3 -5
- homeassistant/components/melcloud/diagnostics.py +3 -2
- homeassistant/components/melcloud/sensor.py +3 -5
- homeassistant/components/melcloud/translations/ga.json +6 -0
- homeassistant/components/melcloud/translations/ko.json +5 -0
- homeassistant/components/melcloud/water_heater.py +3 -4
- homeassistant/components/melnor/__init__.py +6 -17
- homeassistant/components/melnor/coordinator.py +4 -2
- homeassistant/components/melnor/number.py +3 -5
- homeassistant/components/melnor/sensor.py +3 -5
- homeassistant/components/melnor/switch.py +3 -5
- homeassistant/components/melnor/time.py +3 -5
- homeassistant/components/met/__init__.py +0 -6
- homeassistant/components/met/config_flow.py +2 -2
- homeassistant/components/met_eireann/__init__.py +4 -65
- homeassistant/components/met_eireann/coordinator.py +76 -0
- homeassistant/components/met_eireann/weather.py +1 -4
- homeassistant/components/meteo_france/__init__.py +4 -4
- homeassistant/components/meteo_france/const.py +0 -1
- homeassistant/components/meteoclimatic/__init__.py +3 -31
- homeassistant/components/meteoclimatic/coordinator.py +43 -0
- homeassistant/components/meteoclimatic/sensor.py +9 -7
- homeassistant/components/meteoclimatic/weather.py +7 -7
- homeassistant/components/metoffice/translations/ko.json +5 -0
- homeassistant/components/microbees/translations/ga.json +5 -0
- homeassistant/components/microbees/translations/ko.json +11 -0
- homeassistant/components/miele/__init__.py +13 -2
- homeassistant/components/miele/const.py +11 -1
- homeassistant/components/miele/coordinator.py +2 -0
- homeassistant/components/miele/entity.py +6 -1
- homeassistant/components/miele/icons.json +11 -0
- homeassistant/components/miele/sensor.py +140 -76
- homeassistant/components/miele/services.py +238 -0
- homeassistant/components/miele/services.yaml +55 -0
- homeassistant/components/miele/strings.json +87 -24
- homeassistant/components/miele/translations/bg.json +35 -19
- homeassistant/components/miele/translations/cs.json +84 -21
- homeassistant/components/miele/translations/da.json +3 -0
- homeassistant/components/miele/translations/de.json +89 -26
- homeassistant/components/miele/translations/el.json +45 -25
- homeassistant/components/miele/translations/en-GB.json +84 -21
- homeassistant/components/miele/translations/en.json +83 -20
- homeassistant/components/miele/translations/es.json +81 -21
- homeassistant/components/miele/translations/et.json +84 -21
- homeassistant/components/miele/translations/ga.json +79 -22
- homeassistant/components/miele/translations/he.json +32 -20
- homeassistant/components/miele/translations/hu.json +1 -24
- homeassistant/components/miele/translations/it.json +85 -23
- homeassistant/components/miele/translations/ja.json +0 -20
- homeassistant/components/miele/translations/ko.json +5 -0
- homeassistant/components/miele/translations/lt.json +10 -21
- homeassistant/components/miele/translations/mk.json +14 -0
- homeassistant/components/miele/translations/nl.json +37 -20
- homeassistant/components/miele/translations/pt.json +1 -24
- homeassistant/components/miele/translations/sk.json +84 -21
- homeassistant/components/miele/translations/sv.json +32 -21
- homeassistant/components/miele/translations/zh-Hans.json +84 -21
- homeassistant/components/miele/translations/zh-Hant.json +84 -21
- homeassistant/components/miele/vacuum.py +0 -6
- homeassistant/components/mikrotik/coordinator.py +2 -2
- homeassistant/components/mill/__init__.py +1 -0
- homeassistant/components/mill/coordinator.py +2 -0
- homeassistant/components/minecraft_server/translations/ga.json +13 -0
- homeassistant/components/mjpeg/strings.json +1 -1
- homeassistant/components/modbus/modbus.py +2 -2
- homeassistant/components/modbus/strings.json +2 -2
- homeassistant/components/modbus/translations/fr.json +2 -0
- homeassistant/components/modbus/translations/ga.json +28 -0
- homeassistant/components/modem_callerid/sensor.py +15 -3
- homeassistant/components/mold_indicator/__init__.py +116 -1
- homeassistant/components/mold_indicator/config_flow.py +3 -0
- homeassistant/components/mold_indicator/sensor.py +2 -2
- homeassistant/components/mold_indicator/translations/ko.json +1 -0
- homeassistant/components/monarch_money/translations/ko.json +12 -0
- homeassistant/components/monoprice/__init__.py +2 -11
- homeassistant/components/monoprice/const.py +0 -1
- homeassistant/components/monzo/manifest.json +1 -1
- homeassistant/components/monzo/translations/ga.json +26 -0
- homeassistant/components/monzo/translations/ko.json +3 -0
- homeassistant/components/motion_blinds/__init__.py +0 -7
- homeassistant/components/motion_blinds/config_flow.py +2 -2
- homeassistant/components/motion_blinds/manifest.json +1 -1
- homeassistant/components/motionblinds_ble/translations/ga.json +41 -0
- homeassistant/components/motioneye/__init__.py +0 -6
- homeassistant/components/motioneye/config_flow.py +2 -2
- homeassistant/components/motionmount/translations/ga.json +14 -0
- homeassistant/components/motionmount/translations/ko.json +17 -0
- homeassistant/components/mpd/translations/ga.json +11 -0
- homeassistant/components/mpd/translations/ko.json +13 -0
- homeassistant/components/mqtt/climate.py +40 -46
- homeassistant/components/mqtt/config_flow.py +915 -15
- homeassistant/components/mqtt/const.py +33 -4
- homeassistant/components/mqtt/entity.py +73 -3
- homeassistant/components/mqtt/models.py +9 -0
- homeassistant/components/mqtt/repairs.py +74 -0
- homeassistant/components/mqtt/strings.json +294 -5
- homeassistant/components/mqtt/translations/bg.json +22 -0
- homeassistant/components/mqtt/translations/cs.json +333 -43
- homeassistant/components/mqtt/translations/da.json +5 -0
- homeassistant/components/mqtt/translations/de.json +291 -2
- homeassistant/components/mqtt/translations/el.json +77 -0
- homeassistant/components/mqtt/translations/en-GB.json +289 -0
- homeassistant/components/mqtt/translations/en.json +289 -0
- homeassistant/components/mqtt/translations/es.json +287 -2
- homeassistant/components/mqtt/translations/et.json +285 -0
- homeassistant/components/mqtt/translations/fr.json +46 -0
- homeassistant/components/mqtt/translations/ga.json +358 -3
- homeassistant/components/mqtt/translations/he.json +244 -0
- homeassistant/components/mqtt/translations/it.json +1 -1
- homeassistant/components/mqtt/translations/ko.json +28 -0
- homeassistant/components/mqtt/translations/lt.json +1 -0
- homeassistant/components/mqtt/translations/mk.json +18 -0
- homeassistant/components/mqtt/translations/nl.json +295 -1
- homeassistant/components/mqtt/translations/ru.json +90 -0
- homeassistant/components/mqtt/translations/sk.json +289 -0
- homeassistant/components/mqtt/translations/sl.json +5 -0
- homeassistant/components/mqtt/translations/sv.json +58 -0
- homeassistant/components/mqtt/translations/zh-Hans.json +267 -0
- homeassistant/components/mqtt/translations/zh-Hant.json +315 -26
- homeassistant/components/mqtt/vacuum.py +31 -5
- homeassistant/components/music_assistant/strings.json +1 -1
- homeassistant/components/music_assistant/translations/fr.json +2 -1
- homeassistant/components/music_assistant/translations/ga.json +2 -1
- homeassistant/components/music_assistant/translations/he.json +2 -1
- homeassistant/components/myq/translations/ga.json +8 -0
- homeassistant/components/mysensors/manifest.json +1 -1
- homeassistant/components/mystrom/__init__.py +6 -11
- homeassistant/components/mystrom/light.py +4 -4
- homeassistant/components/mystrom/manifest.json +1 -1
- homeassistant/components/mystrom/models.py +4 -0
- homeassistant/components/mystrom/sensor.py +3 -3
- homeassistant/components/mystrom/switch.py +3 -3
- homeassistant/components/mystrom/translations/ga.json +9 -0
- homeassistant/components/myuplink/translations/ga.json +15 -1
- homeassistant/components/myuplink/translations/ko.json +9 -0
- homeassistant/components/nam/translations/ga.json +7 -0
- homeassistant/components/nam/translations/ko.json +5 -0
- homeassistant/components/nasweb/__init__.py +1 -1
- homeassistant/components/nasweb/const.py +1 -0
- homeassistant/components/nasweb/coordinator.py +15 -5
- homeassistant/components/nasweb/icons.json +15 -0
- homeassistant/components/nasweb/sensor.py +189 -0
- homeassistant/components/nasweb/strings.json +17 -5
- homeassistant/components/nasweb/translations/bg.json +9 -0
- homeassistant/components/nasweb/translations/ca.json +10 -0
- homeassistant/components/nasweb/translations/cs.json +12 -0
- homeassistant/components/nasweb/translations/de.json +12 -0
- homeassistant/components/nasweb/translations/el.json +12 -0
- homeassistant/components/nasweb/translations/en-GB.json +12 -0
- homeassistant/components/nasweb/translations/en.json +12 -0
- homeassistant/components/nasweb/translations/es.json +12 -0
- homeassistant/components/nasweb/translations/et.json +12 -0
- homeassistant/components/nasweb/translations/ga.json +13 -0
- homeassistant/components/nasweb/translations/he.json +10 -0
- homeassistant/components/nasweb/translations/ko.json +13 -0
- homeassistant/components/nasweb/translations/lt.json +12 -0
- homeassistant/components/nasweb/translations/nb.json +11 -1
- homeassistant/components/nasweb/translations/nl.json +10 -0
- homeassistant/components/nasweb/translations/nn.json +11 -1
- homeassistant/components/nasweb/translations/ru.json +8 -0
- homeassistant/components/nasweb/translations/sk.json +12 -0
- homeassistant/components/nasweb/translations/sv.json +11 -0
- homeassistant/components/nasweb/translations/zh-Hans.json +12 -0
- homeassistant/components/nasweb/translations/zh-Hant.json +12 -0
- homeassistant/components/neato/translations/ga.json +4 -0
- homeassistant/components/neato/translations/ko.json +3 -0
- homeassistant/components/nest/strings.json +1 -1
- homeassistant/components/nest/translations/ga.json +2 -0
- homeassistant/components/nest/translations/ko.json +3 -0
- homeassistant/components/netatmo/climate.py +15 -6
- homeassistant/components/netatmo/const.py +1 -0
- homeassistant/components/netatmo/translations/ga.json +107 -0
- homeassistant/components/netatmo/translations/ko.json +3 -0
- homeassistant/components/netgear/__init__.py +0 -7
- homeassistant/components/netgear/config_flow.py +2 -2
- homeassistant/components/netgear/translations/ga.json +24 -0
- homeassistant/components/netgear_lte/translations/ga.json +30 -0
- homeassistant/components/netgear_lte/translations/ko.json +10 -0
- homeassistant/components/nextbus/translations/ga.json +30 -0
- homeassistant/components/nextcloud/translations/ko.json +1 -1
- homeassistant/components/nextdns/__init__.py +10 -16
- homeassistant/components/nextdns/coordinator.py +22 -3
- homeassistant/components/nfandroidtv/translations/ga.json +10 -0
- homeassistant/components/nibe_heatpump/button.py +1 -0
- homeassistant/components/nibe_heatpump/coordinator.py +35 -2
- homeassistant/components/nibe_heatpump/number.py +2 -1
- homeassistant/components/nibe_heatpump/strings.json +8 -0
- homeassistant/components/nibe_heatpump/translations/cs.json +8 -0
- homeassistant/components/nibe_heatpump/translations/de.json +8 -0
- homeassistant/components/nibe_heatpump/translations/el.json +8 -0
- homeassistant/components/nibe_heatpump/translations/en-GB.json +8 -0
- homeassistant/components/nibe_heatpump/translations/en.json +8 -0
- homeassistant/components/nibe_heatpump/translations/es.json +8 -0
- homeassistant/components/nibe_heatpump/translations/et.json +8 -0
- homeassistant/components/nibe_heatpump/translations/ga.json +10 -1
- homeassistant/components/nibe_heatpump/translations/it.json +8 -0
- homeassistant/components/nibe_heatpump/translations/ja.json +8 -0
- homeassistant/components/nibe_heatpump/translations/lt.json +8 -0
- homeassistant/components/nibe_heatpump/translations/pt.json +8 -0
- homeassistant/components/nibe_heatpump/translations/sk.json +8 -0
- homeassistant/components/nibe_heatpump/translations/zh-Hans.json +8 -0
- homeassistant/components/nibe_heatpump/translations/zh-Hant.json +8 -0
- homeassistant/components/nice_go/translations/ko.json +16 -0
- homeassistant/components/niko_home_control/translations/ko.json +11 -0
- homeassistant/components/nina/__init__.py +0 -7
- homeassistant/components/nina/config_flow.py +3 -3
- homeassistant/components/nissan_leaf/translations/de.json +4 -4
- homeassistant/components/nmap_tracker/__init__.py +0 -6
- homeassistant/components/nmap_tracker/config_flow.py +2 -2
- homeassistant/components/nobo_hub/__init__.py +0 -9
- homeassistant/components/nobo_hub/config_flow.py +3 -3
- homeassistant/components/nobo_hub/translations/ga.json +12 -0
- homeassistant/components/nordpool/const.py +1 -0
- homeassistant/components/nordpool/icons.json +3 -0
- homeassistant/components/nordpool/services.py +71 -8
- homeassistant/components/nordpool/services.yaml +56 -0
- homeassistant/components/nordpool/strings.json +27 -1
- homeassistant/components/nordpool/translations/bg.json +16 -0
- homeassistant/components/nordpool/translations/cs.json +26 -0
- homeassistant/components/nordpool/translations/de.json +26 -0
- homeassistant/components/nordpool/translations/el.json +26 -0
- homeassistant/components/nordpool/translations/en-GB.json +26 -0
- homeassistant/components/nordpool/translations/en.json +26 -0
- homeassistant/components/nordpool/translations/es.json +26 -0
- homeassistant/components/nordpool/translations/et.json +26 -0
- homeassistant/components/nordpool/translations/ga.json +29 -0
- homeassistant/components/nordpool/translations/he.json +7 -0
- homeassistant/components/nordpool/translations/ja.json +26 -0
- homeassistant/components/nordpool/translations/lt.json +26 -0
- homeassistant/components/nordpool/translations/mk.json +12 -1
- homeassistant/components/nordpool/translations/nl.json +9 -0
- homeassistant/components/nordpool/translations/pt.json +26 -0
- homeassistant/components/nordpool/translations/ru.json +21 -0
- homeassistant/components/nordpool/translations/sk.json +26 -0
- homeassistant/components/nordpool/translations/sv.json +26 -0
- homeassistant/components/nordpool/translations/zh-Hans.json +26 -0
- homeassistant/components/nordpool/translations/zh-Hant.json +26 -0
- homeassistant/components/notify/translations/ga.json +27 -0
- homeassistant/components/ntfy/translations/ga.json +3 -0
- homeassistant/components/ntfy/translations/ko.json +38 -0
- homeassistant/components/nuki/translations/ga.json +23 -0
- homeassistant/components/nuki/translations/sv.json +1 -1
- homeassistant/components/number/__init__.py +4 -1
- homeassistant/components/number/const.py +10 -0
- homeassistant/components/number/icons.json +3 -0
- homeassistant/components/number/strings.json +3 -0
- homeassistant/components/number/translations/cs.json +3 -0
- homeassistant/components/number/translations/de.json +3 -0
- homeassistant/components/number/translations/el.json +3 -0
- homeassistant/components/number/translations/en-GB.json +3 -0
- homeassistant/components/number/translations/en.json +3 -0
- homeassistant/components/number/translations/es.json +3 -0
- homeassistant/components/number/translations/et.json +3 -0
- homeassistant/components/number/translations/fr.json +3 -0
- homeassistant/components/number/translations/ga.json +11 -0
- homeassistant/components/number/translations/he.json +3 -0
- homeassistant/components/number/translations/lt.json +3 -0
- homeassistant/components/number/translations/nl.json +6 -0
- homeassistant/components/number/translations/pt.json +3 -0
- homeassistant/components/number/translations/ru.json +3 -0
- homeassistant/components/number/translations/sk.json +3 -0
- homeassistant/components/number/translations/sv.json +3 -0
- homeassistant/components/number/translations/zh-Hans.json +3 -0
- homeassistant/components/number/translations/zh-Hant.json +3 -0
- homeassistant/components/nut/__init__.py +0 -6
- homeassistant/components/nut/translations/es.json +6 -6
- homeassistant/components/nut/translations/ga.json +4 -1
- homeassistant/components/nut/translations/it.json +1 -1
- homeassistant/components/nut/translations/ko.json +14 -0
- homeassistant/components/nzbget/strings.json +2 -2
- homeassistant/components/octoprint/manifest.json +1 -1
- homeassistant/components/octoprint/sensor.py +61 -1
- homeassistant/components/octoprint/translations/ga.json +31 -0
- homeassistant/components/ohme/translations/ga.json +3 -0
- homeassistant/components/ohme/translations/ko.json +20 -0
- homeassistant/components/ollama/__init__.py +121 -13
- homeassistant/components/ollama/ai_task.py +80 -0
- homeassistant/components/ollama/config_flow.py +52 -28
- homeassistant/components/ollama/const.py +8 -1
- homeassistant/components/ollama/conversation.py +3 -28
- homeassistant/components/ollama/entity.py +26 -1
- homeassistant/components/ollama/strings.json +44 -1
- homeassistant/components/ollama/translations/bg.json +14 -0
- homeassistant/components/ollama/translations/ca.json +13 -0
- homeassistant/components/ollama/translations/cs.json +43 -0
- homeassistant/components/ollama/translations/de.json +43 -0
- homeassistant/components/ollama/translations/el.json +38 -0
- homeassistant/components/ollama/translations/en-GB.json +43 -0
- homeassistant/components/ollama/translations/en.json +43 -0
- homeassistant/components/ollama/translations/es.json +38 -0
- homeassistant/components/ollama/translations/et.json +43 -0
- homeassistant/components/ollama/translations/fr.json +38 -0
- homeassistant/components/ollama/translations/ga.json +39 -1
- homeassistant/components/ollama/translations/he.json +15 -0
- homeassistant/components/ollama/translations/ja.json +32 -0
- homeassistant/components/ollama/translations/ko.json +31 -0
- homeassistant/components/ollama/translations/lt.json +33 -0
- homeassistant/components/ollama/translations/mk.json +9 -0
- homeassistant/components/ollama/translations/nl.json +23 -0
- homeassistant/components/ollama/translations/pt.json +32 -0
- homeassistant/components/ollama/translations/ru.json +36 -0
- homeassistant/components/ollama/translations/sk.json +43 -0
- homeassistant/components/ollama/translations/sv.json +25 -0
- homeassistant/components/ollama/translations/zh-Hans.json +43 -0
- homeassistant/components/ollama/translations/zh-Hant.json +43 -0
- homeassistant/components/onboarding/translations/ga.json +7 -0
- homeassistant/components/onboarding/views.py +1 -1
- homeassistant/components/ondilo_ico/translations/ko.json +3 -0
- homeassistant/components/onedrive/translations/ga.json +3 -0
- homeassistant/components/onedrive/translations/ko.json +11 -0
- homeassistant/components/onewire/__init__.py +0 -10
- homeassistant/components/onewire/config_flow.py +6 -2
- homeassistant/components/onewire/translations/ga.json +37 -0
- homeassistant/components/onewire/translations/ko.json +6 -0
- homeassistant/components/onkyo/__init__.py +15 -17
- homeassistant/components/onkyo/config_flow.py +33 -20
- homeassistant/components/onkyo/const.py +28 -206
- homeassistant/components/onkyo/manifest.json +4 -2
- homeassistant/components/onkyo/media_player.py +201 -302
- homeassistant/components/onkyo/quality_scale.yaml +6 -12
- homeassistant/components/onkyo/receiver.py +107 -107
- homeassistant/components/onkyo/services.py +4 -14
- homeassistant/components/onkyo/translations/ga.json +1 -0
- homeassistant/components/onkyo/translations/ko.json +16 -0
- homeassistant/components/onkyo/util.py +8 -0
- homeassistant/components/onvif/__init__.py +57 -48
- homeassistant/components/onvif/manifest.json +1 -1
- homeassistant/components/onvif/translations/es.json +1 -1
- homeassistant/components/onvif/translations/ga.json +15 -0
- homeassistant/components/open_router/__init__.py +58 -0
- homeassistant/components/open_router/ai_task.py +75 -0
- homeassistant/components/open_router/config_flow.py +200 -0
- homeassistant/components/open_router/const.py +17 -0
- homeassistant/components/open_router/conversation.py +69 -0
- homeassistant/components/open_router/entity.py +249 -0
- homeassistant/components/open_router/manifest.json +13 -0
- homeassistant/components/open_router/quality_scale.yaml +88 -0
- homeassistant/components/open_router/strings.json +64 -0
- homeassistant/components/open_router/translations/bg.json +47 -0
- homeassistant/components/open_router/translations/ca.json +29 -0
- homeassistant/components/open_router/translations/cs.json +64 -0
- homeassistant/components/open_router/translations/de.json +64 -0
- homeassistant/components/open_router/translations/el.json +60 -0
- homeassistant/components/open_router/translations/en-GB.json +64 -0
- homeassistant/components/open_router/translations/en.json +64 -0
- homeassistant/components/open_router/translations/es.json +60 -0
- homeassistant/components/open_router/translations/et.json +64 -0
- homeassistant/components/open_router/translations/fr.json +60 -0
- homeassistant/components/open_router/translations/ga.json +41 -0
- homeassistant/components/open_router/translations/he.json +40 -0
- homeassistant/components/open_router/translations/ko.json +11 -0
- homeassistant/components/open_router/translations/lt.json +37 -0
- homeassistant/components/open_router/translations/mk.json +42 -0
- homeassistant/components/open_router/translations/nl.json +47 -0
- homeassistant/components/open_router/translations/ru.json +47 -0
- homeassistant/components/open_router/translations/sk.json +64 -0
- homeassistant/components/open_router/translations/sv.json +56 -0
- homeassistant/components/open_router/translations/zh-Hans.json +64 -0
- homeassistant/components/open_router/translations/zh-Hant.json +64 -0
- homeassistant/components/openai_conversation/__init__.py +135 -73
- homeassistant/components/openai_conversation/ai_task.py +80 -0
- homeassistant/components/openai_conversation/config_flow.py +60 -49
- homeassistant/components/openai_conversation/const.py +22 -8
- homeassistant/components/openai_conversation/conversation.py +10 -322
- homeassistant/components/openai_conversation/entity.py +468 -0
- homeassistant/components/openai_conversation/manifest.json +2 -2
- homeassistant/components/openai_conversation/strings.json +49 -1
- homeassistant/components/openai_conversation/translations/bg.json +19 -0
- homeassistant/components/openai_conversation/translations/ca.json +17 -0
- homeassistant/components/openai_conversation/translations/cs.json +48 -0
- homeassistant/components/openai_conversation/translations/de.json +48 -0
- homeassistant/components/openai_conversation/translations/el.json +43 -0
- homeassistant/components/openai_conversation/translations/en-GB.json +48 -0
- homeassistant/components/openai_conversation/translations/en.json +48 -0
- homeassistant/components/openai_conversation/translations/es.json +43 -0
- homeassistant/components/openai_conversation/translations/et.json +48 -0
- homeassistant/components/openai_conversation/translations/fr.json +43 -0
- homeassistant/components/openai_conversation/translations/ga.json +61 -1
- homeassistant/components/openai_conversation/translations/he.json +18 -0
- homeassistant/components/openai_conversation/translations/it.json +41 -0
- homeassistant/components/openai_conversation/translations/ko.json +20 -0
- homeassistant/components/openai_conversation/translations/lt.json +43 -0
- homeassistant/components/openai_conversation/translations/mk.json +43 -0
- homeassistant/components/openai_conversation/translations/nl.json +18 -0
- homeassistant/components/openai_conversation/translations/pt.json +41 -0
- homeassistant/components/openai_conversation/translations/ru.json +45 -0
- homeassistant/components/openai_conversation/translations/sk.json +48 -0
- homeassistant/components/openai_conversation/translations/sv.json +36 -0
- homeassistant/components/openai_conversation/translations/zh-Hans.json +48 -0
- homeassistant/components/openai_conversation/translations/zh-Hant.json +48 -0
- homeassistant/components/opentherm_gw/translations/ga.json +16 -0
- homeassistant/components/openweathermap/config_flow.py +4 -0
- homeassistant/components/openweathermap/strings.json +1 -1
- homeassistant/components/openweathermap/translations/bg.json +1 -2
- homeassistant/components/openweathermap/translations/ca.json +1 -2
- homeassistant/components/openweathermap/translations/cs.json +1 -1
- homeassistant/components/openweathermap/translations/de.json +1 -1
- homeassistant/components/openweathermap/translations/el.json +1 -2
- homeassistant/components/openweathermap/translations/en-GB.json +1 -1
- homeassistant/components/openweathermap/translations/en.json +1 -1
- homeassistant/components/openweathermap/translations/es.json +1 -1
- homeassistant/components/openweathermap/translations/et.json +1 -1
- homeassistant/components/openweathermap/translations/fi.json +1 -2
- homeassistant/components/openweathermap/translations/fr.json +1 -1
- homeassistant/components/openweathermap/translations/ga.json +16 -0
- homeassistant/components/openweathermap/translations/gsw.json +1 -2
- homeassistant/components/openweathermap/translations/he.json +1 -1
- homeassistant/components/openweathermap/translations/hu.json +1 -2
- homeassistant/components/openweathermap/translations/id.json +1 -2
- homeassistant/components/openweathermap/translations/it.json +1 -2
- homeassistant/components/openweathermap/translations/ja.json +1 -2
- homeassistant/components/openweathermap/translations/ko.json +1 -2
- homeassistant/components/openweathermap/translations/lt.json +1 -2
- homeassistant/components/openweathermap/translations/nb.json +1 -2
- homeassistant/components/openweathermap/translations/nl.json +1 -2
- homeassistant/components/openweathermap/translations/pl.json +1 -2
- homeassistant/components/openweathermap/translations/pt-BR.json +1 -2
- homeassistant/components/openweathermap/translations/pt.json +1 -2
- homeassistant/components/openweathermap/translations/ro.json +1 -2
- homeassistant/components/openweathermap/translations/ru.json +1 -1
- homeassistant/components/openweathermap/translations/sk.json +1 -1
- homeassistant/components/openweathermap/translations/sv.json +1 -2
- homeassistant/components/openweathermap/translations/tr.json +1 -2
- homeassistant/components/openweathermap/translations/uk.json +1 -2
- homeassistant/components/openweathermap/translations/vi.json +1 -2
- homeassistant/components/openweathermap/translations/zh-Hans.json +1 -1
- homeassistant/components/openweathermap/translations/zh-Hant.json +1 -1
- homeassistant/components/opower/config_flow.py +143 -70
- homeassistant/components/opower/const.py +1 -0
- homeassistant/components/opower/coordinator.py +4 -3
- homeassistant/components/opower/manifest.json +1 -1
- homeassistant/components/opower/sensor.py +22 -21
- homeassistant/components/opower/strings.json +93 -7
- homeassistant/components/opower/translations/bg.json +80 -4
- homeassistant/components/opower/translations/ca.json +0 -2
- homeassistant/components/opower/translations/cs.json +92 -6
- homeassistant/components/opower/translations/de.json +92 -6
- homeassistant/components/opower/translations/el.json +54 -10
- homeassistant/components/opower/translations/en-GB.json +92 -6
- homeassistant/components/opower/translations/en.json +92 -6
- homeassistant/components/opower/translations/es.json +55 -9
- homeassistant/components/opower/translations/et.json +55 -9
- homeassistant/components/opower/translations/fi.json +0 -2
- homeassistant/components/opower/translations/fr.json +0 -11
- homeassistant/components/opower/translations/fy.json +0 -12
- homeassistant/components/opower/translations/ga.json +61 -0
- homeassistant/components/opower/translations/he.json +0 -6
- homeassistant/components/opower/translations/hu.json +0 -9
- homeassistant/components/opower/translations/id.json +0 -3
- homeassistant/components/opower/translations/it.json +0 -2
- homeassistant/components/opower/translations/ja.json +55 -2
- homeassistant/components/opower/translations/ko.json +20 -2
- homeassistant/components/opower/translations/lt.json +55 -9
- homeassistant/components/opower/translations/nb.json +0 -6
- homeassistant/components/opower/translations/nl.json +6 -3
- homeassistant/components/opower/translations/pl.json +0 -6
- homeassistant/components/opower/translations/pt-BR.json +0 -2
- homeassistant/components/opower/translations/pt.json +55 -9
- homeassistant/components/opower/translations/ro.json +0 -2
- homeassistant/components/opower/translations/ru.json +0 -9
- homeassistant/components/opower/translations/sk.json +92 -6
- homeassistant/components/opower/translations/sl.json +0 -6
- homeassistant/components/opower/translations/sv.json +3 -9
- homeassistant/components/opower/translations/tr.json +0 -2
- homeassistant/components/opower/translations/uk.json +0 -2
- homeassistant/components/opower/translations/zh-Hans.json +55 -9
- homeassistant/components/opower/translations/zh-Hant.json +92 -6
- homeassistant/components/oralb/translations/ga.json +21 -0
- homeassistant/components/osoenergy/icons.json +3 -0
- homeassistant/components/osoenergy/manifest.json +1 -1
- homeassistant/components/osoenergy/services.yaml +14 -0
- homeassistant/components/osoenergy/strings.json +10 -0
- homeassistant/components/osoenergy/translations/bg.json +7 -0
- homeassistant/components/osoenergy/translations/cs.json +10 -0
- homeassistant/components/osoenergy/translations/de.json +11 -1
- homeassistant/components/osoenergy/translations/en-GB.json +10 -0
- homeassistant/components/osoenergy/translations/en.json +10 -0
- homeassistant/components/osoenergy/translations/es.json +9 -0
- homeassistant/components/osoenergy/translations/et.json +10 -0
- homeassistant/components/osoenergy/translations/ga.json +55 -1
- homeassistant/components/osoenergy/translations/it.json +2 -2
- homeassistant/components/osoenergy/translations/sk.json +10 -0
- homeassistant/components/osoenergy/translations/zh-Hans.json +10 -0
- homeassistant/components/osoenergy/translations/zh-Hant.json +10 -0
- homeassistant/components/osoenergy/water_heater.py +34 -1
- homeassistant/components/otbr/translations/ko.json +1 -1
- homeassistant/components/otp/translations/ko.json +11 -0
- homeassistant/components/overkiz/strings.json +1 -1
- homeassistant/components/overkiz/translations/ga.json +19 -3
- homeassistant/components/overkiz/translations/ko.json +1 -0
- homeassistant/components/overseerr/translations/ga.json +3 -0
- homeassistant/components/overseerr/translations/ko.json +15 -0
- homeassistant/components/ovo_energy/translations/ko.json +5 -0
- homeassistant/components/p1_monitor/translations/ko.json +2 -1
- homeassistant/components/palazzetti/translations/it.json +1 -1
- homeassistant/components/palazzetti/translations/ko.json +11 -0
- homeassistant/components/palazzetti/translations/nl.json +1 -0
- homeassistant/components/paperless_ngx/__init__.py +1 -1
- homeassistant/components/paperless_ngx/translations/ga.json +3 -0
- homeassistant/components/paperless_ngx/translations/ko.json +25 -0
- homeassistant/components/peblar/translations/ga.json +2 -1
- homeassistant/components/peblar/translations/ko.json +26 -0
- homeassistant/components/peco/translations/ga.json +12 -0
- homeassistant/components/pegel_online/__init__.py +6 -2
- homeassistant/components/pegel_online/manifest.json +1 -0
- homeassistant/components/pegel_online/quality_scale.yaml +87 -0
- homeassistant/components/pegel_online/sensor.py +3 -0
- homeassistant/components/pegel_online/strings.json +8 -2
- homeassistant/components/pegel_online/translations/cs.json +7 -1
- homeassistant/components/pegel_online/translations/de.json +7 -1
- homeassistant/components/pegel_online/translations/el.json +7 -1
- homeassistant/components/pegel_online/translations/en-GB.json +7 -1
- homeassistant/components/pegel_online/translations/en.json +7 -1
- homeassistant/components/pegel_online/translations/es.json +7 -1
- homeassistant/components/pegel_online/translations/et.json +7 -1
- homeassistant/components/pegel_online/translations/fr.json +1 -2
- homeassistant/components/pegel_online/translations/ga.json +15 -0
- homeassistant/components/pegel_online/translations/hu.json +7 -1
- homeassistant/components/pegel_online/translations/it.json +7 -0
- homeassistant/components/pegel_online/translations/ja.json +7 -0
- homeassistant/components/pegel_online/translations/lt.json +7 -1
- homeassistant/components/pegel_online/translations/mk.json +1 -2
- homeassistant/components/pegel_online/translations/nl.json +7 -0
- homeassistant/components/pegel_online/translations/pt.json +7 -1
- homeassistant/components/pegel_online/translations/ru.json +7 -1
- homeassistant/components/pegel_online/translations/sk.json +7 -1
- homeassistant/components/pegel_online/translations/sv.json +7 -1
- homeassistant/components/pegel_online/translations/zh-Hans.json +7 -1
- homeassistant/components/pegel_online/translations/zh-Hant.json +7 -1
- homeassistant/components/permobil/translations/ga.json +14 -0
- homeassistant/components/philips_js/config_flow.py +83 -35
- homeassistant/components/philips_js/manifest.json +2 -1
- homeassistant/components/philips_js/strings.json +5 -0
- homeassistant/components/philips_js/translations/bg.json +1 -0
- homeassistant/components/philips_js/translations/ca.json +1 -0
- homeassistant/components/philips_js/translations/cs.json +5 -0
- homeassistant/components/philips_js/translations/de.json +5 -0
- homeassistant/components/philips_js/translations/el.json +5 -0
- homeassistant/components/philips_js/translations/en-GB.json +5 -0
- homeassistant/components/philips_js/translations/en.json +5 -0
- homeassistant/components/philips_js/translations/es.json +5 -0
- homeassistant/components/philips_js/translations/et.json +5 -0
- homeassistant/components/philips_js/translations/ga.json +7 -0
- homeassistant/components/philips_js/translations/he.json +1 -0
- homeassistant/components/philips_js/translations/ja.json +5 -0
- homeassistant/components/philips_js/translations/lt.json +5 -0
- homeassistant/components/philips_js/translations/nl.json +1 -0
- homeassistant/components/philips_js/translations/pt.json +5 -0
- homeassistant/components/philips_js/translations/ru.json +5 -0
- homeassistant/components/philips_js/translations/sk.json +5 -0
- homeassistant/components/philips_js/translations/sv.json +5 -0
- homeassistant/components/philips_js/translations/zh-Hans.json +5 -0
- homeassistant/components/philips_js/translations/zh-Hant.json +5 -0
- homeassistant/components/pi_hole/__init__.py +123 -16
- homeassistant/components/pi_hole/binary_sensor.py +1 -1
- homeassistant/components/pi_hole/config_flow.py +48 -37
- homeassistant/components/pi_hole/const.py +7 -0
- homeassistant/components/pi_hole/entity.py +4 -1
- homeassistant/components/pi_hole/icons.json +9 -0
- homeassistant/components/pi_hole/manifest.json +1 -1
- homeassistant/components/pi_hole/sensor.py +96 -10
- homeassistant/components/pi_hole/strings.json +21 -6
- homeassistant/components/pi_hole/switch.py +1 -1
- homeassistant/components/pi_hole/translations/bg.json +7 -5
- homeassistant/components/pi_hole/translations/ca.json +6 -5
- homeassistant/components/pi_hole/translations/cs.json +18 -5
- homeassistant/components/pi_hole/translations/da.json +0 -5
- homeassistant/components/pi_hole/translations/de.json +18 -5
- homeassistant/components/pi_hole/translations/el.json +18 -5
- homeassistant/components/pi_hole/translations/en-GB.json +18 -5
- homeassistant/components/pi_hole/translations/en.json +18 -5
- homeassistant/components/pi_hole/translations/es.json +18 -5
- homeassistant/components/pi_hole/translations/et.json +18 -5
- homeassistant/components/pi_hole/translations/fi.json +0 -5
- homeassistant/components/pi_hole/translations/fr.json +0 -5
- homeassistant/components/pi_hole/translations/ga.json +15 -0
- homeassistant/components/pi_hole/translations/he.json +18 -5
- homeassistant/components/pi_hole/translations/hu.json +0 -5
- homeassistant/components/pi_hole/translations/id.json +0 -5
- homeassistant/components/pi_hole/translations/it.json +0 -5
- homeassistant/components/pi_hole/translations/ja.json +18 -5
- homeassistant/components/pi_hole/translations/ko.json +1 -5
- homeassistant/components/pi_hole/translations/lt.json +18 -5
- homeassistant/components/pi_hole/translations/mk.json +9 -0
- homeassistant/components/pi_hole/translations/nb.json +0 -5
- homeassistant/components/pi_hole/translations/nl.json +6 -5
- homeassistant/components/pi_hole/translations/pl.json +0 -5
- homeassistant/components/pi_hole/translations/pt-BR.json +0 -5
- homeassistant/components/pi_hole/translations/pt.json +18 -5
- homeassistant/components/pi_hole/translations/ro.json +0 -5
- homeassistant/components/pi_hole/translations/ru.json +18 -5
- homeassistant/components/pi_hole/translations/sk.json +18 -5
- homeassistant/components/pi_hole/translations/sl.json +0 -5
- homeassistant/components/pi_hole/translations/sv.json +9 -5
- homeassistant/components/pi_hole/translations/tr.json +0 -5
- homeassistant/components/pi_hole/translations/uk.json +0 -5
- homeassistant/components/pi_hole/translations/vi.json +0 -5
- homeassistant/components/pi_hole/translations/zh-Hans.json +18 -5
- homeassistant/components/pi_hole/translations/zh-Hant.json +18 -5
- homeassistant/components/pi_hole/update.py +15 -15
- homeassistant/components/ping/__init__.py +0 -6
- homeassistant/components/ping/config_flow.py +3 -3
- homeassistant/components/ping/translations/ga.json +39 -0
- homeassistant/components/playstation_network/__init__.py +44 -4
- homeassistant/components/playstation_network/binary_sensor.py +76 -0
- homeassistant/components/playstation_network/config_flow.py +106 -7
- homeassistant/components/playstation_network/const.py +4 -2
- homeassistant/components/playstation_network/coordinator.py +168 -13
- homeassistant/components/playstation_network/diagnostics.py +15 -7
- homeassistant/components/playstation_network/entity.py +54 -0
- homeassistant/components/playstation_network/helpers.py +92 -37
- homeassistant/components/playstation_network/icons.json +36 -0
- homeassistant/components/playstation_network/image.py +154 -0
- homeassistant/components/playstation_network/media_player.py +35 -11
- homeassistant/components/playstation_network/notify.py +126 -0
- homeassistant/components/playstation_network/quality_scale.yaml +1 -1
- homeassistant/components/playstation_network/sensor.py +94 -40
- homeassistant/components/playstation_network/strings.json +93 -2
- homeassistant/components/playstation_network/translations/bg.json +30 -1
- homeassistant/components/playstation_network/translations/ca.json +2 -1
- homeassistant/components/playstation_network/translations/cs.json +91 -0
- homeassistant/components/playstation_network/translations/de.json +91 -0
- homeassistant/components/playstation_network/translations/el.json +44 -0
- homeassistant/components/playstation_network/translations/en-GB.json +91 -0
- homeassistant/components/playstation_network/translations/en.json +91 -0
- homeassistant/components/playstation_network/translations/es.json +91 -0
- homeassistant/components/playstation_network/translations/et.json +91 -0
- homeassistant/components/playstation_network/translations/fr.json +13 -0
- homeassistant/components/playstation_network/translations/ga.json +87 -0
- homeassistant/components/playstation_network/translations/he.json +17 -1
- homeassistant/components/playstation_network/translations/hu.json +11 -0
- homeassistant/components/playstation_network/translations/id.json +2 -1
- homeassistant/components/playstation_network/translations/it.json +14 -0
- homeassistant/components/playstation_network/translations/ja.json +24 -0
- homeassistant/components/playstation_network/translations/lt.json +28 -0
- homeassistant/components/playstation_network/translations/mk.json +11 -0
- homeassistant/components/playstation_network/translations/nl.json +24 -1
- homeassistant/components/playstation_network/translations/pt.json +28 -0
- homeassistant/components/playstation_network/translations/ru.json +33 -0
- homeassistant/components/playstation_network/translations/sk.json +91 -0
- homeassistant/components/playstation_network/translations/sl.json +28 -0
- homeassistant/components/playstation_network/translations/sv.json +38 -1
- homeassistant/components/playstation_network/translations/zh-Hans.json +91 -0
- homeassistant/components/playstation_network/translations/zh-Hant.json +91 -0
- homeassistant/components/plex/translations/nl.json +9 -0
- homeassistant/components/plugwise/__init__.py +4 -4
- homeassistant/components/plugwise/climate.py +3 -3
- homeassistant/components/plugwise/config_flow.py +3 -3
- homeassistant/components/plugwise/entity.py +1 -1
- homeassistant/components/plugwise/manifest.json +1 -1
- homeassistant/components/plugwise/select.py +2 -2
- homeassistant/components/plugwise/translations/ga.json +16 -2
- homeassistant/components/plugwise/translations/it.json +3 -3
- homeassistant/components/plugwise/translations/ko.json +5 -0
- homeassistant/components/point/translations/ga.json +2 -0
- homeassistant/components/point/translations/ko.json +7 -0
- homeassistant/components/powerfox/translations/ga.json +3 -0
- homeassistant/components/powerfox/translations/ko.json +23 -0
- homeassistant/components/powerwall/translations/ga.json +20 -0
- homeassistant/components/probe_plus/translations/ko.json +11 -0
- homeassistant/components/profiler/translations/ga.json +18 -0
- homeassistant/components/progettihwsw/translations/ga.json +11 -0
- homeassistant/components/proximity/__init__.py +0 -8
- homeassistant/components/proximity/config_flow.py +3 -3
- homeassistant/components/proximity/strings.json +12 -12
- homeassistant/components/proximity/translations/ga.json +73 -0
- homeassistant/components/proxy/manifest.json +1 -1
- homeassistant/components/prusalink/translations/ga.json +19 -0
- homeassistant/components/prusalink/translations/he.json +1 -1
- homeassistant/components/ps4/media_player.py +2 -2
- homeassistant/components/pterodactyl/translations/ko.json +17 -0
- homeassistant/components/purpleair/__init__.py +0 -7
- homeassistant/components/purpleair/config_flow.py +2 -2
- homeassistant/components/purpleair/sensor.py +1 -1
- homeassistant/components/pvpc_hourly_pricing/translations/ga.json +34 -0
- homeassistant/components/pyload/config_flow.py +58 -0
- homeassistant/components/pyload/strings.json +12 -0
- homeassistant/components/pyload/translations/bg.json +6 -0
- homeassistant/components/pyload/translations/ca.json +6 -0
- homeassistant/components/pyload/translations/cs.json +12 -0
- homeassistant/components/pyload/translations/de.json +12 -0
- homeassistant/components/pyload/translations/el.json +12 -0
- homeassistant/components/pyload/translations/en-GB.json +12 -0
- homeassistant/components/pyload/translations/en.json +12 -0
- homeassistant/components/pyload/translations/es.json +12 -0
- homeassistant/components/pyload/translations/et.json +12 -0
- homeassistant/components/pyload/translations/fr.json +12 -0
- homeassistant/components/pyload/translations/ga.json +14 -0
- homeassistant/components/pyload/translations/he.json +6 -0
- homeassistant/components/pyload/translations/ko.json +34 -0
- homeassistant/components/pyload/translations/lt.json +12 -0
- homeassistant/components/pyload/translations/nl.json +10 -0
- homeassistant/components/pyload/translations/pt.json +12 -0
- homeassistant/components/pyload/translations/ru.json +12 -0
- homeassistant/components/pyload/translations/sk.json +12 -0
- homeassistant/components/pyload/translations/sv.json +10 -0
- homeassistant/components/pyload/translations/zh-Hans.json +12 -0
- homeassistant/components/pyload/translations/zh-Hant.json +12 -0
- homeassistant/components/qbittorrent/translations/ga.json +34 -0
- homeassistant/components/qbittorrent/translations/he.json +1 -1
- homeassistant/components/qbittorrent/translations/ko.json +10 -1
- homeassistant/components/qbus/entity.py +2 -5
- homeassistant/components/qbus/manifest.json +1 -1
- homeassistant/components/qnap/strings.json +1 -1
- homeassistant/components/qnap/translations/ga.json +54 -0
- homeassistant/components/qrcode/manifest.json +1 -1
- homeassistant/components/rabbitair/translations/ko.json +12 -0
- homeassistant/components/rachio/translations/es.json +1 -1
- homeassistant/components/rachio/translations/ga.json +12 -0
- homeassistant/components/rainbird/strings.json +2 -2
- homeassistant/components/rainbird/translations/es.json +3 -3
- homeassistant/components/rainbird/translations/fr.json +3 -0
- homeassistant/components/rainbird/translations/ko.json +5 -0
- homeassistant/components/rainforest_raven/translations/ga.json +26 -0
- homeassistant/components/rainmachine/strings.json +11 -11
- homeassistant/components/rainmachine/translations/es.json +1 -1
- homeassistant/components/random/strings.json +1 -0
- homeassistant/components/random/translations/bg.json +0 -1
- homeassistant/components/random/translations/ca.json +0 -1
- homeassistant/components/random/translations/cs.json +2 -1
- homeassistant/components/random/translations/da.json +7 -0
- homeassistant/components/random/translations/de.json +1 -0
- homeassistant/components/random/translations/el.json +2 -1
- homeassistant/components/random/translations/en-GB.json +2 -1
- homeassistant/components/random/translations/en.json +2 -1
- homeassistant/components/random/translations/es.json +2 -1
- homeassistant/components/random/translations/et.json +2 -1
- homeassistant/components/random/translations/fi.json +1 -0
- homeassistant/components/random/translations/fr.json +2 -1
- homeassistant/components/random/translations/ga.json +26 -0
- homeassistant/components/random/translations/he.json +2 -1
- homeassistant/components/random/translations/hu.json +0 -1
- homeassistant/components/random/translations/id.json +0 -1
- homeassistant/components/random/translations/it.json +0 -1
- homeassistant/components/random/translations/ja.json +0 -1
- homeassistant/components/random/translations/ko.json +0 -1
- homeassistant/components/random/translations/lt.json +1 -1
- homeassistant/components/random/translations/nl.json +2 -1
- homeassistant/components/random/translations/pl.json +0 -1
- homeassistant/components/random/translations/pt.json +0 -1
- homeassistant/components/random/translations/ru.json +2 -1
- homeassistant/components/random/translations/sk.json +2 -1
- homeassistant/components/random/translations/sl.json +0 -1
- homeassistant/components/random/translations/sv.json +1 -1
- homeassistant/components/random/translations/tr.json +0 -1
- homeassistant/components/random/translations/vi.json +0 -1
- homeassistant/components/random/translations/zh-Hans.json +2 -1
- homeassistant/components/random/translations/zh-Hant.json +2 -1
- homeassistant/components/recorder/pool.py +7 -0
- homeassistant/components/recorder/translations/ga.json +14 -0
- homeassistant/components/rehlko/translations/ko.json +17 -0
- homeassistant/components/remote/translations/es.json +1 -1
- homeassistant/components/remote/translations/it.json +2 -2
- homeassistant/components/remote_calendar/calendar.py +1 -1
- homeassistant/components/remote_calendar/coordinator.py +1 -0
- homeassistant/components/remote_calendar/manifest.json +1 -1
- homeassistant/components/renault/__init__.py +2 -2
- homeassistant/components/renault/services.py +3 -2
- homeassistant/components/renault/translations/ga.json +10 -0
- homeassistant/components/renson/translations/ga.json +80 -0
- homeassistant/components/renson/translations/it.json +4 -4
- homeassistant/components/reolink/__init__.py +1 -12
- homeassistant/components/reolink/config_flow.py +2 -2
- homeassistant/components/reolink/diagnostics.py +4 -2
- homeassistant/components/reolink/entity.py +1 -1
- homeassistant/components/reolink/icons.json +21 -1
- homeassistant/components/reolink/manifest.json +1 -1
- homeassistant/components/reolink/number.py +33 -1
- homeassistant/components/reolink/select.py +25 -0
- homeassistant/components/reolink/sensor.py +23 -4
- homeassistant/components/reolink/strings.json +15 -0
- homeassistant/components/reolink/switch.py +9 -0
- homeassistant/components/reolink/translations/cs.json +15 -0
- homeassistant/components/reolink/translations/de.json +15 -0
- homeassistant/components/reolink/translations/el.json +3 -0
- homeassistant/components/reolink/translations/en-GB.json +15 -0
- homeassistant/components/reolink/translations/en.json +15 -0
- homeassistant/components/reolink/translations/es.json +25 -10
- homeassistant/components/reolink/translations/et.json +15 -0
- homeassistant/components/reolink/translations/ga.json +105 -2
- homeassistant/components/reolink/translations/it.json +12 -12
- homeassistant/components/reolink/translations/mk.json +5 -0
- homeassistant/components/reolink/translations/sk.json +15 -0
- homeassistant/components/reolink/translations/sv.json +28 -13
- homeassistant/components/reolink/translations/zh-Hans.json +15 -0
- homeassistant/components/reolink/translations/zh-Hant.json +15 -0
- homeassistant/components/rest/sensor.py +1 -15
- homeassistant/components/rest_command/__init__.py +5 -1
- homeassistant/components/rest_command/translations/ga.json +13 -0
- homeassistant/components/rflink/light.py +2 -2
- homeassistant/components/rfxtrx/translations/es.json +8 -8
- homeassistant/components/rfxtrx/translations/ga.json +75 -1
- homeassistant/components/rfxtrx/translations/it.json +2 -2
- homeassistant/components/ring/manifest.json +1 -0
- homeassistant/components/ring/quality_scale.yaml +71 -0
- homeassistant/components/ring/translations/ga.json +21 -1
- homeassistant/components/ring/translations/ko.json +5 -0
- homeassistant/components/risco/alarm_control_panel.py +7 -3
- homeassistant/components/risco/strings.json +6 -6
- homeassistant/components/risco/translations/cs.json +8 -0
- homeassistant/components/risco/translations/fr.json +6 -0
- homeassistant/components/risco/translations/ga.json +39 -0
- homeassistant/components/risco/translations/he.json +8 -0
- homeassistant/components/roborock/__init__.py +0 -8
- homeassistant/components/roborock/config_flow.py +4 -9
- homeassistant/components/roborock/translations/ga.json +47 -1
- homeassistant/components/roborock/translations/he.json +1 -1
- homeassistant/components/roborock/translations/it.json +2 -2
- homeassistant/components/roborock/translations/nl.json +1 -0
- homeassistant/components/roborock/vacuum.py +0 -6
- homeassistant/components/roku/__init__.py +0 -7
- homeassistant/components/roku/config_flow.py +2 -2
- homeassistant/components/roku/media_player.py +4 -4
- homeassistant/components/roku/translations/ga.json +8 -0
- homeassistant/components/romy/translations/ga.json +50 -1
- homeassistant/components/romy/translations/ko.json +14 -0
- homeassistant/components/roomba/translations/es.json +1 -1
- homeassistant/components/roomba/translations/ga.json +15 -0
- homeassistant/components/roon/event.py +4 -3
- homeassistant/components/roon/media_player.py +4 -3
- homeassistant/components/rova/translations/ga.json +43 -0
- homeassistant/components/russound_rio/const.py +4 -0
- homeassistant/components/russound_rio/manifest.json +1 -1
- homeassistant/components/russound_rio/media_player.py +51 -2
- homeassistant/components/russound_rio/strings.json +9 -0
- homeassistant/components/russound_rio/translations/cs.json +9 -0
- homeassistant/components/russound_rio/translations/de.json +9 -0
- homeassistant/components/russound_rio/translations/el.json +9 -0
- homeassistant/components/russound_rio/translations/en-GB.json +9 -0
- homeassistant/components/russound_rio/translations/en.json +9 -0
- homeassistant/components/russound_rio/translations/es.json +9 -0
- homeassistant/components/russound_rio/translations/et.json +9 -0
- homeassistant/components/russound_rio/translations/ga.json +10 -0
- homeassistant/components/russound_rio/translations/ja.json +9 -0
- homeassistant/components/russound_rio/translations/ko.json +19 -0
- homeassistant/components/russound_rio/translations/lt.json +9 -0
- homeassistant/components/russound_rio/translations/mk.json +13 -1
- homeassistant/components/russound_rio/translations/pt.json +9 -0
- homeassistant/components/russound_rio/translations/sk.json +9 -0
- homeassistant/components/russound_rio/translations/zh-Hans.json +9 -0
- homeassistant/components/russound_rio/translations/zh-Hant.json +9 -0
- homeassistant/components/ruuvitag_ble/translations/ga.json +8 -0
- homeassistant/components/ruuvitag_ble/translations/ko.json +11 -0
- homeassistant/components/rympro/translations/ga.json +3 -0
- homeassistant/components/sabnzbd/translations/ga.json +3 -0
- homeassistant/components/samsungtv/strings.json +1 -1
- homeassistant/components/samsungtv/translations/ga.json +1 -0
- homeassistant/components/samsungtv/translations/ko.json +6 -0
- homeassistant/components/sanix/translations/ga.json +28 -0
- homeassistant/components/sanix/translations/ko.json +11 -0
- homeassistant/components/scene/translations/ga.json +16 -0
- homeassistant/components/schedule/translations/it.json +2 -2
- homeassistant/components/schlage/manifest.json +1 -1
- homeassistant/components/schlage/translations/ga.json +10 -0
- homeassistant/components/scrape/manifest.json +1 -1
- homeassistant/components/scrape/sensor.py +2 -13
- homeassistant/components/scrape/translations/bg.json +0 -1
- homeassistant/components/scrape/translations/ca.json +0 -1
- homeassistant/components/scrape/translations/cs.json +1 -1
- homeassistant/components/scrape/translations/el.json +1 -1
- homeassistant/components/scrape/translations/en-GB.json +1 -1
- homeassistant/components/scrape/translations/en.json +1 -1
- homeassistant/components/scrape/translations/es.json +1 -1
- homeassistant/components/scrape/translations/fi.json +0 -1
- homeassistant/components/scrape/translations/fr.json +1 -1
- homeassistant/components/scrape/translations/ga.json +34 -1
- homeassistant/components/scrape/translations/he.json +1 -1
- homeassistant/components/scrape/translations/hu.json +0 -1
- homeassistant/components/scrape/translations/id.json +0 -1
- homeassistant/components/scrape/translations/it.json +0 -1
- homeassistant/components/scrape/translations/ja.json +0 -1
- homeassistant/components/scrape/translations/ko.json +0 -1
- homeassistant/components/scrape/translations/lt.json +0 -1
- homeassistant/components/scrape/translations/nb.json +0 -1
- homeassistant/components/scrape/translations/nl.json +0 -1
- homeassistant/components/scrape/translations/pl.json +0 -1
- homeassistant/components/scrape/translations/pt.json +0 -1
- homeassistant/components/scrape/translations/ru.json +1 -1
- homeassistant/components/scrape/translations/sk.json +1 -1
- homeassistant/components/scrape/translations/sl.json +0 -1
- homeassistant/components/scrape/translations/sv.json +0 -1
- homeassistant/components/scrape/translations/tr.json +0 -1
- homeassistant/components/scrape/translations/uk.json +0 -1
- homeassistant/components/scrape/translations/vi.json +0 -1
- homeassistant/components/scrape/translations/zh-Hans.json +1 -1
- homeassistant/components/scrape/translations/zh-Hant.json +1 -1
- homeassistant/components/screenlogic/manifest.json +1 -1
- homeassistant/components/screenlogic/translations/es.json +3 -3
- homeassistant/components/screenlogic/translations/ga.json +34 -0
- homeassistant/components/script/translations/it.json +2 -2
- homeassistant/components/sensibo/translations/ga.json +14 -0
- homeassistant/components/sensibo/translations/it.json +28 -28
- homeassistant/components/sensibo/translations/ko.json +15 -0
- homeassistant/components/sensirion_ble/translations/ga.json +8 -0
- homeassistant/components/sensirion_ble/translations/ko.json +11 -0
- homeassistant/components/sensor/__init__.py +3 -1
- homeassistant/components/sensor/const.py +14 -0
- homeassistant/components/sensor/device_condition.py +3 -0
- homeassistant/components/sensor/device_trigger.py +3 -0
- homeassistant/components/sensor/icons.json +3 -0
- homeassistant/components/sensor/strings.json +5 -0
- homeassistant/components/sensor/translations/cs.json +5 -0
- homeassistant/components/sensor/translations/de.json +5 -0
- homeassistant/components/sensor/translations/el.json +5 -0
- homeassistant/components/sensor/translations/en-GB.json +5 -0
- homeassistant/components/sensor/translations/en.json +5 -0
- homeassistant/components/sensor/translations/es.json +5 -0
- homeassistant/components/sensor/translations/et.json +5 -0
- homeassistant/components/sensor/translations/fr.json +5 -0
- homeassistant/components/sensor/translations/ga.json +10 -0
- homeassistant/components/sensor/translations/he.json +5 -0
- homeassistant/components/sensor/translations/it.json +2 -2
- homeassistant/components/sensor/translations/ko.json +3 -0
- homeassistant/components/sensor/translations/lt.json +5 -0
- homeassistant/components/sensor/translations/nl.json +6 -0
- homeassistant/components/sensor/translations/pt.json +5 -0
- homeassistant/components/sensor/translations/ru.json +5 -0
- homeassistant/components/sensor/translations/sk.json +5 -0
- homeassistant/components/sensor/translations/sv.json +6 -0
- homeassistant/components/sensor/translations/zh-Hans.json +5 -0
- homeassistant/components/sensor/translations/zh-Hant.json +5 -0
- homeassistant/components/sensorpush_cloud/translations/ko.json +12 -0
- homeassistant/components/sensoterra/translations/ko.json +18 -0
- homeassistant/components/senz/translations/ko.json +3 -0
- homeassistant/components/seven_segments/manifest.json +1 -1
- homeassistant/components/seventeentrack/translations/ga.json +55 -2
- homeassistant/components/seventeentrack/translations/ko.json +12 -0
- homeassistant/components/sfr_box/manifest.json +1 -1
- homeassistant/components/sfr_box/strings.json +1 -1
- homeassistant/components/sfr_box/translations/ga.json +9 -0
- homeassistant/components/sfr_box/translations/he.json +1 -1
- homeassistant/components/sharkiq/translations/ga.json +17 -0
- homeassistant/components/sharkiq/translations/ko.json +6 -0
- homeassistant/components/shell_command/translations/ga.json +10 -0
- homeassistant/components/shelly/__init__.py +1 -1
- homeassistant/components/shelly/button.py +4 -21
- homeassistant/components/shelly/climate.py +2 -8
- homeassistant/components/shelly/config_flow.py +2 -2
- homeassistant/components/shelly/coordinator.py +15 -5
- homeassistant/components/shelly/entity.py +41 -32
- homeassistant/components/shelly/event.py +2 -8
- homeassistant/components/shelly/manifest.json +1 -1
- homeassistant/components/shelly/sensor.py +3 -7
- homeassistant/components/shelly/strings.json +1 -1
- homeassistant/components/shelly/translations/cs.json +1 -1
- homeassistant/components/shelly/translations/da.json +3 -1
- homeassistant/components/shelly/translations/de.json +1 -1
- homeassistant/components/shelly/translations/el.json +2 -1
- homeassistant/components/shelly/translations/en-GB.json +1 -1
- homeassistant/components/shelly/translations/en.json +1 -1
- homeassistant/components/shelly/translations/es.json +1 -1
- homeassistant/components/shelly/translations/et.json +1 -1
- homeassistant/components/shelly/translations/fr.json +1 -1
- homeassistant/components/shelly/translations/ga.json +35 -2
- homeassistant/components/shelly/translations/hu.json +1 -2
- homeassistant/components/shelly/translations/ko.json +8 -1
- homeassistant/components/shelly/translations/lt.json +1 -2
- homeassistant/components/shelly/translations/mk.json +5 -0
- homeassistant/components/shelly/translations/pl.json +1 -1
- homeassistant/components/shelly/translations/pt.json +1 -2
- homeassistant/components/shelly/translations/ru.json +1 -1
- homeassistant/components/shelly/translations/sk.json +1 -1
- homeassistant/components/shelly/translations/sv.json +9 -2
- homeassistant/components/shelly/translations/zh-Hans.json +1 -1
- homeassistant/components/shelly/translations/zh-Hant.json +1 -1
- homeassistant/components/shelly/utils.py +16 -1
- homeassistant/components/sighthound/manifest.json +1 -1
- homeassistant/components/simplisafe/__init__.py +1 -0
- homeassistant/components/simplisafe/translations/de.json +7 -7
- homeassistant/components/simplisafe/translations/es.json +4 -4
- homeassistant/components/siren/translations/it.json +2 -2
- homeassistant/components/sky_remote/translations/ko.json +11 -0
- homeassistant/components/sleepiq/const.py +4 -0
- homeassistant/components/sleepiq/manifest.json +1 -1
- homeassistant/components/sleepiq/number.py +53 -1
- homeassistant/components/sleepiq/select.py +61 -1
- homeassistant/components/sleepiq/strings.json +11 -0
- homeassistant/components/sleepiq/translations/bg.json +9 -0
- homeassistant/components/sleepiq/translations/cs.json +11 -0
- homeassistant/components/sleepiq/translations/de.json +11 -0
- homeassistant/components/sleepiq/translations/el.json +11 -0
- homeassistant/components/sleepiq/translations/en-GB.json +11 -0
- homeassistant/components/sleepiq/translations/en.json +11 -0
- homeassistant/components/sleepiq/translations/es.json +11 -0
- homeassistant/components/sleepiq/translations/et.json +11 -0
- homeassistant/components/sleepiq/translations/ga.json +10 -0
- homeassistant/components/sleepiq/translations/he.json +5 -0
- homeassistant/components/sleepiq/translations/it.json +1 -1
- homeassistant/components/sleepiq/translations/mk.json +16 -1
- homeassistant/components/sleepiq/translations/nl.json +5 -0
- homeassistant/components/sleepiq/translations/ru.json +11 -0
- homeassistant/components/sleepiq/translations/sk.json +11 -0
- homeassistant/components/sleepiq/translations/sv.json +5 -0
- homeassistant/components/sleepiq/translations/zh-Hans.json +11 -0
- homeassistant/components/sleepiq/translations/zh-Hant.json +11 -0
- homeassistant/components/slide_local/__init__.py +0 -7
- homeassistant/components/slide_local/config_flow.py +6 -2
- homeassistant/components/slide_local/translations/ga.json +1 -0
- homeassistant/components/slide_local/translations/ko.json +18 -0
- homeassistant/components/sma/translations/ga.json +5 -0
- homeassistant/components/sma/translations/ko.json +12 -0
- homeassistant/components/smappee/translations/ga.json +3 -0
- homeassistant/components/smappee/translations/ko.json +3 -0
- homeassistant/components/smarla/manifest.json +1 -1
- homeassistant/components/smarla/translations/ko.json +11 -0
- homeassistant/components/smartthings/__init__.py +1 -0
- homeassistant/components/smartthings/translations/es.json +2 -2
- homeassistant/components/smartthings/translations/fi.json +12 -1
- homeassistant/components/smartthings/translations/ga.json +2 -0
- homeassistant/components/smartthings/translations/he.json +1 -1
- homeassistant/components/smartthings/translations/it.json +9 -9
- homeassistant/components/smartthings/translations/ko.json +209 -4
- homeassistant/components/smartthings/vacuum.py +95 -0
- homeassistant/components/smarttub/binary_sensor.py +29 -3
- homeassistant/components/smarttub/const.py +1 -0
- homeassistant/components/smarttub/controller.py +3 -0
- homeassistant/components/smarttub/entity.py +30 -4
- homeassistant/components/smarttub/manifest.json +1 -1
- homeassistant/components/smarttub/sensor.py +10 -10
- homeassistant/components/smarty/translations/ko.json +11 -0
- homeassistant/components/smhi/__init__.py +1 -1
- homeassistant/components/smhi/coordinator.py +10 -0
- homeassistant/components/smhi/entity.py +7 -1
- homeassistant/components/smhi/icons.json +27 -0
- homeassistant/components/smhi/sensor.py +139 -0
- homeassistant/components/smhi/strings.json +34 -0
- homeassistant/components/smhi/translations/bg.json +33 -0
- homeassistant/components/smhi/translations/cs.json +34 -0
- homeassistant/components/smhi/translations/de.json +34 -0
- homeassistant/components/smhi/translations/el.json +34 -0
- homeassistant/components/smhi/translations/en-GB.json +34 -0
- homeassistant/components/smhi/translations/en.json +34 -0
- homeassistant/components/smhi/translations/es.json +34 -0
- homeassistant/components/smhi/translations/et.json +34 -0
- homeassistant/components/smhi/translations/ga.json +37 -0
- homeassistant/components/smhi/translations/lt.json +34 -0
- homeassistant/components/smhi/translations/mk.json +34 -1
- homeassistant/components/smhi/translations/nl.json +11 -0
- homeassistant/components/smhi/translations/sk.json +34 -0
- homeassistant/components/smhi/translations/sv.json +34 -0
- homeassistant/components/smhi/translations/zh-Hans.json +34 -0
- homeassistant/components/smhi/translations/zh-Hant.json +34 -0
- homeassistant/components/smhi/weather.py +19 -5
- homeassistant/components/smlight/translations/ko.json +15 -0
- homeassistant/components/sms/__init__.py +2 -2
- homeassistant/components/sms/coordinator.py +4 -2
- homeassistant/components/smtp/translations/ga.json +7 -0
- homeassistant/components/snapcast/media_player.py +75 -1
- homeassistant/components/snapcast/translations/ga.json +11 -0
- homeassistant/components/snmp/device_tracker.py +37 -23
- homeassistant/components/snmp/manifest.json +1 -1
- homeassistant/components/snmp/sensor.py +7 -7
- homeassistant/components/snmp/switch.py +15 -8
- homeassistant/components/snmp/util.py +10 -10
- homeassistant/components/snoo/__init__.py +1 -1
- homeassistant/components/snoo/coordinator.py +8 -1
- homeassistant/components/snoo/translations/ko.json +12 -0
- homeassistant/components/solaredge/translations/ga.json +27 -0
- homeassistant/components/solarlog/translations/ga.json +3 -0
- homeassistant/components/solarlog/translations/ko.json +15 -0
- homeassistant/components/soma/translations/ga.json +11 -0
- homeassistant/components/somfy_mylink/__init__.py +1 -16
- homeassistant/components/somfy_mylink/config_flow.py +2 -2
- homeassistant/components/somfy_mylink/translations/ga.json +11 -0
- homeassistant/components/sonarr/__init__.py +0 -6
- homeassistant/components/sonarr/config_flow.py +2 -2
- homeassistant/components/sonos/favorites.py +1 -1
- homeassistant/components/sonos/manifest.json +1 -1
- homeassistant/components/sonos/sensor.py +65 -3
- homeassistant/components/sonos/strings.json +8 -0
- homeassistant/components/sonos/translations/bg.json +9 -0
- homeassistant/components/sonos/translations/cs.json +8 -0
- homeassistant/components/sonos/translations/de.json +8 -0
- homeassistant/components/sonos/translations/el.json +8 -0
- homeassistant/components/sonos/translations/en-GB.json +8 -0
- homeassistant/components/sonos/translations/en.json +8 -0
- homeassistant/components/sonos/translations/es.json +8 -0
- homeassistant/components/sonos/translations/et.json +8 -0
- homeassistant/components/sonos/translations/fr.json +8 -0
- homeassistant/components/sonos/translations/ga.json +20 -0
- homeassistant/components/sonos/translations/he.json +11 -0
- homeassistant/components/sonos/translations/hu.json +8 -0
- homeassistant/components/sonos/translations/it.json +8 -0
- homeassistant/components/sonos/translations/ja.json +8 -0
- homeassistant/components/sonos/translations/lt.json +8 -0
- homeassistant/components/sonos/translations/mk.json +12 -0
- homeassistant/components/sonos/translations/nl.json +6 -0
- homeassistant/components/sonos/translations/pt.json +8 -0
- homeassistant/components/sonos/translations/ru.json +8 -0
- homeassistant/components/sonos/translations/sk.json +8 -0
- homeassistant/components/sonos/translations/sv.json +8 -0
- homeassistant/components/sonos/translations/zh-Hans.json +8 -0
- homeassistant/components/sonos/translations/zh-Hant.json +8 -0
- homeassistant/components/soundtouch/translations/ga.json +11 -0
- homeassistant/components/speedtestdotnet/__init__.py +0 -8
- homeassistant/components/speedtestdotnet/config_flow.py +6 -2
- homeassistant/components/speedtestdotnet/translations/ga.json +51 -0
- homeassistant/components/spotify/translations/ga.json +5 -0
- homeassistant/components/spotify/translations/ko.json +3 -0
- homeassistant/components/sql/__init__.py +0 -7
- homeassistant/components/sql/config_flow.py +2 -2
- homeassistant/components/sql/sensor.py +2 -1
- homeassistant/components/sql/translations/bg.json +0 -1
- homeassistant/components/sql/translations/ca.json +0 -1
- homeassistant/components/sql/translations/cs.json +1 -1
- homeassistant/components/sql/translations/el.json +1 -1
- homeassistant/components/sql/translations/en-GB.json +1 -1
- homeassistant/components/sql/translations/en.json +1 -1
- homeassistant/components/sql/translations/es.json +1 -1
- homeassistant/components/sql/translations/fi.json +0 -1
- homeassistant/components/sql/translations/fr.json +1 -1
- homeassistant/components/sql/translations/ga.json +2 -1
- homeassistant/components/sql/translations/he.json +1 -1
- homeassistant/components/sql/translations/hu.json +0 -1
- homeassistant/components/sql/translations/id.json +0 -1
- homeassistant/components/sql/translations/it.json +0 -1
- homeassistant/components/sql/translations/ja.json +0 -1
- homeassistant/components/sql/translations/ko.json +0 -1
- homeassistant/components/sql/translations/lt.json +0 -1
- homeassistant/components/sql/translations/nb.json +0 -1
- homeassistant/components/sql/translations/nl.json +1 -1
- homeassistant/components/sql/translations/pl.json +0 -1
- homeassistant/components/sql/translations/pt.json +0 -1
- homeassistant/components/sql/translations/ru.json +1 -1
- homeassistant/components/sql/translations/sk.json +1 -1
- homeassistant/components/sql/translations/sl.json +0 -1
- homeassistant/components/sql/translations/sv.json +0 -1
- homeassistant/components/sql/translations/tr.json +0 -1
- homeassistant/components/sql/translations/uk.json +0 -1
- homeassistant/components/sql/translations/vi.json +0 -1
- homeassistant/components/sql/translations/zh-Hans.json +0 -1
- homeassistant/components/sql/translations/zh-Hant.json +1 -1
- homeassistant/components/squeezebox/__init__.py +11 -15
- homeassistant/components/squeezebox/binary_sensor.py +1 -1
- homeassistant/components/squeezebox/browse_media.py +40 -14
- homeassistant/components/squeezebox/const.py +2 -3
- homeassistant/components/squeezebox/coordinator.py +4 -4
- homeassistant/components/squeezebox/entity.py +0 -4
- homeassistant/components/squeezebox/media_player.py +65 -16
- homeassistant/components/squeezebox/sensor.py +1 -1
- homeassistant/components/squeezebox/translations/nl.json +5 -0
- homeassistant/components/starline/translations/en-GB.json +1 -1
- homeassistant/components/starline/translations/ga.json +3 -0
- homeassistant/components/starlink/sensor.py +1 -1
- homeassistant/components/starlink/translations/ga.json +13 -0
- homeassistant/components/statistics/__init__.py +44 -1
- homeassistant/components/statistics/config_flow.py +11 -9
- homeassistant/components/statistics/sensor.py +21 -14
- homeassistant/components/statistics/translations/ga.json +37 -6
- homeassistant/components/statistics/translations/ko.json +9 -0
- homeassistant/components/steamist/translations/ga.json +17 -0
- homeassistant/components/stiebel_eltron/translations/ko.json +12 -0
- homeassistant/components/stookwijzer/__init__.py +15 -1
- homeassistant/components/stookwijzer/const.py +3 -0
- homeassistant/components/stookwijzer/icons.json +7 -0
- homeassistant/components/stookwijzer/services.py +76 -0
- homeassistant/components/stookwijzer/services.yaml +7 -0
- homeassistant/components/stookwijzer/strings.json +18 -0
- homeassistant/components/stookwijzer/translations/cs.json +18 -0
- homeassistant/components/stookwijzer/translations/de.json +18 -0
- homeassistant/components/stookwijzer/translations/el.json +18 -0
- homeassistant/components/stookwijzer/translations/en-GB.json +18 -0
- homeassistant/components/stookwijzer/translations/en.json +18 -0
- homeassistant/components/stookwijzer/translations/es.json +18 -0
- homeassistant/components/stookwijzer/translations/et.json +18 -0
- homeassistant/components/stookwijzer/translations/ga.json +18 -0
- homeassistant/components/stookwijzer/translations/lt.json +18 -0
- homeassistant/components/stookwijzer/translations/pt.json +18 -0
- homeassistant/components/stookwijzer/translations/sk.json +18 -0
- homeassistant/components/stookwijzer/translations/sv.json +3 -0
- homeassistant/components/stookwijzer/translations/zh-Hans.json +18 -0
- homeassistant/components/stookwijzer/translations/zh-Hant.json +18 -0
- homeassistant/components/stream/manifest.json +1 -1
- homeassistant/components/streamlabswater/translations/ko.json +9 -0
- homeassistant/components/suez_water/translations/ga.json +6 -0
- homeassistant/components/sun/translations/cs.json +3 -3
- homeassistant/components/sun/translations/ga.json +5 -0
- homeassistant/components/surepetcare/translations/ga.json +9 -0
- homeassistant/components/swiss_public_transport/translations/ga.json +36 -2
- homeassistant/components/switch/translations/it.json +6 -6
- homeassistant/components/switch_as_x/__init__.py +23 -19
- homeassistant/components/switch_as_x/config_flow.py +1 -1
- homeassistant/components/switch_as_x/entity.py +1 -6
- homeassistant/components/switch_as_x/translations/ga.json +33 -0
- homeassistant/components/switchbot/manifest.json +1 -1
- homeassistant/components/switchbot/strings.json +3 -3
- homeassistant/components/switchbot/translations/nl.json +1 -1
- homeassistant/components/switchbot_cloud/__init__.py +29 -2
- homeassistant/components/switchbot_cloud/const.py +2 -0
- homeassistant/components/switchbot_cloud/fan.py +120 -0
- homeassistant/components/switchbot_cloud/light.py +153 -0
- homeassistant/components/switchbot_cloud/manifest.json +1 -1
- homeassistant/components/switchbot_cloud/sensor.py +1 -0
- homeassistant/components/switchbot_cloud/vacuum.py +136 -4
- homeassistant/components/switcher_kis/translations/ko.json +12 -0
- homeassistant/components/switcher_kis/translations/sk.json +1 -1
- homeassistant/components/synology_dsm/__init__.py +0 -8
- homeassistant/components/synology_dsm/config_flow.py +2 -2
- homeassistant/components/system_bridge/translations/ga.json +75 -1
- homeassistant/components/system_bridge/translations/ko.json +5 -0
- homeassistant/components/system_health/__init__.py +1 -1
- homeassistant/components/systemmonitor/translations/ga.json +36 -0
- homeassistant/components/tado/translations/ga.json +18 -1
- homeassistant/components/tailscale/translations/ga.json +9 -0
- homeassistant/components/tailwind/translations/ga.json +26 -0
- homeassistant/components/tailwind/translations/ko.json +1 -0
- homeassistant/components/tami4/translations/ga.json +16 -0
- homeassistant/components/tankerkoenig/__init__.py +0 -9
- homeassistant/components/tankerkoenig/binary_sensor.py +3 -0
- homeassistant/components/tankerkoenig/config_flow.py +4 -4
- homeassistant/components/tankerkoenig/coordinator.py +15 -3
- homeassistant/components/tankerkoenig/manifest.json +1 -0
- homeassistant/components/tankerkoenig/quality_scale.yaml +81 -0
- homeassistant/components/tankerkoenig/sensor.py +12 -2
- homeassistant/components/tankerkoenig/strings.json +34 -1
- homeassistant/components/tankerkoenig/translations/ca.json +1 -2
- homeassistant/components/tankerkoenig/translations/cs.json +35 -2
- homeassistant/components/tankerkoenig/translations/de.json +35 -2
- homeassistant/components/tankerkoenig/translations/el.json +1 -2
- homeassistant/components/tankerkoenig/translations/en-GB.json +35 -2
- homeassistant/components/tankerkoenig/translations/en.json +35 -2
- homeassistant/components/tankerkoenig/translations/es.json +35 -2
- homeassistant/components/tankerkoenig/translations/et.json +35 -2
- homeassistant/components/tankerkoenig/translations/fi.json +1 -2
- homeassistant/components/tankerkoenig/translations/fr.json +1 -2
- homeassistant/components/tankerkoenig/translations/ga.json +69 -0
- homeassistant/components/tankerkoenig/translations/hu.json +1 -2
- homeassistant/components/tankerkoenig/translations/id.json +1 -2
- homeassistant/components/tankerkoenig/translations/it.json +1 -2
- homeassistant/components/tankerkoenig/translations/ja.json +1 -2
- homeassistant/components/tankerkoenig/translations/ko.json +1 -2
- homeassistant/components/tankerkoenig/translations/lt.json +1 -2
- homeassistant/components/tankerkoenig/translations/nb.json +1 -2
- homeassistant/components/tankerkoenig/translations/nl.json +1 -2
- homeassistant/components/tankerkoenig/translations/pl.json +1 -2
- homeassistant/components/tankerkoenig/translations/pt-BR.json +1 -2
- homeassistant/components/tankerkoenig/translations/pt.json +1 -2
- homeassistant/components/tankerkoenig/translations/ro.json +1 -2
- homeassistant/components/tankerkoenig/translations/ru.json +1 -2
- homeassistant/components/tankerkoenig/translations/sk.json +35 -2
- homeassistant/components/tankerkoenig/translations/sv.json +23 -2
- homeassistant/components/tankerkoenig/translations/tr.json +1 -2
- homeassistant/components/tankerkoenig/translations/uk.json +1 -2
- homeassistant/components/tankerkoenig/translations/zh-Hans.json +35 -2
- homeassistant/components/tankerkoenig/translations/zh-Hant.json +35 -2
- homeassistant/components/technove/translations/ga.json +52 -1
- homeassistant/components/technove/translations/ko.json +11 -0
- homeassistant/components/tedee/translations/ga.json +29 -0
- homeassistant/components/tedee/translations/ko.json +16 -0
- homeassistant/components/telegram_bot/config_flow.py +6 -2
- homeassistant/components/telegram_bot/services.yaml +48 -42
- homeassistant/components/telegram_bot/strings.json +11 -7
- homeassistant/components/telegram_bot/translations/ca.json +0 -5
- homeassistant/components/telegram_bot/translations/cs.json +9 -5
- homeassistant/components/telegram_bot/translations/de.json +9 -5
- homeassistant/components/telegram_bot/translations/el.json +7 -4
- homeassistant/components/telegram_bot/translations/en-GB.json +9 -5
- homeassistant/components/telegram_bot/translations/en.json +9 -5
- homeassistant/components/telegram_bot/translations/es.json +9 -5
- homeassistant/components/telegram_bot/translations/et.json +9 -5
- homeassistant/components/telegram_bot/translations/fi.json +0 -6
- homeassistant/components/telegram_bot/translations/fr.json +2 -1
- homeassistant/components/telegram_bot/translations/ga.json +12 -1
- homeassistant/components/telegram_bot/translations/he.json +0 -4
- homeassistant/components/telegram_bot/translations/hu.json +0 -4
- homeassistant/components/telegram_bot/translations/id.json +0 -6
- homeassistant/components/telegram_bot/translations/it.json +7 -4
- homeassistant/components/telegram_bot/translations/ja.json +7 -4
- homeassistant/components/telegram_bot/translations/ko.json +19 -0
- homeassistant/components/telegram_bot/translations/lt.json +7 -4
- homeassistant/components/telegram_bot/translations/nl.json +0 -4
- homeassistant/components/telegram_bot/translations/pt.json +7 -4
- homeassistant/components/telegram_bot/translations/ru.json +0 -4
- homeassistant/components/telegram_bot/translations/sk.json +9 -5
- homeassistant/components/telegram_bot/translations/sv.json +0 -4
- homeassistant/components/telegram_bot/translations/tr.json +0 -4
- homeassistant/components/telegram_bot/translations/zh-Hans.json +9 -5
- homeassistant/components/telegram_bot/translations/zh-Hant.json +9 -5
- homeassistant/components/tellduslive/strings.json +2 -2
- homeassistant/components/tellduslive/translations/ga.json +11 -0
- homeassistant/components/template/alarm_control_panel.py +65 -153
- homeassistant/components/template/binary_sensor.py +50 -123
- homeassistant/components/template/button.py +39 -51
- homeassistant/components/template/config.py +25 -21
- homeassistant/components/template/config_flow.py +220 -16
- homeassistant/components/template/const.py +14 -1
- homeassistant/components/template/cover.py +90 -104
- homeassistant/components/template/entity.py +41 -5
- homeassistant/components/template/fan.py +85 -106
- homeassistant/components/template/helpers.py +217 -5
- homeassistant/components/template/image.py +29 -55
- homeassistant/components/template/light.py +73 -79
- homeassistant/components/template/lock.py +88 -77
- homeassistant/components/template/number.py +148 -158
- homeassistant/components/template/select.py +121 -112
- homeassistant/components/template/sensor.py +51 -106
- homeassistant/components/template/strings.json +672 -52
- homeassistant/components/template/switch.py +98 -181
- homeassistant/components/template/template_entity.py +27 -66
- homeassistant/components/template/translations/bg.json +57 -15
- homeassistant/components/template/translations/ca.json +11 -83
- homeassistant/components/template/translations/cs.json +647 -28
- homeassistant/components/template/translations/da.json +3 -15
- homeassistant/components/template/translations/de.json +680 -61
- homeassistant/components/template/translations/el.json +84 -88
- homeassistant/components/template/translations/en-GB.json +661 -42
- homeassistant/components/template/translations/en.json +661 -42
- homeassistant/components/template/translations/es.json +612 -42
- homeassistant/components/template/translations/et.json +668 -49
- homeassistant/components/template/translations/fi.json +4 -20
- homeassistant/components/template/translations/fr.json +641 -30
- homeassistant/components/template/translations/ga.json +528 -39
- homeassistant/components/template/translations/he.json +638 -40
- homeassistant/components/template/translations/hu.json +11 -88
- homeassistant/components/template/translations/id.json +11 -88
- homeassistant/components/template/translations/it.json +9 -26
- homeassistant/components/template/translations/ja.json +11 -88
- homeassistant/components/template/translations/ko.json +107 -28
- homeassistant/components/template/translations/lb.json +1 -8
- homeassistant/components/template/translations/lt.json +33 -86
- homeassistant/components/template/translations/lv.json +2 -15
- homeassistant/components/template/translations/nb.json +3 -15
- homeassistant/components/template/translations/nl.json +145 -38
- homeassistant/components/template/translations/pl.json +9 -71
- homeassistant/components/template/translations/pt-BR.json +0 -21
- homeassistant/components/template/translations/pt.json +11 -88
- homeassistant/components/template/translations/ro.json +1 -8
- homeassistant/components/template/translations/ru.json +658 -44
- homeassistant/components/template/translations/sk.json +660 -41
- homeassistant/components/template/translations/sl.json +430 -39
- homeassistant/components/template/translations/sv.json +495 -81
- homeassistant/components/template/translations/tr.json +11 -88
- homeassistant/components/template/translations/uk.json +11 -88
- homeassistant/components/template/translations/vi.json +11 -88
- homeassistant/components/template/translations/zh-Hans.json +648 -46
- homeassistant/components/template/translations/zh-Hant.json +652 -33
- homeassistant/components/template/trigger_entity.py +1 -1
- homeassistant/components/template/vacuum.py +145 -110
- homeassistant/components/template/weather.py +70 -65
- homeassistant/components/tensorflow/manifest.json +2 -2
- homeassistant/components/tesla_fleet/config_flow.py +3 -1
- homeassistant/components/tesla_fleet/manifest.json +1 -1
- homeassistant/components/tesla_fleet/strings.json +1 -1
- homeassistant/components/tesla_fleet/translations/ga.json +2 -0
- homeassistant/components/tesla_fleet/translations/it.json +8 -8
- homeassistant/components/tesla_fleet/translations/ko.json +9 -0
- homeassistant/components/tesla_fleet/translations/nl.json +3 -0
- homeassistant/components/tesla_wall_connector/translations/ga.json +31 -1
- homeassistant/components/teslemetry/__init__.py +1 -6
- homeassistant/components/teslemetry/binary_sensor.py +1 -1
- homeassistant/components/teslemetry/climate.py +2 -2
- homeassistant/components/teslemetry/coordinator.py +1 -0
- homeassistant/components/teslemetry/cover.py +6 -5
- homeassistant/components/teslemetry/device_tracker.py +1 -1
- homeassistant/components/teslemetry/lock.py +2 -2
- homeassistant/components/teslemetry/manifest.json +1 -1
- homeassistant/components/teslemetry/media_player.py +1 -1
- homeassistant/components/teslemetry/models.py +1 -1
- homeassistant/components/teslemetry/number.py +1 -1
- homeassistant/components/teslemetry/select.py +1 -1
- homeassistant/components/teslemetry/sensor.py +10 -9
- homeassistant/components/teslemetry/strings.json +1 -1
- homeassistant/components/teslemetry/switch.py +1 -2
- homeassistant/components/teslemetry/translations/ga.json +314 -1
- homeassistant/components/teslemetry/translations/he.json +1 -1
- homeassistant/components/teslemetry/translations/it.json +16 -16
- homeassistant/components/teslemetry/translations/ko.json +30 -0
- homeassistant/components/teslemetry/update.py +1 -1
- homeassistant/components/tessie/manifest.json +1 -1
- homeassistant/components/tessie/translations/ga.json +136 -0
- homeassistant/components/tessie/translations/it.json +9 -9
- homeassistant/components/tessie/translations/ko.json +5 -0
- homeassistant/components/tessie/update.py +7 -0
- homeassistant/components/thethingsnetwork/translations/ga.json +19 -0
- homeassistant/components/thethingsnetwork/translations/ko.json +3 -1
- homeassistant/components/threshold/__init__.py +44 -6
- homeassistant/components/threshold/binary_sensor.py +24 -18
- homeassistant/components/threshold/config_flow.py +10 -7
- homeassistant/components/tibber/translations/ga.json +88 -0
- homeassistant/components/tibber/translations/nl.json +3 -0
- homeassistant/components/tilt_pi/translations/ko.json +11 -0
- homeassistant/components/time_date/config_flow.py +5 -16
- homeassistant/components/time_date/translations/ga.json +67 -0
- homeassistant/components/timer/translations/ga.json +5 -0
- homeassistant/components/timer/translations/he.json +1 -1
- homeassistant/components/todo/translations/ga.json +83 -0
- homeassistant/components/tolo/translations/ga.json +21 -0
- homeassistant/components/tomorrowio/strings.json +2 -2
- homeassistant/components/tomorrowio/translations/ga.json +53 -0
- homeassistant/components/toon/translations/ga.json +4 -0
- homeassistant/components/toon/translations/ko.json +3 -0
- homeassistant/components/totalconnect/translations/es.json +2 -2
- homeassistant/components/totalconnect/translations/ga.json +16 -0
- homeassistant/components/totalconnect/translations/ko.json +3 -0
- homeassistant/components/touchline_sl/manifest.json +1 -1
- homeassistant/components/touchline_sl/translations/ko.json +12 -0
- homeassistant/components/tplink/strings.json +2 -2
- homeassistant/components/tplink/translations/cs.json +4 -0
- homeassistant/components/tplink/translations/ga.json +30 -2
- homeassistant/components/tplink/translations/ko.json +29 -0
- homeassistant/components/tplink_omada/translations/ga.json +34 -0
- homeassistant/components/traccar_server/config_flow.py +66 -1
- homeassistant/components/traccar_server/coordinator.py +9 -3
- homeassistant/components/traccar_server/helpers.py +15 -1
- homeassistant/components/traccar_server/strings.json +11 -2
- homeassistant/components/traccar_server/translations/bg.json +9 -1
- homeassistant/components/traccar_server/translations/ca.json +9 -1
- homeassistant/components/traccar_server/translations/cs.json +10 -1
- homeassistant/components/traccar_server/translations/de.json +10 -1
- homeassistant/components/traccar_server/translations/el.json +10 -1
- homeassistant/components/traccar_server/translations/en-GB.json +10 -1
- homeassistant/components/traccar_server/translations/en.json +10 -1
- homeassistant/components/traccar_server/translations/es.json +10 -1
- homeassistant/components/traccar_server/translations/et.json +10 -1
- homeassistant/components/traccar_server/translations/ga.json +52 -1
- homeassistant/components/traccar_server/translations/he.json +9 -1
- homeassistant/components/traccar_server/translations/ja.json +10 -1
- homeassistant/components/traccar_server/translations/ko.json +20 -0
- homeassistant/components/traccar_server/translations/lt.json +10 -1
- homeassistant/components/traccar_server/translations/nl.json +9 -1
- homeassistant/components/traccar_server/translations/pt.json +10 -1
- homeassistant/components/traccar_server/translations/ru.json +10 -1
- homeassistant/components/traccar_server/translations/sk.json +10 -1
- homeassistant/components/traccar_server/translations/sv.json +10 -1
- homeassistant/components/traccar_server/translations/zh-Hans.json +10 -1
- homeassistant/components/traccar_server/translations/zh-Hant.json +10 -1
- homeassistant/components/tractive/translations/ga.json +7 -0
- homeassistant/components/tradfri/translations/ga.json +7 -0
- homeassistant/components/trafikverket_camera/translations/ga.json +25 -0
- homeassistant/components/trafikverket_camera/translations/ko.json +11 -0
- homeassistant/components/trafikverket_ferry/translations/pl.json +1 -1
- homeassistant/components/trafikverket_train/__init__.py +0 -6
- homeassistant/components/trafikverket_train/config_flow.py +2 -2
- homeassistant/components/trafikverket_train/translations/ga.json +13 -0
- homeassistant/components/trafikverket_train/translations/ko.json +5 -0
- homeassistant/components/trafikverket_weatherstation/translations/ga.json +35 -0
- homeassistant/components/trafikverket_weatherstation/translations/ko.json +5 -0
- homeassistant/components/transmission/coordinator.py +2 -2
- homeassistant/components/transmission/translations/ga.json +9 -0
- homeassistant/components/transmission/translations/he.json +1 -1
- homeassistant/components/transmission/translations/ko.json +1 -0
- homeassistant/components/trend/__init__.py +44 -1
- homeassistant/components/trend/binary_sensor.py +10 -10
- homeassistant/components/trend/config_flow.py +2 -0
- homeassistant/components/trend/manifest.json +1 -1
- homeassistant/components/trend/translations/ga.json +39 -0
- homeassistant/components/trend/translations/ko.json +9 -0
- homeassistant/components/triggercmd/translations/ko.json +11 -0
- homeassistant/components/tts/__init__.py +13 -3
- homeassistant/components/tts/entity.py +0 -12
- homeassistant/components/tuya/__init__.py +15 -0
- homeassistant/components/tuya/alarm_control_panel.py +2 -1
- homeassistant/components/tuya/binary_sensor.py +117 -52
- homeassistant/components/tuya/button.py +8 -8
- homeassistant/components/tuya/camera.py +3 -3
- homeassistant/components/tuya/climate.py +28 -17
- homeassistant/components/tuya/const.py +8 -11
- homeassistant/components/tuya/cover.py +43 -38
- homeassistant/components/tuya/entity.py +3 -120
- homeassistant/components/tuya/fan.py +22 -7
- homeassistant/components/tuya/humidifier.py +16 -3
- homeassistant/components/tuya/icons.json +6 -0
- homeassistant/components/tuya/light.py +89 -52
- homeassistant/components/tuya/models.py +124 -0
- homeassistant/components/tuya/number.py +143 -81
- homeassistant/components/tuya/select.py +176 -162
- homeassistant/components/tuya/sensor.py +698 -636
- homeassistant/components/tuya/siren.py +8 -8
- homeassistant/components/tuya/strings.json +80 -110
- homeassistant/components/tuya/switch.py +284 -176
- homeassistant/components/tuya/translations/bg.json +33 -86
- homeassistant/components/tuya/translations/ca.json +6 -121
- homeassistant/components/tuya/translations/cs.json +89 -119
- homeassistant/components/tuya/translations/de.json +89 -119
- homeassistant/components/tuya/translations/el.json +77 -119
- homeassistant/components/tuya/translations/en-GB.json +89 -119
- homeassistant/components/tuya/translations/en.json +89 -119
- homeassistant/components/tuya/translations/es.json +91 -121
- homeassistant/components/tuya/translations/et.json +89 -119
- homeassistant/components/tuya/translations/fi.json +5 -121
- homeassistant/components/tuya/translations/fr.json +0 -121
- homeassistant/components/tuya/translations/ga.json +109 -0
- homeassistant/components/tuya/translations/gl.json +0 -68
- homeassistant/components/tuya/translations/he.json +23 -120
- homeassistant/components/tuya/translations/hu.json +0 -121
- homeassistant/components/tuya/translations/id.json +0 -119
- homeassistant/components/tuya/translations/it.json +16 -128
- homeassistant/components/tuya/translations/ja.json +0 -121
- homeassistant/components/tuya/translations/ko.json +0 -121
- homeassistant/components/tuya/translations/lt.json +51 -121
- homeassistant/components/tuya/translations/lv.json +0 -18
- homeassistant/components/tuya/translations/mk.json +43 -0
- homeassistant/components/tuya/translations/nb.json +0 -29
- homeassistant/components/tuya/translations/nl.json +29 -121
- homeassistant/components/tuya/translations/pl.json +0 -23
- homeassistant/components/tuya/translations/pt-BR.json +0 -121
- homeassistant/components/tuya/translations/pt.json +23 -121
- homeassistant/components/tuya/translations/ro.json +0 -121
- homeassistant/components/tuya/translations/ru.json +26 -121
- homeassistant/components/tuya/translations/select.it.json +5 -5
- homeassistant/components/tuya/translations/sk.json +89 -119
- homeassistant/components/tuya/translations/sl.json +0 -103
- homeassistant/components/tuya/translations/sr-Latn.json +0 -3
- homeassistant/components/tuya/translations/sv.json +64 -119
- homeassistant/components/tuya/translations/tr.json +0 -121
- homeassistant/components/tuya/translations/uk.json +0 -123
- homeassistant/components/tuya/translations/vi.json +0 -3
- homeassistant/components/tuya/translations/zh-Hans.json +89 -119
- homeassistant/components/tuya/translations/zh-Hant.json +89 -119
- homeassistant/components/tuya/util.py +28 -0
- homeassistant/components/tuya/vacuum.py +14 -28
- homeassistant/components/twinkly/translations/ga.json +8 -1
- homeassistant/components/twinkly/translations/it.json +1 -1
- homeassistant/components/twitch/translations/ga.json +12 -0
- homeassistant/components/unifi/hub/entity_loader.py +5 -3
- homeassistant/components/unifi/hub/hub.py +4 -2
- homeassistant/components/unifi/translations/ga.json +16 -0
- homeassistant/components/unifiprotect/__init__.py +57 -60
- homeassistant/components/unifiprotect/camera.py +1 -1
- homeassistant/components/unifiprotect/config_flow.py +23 -9
- homeassistant/components/unifiprotect/const.py +1 -1
- homeassistant/components/unifiprotect/data.py +2 -2
- homeassistant/components/unifiprotect/manifest.json +1 -1
- homeassistant/components/unifiprotect/repairs.py +0 -50
- homeassistant/components/unifiprotect/services.py +10 -5
- homeassistant/components/unifiprotect/strings.json +27 -27
- homeassistant/components/unifiprotect/translations/bg.json +11 -10
- homeassistant/components/unifiprotect/translations/ca.json +0 -16
- homeassistant/components/unifiprotect/translations/cs.json +23 -20
- homeassistant/components/unifiprotect/translations/de.json +20 -20
- homeassistant/components/unifiprotect/translations/el.json +20 -20
- homeassistant/components/unifiprotect/translations/en-GB.json +20 -20
- homeassistant/components/unifiprotect/translations/en.json +20 -20
- homeassistant/components/unifiprotect/translations/es.json +20 -20
- homeassistant/components/unifiprotect/translations/et.json +20 -20
- homeassistant/components/unifiprotect/translations/fi.json +17 -19
- homeassistant/components/unifiprotect/translations/fr.json +0 -7
- homeassistant/components/unifiprotect/translations/fy.json +1 -14
- homeassistant/components/unifiprotect/translations/ga.json +90 -6
- homeassistant/components/unifiprotect/translations/he.json +3 -0
- homeassistant/components/unifiprotect/translations/hu.json +0 -20
- homeassistant/components/unifiprotect/translations/id.json +0 -18
- homeassistant/components/unifiprotect/translations/it.json +0 -3
- homeassistant/components/unifiprotect/translations/ja.json +0 -20
- homeassistant/components/unifiprotect/translations/ko.json +3 -5
- homeassistant/components/unifiprotect/translations/lt.json +0 -20
- homeassistant/components/unifiprotect/translations/nb.json +0 -5
- homeassistant/components/unifiprotect/translations/nl.json +9 -19
- homeassistant/components/unifiprotect/translations/pl.json +0 -5
- homeassistant/components/unifiprotect/translations/pt-BR.json +0 -3
- homeassistant/components/unifiprotect/translations/pt.json +0 -20
- homeassistant/components/unifiprotect/translations/ro.json +0 -5
- homeassistant/components/unifiprotect/translations/ru.json +5 -21
- homeassistant/components/unifiprotect/translations/sk.json +20 -20
- homeassistant/components/unifiprotect/translations/sv.json +3 -20
- homeassistant/components/unifiprotect/translations/tr.json +0 -20
- homeassistant/components/unifiprotect/translations/uk.json +0 -5
- homeassistant/components/unifiprotect/translations/zh-Hans.json +20 -20
- homeassistant/components/unifiprotect/translations/zh-Hant.json +20 -20
- homeassistant/components/unifiprotect/utils.py +3 -0
- homeassistant/components/update/translations/ga.json +26 -0
- homeassistant/components/uptime_kuma/__init__.py +74 -0
- homeassistant/components/uptime_kuma/config_flow.py +231 -0
- homeassistant/components/uptime_kuma/const.py +26 -0
- homeassistant/components/uptime_kuma/coordinator.py +137 -0
- homeassistant/components/uptime_kuma/diagnostics.py +23 -0
- homeassistant/components/uptime_kuma/icons.json +32 -0
- homeassistant/components/uptime_kuma/manifest.json +11 -0
- homeassistant/components/uptime_kuma/quality_scale.yaml +76 -0
- homeassistant/components/uptime_kuma/sensor.py +182 -0
- homeassistant/components/uptime_kuma/strings.json +137 -0
- homeassistant/components/uptime_kuma/translations/bg.json +57 -0
- homeassistant/components/uptime_kuma/translations/ca.json +35 -0
- homeassistant/components/uptime_kuma/translations/cs.json +137 -0
- homeassistant/components/uptime_kuma/translations/de.json +137 -0
- homeassistant/components/uptime_kuma/translations/el.json +127 -0
- homeassistant/components/uptime_kuma/translations/en-GB.json +137 -0
- homeassistant/components/uptime_kuma/translations/en.json +137 -0
- homeassistant/components/uptime_kuma/translations/es.json +137 -0
- homeassistant/components/uptime_kuma/translations/et.json +137 -0
- homeassistant/components/uptime_kuma/translations/fr.json +134 -0
- homeassistant/components/uptime_kuma/translations/ga.json +114 -0
- homeassistant/components/uptime_kuma/translations/he.json +40 -0
- homeassistant/components/uptime_kuma/translations/ko.json +30 -0
- homeassistant/components/uptime_kuma/translations/lt.json +119 -0
- homeassistant/components/uptime_kuma/translations/mk.json +17 -0
- homeassistant/components/uptime_kuma/translations/nb.json +31 -0
- homeassistant/components/uptime_kuma/translations/nl.json +68 -0
- homeassistant/components/uptime_kuma/translations/pt.json +94 -0
- homeassistant/components/uptime_kuma/translations/ru.json +101 -0
- homeassistant/components/uptime_kuma/translations/sk.json +137 -0
- homeassistant/components/uptime_kuma/translations/sv.json +122 -0
- homeassistant/components/uptime_kuma/translations/zh-Hans.json +137 -0
- homeassistant/components/uptime_kuma/translations/zh-Hant.json +137 -0
- homeassistant/components/uptime_kuma/update.py +122 -0
- homeassistant/components/utility_meter/__init__.py +34 -8
- homeassistant/components/utility_meter/config_flow.py +2 -0
- homeassistant/components/utility_meter/select.py +6 -6
- homeassistant/components/utility_meter/sensor.py +9 -10
- homeassistant/components/utility_meter/strings.json +5 -0
- homeassistant/components/utility_meter/translations/bg.json +5 -0
- homeassistant/components/utility_meter/translations/cs.json +5 -0
- homeassistant/components/utility_meter/translations/de.json +5 -0
- homeassistant/components/utility_meter/translations/el.json +5 -0
- homeassistant/components/utility_meter/translations/en-GB.json +5 -0
- homeassistant/components/utility_meter/translations/en.json +5 -0
- homeassistant/components/utility_meter/translations/es.json +5 -0
- homeassistant/components/utility_meter/translations/et.json +5 -0
- homeassistant/components/utility_meter/translations/fr.json +5 -0
- homeassistant/components/utility_meter/translations/ga.json +29 -0
- homeassistant/components/utility_meter/translations/he.json +5 -0
- homeassistant/components/utility_meter/translations/ja.json +5 -0
- homeassistant/components/utility_meter/translations/lt.json +5 -0
- homeassistant/components/utility_meter/translations/nl.json +5 -0
- homeassistant/components/utility_meter/translations/pt.json +5 -0
- homeassistant/components/utility_meter/translations/ru.json +5 -0
- homeassistant/components/utility_meter/translations/sk.json +5 -0
- homeassistant/components/utility_meter/translations/zh-Hans.json +5 -0
- homeassistant/components/utility_meter/translations/zh-Hant.json +5 -0
- homeassistant/components/v2c/translations/ga.json +43 -0
- homeassistant/components/vacuum/__init__.py +75 -2
- homeassistant/components/vacuum/translations/ga.json +5 -0
- homeassistant/components/vacuum/translations/he.json +1 -1
- homeassistant/components/vacuum/translations/it.json +2 -2
- homeassistant/components/vallox/strings.json +1 -1
- homeassistant/components/vallox/translations/ga.json +22 -0
- homeassistant/components/vallox/translations/ru.json +5 -0
- homeassistant/components/valve/translations/ga.json +45 -0
- homeassistant/components/vegehub/strings.json +2 -2
- homeassistant/components/velbus/__init__.py +2 -2
- homeassistant/components/velbus/const.py +0 -1
- homeassistant/components/velbus/services.py +42 -90
- homeassistant/components/velbus/services.yaml +0 -20
- homeassistant/components/velbus/strings.json +0 -16
- homeassistant/components/velbus/translations/bg.json +0 -18
- homeassistant/components/velbus/translations/ca.json +0 -12
- homeassistant/components/velbus/translations/cs.json +0 -16
- homeassistant/components/velbus/translations/de.json +0 -16
- homeassistant/components/velbus/translations/el.json +0 -16
- homeassistant/components/velbus/translations/en-GB.json +0 -16
- homeassistant/components/velbus/translations/en.json +0 -16
- homeassistant/components/velbus/translations/es.json +0 -16
- homeassistant/components/velbus/translations/et.json +0 -16
- homeassistant/components/velbus/translations/fi.json +0 -19
- homeassistant/components/velbus/translations/gl.json +0 -18
- homeassistant/components/velbus/translations/hu.json +0 -16
- homeassistant/components/velbus/translations/it.json +0 -15
- homeassistant/components/velbus/translations/ja.json +0 -16
- homeassistant/components/velbus/translations/ko.json +14 -19
- homeassistant/components/velbus/translations/lt.json +0 -16
- homeassistant/components/velbus/translations/nb.json +0 -30
- homeassistant/components/velbus/translations/nl.json +0 -15
- homeassistant/components/velbus/translations/pt.json +0 -16
- homeassistant/components/velbus/translations/ru.json +0 -16
- homeassistant/components/velbus/translations/sk.json +0 -16
- homeassistant/components/velbus/translations/sv.json +0 -16
- homeassistant/components/velbus/translations/tr.json +0 -16
- homeassistant/components/velbus/translations/uk.json +0 -5
- homeassistant/components/velbus/translations/zh-Hans.json +0 -16
- homeassistant/components/velbus/translations/zh-Hant.json +0 -16
- homeassistant/components/velux/binary_sensor.py +63 -0
- homeassistant/components/velux/const.py +1 -1
- homeassistant/components/velux/translations/ko.json +15 -0
- homeassistant/components/venstar/translations/ga.json +20 -0
- homeassistant/components/venstar/translations/he.json +1 -1
- homeassistant/components/vera/__init__.py +0 -6
- homeassistant/components/vera/config_flow.py +2 -2
- homeassistant/components/vesync/const.py +1 -0
- homeassistant/components/vesync/translations/it.json +2 -2
- homeassistant/components/vesync/translations/ko.json +6 -0
- homeassistant/components/vicare/translations/ga.json +232 -0
- homeassistant/components/vilfo/translations/ga.json +11 -0
- homeassistant/components/vizio/translations/ga.json +11 -0
- homeassistant/components/vlc_telnet/translations/ga.json +11 -0
- homeassistant/components/vodafone_station/__init__.py +0 -8
- homeassistant/components/vodafone_station/config_flow.py +6 -2
- homeassistant/components/vodafone_station/translations/ga.json +8 -0
- homeassistant/components/vodafone_station/translations/ko.json +7 -0
- homeassistant/components/voip/manifest.json +1 -1
- homeassistant/components/volumio/translations/ga.json +11 -0
- homeassistant/components/volvo/__init__.py +97 -0
- homeassistant/components/volvo/api.py +38 -0
- homeassistant/components/volvo/application_credentials.py +37 -0
- homeassistant/components/volvo/config_flow.py +247 -0
- homeassistant/components/volvo/const.py +14 -0
- homeassistant/components/volvo/coordinator.py +255 -0
- homeassistant/components/volvo/entity.py +90 -0
- homeassistant/components/volvo/icons.json +85 -0
- homeassistant/components/volvo/manifest.json +13 -0
- homeassistant/components/volvo/quality_scale.yaml +82 -0
- homeassistant/components/volvo/sensor.py +399 -0
- homeassistant/components/volvo/strings.json +178 -0
- homeassistant/components/volvo/translations/bg.json +55 -0
- homeassistant/components/volvo/translations/cs.json +178 -0
- homeassistant/components/volvo/translations/de.json +178 -0
- homeassistant/components/volvo/translations/el.json +53 -0
- homeassistant/components/volvo/translations/en-GB.json +178 -0
- homeassistant/components/volvo/translations/en.json +178 -0
- homeassistant/components/volvo/translations/es.json +178 -0
- homeassistant/components/volvo/translations/et.json +178 -0
- homeassistant/components/volvo/translations/ga.json +156 -0
- homeassistant/components/volvo/translations/he.json +59 -0
- homeassistant/components/volvo/translations/ko.json +11 -0
- homeassistant/components/volvo/translations/nl.json +59 -0
- homeassistant/components/volvo/translations/sk.json +178 -0
- homeassistant/components/volvo/translations/sv.json +74 -0
- homeassistant/components/volvo/translations/zh-Hans.json +178 -0
- homeassistant/components/volvo/translations/zh-Hant.json +178 -0
- homeassistant/components/wallbox/__init__.py +11 -11
- homeassistant/components/wallbox/coordinator.py +57 -8
- homeassistant/components/wallbox/lock.py +7 -5
- homeassistant/components/wallbox/number.py +8 -6
- homeassistant/components/wallbox/select.py +7 -4
- homeassistant/components/wallbox/sensor.py +7 -5
- homeassistant/components/wallbox/strings.json +19 -2
- homeassistant/components/wallbox/switch.py +7 -5
- homeassistant/components/wallbox/translations/bg.json +9 -0
- homeassistant/components/wallbox/translations/cs.json +17 -0
- homeassistant/components/wallbox/translations/de.json +17 -0
- homeassistant/components/wallbox/translations/el.json +17 -0
- homeassistant/components/wallbox/translations/en-GB.json +17 -0
- homeassistant/components/wallbox/translations/en.json +17 -0
- homeassistant/components/wallbox/translations/es.json +17 -0
- homeassistant/components/wallbox/translations/et.json +17 -0
- homeassistant/components/wallbox/translations/ga.json +70 -0
- homeassistant/components/wallbox/translations/it.json +1 -1
- homeassistant/components/wallbox/translations/ja.json +8 -0
- homeassistant/components/wallbox/translations/lt.json +17 -0
- homeassistant/components/wallbox/translations/mk.json +5 -0
- homeassistant/components/wallbox/translations/nl.json +5 -0
- homeassistant/components/wallbox/translations/pt.json +17 -0
- homeassistant/components/wallbox/translations/ru.json +3 -0
- homeassistant/components/wallbox/translations/sk.json +17 -0
- homeassistant/components/wallbox/translations/zh-Hans.json +17 -0
- homeassistant/components/wallbox/translations/zh-Hant.json +17 -0
- homeassistant/components/waqi/__init__.py +5 -10
- homeassistant/components/waqi/config_flow.py +42 -48
- homeassistant/components/waqi/coordinator.py +4 -2
- homeassistant/components/waqi/icons.json +39 -0
- homeassistant/components/waqi/sensor.py +3 -16
- homeassistant/components/waqi/translations/ga.json +15 -0
- homeassistant/components/water_heater/translations/ga.json +17 -0
- homeassistant/components/water_heater/translations/it.json +3 -3
- homeassistant/components/waze_travel_time/strings.json +6 -6
- homeassistant/components/waze_travel_time/translations/cs.json +10 -0
- homeassistant/components/waze_travel_time/translations/el.json +6 -0
- homeassistant/components/waze_travel_time/translations/et.json +10 -0
- homeassistant/components/waze_travel_time/translations/fr.json +14 -0
- homeassistant/components/waze_travel_time/translations/ga.json +42 -0
- homeassistant/components/waze_travel_time/translations/he.json +10 -0
- homeassistant/components/waze_travel_time/translations/ru.json +10 -0
- homeassistant/components/weather/translations/ga.json +27 -0
- homeassistant/components/weatherflow/translations/ga.json +71 -0
- homeassistant/components/weatherflow_cloud/__init__.py +83 -6
- homeassistant/components/weatherflow_cloud/config_flow.py +3 -2
- homeassistant/components/weatherflow_cloud/const.py +4 -1
- homeassistant/components/weatherflow_cloud/coordinator.py +176 -15
- homeassistant/components/weatherflow_cloud/entity.py +6 -13
- homeassistant/components/weatherflow_cloud/icons.json +98 -8
- homeassistant/components/weatherflow_cloud/manifest.json +1 -1
- homeassistant/components/weatherflow_cloud/sensor.py +296 -19
- homeassistant/components/weatherflow_cloud/strings.json +47 -18
- homeassistant/components/weatherflow_cloud/translations/ca.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/cs.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/de.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/el.json +6 -3
- homeassistant/components/weatherflow_cloud/translations/en-GB.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/en.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/es.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/et.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/fr.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/ga.json +42 -3
- homeassistant/components/weatherflow_cloud/translations/he.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/hu.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/it.json +10 -0
- homeassistant/components/weatherflow_cloud/translations/ja.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/lt.json +6 -3
- homeassistant/components/weatherflow_cloud/translations/mk.json +3 -3
- homeassistant/components/weatherflow_cloud/translations/nl.json +6 -0
- homeassistant/components/weatherflow_cloud/translations/pt.json +6 -3
- homeassistant/components/weatherflow_cloud/translations/ru.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/sk.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/sv.json +12 -3
- homeassistant/components/weatherflow_cloud/translations/tr.json +0 -3
- homeassistant/components/weatherflow_cloud/translations/zh-Hans.json +33 -3
- homeassistant/components/weatherflow_cloud/translations/zh-Hant.json +33 -3
- homeassistant/components/weatherflow_cloud/weather.py +7 -9
- homeassistant/components/weatherkit/translations/ga.json +14 -0
- homeassistant/components/webdav/translations/ko.json +12 -0
- homeassistant/components/webmin/translations/ga.json +68 -0
- homeassistant/components/webmin/translations/ko.json +14 -0
- homeassistant/components/webostv/__init__.py +0 -7
- homeassistant/components/webostv/config_flow.py +7 -3
- homeassistant/components/webostv/strings.json +6 -6
- homeassistant/components/webostv/translations/de.json +4 -4
- homeassistant/components/webostv/translations/ga.json +15 -0
- homeassistant/components/websocket_api/commands.py +53 -0
- homeassistant/components/websocket_api/translations/ga.json +7 -0
- homeassistant/components/weheat/translations/ga.json +2 -0
- homeassistant/components/weheat/translations/ko.json +11 -0
- homeassistant/components/whirlpool/binary_sensor.py +14 -7
- homeassistant/components/whirlpool/config_flow.py +5 -1
- homeassistant/components/whirlpool/diagnostics.py +7 -3
- homeassistant/components/whirlpool/manifest.json +1 -1
- homeassistant/components/whirlpool/sensor.py +169 -74
- homeassistant/components/whirlpool/strings.json +3 -5
- homeassistant/components/whirlpool/translations/cs.json +0 -2
- homeassistant/components/whirlpool/translations/de.json +0 -2
- homeassistant/components/whirlpool/translations/en-GB.json +0 -2
- homeassistant/components/whirlpool/translations/en.json +0 -2
- homeassistant/components/whirlpool/translations/es.json +8 -10
- homeassistant/components/whirlpool/translations/et.json +0 -2
- homeassistant/components/whirlpool/translations/fr.json +0 -2
- homeassistant/components/whirlpool/translations/fy.json +0 -2
- homeassistant/components/whirlpool/translations/ga.json +12 -3
- homeassistant/components/whirlpool/translations/hu.json +0 -2
- homeassistant/components/whirlpool/translations/it.json +0 -1
- homeassistant/components/whirlpool/translations/ko.json +5 -0
- homeassistant/components/whirlpool/translations/lt.json +0 -2
- homeassistant/components/whirlpool/translations/nl.json +0 -2
- homeassistant/components/whirlpool/translations/pt.json +0 -2
- homeassistant/components/whirlpool/translations/ru.json +0 -2
- homeassistant/components/whirlpool/translations/sk.json +0 -2
- homeassistant/components/whirlpool/translations/sv.json +0 -2
- homeassistant/components/whirlpool/translations/zh-Hans.json +0 -2
- homeassistant/components/whirlpool/translations/zh-Hant.json +0 -2
- homeassistant/components/whois/strings.json +1 -1
- homeassistant/components/whois/translations/ru.json +1 -0
- homeassistant/components/wiffi/__init__.py +0 -7
- homeassistant/components/wiffi/config_flow.py +2 -2
- homeassistant/components/wilight/support.py +1 -2
- homeassistant/components/withings/translations/ga.json +67 -0
- homeassistant/components/withings/translations/ko.json +3 -0
- homeassistant/components/wiz/__init__.py +1 -0
- homeassistant/components/wiz/config_flow.py +1 -1
- homeassistant/components/wiz/fan.py +139 -0
- homeassistant/components/wiz/manifest.json +1 -1
- homeassistant/components/wled/__init__.py +0 -8
- homeassistant/components/wled/config_flow.py +2 -2
- homeassistant/components/wled/strings.json +1 -1
- homeassistant/components/wled/translations/ga.json +53 -0
- homeassistant/components/wled/translations/it.json +2 -2
- homeassistant/components/wmspro/translations/ko.json +11 -0
- homeassistant/components/wolflink/translations/it.json +2 -2
- homeassistant/components/workday/__init__.py +0 -6
- homeassistant/components/workday/config_flow.py +2 -2
- homeassistant/components/workday/manifest.json +1 -1
- homeassistant/components/workday/translations/ga.json +47 -1
- homeassistant/components/worldclock/translations/ko.json +11 -0
- homeassistant/components/ws66i/__init__.py +0 -6
- homeassistant/components/ws66i/config_flow.py +2 -2
- homeassistant/components/wyoming/manifest.json +1 -1
- homeassistant/components/wyoming/translations/de.json +1 -1
- homeassistant/components/wyoming/translations/ga.json +14 -0
- homeassistant/components/wyoming/translations/it.json +1 -1
- homeassistant/components/xbox/translations/ga.json +4 -0
- homeassistant/components/xbox/translations/ko.json +3 -0
- homeassistant/components/xiaomi_ble/coordinator.py +1 -1
- homeassistant/components/xiaomi_ble/manifest.json +1 -1
- homeassistant/components/xiaomi_ble/strings.json +9 -9
- homeassistant/components/xiaomi_ble/translations/ga.json +168 -1
- homeassistant/components/xiaomi_ble/translations/ko.json +6 -0
- homeassistant/components/xiaomi_miio/__init__.py +0 -11
- homeassistant/components/xiaomi_miio/config_flow.py +6 -2
- homeassistant/components/xiaomi_miio/strings.json +1 -1
- homeassistant/components/xiaomi_miio/translations/es.json +3 -3
- homeassistant/components/xiaomi_miio/translations/it.json +1 -1
- homeassistant/components/yale/manifest.json +1 -1
- homeassistant/components/yale/translations/ga.json +2 -0
- homeassistant/components/yale/translations/ko.json +11 -0
- homeassistant/components/yale_smart_alarm/__init__.py +0 -6
- homeassistant/components/yale_smart_alarm/config_flow.py +2 -2
- homeassistant/components/yale_smart_alarm/translations/ga.json +8 -0
- homeassistant/components/yale_smart_alarm/translations/it.json +1 -1
- homeassistant/components/yale_smart_alarm/translations/ko.json +6 -0
- homeassistant/components/yale_smart_alarm/translations/nl.json +3 -0
- homeassistant/components/yalexs_ble/__init__.py +5 -1
- homeassistant/components/yalexs_ble/icons.json +11 -0
- homeassistant/components/yalexs_ble/lock.py +32 -4
- homeassistant/components/yalexs_ble/manifest.json +1 -1
- homeassistant/components/yalexs_ble/strings.json +5 -0
- homeassistant/components/yalexs_ble/translations/cs.json +5 -0
- homeassistant/components/yalexs_ble/translations/de.json +5 -0
- homeassistant/components/yalexs_ble/translations/el.json +5 -0
- homeassistant/components/yalexs_ble/translations/en-GB.json +5 -0
- homeassistant/components/yalexs_ble/translations/en.json +5 -0
- homeassistant/components/yalexs_ble/translations/es.json +5 -0
- homeassistant/components/yalexs_ble/translations/et.json +5 -0
- homeassistant/components/yalexs_ble/translations/ga.json +9 -1
- homeassistant/components/yalexs_ble/translations/ja.json +5 -0
- homeassistant/components/yalexs_ble/translations/lt.json +5 -0
- homeassistant/components/yalexs_ble/translations/pt.json +5 -0
- homeassistant/components/yalexs_ble/translations/ru.json +5 -0
- homeassistant/components/yalexs_ble/translations/sk.json +5 -0
- homeassistant/components/yalexs_ble/translations/sv.json +5 -0
- homeassistant/components/yalexs_ble/translations/zh-Hans.json +5 -0
- homeassistant/components/yalexs_ble/translations/zh-Hant.json +5 -0
- homeassistant/components/yamaha_musiccast/translations/ga.json +11 -0
- homeassistant/components/yamaha_musiccast/translations/it.json +1 -1
- homeassistant/components/yardian/translations/ga.json +11 -0
- homeassistant/components/yeelight/__init__.py +0 -8
- homeassistant/components/yeelight/config_flow.py +2 -2
- homeassistant/components/yeelight/translations/es.json +1 -1
- homeassistant/components/yeelight/translations/ga.json +11 -0
- homeassistant/components/yeelight/translations/it.json +1 -1
- homeassistant/components/yolink/__init__.py +14 -0
- homeassistant/components/yolink/binary_sensor.py +6 -2
- homeassistant/components/yolink/const.py +2 -0
- homeassistant/components/yolink/manifest.json +1 -1
- homeassistant/components/yolink/sensor.py +33 -3
- homeassistant/components/yolink/translations/ga.json +58 -0
- homeassistant/components/yolink/translations/it.json +1 -1
- homeassistant/components/yolink/translations/ko.json +3 -0
- homeassistant/components/yolink/translations/nl.json +1 -0
- homeassistant/components/youless/translations/ga.json +9 -0
- homeassistant/components/youtube/manifest.json +1 -1
- homeassistant/components/youtube/translations/ga.json +2 -0
- homeassistant/components/zabbix/__init__.py +40 -22
- homeassistant/components/zbox_hub/__init__.py +1 -0
- homeassistant/components/zbox_hub/manifest.json +6 -0
- homeassistant/components/zeversolar/translations/ga.json +11 -0
- homeassistant/components/zha/helpers.py +21 -1
- homeassistant/components/zha/manifest.json +1 -1
- homeassistant/components/zha/strings.json +34 -4
- homeassistant/components/zha/translations/bg.json +6 -0
- homeassistant/components/zha/translations/cs.json +30 -0
- homeassistant/components/zha/translations/da.json +3 -0
- homeassistant/components/zha/translations/de.json +32 -2
- homeassistant/components/zha/translations/en-GB.json +30 -0
- homeassistant/components/zha/translations/en.json +30 -0
- homeassistant/components/zha/translations/es.json +33 -3
- homeassistant/components/zha/translations/et.json +30 -0
- homeassistant/components/zha/translations/fi.json +9 -0
- homeassistant/components/zha/translations/fr.json +9 -0
- homeassistant/components/zha/translations/ga.json +323 -0
- homeassistant/components/zha/translations/he.json +21 -1
- homeassistant/components/zha/translations/ru.json +6 -0
- homeassistant/components/zha/translations/sk.json +30 -0
- homeassistant/components/zha/translations/sl.json +1 -0
- homeassistant/components/zha/translations/sv.json +24 -0
- homeassistant/components/zha/translations/zh-Hans.json +30 -0
- homeassistant/components/zha/translations/zh-Hant.json +30 -0
- homeassistant/components/zha/update.py +6 -2
- homeassistant/components/zimi/translations/ko.json +18 -0
- homeassistant/components/zone/condition.py +156 -0
- homeassistant/components/zone/trigger.py +2 -1
- homeassistant/components/zoneminder/__init__.py +2 -2
- homeassistant/components/zoneminder/services.py +3 -2
- homeassistant/components/zwave_js/__init__.py +154 -104
- homeassistant/components/zwave_js/api.py +57 -64
- homeassistant/components/zwave_js/binary_sensor.py +8 -9
- homeassistant/components/zwave_js/button.py +6 -7
- homeassistant/components/zwave_js/climate.py +6 -7
- homeassistant/components/zwave_js/config_flow.py +31 -20
- homeassistant/components/zwave_js/const.py +0 -6
- homeassistant/components/zwave_js/cover.py +8 -14
- homeassistant/components/zwave_js/device_automation_helpers.py +2 -3
- homeassistant/components/zwave_js/diagnostics.py +9 -6
- homeassistant/components/zwave_js/discovery.py +36 -3
- homeassistant/components/zwave_js/event.py +5 -6
- homeassistant/components/zwave_js/fan.py +7 -8
- homeassistant/components/zwave_js/helpers.py +69 -20
- homeassistant/components/zwave_js/humidifier.py +5 -6
- homeassistant/components/zwave_js/light.py +41 -9
- homeassistant/components/zwave_js/lock.py +3 -5
- homeassistant/components/zwave_js/manifest.json +1 -1
- homeassistant/components/zwave_js/models.py +27 -0
- homeassistant/components/zwave_js/number.py +7 -8
- homeassistant/components/zwave_js/repairs.py +1 -0
- homeassistant/components/zwave_js/select.py +9 -10
- homeassistant/components/zwave_js/sensor.py +37 -20
- homeassistant/components/zwave_js/services.py +1 -1
- homeassistant/components/zwave_js/siren.py +5 -6
- homeassistant/components/zwave_js/strings.json +13 -13
- homeassistant/components/zwave_js/switch.py +8 -9
- homeassistant/components/zwave_js/translations/bg.json +2 -2
- homeassistant/components/zwave_js/translations/ca.json +0 -6
- homeassistant/components/zwave_js/translations/cs.json +9 -9
- homeassistant/components/zwave_js/translations/de.json +9 -9
- homeassistant/components/zwave_js/translations/el.json +8 -9
- homeassistant/components/zwave_js/translations/en-GB.json +9 -9
- homeassistant/components/zwave_js/translations/en.json +9 -9
- homeassistant/components/zwave_js/translations/es.json +9 -9
- homeassistant/components/zwave_js/translations/et.json +9 -9
- homeassistant/components/zwave_js/translations/fi.json +0 -9
- homeassistant/components/zwave_js/translations/fr.json +0 -3
- homeassistant/components/zwave_js/translations/ga.json +120 -1
- homeassistant/components/zwave_js/translations/he.json +0 -6
- homeassistant/components/zwave_js/translations/hu.json +0 -10
- homeassistant/components/zwave_js/translations/id.json +0 -9
- homeassistant/components/zwave_js/translations/ja.json +0 -9
- homeassistant/components/zwave_js/translations/ko.json +20 -0
- homeassistant/components/zwave_js/translations/lt.json +0 -10
- homeassistant/components/zwave_js/translations/nl.json +2 -9
- homeassistant/components/zwave_js/translations/pt.json +0 -10
- homeassistant/components/zwave_js/translations/ru.json +4 -10
- homeassistant/components/zwave_js/translations/sk.json +9 -9
- homeassistant/components/zwave_js/translations/sv.json +0 -10
- homeassistant/components/zwave_js/translations/tr.json +0 -9
- homeassistant/components/zwave_js/translations/vi.json +0 -9
- homeassistant/components/zwave_js/translations/zh-Hans.json +9 -9
- homeassistant/components/zwave_js/translations/zh-Hant.json +9 -9
- homeassistant/components/zwave_js/triggers/event.py +3 -5
- homeassistant/components/zwave_js/triggers/trigger_helpers.py +2 -4
- homeassistant/components/zwave_js/update.py +101 -36
- homeassistant/config.py +0 -3
- homeassistant/config_entries.py +28 -1
- homeassistant/const.py +4 -2
- homeassistant/core.py +51 -15
- homeassistant/data_entry_flow.py +4 -3
- homeassistant/generated/application_credentials.py +1 -0
- homeassistant/generated/config_flows.py +5 -0
- homeassistant/generated/integrations.json +44 -3
- homeassistant/generated/zeroconf.py +19 -0
- homeassistant/helpers/condition.py +217 -105
- homeassistant/helpers/config_validation.py +0 -29
- homeassistant/helpers/deprecation.py +8 -10
- homeassistant/helpers/device.py +13 -0
- homeassistant/helpers/device_registry.py +122 -56
- homeassistant/helpers/entity.py +61 -48
- homeassistant/helpers/entity_platform.py +177 -73
- homeassistant/helpers/entity_registry.py +42 -21
- homeassistant/helpers/event.py +62 -57
- homeassistant/helpers/frame.py +24 -9
- homeassistant/helpers/helper_integration.py +69 -10
- homeassistant/helpers/http.py +2 -2
- homeassistant/helpers/llm.py +44 -9
- homeassistant/helpers/schema_config_entry_flow.py +11 -0
- homeassistant/helpers/selector.py +173 -126
- homeassistant/helpers/service.py +53 -214
- homeassistant/helpers/service_info/dhcp.py +6 -0
- homeassistant/helpers/singleton.py +2 -1
- homeassistant/helpers/target.py +359 -0
- homeassistant/helpers/template.py +2 -2
- homeassistant/helpers/trigger.py +18 -8
- homeassistant/helpers/trigger_template_entity.py +19 -0
- homeassistant/helpers/update_coordinator.py +12 -2
- homeassistant/loader.py +13 -79
- homeassistant/package_constraints.txt +15 -19
- homeassistant/runner.py +2 -0
- homeassistant/strings.json +3 -0
- homeassistant/util/__init__.py +2 -2
- homeassistant/util/resource.py +65 -0
- homeassistant/util/unit_conversion.py +5 -2
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/METADATA +5 -5
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/RECORD +3883 -3462
- homeassistant/components/backup/basic_websocket.py +0 -38
- homeassistant/components/goalzero/translations/es-419.json +0 -9
- homeassistant/helpers/backup.py +0 -93
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/WHEEL +0 -0
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/entry_points.txt +0 -0
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/licenses/LICENSE.md +0 -0
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
- {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/top_level.txt +0 -0
|
@@ -27,7 +27,6 @@ from homeassistant.components.hassio import (
|
|
|
27
27
|
)
|
|
28
28
|
from homeassistant.config_entries import (
|
|
29
29
|
SOURCE_USB,
|
|
30
|
-
ConfigEntry,
|
|
31
30
|
ConfigEntryState,
|
|
32
31
|
ConfigFlow,
|
|
33
32
|
ConfigFlowResult,
|
|
@@ -62,11 +61,14 @@ from .const import (
|
|
|
62
61
|
CONF_S2_UNAUTHENTICATED_KEY,
|
|
63
62
|
CONF_USB_PATH,
|
|
64
63
|
CONF_USE_ADDON,
|
|
65
|
-
DATA_CLIENT,
|
|
66
64
|
DOMAIN,
|
|
67
|
-
DRIVER_READY_TIMEOUT,
|
|
68
65
|
)
|
|
69
|
-
from .helpers import
|
|
66
|
+
from .helpers import (
|
|
67
|
+
CannotConnect,
|
|
68
|
+
async_get_version_info,
|
|
69
|
+
async_wait_for_driver_ready_event,
|
|
70
|
+
)
|
|
71
|
+
from .models import ZwaveJSConfigEntry
|
|
70
72
|
|
|
71
73
|
_LOGGER = logging.getLogger(__name__)
|
|
72
74
|
|
|
@@ -91,6 +93,10 @@ MIN_MIGRATION_SDK_VERSION = AwesomeVersion("6.61")
|
|
|
91
93
|
|
|
92
94
|
NETWORK_TYPE_NEW = "new"
|
|
93
95
|
NETWORK_TYPE_EXISTING = "existing"
|
|
96
|
+
ZWAVE_JS_UI_MIGRATION_INSTRUCTIONS = (
|
|
97
|
+
"https://www.home-assistant.io/integrations/zwave_js/"
|
|
98
|
+
"#how-to-migrate-from-one-adapter-to-a-new-adapter-using-z-wave-js-ui"
|
|
99
|
+
)
|
|
94
100
|
|
|
95
101
|
|
|
96
102
|
def get_manual_schema(user_input: dict[str, Any]) -> vol.Schema:
|
|
@@ -185,7 +191,7 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
185
191
|
self.backup_filepath: Path | None = None
|
|
186
192
|
self.use_addon = False
|
|
187
193
|
self._migrating = False
|
|
188
|
-
self._reconfigure_config_entry:
|
|
194
|
+
self._reconfigure_config_entry: ZwaveJSConfigEntry | None = None
|
|
189
195
|
self._usb_discovery = False
|
|
190
196
|
self._recommended_install = False
|
|
191
197
|
|
|
@@ -444,7 +450,12 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
444
450
|
None,
|
|
445
451
|
)
|
|
446
452
|
if not self._reconfigure_config_entry:
|
|
447
|
-
return self.async_abort(
|
|
453
|
+
return self.async_abort(
|
|
454
|
+
reason="addon_required",
|
|
455
|
+
description_placeholders={
|
|
456
|
+
"zwave_js_ui_migration": ZWAVE_JS_UI_MIGRATION_INSTRUCTIONS,
|
|
457
|
+
},
|
|
458
|
+
)
|
|
448
459
|
|
|
449
460
|
vid = discovery_info.vid
|
|
450
461
|
pid = discovery_info.pid
|
|
@@ -888,7 +899,12 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
888
899
|
config_entry = self._reconfigure_config_entry
|
|
889
900
|
assert config_entry is not None
|
|
890
901
|
if not self._usb_discovery and not config_entry.data.get(CONF_USE_ADDON):
|
|
891
|
-
return self.async_abort(
|
|
902
|
+
return self.async_abort(
|
|
903
|
+
reason="addon_required",
|
|
904
|
+
description_placeholders={
|
|
905
|
+
"zwave_js_ui_migration": ZWAVE_JS_UI_MIGRATION_INSTRUCTIONS,
|
|
906
|
+
},
|
|
907
|
+
)
|
|
892
908
|
|
|
893
909
|
try:
|
|
894
910
|
driver = self._get_driver()
|
|
@@ -1397,19 +1413,15 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
1397
1413
|
event["bytesWritten"] / event["total"] * 0.5 + 0.5
|
|
1398
1414
|
)
|
|
1399
1415
|
|
|
1400
|
-
@callback
|
|
1401
|
-
def set_driver_ready(event: dict) -> None:
|
|
1402
|
-
"Set the driver ready event."
|
|
1403
|
-
wait_driver_ready.set()
|
|
1404
|
-
|
|
1405
1416
|
driver = self._get_driver()
|
|
1406
1417
|
controller = driver.controller
|
|
1407
|
-
wait_driver_ready = asyncio.Event()
|
|
1408
1418
|
unsubs = [
|
|
1409
1419
|
controller.on("nvm convert progress", forward_progress),
|
|
1410
1420
|
controller.on("nvm restore progress", forward_progress),
|
|
1411
|
-
driver.once("driver ready", set_driver_ready),
|
|
1412
1421
|
]
|
|
1422
|
+
|
|
1423
|
+
wait_for_driver_ready = async_wait_for_driver_ready_event(config_entry, driver)
|
|
1424
|
+
|
|
1413
1425
|
try:
|
|
1414
1426
|
await controller.async_restore_nvm(
|
|
1415
1427
|
self.backup_data, {"preserveRoutes": False}
|
|
@@ -1418,8 +1430,7 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
1418
1430
|
raise AbortFlow(f"Failed to restore network: {err}") from err
|
|
1419
1431
|
else:
|
|
1420
1432
|
with suppress(TimeoutError):
|
|
1421
|
-
|
|
1422
|
-
await wait_driver_ready.wait()
|
|
1433
|
+
await wait_for_driver_ready()
|
|
1423
1434
|
try:
|
|
1424
1435
|
version_info = await async_get_version_info(
|
|
1425
1436
|
self.hass, config_entry.data[CONF_URL]
|
|
@@ -1436,10 +1447,10 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
1436
1447
|
self.hass.config_entries.async_update_entry(
|
|
1437
1448
|
config_entry, unique_id=str(version_info.home_id)
|
|
1438
1449
|
)
|
|
1439
|
-
await self.hass.config_entries.async_reload(config_entry.entry_id)
|
|
1440
1450
|
|
|
1441
|
-
#
|
|
1442
|
-
# the
|
|
1451
|
+
# The config entry will be also be reloaded when the driver is ready,
|
|
1452
|
+
# by the listener in the package module,
|
|
1453
|
+
# and two reloads are needed to clean up the stale controller device entry.
|
|
1443
1454
|
# Since both the old and the new controller have the same node id,
|
|
1444
1455
|
# but different hardware identifiers, the integration
|
|
1445
1456
|
# will create a new device for the new controller, on the first reload,
|
|
@@ -1456,7 +1467,7 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
1456
1467
|
assert config_entry is not None
|
|
1457
1468
|
if config_entry.state != ConfigEntryState.LOADED:
|
|
1458
1469
|
raise AbortFlow("Configuration entry is not loaded")
|
|
1459
|
-
client: Client = config_entry.runtime_data
|
|
1470
|
+
client: Client = config_entry.runtime_data.client
|
|
1460
1471
|
assert client.driver is not None
|
|
1461
1472
|
return client.driver
|
|
1462
1473
|
|
|
@@ -38,8 +38,6 @@ CONF_USE_ADDON = "use_addon"
|
|
|
38
38
|
CONF_DATA_COLLECTION_OPTED_IN = "data_collection_opted_in"
|
|
39
39
|
DOMAIN = "zwave_js"
|
|
40
40
|
|
|
41
|
-
DATA_CLIENT = "client"
|
|
42
|
-
DATA_OLD_SERVER_LOG_LEVEL = "old_server_log_level"
|
|
43
41
|
|
|
44
42
|
EVENT_DEVICE_ADDED_TO_REGISTRY = f"{DOMAIN}_device_added_to_registry"
|
|
45
43
|
EVENT_VALUE_UPDATED = "value updated"
|
|
@@ -203,7 +201,3 @@ COVER_TILT_PROPERTY_KEYS: set[str | int | None] = {
|
|
|
203
201
|
WindowCoveringPropertyKey.VERTICAL_SLATS_ANGLE,
|
|
204
202
|
WindowCoveringPropertyKey.VERTICAL_SLATS_ANGLE_NO_POSITION,
|
|
205
203
|
}
|
|
206
|
-
|
|
207
|
-
# Other constants
|
|
208
|
-
|
|
209
|
-
DRIVER_READY_TIMEOUT = 60
|
|
@@ -4,7 +4,6 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from typing import Any, cast
|
|
6
6
|
|
|
7
|
-
from zwave_js_server.client import Client as ZwaveClient
|
|
8
7
|
from zwave_js_server.const import (
|
|
9
8
|
CURRENT_VALUE_PROPERTY,
|
|
10
9
|
TARGET_STATE_PROPERTY,
|
|
@@ -34,31 +33,26 @@ from homeassistant.components.cover import (
|
|
|
34
33
|
CoverEntity,
|
|
35
34
|
CoverEntityFeature,
|
|
36
35
|
)
|
|
37
|
-
from homeassistant.config_entries import ConfigEntry
|
|
38
36
|
from homeassistant.core import HomeAssistant, callback
|
|
39
37
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
|
40
38
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
|
|
41
39
|
|
|
42
|
-
from .const import
|
|
43
|
-
COVER_POSITION_PROPERTY_KEYS,
|
|
44
|
-
COVER_TILT_PROPERTY_KEYS,
|
|
45
|
-
DATA_CLIENT,
|
|
46
|
-
DOMAIN,
|
|
47
|
-
)
|
|
40
|
+
from .const import COVER_POSITION_PROPERTY_KEYS, COVER_TILT_PROPERTY_KEYS, DOMAIN
|
|
48
41
|
from .discovery import ZwaveDiscoveryInfo
|
|
49
42
|
from .discovery_data_template import CoverTiltDataTemplate
|
|
50
43
|
from .entity import ZWaveBaseEntity
|
|
44
|
+
from .models import ZwaveJSConfigEntry
|
|
51
45
|
|
|
52
46
|
PARALLEL_UPDATES = 0
|
|
53
47
|
|
|
54
48
|
|
|
55
49
|
async def async_setup_entry(
|
|
56
50
|
hass: HomeAssistant,
|
|
57
|
-
config_entry:
|
|
51
|
+
config_entry: ZwaveJSConfigEntry,
|
|
58
52
|
async_add_entities: AddConfigEntryEntitiesCallback,
|
|
59
53
|
) -> None:
|
|
60
54
|
"""Set up Z-Wave Cover from Config Entry."""
|
|
61
|
-
client
|
|
55
|
+
client = config_entry.runtime_data.client
|
|
62
56
|
|
|
63
57
|
@callback
|
|
64
58
|
def async_add_cover(info: ZwaveDiscoveryInfo) -> None:
|
|
@@ -288,7 +282,7 @@ class ZWaveMultilevelSwitchCover(CoverPositionMixin):
|
|
|
288
282
|
|
|
289
283
|
def __init__(
|
|
290
284
|
self,
|
|
291
|
-
config_entry:
|
|
285
|
+
config_entry: ZwaveJSConfigEntry,
|
|
292
286
|
driver: Driver,
|
|
293
287
|
info: ZwaveDiscoveryInfo,
|
|
294
288
|
) -> None:
|
|
@@ -318,7 +312,7 @@ class ZWaveTiltCover(ZWaveMultilevelSwitchCover, CoverTiltMixin):
|
|
|
318
312
|
|
|
319
313
|
def __init__(
|
|
320
314
|
self,
|
|
321
|
-
config_entry:
|
|
315
|
+
config_entry: ZwaveJSConfigEntry,
|
|
322
316
|
driver: Driver,
|
|
323
317
|
info: ZwaveDiscoveryInfo,
|
|
324
318
|
) -> None:
|
|
@@ -336,7 +330,7 @@ class ZWaveWindowCovering(CoverPositionMixin, CoverTiltMixin):
|
|
|
336
330
|
"""Representation of a Z-Wave Window Covering cover device."""
|
|
337
331
|
|
|
338
332
|
def __init__(
|
|
339
|
-
self, config_entry:
|
|
333
|
+
self, config_entry: ZwaveJSConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo
|
|
340
334
|
) -> None:
|
|
341
335
|
"""Initialize."""
|
|
342
336
|
super().__init__(config_entry, driver, info)
|
|
@@ -438,7 +432,7 @@ class ZwaveMotorizedBarrier(ZWaveBaseEntity, CoverEntity):
|
|
|
438
432
|
|
|
439
433
|
def __init__(
|
|
440
434
|
self,
|
|
441
|
-
config_entry:
|
|
435
|
+
config_entry: ZwaveJSConfigEntry,
|
|
442
436
|
driver: Driver,
|
|
443
437
|
info: ZwaveDiscoveryInfo,
|
|
444
438
|
) -> None:
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from zwave_js_server.client import Client as ZwaveClient
|
|
6
5
|
from zwave_js_server.model.value import ConfigurationValue
|
|
7
6
|
|
|
8
7
|
from homeassistant.config_entries import ConfigEntryState
|
|
9
8
|
from homeassistant.core import HomeAssistant, callback
|
|
10
9
|
from homeassistant.helpers import device_registry as dr
|
|
11
10
|
|
|
12
|
-
from .const import
|
|
11
|
+
from .const import DOMAIN
|
|
13
12
|
|
|
14
13
|
NODE_STATUSES = ["asleep", "awake", "dead", "alive"]
|
|
15
14
|
|
|
@@ -55,5 +54,5 @@ def async_bypass_dynamic_config_validation(hass: HomeAssistant, device_id: str)
|
|
|
55
54
|
return True
|
|
56
55
|
|
|
57
56
|
# The driver may not be ready when the config entry is loaded.
|
|
58
|
-
client
|
|
57
|
+
client = entry.runtime_data.client
|
|
59
58
|
return client.driver is None
|
|
@@ -13,13 +13,12 @@ from zwave_js_server.model.value import ValueDataType
|
|
|
13
13
|
from zwave_js_server.util.node import dump_node_state
|
|
14
14
|
|
|
15
15
|
from homeassistant.components.diagnostics import REDACTED, async_redact_data
|
|
16
|
-
from homeassistant.config_entries import ConfigEntry
|
|
17
16
|
from homeassistant.const import CONF_URL
|
|
18
17
|
from homeassistant.core import HomeAssistant
|
|
19
18
|
from homeassistant.helpers import device_registry as dr, entity_registry as er
|
|
20
19
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
|
21
20
|
|
|
22
|
-
from .const import
|
|
21
|
+
from .const import USER_AGENT
|
|
23
22
|
from .helpers import (
|
|
24
23
|
ZwaveValueMatcher,
|
|
25
24
|
get_home_and_node_id_from_device_entry,
|
|
@@ -27,6 +26,7 @@ from .helpers import (
|
|
|
27
26
|
get_value_id_from_unique_id,
|
|
28
27
|
value_matches_matcher,
|
|
29
28
|
)
|
|
29
|
+
from .models import ZwaveJSConfigEntry
|
|
30
30
|
|
|
31
31
|
KEYS_TO_REDACT = {"homeId", "location"}
|
|
32
32
|
|
|
@@ -73,7 +73,10 @@ def redact_node_state(node_state: dict) -> dict:
|
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
def get_device_entities(
|
|
76
|
-
hass: HomeAssistant,
|
|
76
|
+
hass: HomeAssistant,
|
|
77
|
+
node: Node,
|
|
78
|
+
config_entry: ZwaveJSConfigEntry,
|
|
79
|
+
device: dr.DeviceEntry,
|
|
77
80
|
) -> list[dict[str, Any]]:
|
|
78
81
|
"""Get entities for a device."""
|
|
79
82
|
entity_entries = er.async_entries_for_device(
|
|
@@ -125,7 +128,7 @@ def get_device_entities(
|
|
|
125
128
|
|
|
126
129
|
|
|
127
130
|
async def async_get_config_entry_diagnostics(
|
|
128
|
-
hass: HomeAssistant, config_entry:
|
|
131
|
+
hass: HomeAssistant, config_entry: ZwaveJSConfigEntry
|
|
129
132
|
) -> dict[str, Any]:
|
|
130
133
|
"""Return diagnostics for a config entry."""
|
|
131
134
|
msgs: list[dict] = async_redact_data(
|
|
@@ -144,10 +147,10 @@ async def async_get_config_entry_diagnostics(
|
|
|
144
147
|
|
|
145
148
|
|
|
146
149
|
async def async_get_device_diagnostics(
|
|
147
|
-
hass: HomeAssistant, config_entry:
|
|
150
|
+
hass: HomeAssistant, config_entry: ZwaveJSConfigEntry, device: dr.DeviceEntry
|
|
148
151
|
) -> dict[str, Any]:
|
|
149
152
|
"""Return diagnostics for a device."""
|
|
150
|
-
client: Client = config_entry.runtime_data
|
|
153
|
+
client: Client = config_entry.runtime_data.client
|
|
151
154
|
identifiers = get_home_and_node_id_from_device_entry(device)
|
|
152
155
|
node_id = identifiers[1] if identifiers else None
|
|
153
156
|
driver = client.driver
|
|
@@ -263,7 +263,7 @@ WINDOW_COVERING_SLAT_CURRENT_VALUE_SCHEMA = ZWaveValueDiscoverySchema(
|
|
|
263
263
|
)
|
|
264
264
|
|
|
265
265
|
# For device class mapping see:
|
|
266
|
-
# https://github.com/zwave-js/node-zwave-js/blob/master/packages/config/config/
|
|
266
|
+
# https://github.com/zwave-js/node-zwave-js/blob/master/packages/config/config/
|
|
267
267
|
DISCOVERY_SCHEMAS = [
|
|
268
268
|
# ====== START OF DEVICE SPECIFIC MAPPING SCHEMAS =======
|
|
269
269
|
# Honeywell 39358 In-Wall Fan Control using switch multilevel CC
|
|
@@ -291,12 +291,16 @@ DISCOVERY_SCHEMAS = [
|
|
|
291
291
|
FanValueMapping(speeds=[(1, 33), (34, 67), (68, 99)]),
|
|
292
292
|
),
|
|
293
293
|
),
|
|
294
|
-
# GE/Jasco - In-Wall Smart Fan
|
|
294
|
+
# GE/Jasco - In-Wall Smart Fan Controls
|
|
295
295
|
ZWaveDiscoverySchema(
|
|
296
296
|
platform=Platform.FAN,
|
|
297
297
|
hint="has_fan_value_mapping",
|
|
298
298
|
manufacturer_id={0x0063},
|
|
299
|
-
product_id={
|
|
299
|
+
product_id={
|
|
300
|
+
0x3131,
|
|
301
|
+
0x3337, # 14287 / 55258 / ZW4002
|
|
302
|
+
0x3533, # 58446 / ZWA4013
|
|
303
|
+
},
|
|
300
304
|
product_type={0x4944},
|
|
301
305
|
primary_value=SWITCH_MULTILEVEL_CURRENT_VALUE_SCHEMA,
|
|
302
306
|
data_template=FixedFanValueMappingDataTemplate(
|
|
@@ -768,6 +772,35 @@ DISCOVERY_SCHEMAS = [
|
|
|
768
772
|
},
|
|
769
773
|
),
|
|
770
774
|
),
|
|
775
|
+
# ZWA-2, discover LED control as configuration, default disabled
|
|
776
|
+
## Production firmware (1.0) -> Color Switch CC
|
|
777
|
+
ZWaveDiscoverySchema(
|
|
778
|
+
platform=Platform.LIGHT,
|
|
779
|
+
manufacturer_id={0x0466},
|
|
780
|
+
product_id={0x0001},
|
|
781
|
+
product_type={0x0001},
|
|
782
|
+
hint="zwa2_led_color",
|
|
783
|
+
primary_value=COLOR_SWITCH_CURRENT_VALUE_SCHEMA,
|
|
784
|
+
absent_values=[
|
|
785
|
+
SWITCH_BINARY_CURRENT_VALUE_SCHEMA,
|
|
786
|
+
SWITCH_MULTILEVEL_CURRENT_VALUE_SCHEMA,
|
|
787
|
+
],
|
|
788
|
+
entity_category=EntityCategory.CONFIG,
|
|
789
|
+
),
|
|
790
|
+
## Day-1 firmware update (1.1) -> Binary Switch CC
|
|
791
|
+
ZWaveDiscoverySchema(
|
|
792
|
+
platform=Platform.LIGHT,
|
|
793
|
+
manufacturer_id={0x0466},
|
|
794
|
+
product_id={0x0001},
|
|
795
|
+
product_type={0x0001},
|
|
796
|
+
hint="zwa2_led_onoff",
|
|
797
|
+
primary_value=SWITCH_BINARY_CURRENT_VALUE_SCHEMA,
|
|
798
|
+
absent_values=[
|
|
799
|
+
COLOR_SWITCH_CURRENT_VALUE_SCHEMA,
|
|
800
|
+
SWITCH_MULTILEVEL_CURRENT_VALUE_SCHEMA,
|
|
801
|
+
],
|
|
802
|
+
entity_category=EntityCategory.CONFIG,
|
|
803
|
+
),
|
|
771
804
|
# ====== START OF GENERIC MAPPING SCHEMAS =======
|
|
772
805
|
# locks
|
|
773
806
|
# Door Lock CC
|
|
@@ -2,30 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from zwave_js_server.client import Client as ZwaveClient
|
|
6
5
|
from zwave_js_server.model.driver import Driver
|
|
7
6
|
from zwave_js_server.model.value import Value, ValueNotification
|
|
8
7
|
|
|
9
8
|
from homeassistant.components.event import DOMAIN as EVENT_DOMAIN, EventEntity
|
|
10
|
-
from homeassistant.config_entries import ConfigEntry
|
|
11
9
|
from homeassistant.core import HomeAssistant, callback
|
|
12
10
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
|
13
11
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
|
|
14
12
|
|
|
15
|
-
from .const import ATTR_VALUE,
|
|
13
|
+
from .const import ATTR_VALUE, DOMAIN
|
|
16
14
|
from .discovery import ZwaveDiscoveryInfo
|
|
17
15
|
from .entity import ZWaveBaseEntity
|
|
16
|
+
from .models import ZwaveJSConfigEntry
|
|
18
17
|
|
|
19
18
|
PARALLEL_UPDATES = 0
|
|
20
19
|
|
|
21
20
|
|
|
22
21
|
async def async_setup_entry(
|
|
23
22
|
hass: HomeAssistant,
|
|
24
|
-
config_entry:
|
|
23
|
+
config_entry: ZwaveJSConfigEntry,
|
|
25
24
|
async_add_entities: AddConfigEntryEntitiesCallback,
|
|
26
25
|
) -> None:
|
|
27
26
|
"""Set up Z-Wave Event entity from Config Entry."""
|
|
28
|
-
client
|
|
27
|
+
client = config_entry.runtime_data.client
|
|
29
28
|
|
|
30
29
|
@callback
|
|
31
30
|
def async_add_event(info: ZwaveDiscoveryInfo) -> None:
|
|
@@ -56,7 +55,7 @@ class ZwaveEventEntity(ZWaveBaseEntity, EventEntity):
|
|
|
56
55
|
"""Representation of a Z-Wave event entity."""
|
|
57
56
|
|
|
58
57
|
def __init__(
|
|
59
|
-
self, config_entry:
|
|
58
|
+
self, config_entry: ZwaveJSConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo
|
|
60
59
|
) -> None:
|
|
61
60
|
"""Initialize a ZwaveEventEntity entity."""
|
|
62
61
|
super().__init__(config_entry, driver, info)
|
|
@@ -5,7 +5,6 @@ from __future__ import annotations
|
|
|
5
5
|
import math
|
|
6
6
|
from typing import Any, cast
|
|
7
7
|
|
|
8
|
-
from zwave_js_server.client import Client as ZwaveClient
|
|
9
8
|
from zwave_js_server.const import TARGET_VALUE_PROPERTY, CommandClass
|
|
10
9
|
from zwave_js_server.const.command_class.multilevel_switch import SET_TO_PREVIOUS_VALUE
|
|
11
10
|
from zwave_js_server.const.command_class.thermostat import (
|
|
@@ -20,7 +19,6 @@ from homeassistant.components.fan import (
|
|
|
20
19
|
FanEntity,
|
|
21
20
|
FanEntityFeature,
|
|
22
21
|
)
|
|
23
|
-
from homeassistant.config_entries import ConfigEntry
|
|
24
22
|
from homeassistant.core import HomeAssistant, callback
|
|
25
23
|
from homeassistant.exceptions import HomeAssistantError
|
|
26
24
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
|
@@ -30,11 +28,12 @@ from homeassistant.util.percentage import (
|
|
|
30
28
|
ranged_value_to_percentage,
|
|
31
29
|
)
|
|
32
30
|
|
|
33
|
-
from .const import
|
|
31
|
+
from .const import DOMAIN
|
|
34
32
|
from .discovery import ZwaveDiscoveryInfo
|
|
35
33
|
from .discovery_data_template import FanValueMapping, FanValueMappingDataTemplate
|
|
36
34
|
from .entity import ZWaveBaseEntity
|
|
37
35
|
from .helpers import get_value_of_zwave_value
|
|
36
|
+
from .models import ZwaveJSConfigEntry
|
|
38
37
|
|
|
39
38
|
PARALLEL_UPDATES = 0
|
|
40
39
|
|
|
@@ -45,11 +44,11 @@ ATTR_FAN_STATE = "fan_state"
|
|
|
45
44
|
|
|
46
45
|
async def async_setup_entry(
|
|
47
46
|
hass: HomeAssistant,
|
|
48
|
-
config_entry:
|
|
47
|
+
config_entry: ZwaveJSConfigEntry,
|
|
49
48
|
async_add_entities: AddConfigEntryEntitiesCallback,
|
|
50
49
|
) -> None:
|
|
51
50
|
"""Set up Z-Wave Fan from Config Entry."""
|
|
52
|
-
client
|
|
51
|
+
client = config_entry.runtime_data.client
|
|
53
52
|
|
|
54
53
|
@callback
|
|
55
54
|
def async_add_fan(info: ZwaveDiscoveryInfo) -> None:
|
|
@@ -85,7 +84,7 @@ class ZwaveFan(ZWaveBaseEntity, FanEntity):
|
|
|
85
84
|
)
|
|
86
85
|
|
|
87
86
|
def __init__(
|
|
88
|
-
self, config_entry:
|
|
87
|
+
self, config_entry: ZwaveJSConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo
|
|
89
88
|
) -> None:
|
|
90
89
|
"""Initialize the fan."""
|
|
91
90
|
super().__init__(config_entry, driver, info)
|
|
@@ -165,7 +164,7 @@ class ValueMappingZwaveFan(ZwaveFan):
|
|
|
165
164
|
"""A Zwave fan with a value mapping data (e.g., 1-24 is low)."""
|
|
166
165
|
|
|
167
166
|
def __init__(
|
|
168
|
-
self, config_entry:
|
|
167
|
+
self, config_entry: ZwaveJSConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo
|
|
169
168
|
) -> None:
|
|
170
169
|
"""Initialize the fan."""
|
|
171
170
|
super().__init__(config_entry, driver, info)
|
|
@@ -316,7 +315,7 @@ class ZwaveThermostatFan(ZWaveBaseEntity, FanEntity):
|
|
|
316
315
|
_fan_state: ZwaveValue | None = None
|
|
317
316
|
|
|
318
317
|
def __init__(
|
|
319
|
-
self, config_entry:
|
|
318
|
+
self, config_entry: ZwaveJSConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo
|
|
320
319
|
) -> None:
|
|
321
320
|
"""Initialize the thermostat fan."""
|
|
322
321
|
super().__init__(config_entry, driver, info)
|
|
@@ -3,14 +3,13 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import asyncio
|
|
6
|
-
from collections.abc import Callable
|
|
6
|
+
from collections.abc import Callable, Coroutine
|
|
7
7
|
from dataclasses import astuple, dataclass
|
|
8
8
|
import logging
|
|
9
9
|
from typing import Any, cast
|
|
10
10
|
|
|
11
11
|
import aiohttp
|
|
12
12
|
import voluptuous as vol
|
|
13
|
-
from zwave_js_server.client import Client as ZwaveClient
|
|
14
13
|
from zwave_js_server.const import (
|
|
15
14
|
LOG_LEVEL_MAP,
|
|
16
15
|
CommandClass,
|
|
@@ -30,7 +29,7 @@ from zwave_js_server.model.value import (
|
|
|
30
29
|
from zwave_js_server.version import VersionInfo, get_server_version
|
|
31
30
|
|
|
32
31
|
from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
|
|
33
|
-
from homeassistant.config_entries import
|
|
32
|
+
from homeassistant.config_entries import ConfigEntryState
|
|
34
33
|
from homeassistant.const import (
|
|
35
34
|
ATTR_AREA_ID,
|
|
36
35
|
ATTR_DEVICE_ID,
|
|
@@ -51,13 +50,13 @@ from .const import (
|
|
|
51
50
|
ATTR_ENDPOINT,
|
|
52
51
|
ATTR_PROPERTY,
|
|
53
52
|
ATTR_PROPERTY_KEY,
|
|
54
|
-
DATA_CLIENT,
|
|
55
|
-
DATA_OLD_SERVER_LOG_LEVEL,
|
|
56
53
|
DOMAIN,
|
|
57
54
|
LIB_LOGGER,
|
|
58
55
|
LOGGER,
|
|
59
56
|
)
|
|
57
|
+
from .models import ZwaveJSConfigEntry
|
|
60
58
|
|
|
59
|
+
DRIVER_READY_EVENT_TIMEOUT = 60
|
|
61
60
|
SERVER_VERSION_TIMEOUT = 10
|
|
62
61
|
|
|
63
62
|
|
|
@@ -143,7 +142,7 @@ async def async_enable_statistics(driver: Driver) -> None:
|
|
|
143
142
|
|
|
144
143
|
|
|
145
144
|
async def async_enable_server_logging_if_needed(
|
|
146
|
-
hass: HomeAssistant, entry:
|
|
145
|
+
hass: HomeAssistant, entry: ZwaveJSConfigEntry, driver: Driver
|
|
147
146
|
) -> None:
|
|
148
147
|
"""Enable logging of zwave-js-server in the lib."""
|
|
149
148
|
# If lib log level is set to debug, we want to enable server logging. First we
|
|
@@ -161,15 +160,14 @@ async def async_enable_server_logging_if_needed(
|
|
|
161
160
|
if (curr_server_log_level := driver.log_config.level) and (
|
|
162
161
|
LOG_LEVEL_MAP[curr_server_log_level]
|
|
163
162
|
) > LIB_LOGGER.getEffectiveLevel():
|
|
164
|
-
|
|
165
|
-
entry_data[DATA_OLD_SERVER_LOG_LEVEL] = curr_server_log_level
|
|
163
|
+
entry.runtime_data.old_server_log_level = curr_server_log_level
|
|
166
164
|
await driver.async_update_log_config(LogConfig(level=LogLevel.DEBUG))
|
|
167
165
|
await driver.client.enable_server_logging()
|
|
168
166
|
LOGGER.info("Zwave-js-server logging is enabled")
|
|
169
167
|
|
|
170
168
|
|
|
171
169
|
async def async_disable_server_logging_if_needed(
|
|
172
|
-
hass: HomeAssistant, entry:
|
|
170
|
+
hass: HomeAssistant, entry: ZwaveJSConfigEntry, driver: Driver
|
|
173
171
|
) -> None:
|
|
174
172
|
"""Disable logging of zwave-js-server in the lib if still connected to server."""
|
|
175
173
|
if (
|
|
@@ -180,10 +178,8 @@ async def async_disable_server_logging_if_needed(
|
|
|
180
178
|
return
|
|
181
179
|
LOGGER.info("Disabling zwave_js server logging")
|
|
182
180
|
if (
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
!= driver.log_config.level
|
|
186
|
-
):
|
|
181
|
+
old_server_log_level := entry.runtime_data.old_server_log_level
|
|
182
|
+
) is not None and old_server_log_level != driver.log_config.level:
|
|
187
183
|
LOGGER.info(
|
|
188
184
|
(
|
|
189
185
|
"Server logging is currently set to %s as a result of server logging "
|
|
@@ -193,6 +189,7 @@ async def async_disable_server_logging_if_needed(
|
|
|
193
189
|
old_server_log_level,
|
|
194
190
|
)
|
|
195
191
|
await driver.async_update_log_config(LogConfig(level=old_server_log_level))
|
|
192
|
+
entry.runtime_data.old_server_log_level = None
|
|
196
193
|
driver.client.disable_server_logging()
|
|
197
194
|
LOGGER.info("Zwave-js-server logging is enabled")
|
|
198
195
|
|
|
@@ -262,7 +259,7 @@ def async_get_node_from_device_id(
|
|
|
262
259
|
# Use device config entry ID's to validate that this is a valid zwave_js device
|
|
263
260
|
# and to get the client
|
|
264
261
|
config_entry_ids = device_entry.config_entries
|
|
265
|
-
entry = next(
|
|
262
|
+
entry: ZwaveJSConfigEntry | None = next(
|
|
266
263
|
(
|
|
267
264
|
entry
|
|
268
265
|
for entry in hass.config_entries.async_entries(DOMAIN)
|
|
@@ -277,7 +274,7 @@ def async_get_node_from_device_id(
|
|
|
277
274
|
if entry.state != ConfigEntryState.LOADED:
|
|
278
275
|
raise ValueError(f"Device {device_id} config entry is not loaded")
|
|
279
276
|
|
|
280
|
-
client
|
|
277
|
+
client = entry.runtime_data.client
|
|
281
278
|
driver = client.driver
|
|
282
279
|
|
|
283
280
|
if driver is None:
|
|
@@ -310,7 +307,7 @@ async def async_get_provisioning_entry_from_device_id(
|
|
|
310
307
|
# Use device config entry ID's to validate that this is a valid zwave_js device
|
|
311
308
|
# and to get the client
|
|
312
309
|
config_entry_ids = device_entry.config_entries
|
|
313
|
-
entry = next(
|
|
310
|
+
entry: ZwaveJSConfigEntry | None = next(
|
|
314
311
|
(
|
|
315
312
|
entry
|
|
316
313
|
for entry in hass.config_entries.async_entries(DOMAIN)
|
|
@@ -325,7 +322,7 @@ async def async_get_provisioning_entry_from_device_id(
|
|
|
325
322
|
if entry.state != ConfigEntryState.LOADED:
|
|
326
323
|
raise ValueError(f"Device {device_id} config entry is not loaded")
|
|
327
324
|
|
|
328
|
-
client
|
|
325
|
+
client = entry.runtime_data.client
|
|
329
326
|
driver = client.driver
|
|
330
327
|
|
|
331
328
|
if driver is None:
|
|
@@ -393,7 +390,7 @@ def async_get_nodes_from_area_id(
|
|
|
393
390
|
for device in dr.async_entries_for_area(dev_reg, area_id)
|
|
394
391
|
if any(
|
|
395
392
|
cast(
|
|
396
|
-
|
|
393
|
+
ZwaveJSConfigEntry,
|
|
397
394
|
hass.config_entries.async_get_entry(config_entry_id),
|
|
398
395
|
).domain
|
|
399
396
|
== DOMAIN
|
|
@@ -487,7 +484,7 @@ def async_get_node_status_sensor_entity_id(
|
|
|
487
484
|
|
|
488
485
|
entry = hass.config_entries.async_get_entry(entry_id)
|
|
489
486
|
assert entry
|
|
490
|
-
client = entry.runtime_data
|
|
487
|
+
client = entry.runtime_data.client
|
|
491
488
|
node = async_get_node_from_device_id(hass, device_id, dev_reg)
|
|
492
489
|
return ent_reg.async_get_entity_id(
|
|
493
490
|
SENSOR_DOMAIN,
|
|
@@ -565,7 +562,7 @@ def get_device_info(driver: Driver, node: ZwaveNode) -> DeviceInfo:
|
|
|
565
562
|
|
|
566
563
|
|
|
567
564
|
def get_network_identifier_for_notification(
|
|
568
|
-
hass: HomeAssistant, config_entry:
|
|
565
|
+
hass: HomeAssistant, config_entry: ZwaveJSConfigEntry, controller: Controller
|
|
569
566
|
) -> str:
|
|
570
567
|
"""Return the network identifier string for persistent notifications."""
|
|
571
568
|
home_id = str(controller.home_id)
|
|
@@ -592,5 +589,57 @@ async def async_get_version_info(hass: HomeAssistant, ws_address: str) -> Versio
|
|
|
592
589
|
return version_info
|
|
593
590
|
|
|
594
591
|
|
|
592
|
+
@callback
|
|
593
|
+
def async_wait_for_driver_ready_event(
|
|
594
|
+
config_entry: ZwaveJSConfigEntry,
|
|
595
|
+
driver: Driver,
|
|
596
|
+
) -> Callable[[], Coroutine[Any, Any, None]]:
|
|
597
|
+
"""Wait for the driver ready event and the config entry reload.
|
|
598
|
+
|
|
599
|
+
When the driver ready event is received
|
|
600
|
+
the config entry will be reloaded by the integration.
|
|
601
|
+
This function helps wait for that to happen
|
|
602
|
+
before proceeding with further actions.
|
|
603
|
+
|
|
604
|
+
If the config entry is reloaded for another reason,
|
|
605
|
+
this function will not wait for it to be reloaded again.
|
|
606
|
+
|
|
607
|
+
Raises TimeoutError if the driver ready event and reload
|
|
608
|
+
is not received within the specified timeout.
|
|
609
|
+
"""
|
|
610
|
+
driver_ready_event_received = asyncio.Event()
|
|
611
|
+
config_entry_reloaded = asyncio.Event()
|
|
612
|
+
unsubscribers: list[Callable[[], None]] = []
|
|
613
|
+
|
|
614
|
+
@callback
|
|
615
|
+
def driver_ready_received(event: dict) -> None:
|
|
616
|
+
"""Receive the driver ready event."""
|
|
617
|
+
driver_ready_event_received.set()
|
|
618
|
+
|
|
619
|
+
unsubscribers.append(driver.once("driver ready", driver_ready_received))
|
|
620
|
+
|
|
621
|
+
@callback
|
|
622
|
+
def on_config_entry_state_change() -> None:
|
|
623
|
+
"""Check config entry was loaded after driver ready event."""
|
|
624
|
+
if config_entry.state is ConfigEntryState.LOADED:
|
|
625
|
+
config_entry_reloaded.set()
|
|
626
|
+
|
|
627
|
+
unsubscribers.append(
|
|
628
|
+
config_entry.async_on_state_change(on_config_entry_state_change)
|
|
629
|
+
)
|
|
630
|
+
|
|
631
|
+
async def wait_for_events() -> None:
|
|
632
|
+
try:
|
|
633
|
+
async with asyncio.timeout(DRIVER_READY_EVENT_TIMEOUT):
|
|
634
|
+
await asyncio.gather(
|
|
635
|
+
driver_ready_event_received.wait(), config_entry_reloaded.wait()
|
|
636
|
+
)
|
|
637
|
+
finally:
|
|
638
|
+
for unsubscribe in unsubscribers:
|
|
639
|
+
unsubscribe()
|
|
640
|
+
|
|
641
|
+
return wait_for_events
|
|
642
|
+
|
|
643
|
+
|
|
595
644
|
class CannotConnect(HomeAssistantError):
|
|
596
645
|
"""Indicate connection error."""
|