homeassistant 2025.12.0__py3-none-any.whl → 2025.12.0b1__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.
Files changed (985) hide show
  1. homeassistant/auth/permissions/events.py +0 -2
  2. homeassistant/components/acaia/translations/pl.json +1 -23
  3. homeassistant/components/accuweather/translations/tr.json +0 -19
  4. homeassistant/components/ai_task/translations/tr.json +0 -17
  5. homeassistant/components/airly/translations/sr-Latn.json +0 -7
  6. homeassistant/components/airnow/translations/sr-Latn.json +0 -3
  7. homeassistant/components/airobot/translations/bg.json +2 -1
  8. homeassistant/components/airobot/translations/cs.json +1 -1
  9. homeassistant/components/airobot/translations/de.json +1 -1
  10. homeassistant/components/airobot/translations/el.json +1 -4
  11. homeassistant/components/airobot/translations/en-GB.json +1 -1
  12. homeassistant/components/airobot/translations/en.json +1 -1
  13. homeassistant/components/airobot/translations/et.json +1 -1
  14. homeassistant/components/airobot/translations/lt.json +1 -1
  15. homeassistant/components/airobot/translations/nl.json +2 -1
  16. homeassistant/components/airobot/translations/pt.json +5 -1
  17. homeassistant/components/airobot/translations/sk.json +1 -1
  18. homeassistant/components/airobot/translations/sv.json +2 -1
  19. homeassistant/components/airobot/translations/tr.json +5 -1
  20. homeassistant/components/airobot/translations/zh-Hans.json +1 -1
  21. homeassistant/components/airobot/translations/zh-Hant.json +1 -1
  22. homeassistant/components/airq/translations/sr-Latn.json +0 -7
  23. homeassistant/components/airthings/translations/tr.json +1 -2
  24. homeassistant/components/airthings_ble/translations/sr-Latn.json +0 -7
  25. homeassistant/components/airthings_ble/translations/tr.json +0 -7
  26. homeassistant/components/airvisual/translations/sr-Latn.json +0 -14
  27. homeassistant/components/airzone/translations/tr.json +0 -9
  28. homeassistant/components/aladdin_connect/translations/tr.json +1 -7
  29. homeassistant/components/alarm_control_panel/strings.json +21 -14
  30. homeassistant/components/alarm_control_panel/translations/cs.json +19 -12
  31. homeassistant/components/alarm_control_panel/translations/de.json +14 -7
  32. homeassistant/components/alarm_control_panel/translations/en-GB.json +1 -86
  33. homeassistant/components/alarm_control_panel/translations/en.json +21 -14
  34. homeassistant/components/alarm_control_panel/translations/es.json +1 -86
  35. homeassistant/components/alarm_control_panel/translations/et.json +1 -86
  36. homeassistant/components/alarm_control_panel/translations/ga.json +1 -72
  37. homeassistant/components/alarm_control_panel/translations/lt.json +21 -14
  38. homeassistant/components/alarm_control_panel/translations/pt.json +31 -14
  39. homeassistant/components/alarm_control_panel/translations/sk.json +21 -14
  40. homeassistant/components/alarm_control_panel/translations/sr-Latn.json +1 -5
  41. homeassistant/components/alarm_control_panel/translations/tr.json +1 -72
  42. homeassistant/components/alarm_control_panel/translations/zh-Hans.json +6 -1
  43. homeassistant/components/alarm_control_panel/translations/zh-Hant.json +21 -14
  44. homeassistant/components/alexa_devices/translations/it.json +1 -24
  45. homeassistant/components/alexa_devices/translations/tr.json +0 -52
  46. homeassistant/components/androidtv_remote/translations/mk.json +0 -7
  47. homeassistant/components/anglian_water/__init__.py +2 -6
  48. homeassistant/components/anglian_water/entity.py +1 -5
  49. homeassistant/components/anglian_water/sensor.py +2 -1
  50. homeassistant/components/anglian_water/strings.json +1 -1
  51. homeassistant/components/anglian_water/translations/de.json +1 -1
  52. homeassistant/components/anglian_water/translations/en.json +1 -1
  53. homeassistant/components/anglian_water/translations/et.json +1 -45
  54. homeassistant/components/anglian_water/translations/pt.json +2 -1
  55. homeassistant/components/anglian_water/translations/sk.json +1 -1
  56. homeassistant/components/anglian_water/translations/zh-Hans.json +2 -32
  57. homeassistant/components/anthropic/__init__.py +9 -2
  58. homeassistant/components/aosmith/translations/tr.json +0 -11
  59. homeassistant/components/apcupsd/translations/es.json +0 -14
  60. homeassistant/components/apcupsd/translations/sr-Latn.json +0 -3
  61. homeassistant/components/apple_tv/manifest.json +0 -1
  62. homeassistant/components/assist_pipeline/pipeline.py +57 -58
  63. homeassistant/components/assist_satellite/manifest.json +1 -1
  64. homeassistant/components/assist_satellite/strings.json +12 -8
  65. homeassistant/components/assist_satellite/translations/cs.json +12 -8
  66. homeassistant/components/assist_satellite/translations/de.json +12 -8
  67. homeassistant/components/assist_satellite/translations/en-GB.json +1 -54
  68. homeassistant/components/assist_satellite/translations/en.json +12 -8
  69. homeassistant/components/assist_satellite/translations/es.json +1 -54
  70. homeassistant/components/assist_satellite/translations/et.json +1 -54
  71. homeassistant/components/assist_satellite/translations/ga.json +1 -46
  72. homeassistant/components/assist_satellite/translations/lt.json +12 -8
  73. homeassistant/components/assist_satellite/translations/pt.json +16 -4
  74. homeassistant/components/assist_satellite/translations/sk.json +12 -8
  75. homeassistant/components/assist_satellite/translations/tr.json +1 -46
  76. homeassistant/components/assist_satellite/translations/zh-Hans.json +0 -5
  77. homeassistant/components/assist_satellite/translations/zh-Hant.json +12 -8
  78. homeassistant/components/august/translations/tr.json +1 -23
  79. homeassistant/components/automation/__init__.py +0 -1
  80. homeassistant/components/automation/manifest.json +0 -2
  81. homeassistant/components/automation/strings.json +4 -4
  82. homeassistant/components/automation/translations/cs.json +4 -4
  83. homeassistant/components/automation/translations/de.json +4 -4
  84. homeassistant/components/automation/translations/en-GB.json +0 -8
  85. homeassistant/components/automation/translations/en.json +4 -4
  86. homeassistant/components/automation/translations/es.json +0 -8
  87. homeassistant/components/automation/translations/et.json +4 -4
  88. homeassistant/components/automation/translations/fr.json +0 -8
  89. homeassistant/components/automation/translations/lt.json +4 -4
  90. homeassistant/components/automation/translations/pt.json +8 -0
  91. homeassistant/components/automation/translations/sk.json +4 -4
  92. homeassistant/components/automation/translations/sr-Latn.json +0 -28
  93. homeassistant/components/automation/translations/zh-Hant.json +4 -4
  94. homeassistant/components/backblaze_b2/translations/de.json +2 -2
  95. homeassistant/components/backblaze_b2/translations/es.json +1 -1
  96. homeassistant/components/bang_olufsen/translations/es.json +0 -992
  97. homeassistant/components/bang_olufsen/translations/ga.json +0 -992
  98. homeassistant/components/bang_olufsen/translations/nl.json +3 -76
  99. homeassistant/components/bang_olufsen/translations/pt.json +0 -1
  100. homeassistant/components/bayesian/translations/sr-Latn.json +1 -2
  101. homeassistant/components/bayesian/translations/tr.json +10 -81
  102. homeassistant/components/binary_sensor/icons.json +0 -8
  103. homeassistant/components/binary_sensor/strings.json +1 -36
  104. homeassistant/components/binary_sensor/translations/cs.json +1 -36
  105. homeassistant/components/binary_sensor/translations/de.json +1 -36
  106. homeassistant/components/binary_sensor/translations/en-GB.json +1 -36
  107. homeassistant/components/binary_sensor/translations/en.json +1 -36
  108. homeassistant/components/binary_sensor/translations/es.json +1 -36
  109. homeassistant/components/binary_sensor/translations/et.json +1 -36
  110. homeassistant/components/binary_sensor/translations/lt.json +1 -36
  111. homeassistant/components/binary_sensor/translations/mk.json +0 -8
  112. homeassistant/components/binary_sensor/translations/sk.json +1 -36
  113. homeassistant/components/binary_sensor/translations/sr-Latn.json +0 -1
  114. homeassistant/components/binary_sensor/translations/zh-Hant.json +1 -36
  115. homeassistant/components/blebox/translations/sr-Latn.json +0 -1
  116. homeassistant/components/blink/translations/tr.json +1 -16
  117. homeassistant/components/blue_current/translations/tr.json +0 -44
  118. homeassistant/components/bosch_alarm/__init__.py +2 -2
  119. homeassistant/components/bosch_alarm/config_flow.py +1 -1
  120. homeassistant/components/bosch_alarm/diagnostics.py +1 -2
  121. homeassistant/components/bosch_alarm/entity.py +1 -1
  122. homeassistant/components/bosch_alarm/manifest.json +1 -1
  123. homeassistant/components/broadlink/manifest.json +0 -1
  124. homeassistant/components/broadlink/translations/sr-Latn.json +0 -5
  125. homeassistant/components/brother/translations/tr.json +2 -53
  126. homeassistant/components/bsblan/translations/sr-Latn.json +0 -4
  127. homeassistant/components/bsblan/translations/tr.json +2 -22
  128. homeassistant/components/bthome/translations/tr.json +0 -35
  129. homeassistant/components/button/translations/sr-Latn.json +0 -20
  130. homeassistant/components/camera/__init__.py +1 -1
  131. homeassistant/components/camera/translations/mk.json +2 -4
  132. homeassistant/components/climate/strings.json +15 -10
  133. homeassistant/components/climate/translations/bg.json +0 -14
  134. homeassistant/components/climate/translations/cs.json +9 -26
  135. homeassistant/components/climate/translations/de.json +6 -23
  136. homeassistant/components/climate/translations/el.json +1 -54
  137. homeassistant/components/climate/translations/en-GB.json +1 -64
  138. homeassistant/components/climate/translations/en.json +15 -10
  139. homeassistant/components/climate/translations/es.json +1 -64
  140. homeassistant/components/climate/translations/et.json +1 -64
  141. homeassistant/components/climate/translations/ga.json +1 -54
  142. homeassistant/components/climate/translations/lt.json +9 -26
  143. homeassistant/components/climate/translations/mk.json +3 -10
  144. homeassistant/components/climate/translations/pt.json +12 -19
  145. homeassistant/components/climate/translations/ru.json +1 -54
  146. homeassistant/components/climate/translations/sk.json +9 -26
  147. homeassistant/components/climate/translations/sr-Latn.json +3 -101
  148. homeassistant/components/climate/translations/sv.json +1 -17
  149. homeassistant/components/climate/translations/tr.json +1 -54
  150. homeassistant/components/climate/translations/zh-Hans.json +0 -14
  151. homeassistant/components/climate/translations/zh-Hant.json +9 -26
  152. homeassistant/components/cloud/__init__.py +5 -18
  153. homeassistant/components/cloud/ai_task.py +12 -5
  154. homeassistant/components/cloud/client.py +5 -9
  155. homeassistant/components/cloud/conversation.py +11 -2
  156. homeassistant/components/cloud/entity.py +6 -5
  157. homeassistant/components/cloud/http_api.py +0 -21
  158. homeassistant/components/cloud/manifest.json +1 -1
  159. homeassistant/components/cloud/translations/en-GB.json +0 -7
  160. homeassistant/components/cloud/translations/es.json +0 -7
  161. homeassistant/components/cloud/translations/et.json +0 -7
  162. homeassistant/components/cloud/translations/ga.json +0 -7
  163. homeassistant/components/cloud/translations/tr.json +0 -7
  164. homeassistant/components/coinbase/translations/tr.json +1 -10
  165. homeassistant/components/comelit/translations/tr.json +0 -2
  166. homeassistant/components/conversation/__init__.py +3 -8
  167. homeassistant/components/conversation/default_agent.py +56 -61
  168. homeassistant/components/conversation/manifest.json +1 -1
  169. homeassistant/components/counter/translations/sr-Latn.json +1 -41
  170. homeassistant/components/cover/icons.json +29 -0
  171. homeassistant/components/cover/strings.json +159 -1
  172. homeassistant/components/cover/translations/cs.json +159 -1
  173. homeassistant/components/cover/translations/de.json +159 -1
  174. homeassistant/components/cover/translations/en.json +159 -1
  175. homeassistant/components/cover/translations/et.json +30 -1
  176. homeassistant/components/cover/translations/lt.json +159 -1
  177. homeassistant/components/cover/translations/pt.json +158 -1
  178. homeassistant/components/cover/translations/sk.json +159 -1
  179. homeassistant/components/cover/translations/sr-Latn.json +1 -5
  180. homeassistant/components/cover/translations/zh-Hans.json +105 -1
  181. homeassistant/components/cover/translations/zh-Hant.json +159 -1
  182. homeassistant/components/cover/trigger.py +116 -0
  183. homeassistant/components/cover/triggers.yaml +79 -0
  184. homeassistant/components/deconz/translations/mk.json +1 -3
  185. homeassistant/components/deluge/translations/tr.json +0 -8
  186. homeassistant/components/derivative/translations/es.json +0 -6
  187. homeassistant/components/derivative/translations/ga.json +0 -6
  188. homeassistant/components/derivative/translations/sr-Latn.json +4 -41
  189. homeassistant/components/dlna_dmr/manifest.json +0 -1
  190. homeassistant/components/dlna_dms/manifest.json +0 -1
  191. homeassistant/components/downloader/translations/tr.json +0 -8
  192. homeassistant/components/duckdns/translations/en-GB.json +0 -1
  193. homeassistant/components/duckdns/translations/es.json +0 -41
  194. homeassistant/components/duckdns/translations/ga.json +0 -40
  195. homeassistant/components/ecovacs/manifest.json +1 -1
  196. homeassistant/components/ecovacs/translations/tr.json +2 -50
  197. homeassistant/components/ecowitt/manifest.json +0 -1
  198. homeassistant/components/elevenlabs/translations/tr.json +1 -17
  199. homeassistant/components/elkm1/translations/tr.json +0 -4
  200. homeassistant/components/energyid/translations/zh-Hans.json +1 -17
  201. homeassistant/components/enphase_envoy/manifest.json +1 -1
  202. homeassistant/components/enphase_envoy/translations/tr.json +0 -15
  203. homeassistant/components/esphome/const.py +1 -1
  204. homeassistant/components/esphome/manifest.json +1 -1
  205. homeassistant/components/esphome/strings.json +1 -1
  206. homeassistant/components/esphome/translations/bg.json +1 -0
  207. homeassistant/components/esphome/translations/ca.json +1 -0
  208. homeassistant/components/esphome/translations/cs.json +1 -1
  209. homeassistant/components/esphome/translations/da.json +1 -0
  210. homeassistant/components/esphome/translations/de.json +1 -1
  211. homeassistant/components/esphome/translations/el.json +1 -0
  212. homeassistant/components/esphome/translations/en-GB.json +1 -1
  213. homeassistant/components/esphome/translations/en.json +1 -1
  214. homeassistant/components/esphome/translations/es.json +1 -1
  215. homeassistant/components/esphome/translations/et.json +1 -1
  216. homeassistant/components/esphome/translations/fi.json +1 -0
  217. homeassistant/components/esphome/translations/fr.json +1 -0
  218. homeassistant/components/esphome/translations/ga.json +1 -0
  219. homeassistant/components/esphome/translations/he.json +1 -0
  220. homeassistant/components/esphome/translations/hu.json +1 -0
  221. homeassistant/components/esphome/translations/id.json +1 -0
  222. homeassistant/components/esphome/translations/it.json +1 -0
  223. homeassistant/components/esphome/translations/ja.json +1 -0
  224. homeassistant/components/esphome/translations/ko.json +1 -0
  225. homeassistant/components/esphome/translations/lt.json +1 -1
  226. homeassistant/components/esphome/translations/nb.json +1 -0
  227. homeassistant/components/esphome/translations/nl.json +1 -0
  228. homeassistant/components/esphome/translations/pl.json +1 -0
  229. homeassistant/components/esphome/translations/pt-BR.json +1 -0
  230. homeassistant/components/esphome/translations/pt.json +1 -1
  231. homeassistant/components/esphome/translations/ro.json +1 -0
  232. homeassistant/components/esphome/translations/ru.json +1 -0
  233. homeassistant/components/esphome/translations/sk.json +1 -1
  234. homeassistant/components/esphome/translations/sl.json +1 -0
  235. homeassistant/components/esphome/translations/sv.json +1 -0
  236. homeassistant/components/esphome/translations/tr.json +1 -1
  237. homeassistant/components/esphome/translations/uk.json +1 -0
  238. homeassistant/components/esphome/translations/vi.json +1 -0
  239. homeassistant/components/esphome/translations/zh-Hans.json +1 -1
  240. homeassistant/components/esphome/translations/zh-Hant.json +1 -1
  241. homeassistant/components/essent/translations/nl.json +0 -32
  242. homeassistant/components/essent/translations/zh-Hans.json +0 -38
  243. homeassistant/components/event/translations/pl.json +1 -2
  244. homeassistant/components/event/translations/sr-Latn.json +1 -16
  245. homeassistant/components/fan/strings.json +6 -4
  246. homeassistant/components/fan/translations/cs.json +6 -4
  247. homeassistant/components/fan/translations/de.json +4 -2
  248. homeassistant/components/fan/translations/en-GB.json +1 -34
  249. homeassistant/components/fan/translations/en.json +6 -4
  250. homeassistant/components/fan/translations/es.json +1 -34
  251. homeassistant/components/fan/translations/et.json +6 -4
  252. homeassistant/components/fan/translations/ga.json +1 -30
  253. homeassistant/components/fan/translations/lt.json +6 -4
  254. homeassistant/components/fan/translations/mk.json +0 -11
  255. homeassistant/components/fan/translations/nl.json +1 -6
  256. homeassistant/components/fan/translations/pt.json +8 -2
  257. homeassistant/components/fan/translations/sk.json +6 -4
  258. homeassistant/components/fan/translations/tr.json +1 -30
  259. homeassistant/components/fan/translations/zh-Hant.json +6 -4
  260. homeassistant/components/file/translations/tr.json +0 -26
  261. homeassistant/components/filter/translations/sr-Latn.json +11 -149
  262. homeassistant/components/firefly_iii/translations/de.json +2 -2
  263. homeassistant/components/firefly_iii/translations/tr.json +0 -87
  264. homeassistant/components/foscam/translations/tr.json +1 -45
  265. homeassistant/components/fritz/translations/tr.json +0 -24
  266. homeassistant/components/fronius/manifest.json +0 -1
  267. homeassistant/components/fronius/translations/sr-Latn.json +0 -3
  268. homeassistant/components/frontend/manifest.json +1 -1
  269. homeassistant/components/frontend/storage.py +6 -16
  270. homeassistant/components/frontend/translations/de.json +2 -2
  271. homeassistant/components/frontend/translations/el.json +0 -8
  272. homeassistant/components/frontend/translations/es.json +0 -8
  273. homeassistant/components/frontend/translations/ga.json +0 -8
  274. homeassistant/components/frontend/translations/ru.json +0 -8
  275. homeassistant/components/frontend/translations/sr-Latn.json +0 -8
  276. homeassistant/components/frontend/translations/tr.json +0 -8
  277. homeassistant/components/frontend/translations/zh-Hans.json +0 -3
  278. homeassistant/components/fully_kiosk/translations/tr.json +0 -15
  279. homeassistant/components/fyta/translations/sr-Latn.json +0 -6
  280. homeassistant/components/generic/translations/sr-Latn.json +0 -42
  281. homeassistant/components/generic_hygrostat/translations/sr-Latn.json +4 -36
  282. homeassistant/components/generic_thermostat/translations/sr-Latn.json +6 -46
  283. homeassistant/components/geocaching/translations/tr.json +1 -2
  284. homeassistant/components/gios/translations/sr-Latn.json +0 -10
  285. homeassistant/components/go2rtc/__init__.py +2 -6
  286. homeassistant/components/go2rtc/const.py +1 -0
  287. homeassistant/components/go2rtc/server.py +6 -16
  288. homeassistant/components/google/manifest.json +0 -1
  289. homeassistant/components/google_air_quality/manifest.json +1 -1
  290. homeassistant/components/google_air_quality/strings.json +6 -8
  291. homeassistant/components/google_air_quality/translations/bg.json +7 -0
  292. homeassistant/components/google_air_quality/translations/cs.json +6 -8
  293. homeassistant/components/google_air_quality/translations/de.json +6 -8
  294. homeassistant/components/google_air_quality/translations/en.json +6 -8
  295. homeassistant/components/google_air_quality/translations/et.json +13 -82
  296. homeassistant/components/google_air_quality/translations/lt.json +13 -1
  297. homeassistant/components/google_air_quality/translations/nl.json +6 -38
  298. homeassistant/components/google_air_quality/translations/pt.json +13 -1
  299. homeassistant/components/google_air_quality/translations/sk.json +13 -1
  300. homeassistant/components/google_air_quality/translations/zh-Hans.json +11 -81
  301. homeassistant/components/google_air_quality/translations/zh-Hant.json +13 -1
  302. homeassistant/components/google_assistant/translations/sr-Latn.json +1 -1
  303. homeassistant/components/google_assistant_sdk/translations/es.json +0 -3
  304. homeassistant/components/google_assistant_sdk/translations/tr.json +0 -7
  305. homeassistant/components/google_generative_ai_conversation/translations/tr.json +0 -6
  306. homeassistant/components/google_sheets/translations/es.json +0 -4
  307. homeassistant/components/google_sheets/translations/tr.json +0 -22
  308. homeassistant/components/google_translate/manifest.json +0 -1
  309. homeassistant/components/google_weather/translations/es.json +0 -66
  310. homeassistant/components/google_weather/translations/ga.json +0 -37
  311. homeassistant/components/gpsd/translations/sr-Latn.json +0 -3
  312. homeassistant/components/group/notify.py +5 -28
  313. homeassistant/components/group/translations/sr-Latn.json +12 -154
  314. homeassistant/components/group/translations/tr.json +1 -19
  315. homeassistant/components/growatt_server/translations/tr.json +0 -87
  316. homeassistant/components/habitica/translations/tr.json +0 -76
  317. homeassistant/components/hassio/const.py +0 -1
  318. homeassistant/components/hassio/strings.json +1 -1
  319. homeassistant/components/hassio/translations/cs.json +1 -1
  320. homeassistant/components/hassio/translations/de.json +1 -1
  321. homeassistant/components/hassio/translations/el.json +1 -0
  322. homeassistant/components/hassio/translations/en-GB.json +1 -1
  323. homeassistant/components/hassio/translations/en.json +1 -1
  324. homeassistant/components/hassio/translations/es.json +1 -1
  325. homeassistant/components/hassio/translations/et.json +1 -1
  326. homeassistant/components/hassio/translations/fr.json +1 -0
  327. homeassistant/components/hassio/translations/fy.json +3 -0
  328. homeassistant/components/hassio/translations/ga.json +1 -0
  329. homeassistant/components/hassio/translations/he.json +1 -0
  330. homeassistant/components/hassio/translations/id.json +1 -0
  331. homeassistant/components/hassio/translations/lt.json +1 -1
  332. homeassistant/components/hassio/translations/mk.json +1 -0
  333. homeassistant/components/hassio/translations/nl.json +1 -0
  334. homeassistant/components/hassio/translations/pt.json +1 -0
  335. homeassistant/components/hassio/translations/ru.json +1 -0
  336. homeassistant/components/hassio/translations/sk.json +1 -1
  337. homeassistant/components/hassio/translations/sr-Latn.json +0 -5
  338. homeassistant/components/hassio/translations/sv.json +1 -0
  339. homeassistant/components/hassio/translations/tr.json +0 -38
  340. homeassistant/components/hassio/translations/zh-Hans.json +1 -0
  341. homeassistant/components/hassio/translations/zh-Hant.json +1 -1
  342. homeassistant/components/history_stats/translations/sr-Latn.json +3 -85
  343. homeassistant/components/holiday/translations/pl.json +0 -7
  344. homeassistant/components/home_connect/manifest.json +0 -1
  345. homeassistant/components/home_connect/translations/de.json +2 -2
  346. homeassistant/components/home_connect/translations/es.json +0 -46
  347. homeassistant/components/home_connect/translations/ga.json +0 -46
  348. homeassistant/components/home_connect/translations/tr.json +0 -32
  349. homeassistant/components/homeassistant_connect_zbt2/config_flow.py +17 -0
  350. homeassistant/components/homeassistant_connect_zbt2/const.py +58 -0
  351. homeassistant/components/homeassistant_connect_zbt2/translations/es.json +0 -8
  352. homeassistant/components/homeassistant_connect_zbt2/translations/ga.json +0 -8
  353. homeassistant/components/homeassistant_connect_zbt2/translations/tr.json +0 -145
  354. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +73 -81
  355. homeassistant/components/homeassistant_hardware/translations/es.json +0 -4
  356. homeassistant/components/homeassistant_hardware/translations/ga.json +0 -4
  357. homeassistant/components/homeassistant_hardware/translations/tr.json +1 -44
  358. homeassistant/components/homeassistant_hardware/update.py +10 -13
  359. homeassistant/components/homeassistant_hardware/util.py +53 -59
  360. homeassistant/components/homeassistant_sky_connect/translations/es.json +0 -8
  361. homeassistant/components/homeassistant_sky_connect/translations/ga.json +0 -8
  362. homeassistant/components/homeassistant_sky_connect/translations/tr.json +0 -71
  363. homeassistant/components/homeassistant_yellow/translations/es.json +0 -4
  364. homeassistant/components/homeassistant_yellow/translations/ga.json +0 -4
  365. homeassistant/components/homeassistant_yellow/translations/tr.json +0 -35
  366. homeassistant/components/homekit/translations/tr.json +0 -12
  367. homeassistant/components/homekit_controller/manifest.json +0 -1
  368. homeassistant/components/homewizard/manifest.json +0 -1
  369. homeassistant/components/hue/translations/mk.json +1 -3
  370. homeassistant/components/hue/translations/tr.json +0 -1
  371. homeassistant/components/hue_ble/strings.json +1 -1
  372. homeassistant/components/hue_ble/translations/en.json +1 -1
  373. homeassistant/components/hue_ble/translations/lt.json +1 -1
  374. homeassistant/components/hue_ble/translations/nl.json +0 -3
  375. homeassistant/components/hue_ble/translations/pt.json +2 -1
  376. homeassistant/components/hue_ble/translations/sk.json +1 -1
  377. homeassistant/components/hue_ble/translations/zh-Hans.json +1 -11
  378. homeassistant/components/humidifier/translations/mk.json +0 -6
  379. homeassistant/components/husqvarna_automower/translations/tr.json +0 -88
  380. homeassistant/components/huum/translations/sr-Latn.json +0 -5
  381. homeassistant/components/ibeacon/manifest.json +0 -1
  382. homeassistant/components/icloud/translations/tr.json +0 -3
  383. homeassistant/components/image/translations/sr-Latn.json +1 -2
  384. homeassistant/components/imap/translations/tr.json +0 -21
  385. homeassistant/components/imeon_inverter/translations/en-GB.json +0 -21
  386. homeassistant/components/incomfort/translations/tr.json +0 -3
  387. homeassistant/components/input_boolean/translations/mk.json +2 -4
  388. homeassistant/components/input_number/translations/sr-Latn.json +0 -17
  389. homeassistant/components/integration/translations/sr-Latn.json +2 -54
  390. homeassistant/components/iometer/manifest.json +1 -1
  391. homeassistant/components/iometer/translations/tr.json +1 -3
  392. homeassistant/components/iron_os/translations/en-GB.json +1 -5
  393. homeassistant/components/iron_os/translations/es.json +1 -5
  394. homeassistant/components/jewish_calendar/translations/tr.json +1 -9
  395. homeassistant/components/kitchen_sink/translations/en-GB.json +0 -2
  396. homeassistant/components/kitchen_sink/translations/es.json +0 -20
  397. homeassistant/components/kitchen_sink/translations/et.json +1 -5
  398. homeassistant/components/kitchen_sink/translations/ga.json +0 -4
  399. homeassistant/components/kitchen_sink/translations/it.json +0 -12
  400. homeassistant/components/kitchen_sink/translations/nl.json +0 -4
  401. homeassistant/components/kitchen_sink/translations/ru.json +0 -8
  402. homeassistant/components/kitchen_sink/translations/sv.json +0 -3
  403. homeassistant/components/kitchen_sink/translations/tr.json +0 -4
  404. homeassistant/components/knx/translations/el.json +0 -43
  405. homeassistant/components/knx/translations/es.json +0 -3
  406. homeassistant/components/knx/translations/et.json +0 -3
  407. homeassistant/components/knx/translations/sk.json +0 -3
  408. homeassistant/components/knx/translations/tr.json +0 -318
  409. homeassistant/components/knx/translations/zh-Hans.json +0 -3
  410. homeassistant/components/konnected/manifest.json +0 -1
  411. homeassistant/components/konnected/translations/tr.json +0 -6
  412. homeassistant/components/labs/__init__.py +1 -2
  413. homeassistant/components/labs/const.py +2 -0
  414. homeassistant/components/labs/translations/lt.json +1 -1
  415. homeassistant/components/labs/websocket_api.py +1 -2
  416. homeassistant/components/lawn_mower/strings.json +12 -8
  417. homeassistant/components/lawn_mower/translations/cs.json +11 -7
  418. homeassistant/components/lawn_mower/translations/de.json +11 -7
  419. homeassistant/components/lawn_mower/translations/en-GB.json +1 -56
  420. homeassistant/components/lawn_mower/translations/en.json +12 -8
  421. homeassistant/components/lawn_mower/translations/es.json +1 -56
  422. homeassistant/components/lawn_mower/translations/et.json +2 -46
  423. homeassistant/components/lawn_mower/translations/ga.json +1 -48
  424. homeassistant/components/lawn_mower/translations/lt.json +12 -8
  425. homeassistant/components/lawn_mower/translations/pt.json +16 -4
  426. homeassistant/components/lawn_mower/translations/sk.json +12 -8
  427. homeassistant/components/lawn_mower/translations/tr.json +1 -48
  428. homeassistant/components/lawn_mower/translations/zh-Hant.json +12 -8
  429. homeassistant/components/letpot/manifest.json +1 -1
  430. homeassistant/components/letpot/translations/tr.json +0 -8
  431. homeassistant/components/lg_thinq/manifest.json +1 -1
  432. homeassistant/components/lg_thinq/translations/sr-Latn.json +0 -8
  433. homeassistant/components/lg_thinq/translations/tr.json +0 -20
  434. homeassistant/components/libre_hardware_monitor/coordinator.py +18 -26
  435. homeassistant/components/lifx/translations/tr.json +0 -3
  436. homeassistant/components/light/strings.json +8 -4
  437. homeassistant/components/light/translations/bg.json +12 -0
  438. homeassistant/components/light/translations/cs.json +8 -4
  439. homeassistant/components/light/translations/de.json +6 -2
  440. homeassistant/components/light/translations/el.json +0 -6
  441. homeassistant/components/light/translations/en-GB.json +2 -69
  442. homeassistant/components/light/translations/en.json +8 -4
  443. homeassistant/components/light/translations/es.json +2 -68
  444. homeassistant/components/light/translations/et.json +8 -34
  445. homeassistant/components/light/translations/ga.json +2 -65
  446. homeassistant/components/light/translations/lt.json +8 -4
  447. homeassistant/components/light/translations/mk.json +3 -10
  448. homeassistant/components/light/translations/nl.json +1 -6
  449. homeassistant/components/light/translations/pt.json +10 -2
  450. homeassistant/components/light/translations/ru.json +3 -67
  451. homeassistant/components/light/translations/sk.json +8 -4
  452. homeassistant/components/light/translations/sr-Latn.json +4 -217
  453. homeassistant/components/light/translations/tr.json +2 -65
  454. homeassistant/components/light/translations/zh-Hans.json +10 -2
  455. homeassistant/components/light/translations/zh-Hant.json +8 -4
  456. homeassistant/components/litterrobot/translations/tr.json +0 -6
  457. homeassistant/components/logger/helpers.py +0 -10
  458. homeassistant/components/logger/websocket_api.py +1 -12
  459. homeassistant/components/lovelace/translations/es.json +0 -5
  460. homeassistant/components/lovelace/translations/ga.json +0 -5
  461. homeassistant/components/mastodon/translations/es.json +0 -7
  462. homeassistant/components/mastodon/translations/ga.json +0 -7
  463. homeassistant/components/mastodon/translations/tr.json +0 -4
  464. homeassistant/components/matrix/translations/tr.json +0 -42
  465. homeassistant/components/matter/manifest.json +0 -1
  466. homeassistant/components/matter/translations/es.json +0 -13
  467. homeassistant/components/matter/translations/ga.json +0 -10
  468. homeassistant/components/matter/translations/sr-Latn.json +0 -3
  469. homeassistant/components/matter/translations/tr.json +0 -105
  470. homeassistant/components/mcp/translations/tr.json +1 -20
  471. homeassistant/components/mealie/translations/tr.json +0 -11
  472. homeassistant/components/media_extractor/manifest.json +1 -1
  473. homeassistant/components/media_player/strings.json +3 -2
  474. homeassistant/components/media_player/translations/cs.json +3 -2
  475. homeassistant/components/media_player/translations/de.json +2 -1
  476. homeassistant/components/media_player/translations/en-GB.json +1 -24
  477. homeassistant/components/media_player/translations/en.json +3 -2
  478. homeassistant/components/media_player/translations/es.json +1 -24
  479. homeassistant/components/media_player/translations/et.json +1 -8
  480. homeassistant/components/media_player/translations/ga.json +1 -22
  481. homeassistant/components/media_player/translations/lt.json +3 -2
  482. homeassistant/components/media_player/translations/mk.json +2 -4
  483. homeassistant/components/media_player/translations/pt.json +4 -1
  484. homeassistant/components/media_player/translations/sk.json +3 -2
  485. homeassistant/components/media_player/translations/tr.json +1 -22
  486. homeassistant/components/media_player/translations/zh-Hant.json +3 -2
  487. homeassistant/components/met/manifest.json +0 -1
  488. homeassistant/components/meteo_france/const.py +0 -1
  489. homeassistant/components/miele/const.py +7 -9
  490. homeassistant/components/miele/strings.json +0 -1
  491. homeassistant/components/miele/translations/cs.json +0 -1
  492. homeassistant/components/miele/translations/de.json +0 -1
  493. homeassistant/components/miele/translations/en-GB.json +0 -1
  494. homeassistant/components/miele/translations/en.json +0 -1
  495. homeassistant/components/miele/translations/es.json +0 -16
  496. homeassistant/components/miele/translations/et.json +0 -1
  497. homeassistant/components/miele/translations/ga.json +0 -14
  498. homeassistant/components/miele/translations/it.json +0 -1
  499. homeassistant/components/miele/translations/lt.json +0 -1
  500. homeassistant/components/miele/translations/sk.json +0 -1
  501. homeassistant/components/miele/translations/sr-Latn.json +0 -10
  502. homeassistant/components/miele/translations/tr.json +1 -20
  503. homeassistant/components/miele/translations/zh-Hant.json +0 -1
  504. homeassistant/components/min_max/translations/sr-Latn.json +2 -44
  505. homeassistant/components/mold_indicator/translations/sr-Latn.json +3 -41
  506. homeassistant/components/motion_blinds/manifest.json +0 -1
  507. homeassistant/components/mqtt/entity.py +0 -1
  508. homeassistant/components/mqtt/strings.json +5 -4
  509. homeassistant/components/mqtt/translations/bg.json +5 -0
  510. homeassistant/components/mqtt/translations/cs.json +27 -26
  511. homeassistant/components/mqtt/translations/de.json +8 -7
  512. homeassistant/components/mqtt/translations/en-GB.json +5 -4
  513. homeassistant/components/mqtt/translations/en.json +5 -4
  514. homeassistant/components/mqtt/translations/es.json +8 -91
  515. homeassistant/components/mqtt/translations/et.json +5 -4
  516. homeassistant/components/mqtt/translations/fr.json +4 -1
  517. homeassistant/components/mqtt/translations/ga.json +9 -65
  518. homeassistant/components/mqtt/translations/he.json +6 -1
  519. homeassistant/components/mqtt/translations/hu.json +2 -0
  520. homeassistant/components/mqtt/translations/it.json +7 -2
  521. homeassistant/components/mqtt/translations/lt.json +5 -4
  522. homeassistant/components/mqtt/translations/mk.json +0 -6
  523. homeassistant/components/mqtt/translations/nl.json +6 -1
  524. homeassistant/components/mqtt/translations/pt.json +6 -3
  525. homeassistant/components/mqtt/translations/ru.json +6 -6
  526. homeassistant/components/mqtt/translations/sk.json +5 -4
  527. homeassistant/components/mqtt/translations/sr-Latn.json +22 -148
  528. homeassistant/components/mqtt/translations/sv.json +2 -1
  529. homeassistant/components/mqtt/translations/tr.json +5 -255
  530. homeassistant/components/mqtt/translations/zh-Hans.json +6 -3
  531. homeassistant/components/mqtt/translations/zh-Hant.json +5 -4
  532. homeassistant/components/music_assistant/__init__.py +1 -2
  533. homeassistant/components/music_assistant/config_flow.py +5 -23
  534. homeassistant/components/music_assistant/manifest.json +0 -1
  535. homeassistant/components/music_assistant/translations/bg.json +1 -6
  536. homeassistant/components/music_assistant/translations/el.json +1 -3
  537. homeassistant/components/music_assistant/translations/en-GB.json +1 -23
  538. homeassistant/components/music_assistant/translations/es.json +1 -25
  539. homeassistant/components/music_assistant/translations/et.json +0 -1
  540. homeassistant/components/music_assistant/translations/ga.json +1 -24
  541. homeassistant/components/music_assistant/translations/it.json +1 -26
  542. homeassistant/components/music_assistant/translations/nl.json +1 -3
  543. homeassistant/components/music_assistant/translations/ru.json +1 -23
  544. homeassistant/components/music_assistant/translations/sv.json +1 -3
  545. homeassistant/components/music_assistant/translations/tr.json +1 -24
  546. homeassistant/components/music_assistant/translations/zh-Hans.json +0 -16
  547. homeassistant/components/nasweb/translations/tr.json +0 -7
  548. homeassistant/components/neato/translations/es.json +0 -5
  549. homeassistant/components/neato/translations/ga.json +0 -5
  550. homeassistant/components/neato/translations/tr.json +0 -5
  551. homeassistant/components/nederlandse_spoorwegen/translations/es.json +0 -10
  552. homeassistant/components/nederlandse_spoorwegen/translations/tr.json +0 -25
  553. homeassistant/components/nest/manifest.json +1 -1
  554. homeassistant/components/nest/translations/es.json +0 -12
  555. homeassistant/components/nest/translations/tr.json +0 -12
  556. homeassistant/components/netgear/translations/sr-Latn.json +0 -3
  557. homeassistant/components/nextdns/translations/tr.json +1 -14
  558. homeassistant/components/nightscout/translations/tr.json +0 -4
  559. homeassistant/components/niko_home_control/translations/el.json +0 -18
  560. homeassistant/components/niko_home_control/translations/es.json +1 -3
  561. homeassistant/components/niko_home_control/translations/tr.json +1 -10
  562. homeassistant/components/nina/translations/el.json +0 -6
  563. homeassistant/components/nina/translations/en-GB.json +0 -8
  564. homeassistant/components/nina/translations/es.json +0 -8
  565. homeassistant/components/nina/translations/ga.json +0 -8
  566. homeassistant/components/nina/translations/tr.json +0 -54
  567. homeassistant/components/nina/translations/zh-Hans.json +0 -2
  568. homeassistant/components/nordpool/manifest.json +1 -1
  569. homeassistant/components/ntfy/translations/tr.json +0 -78
  570. homeassistant/components/nuki/manifest.json +0 -1
  571. homeassistant/components/number/translations/sr-Latn.json +0 -181
  572. homeassistant/components/number/translations/tr.json +0 -6
  573. homeassistant/components/octoprint/translations/tr.json +0 -10
  574. homeassistant/components/onboarding/const.py +1 -16
  575. homeassistant/components/onboarding/views.py +2 -2
  576. homeassistant/components/onedrive/translations/es.json +0 -3
  577. homeassistant/components/onewire/translations/tr.json +0 -10
  578. homeassistant/components/openai_conversation/translations/tr.json +1 -6
  579. homeassistant/components/opentherm_gw/services.py +2 -17
  580. homeassistant/components/opentherm_gw/strings.json +3 -3
  581. homeassistant/components/opentherm_gw/translations/cs.json +3 -3
  582. homeassistant/components/opentherm_gw/translations/de.json +3 -3
  583. homeassistant/components/opentherm_gw/translations/el.json +3 -3
  584. homeassistant/components/opentherm_gw/translations/en-GB.json +3 -3
  585. homeassistant/components/opentherm_gw/translations/en.json +3 -3
  586. homeassistant/components/opentherm_gw/translations/es.json +3 -3
  587. homeassistant/components/opentherm_gw/translations/et.json +3 -3
  588. homeassistant/components/opentherm_gw/translations/ga.json +3 -0
  589. homeassistant/components/opentherm_gw/translations/hu.json +3 -0
  590. homeassistant/components/opentherm_gw/translations/it.json +2 -0
  591. homeassistant/components/opentherm_gw/translations/ja.json +3 -0
  592. homeassistant/components/opentherm_gw/translations/lt.json +3 -3
  593. homeassistant/components/opentherm_gw/translations/nl.json +2 -0
  594. homeassistant/components/opentherm_gw/translations/pt.json +3 -3
  595. homeassistant/components/opentherm_gw/translations/ru.json +3 -3
  596. homeassistant/components/opentherm_gw/translations/sk.json +3 -3
  597. homeassistant/components/opentherm_gw/translations/sv.json +3 -0
  598. homeassistant/components/opentherm_gw/translations/tr.json +3 -0
  599. homeassistant/components/opentherm_gw/translations/zh-Hans.json +3 -3
  600. homeassistant/components/opentherm_gw/translations/zh-Hant.json +3 -3
  601. homeassistant/components/openweathermap/translations/tr.json +0 -49
  602. homeassistant/components/opower/translations/tr.json +1 -33
  603. homeassistant/components/oralb/manifest.json +0 -1
  604. homeassistant/components/oralb/translations/tr.json +2 -29
  605. homeassistant/components/ping/helpers.py +1 -1
  606. homeassistant/components/ping/manifest.json +0 -1
  607. homeassistant/components/playstation_network/coordinator.py +7 -14
  608. homeassistant/components/playstation_network/translations/tr.json +0 -56
  609. homeassistant/components/plugwise/translations/en-GB.json +1 -1
  610. homeassistant/components/plugwise/translations/es.json +0 -2
  611. homeassistant/components/plugwise/translations/sr-Latn.json +0 -12
  612. homeassistant/components/plugwise/translations/tr.json +1 -11
  613. homeassistant/components/plum_lightpad/translations/tr.json +1 -8
  614. homeassistant/components/point/translations/es.json +0 -5
  615. homeassistant/components/pooldose/translations/en-GB.json +0 -11
  616. homeassistant/components/pooldose/translations/es.json +0 -68
  617. homeassistant/components/pooldose/translations/et.json +0 -11
  618. homeassistant/components/pooldose/translations/ga.json +0 -11
  619. homeassistant/components/pooldose/translations/it.json +0 -11
  620. homeassistant/components/pooldose/translations/tr.json +1 -84
  621. homeassistant/components/pooldose/translations/zh-Hans.json +0 -6
  622. homeassistant/components/portainer/translations/tr.json +0 -82
  623. homeassistant/components/probe_plus/translations/tr.json +0 -5
  624. homeassistant/components/ps4/translations/tr.json +0 -6
  625. homeassistant/components/qbittorrent/translations/tr.json +0 -4
  626. homeassistant/components/qbus/translations/tr.json +0 -10
  627. homeassistant/components/random/translations/es.json +0 -1
  628. homeassistant/components/random/translations/sr-Latn.json +6 -119
  629. homeassistant/components/random/translations/tr.json +0 -2
  630. homeassistant/components/renault/translations/tr.json +0 -12
  631. homeassistant/components/reolink/manifest.json +1 -2
  632. homeassistant/components/reolink/translations/pl.json +1 -10
  633. homeassistant/components/reolink/translations/tr.json +1 -67
  634. homeassistant/components/rest/manifest.json +0 -1
  635. homeassistant/components/ridwell/translations/tr.json +0 -22
  636. homeassistant/components/ring/manifest.json +0 -1
  637. homeassistant/components/roborock/image.py +2 -5
  638. homeassistant/components/roborock/manifest.json +1 -2
  639. homeassistant/components/roborock/roborock_storage.py +10 -29
  640. homeassistant/components/roborock/translations/tr.json +1 -9
  641. homeassistant/components/roomba/translations/tr.json +0 -6
  642. homeassistant/components/satel_integra/translations/sr-Latn.json +1 -2
  643. homeassistant/components/saunum/translations/el.json +1 -7
  644. homeassistant/components/saunum/translations/en-GB.json +1 -11
  645. homeassistant/components/saunum/translations/es.json +1 -38
  646. homeassistant/components/saunum/translations/et.json +1 -11
  647. homeassistant/components/saunum/translations/ga.json +1 -38
  648. homeassistant/components/saunum/translations/mk.json +0 -5
  649. homeassistant/components/saunum/translations/tr.json +1 -11
  650. homeassistant/components/schedule/translations/sr-Latn.json +1 -18
  651. homeassistant/components/scrape/translations/es.json +0 -1
  652. homeassistant/components/scrape/translations/sr-Latn.json +2 -63
  653. homeassistant/components/scrape/translations/tr.json +0 -4
  654. homeassistant/components/sensibo/translations/sr-Latn.json +0 -19
  655. homeassistant/components/sensor/translations/sr-Latn.json +5 -141
  656. homeassistant/components/sensor/translations/tr.json +0 -10
  657. homeassistant/components/senz/manifest.json +0 -1
  658. homeassistant/components/senz/translations/es.json +1 -17
  659. homeassistant/components/sfr_box/translations/tr.json +0 -4
  660. homeassistant/components/shelly/const.py +0 -1
  661. homeassistant/components/shelly/manifest.json +1 -1
  662. homeassistant/components/shelly/sensor.py +2 -0
  663. homeassistant/components/shelly/strings.json +0 -8
  664. homeassistant/components/shelly/switch.py +1 -0
  665. homeassistant/components/shelly/translations/bg.json +0 -5
  666. homeassistant/components/shelly/translations/cs.json +0 -8
  667. homeassistant/components/shelly/translations/de.json +0 -8
  668. homeassistant/components/shelly/translations/en-GB.json +0 -8
  669. homeassistant/components/shelly/translations/en.json +0 -8
  670. homeassistant/components/shelly/translations/es.json +2 -192
  671. homeassistant/components/shelly/translations/et.json +1 -10
  672. homeassistant/components/shelly/translations/fr.json +0 -10
  673. homeassistant/components/shelly/translations/ga.json +0 -46
  674. homeassistant/components/shelly/translations/it.json +2 -13
  675. homeassistant/components/shelly/translations/lt.json +0 -8
  676. homeassistant/components/shelly/translations/mk.json +0 -3
  677. homeassistant/components/shelly/translations/nl.json +0 -7
  678. homeassistant/components/shelly/translations/pl.json +0 -8
  679. homeassistant/components/shelly/translations/pt.json +0 -8
  680. homeassistant/components/shelly/translations/ru.json +0 -5
  681. homeassistant/components/shelly/translations/sk.json +0 -8
  682. homeassistant/components/shelly/translations/sv.json +9 -189
  683. homeassistant/components/shelly/translations/tr.json +5 -171
  684. homeassistant/components/shelly/translations/zh-Hans.json +0 -8
  685. homeassistant/components/shelly/translations/zh-Hant.json +0 -8
  686. homeassistant/components/shelly/valve.py +1 -1
  687. homeassistant/components/siren/translations/mk.json +2 -4
  688. homeassistant/components/smarla/translations/tr.json +0 -15
  689. homeassistant/components/smartthings/manifest.json +0 -1
  690. homeassistant/components/smartthings/translations/es.json +0 -74
  691. homeassistant/components/smartthings/translations/nl.json +0 -13
  692. homeassistant/components/smartthings/translations/tr.json +0 -20
  693. homeassistant/components/smhi/translations/tr.json +0 -19
  694. homeassistant/components/snoo/translations/tr.json +0 -8
  695. homeassistant/components/solaredge/translations/tr.json +3 -64
  696. homeassistant/components/sonos/manifest.json +0 -1
  697. homeassistant/components/speedtestdotnet/manifest.json +0 -1
  698. homeassistant/components/spotify/translations/es.json +0 -5
  699. homeassistant/components/sql/translations/es.json +0 -1
  700. homeassistant/components/sql/translations/sr-Latn.json +2 -61
  701. homeassistant/components/sql/translations/tr.json +0 -83
  702. homeassistant/components/squeezebox/translations/mk.json +0 -5
  703. homeassistant/components/squeezebox/translations/tr.json +0 -63
  704. homeassistant/components/starline/translations/sr-Latn.json +0 -7
  705. homeassistant/components/statistics/translations/sr-Latn.json +2 -118
  706. homeassistant/components/switch/translations/mk.json +1 -5
  707. homeassistant/components/switch/translations/sr-Latn.json +1 -2
  708. homeassistant/components/switch_as_x/translations/sr-Latn.json +3 -27
  709. homeassistant/components/switchbot/manifest.json +0 -1
  710. homeassistant/components/switchbot/translations/el.json +1 -2
  711. homeassistant/components/switchbot/translations/tr.json +0 -34
  712. homeassistant/components/switchbot_cloud/translations/tr.json +0 -20
  713. homeassistant/components/synology_dsm/translations/sr-Latn.json +0 -3
  714. homeassistant/components/system_bridge/translations/tr.json +0 -3
  715. homeassistant/components/systemmonitor/translations/tr.json +0 -6
  716. homeassistant/components/tautulli/translations/de.json +1 -1
  717. homeassistant/components/tedee/manifest.json +0 -1
  718. homeassistant/components/telegram/translations/de.json +1 -1
  719. homeassistant/components/telegram/translations/tr.json +0 -6
  720. homeassistant/components/telegram_bot/translations/tr.json +4 -203
  721. homeassistant/components/template/__init__.py +1 -31
  722. homeassistant/components/template/helpers.py +0 -5
  723. homeassistant/components/template/translations/de.json +4 -4
  724. homeassistant/components/template/translations/el.json +0 -4
  725. homeassistant/components/template/translations/es.json +0 -5
  726. homeassistant/components/template/translations/ga.json +0 -4
  727. homeassistant/components/template/translations/it.json +0 -4
  728. homeassistant/components/template/translations/pl.json +0 -37
  729. homeassistant/components/template/translations/ru.json +0 -4
  730. homeassistant/components/template/translations/sr-Latn.json +72 -933
  731. homeassistant/components/template/translations/tr.json +2 -172
  732. homeassistant/components/template/translations/zh-Hans.json +0 -4
  733. homeassistant/components/tesla_fleet/manifest.json +0 -1
  734. homeassistant/components/tesla_fleet/translations/es.json +0 -5
  735. homeassistant/components/tesla_fleet/translations/sr-Latn.json +0 -5
  736. homeassistant/components/tesla_wall_connector/translations/es.json +0 -3
  737. homeassistant/components/tesla_wall_connector/translations/ga.json +0 -3
  738. homeassistant/components/teslemetry/manifest.json +0 -1
  739. homeassistant/components/teslemetry/translations/sr-Latn.json +0 -5
  740. homeassistant/components/teslemetry/translations/tr.json +1 -77
  741. homeassistant/components/tessie/manifest.json +0 -1
  742. homeassistant/components/tessie/translations/sr-Latn.json +0 -5
  743. homeassistant/components/tessie/translations/tr.json +0 -3
  744. homeassistant/components/text/strings.json +3 -2
  745. homeassistant/components/text/translations/bg.json +8 -1
  746. homeassistant/components/text/translations/cs.json +3 -2
  747. homeassistant/components/text/translations/de.json +3 -2
  748. homeassistant/components/text/translations/en-GB.json +1 -7
  749. homeassistant/components/text/translations/en.json +3 -2
  750. homeassistant/components/text/translations/es.json +1 -7
  751. homeassistant/components/text/translations/et.json +1 -7
  752. homeassistant/components/text/translations/lt.json +3 -2
  753. homeassistant/components/text/translations/pt.json +8 -1
  754. homeassistant/components/text/translations/sk.json +3 -2
  755. homeassistant/components/text/translations/sr-Latn.json +2 -4
  756. homeassistant/components/text/translations/zh-Hant.json +3 -2
  757. homeassistant/components/tod/translations/sr-Latn.json +1 -16
  758. homeassistant/components/tolo/translations/tr.json +1 -2
  759. homeassistant/components/tomorrowio/translations/sr-Latn.json +0 -24
  760. homeassistant/components/tplink/manifest.json +0 -1
  761. homeassistant/components/traccar_server/translations/tr.json +0 -12
  762. homeassistant/components/transmission/translations/tr.json +0 -24
  763. homeassistant/components/trend/translations/sr-Latn.json +0 -21
  764. homeassistant/components/tuya/__init__.py +4 -12
  765. homeassistant/components/tuya/binary_sensor.py +2 -2
  766. homeassistant/components/tuya/humidifier.py +3 -3
  767. homeassistant/components/tuya/models.py +20 -18
  768. homeassistant/components/tuya/translations/es.json +0 -32
  769. homeassistant/components/tuya/translations/ga.json +0 -6
  770. homeassistant/components/tuya/translations/sr-Latn.json +0 -45
  771. homeassistant/components/tuya/translations/tr.json +0 -72
  772. homeassistant/components/tuya/util.py +9 -11
  773. homeassistant/components/twitch/translations/es.json +0 -5
  774. homeassistant/components/ukraine_alarm/translations/tr.json +1 -2
  775. homeassistant/components/unifi/light.py +29 -62
  776. homeassistant/components/unifi/translations/es.json +0 -3
  777. homeassistant/components/unifi/translations/tr.json +0 -5
  778. homeassistant/components/unifiprotect/camera.py +1 -5
  779. homeassistant/components/unifiprotect/manifest.json +1 -1
  780. homeassistant/components/unifiprotect/translations/bg.json +7 -0
  781. homeassistant/components/unifiprotect/translations/cs.json +1 -1
  782. homeassistant/components/unifiprotect/translations/de.json +1 -1
  783. homeassistant/components/unifiprotect/translations/el.json +5 -1
  784. homeassistant/components/unifiprotect/translations/en-GB.json +1 -11
  785. homeassistant/components/unifiprotect/translations/en.json +1 -1
  786. homeassistant/components/unifiprotect/translations/es.json +1 -11
  787. homeassistant/components/unifiprotect/translations/fi.json +7 -0
  788. homeassistant/components/unifiprotect/translations/ga.json +10 -10
  789. homeassistant/components/unifiprotect/translations/lt.json +1 -1
  790. homeassistant/components/unifiprotect/translations/nl.json +3 -0
  791. homeassistant/components/unifiprotect/translations/pt.json +10 -0
  792. homeassistant/components/unifiprotect/translations/sk.json +1 -1
  793. homeassistant/components/unifiprotect/translations/sr-Latn.json +0 -11
  794. homeassistant/components/unifiprotect/translations/sv.json +0 -3
  795. homeassistant/components/unifiprotect/translations/tr.json +0 -10
  796. homeassistant/components/unifiprotect/translations/zh-Hans.json +3 -2
  797. homeassistant/components/unifiprotect/translations/zh-Hant.json +1 -1
  798. homeassistant/components/update/translations/sr-Latn.json +1 -51
  799. homeassistant/components/utility_meter/translations/sr-Latn.json +2 -63
  800. homeassistant/components/vacuum/strings.json +12 -8
  801. homeassistant/components/vacuum/translations/cs.json +12 -8
  802. homeassistant/components/vacuum/translations/de.json +11 -7
  803. homeassistant/components/vacuum/translations/en-GB.json +1 -56
  804. homeassistant/components/vacuum/translations/en.json +12 -8
  805. homeassistant/components/vacuum/translations/es.json +1 -56
  806. homeassistant/components/vacuum/translations/et.json +1 -51
  807. homeassistant/components/vacuum/translations/ga.json +1 -48
  808. homeassistant/components/vacuum/translations/lt.json +12 -8
  809. homeassistant/components/vacuum/translations/pt.json +16 -4
  810. homeassistant/components/vacuum/translations/ru.json +1 -48
  811. homeassistant/components/vacuum/translations/sk.json +12 -8
  812. homeassistant/components/vacuum/translations/sv.json +1 -13
  813. homeassistant/components/vacuum/translations/tr.json +1 -48
  814. homeassistant/components/vacuum/translations/zh-Hans.json +2 -6
  815. homeassistant/components/vacuum/translations/zh-Hant.json +12 -8
  816. homeassistant/components/vegehub/translations/tr.json +0 -5
  817. homeassistant/components/velux/translations/tr.json +0 -12
  818. homeassistant/components/vesync/manifest.json +1 -1
  819. homeassistant/components/vesync/translations/tr.json +0 -11
  820. homeassistant/components/vicare/translations/es.json +0 -54
  821. homeassistant/components/vicare/translations/sr-Latn.json +0 -10
  822. homeassistant/components/vicare/translations/tr.json +0 -21
  823. homeassistant/components/volvo/translations/es.json +0 -6
  824. homeassistant/components/volvo/translations/tr.json +0 -142
  825. homeassistant/components/volvooncall/translations/tr.json +1 -18
  826. homeassistant/components/waqi/translations/sr-Latn.json +0 -32
  827. homeassistant/components/waqi/translations/tr.json +0 -40
  828. homeassistant/components/water_heater/translations/sr-Latn.json +1 -2
  829. homeassistant/components/weatherflow/translations/tr.json +0 -8
  830. homeassistant/components/webostv/manifest.json +0 -1
  831. homeassistant/components/whirlpool/translations/tr.json +0 -81
  832. homeassistant/components/withings/translations/es.json +0 -5
  833. homeassistant/components/withings/translations/sr-Latn.json +0 -5
  834. homeassistant/components/wled/config_flow.py +2 -34
  835. homeassistant/components/wled/coordinator.py +0 -21
  836. homeassistant/components/wled/strings.json +2 -15
  837. homeassistant/components/wled/translations/bg.json +1 -2
  838. homeassistant/components/wled/translations/cs.json +2 -15
  839. homeassistant/components/wled/translations/de.json +2 -15
  840. homeassistant/components/wled/translations/el.json +1 -20
  841. homeassistant/components/wled/translations/en-GB.json +2 -15
  842. homeassistant/components/wled/translations/en.json +2 -15
  843. homeassistant/components/wled/translations/es.json +2 -15
  844. homeassistant/components/wled/translations/et.json +2 -15
  845. homeassistant/components/wled/translations/ga.json +1 -6
  846. homeassistant/components/wled/translations/it.json +1 -6
  847. homeassistant/components/wled/translations/lt.json +2 -15
  848. homeassistant/components/wled/translations/nl.json +1 -2
  849. homeassistant/components/wled/translations/pl.json +1 -8
  850. homeassistant/components/wled/translations/pt.json +1 -6
  851. homeassistant/components/wled/translations/ru.json +2 -29
  852. homeassistant/components/wled/translations/sk.json +2 -15
  853. homeassistant/components/wled/translations/tr.json +1 -26
  854. homeassistant/components/wled/translations/zh-Hans.json +1 -6
  855. homeassistant/components/wled/translations/zh-Hant.json +2 -15
  856. homeassistant/components/wled/update.py +1 -1
  857. homeassistant/components/workday/translations/tr.json +0 -5
  858. homeassistant/components/xbox/translations/es.json +1 -16
  859. homeassistant/components/xbox/translations/ga.json +1 -10
  860. homeassistant/components/xbox/translations/tr.json +0 -111
  861. homeassistant/components/xiaomi_aqara/translations/sr-Latn.json +0 -6
  862. homeassistant/components/xiaomi_ble/manifest.json +0 -1
  863. homeassistant/components/yardian/translations/tr.json +0 -16
  864. homeassistant/components/yolink/translations/tr.json +0 -14
  865. homeassistant/components/youtube/manifest.json +1 -1
  866. homeassistant/components/youtube/translations/es.json +0 -5
  867. homeassistant/components/zha/config_flow.py +6 -2
  868. homeassistant/components/zha/manifest.json +0 -1
  869. homeassistant/components/zha/radio_manager.py +2 -2
  870. homeassistant/components/zha/translations/de.json +1 -1
  871. homeassistant/components/zha/translations/en-GB.json +0 -44
  872. homeassistant/components/zha/translations/es.json +0 -44
  873. homeassistant/components/zha/translations/et.json +0 -42
  874. homeassistant/components/zha/translations/ga.json +0 -44
  875. homeassistant/components/zha/translations/it.json +0 -44
  876. homeassistant/components/zha/translations/mk.json +1 -18
  877. homeassistant/components/zha/translations/nl.json +0 -8
  878. homeassistant/components/zha/translations/sr-Latn.json +0 -3
  879. homeassistant/components/zha/translations/tr.json +2 -213
  880. homeassistant/components/zha/translations/zh-Hans.json +0 -12
  881. homeassistant/components/zwave_js/translations/tr.json +0 -17
  882. homeassistant/const.py +1 -2
  883. homeassistant/generated/integrations.json +21 -21
  884. homeassistant/generated/labs.py +2 -2
  885. homeassistant/helpers/area_registry.py +1 -8
  886. homeassistant/helpers/condition.py +1 -16
  887. homeassistant/helpers/entity.py +1 -3
  888. homeassistant/helpers/floor_registry.py +1 -12
  889. homeassistant/helpers/trigger.py +1 -16
  890. homeassistant/package_constraints.txt +4 -4
  891. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/METADATA +2 -2
  892. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/RECORD +897 -983
  893. homeassistant/components/actron_air/translations/tr.json +0 -27
  894. homeassistant/components/airobot/translations/es.json +0 -44
  895. homeassistant/components/airobot/translations/ga.json +0 -40
  896. homeassistant/components/airobot/translations/it.json +0 -1
  897. homeassistant/components/airos/translations/tr.json +0 -71
  898. homeassistant/components/alert/translations/mk.json +0 -10
  899. homeassistant/components/anglian_water/translations/el.json +0 -20
  900. homeassistant/components/anglian_water/translations/en-GB.json +0 -55
  901. homeassistant/components/anglian_water/translations/es.json +0 -55
  902. homeassistant/components/anglian_water/translations/ga.json +0 -54
  903. homeassistant/components/anglian_water/translations/sv.json +0 -14
  904. homeassistant/components/anglian_water/translations/tr.json +0 -54
  905. homeassistant/components/automation/translations/mk.json +0 -10
  906. homeassistant/components/backblaze_b2/translations/tr.json +0 -92
  907. homeassistant/components/binary_sensor/trigger.py +0 -67
  908. homeassistant/components/binary_sensor/triggers.yaml +0 -25
  909. homeassistant/components/color_extractor/translations/mk.json +0 -7
  910. homeassistant/components/compit/translations/tr.json +0 -35
  911. homeassistant/components/cync/translations/tr.json +0 -46
  912. homeassistant/components/datetime/translations/sr-Latn.json +0 -17
  913. homeassistant/components/droplet/translations/tr.json +0 -40
  914. homeassistant/components/ekeybionyx/translations/tr.json +0 -66
  915. homeassistant/components/energy/translations/sr-Latn.json +0 -64
  916. homeassistant/components/energyid/translations/bg.json +0 -7
  917. homeassistant/components/energyid/translations/el.json +0 -53
  918. homeassistant/components/energyid/translations/en-GB.json +0 -71
  919. homeassistant/components/energyid/translations/es.json +0 -71
  920. homeassistant/components/energyid/translations/ga.json +0 -71
  921. homeassistant/components/energyid/translations/it.json +0 -71
  922. homeassistant/components/energyid/translations/nl.json +0 -1
  923. homeassistant/components/energyid/translations/sv.json +0 -37
  924. homeassistant/components/energyid/translations/tr.json +0 -71
  925. homeassistant/components/essent/translations/el.json +0 -9
  926. homeassistant/components/essent/translations/en-GB.json +0 -70
  927. homeassistant/components/essent/translations/es.json +0 -70
  928. homeassistant/components/essent/translations/ga.json +0 -70
  929. homeassistant/components/essent/translations/tr.json +0 -70
  930. homeassistant/components/fing/translations/tr.json +0 -24
  931. homeassistant/components/forked_daapd/translations/sr-Latn.json +0 -8
  932. homeassistant/components/go2rtc/util.py +0 -12
  933. homeassistant/components/google_air_quality/translations/el.json +0 -72
  934. homeassistant/components/google_air_quality/translations/en-GB.json +0 -225
  935. homeassistant/components/google_air_quality/translations/es.json +0 -239
  936. homeassistant/components/google_air_quality/translations/fr.json +0 -14
  937. homeassistant/components/google_air_quality/translations/ga.json +0 -225
  938. homeassistant/components/google_air_quality/translations/it.json +0 -106
  939. homeassistant/components/google_air_quality/translations/pl.json +0 -11
  940. homeassistant/components/google_air_quality/translations/ru.json +0 -33
  941. homeassistant/components/google_air_quality/translations/sr-Latn.json +0 -35
  942. homeassistant/components/google_air_quality/translations/sv.json +0 -122
  943. homeassistant/components/google_air_quality/translations/tr.json +0 -225
  944. homeassistant/components/hanna/translations/es.json +0 -44
  945. homeassistant/components/hue_ble/translations/el.json +0 -11
  946. homeassistant/components/hue_ble/translations/en-GB.json +0 -21
  947. homeassistant/components/hue_ble/translations/es.json +0 -21
  948. homeassistant/components/hue_ble/translations/et.json +0 -21
  949. homeassistant/components/hue_ble/translations/ga.json +0 -20
  950. homeassistant/components/hue_ble/translations/tr.json +0 -20
  951. homeassistant/components/hunterdouglas_powerview/translations/sr-Latn.json +0 -9
  952. homeassistant/components/imeon_inverter/translations/tr.json +0 -57
  953. homeassistant/components/inels/translations/tr.json +0 -30
  954. homeassistant/components/irm_kmi/translations/tr.json +0 -21
  955. homeassistant/components/labs/translations/es.json +0 -3
  956. homeassistant/components/labs/translations/sr-Latn.json +0 -3
  957. homeassistant/components/lannouncer/translations/tr.json +0 -8
  958. homeassistant/components/libre_hardware_monitor/translations/tr.json +0 -23
  959. homeassistant/components/london_underground/translations/tr.json +0 -38
  960. homeassistant/components/lunatone/translations/tr.json +0 -36
  961. homeassistant/components/media_source/translations/tr.json +0 -5
  962. homeassistant/components/meteo_lt/translations/tr.json +0 -14
  963. homeassistant/components/nintendo_parental_controls/translations/tr.json +0 -68
  964. homeassistant/components/notify/translations/sr-Latn.json +0 -3
  965. homeassistant/components/openrgb/translations/tr.json +0 -84
  966. homeassistant/components/prowl/translations/tr.json +0 -21
  967. homeassistant/components/remote/translations/mk.json +0 -10
  968. homeassistant/components/satel_integra/translations/tr.json +0 -131
  969. homeassistant/components/saunum/translations/ru.json +0 -9
  970. homeassistant/components/saunum/translations/sr-Latn.json +0 -9
  971. homeassistant/components/script/translations/mk.json +0 -10
  972. homeassistant/components/sftp_storage/translations/tr.json +0 -22
  973. homeassistant/components/sleep_as_android/translations/tr.json +0 -68
  974. homeassistant/components/togrill/translations/tr.json +0 -58
  975. homeassistant/components/uptime_kuma/translations/tr.json +0 -13
  976. homeassistant/components/vacuum/translations/mk.json +0 -10
  977. homeassistant/components/victron_ble/translations/es.json +0 -234
  978. homeassistant/components/victron_remote_monitoring/translations/tr.json +0 -102
  979. homeassistant/components/water_heater/translations/mk.json +0 -10
  980. homeassistant/components/zeroconf/translations/tr.json +0 -14
  981. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/WHEEL +0 -0
  982. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/entry_points.txt +0 -0
  983. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/licenses/LICENSE.md +0 -0
  984. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  985. {homeassistant-2025.12.0.dist-info → homeassistant-2025.12.0b1.dist-info}/top_level.txt +0 -0
