homeassistant 2025.11.0b2__py3-none-any.whl → 2025.11.2__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.
Potentially problematic release.
This version of homeassistant might be problematic. Click here for more details.
- homeassistant/auth/mfa_modules/notify.py +7 -7
- homeassistant/auth/providers/homeassistant.py +8 -2
- homeassistant/components/abode/translations/mk.json +11 -0
- homeassistant/components/abode/translations/uk.json +4 -1
- homeassistant/components/accuweather/translations/mk.json +1 -0
- homeassistant/components/actron_air/translations/sr-Latn.json +3 -0
- homeassistant/components/adax/translations/sv.json +1 -1
- homeassistant/components/ads/translations/mk.json +11 -0
- homeassistant/components/aemet/translations/sv.json +2 -1
- homeassistant/components/aftership/translations/mk.json +11 -0
- homeassistant/components/ai_task/translations/mk.json +42 -1
- homeassistant/components/ai_task/translations/sv.json +3 -0
- homeassistant/components/airgradient/translations/bg.json +11 -0
- homeassistant/components/airgradient/translations/sr-Latn.json +3 -3
- homeassistant/components/airgradient/translations/sv.json +2 -0
- homeassistant/components/airly/translations/sv.json +2 -1
- homeassistant/components/airnow/translations/sv.json +2 -1
- homeassistant/components/airq/translations/sv.json +1 -0
- homeassistant/components/airthings/translations/mk.json +9 -1
- homeassistant/components/airthings_ble/config_flow.py +10 -7
- homeassistant/components/airthings_ble/const.py +5 -0
- homeassistant/components/airthings_ble/coordinator.py +32 -3
- homeassistant/components/airzone/translations/bg.json +2 -1
- homeassistant/components/airzone/translations/sr-Latn.json +1 -1
- homeassistant/components/airzone/translations/vi.json +9 -0
- homeassistant/components/airzone_cloud/translations/bg.json +5 -0
- homeassistant/components/airzone_cloud/translations/sr-Latn.json +2 -2
- homeassistant/components/airzone_cloud/translations/vi.json +9 -0
- homeassistant/components/aladdin_connect/translations/sr-Latn.json +7 -0
- homeassistant/components/aladdin_connect/translations/sv.json +1 -1
- homeassistant/components/alarm_control_panel/translations/mk.json +12 -0
- homeassistant/components/alarm_control_panel/translations/vi.json +16 -11
- homeassistant/components/alexa_devices/binary_sensor.py +2 -2
- homeassistant/components/alexa_devices/coordinator.py +6 -1
- homeassistant/components/alexa_devices/diagnostics.py +1 -1
- homeassistant/components/alexa_devices/entity.py +2 -2
- homeassistant/components/alexa_devices/manifest.json +1 -1
- homeassistant/components/alexa_devices/notify.py +3 -2
- homeassistant/components/alexa_devices/sensor.py +2 -2
- homeassistant/components/alexa_devices/services.py +1 -1
- homeassistant/components/alexa_devices/switch.py +1 -1
- homeassistant/components/alexa_devices/translations/bg.json +13 -0
- homeassistant/components/alexa_devices/translations/it.json +3 -3
- homeassistant/components/alexa_devices/translations/mk.json +7 -0
- homeassistant/components/alexa_devices/translations/pt.json +11 -0
- homeassistant/components/alexa_devices/translations/sv.json +16 -0
- homeassistant/components/alexa_devices/utils.py +1 -1
- homeassistant/components/ambient_network/sensor.py +5 -5
- homeassistant/components/anthropic/translations/en-GB.json +1 -1
- homeassistant/components/anthropic/translations/lt.json +1 -1
- homeassistant/components/aosmith/translations/bg.json +2 -1
- homeassistant/components/aosmith/translations/sr-Latn.json +1 -1
- homeassistant/components/apcupsd/translations/mk.json +3 -0
- homeassistant/components/apcupsd/translations/pl.json +13 -0
- homeassistant/components/aprilaire/translations/bg.json +30 -5
- homeassistant/components/aprilaire/translations/sr-Latn.json +14 -14
- homeassistant/components/assist_pipeline/translations/sv.json +1 -1
- homeassistant/components/assist_satellite/translations/mk.json +59 -0
- homeassistant/components/assist_satellite/translations/vi.json +38 -0
- homeassistant/components/august/translations/sr-Latn.json +7 -1
- homeassistant/components/august/translations/sv.json +4 -0
- homeassistant/components/automation/translations/bg.json +3 -0
- homeassistant/components/automation/translations/sv.json +1 -1
- homeassistant/components/awair/translations/sv.json +1 -1
- homeassistant/components/backup/manifest.json +1 -1
- homeassistant/components/backup/translations/de.json +1 -1
- homeassistant/components/backup/translations/sr-Latn.json +11 -0
- homeassistant/components/bang_olufsen/translations/mk.json +21 -0
- homeassistant/components/bayesian/translations/de.json +1 -1
- homeassistant/components/bayesian/translations/sr-Latn.json +1 -0
- homeassistant/components/bayesian/translations/sv.json +108 -11
- homeassistant/components/bayesian/translations/vi.json +8 -0
- homeassistant/components/binary_sensor/translations/bg.json +9 -2
- homeassistant/components/binary_sensor/translations/mk.json +4 -0
- homeassistant/components/binary_sensor/translations/sr-Latn.json +3 -3
- homeassistant/components/blackbird/translations/mk.json +11 -0
- homeassistant/components/blink/translations/bg.json +8 -1
- homeassistant/components/blink/translations/ca.json +8 -1
- homeassistant/components/blink/translations/mk.json +3 -0
- homeassistant/components/blink/translations/pt.json +17 -1
- homeassistant/components/blink/translations/sv.json +15 -1
- homeassistant/components/bluesound/translations/mk.json +8 -0
- homeassistant/components/bond/translations/sr-Latn.json +3 -0
- homeassistant/components/bosch_alarm/translations/sr-Latn.json +3 -0
- homeassistant/components/bring/translations/mk.json +5 -0
- homeassistant/components/bring/translations/sr-Latn.json +3 -0
- homeassistant/components/brother/translations/bg.json +0 -6
- homeassistant/components/brother/translations/ca.json +1 -5
- homeassistant/components/brother/translations/cs.json +2 -2
- homeassistant/components/brother/translations/da.json +1 -5
- homeassistant/components/brother/translations/de.json +4 -4
- homeassistant/components/brother/translations/el.json +1 -5
- homeassistant/components/brother/translations/en-GB.json +4 -4
- homeassistant/components/brother/translations/en.json +4 -4
- homeassistant/components/brother/translations/es-419.json +0 -5
- homeassistant/components/brother/translations/es.json +2 -2
- homeassistant/components/brother/translations/et.json +2 -2
- homeassistant/components/brother/translations/fi.json +1 -5
- homeassistant/components/brother/translations/fr.json +1 -5
- homeassistant/components/brother/translations/ga.json +2 -10
- homeassistant/components/brother/translations/hu.json +1 -5
- homeassistant/components/brother/translations/id.json +1 -5
- homeassistant/components/brother/translations/it.json +1 -5
- homeassistant/components/brother/translations/ja.json +1 -5
- homeassistant/components/brother/translations/ko.json +1 -5
- homeassistant/components/brother/translations/lb.json +1 -2
- homeassistant/components/brother/translations/lt.json +2 -2
- homeassistant/components/brother/translations/mk.json +9 -0
- homeassistant/components/brother/translations/nb.json +1 -5
- homeassistant/components/brother/translations/nl.json +1 -5
- homeassistant/components/brother/translations/pl.json +3 -7
- homeassistant/components/brother/translations/pt-BR.json +1 -5
- homeassistant/components/brother/translations/pt.json +2 -2
- homeassistant/components/brother/translations/ro.json +1 -2
- homeassistant/components/brother/translations/sk.json +2 -2
- homeassistant/components/brother/translations/sl.json +2 -10
- homeassistant/components/brother/translations/sv.json +4 -4
- homeassistant/components/brother/translations/tr.json +1 -5
- homeassistant/components/brother/translations/uk.json +1 -5
- homeassistant/components/brother/translations/vi.json +1 -5
- homeassistant/components/brother/translations/zh-Hans.json +2 -2
- homeassistant/components/brother/translations/zh-Hant.json +4 -4
- homeassistant/components/bryant_evolution/translations/lt.json +3 -0
- homeassistant/components/bryant_evolution/translations/pt.json +3 -0
- homeassistant/components/bryant_evolution/translations/ru.json +3 -0
- homeassistant/components/bryant_evolution/translations/vi.json +19 -0
- homeassistant/components/bsblan/climate.py +5 -2
- homeassistant/components/bsblan/manifest.json +1 -1
- homeassistant/components/bsblan/translations/vi.json +5 -0
- homeassistant/components/bthome/translations/mk.json +20 -0
- homeassistant/components/button/translations/mk.json +8 -1
- homeassistant/components/button/translations/vi.json +1 -0
- homeassistant/components/calendar/translations/bg.json +3 -0
- homeassistant/components/calendar/translations/mk.json +72 -0
- homeassistant/components/calendar/translations/sr-Latn.json +2 -2
- homeassistant/components/calendar/translations/sv.json +1 -1
- homeassistant/components/calendar/translations/vi.json +1 -0
- homeassistant/components/cambridge_audio/translations/bg.json +1 -0
- homeassistant/components/cambridge_audio/translations/sr-Latn.json +2 -2
- homeassistant/components/camera/translations/mk.json +60 -0
- homeassistant/components/camera/translations/sv.json +1 -1
- homeassistant/components/cert_expiry/translations/it.json +1 -0
- homeassistant/components/channels/translations/mk.json +11 -0
- homeassistant/components/climate/reproduce_state.py +3 -3
- homeassistant/components/climate/translations/bg.json +10 -4
- homeassistant/components/climate/translations/mk.json +101 -1
- homeassistant/components/climate/translations/pl.json +13 -13
- homeassistant/components/climate/translations/sr-Latn.json +4 -4
- homeassistant/components/climate/translations/vi.json +66 -10
- homeassistant/components/comelit/config_flow.py +42 -30
- homeassistant/components/control4/translations/es.json +2 -1
- homeassistant/components/conversation/manifest.json +1 -1
- homeassistant/components/conversation/translations/mk.json +37 -0
- homeassistant/components/conversation/translations/vi.json +38 -0
- homeassistant/components/counter/translations/mk.json +27 -0
- homeassistant/components/cover/translations/es.json +7 -7
- homeassistant/components/cover/translations/mk.json +6 -1
- homeassistant/components/daikin/translations/es.json +1 -0
- homeassistant/components/daikin/translations/mk.json +3 -0
- homeassistant/components/daikin/translations/pl.json +7 -0
- homeassistant/components/deluge/translations/sv.json +3 -0
- homeassistant/components/demo/translations/bg.json +3 -1
- homeassistant/components/demo/translations/mk.json +11 -0
- homeassistant/components/demo/translations/sr-Latn.json +3 -3
- homeassistant/components/demo/translations/vi.json +11 -0
- homeassistant/components/denonavr/translations/sr-Latn.json +3 -0
- homeassistant/components/derivative/translations/mk.json +9 -0
- homeassistant/components/device_tracker/translations/mk.json +22 -1
- homeassistant/components/devolo_home_control/translations/cs.json +1 -1
- homeassistant/components/devolo_home_control/translations/de.json +1 -1
- homeassistant/components/devolo_home_control/translations/el.json +0 -3
- homeassistant/components/devolo_home_control/translations/en-GB.json +1 -1
- homeassistant/components/devolo_home_control/translations/en.json +1 -1
- homeassistant/components/devolo_home_control/translations/es.json +1 -1
- homeassistant/components/devolo_home_control/translations/et.json +1 -1
- homeassistant/components/devolo_home_control/translations/ga.json +0 -3
- homeassistant/components/devolo_home_control/translations/hu.json +0 -3
- homeassistant/components/devolo_home_control/translations/ja.json +0 -3
- homeassistant/components/devolo_home_control/translations/lt.json +1 -1
- homeassistant/components/devolo_home_control/translations/pt.json +1 -1
- homeassistant/components/devolo_home_control/translations/sk.json +1 -1
- homeassistant/components/devolo_home_control/translations/tr.json +0 -3
- homeassistant/components/devolo_home_control/translations/zh-Hans.json +1 -1
- homeassistant/components/devolo_home_control/translations/zh-Hant.json +1 -1
- homeassistant/components/dlna_dmr/translations/sv.json +1 -1
- homeassistant/components/downloader/translations/mk.json +11 -0
- homeassistant/components/drop_connect/translations/mk.json +1 -0
- homeassistant/components/ecobee/translations/mk.json +21 -0
- homeassistant/components/ecobee/translations/sv.json +3 -0
- homeassistant/components/ecoforest/translations/bg.json +1 -0
- homeassistant/components/ecoforest/translations/mk.json +9 -0
- homeassistant/components/ecoforest/translations/sr-Latn.json +2 -2
- homeassistant/components/econet/translations/sv.json +1 -1
- homeassistant/components/ecovacs/translations/es.json +27 -0
- homeassistant/components/ecovacs/translations/mk.json +9 -0
- homeassistant/components/ecovacs/translations/sr-Latn.json +18 -0
- homeassistant/components/eheimdigital/translations/sr-Latn.json +5 -0
- homeassistant/components/ekeybionyx/translations/sr-Latn.json +10 -0
- homeassistant/components/electric_kiwi/translations/sv.json +3 -0
- homeassistant/components/elkm1/translations/mk.json +7 -0
- homeassistant/components/esphome/__init__.py +5 -3
- homeassistant/components/esphome/translations/he.json +2 -2
- homeassistant/components/esphome/translations/sv.json +1 -1
- homeassistant/components/event/translations/mk.json +7 -0
- homeassistant/components/evohome/translations/mk.json +18 -0
- homeassistant/components/ezviz/translations/mk.json +9 -0
- homeassistant/components/faa_delays/translations/mk.json +13 -0
- homeassistant/components/fan/translations/bg.json +3 -0
- homeassistant/components/fan/translations/mk.json +35 -0
- homeassistant/components/filter/translations/mk.json +9 -0
- homeassistant/components/fing/translations/bg.json +20 -0
- homeassistant/components/fing/translations/ca.json +23 -0
- homeassistant/components/fing/translations/es.json +31 -0
- homeassistant/components/fing/translations/sv.json +17 -0
- homeassistant/components/firefly_iii/translations/bg.json +3 -0
- homeassistant/components/fitbit/translations/sv.json +3 -0
- homeassistant/components/fivem/translations/mk.json +9 -0
- homeassistant/components/flexit_bacnet/translations/vi.json +7 -0
- homeassistant/components/foscam/camera.py +4 -1
- homeassistant/components/foscam/coordinator.py +37 -19
- homeassistant/components/foscam/manifest.json +1 -1
- homeassistant/components/foscam/switch.py +1 -0
- homeassistant/components/foscam/translations/mk.json +9 -0
- homeassistant/components/freebox/translations/sv.json +1 -1
- homeassistant/components/fritzbox/translations/vi.json +13 -0
- homeassistant/components/fritzbox_callmonitor/translations/mk.json +3 -0
- homeassistant/components/fronius/translations/pl.json +3 -3
- homeassistant/components/frontend/__init__.py +1 -1
- homeassistant/components/frontend/manifest.json +1 -1
- homeassistant/components/frontend/translations/mk.json +9 -0
- homeassistant/components/frontend/translations/pl.json +18 -1
- homeassistant/components/fully_kiosk/translations/mk.json +11 -0
- homeassistant/components/fyta/translations/sr-Latn.json +3 -0
- homeassistant/components/generic_thermostat/translations/mk.json +2 -0
- homeassistant/components/generic_thermostat/translations/pl.json +2 -0
- homeassistant/components/geniushub/translations/mk.json +18 -0
- homeassistant/components/geo_location/translations/mk.json +11 -0
- homeassistant/components/geocaching/translations/sv.json +3 -0
- homeassistant/components/glances/translations/sl.json +7 -0
- homeassistant/components/goalzero/translations/sv.json +3 -0
- homeassistant/components/google/translations/mk.json +53 -0
- homeassistant/components/google/translations/sv.json +3 -0
- homeassistant/components/google_assistant_sdk/translations/sv.json +3 -0
- homeassistant/components/google_cloud/translations/sv.json +1 -0
- homeassistant/components/google_drive/translations/sr-Latn.json +7 -0
- homeassistant/components/google_drive/translations/sv.json +3 -0
- homeassistant/components/google_generative_ai_conversation/translations/lt.json +1 -1
- homeassistant/components/google_generative_ai_conversation/translations/mk.json +3 -0
- homeassistant/components/google_generative_ai_conversation/translations/sv.json +3 -1
- homeassistant/components/google_mail/translations/mk.json +12 -0
- homeassistant/components/google_mail/translations/sv.json +3 -0
- homeassistant/components/google_mail/translations/vi.json +7 -0
- homeassistant/components/google_photos/translations/mk.json +9 -0
- homeassistant/components/google_photos/translations/sv.json +3 -0
- homeassistant/components/google_sheets/translations/bg.json +10 -0
- homeassistant/components/google_sheets/translations/ca.json +11 -0
- homeassistant/components/google_sheets/translations/es.json +9 -0
- homeassistant/components/google_sheets/translations/mk.json +9 -0
- homeassistant/components/google_sheets/translations/sr-Latn.json +14 -0
- homeassistant/components/google_sheets/translations/sv.json +14 -0
- homeassistant/components/google_tasks/translations/sv.json +3 -0
- homeassistant/components/google_travel_time/translations/ru.json +4 -2
- homeassistant/components/google_travel_time/translations/sv.json +4 -2
- homeassistant/components/govee_ble/translations/mk.json +15 -0
- homeassistant/components/group/translations/bg.json +1 -0
- homeassistant/components/group/translations/ca.json +15 -0
- homeassistant/components/group/translations/mk.json +6 -0
- homeassistant/components/growatt_server/__init__.py +15 -0
- homeassistant/components/growatt_server/translations/it.json +14 -0
- homeassistant/components/growatt_server/translations/ru.json +6 -0
- homeassistant/components/growatt_server/translations/sv.json +4 -2
- homeassistant/components/guardian/translations/mk.json +11 -0
- homeassistant/components/habitica/translations/ca.json +7 -0
- homeassistant/components/habitica/translations/es.json +26 -0
- homeassistant/components/habitica/translations/mk.json +16 -1
- homeassistant/components/habitica/translations/sv.json +19 -1
- homeassistant/components/hassio/issues.py +0 -2
- homeassistant/components/hassio/translations/es.json +13 -0
- homeassistant/components/hassio/translations/it.json +13 -0
- homeassistant/components/hassio/translations/sv.json +7 -2
- homeassistant/components/hdmi_cec/translations/mk.json +7 -0
- homeassistant/components/heos/translations/mk.json +1 -1
- homeassistant/components/heos/translations/sr-Latn.json +3 -0
- homeassistant/components/here_travel_time/translations/mk.json +7 -0
- homeassistant/components/history_stats/translations/mk.json +11 -0
- homeassistant/components/hive/translations/bg.json +2 -0
- homeassistant/components/hive/translations/mk.json +16 -0
- homeassistant/components/hive/translations/sr-Latn.json +3 -3
- homeassistant/components/holiday/manifest.json +1 -1
- homeassistant/components/home_connect/translations/bg.json +160 -32
- homeassistant/components/home_connect/translations/mk.json +10 -0
- homeassistant/components/home_connect/translations/pt.json +3 -0
- homeassistant/components/home_connect/translations/sr-Latn.json +44 -44
- homeassistant/components/home_connect/translations/sv.json +7 -1
- homeassistant/components/homeassistant/translations/sv.json +5 -1
- homeassistant/components/homeassistant_connect_zbt2/config_flow.py +18 -1
- homeassistant/components/homeassistant_connect_zbt2/const.py +58 -0
- homeassistant/components/homeassistant_connect_zbt2/manifest.json +6 -0
- homeassistant/components/homeassistant_connect_zbt2/translations/pt.json +7 -0
- homeassistant/components/homeassistant_connect_zbt2/translations/sv.json +35 -3
- homeassistant/components/homeassistant_hardware/firmware_config_flow.py +101 -65
- homeassistant/components/homeassistant_hardware/translations/sv.json +5 -2
- homeassistant/components/homeassistant_hardware/translations/vi.json +1 -0
- homeassistant/components/homeassistant_sky_connect/manifest.json +6 -0
- homeassistant/components/homeassistant_sky_connect/translations/pt.json +7 -0
- homeassistant/components/homeassistant_sky_connect/translations/sv.json +20 -5
- homeassistant/components/homeassistant_sky_connect/translations/vi.json +1 -0
- homeassistant/components/homeassistant_yellow/manifest.json +6 -0
- homeassistant/components/homeassistant_yellow/translations/pt.json +5 -0
- homeassistant/components/homeassistant_yellow/translations/sv.json +13 -3
- homeassistant/components/homeassistant_yellow/translations/vi.json +1 -0
- homeassistant/components/homee/translations/bg.json +2 -1
- homeassistant/components/homee/translations/mk.json +16 -0
- homeassistant/components/homee/translations/sr-Latn.json +4 -2
- homeassistant/components/homekit/translations/sv.json +6 -0
- homeassistant/components/homekit_controller/translations/mk.json +1 -0
- homeassistant/components/homematic/translations/mk.json +18 -0
- homeassistant/components/homematicip_cloud/translations/mk.json +7 -0
- homeassistant/components/homematicip_cloud/translations/sv.json +1 -1
- homeassistant/components/homewizard/translations/es.json +4 -2
- homeassistant/components/homewizard/translations/pl.json +1 -1
- homeassistant/components/homewizard/translations/ru.json +4 -2
- homeassistant/components/homewizard/translations/sv.json +1 -1
- homeassistant/components/homeworks/translations/mk.json +11 -0
- homeassistant/components/honeywell/translations/mk.json +15 -0
- homeassistant/components/honeywell/translations/vi.json +11 -0
- homeassistant/components/html5/translations/mk.json +9 -1
- homeassistant/components/http/__init__.py +13 -2
- homeassistant/components/http/strings.json +4 -0
- homeassistant/components/http/translations/cs.json +4 -0
- homeassistant/components/http/translations/de.json +4 -0
- homeassistant/components/http/translations/en-GB.json +4 -0
- homeassistant/components/http/translations/en.json +4 -0
- homeassistant/components/http/translations/es.json +4 -0
- homeassistant/components/http/translations/et.json +4 -0
- homeassistant/components/http/translations/ga.json +4 -0
- homeassistant/components/http/translations/he.json +4 -0
- homeassistant/components/http/translations/it.json +4 -0
- homeassistant/components/http/translations/lt.json +4 -0
- homeassistant/components/http/translations/pt.json +4 -0
- homeassistant/components/http/translations/ru.json +3 -0
- homeassistant/components/http/translations/sk.json +4 -0
- homeassistant/components/http/translations/sr-Latn.json +7 -0
- homeassistant/components/http/translations/sv.json +4 -0
- homeassistant/components/http/translations/zh-Hans.json +4 -0
- homeassistant/components/http/translations/zh-Hant.json +4 -0
- homeassistant/components/huawei_lte/translations/bg.json +0 -6
- homeassistant/components/huawei_lte/translations/ca.json +0 -6
- homeassistant/components/huawei_lte/translations/cs.json +2 -2
- homeassistant/components/huawei_lte/translations/de.json +2 -2
- homeassistant/components/huawei_lte/translations/el.json +2 -2
- homeassistant/components/huawei_lte/translations/en-GB.json +2 -2
- homeassistant/components/huawei_lte/translations/en.json +2 -2
- homeassistant/components/huawei_lte/translations/es.json +2 -2
- homeassistant/components/huawei_lte/translations/et.json +2 -2
- homeassistant/components/huawei_lte/translations/fi.json +0 -6
- homeassistant/components/huawei_lte/translations/ga.json +0 -6
- homeassistant/components/huawei_lte/translations/hu.json +0 -6
- homeassistant/components/huawei_lte/translations/it.json +0 -6
- homeassistant/components/huawei_lte/translations/ja.json +0 -6
- homeassistant/components/huawei_lte/translations/ko.json +0 -6
- homeassistant/components/huawei_lte/translations/lt.json +2 -2
- homeassistant/components/huawei_lte/translations/nl.json +0 -6
- homeassistant/components/huawei_lte/translations/pt.json +2 -2
- homeassistant/components/huawei_lte/translations/ru.json +2 -2
- homeassistant/components/huawei_lte/translations/sk.json +2 -2
- homeassistant/components/huawei_lte/translations/tr.json +0 -6
- homeassistant/components/huawei_lte/translations/zh-Hans.json +2 -2
- homeassistant/components/huawei_lte/translations/zh-Hant.json +2 -2
- homeassistant/components/hue/translations/sv.json +1 -0
- homeassistant/components/humidifier/translations/bg.json +5 -1
- homeassistant/components/humidifier/translations/mk.json +18 -0
- homeassistant/components/humidifier/translations/pl.json +11 -4
- homeassistant/components/humidifier/translations/sr-Latn.json +3 -3
- homeassistant/components/husqvarna_automower/entity.py +7 -4
- homeassistant/components/husqvarna_automower/translations/bg.json +2 -0
- homeassistant/components/husqvarna_automower/translations/mk.json +14 -0
- homeassistant/components/husqvarna_automower/translations/sr-Latn.json +2 -2
- homeassistant/components/husqvarna_automower/translations/sv.json +3 -0
- homeassistant/components/husqvarna_automower_ble/translations/sv.json +22 -1
- homeassistant/components/huum/translations/vi.json +9 -0
- homeassistant/components/hydrawise/translations/mk.json +11 -0
- homeassistant/components/hyperion/camera.py +3 -1
- homeassistant/components/hyperion/translations/sv.json +1 -1
- homeassistant/components/icloud/translations/mk.json +17 -0
- homeassistant/components/icloud/translations/sv.json +2 -0
- homeassistant/components/ifttt/translations/mk.json +9 -0
- homeassistant/components/ihc/translations/mk.json +25 -0
- homeassistant/components/image/translations/mk.json +12 -0
- homeassistant/components/imeon_inverter/translations/sv.json +8 -0
- homeassistant/components/incomfort/translations/bg.json +1 -0
- homeassistant/components/incomfort/translations/sr-Latn.json +1 -1
- homeassistant/components/inels/translations/bg.json +1 -0
- homeassistant/components/inels/translations/ca.json +7 -0
- homeassistant/components/inels/translations/es.json +30 -0
- homeassistant/components/inels/translations/sr-Latn.json +1 -0
- homeassistant/components/inels/translations/sv.json +12 -0
- homeassistant/components/input_boolean/translations/bg.json +1 -0
- homeassistant/components/input_boolean/translations/cs.json +2 -2
- homeassistant/components/input_boolean/translations/mk.json +17 -0
- homeassistant/components/input_boolean/translations/pl.json +4 -0
- homeassistant/components/input_boolean/translations/sr-Latn.json +2 -2
- homeassistant/components/input_button/translations/mk.json +12 -0
- homeassistant/components/input_datetime/translations/mk.json +10 -0
- homeassistant/components/input_number/translations/mk.json +21 -0
- homeassistant/components/input_select/translations/mk.json +38 -0
- homeassistant/components/input_select/translations/vi.json +2 -0
- homeassistant/components/input_text/translations/mk.json +15 -0
- homeassistant/components/integration/translations/mk.json +9 -0
- homeassistant/components/iometer/translations/sr-Latn.json +7 -0
- homeassistant/components/iotawatt/translations/sv.json +1 -1
- homeassistant/components/iotty/translations/sv.json +3 -0
- homeassistant/components/iron_os/translations/bg.json +9 -1
- homeassistant/components/iron_os/translations/sr-Latn.json +5 -5
- homeassistant/components/iskra/translations/sv.json +2 -1
- homeassistant/components/isy994/translations/mk.json +14 -0
- homeassistant/components/isy994/translations/sv.json +2 -0
- homeassistant/components/ituran/binary_sensor.py +1 -2
- homeassistant/components/ituran/device_tracker.py +2 -4
- homeassistant/components/ituran/sensor.py +1 -2
- homeassistant/components/jewish_calendar/translations/es.json +6 -0
- homeassistant/components/jvc_projector/translations/sr-Latn.json +1 -1
- homeassistant/components/keba/translations/sv.json +1 -0
- homeassistant/components/keymitt_ble/translations/mk.json +11 -0
- homeassistant/components/kitchen_sink/translations/sv.json +3 -3
- homeassistant/components/knx/manifest.json +1 -1
- homeassistant/components/knx/storage/entity_store_schema.py +1 -1
- homeassistant/components/knx/translations/bg.json +94 -0
- homeassistant/components/knx/translations/ca.json +15 -0
- homeassistant/components/knx/translations/es.json +39 -8
- homeassistant/components/knx/translations/it.json +119 -2
- homeassistant/components/knx/translations/mk.json +13 -0
- homeassistant/components/knx/translations/pl.json +16 -0
- homeassistant/components/knx/translations/sr-Latn.json +44 -1
- homeassistant/components/knx/translations/sv.json +56 -5
- homeassistant/components/knx/translations/vi.json +29 -0
- homeassistant/components/kodi/translations/mk.json +11 -0
- homeassistant/components/lamarzocco/update.py +1 -1
- homeassistant/components/lametric/translations/es.json +1 -0
- homeassistant/components/lametric/translations/mk.json +16 -0
- homeassistant/components/lametric/translations/sv.json +4 -0
- homeassistant/components/laundrify/translations/mk.json +9 -0
- homeassistant/components/lawn_mower/translations/mk.json +7 -0
- homeassistant/components/lawn_mower/translations/sr-Latn.json +1 -1
- homeassistant/components/lcn/translations/mk.json +23 -1
- homeassistant/components/lg_thinq/sensor.py +1 -0
- homeassistant/components/lg_thinq/translations/bg.json +25 -3
- homeassistant/components/lg_thinq/translations/mk.json +13 -0
- homeassistant/components/lg_thinq/translations/pl.json +5 -0
- homeassistant/components/lg_thinq/translations/sr-Latn.json +16 -16
- homeassistant/components/lg_thinq/translations/sv.json +1 -0
- homeassistant/components/libre_hardware_monitor/translations/sv.json +4 -0
- homeassistant/components/lifx/translations/mk.json +7 -0
- homeassistant/components/light/translations/bg.json +7 -1
- homeassistant/components/light/translations/mk.json +3 -1
- homeassistant/components/light/translations/sr-Latn.json +3 -3
- homeassistant/components/light/translations/vi.json +25 -2
- homeassistant/components/litterrobot/manifest.json +1 -1
- homeassistant/components/litterrobot/translations/bg.json +3 -1
- homeassistant/components/litterrobot/translations/mk.json +12 -0
- homeassistant/components/litterrobot/translations/sr-Latn.json +2 -2
- homeassistant/components/lock/translations/he.json +1 -1
- homeassistant/components/lock/translations/vi.json +5 -1
- homeassistant/components/logbook/translations/mk.json +14 -0
- homeassistant/components/logger/translations/de.json +1 -1
- homeassistant/components/logger/translations/mk.json +11 -0
- homeassistant/components/london_underground/translations/he.json +1 -0
- homeassistant/components/lutron/translations/mk.json +13 -0
- homeassistant/components/lutron_caseta/translations/bg.json +2 -1
- homeassistant/components/lutron_caseta/translations/sr-Latn.json +2 -2
- homeassistant/components/lyric/translations/sv.json +4 -1
- homeassistant/components/mastodon/translations/mk.json +17 -0
- homeassistant/components/matrix/translations/bg.json +2 -1
- homeassistant/components/matrix/translations/mk.json +17 -0
- homeassistant/components/matrix/translations/sv.json +31 -0
- homeassistant/components/matter/translations/bg.json +12 -2
- homeassistant/components/matter/translations/cs.json +1 -1
- homeassistant/components/matter/translations/de.json +0 -3
- homeassistant/components/matter/translations/el.json +0 -3
- homeassistant/components/matter/translations/en-GB.json +0 -3
- homeassistant/components/matter/translations/en.json +1 -1
- homeassistant/components/matter/translations/es.json +26 -6
- homeassistant/components/matter/translations/et.json +0 -3
- homeassistant/components/matter/translations/he.json +0 -3
- homeassistant/components/matter/translations/it.json +40 -0
- homeassistant/components/matter/translations/lt.json +0 -3
- homeassistant/components/matter/translations/mk.json +19 -3
- homeassistant/components/matter/translations/pl.json +5 -0
- homeassistant/components/matter/translations/pt.json +0 -3
- homeassistant/components/matter/translations/ru.json +0 -3
- homeassistant/components/matter/translations/sk.json +0 -3
- homeassistant/components/matter/translations/sr-Latn.json +5 -5
- homeassistant/components/matter/translations/sv.json +10 -0
- homeassistant/components/matter/translations/zh-Hans.json +0 -3
- homeassistant/components/matter/translations/zh-Hant.json +0 -3
- homeassistant/components/mcp/translations/es.json +4 -0
- homeassistant/components/mcp/translations/sv.json +3 -0
- homeassistant/components/mcp_server/translations/lt.json +1 -1
- homeassistant/components/mealie/translations/mk.json +14 -0
- homeassistant/components/mealie/translations/sr-Latn.json +2 -1
- homeassistant/components/media_extractor/translations/mk.json +7 -0
- homeassistant/components/media_player/translations/bg.json +3 -0
- homeassistant/components/media_player/translations/mk.json +200 -2
- homeassistant/components/media_player/translations/sr-Latn.json +6 -6
- homeassistant/components/media_player/translations/vi.json +54 -1
- homeassistant/components/media_source/translations/mk.json +5 -0
- homeassistant/components/meteo_lt/weather.py +2 -2
- homeassistant/components/metoffice/translations/sr-Latn.json +3 -1
- homeassistant/components/microbees/translations/sv.json +3 -0
- homeassistant/components/miele/button.py +4 -3
- homeassistant/components/miele/climate.py +3 -2
- homeassistant/components/miele/coordinator.py +1 -1
- homeassistant/components/miele/fan.py +5 -2
- homeassistant/components/miele/light.py +3 -2
- homeassistant/components/miele/sensor.py +8 -2
- homeassistant/components/miele/services.py +4 -4
- homeassistant/components/miele/switch.py +5 -3
- homeassistant/components/miele/translations/bg.json +1 -0
- homeassistant/components/miele/translations/cs.json +1 -1
- homeassistant/components/miele/translations/de.json +1 -1
- homeassistant/components/miele/translations/en-GB.json +1 -1
- homeassistant/components/miele/translations/en.json +1 -1
- homeassistant/components/miele/translations/es.json +1 -1
- homeassistant/components/miele/translations/et.json +1 -1
- homeassistant/components/miele/translations/ga.json +1 -2
- homeassistant/components/miele/translations/hu.json +1 -2
- homeassistant/components/miele/translations/it.json +1 -2
- homeassistant/components/miele/translations/lt.json +1 -1
- homeassistant/components/miele/translations/mk.json +11 -0
- homeassistant/components/miele/translations/pt.json +1 -1
- homeassistant/components/miele/translations/sk.json +1 -1
- homeassistant/components/miele/translations/sr-Latn.json +3 -2
- homeassistant/components/miele/translations/sv.json +21 -2
- homeassistant/components/miele/translations/tr.json +1 -2
- homeassistant/components/miele/translations/vi.json +9 -0
- homeassistant/components/miele/translations/zh-Hans.json +1 -1
- homeassistant/components/miele/translations/zh-Hant.json +1 -1
- homeassistant/components/miele/vacuum.py +3 -2
- homeassistant/components/mill/manifest.json +1 -1
- homeassistant/components/minecraft_server/translations/mk.json +9 -0
- homeassistant/components/mjpeg/translations/sv.json +2 -0
- homeassistant/components/mobile_app/binary_sensor.py +6 -4
- homeassistant/components/mobile_app/sensor.py +6 -4
- homeassistant/components/mobile_app/translations/mk.json +11 -0
- homeassistant/components/modbus/translations/mk.json +11 -0
- homeassistant/components/modbus/translations/sv.json +2 -0
- homeassistant/components/monarch_money/translations/mk.json +9 -0
- homeassistant/components/monzo/translations/sv.json +3 -0
- homeassistant/components/motion_blinds/cover.py +1 -0
- homeassistant/components/motion_blinds/translations/sv.json +2 -1
- homeassistant/components/motionmount/translations/sr-Latn.json +4 -0
- homeassistant/components/motionmount/translations/sv.json +4 -1
- homeassistant/components/mqtt/translations/bg.json +4 -2
- homeassistant/components/mqtt/translations/es.json +4 -4
- homeassistant/components/mqtt/translations/he.json +2 -2
- homeassistant/components/mqtt/translations/mk.json +13 -1
- homeassistant/components/mqtt/translations/sr-Latn.json +2 -2
- homeassistant/components/mqtt/translations/sv.json +50 -10
- homeassistant/components/mqtt/translations/vi.json +83 -7
- homeassistant/components/music_assistant/translations/mk.json +10 -0
- homeassistant/components/mutesync/translations/mk.json +9 -0
- homeassistant/components/myuplink/translations/mk.json +7 -0
- homeassistant/components/myuplink/translations/sv.json +3 -0
- homeassistant/components/nanoleaf/translations/sv.json +1 -1
- homeassistant/components/neato/translations/sv.json +3 -0
- homeassistant/components/nederlandse_spoorwegen/translations/bg.json +2 -1
- homeassistant/components/nederlandse_spoorwegen/translations/ca.json +7 -1
- homeassistant/components/nederlandse_spoorwegen/translations/pt.json +12 -1
- homeassistant/components/nederlandse_spoorwegen/translations/sv.json +3 -0
- homeassistant/components/nest/translations/sr-Latn.json +1 -0
- homeassistant/components/nest/translations/sv.json +3 -0
- homeassistant/components/netatmo/translations/mk.json +14 -0
- homeassistant/components/netatmo/translations/sv.json +3 -0
- homeassistant/components/nexia/translations/mk.json +14 -0
- homeassistant/components/nexia/translations/vi.json +12 -0
- homeassistant/components/nextdns/translations/bg.json +2 -1
- homeassistant/components/nextdns/translations/ca.json +7 -1
- homeassistant/components/nextdns/translations/it.json +1 -0
- homeassistant/components/nextdns/translations/sv.json +10 -1
- homeassistant/components/nina/translations/bg.json +0 -6
- homeassistant/components/nina/translations/es.json +40 -1
- homeassistant/components/nina/translations/sr-Latn.json +28 -0
- homeassistant/components/nina/translations/sv.json +14 -0
- homeassistant/components/nintendo_parental_controls/translations/bg.json +19 -0
- homeassistant/components/nintendo_parental_controls/translations/pt.json +27 -0
- homeassistant/components/nintendo_parental_controls/translations/sv.json +23 -0
- homeassistant/components/nobo_hub/translations/mk.json +11 -0
- homeassistant/components/nobo_hub/translations/vi.json +11 -0
- homeassistant/components/nordpool/translations/mk.json +14 -0
- homeassistant/components/notify/translations/mk.json +58 -0
- homeassistant/components/notify/translations/sv.json +1 -1
- homeassistant/components/ntfy/translations/mk.json +14 -0
- homeassistant/components/ntfy/translations/sv.json +1 -1
- homeassistant/components/nuki/translations/es.json +4 -0
- homeassistant/components/nuki/translations/ru.json +4 -0
- homeassistant/components/number/translations/mk.json +14 -1
- homeassistant/components/nut/translations/bg.json +1 -0
- homeassistant/components/nut/translations/mk.json +8 -0
- homeassistant/components/nut/translations/pl.json +6 -0
- homeassistant/components/nut/translations/sr-Latn.json +1 -1
- homeassistant/components/nws/translations/mk.json +10 -0
- homeassistant/components/octoprint/translations/es.json +16 -0
- homeassistant/components/ohme/translations/mk.json +5 -0
- homeassistant/components/ollama/translations/lt.json +1 -1
- homeassistant/components/ollama/translations/sr-Latn.json +6 -0
- homeassistant/components/ondilo_ico/translations/sv.json +3 -0
- homeassistant/components/onedrive/manifest.json +1 -1
- homeassistant/components/onedrive/translations/mk.json +9 -0
- homeassistant/components/onedrive/translations/sr-Latn.json +5 -0
- homeassistant/components/onedrive/translations/sv.json +3 -0
- homeassistant/components/onewire/manifest.json +1 -1
- homeassistant/components/onewire/translations/el.json +1 -1
- homeassistant/components/onewire/translations/en-GB.json +1 -1
- homeassistant/components/onewire/translations/en.json +1 -1
- homeassistant/components/onewire/translations/es.json +1 -1
- homeassistant/components/onewire/translations/et.json +1 -1
- homeassistant/components/onewire/translations/ga.json +0 -1
- homeassistant/components/onewire/translations/sv.json +0 -1
- homeassistant/components/onvif/translations/sv.json +1 -1
- homeassistant/components/open_router/manifest.json +1 -1
- homeassistant/components/open_router/translations/lt.json +1 -1
- homeassistant/components/open_router/translations/mk.json +3 -0
- homeassistant/components/openai_conversation/translations/lt.json +1 -1
- homeassistant/components/openrgb/translations/cs.json +1 -1
- homeassistant/components/openrgb/translations/de.json +1 -1
- homeassistant/components/openrgb/translations/es.json +1 -1
- homeassistant/components/openrgb/translations/pt.json +1 -1
- homeassistant/components/opentherm_gw/translations/mk.json +10 -0
- homeassistant/components/opentherm_gw/translations/vi.json +5 -0
- homeassistant/components/openweathermap/translations/sv.json +1 -1
- homeassistant/components/oralb/translations/bg.json +2 -0
- homeassistant/components/oralb/translations/es.json +1 -0
- homeassistant/components/oralb/translations/fr.json +41 -4
- homeassistant/components/osoenergy/translations/bg.json +6 -0
- homeassistant/components/osoenergy/translations/sr-Latn.json +2 -2
- homeassistant/components/overkiz/translations/lt.json +2 -1
- homeassistant/components/overkiz/translations/mk.json +11 -0
- homeassistant/components/overkiz/translations/pt.json +2 -1
- homeassistant/components/overkiz/translations/ru.json +2 -1
- homeassistant/components/overkiz/translations/vi.json +6 -0
- homeassistant/components/palazzetti/manifest.json +1 -1
- homeassistant/components/palazzetti/translations/mk.json +1 -0
- homeassistant/components/palazzetti/translations/sr-Latn.json +1 -1
- homeassistant/components/persistent_notification/translations/mk.json +15 -0
- homeassistant/components/person/translations/mk.json +7 -1
- homeassistant/components/pi_hole/translations/mk.json +14 -0
- homeassistant/components/playstation_network/translations/sr-Latn.json +3 -0
- homeassistant/components/plugwise/climate.py +86 -26
- homeassistant/components/plugwise/manifest.json +1 -1
- homeassistant/components/plugwise/strings.json +3 -0
- homeassistant/components/plugwise/translations/bg.json +9 -2
- homeassistant/components/plugwise/translations/cs.json +3 -0
- homeassistant/components/plugwise/translations/de.json +3 -0
- homeassistant/components/plugwise/translations/en-GB.json +3 -0
- homeassistant/components/plugwise/translations/en.json +3 -0
- homeassistant/components/plugwise/translations/es.json +3 -0
- homeassistant/components/plugwise/translations/et.json +3 -0
- homeassistant/components/plugwise/translations/ga.json +3 -0
- homeassistant/components/plugwise/translations/it.json +3 -0
- homeassistant/components/plugwise/translations/lt.json +3 -0
- homeassistant/components/plugwise/translations/mk.json +8 -0
- homeassistant/components/plugwise/translations/pt.json +3 -0
- homeassistant/components/plugwise/translations/sk.json +3 -0
- homeassistant/components/plugwise/translations/sr-Latn.json +3 -3
- homeassistant/components/plugwise/translations/sv.json +3 -0
- homeassistant/components/plugwise/translations/vi.json +6 -1
- homeassistant/components/plugwise/translations/zh-Hans.json +3 -0
- homeassistant/components/plugwise/translations/zh-Hant.json +3 -0
- homeassistant/components/point/translations/sv.json +3 -0
- homeassistant/components/pooldose/translations/bg.json +4 -0
- homeassistant/components/pooldose/translations/it.json +1 -0
- homeassistant/components/pooldose/translations/sr-Latn.json +4 -4
- homeassistant/components/pooldose/translations/sv.json +14 -1
- homeassistant/components/portainer/manifest.json +1 -1
- homeassistant/components/portainer/translations/bg.json +8 -1
- homeassistant/components/portainer/translations/ca.json +9 -1
- homeassistant/components/portainer/translations/mk.json +9 -0
- homeassistant/components/portainer/translations/pt.json +16 -1
- homeassistant/components/portainer/translations/sr-Latn.json +3 -1
- homeassistant/components/portainer/translations/sv.json +16 -3
- homeassistant/components/powerwall/translations/mk.json +9 -0
- homeassistant/components/probe_plus/translations/es.json +5 -0
- homeassistant/components/profiler/translations/mk.json +18 -0
- homeassistant/components/prusalink/translations/mk.json +9 -0
- homeassistant/components/ps4/translations/es.json +9 -1
- homeassistant/components/ps4/translations/sv.json +2 -2
- homeassistant/components/pterodactyl/translations/mk.json +7 -0
- homeassistant/components/pushbullet/translations/mk.json +9 -0
- homeassistant/components/qbittorrent/translations/mk.json +3 -0
- homeassistant/components/qbittorrent/translations/ru.json +4 -0
- homeassistant/components/qbus/translations/sr-Latn.json +5 -0
- homeassistant/components/qbus/translations/sv.json +7 -0
- homeassistant/components/qnap/translations/mk.json +7 -0
- homeassistant/components/rachio/translations/mk.json +23 -0
- homeassistant/components/rainbird/translations/mk.json +18 -0
- homeassistant/components/rainmachine/translations/mk.json +21 -0
- homeassistant/components/rainmachine/translations/pt.json +1 -0
- homeassistant/components/random/translations/sr-Latn.json +2 -1
- homeassistant/components/recorder/auto_repairs/statistics/schema.py +3 -0
- homeassistant/components/recorder/const.py +1 -1
- homeassistant/components/recorder/db_schema.py +1 -1
- homeassistant/components/recorder/migration.py +73 -4
- homeassistant/components/recorder/translations/mk.json +6 -0
- homeassistant/components/renault/translations/sr-Latn.json +1 -0
- homeassistant/components/renault/translations/vi.json +11 -0
- homeassistant/components/renson/translations/bg.json +2 -1
- homeassistant/components/renson/translations/mk.json +11 -0
- homeassistant/components/renson/translations/sr-Latn.json +4 -4
- homeassistant/components/reolink/manifest.json +1 -1
- homeassistant/components/reolink/translations/bg.json +34 -1
- homeassistant/components/reolink/translations/cs.json +1 -0
- homeassistant/components/reolink/translations/en-GB.json +1 -0
- homeassistant/components/reolink/translations/es.json +1 -0
- homeassistant/components/reolink/translations/et.json +1 -0
- homeassistant/components/reolink/translations/ga.json +1 -0
- homeassistant/components/reolink/translations/it.json +5 -0
- homeassistant/components/reolink/translations/lt.json +1 -0
- homeassistant/components/reolink/translations/mk.json +4 -0
- homeassistant/components/reolink/translations/pl.json +8 -7
- homeassistant/components/reolink/translations/pt.json +1 -0
- homeassistant/components/reolink/translations/sk.json +1 -0
- homeassistant/components/reolink/translations/sr-Latn.json +12 -12
- homeassistant/components/reolink/translations/sv.json +1 -1
- homeassistant/components/rfxtrx/translations/bg.json +1 -0
- homeassistant/components/rfxtrx/translations/sr-Latn.json +2 -2
- homeassistant/components/risco/translations/vi.json +8 -0
- homeassistant/components/roborock/translations/bg.json +3 -1
- homeassistant/components/roborock/translations/mk.json +3 -0
- homeassistant/components/roborock/translations/sr-Latn.json +2 -2
- homeassistant/components/roomba/translations/sv.json +1 -1
- homeassistant/components/roon/translations/sv.json +1 -1
- homeassistant/components/ruuvitag_ble/manifest.json +1 -1
- homeassistant/components/sabnzbd/translations/mk.json +9 -0
- homeassistant/components/satel_integra/translations/it.json +1 -0
- homeassistant/components/satel_integra/translations/pl.json +3 -3
- homeassistant/components/satel_integra/translations/sr-Latn.json +2 -1
- homeassistant/components/satel_integra/translations/sv.json +9 -2
- homeassistant/components/satel_integra/translations/vi.json +10 -0
- homeassistant/components/schedule/translations/vi.json +8 -1
- homeassistant/components/scrape/translations/mk.json +2 -1
- homeassistant/components/select/translations/mk.json +48 -0
- homeassistant/components/sensibo/translations/bg.json +72 -7
- homeassistant/components/sensibo/translations/mk.json +21 -0
- homeassistant/components/sensibo/translations/pl.json +2 -2
- homeassistant/components/sensibo/translations/sr-Latn.json +27 -27
- homeassistant/components/sensibo/translations/vi.json +26 -0
- homeassistant/components/sensor/translations/mk.json +6 -0
- homeassistant/components/sensor/translations/pl.json +2 -2
- homeassistant/components/senz/translations/sv.json +3 -0
- homeassistant/components/sfr_box/__init__.py +4 -0
- homeassistant/components/sfr_box/translations/pt.json +4 -0
- homeassistant/components/sftp_storage/translations/sv.json +1 -0
- homeassistant/components/shelly/translations/bg.json +2 -1
- homeassistant/components/shelly/translations/ca.json +4 -0
- homeassistant/components/shelly/translations/es.json +10 -3
- homeassistant/components/shelly/translations/mk.json +11 -0
- homeassistant/components/shelly/translations/pl.json +1 -1
- homeassistant/components/shelly/translations/pt.json +2 -1
- homeassistant/components/shelly/translations/sv.json +10 -3
- homeassistant/components/shopping_list/translations/mk.json +8 -0
- homeassistant/components/sia/translations/sv.json +6 -3
- homeassistant/components/simplisafe/translations/mk.json +11 -0
- homeassistant/components/siren/translations/mk.json +19 -0
- homeassistant/components/siren/translations/sr-Latn.json +1 -1
- homeassistant/components/skybell/translations/mk.json +9 -0
- homeassistant/components/slack/translations/sv.json +2 -0
- homeassistant/components/sleep_as_android/translations/sv.json +24 -0
- homeassistant/components/sleepiq/translations/bg.json +14 -0
- homeassistant/components/sleepiq/translations/sr-Latn.json +2 -2
- homeassistant/components/slide_local/translations/es.json +1 -1
- homeassistant/components/smappee/translations/sv.json +3 -0
- homeassistant/components/smarla/translations/sv.json +5 -0
- homeassistant/components/smartthings/manifest.json +1 -1
- homeassistant/components/smartthings/translations/bg.json +25 -2
- homeassistant/components/smartthings/translations/mk.json +15 -0
- homeassistant/components/smartthings/translations/sr-Latn.json +9 -9
- homeassistant/components/smartthings/translations/sv.json +6 -0
- homeassistant/components/smarttub/manifest.json +1 -1
- homeassistant/components/smarttub/translations/mk.json +9 -0
- homeassistant/components/sms/translations/sr-Latn.json +3 -0
- homeassistant/components/snapcast/translations/mk.json +10 -0
- homeassistant/components/snapcast/translations/sv.json +10 -0
- homeassistant/components/snips/translations/mk.json +18 -0
- homeassistant/components/snooz/translations/sv.json +1 -1
- homeassistant/components/solaredge/__init__.py +3 -0
- homeassistant/components/solaredge/config_flow.py +5 -2
- homeassistant/components/solaredge/translations/ca.json +22 -1
- homeassistant/components/solaredge/translations/ru.json +4 -2
- homeassistant/components/somfy_mylink/translations/es.json +3 -3
- homeassistant/components/somfy_mylink/translations/ru.json +2 -1
- homeassistant/components/songpal/translations/mk.json +11 -0
- homeassistant/components/sonos/translations/bg.json +7 -0
- homeassistant/components/sonos/translations/sr-Latn.json +1 -1
- homeassistant/components/soundtouch/__init__.py +10 -1
- homeassistant/components/spotify/translations/sv.json +3 -0
- homeassistant/components/sql/translations/bg.json +1 -2
- homeassistant/components/sql/translations/ca.json +2 -4
- homeassistant/components/sql/translations/cs.json +2 -2
- homeassistant/components/sql/translations/de.json +2 -2
- homeassistant/components/sql/translations/el.json +2 -4
- homeassistant/components/sql/translations/en-GB.json +2 -2
- homeassistant/components/sql/translations/en.json +2 -2
- homeassistant/components/sql/translations/es.json +29 -2
- homeassistant/components/sql/translations/et.json +2 -2
- homeassistant/components/sql/translations/fi.json +2 -4
- homeassistant/components/sql/translations/fr.json +2 -4
- homeassistant/components/sql/translations/ga.json +2 -4
- homeassistant/components/sql/translations/he.json +2 -4
- homeassistant/components/sql/translations/hu.json +2 -4
- homeassistant/components/sql/translations/id.json +2 -4
- homeassistant/components/sql/translations/ja.json +2 -4
- homeassistant/components/sql/translations/lt.json +2 -2
- homeassistant/components/sql/translations/mk.json +11 -0
- homeassistant/components/sql/translations/pl.json +2 -4
- homeassistant/components/sql/translations/pt-BR.json +2 -4
- homeassistant/components/sql/translations/pt.json +2 -2
- homeassistant/components/sql/translations/ru.json +2 -4
- homeassistant/components/sql/translations/sk.json +2 -2
- homeassistant/components/sql/translations/sl.json +2 -4
- homeassistant/components/sql/translations/sr-Latn.json +12 -0
- homeassistant/components/sql/translations/sv.json +16 -5
- homeassistant/components/sql/translations/tr.json +2 -4
- homeassistant/components/sql/translations/zh-Hans.json +2 -2
- homeassistant/components/sql/translations/zh-Hant.json +2 -2
- homeassistant/components/squeezebox/translations/es.json +63 -0
- homeassistant/components/squeezebox/translations/sr-Latn.json +8 -0
- homeassistant/components/squeezebox/translations/uk.json +5 -0
- homeassistant/components/starline/translations/mk.json +9 -0
- homeassistant/components/statistics/translations/sl.json +7 -0
- homeassistant/components/subaru/translations/sv.json +2 -0
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/__init__.py +2 -2
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/config_flow.py +2 -2
- homeassistant/components/sunricher_dali/const.py +5 -0
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/light.py +2 -2
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/manifest.json +3 -3
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/strings.json +4 -6
- homeassistant/components/sunricher_dali/translations/bg.json +18 -0
- homeassistant/components/sunricher_dali/translations/ca.json +11 -0
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/cs.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/de.json +5 -7
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/en-GB.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/en.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/es.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/et.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/ga.json +4 -6
- homeassistant/components/sunricher_dali/translations/it.json +27 -0
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/lt.json +5 -7
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/pt.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/sk.json +4 -6
- homeassistant/components/sunricher_dali/translations/sr-Latn.json +25 -0
- homeassistant/components/sunricher_dali/translations/sv.json +27 -0
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/zh-Hans.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/zh-Hant.json +4 -6
- homeassistant/components/{sunricher_dali_center → sunricher_dali}/types.py +2 -2
- homeassistant/components/swiss_public_transport/translations/mk.json +1 -0
- homeassistant/components/switch/translations/bg.json +10 -0
- homeassistant/components/switch/translations/mk.json +10 -0
- homeassistant/components/switch_as_x/translations/cs.json +1 -1
- homeassistant/components/switch_as_x/translations/es.json +4 -4
- homeassistant/components/switchbot_cloud/translations/mk.json +15 -0
- homeassistant/components/switchbot_cloud/translations/sv.json +2 -1
- homeassistant/components/synology_dsm/translations/mk.json +13 -0
- homeassistant/components/system_bridge/translations/es.json +1 -0
- homeassistant/components/system_bridge/translations/mk.json +12 -0
- homeassistant/components/system_bridge/translations/ru.json +1 -0
- homeassistant/components/system_log/translations/mk.json +14 -0
- homeassistant/components/systemmonitor/translations/sv.json +1 -1
- homeassistant/components/tado/translations/sv.json +2 -2
- homeassistant/components/tankerkoenig/translations/mk.json +9 -0
- homeassistant/components/tautulli/translations/sv.json +2 -1
- homeassistant/components/technove/translations/mk.json +1 -0
- homeassistant/components/telegram/translations/pt.json +6 -0
- homeassistant/components/telegram/translations/ru.json +6 -0
- homeassistant/components/telegram_bot/translations/bg.json +11 -0
- homeassistant/components/telegram_bot/translations/es.json +42 -7
- homeassistant/components/telegram_bot/translations/mk.json +95 -0
- homeassistant/components/telegram_bot/translations/ru.json +69 -0
- homeassistant/components/telegram_bot/translations/sv.json +19 -0
- homeassistant/components/telegram_bot/translations/vi.json +7 -0
- homeassistant/components/template/translations/es.json +11 -3
- homeassistant/components/template/translations/it.json +5 -0
- homeassistant/components/template/translations/mk.json +9 -0
- homeassistant/components/template/translations/sr-Latn.json +8 -0
- homeassistant/components/template/translations/sv.json +140 -40
- homeassistant/components/template/translations/vi.json +301 -10
- homeassistant/components/tesla_fleet/manifest.json +1 -1
- homeassistant/components/tesla_fleet/translations/bg.json +40 -0
- homeassistant/components/tesla_fleet/translations/mk.json +10 -0
- homeassistant/components/tesla_fleet/translations/sr-Latn.json +13 -8
- homeassistant/components/tesla_fleet/translations/sv.json +3 -0
- homeassistant/components/tesla_fleet/translations/vi.json +5 -0
- homeassistant/components/tesla_wall_connector/translations/mk.json +3 -0
- homeassistant/components/teslemetry/manifest.json +1 -1
- homeassistant/components/teslemetry/translations/bg.json +68 -3
- homeassistant/components/teslemetry/translations/mk.json +32 -1
- homeassistant/components/teslemetry/translations/sr-Latn.json +16 -16
- homeassistant/components/teslemetry/translations/sv.json +133 -2
- homeassistant/components/teslemetry/translations/vi.json +22 -0
- homeassistant/components/teslemetry/update.py +1 -1
- homeassistant/components/tessie/manifest.json +1 -1
- homeassistant/components/tessie/translations/bg.json +45 -0
- homeassistant/components/tessie/translations/es.json +3 -0
- homeassistant/components/tessie/translations/mk.json +10 -0
- homeassistant/components/tessie/translations/sr-Latn.json +9 -9
- homeassistant/components/tessie/translations/vi.json +5 -0
- homeassistant/components/text/translations/mk.json +23 -0
- homeassistant/components/thethingsnetwork/translations/sv.json +1 -0
- homeassistant/components/timer/translations/mk.json +27 -0
- homeassistant/components/timer/translations/sk.json +1 -1
- homeassistant/components/timer/translations/vi.json +29 -1
- homeassistant/components/todo/translations/mk.json +61 -0
- homeassistant/components/todo/translations/vi.json +102 -1
- homeassistant/components/todoist/translations/mk.json +11 -0
- homeassistant/components/todoist/translations/vi.json +76 -1
- homeassistant/components/togrill/translations/pl.json +5 -0
- homeassistant/components/togrill/translations/sr-Latn.json +3 -0
- homeassistant/components/tomorrowio/translations/sv.json +2 -1
- homeassistant/components/toon/translations/sv.json +3 -0
- homeassistant/components/tplink/climate.py +8 -9
- homeassistant/components/tplink/translations/mk.json +6 -0
- homeassistant/components/tplink/translations/sr-Latn.json +3 -0
- homeassistant/components/traccar_server/translations/ca.json +6 -0
- homeassistant/components/traccar_server/translations/mk.json +7 -0
- homeassistant/components/traccar_server/translations/pt.json +10 -0
- homeassistant/components/trafikverket_camera/translations/mk.json +21 -0
- homeassistant/components/transmission/translations/bg.json +10 -0
- homeassistant/components/transmission/translations/mk.json +9 -0
- homeassistant/components/transmission/translations/pt.json +25 -0
- homeassistant/components/transmission/translations/ru.json +1 -0
- homeassistant/components/transmission/translations/sv.json +24 -0
- homeassistant/components/tts/translations/mk.json +11 -0
- homeassistant/components/tuya/manifest.json +1 -1
- homeassistant/components/tuya/translations/bg.json +10 -2
- homeassistant/components/tuya/translations/mk.json +27 -1
- homeassistant/components/tuya/translations/pl.json +3 -0
- homeassistant/components/tuya/translations/pt.json +12 -0
- homeassistant/components/tuya/translations/sr-Latn.json +5 -5
- homeassistant/components/tuya/translations/sv.json +3 -0
- homeassistant/components/twinkly/translations/bg.json +9 -0
- homeassistant/components/twinkly/translations/sr-Latn.json +1 -1
- homeassistant/components/twitch/translations/mk.json +13 -0
- homeassistant/components/ukraine_alarm/__init__.py +63 -0
- homeassistant/components/ukraine_alarm/config_flow.py +2 -2
- homeassistant/components/ukraine_alarm/strings.json +9 -3
- homeassistant/components/ukraine_alarm/translations/bg.json +9 -6
- homeassistant/components/ukraine_alarm/translations/ca.json +3 -6
- homeassistant/components/ukraine_alarm/translations/cs.json +9 -3
- homeassistant/components/ukraine_alarm/translations/de.json +9 -3
- homeassistant/components/ukraine_alarm/translations/el.json +3 -6
- homeassistant/components/ukraine_alarm/translations/en-GB.json +9 -3
- homeassistant/components/ukraine_alarm/translations/en.json +9 -3
- homeassistant/components/ukraine_alarm/translations/es.json +9 -3
- homeassistant/components/ukraine_alarm/translations/et.json +6 -0
- homeassistant/components/ukraine_alarm/translations/fi.json +3 -6
- homeassistant/components/ukraine_alarm/translations/fr.json +3 -6
- homeassistant/components/ukraine_alarm/translations/ga.json +3 -6
- homeassistant/components/ukraine_alarm/translations/hu.json +3 -6
- homeassistant/components/ukraine_alarm/translations/id.json +3 -6
- homeassistant/components/ukraine_alarm/translations/it.json +1 -8
- homeassistant/components/ukraine_alarm/translations/ja.json +3 -6
- homeassistant/components/ukraine_alarm/translations/ko.json +3 -6
- homeassistant/components/ukraine_alarm/translations/lt.json +9 -3
- homeassistant/components/ukraine_alarm/translations/nb.json +3 -6
- homeassistant/components/ukraine_alarm/translations/nl.json +3 -6
- homeassistant/components/ukraine_alarm/translations/pl.json +3 -6
- homeassistant/components/ukraine_alarm/translations/pt-BR.json +3 -6
- homeassistant/components/ukraine_alarm/translations/pt.json +9 -3
- homeassistant/components/ukraine_alarm/translations/ro.json +3 -6
- homeassistant/components/ukraine_alarm/translations/ru.json +3 -6
- homeassistant/components/ukraine_alarm/translations/sk.json +9 -3
- homeassistant/components/ukraine_alarm/translations/sv.json +3 -6
- homeassistant/components/ukraine_alarm/translations/tr.json +3 -6
- homeassistant/components/ukraine_alarm/translations/uk.json +3 -6
- homeassistant/components/ukraine_alarm/translations/zh-Hans.json +9 -3
- homeassistant/components/ukraine_alarm/translations/zh-Hant.json +9 -3
- homeassistant/components/unifiprotect/translations/vi.json +7 -0
- homeassistant/components/update/translations/mk.json +3 -0
- homeassistant/components/update/translations/sr-Latn.json +1 -0
- homeassistant/components/usb/utils.py +22 -23
- homeassistant/components/utility_meter/manifest.json +1 -1
- homeassistant/components/utility_meter/translations/mk.json +20 -0
- homeassistant/components/vacuum/translations/sr-Latn.json +1 -1
- homeassistant/components/vallox/translations/mk.json +13 -0
- homeassistant/components/vegehub/translations/sr-Latn.json +7 -0
- homeassistant/components/velux/translations/cs.json +1 -1
- homeassistant/components/velux/translations/de.json +1 -1
- homeassistant/components/velux/translations/el.json +0 -1
- homeassistant/components/velux/translations/en-GB.json +1 -1
- homeassistant/components/velux/translations/en.json +1 -1
- homeassistant/components/velux/translations/es.json +1 -1
- homeassistant/components/velux/translations/et.json +1 -1
- homeassistant/components/velux/translations/fi.json +0 -1
- homeassistant/components/velux/translations/fr.json +0 -1
- homeassistant/components/velux/translations/ga.json +0 -1
- homeassistant/components/velux/translations/gl.json +0 -1
- homeassistant/components/velux/translations/hu.json +0 -1
- homeassistant/components/velux/translations/it.json +0 -1
- homeassistant/components/velux/translations/ja.json +0 -1
- homeassistant/components/velux/translations/ko.json +0 -1
- homeassistant/components/velux/translations/lt.json +1 -1
- homeassistant/components/velux/translations/nl.json +0 -1
- homeassistant/components/velux/translations/pt.json +1 -1
- homeassistant/components/velux/translations/ru.json +0 -1
- homeassistant/components/velux/translations/sk.json +1 -1
- homeassistant/components/velux/translations/sv.json +7 -1
- homeassistant/components/velux/translations/tr.json +0 -1
- homeassistant/components/velux/translations/uk.json +0 -1
- homeassistant/components/velux/translations/vi.json +0 -1
- homeassistant/components/velux/translations/zh-Hans.json +1 -1
- homeassistant/components/velux/translations/zh-Hant.json +1 -1
- homeassistant/components/vesync/humidifier.py +3 -1
- homeassistant/components/vesync/manifest.json +1 -1
- homeassistant/components/vesync/strings.json +11 -0
- homeassistant/components/vesync/translations/bg.json +18 -0
- homeassistant/components/vesync/translations/cs.json +11 -0
- homeassistant/components/vesync/translations/de.json +11 -0
- homeassistant/components/vesync/translations/en-GB.json +11 -0
- homeassistant/components/vesync/translations/en.json +11 -0
- homeassistant/components/vesync/translations/es.json +11 -0
- homeassistant/components/vesync/translations/et.json +11 -0
- homeassistant/components/vesync/translations/ga.json +11 -0
- homeassistant/components/vesync/translations/he.json +11 -0
- homeassistant/components/vesync/translations/it.json +11 -0
- homeassistant/components/vesync/translations/lt.json +11 -0
- homeassistant/components/vesync/translations/mk.json +11 -0
- homeassistant/components/vesync/translations/pt.json +11 -0
- homeassistant/components/vesync/translations/sk.json +11 -0
- homeassistant/components/vesync/translations/sr-Latn.json +2 -2
- homeassistant/components/vesync/translations/sv.json +11 -0
- homeassistant/components/vesync/translations/zh-Hans.json +11 -0
- homeassistant/components/vesync/translations/zh-Hant.json +11 -0
- homeassistant/components/voip/translations/sv.json +1 -1
- homeassistant/components/volvo/translations/bg.json +5 -0
- homeassistant/components/volvo/translations/cs.json +5 -0
- homeassistant/components/volvo/translations/en-GB.json +5 -0
- homeassistant/components/volvo/translations/es.json +11 -0
- homeassistant/components/volvo/translations/ga.json +5 -0
- homeassistant/components/volvo/translations/it.json +5 -0
- homeassistant/components/volvo/translations/lt.json +5 -0
- homeassistant/components/volvo/translations/mk.json +9 -0
- homeassistant/components/volvo/translations/pt.json +5 -0
- homeassistant/components/volvo/translations/sk.json +5 -0
- homeassistant/components/volvo/translations/sr-Latn.json +8 -0
- homeassistant/components/volvo/translations/sv.json +37 -1
- homeassistant/components/volvo/translations/vi.json +1 -0
- homeassistant/components/wallbox/translations/bg.json +2 -1
- homeassistant/components/wallbox/translations/sr-Latn.json +1 -1
- homeassistant/components/water_heater/translations/bg.json +5 -0
- homeassistant/components/water_heater/translations/sr-Latn.json +3 -3
- homeassistant/components/watergate/translations/mk.json +15 -0
- homeassistant/components/weather/translations/mk.json +11 -1
- homeassistant/components/weather/translations/sv.json +1 -1
- homeassistant/components/weatherflow/translations/sv.json +1 -1
- homeassistant/components/webostv/translations/mk.json +12 -0
- homeassistant/components/webostv/translations/sv.json +3 -3
- homeassistant/components/weheat/translations/pl.json +1 -0
- homeassistant/components/weheat/translations/sv.json +3 -0
- homeassistant/components/wemo/translations/mk.json +11 -0
- homeassistant/components/wemo/translations/pl.json +10 -0
- homeassistant/components/whirlpool/translations/bg.json +22 -0
- homeassistant/components/whirlpool/translations/ca.json +30 -0
- homeassistant/components/whirlpool/translations/es.json +81 -0
- homeassistant/components/whirlpool/translations/mk.json +3 -0
- homeassistant/components/whirlpool/translations/pl.json +3 -0
- homeassistant/components/whirlpool/translations/sv.json +66 -0
- homeassistant/components/wilight/translations/mk.json +25 -0
- homeassistant/components/withings/translations/sv.json +4 -1
- homeassistant/components/wolflink/translations/bg.json +1 -0
- homeassistant/components/wolflink/translations/sr-Latn.json +2 -2
- homeassistant/components/workday/manifest.json +1 -1
- homeassistant/components/workday/translations/vi.json +5 -0
- homeassistant/components/wyoming/translations/bg.json +2 -1
- homeassistant/components/wyoming/translations/sr-Latn.json +1 -1
- homeassistant/components/xbox/coordinator.py +18 -2
- homeassistant/components/xbox/translations/bg.json +36 -0
- homeassistant/components/xbox/translations/es.json +22 -1
- homeassistant/components/xbox/translations/mk.json +7 -0
- homeassistant/components/xbox/translations/pt.json +11 -0
- homeassistant/components/xbox/translations/sr-Latn.json +1 -0
- homeassistant/components/xbox/translations/sv.json +47 -2
- homeassistant/components/xiaomi_aqara/translations/sr-Latn.json +3 -0
- homeassistant/components/xiaomi_ble/translations/mk.json +19 -0
- homeassistant/components/xiaomi_miio/translations/bg.json +5 -0
- homeassistant/components/xiaomi_miio/translations/mk.json +114 -0
- homeassistant/components/xiaomi_miio/translations/pt.json +4 -2
- homeassistant/components/xiaomi_miio/translations/ru.json +4 -2
- homeassistant/components/xiaomi_miio/translations/sr-Latn.json +1 -1
- homeassistant/components/xiaomi_miio/translations/sv.json +2 -1
- homeassistant/components/yale/translations/sv.json +3 -0
- homeassistant/components/yale_smart_alarm/translations/bg.json +4 -1
- homeassistant/components/yale_smart_alarm/translations/sr-Latn.json +1 -1
- homeassistant/components/yamaha_musiccast/translations/bg.json +5 -0
- homeassistant/components/yamaha_musiccast/translations/sr-Latn.json +1 -1
- homeassistant/components/yardian/translations/bg.json +7 -0
- homeassistant/components/yardian/translations/es.json +16 -0
- homeassistant/components/yardian/translations/mk.json +11 -0
- homeassistant/components/yeelight/translations/bg.json +5 -0
- homeassistant/components/yeelight/translations/mk.json +1 -0
- homeassistant/components/yeelight/translations/sr-Latn.json +1 -1
- homeassistant/components/yolink/translations/bg.json +4 -2
- homeassistant/components/yolink/translations/mk.json +5 -0
- homeassistant/components/yolink/translations/sr-Latn.json +2 -2
- homeassistant/components/yolink/translations/sv.json +16 -0
- homeassistant/components/zha/__init__.py +16 -1
- homeassistant/components/zha/config_flow.py +237 -63
- homeassistant/components/zha/manifest.json +1 -1
- homeassistant/components/zha/radio_manager.py +3 -2
- homeassistant/components/zha/strings.json +68 -15
- homeassistant/components/zha/translations/bg.json +52 -3
- homeassistant/components/zha/translations/ca.json +0 -3
- homeassistant/components/zha/translations/cs.json +68 -15
- homeassistant/components/zha/translations/da.json +0 -3
- homeassistant/components/zha/translations/de.json +68 -15
- homeassistant/components/zha/translations/el.json +0 -3
- homeassistant/components/zha/translations/en-GB.json +68 -15
- homeassistant/components/zha/translations/en.json +68 -15
- homeassistant/components/zha/translations/es.json +119 -18
- homeassistant/components/zha/translations/et.json +68 -15
- homeassistant/components/zha/translations/fi.json +0 -3
- homeassistant/components/zha/translations/fr.json +0 -18
- homeassistant/components/zha/translations/ga.json +67 -2
- homeassistant/components/zha/translations/gsw.json +0 -3
- homeassistant/components/zha/translations/hu.json +0 -3
- homeassistant/components/zha/translations/id.json +0 -3
- homeassistant/components/zha/translations/it.json +67 -2
- homeassistant/components/zha/translations/ja.json +0 -3
- homeassistant/components/zha/translations/ko.json +0 -9
- homeassistant/components/zha/translations/lt.json +68 -15
- homeassistant/components/zha/translations/mk.json +39 -0
- homeassistant/components/zha/translations/nb.json +0 -3
- homeassistant/components/zha/translations/nl.json +0 -3
- homeassistant/components/zha/translations/pl.json +25 -5
- homeassistant/components/zha/translations/pt-BR.json +0 -3
- homeassistant/components/zha/translations/pt.json +115 -16
- homeassistant/components/zha/translations/ro.json +0 -3
- homeassistant/components/zha/translations/ru.json +38 -16
- homeassistant/components/zha/translations/sk.json +68 -15
- homeassistant/components/zha/translations/sl.json +0 -9
- homeassistant/components/zha/translations/sr-Latn.json +58 -10
- homeassistant/components/zha/translations/sv.json +55 -3
- homeassistant/components/zha/translations/tr.json +0 -3
- homeassistant/components/zha/translations/uk.json +3 -3
- homeassistant/components/zha/translations/vi.json +10 -0
- homeassistant/components/zha/translations/zh-Hans.json +68 -15
- homeassistant/components/zha/translations/zh-Hant.json +68 -15
- homeassistant/components/zwave_js/translations/es.json +3 -0
- homeassistant/components/zwave_js/translations/mk.json +20 -0
- homeassistant/components/zwave_js/translations/pl.json +93 -0
- homeassistant/components/zwave_js/translations/sr-Latn.json +6 -0
- homeassistant/components/zwave_js/translations/sv.json +18 -2
- homeassistant/config_entries.py +9 -7
- homeassistant/const.py +1 -1
- homeassistant/data_entry_flow.py +49 -35
- homeassistant/generated/config_flows.py +1 -1
- homeassistant/generated/integrations.json +2 -7
- homeassistant/package_constraints.txt +3 -3
- homeassistant/util/language.py +17 -7
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/METADATA +2 -2
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/RECORD +1168 -1048
- homeassistant/components/enmax/__init__.py +0 -1
- homeassistant/components/enmax/manifest.json +0 -6
- homeassistant/components/sunricher_dali_center/const.py +0 -5
- homeassistant/components/sunricher_dali_center/translations/it.json +0 -11
- homeassistant/components/sunricher_dali_center/translations/sr-Latn.json +0 -11
- /homeassistant/components/{sunricher_dali_center → sunricher_dali}/quality_scale.yaml +0 -0
- /homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/el.json +0 -0
- /homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/he.json +0 -0
- /homeassistant/components/{sunricher_dali_center → sunricher_dali}/translations/nl.json +0 -0
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/WHEEL +0 -0
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/entry_points.txt +0 -0
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/licenses/LICENSE.md +0 -0
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
- {homeassistant-2025.11.0b2.dist-info → homeassistant-2025.11.2.dist-info}/top_level.txt +0 -0
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"config": {
|
|
3
3
|
"abort": {
|
|
4
4
|
"already_configured": "El dispositiu ja est\u00e0 configurat",
|
|
5
|
-
"reauth_successful": "Re-autenticaci\u00f3 realitzada correctament"
|
|
5
|
+
"reauth_successful": "Re-autenticaci\u00f3 realitzada correctament",
|
|
6
|
+
"reconfigure_successful": "Reconfiguraci\u00f3 realitzada correctament"
|
|
6
7
|
},
|
|
7
8
|
"error": {
|
|
8
9
|
"cannot_connect": "Ha fallat la connexi\u00f3",
|
|
@@ -16,6 +17,13 @@
|
|
|
16
17
|
"api_token": "Token d'API"
|
|
17
18
|
}
|
|
18
19
|
},
|
|
20
|
+
"reconfigure": {
|
|
21
|
+
"data": {
|
|
22
|
+
"api_token": "Token d'API",
|
|
23
|
+
"url": "URL",
|
|
24
|
+
"verify_ssl": "Verifica el certificat SSL"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
19
27
|
"user": {
|
|
20
28
|
"data": {
|
|
21
29
|
"api_token": "Token d'API",
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"config": {
|
|
3
3
|
"abort": {
|
|
4
4
|
"already_configured": "Dispositivo j\u00e1 configurado",
|
|
5
|
-
"reauth_successful": "Reautentica\u00e7\u00e3o bem sucedida"
|
|
5
|
+
"reauth_successful": "Reautentica\u00e7\u00e3o bem sucedida",
|
|
6
|
+
"reconfigure_successful": "A reconfigura\u00e7\u00e3o foi bem sucedida"
|
|
6
7
|
},
|
|
7
8
|
"error": {
|
|
8
9
|
"cannot_connect": "A liga\u00e7\u00e3o falhou",
|
|
@@ -20,6 +21,20 @@
|
|
|
20
21
|
},
|
|
21
22
|
"description": "O token de acesso da sua inst\u00e2ncia do Portainer precisa de ser autenticado novamente. Pode criar um novo token de acesso na interface do utilizador do Portainer. Aceda a **A minha conta > Tokens de acesso** e selecione **Adicionar token de acesso**"
|
|
22
23
|
},
|
|
24
|
+
"reconfigure": {
|
|
25
|
+
"data": {
|
|
26
|
+
"api_token": "Token API",
|
|
27
|
+
"url": "URL",
|
|
28
|
+
"verify_ssl": "Verificar o certificado SSL"
|
|
29
|
+
},
|
|
30
|
+
"data_description": {
|
|
31
|
+
"api_token": "O token de acesso \u00e0 API para autentica\u00e7\u00e3o com o Portainer",
|
|
32
|
+
"url": "O URL, incluindo a porta, da sua inst\u00e2ncia Portainer",
|
|
33
|
+
"verify_ssl": "Se deve verificar os certificados SSL. Desativar apenas se tiver um certificado auto-assinado"
|
|
34
|
+
},
|
|
35
|
+
"description": "Utilize o seguinte formul\u00e1rio para reconfigurar a sua inst\u00e2ncia Portainer.",
|
|
36
|
+
"title": "Reconfigurar a integra\u00e7\u00e3o do Portainer"
|
|
37
|
+
},
|
|
23
38
|
"user": {
|
|
24
39
|
"data": {
|
|
25
40
|
"api_token": "Token API",
|
|
@@ -14,7 +14,9 @@
|
|
|
14
14
|
"api_token": "API pristupni token za autentifikaciju sa Portainer\u2011om",
|
|
15
15
|
"url": "URL, uklju\u010duju\u0107i port, tvoje Portainer instance",
|
|
16
16
|
"verify_ssl": "Da li da se verifikuju SSL sertifikati. Onemogu\u0107i samo ako ima\u0161 samopotpisani sertifikat."
|
|
17
|
-
}
|
|
17
|
+
},
|
|
18
|
+
"description": "Upotrebite slede\u0107i obrazac da ponovo konfiguri\u0161ete svoju Portainer instancu.",
|
|
19
|
+
"title": "Ponovo konfiguri\u0161i Portainer integraciju"
|
|
18
20
|
},
|
|
19
21
|
"user": {
|
|
20
22
|
"data": {
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"config": {
|
|
3
3
|
"abort": {
|
|
4
4
|
"already_configured": "Enheten \u00e4r redan konfigurerad",
|
|
5
|
-
"reauth_successful": "\u00c5terautentisering lyckades"
|
|
5
|
+
"reauth_successful": "\u00c5terautentisering lyckades",
|
|
6
|
+
"reconfigure_successful": "Omkonfigureringen lyckades"
|
|
6
7
|
},
|
|
7
8
|
"error": {
|
|
8
9
|
"cannot_connect": "Misslyckades med att ansluta",
|
|
@@ -20,6 +21,18 @@
|
|
|
20
21
|
},
|
|
21
22
|
"description": "\u00c5tkomsttoken f\u00f6r din Portainerinstans m\u00e5ste autentiseras p\u00e5 nytt. Du kan skapa en ny \u00e5tkomsttoken i Portainergr\u00e4nssnittet. G\u00e5 till **Mitt konto > \u00c5tkomsttokens** och v\u00e4lj **L\u00e4gg till \u00e5tkomsttoken**"
|
|
22
23
|
},
|
|
24
|
+
"reconfigure": {
|
|
25
|
+
"data": {
|
|
26
|
+
"api_token": "API-token",
|
|
27
|
+
"url": "URL",
|
|
28
|
+
"verify_ssl": "Verifiera SSL-certifikat"
|
|
29
|
+
},
|
|
30
|
+
"data_description": {
|
|
31
|
+
"api_token": "API \u00e5tkomsttoken f\u00f6r autentisering med Portainer",
|
|
32
|
+
"url": "URL:en, inklusive porten, f\u00f6r din Portainer instans",
|
|
33
|
+
"verify_ssl": "Huruvida SSL certifikat ska verifieras. Inaktivera endast om du har ett sj\u00e4lvsignerat certifikat."
|
|
34
|
+
}
|
|
35
|
+
},
|
|
23
36
|
"user": {
|
|
24
37
|
"data": {
|
|
25
38
|
"api_token": "API token",
|
|
@@ -72,10 +85,10 @@
|
|
|
72
85
|
"name": "Docker version"
|
|
73
86
|
},
|
|
74
87
|
"image": {
|
|
75
|
-
"name": "
|
|
88
|
+
"name": "Avbildning"
|
|
76
89
|
},
|
|
77
90
|
"images_count": {
|
|
78
|
-
"name": "
|
|
91
|
+
"name": "Antal avbildningar"
|
|
79
92
|
},
|
|
80
93
|
"kernel_version": {
|
|
81
94
|
"name": "K\u00e4rnversion"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"services": {
|
|
3
|
+
"memory": {
|
|
4
|
+
"fields": {
|
|
5
|
+
"seconds": {
|
|
6
|
+
"name": "\u0421\u0435\u043a\u0443\u043d\u0434\u0438"
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
"start": {
|
|
11
|
+
"fields": {
|
|
12
|
+
"seconds": {
|
|
13
|
+
"name": "\u0421\u0435\u043a\u0443\u043d\u0434\u0438"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
"abort": {
|
|
4
4
|
"already_configured": "El dispositivo ya est\u00e1 configurado",
|
|
5
5
|
"credential_error": "Error al obtener las credenciales.",
|
|
6
|
-
"no_devices_found": "No se encontraron dispositivos en la red"
|
|
6
|
+
"no_devices_found": "No se encontraron dispositivos en la red",
|
|
7
|
+
"port_987_bind_error": "No se pudo enlazar con el puerto 987. Consulta la [documentaci\u00f3n]({ps4_docs_url}) para obtener informaci\u00f3n adicional.",
|
|
8
|
+
"port_997_bind_error": "No se pudo enlazar con el puerto 997. Consulta la [documentaci\u00f3n]({ps4_docs_url}) para obtener informaci\u00f3n adicional."
|
|
7
9
|
},
|
|
8
10
|
"error": {
|
|
9
11
|
"cannot_connect": "No se pudo conectar",
|
|
@@ -13,6 +15,12 @@
|
|
|
13
15
|
},
|
|
14
16
|
"step": {
|
|
15
17
|
"creds": {
|
|
18
|
+
"data": {
|
|
19
|
+
"token": "Token de PSN"
|
|
20
|
+
},
|
|
21
|
+
"data_description": {
|
|
22
|
+
"token": "Para obtener tu token de PSN, por favor, sigue estas [instrucciones]({ps4_docs_url})."
|
|
23
|
+
},
|
|
16
24
|
"description": "Credenciales necesarias. Pulsa **Enviar** y luego en la aplicaci\u00f3n PS4 Second Screen, actualiza los dispositivos y selecciona el dispositivo **Home-Assistant** para continuar."
|
|
17
25
|
},
|
|
18
26
|
"link": {
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
},
|
|
8
8
|
"error": {
|
|
9
9
|
"cannot_connect": "Det gick inte att ansluta",
|
|
10
|
-
"credential_timeout": "Autentiseringstj\u00e4nsten \u00f6verskred tidsgr\u00e4nsen. V\u00e4lj **
|
|
10
|
+
"credential_timeout": "Autentiseringstj\u00e4nsten \u00f6verskred tidsgr\u00e4nsen. V\u00e4lj **Bekr\u00e4fta** f\u00f6r att starta om.",
|
|
11
11
|
"login_failed": "Misslyckades med att parkoppla till PlayStation 4. Verifiera PIN-koden \u00e4r korrekt.",
|
|
12
12
|
"no_ipaddress": "Ange IP-adressen f\u00f6r det PlayStation 4 du vill konfigurera."
|
|
13
13
|
},
|
|
14
14
|
"step": {
|
|
15
15
|
"creds": {
|
|
16
|
-
"description": "Autentiseringsuppgifter beh\u00f6vs. Tryck p\u00e5 **
|
|
16
|
+
"description": "Autentiseringsuppgifter beh\u00f6vs. Tryck p\u00e5 **Bekr\u00e4fta** och sedan uppdatera enheter i appen \u201dPS4 Second Screen\u201d p\u00e5 din mobiltelefon eller surfplatta och v\u00e4lj **Home Assistant** enheten att forts\u00e4tta."
|
|
17
17
|
},
|
|
18
18
|
"link": {
|
|
19
19
|
"data": {
|
|
@@ -10,6 +10,9 @@
|
|
|
10
10
|
"connection_status": {
|
|
11
11
|
"name": "\u0421\u0442\u0430\u0442\u0443\u0441 \u043d\u0430 \u0432\u0440\u0441\u043a\u0430\u0442\u0430"
|
|
12
12
|
},
|
|
13
|
+
"current_status": {
|
|
14
|
+
"name": "\u0421\u0442\u0430\u0442\u0443\u0441"
|
|
15
|
+
},
|
|
13
16
|
"download_speed_limit": {
|
|
14
17
|
"name": "\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0443\u0432\u0430\u045a\u0435 \u043d\u0430 \u0431\u0440\u0437\u0438\u043d\u0430\u0442\u0430 \u043d\u0430 \u043f\u0440\u0435\u0437\u0435\u043c\u0430\u045a\u0435"
|
|
15
18
|
}
|
|
@@ -57,6 +57,10 @@
|
|
|
57
57
|
"download_speed_limit": {
|
|
58
58
|
"name": "\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438"
|
|
59
59
|
},
|
|
60
|
+
"errored_torrents": {
|
|
61
|
+
"name": "\u0422\u043e\u0440\u0440\u0435\u043d\u0442\u044b \u0441 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438",
|
|
62
|
+
"unit_of_measurement": "\u0442\u043e\u0440\u0440\u0435\u043d\u0442\u043e\u0432"
|
|
63
|
+
},
|
|
60
64
|
"global_ratio": {
|
|
61
65
|
"name": "\u041e\u0431\u0449\u0438\u0439 \u0440\u0435\u0439\u0442\u0438\u043d\u0433 \u0440\u0430\u0437\u0434\u0430\u0447\u0438"
|
|
62
66
|
},
|
|
@@ -16,6 +16,13 @@
|
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
|
+
"entity": {
|
|
20
|
+
"binary_sensor": {
|
|
21
|
+
"raining": {
|
|
22
|
+
"name": "Regnar"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
},
|
|
19
26
|
"exceptions": {
|
|
20
27
|
"invalid_preset": {
|
|
21
28
|
"message": "F\u00f6rinst\u00e4llt l\u00e4ge \"{preset}\" \u00e4r inte giltigt. Giltiga f\u00f6rinst\u00e4llningsl\u00e4gen \u00e4r: {options}."
|
|
@@ -5,5 +5,12 @@
|
|
|
5
5
|
"description": "\u041e\u0432\u043e\u0458 \u0441\u0435\u043d\u0437\u043e\u0440 \u043e\u0432\u043e\u0437\u043c\u043e\u0436\u0443\u0432\u0430 \u0434\u043e\u0431\u0438\u0432\u0430\u045a\u0435 \u0440\u0430\u0437\u043d\u0438 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u043e\u0434 \u0432\u0430\u0448\u0438\u043e\u0442 QNAP NAS."
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
+
},
|
|
9
|
+
"entity": {
|
|
10
|
+
"sensor": {
|
|
11
|
+
"status": {
|
|
12
|
+
"name": "\u0421\u0442\u0430\u0442\u0443\u0441"
|
|
13
|
+
}
|
|
14
|
+
}
|
|
8
15
|
}
|
|
9
16
|
}
|
|
@@ -5,5 +5,28 @@
|
|
|
5
5
|
"name": "\u0414\u043e\u0436\u0434"
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
+
},
|
|
9
|
+
"services": {
|
|
10
|
+
"pause_watering": {
|
|
11
|
+
"fields": {
|
|
12
|
+
"duration": {
|
|
13
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"start_multiple_zone_schedule": {
|
|
18
|
+
"fields": {
|
|
19
|
+
"duration": {
|
|
20
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"start_watering": {
|
|
25
|
+
"fields": {
|
|
26
|
+
"duration": {
|
|
27
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
8
31
|
}
|
|
9
32
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"services": {
|
|
3
|
+
"set_rain_delay": {
|
|
4
|
+
"fields": {
|
|
5
|
+
"duration": {
|
|
6
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
"start_irrigation": {
|
|
11
|
+
"fields": {
|
|
12
|
+
"duration": {
|
|
13
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"services": {
|
|
3
|
+
"pause_watering": {
|
|
4
|
+
"fields": {
|
|
5
|
+
"seconds": {
|
|
6
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
"push_flow_meter_data": {
|
|
11
|
+
"fields": {
|
|
12
|
+
"value": {
|
|
13
|
+
"name": "\u0412\u0440\u0435\u0434\u043d\u043e\u0441\u0442"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
},
|
|
3
17
|
"push_weather_data": {
|
|
4
18
|
"fields": {
|
|
5
19
|
"dewpoint": {
|
|
@@ -17,6 +31,13 @@
|
|
|
17
31
|
"name": "\u0411\u0430\u0440\u043e\u043c\u0435\u0442\u0430\u0440\u0441\u043a\u0438 \u043f\u0440\u0438\u0442\u0438\u0441\u043e\u043a"
|
|
18
32
|
}
|
|
19
33
|
}
|
|
34
|
+
},
|
|
35
|
+
"restrict_watering": {
|
|
36
|
+
"fields": {
|
|
37
|
+
"duration": {
|
|
38
|
+
"name": "\u0412\u0440\u0435\u043c\u0435\u0442\u0440\u0430\u0435\u045a\u0435"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
20
41
|
}
|
|
21
42
|
}
|
|
22
43
|
}
|
|
@@ -128,6 +128,7 @@
|
|
|
128
128
|
"name": "Dados do caudal\u00edmetro"
|
|
129
129
|
},
|
|
130
130
|
"push_weather_data": {
|
|
131
|
+
"description": "Envia dados meteorol\u00f3gicos do Home Assistant para o dispositivo RainMachine.\nO servi\u00e7o Local Weather Push deve ser ativado em Configura\u00e7\u00e3o > Meteorologia > separador Programador, para que o RainMachine considere os valores enviados. As unidades devem ser enviadas no sistema m\u00e9trico; n\u00e3o s\u00e3o efetuadas convers\u00f5es pela integra\u00e7\u00e3o.\nVeja os detalhes da API do RainMachine aqui: https://rainmachine.docs.apiary.io/#reference/weather-services/parserdata/post.",
|
|
131
132
|
"fields": {
|
|
132
133
|
"condition": {
|
|
133
134
|
"description": "C\u00f3digo do estado do tempo atual (WNUM).",
|
|
@@ -26,6 +26,9 @@ def validate_db_schema(instance: Recorder) -> set[str]:
|
|
|
26
26
|
schema_errors |= validate_table_schema_supports_utf8(
|
|
27
27
|
instance, StatisticsMeta, (StatisticsMeta.statistic_id,)
|
|
28
28
|
)
|
|
29
|
+
schema_errors |= validate_table_schema_has_correct_collation(
|
|
30
|
+
instance, StatisticsMeta
|
|
31
|
+
)
|
|
29
32
|
for table in (Statistics, StatisticsShortTerm):
|
|
30
33
|
schema_errors |= validate_db_schema_precision(instance, table)
|
|
31
34
|
schema_errors |= validate_table_schema_has_correct_collation(instance, table)
|
|
@@ -54,7 +54,7 @@ CONTEXT_ID_AS_BINARY_SCHEMA_VERSION = 36
|
|
|
54
54
|
EVENT_TYPE_IDS_SCHEMA_VERSION = 37
|
|
55
55
|
STATES_META_SCHEMA_VERSION = 38
|
|
56
56
|
CIRCULAR_MEAN_SCHEMA_VERSION = 49
|
|
57
|
-
UNIT_CLASS_SCHEMA_VERSION =
|
|
57
|
+
UNIT_CLASS_SCHEMA_VERSION = 52
|
|
58
58
|
|
|
59
59
|
LEGACY_STATES_EVENT_ID_INDEX_SCHEMA_VERSION = 28
|
|
60
60
|
LEGACY_STATES_EVENT_FOREIGN_KEYS_FIXED_SCHEMA_VERSION = 43
|
|
@@ -13,7 +13,15 @@ from typing import TYPE_CHECKING, Any, TypedDict, cast, final
|
|
|
13
13
|
from uuid import UUID
|
|
14
14
|
|
|
15
15
|
import sqlalchemy
|
|
16
|
-
from sqlalchemy import
|
|
16
|
+
from sqlalchemy import (
|
|
17
|
+
ForeignKeyConstraint,
|
|
18
|
+
MetaData,
|
|
19
|
+
Table,
|
|
20
|
+
cast as cast_,
|
|
21
|
+
func,
|
|
22
|
+
text,
|
|
23
|
+
update,
|
|
24
|
+
)
|
|
17
25
|
from sqlalchemy.engine import CursorResult, Engine
|
|
18
26
|
from sqlalchemy.exc import (
|
|
19
27
|
DatabaseError,
|
|
@@ -26,8 +34,9 @@ from sqlalchemy.exc import (
|
|
|
26
34
|
from sqlalchemy.orm import DeclarativeBase
|
|
27
35
|
from sqlalchemy.orm.session import Session
|
|
28
36
|
from sqlalchemy.schema import AddConstraint, CreateTable, DropConstraint
|
|
29
|
-
from sqlalchemy.sql.expression import true
|
|
37
|
+
from sqlalchemy.sql.expression import and_, true
|
|
30
38
|
from sqlalchemy.sql.lambdas import StatementLambdaElement
|
|
39
|
+
from sqlalchemy.types import BINARY
|
|
31
40
|
|
|
32
41
|
from homeassistant.core import HomeAssistant
|
|
33
42
|
from homeassistant.util.enum import try_parse_enum
|
|
@@ -2044,14 +2053,74 @@ class _SchemaVersion50Migrator(_SchemaVersionMigrator, target_version=50):
|
|
|
2044
2053
|
class _SchemaVersion51Migrator(_SchemaVersionMigrator, target_version=51):
|
|
2045
2054
|
def _apply_update(self) -> None:
|
|
2046
2055
|
"""Version specific update method."""
|
|
2047
|
-
#
|
|
2056
|
+
# Replaced with version 52 which corrects issues with MySQL string comparisons.
|
|
2057
|
+
|
|
2058
|
+
|
|
2059
|
+
class _SchemaVersion52Migrator(_SchemaVersionMigrator, target_version=52):
|
|
2060
|
+
def _apply_update(self) -> None:
|
|
2061
|
+
"""Version specific update method."""
|
|
2062
|
+
if self.engine.dialect.name == SupportedDialect.MYSQL:
|
|
2063
|
+
self._apply_update_mysql()
|
|
2064
|
+
else:
|
|
2065
|
+
self._apply_update_postgresql_sqlite()
|
|
2066
|
+
|
|
2067
|
+
def _apply_update_mysql(self) -> None:
|
|
2068
|
+
"""Version specific update method for mysql."""
|
|
2069
|
+
_add_columns(self.session_maker, "statistics_meta", ["unit_class VARCHAR(255)"])
|
|
2070
|
+
with session_scope(session=self.session_maker()) as session:
|
|
2071
|
+
connection = session.connection()
|
|
2072
|
+
for conv in _PRIMARY_UNIT_CONVERTERS:
|
|
2073
|
+
case_sensitive_units = {
|
|
2074
|
+
u.encode("utf-8") if u else u for u in conv.VALID_UNITS
|
|
2075
|
+
}
|
|
2076
|
+
# Reset unit_class to None for entries that do not match
|
|
2077
|
+
# the valid units (case sensitive) but matched before due to
|
|
2078
|
+
# case insensitive comparisons.
|
|
2079
|
+
connection.execute(
|
|
2080
|
+
update(StatisticsMeta)
|
|
2081
|
+
.where(
|
|
2082
|
+
and_(
|
|
2083
|
+
StatisticsMeta.unit_of_measurement.in_(conv.VALID_UNITS),
|
|
2084
|
+
cast_(StatisticsMeta.unit_of_measurement, BINARY).not_in(
|
|
2085
|
+
case_sensitive_units
|
|
2086
|
+
),
|
|
2087
|
+
)
|
|
2088
|
+
)
|
|
2089
|
+
.values(unit_class=None)
|
|
2090
|
+
)
|
|
2091
|
+
# Do an explicitly case sensitive match (actually binary) to set the
|
|
2092
|
+
# correct unit_class. This is needed because we use the case sensitive
|
|
2093
|
+
# utf8mb4_unicode_ci collation.
|
|
2094
|
+
connection.execute(
|
|
2095
|
+
update(StatisticsMeta)
|
|
2096
|
+
.where(
|
|
2097
|
+
and_(
|
|
2098
|
+
cast_(StatisticsMeta.unit_of_measurement, BINARY).in_(
|
|
2099
|
+
case_sensitive_units
|
|
2100
|
+
),
|
|
2101
|
+
StatisticsMeta.unit_class.is_(None),
|
|
2102
|
+
)
|
|
2103
|
+
)
|
|
2104
|
+
.values(unit_class=conv.UNIT_CLASS)
|
|
2105
|
+
)
|
|
2106
|
+
|
|
2107
|
+
def _apply_update_postgresql_sqlite(self) -> None:
|
|
2108
|
+
"""Version specific update method for postgresql and sqlite."""
|
|
2048
2109
|
_add_columns(self.session_maker, "statistics_meta", ["unit_class VARCHAR(255)"])
|
|
2049
2110
|
with session_scope(session=self.session_maker()) as session:
|
|
2050
2111
|
connection = session.connection()
|
|
2051
2112
|
for conv in _PRIMARY_UNIT_CONVERTERS:
|
|
2113
|
+
# Set the correct unit_class. Unlike MySQL, Postgres and SQLite
|
|
2114
|
+
# have case sensitive string comparisons by default, so we
|
|
2115
|
+
# can directly match on the valid units.
|
|
2052
2116
|
connection.execute(
|
|
2053
2117
|
update(StatisticsMeta)
|
|
2054
|
-
.where(
|
|
2118
|
+
.where(
|
|
2119
|
+
and_(
|
|
2120
|
+
StatisticsMeta.unit_of_measurement.in_(conv.VALID_UNITS),
|
|
2121
|
+
StatisticsMeta.unit_class.is_(None),
|
|
2122
|
+
)
|
|
2123
|
+
)
|
|
2055
2124
|
.values(unit_class=conv.UNIT_CLASS)
|
|
2056
2125
|
)
|
|
2057
2126
|
|
|
@@ -2,9 +2,15 @@
|
|
|
2
2
|
"services": {
|
|
3
3
|
"get_statistics": {
|
|
4
4
|
"fields": {
|
|
5
|
+
"end_time": {
|
|
6
|
+
"name": "\u0412\u0440\u0435\u043c\u0435 \u043d\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430\u045a\u0435"
|
|
7
|
+
},
|
|
5
8
|
"period": {
|
|
6
9
|
"name": "\u041f\u0435\u0440\u0438\u043e\u0434"
|
|
7
10
|
},
|
|
11
|
+
"start_time": {
|
|
12
|
+
"name": "\u0412\u0440\u0435\u043c\u0435 \u043d\u0430 \u0437\u0430\u043f\u043e\u0447\u043d\u0443\u0432\u0430\u045a\u0435"
|
|
13
|
+
},
|
|
8
14
|
"types": {
|
|
9
15
|
"description": "\u0412\u0438\u0434\u043e\u0432\u0438\u0442\u0435 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u043a\u0438 \u0432\u0440\u0435\u0434\u043d\u043e\u0441\u0442\u0438 \u0448\u0442\u043e \u0442\u0440\u0435\u0431\u0430 \u0434\u0430 \u0441\u0435 \u0432\u0440\u0430\u0442\u0430\u0442.",
|
|
10
16
|
"name": "\u0412\u0438\u0434\u043e\u0432\u0438"
|
|
@@ -7,12 +7,23 @@
|
|
|
7
7
|
}
|
|
8
8
|
},
|
|
9
9
|
"entity": {
|
|
10
|
+
"binary_sensor": {
|
|
11
|
+
"hvac_status": {
|
|
12
|
+
"name": "M\u00e1y \u0111i\u1ec1u h\u00f2a"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
10
15
|
"sensor": {
|
|
11
16
|
"charge_state": {
|
|
12
17
|
"state": {
|
|
13
18
|
"charge_in_progress": "\u0110ang s\u1ea1c"
|
|
14
19
|
}
|
|
15
20
|
},
|
|
21
|
+
"hvac_last_activity": {
|
|
22
|
+
"name": "Ho\u1ea1t \u0111\u1ed9ng m\u00e1y \u0111i\u1ec1u h\u00f2a g\u1ea7n \u0111\u00e2y nh\u1ea5t"
|
|
23
|
+
},
|
|
24
|
+
"hvac_soc_threshold": {
|
|
25
|
+
"name": "Ng\u01b0\u1ee1ng SoC m\u00e1y \u0111i\u1ec1u h\u00f2a"
|
|
26
|
+
},
|
|
16
27
|
"plug_state": {
|
|
17
28
|
"state": {
|
|
18
29
|
"plug_unknown": "Ph\u00edch c\u1eafm kh\u00f4ng x\u00e1c \u0111\u1ecbnh"
|
|
@@ -102,7 +102,8 @@
|
|
|
102
102
|
"level1": "\u041d\u0438\u0432\u043e 1",
|
|
103
103
|
"level2": "\u041d\u0438\u0432\u043e 2",
|
|
104
104
|
"level3": "\u041d\u0438\u0432\u043e 3",
|
|
105
|
-
"level4": "\u041d\u0438\u0432\u043e 4"
|
|
105
|
+
"level4": "\u041d\u0438\u0432\u043e 4",
|
|
106
|
+
"off": "\u0418\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u043e"
|
|
106
107
|
}
|
|
107
108
|
}
|
|
108
109
|
},
|