@@ -28,9 +28,6 @@
28
28
  "number": {
29
29
  "lamp_brightness": {
30
30
  "name": "Svetlo"
31
- },
32
- "target_temperature": {
33
- "name": "Temperatura"
34
31
  }
35
32
  },
36
33
  "select": {
@@ -92,9 +89,6 @@
92
89
  "mid": "Srednji"
93
90
  }
94
91
  },
95
- "carbon_dioxide": {
96
- "name": "Ugljen dioksid"
97
- },
98
92
  "current_dish_washing_course": {
99
93
  "state": {
100
94
  "normal": "Normalno"
@@ -160,7 +154,6 @@
160
154
  }
161
155
  },
162
156
  "target_temperature": {
163
- "name": "Temperatura",
164
157
  "state": {
165
158
  "off": "Isklju\u010deno"
166
159
  }
@@ -171,7 +164,6 @@
171
164
  }
172
165
  },
173
166
  "temperature_state": {
174
- "name": "Temperatura",
175
167
  "state": {
176
168
  "high": "Visok"
177
169
  }
@@ -162,7 +162,6 @@
162
162
  "error_during_cleaning": "Bir hata nedeniyle temizlik durduruldu",
163
163
  "error_during_washing": "\u00c7ama\u015f\u0131r makinesinde bir hata olu\u015ftu",
164
164
  "error_has_occurred": "Bir hata olu\u015ftu",
165
- "filter_reset_complete": "Filtre \u00f6mr\u00fc s\u0131f\u0131rland\u0131",
166
165
  "homeguard_is_stopped": "Home Guard durdu",
167
166
  "lack_of_water": "Su tank\u0131nda su yok",
168
167
  "motion_is_detected": "Home Guard s\u0131ras\u0131nda hareket alg\u0131land\u0131\u011f\u0131nda foto\u011fraf g\u00f6nderilir",
@@ -178,7 +177,6 @@
178
177
  "time_to_clean_filter": "Filtreyi temizleme zaman\u0131 geldi",
179
178
  "timer_is_complete": "Zamanlay\u0131c\u0131 tamamland\u0131",
180
179
  "washing_is_complete": "Y\u0131kama tamamland\u0131",
181
- "water_filter_reset_complete": "Su filtresinin kullan\u0131m \u00f6mr\u00fc s\u0131f\u0131rland\u0131",
182
180
  "water_is_full": "Su dolu",
183
181
  "water_leak_has_occurred": "Bula\u015f\u0131k makinesi su ka\u00e7a\u011f\u0131 tespit etti"
184
182
  }
@@ -676,9 +674,6 @@
676
674
  "elapsed_day_total": {
677
675
  "name": "Demleme s\u00fcresi"
678
676
  },
679
- "energy_usage_last_month": {
680
- "name": "Ge\u00e7en ayki enerji"
681
- },
682
677
  "filter_lifetime": {
683
678
  "name": "Kalan filtre"
684
679
  },
@@ -906,9 +901,6 @@
906
901
  "normal": "\u0130yi"
907
902
  }
908
903
  },
909
- "top_filter_remain_percent": {
910
- "name": "\u00dcst filtre kald\u0131"
911
- },
912
904
  "total": {
913
905
  "name": "Toplam s\u00fcre"
914
906
  },
@@ -928,18 +920,6 @@
928
920
  "used_time": {
929
921
  "name": "Kullan\u0131lan su filtresi"
930
922
  },
931
- "water_filter_1_remain_percent": {
932
- "name": "Su filtresi"
933
- },
934
- "water_filter_2_remain_percent": {
935
- "name": "Su filtresi a\u015fama 2"
936
- },
937
- "water_filter_3_remain_percent": {
938
- "name": "Su filtresi a\u015fama 3"
939
- },
940
- "water_filter_state": {
941
- "name": "Su filtresi"
942
- },
943
923
  "water_type": {
944
924
  "name": "Tip"
945
925
  },
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
 
5
5
  from datetime import timedelta
6
6
  import logging
7
+ from types import MappingProxyType
7
8
 
8
9
  from librehardwaremonitor_api import (
9
10
  LibreHardwareMonitorClient,
@@ -54,11 +55,15 @@ class LibreHardwareMonitorCoordinator(DataUpdateCoordinator[LibreHardwareMonitor
54
55
  device_entries: list[DeviceEntry] = dr.async_entries_for_config_entry(
55
56
  registry=dr.async_get(self.hass), config_entry_id=config_entry.entry_id
56
57
  )
57
- self._previous_devices: dict[DeviceId, DeviceName] = {
58
- DeviceId(next(iter(device.identifiers))[1]): DeviceName(device.name)
59
- for device in device_entries
60
- if device.identifiers and device.name
61
- }
58
+ self._previous_devices: MappingProxyType[DeviceId, DeviceName] = (
59
+ MappingProxyType(
60
+ {
61
+ DeviceId(next(iter(device.identifiers))[1]): DeviceName(device.name)
62
+ for device in device_entries
63
+ if device.identifiers and device.name
64
+ }
65
+ )
66
+ )
62
67
 
63
68
  async def _async_update_data(self) -> LibreHardwareMonitorData:
64
69
  try:
@@ -70,9 +75,7 @@ class LibreHardwareMonitorCoordinator(DataUpdateCoordinator[LibreHardwareMonitor
70
75
  except LibreHardwareMonitorNoDevicesError as err:
71
76
  raise UpdateFailed("No sensor data available, will retry") from err
72
77
 
73
- await self._async_handle_changes_in_devices(
74
- dict(lhm_data.main_device_ids_and_names)
75
- )
78
+ await self._async_handle_changes_in_devices(lhm_data.main_device_ids_and_names)
76
79
 
77
80
  return lhm_data
78
81
 
@@ -89,23 +92,20 @@ class LibreHardwareMonitorCoordinator(DataUpdateCoordinator[LibreHardwareMonitor
89
92
  )
90
93
 
91
94
  async def _async_handle_changes_in_devices(
92
- self, detected_devices: dict[DeviceId, DeviceName]
95
+ self, detected_devices: MappingProxyType[DeviceId, DeviceName]
93
96
  ) -> None:
94
97
  """Handle device changes by deleting devices from / adding devices to Home Assistant."""
95
- detected_devices = {
96
- DeviceId(f"{self.config_entry.entry_id}_{detected_id}"): device_name
97
- for detected_id, device_name in detected_devices.items()
98
- }
99
-
100
98
  previous_device_ids = set(self._previous_devices.keys())
101
99
  detected_device_ids = set(detected_devices.keys())
102
100
 
103
- _LOGGER.debug("Previous device_ids: %s", previous_device_ids)
104
- _LOGGER.debug("Detected device_ids: %s", detected_device_ids)
105
-
106
101
  if previous_device_ids == detected_device_ids:
107
102
  return
108
103
 
104
+ if self.data is None:
105
+ # initial update during integration startup
106
+ self._previous_devices = detected_devices # type: ignore[unreachable]
107
+ return
108
+
109
109
  if orphaned_devices := previous_device_ids - detected_device_ids:
110
110
  _LOGGER.warning(
111
111
  "Device(s) no longer available, will be removed: %s",
@@ -114,21 +114,13 @@ class LibreHardwareMonitorCoordinator(DataUpdateCoordinator[LibreHardwareMonitor
114
114
  device_registry = dr.async_get(self.hass)
115
115
  for device_id in orphaned_devices:
116
116
  if device := device_registry.async_get_device(
117
- identifiers={(DOMAIN, device_id)}
117
+ identifiers={(DOMAIN, f"{self.config_entry.entry_id}_{device_id}")}
118
118
  ):
119
- _LOGGER.debug(
120
- "Removing device: %s", self._previous_devices[device_id]
121
- )
122
119
  device_registry.async_update_device(
123
120
  device_id=device.id,
124
121
  remove_config_entry_id=self.config_entry.entry_id,
125
122
  )
126
123
 
127
- if self.data is None:
128
- # initial update during integration startup
129
- self._previous_devices = detected_devices # type: ignore[unreachable]
130
- return
131
-
132
124
  if new_devices := detected_device_ids - previous_device_ids:
133
125
  _LOGGER.warning(
134
126
  "New Device(s) detected, reload integration to add them to Home Assistant: %s",
@@ -85,9 +85,6 @@
85
85
  "spread": {
86
86
  "description": "Renk \u00e7ark\u0131 \u00fczerinde derece cinsinden, kat\u0131l\u0131mc\u0131 \u0131\u015f\u0131klar aras\u0131ndaki maksimum renk tonu fark\u0131.",
87
87
  "name": "Yay\u0131lma"
88
- },
89
- "transition": {
90
- "description": "Renkler aras\u0131ndaki ge\u00e7i\u015fin s\u00fcresi."
91
88
  }
92
89
  },
93
90
  "name": "Renk d\u00f6ng\u00fcs\u00fc efekti"
@@ -43,6 +43,7 @@
43
43
  "conditions": {
44
44
  "is_off": {
45
45
  "description": "Test if a light is off.",
46
+ "description_configured": "[%key:component::light::conditions::is_off::description%]",
46
47
  "fields": {
47
48
  "behavior": {
48
49
  "description": "[%key:component::light::common::condition_behavior_description%]",
@@ -53,6 +54,7 @@
53
54
  },
54
55
  "is_on": {
55
56
  "description": "Test if a light is on.",
57
+ "description_configured": "[%key:component::light::conditions::is_on::description%]",
56
58
  "fields": {
57
59
  "behavior": {
58
60
  "description": "[%key:component::light::common::condition_behavior_description%]",
@@ -510,24 +512,26 @@
510
512
  "title": "Light",
511
513
  "triggers": {
512
514
  "turned_off": {
513
- "description": "Triggers after one or more lights turn off.",
515
+ "description": "Triggers when a light is turned off.",
516
+ "description_configured": "[%key:component::light::triggers::turned_off::description%]",
514
517
  "fields": {
515
518
  "behavior": {
516
519
  "description": "[%key:component::light::common::trigger_behavior_description%]",
517
520
  "name": "[%key:component::light::common::trigger_behavior_name%]"
518
521
  }
519
522
  },
520
- "name": "Light turned off"
523
+ "name": "When a light is turned off"
521
524
  },
522
525
  "turned_on": {
523
- "description": "Triggers after one or more lights turn on.",
526
+ "description": "Triggers when a light is turned on.",
527
+ "description_configured": "[%key:component::light::triggers::turned_on::description%]",
524
528
  "fields": {
525
529
  "behavior": {
526
530
  "description": "[%key:component::light::common::trigger_behavior_description%]",
527
531
  "name": "[%key:component::light::common::trigger_behavior_name%]"
528
532
  }
529
533
  },
530
- "name": "Light turned on"
534
+ "name": "When a light is turned on"
531
535
  }
532
536
  }
533
537
  }
@@ -187,5 +187,17 @@
187
187
  }
188
188
  }
189
189
  }
190
+ },
191
+ "triggers": {
192
+ "turned_off": {
193
+ "description": "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u0441\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430.",
194
+ "description_configured": "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u0441\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430.",
195
+ "name": "\u041a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430"
196
+ },
197
+ "turned_on": {
198
+ "description": "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u0441\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430.",
199
+ "description_configured": "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u0441\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430.",
200
+ "name": "\u041a\u043e\u0433\u0430\u0442\u043e \u043b\u0430\u043c\u043f\u0430\u0442\u0430 \u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430"
201
+ }
190
202
  }
191
203
  }
@@ -43,6 +43,7 @@
43
43
  "conditions": {
44
44
  "is_off": {
45
45
  "description": "Otestuje, zda nesv\u00edt\u00ed sv\u011btlo.",
46
+ "description_configured": "Otestuje, zda nesv\u00edt\u00ed sv\u011btlo.",
46
47
  "fields": {
47
48
  "behavior": {
48
49
  "description": "Jak by se m\u011bl stav shodovat na c\u00edlov\u00fdch sv\u011btlech.",
@@ -53,6 +54,7 @@
53
54
  },
54
55
  "is_on": {
55
56
  "description": "Otestuje, zda sv\u00edt\u00ed sv\u011btlo.",
57
+ "description_configured": "Otestuje, zda sv\u00edt\u00ed sv\u011btlo.",
56
58
  "fields": {
57
59
  "behavior": {
58
60
  "description": "Jak by se m\u011bl stav shodovat na c\u00edlov\u00fdch sv\u011btlech.",
@@ -509,24 +511,26 @@
509
511
  "title": "Sv\u011btlo",
510
512
  "triggers": {
511
513
  "turned_off": {
512
- "description": "Spust\u00ed se po zhasnut\u00ed jednoho nebo v\u00edce sv\u011btel.",
514
+ "description": "Spou\u0161t\u00ed se p\u0159i zhasnut\u00ed sv\u011btla.",
515
+ "description_configured": "Spou\u0161t\u00ed se p\u0159i zhasnut\u00ed sv\u011btla.",
513
516
  "fields": {
514
517
  "behavior": {
515
518
  "description": "Chov\u00e1n\u00ed c\u00edlov\u00fdch sv\u011btel p\u0159i rozsv\u00edcen\u00ed.",
516
519
  "name": "Chov\u00e1n\u00ed"
517
520
  }
518
521
  },
519
- "name": "Sv\u011btlo zhasne"
522
+ "name": "Kdy\u017e zhasne sv\u011btlo"
520
523
  },
521
524
  "turned_on": {
522
- "description": "Spust\u00ed se po rozsv\u00edcen\u00ed jednoho nebo v\u00edce sv\u011btel.",
525
+ "description": "Spou\u0161t\u00ed se p\u0159i rozsv\u00edcen\u00ed sv\u011btla.",
526
+ "description_configured": "Spou\u0161t\u00ed se p\u0159i rozsv\u00edcen\u00ed sv\u011btla.",
523
527
  "fields": {
524
528
  "behavior": {
525
529
  "description": "Chov\u00e1n\u00ed c\u00edlov\u00fdch sv\u011btel p\u0159i rozsv\u00edcen\u00ed.",
526
530
  "name": "Chov\u00e1n\u00ed"
527
531
  }
528
532
  },
529
- "name": "Sv\u011btlo se rozsv\u00edt\u00ed"
533
+ "name": "Kdy\u017e se rozsv\u00edt\u00ed sv\u011btlo"
530
534
  }
531
535
  }
532
536
  }
@@ -43,6 +43,7 @@
43
43
  "conditions": {
44
44
  "is_off": {
45
45
  "description": "Pr\u00fcfe, ob eine Leuchte ausgeschaltet ist.",
46
+ "description_configured": "Pr\u00fcfe, ob eine Leuchte ausgeschaltet ist.",
46
47
  "fields": {
47
48
  "behavior": {
48
49
  "description": "Wie der Zustand zu den ausgew\u00e4hlten Leuchten passen sollte.",
@@ -53,6 +54,7 @@
53
54
  },
54
55
  "is_on": {
55
56
  "description": "Pr\u00fcfe, ob eine Leuchte eingeschaltet ist.",
57
+ "description_configured": "Pr\u00fcfe, ob eine Leuchte eingeschaltet ist.",
56
58
  "fields": {
57
59
  "behavior": {
58
60
  "description": "Wie der Zustand zu den ausgew\u00e4hlten Leuchten passen sollte.",
@@ -509,7 +511,8 @@
509
511
  "title": "Leuchte",
510
512
  "triggers": {
511
513
  "turned_off": {
512
- "description": "Wird ausgel\u00f6st, sobald eine oder mehrere Leuchten ausgeschaltet werden.",
514
+ "description": "Wird ausgel\u00f6st, sobald eine Leuchte ausgeschaltet wird.",
515
+ "description_configured": "Wird ausgel\u00f6st, sobald eine Leuchte ausgeschaltet wird.",
513
516
  "fields": {
514
517
  "behavior": {
515
518
  "description": "Das Verhalten der ausgew\u00e4hlten Leuchten, das als Ausl\u00f6ser dienen soll.",
@@ -519,7 +522,8 @@
519
522
  "name": "Sobald eine Leuchte ausgeschaltet wird"
520
523
  },
521
524
  "turned_on": {
522
- "description": "Wird ausgel\u00f6st, sobald eine oder mehrere Leuchten eingeschaltet werden.",
525
+ "description": "Wird ausgel\u00f6st, sobald eine Leuchte eingeschaltet wird.",
526
+ "description_configured": "Wird ausgel\u00f6st, sobald eine Leuchte eingeschaltet wird.",
523
527
  "fields": {
524
528
  "behavior": {
525
529
  "description": "Das Verhalten der ausgew\u00e4hlten Leuchten, das als Ausl\u00f6ser dienen soll.",
@@ -282,12 +282,6 @@
282
282
  "long": "\u039c\u03b5\u03b3\u03ac\u03bb\u03b7\u03c2 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1\u03c2",
283
283
  "short": "\u039c\u03b9\u03ba\u03c1\u03ae\u03c2 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1\u03c2"
284
284
  }
285
- },
286
- "state": {
287
- "options": {
288
- "off": "\u0391\u03bd\u03b5\u03bd\u03b5\u03c1\u03b3\u03cc",
289
- "on": "\u0395\u03bd\u03b5\u03c1\u03b3\u03cc"
290
- }
291
285
  }
292
286
  },
293
287
  "services": {
@@ -1,7 +1,5 @@
1
1
  {
2
2
  "common": {
3
- "condition_behavior_description": "How the state should match on the targeted lights.",
4
- "condition_behavior_name": "Behaviour",
5
3
  "field_brightness_description": "Number indicating brightness, where 0 turns the light off, 1 is the minimum brightness, and 255 is the maximum brightness.",
6
4
  "field_brightness_name": "Brightness value",
7
5
  "field_brightness_pct_description": "Number indicating the percentage of full brightness, where 0 turns the light off, 1 is the minimum brightness, and 100 is the maximum brightness.",
@@ -36,31 +34,7 @@
36
34
  "field_white_name": "White",
37
35
  "field_xy_color_description": "Colour in XY-format. A list of two decimal numbers between 0 and 1.",
38
36
  "field_xy_color_name": "XY-colour",
39
- "section_advanced_fields_name": "Advanced options",
40
- "trigger_behavior_description": "The behaviour of the targeted lights to trigger on.",
41
- "trigger_behavior_name": "Behaviour"
42
- },
43
- "conditions": {
44
- "is_off": {
45
- "description": "Test if a light is off.",
46
- "fields": {
47
- "behavior": {
48
- "description": "How the state should match on the targeted lights.",
49
- "name": "Behaviour"
50
- }
51
- },
52
- "name": "If a light is off"
53
- },
54
- "is_on": {
55
- "description": "Test if a light is on.",
56
- "fields": {
57
- "behavior": {
58
- "description": "How the state should match on the targeted lights.",
59
- "name": "Behaviour"
60
- }
61
- },
62
- "name": "If a light is on"
63
- }
37
+ "section_advanced_fields_name": "Advanced options"
64
38
  },
65
39
  "device_automation": {
66
40
  "action_type": {
@@ -310,30 +284,11 @@
310
284
  "yellowgreen": "Yellow green"
311
285
  }
312
286
  },
313
- "condition_behavior": {
314
- "options": {
315
- "all": "All",
316
- "any": "Any"
317
- }
318
- },
319
287
  "flash": {
320
288
  "options": {
321
289
  "long": "Long",
322
290
  "short": "Short"
323
291
  }
324
- },
325
- "state": {
326
- "options": {
327
- "off": "Off",
328
- "on": "On"
329
- }
330
- },
331
- "trigger_behavior": {
332
- "options": {
333
- "any": "Any",
334
- "first": "First",
335
- "last": "Last"
336
- }
337
292
  }
338
293
  },
339
294
  "services": {
@@ -506,27 +461,5 @@
506
461
  }
507
462
  }
508
463
  },
509
- "title": "Light",
510
- "triggers": {
511
- "turned_off": {
512
- "description": "Triggers after one or more lights turn off.",
513
- "fields": {
514
- "behavior": {
515
- "description": "The behaviour of the targeted lights to trigger on.",
516
- "name": "Behaviour"
517
- }
518
- },
519
- "name": "Light turned off"
520
- },
521
- "turned_on": {
522
- "description": "Triggers after one or more lights turn on.",
523
- "fields": {
524
- "behavior": {
525
- "description": "The behaviour of the targeted lights to trigger on.",
526
- "name": "Behaviour"
527
- }
528
- },
529
- "name": "Light turned on"
530
- }
531
- }
464
+ "title": "Light"
532
465
  }
@@ -43,6 +43,7 @@
43
43
  "conditions": {
44
44
  "is_off": {
45
45
  "description": "Test if a light is off.",
46
+ "description_configured": "Test if a light is off.",
46
47
  "fields": {
47
48
  "behavior": {
48
49
  "description": "How the state should match on the targeted lights.",
@@ -53,6 +54,7 @@
53
54
  },
54
55
  "is_on": {
55
56
  "description": "Test if a light is on.",
57
+ "description_configured": "Test if a light is on.",
56
58
  "fields": {
57
59
  "behavior": {
58
60
  "description": "How the state should match on the targeted lights.",
@@ -510,24 +512,26 @@
510
512
  "title": "Light",
511
513
  "triggers": {
512
514
  "turned_off": {
513
- "description": "Triggers after one or more lights turn off.",
515
+ "description": "Triggers when a light is turned off.",
516
+ "description_configured": "Triggers when a light is turned off.",
514
517
  "fields": {
515
518
  "behavior": {
516
519
  "description": "The behavior of the targeted lights to trigger on.",
517
520
  "name": "Behavior"
518
521
  }
519
522
  },
520
- "name": "Light turned off"
523
+ "name": "When a light is turned off"
521
524
  },
522
525
  "turned_on": {
523
- "description": "Triggers after one or more lights turn on.",
526
+ "description": "Triggers when a light is turned on.",
527
+ "description_configured": "Triggers when a light is turned on.",
524
528
  "fields": {
525
529
  "behavior": {
526
530
  "description": "The behavior of the targeted lights to trigger on.",
527
531
  "name": "Behavior"
528
532
  }
529
533
  },
530
- "name": "Light turned on"
534
+ "name": "When a light is turned on"
531
535
  }
532
536
  }
533
537
  }
@@ -1,7 +1,5 @@
1
1
  {
2
2
  "common": {
3
- "condition_behavior_description": "C\u00f3mo debe coincidir el estado en las luces objetivo.",
4
- "condition_behavior_name": "Comportamiento",
5
3
  "field_brightness_description": "N\u00famero que indica el brillo, donde 0 apaga la luz, 1 es el brillo m\u00ednimo y 255 es el brillo m\u00e1ximo.",
6
4
  "field_brightness_name": "Valor de brillo",
7
5
  "field_brightness_pct_description": "N\u00famero que indica el porcentaje de brillo total, donde 0 apaga la luz, 1 es el brillo m\u00ednimo y 100 es el brillo m\u00e1ximo.",
@@ -36,30 +34,7 @@
36
34
  "field_white_name": "Blanco",
37
35
  "field_xy_color_description": "Color en formato XY. Una lista de dos n\u00fameros decimales entre 0 y 1.",
38
36
  "field_xy_color_name": "Color XY",
39
- "section_advanced_fields_name": "Opciones avanzadas",
40
- "trigger_behavior_description": "El comportamiento de las luces objetivo para que se dispare.",
41
- "trigger_behavior_name": "Comportamiento"
42
- },
43
- "conditions": {
44
- "is_off": {
45
- "description": "Comprueba si una luz est\u00e1 apagada.",
46
- "fields": {
47
- "behavior": {
48
- "description": "C\u00f3mo debe coincidir el estado en las luces objetivo.",
49
- "name": "Comportamiento"
50
- }
51
- },
52
- "name": "Si una luz est\u00e1 apagada"
53
- },
54
- "is_on": {
55
- "description": "Comprueba si una luz est\u00e1 encendida.",
56
- "fields": {
57
- "behavior": {
58
- "name": "Comportamiento"
59
- }
60
- },
61
- "name": "Si una luz est\u00e1 encendida"
62
- }
37
+ "section_advanced_fields_name": "Opciones avanzadas"
63
38
  },
64
39
  "device_automation": {
65
40
  "action_type": {
@@ -309,30 +284,11 @@
309
284
  "yellowgreen": "Amarillo verde"
310
285
  }
311
286
  },
312
- "condition_behavior": {
313
- "options": {
314
- "all": "Todos",
315
- "any": "Cualquiera"
316
- }
317
- },
318
287
  "flash": {
319
288
  "options": {
320
289
  "long": "Largo",
321
290
  "short": "Corto"
322
291
  }
323
- },
324
- "state": {
325
- "options": {
326
- "off": "Apagado",
327
- "on": "Encendido"
328
- }
329
- },
330
- "trigger_behavior": {
331
- "options": {
332
- "any": "Cualquiera",
333
- "first": "Primero",
334
- "last": "\u00daltimo"
335
- }
336
292
  }
337
293
  },
338
294
  "services": {
@@ -505,27 +461,5 @@
505
461
  }
506
462
  }
507
463
  },
508
- "title": "Luz",
509
- "triggers": {
510
- "turned_off": {
511
- "description": "Se dispara despu\u00e9s de que una o m\u00e1s luces se apagan.",
512
- "fields": {
513
- "behavior": {
514
- "description": "El comportamiento de las luces objetivo para que se dispare.",
515
- "name": "Comportamiento"
516
- }
517
- },
518
- "name": "Luz apagada"
519
- },
520
- "turned_on": {
521
- "description": "Se dispara despu\u00e9s de que una o m\u00e1s luces se encienden.",
522
- "fields": {
523
- "behavior": {
524
- "description": "El comportamiento de las luces objetivo para que se dispare.",
525
- "name": "Comportamiento"
526
- }
527
- },
528
- "name": "Luz encendida"
529
- }
530
- }
464
+ "title": "Luz"
531
465
  }