homeassistant 2025.7.4__py3-none-any.whl → 2025.8.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 (3092) hide show
  1. homeassistant/bootstrap.py +31 -38
  2. homeassistant/brands/frient.json +5 -0
  3. homeassistant/brands/third_reality.json +1 -1
  4. homeassistant/brands/ubiquiti.json +1 -1
  5. homeassistant/components/accuweather/translations/ga.json +6 -0
  6. homeassistant/components/aemet/translations/de.json +1 -1
  7. homeassistant/components/ai_task/__init__.py +34 -2
  8. homeassistant/components/ai_task/const.py +6 -0
  9. homeassistant/components/ai_task/entity.py +7 -4
  10. homeassistant/components/ai_task/manifest.json +2 -1
  11. homeassistant/components/ai_task/services.yaml +17 -3
  12. homeassistant/components/ai_task/strings.json +8 -0
  13. homeassistant/components/ai_task/task.py +100 -6
  14. homeassistant/components/ai_task/translations/bg.json +11 -1
  15. homeassistant/components/ai_task/translations/cs.json +8 -0
  16. homeassistant/components/ai_task/translations/de.json +8 -0
  17. homeassistant/components/ai_task/translations/el.json +8 -0
  18. homeassistant/components/ai_task/translations/en-GB.json +8 -0
  19. homeassistant/components/ai_task/translations/en.json +8 -0
  20. homeassistant/components/ai_task/translations/es.json +8 -0
  21. homeassistant/components/ai_task/translations/et.json +8 -0
  22. homeassistant/components/ai_task/translations/fr.json +7 -0
  23. homeassistant/components/ai_task/translations/ga.json +8 -0
  24. homeassistant/components/ai_task/translations/ja.json +8 -0
  25. homeassistant/components/ai_task/translations/lt.json +8 -0
  26. homeassistant/components/ai_task/translations/nl.json +3 -0
  27. homeassistant/components/ai_task/translations/pt.json +8 -0
  28. homeassistant/components/ai_task/translations/ru.json +7 -0
  29. homeassistant/components/ai_task/translations/sk.json +8 -0
  30. homeassistant/components/ai_task/translations/zh-Hans.json +8 -0
  31. homeassistant/components/ai_task/translations/zh-Hant.json +8 -0
  32. homeassistant/components/airgradient/manifest.json +1 -0
  33. homeassistant/components/airgradient/quality_scale.yaml +14 -18
  34. homeassistant/components/airgradient/translations/ga.json +15 -0
  35. homeassistant/components/airgradient/translations/it.json +3 -3
  36. homeassistant/components/airly/translations/de.json +1 -1
  37. homeassistant/components/airnow/__init__.py +0 -8
  38. homeassistant/components/airnow/config_flow.py +2 -2
  39. homeassistant/components/airnow/translations/de.json +1 -1
  40. homeassistant/components/airos/__init__.py +42 -0
  41. homeassistant/components/airos/config_flow.py +82 -0
  42. homeassistant/components/airos/const.py +9 -0
  43. homeassistant/components/airos/coordinator.py +66 -0
  44. homeassistant/components/airos/entity.py +36 -0
  45. homeassistant/components/airos/manifest.json +10 -0
  46. homeassistant/components/airos/quality_scale.yaml +72 -0
  47. homeassistant/components/airos/sensor.py +152 -0
  48. homeassistant/components/airos/strings.json +87 -0
  49. homeassistant/components/airos/translations/bg.json +75 -0
  50. homeassistant/components/airos/translations/cs.json +87 -0
  51. homeassistant/components/airos/translations/de.json +87 -0
  52. homeassistant/components/airos/translations/el.json +29 -0
  53. homeassistant/components/airos/translations/en.json +87 -0
  54. homeassistant/components/airos/translations/es.json +87 -0
  55. homeassistant/components/airos/translations/et.json +87 -0
  56. homeassistant/components/airos/translations/ga.json +70 -0
  57. homeassistant/components/airos/translations/sk.json +29 -0
  58. homeassistant/components/airos/translations/zh-Hans.json +87 -0
  59. homeassistant/components/airos/translations/zh-Hant.json +87 -0
  60. homeassistant/components/airq/const.py +0 -1
  61. homeassistant/components/airq/icons.json +0 -3
  62. homeassistant/components/airq/sensor.py +3 -5
  63. homeassistant/components/airq/strings.json +0 -3
  64. homeassistant/components/airq/translations/bg.json +0 -3
  65. homeassistant/components/airq/translations/ca.json +0 -3
  66. homeassistant/components/airq/translations/cs.json +0 -3
  67. homeassistant/components/airq/translations/de.json +0 -3
  68. homeassistant/components/airq/translations/el.json +0 -3
  69. homeassistant/components/airq/translations/en-GB.json +0 -3
  70. homeassistant/components/airq/translations/en.json +0 -3
  71. homeassistant/components/airq/translations/es.json +0 -3
  72. homeassistant/components/airq/translations/et.json +0 -3
  73. homeassistant/components/airq/translations/fi.json +0 -3
  74. homeassistant/components/airq/translations/fr.json +0 -3
  75. homeassistant/components/airq/translations/ga.json +16 -0
  76. homeassistant/components/airq/translations/hu.json +0 -3
  77. homeassistant/components/airq/translations/id.json +0 -3
  78. homeassistant/components/airq/translations/it.json +0 -3
  79. homeassistant/components/airq/translations/ja.json +0 -3
  80. homeassistant/components/airq/translations/ko.json +0 -3
  81. homeassistant/components/airq/translations/lt.json +0 -3
  82. homeassistant/components/airq/translations/nl.json +0 -3
  83. homeassistant/components/airq/translations/pl.json +0 -3
  84. homeassistant/components/airq/translations/pt-BR.json +0 -3
  85. homeassistant/components/airq/translations/pt.json +0 -3
  86. homeassistant/components/airq/translations/ro.json +0 -3
  87. homeassistant/components/airq/translations/ru.json +0 -3
  88. homeassistant/components/airq/translations/sk.json +0 -3
  89. homeassistant/components/airq/translations/sv.json +0 -3
  90. homeassistant/components/airq/translations/tr.json +0 -3
  91. homeassistant/components/airq/translations/uk.json +0 -3
  92. homeassistant/components/airq/translations/zh-Hans.json +0 -3
  93. homeassistant/components/airq/translations/zh-Hant.json +0 -3
  94. homeassistant/components/airthings/config_flow.py +2 -3
  95. homeassistant/components/airthings/sensor.py +2 -2
  96. homeassistant/components/airzone/translations/it.json +1 -1
  97. homeassistant/components/airzone_cloud/manifest.json +1 -1
  98. homeassistant/components/airzone_cloud/translations/it.json +1 -1
  99. homeassistant/components/alexa_devices/__init__.py +15 -6
  100. homeassistant/components/alexa_devices/config_flow.py +75 -9
  101. homeassistant/components/alexa_devices/coordinator.py +22 -5
  102. homeassistant/components/alexa_devices/icons.json +8 -0
  103. homeassistant/components/alexa_devices/manifest.json +2 -2
  104. homeassistant/components/alexa_devices/quality_scale.yaml +14 -16
  105. homeassistant/components/alexa_devices/services.py +121 -0
  106. homeassistant/components/alexa_devices/services.yaml +504 -0
  107. homeassistant/components/alexa_devices/strings.json +536 -3
  108. homeassistant/components/alexa_devices/translations/bg.json +35 -0
  109. homeassistant/components/alexa_devices/translations/ca.json +6 -0
  110. homeassistant/components/alexa_devices/translations/cs.json +536 -3
  111. homeassistant/components/alexa_devices/translations/de.json +536 -3
  112. homeassistant/components/alexa_devices/translations/el.json +15 -3
  113. homeassistant/components/alexa_devices/translations/en-GB.json +14 -2
  114. homeassistant/components/alexa_devices/translations/en.json +536 -3
  115. homeassistant/components/alexa_devices/translations/es.json +41 -2
  116. homeassistant/components/alexa_devices/translations/et.json +14 -2
  117. homeassistant/components/alexa_devices/translations/ga.json +436 -2
  118. homeassistant/components/alexa_devices/translations/he.json +6 -0
  119. homeassistant/components/alexa_devices/translations/hu.json +0 -8
  120. homeassistant/components/alexa_devices/translations/it.json +0 -8
  121. homeassistant/components/alexa_devices/translations/ja.json +14 -2
  122. homeassistant/components/alexa_devices/translations/lt.json +14 -2
  123. homeassistant/components/alexa_devices/translations/mk.json +5 -1
  124. homeassistant/components/alexa_devices/translations/nl.json +6 -8
  125. homeassistant/components/alexa_devices/translations/pt.json +14 -2
  126. homeassistant/components/alexa_devices/translations/ru.json +20 -0
  127. homeassistant/components/alexa_devices/translations/sk.json +14 -2
  128. homeassistant/components/alexa_devices/translations/sv.json +11 -8
  129. homeassistant/components/alexa_devices/translations/zh-Hans.json +41 -3
  130. homeassistant/components/alexa_devices/translations/zh-Hant.json +536 -3
  131. homeassistant/components/alexa_devices/utils.py +2 -2
  132. homeassistant/components/amberelectric/__init__.py +12 -1
  133. homeassistant/components/amberelectric/const.py +11 -1
  134. homeassistant/components/amberelectric/coordinator.py +2 -23
  135. homeassistant/components/amberelectric/helpers.py +25 -0
  136. homeassistant/components/amberelectric/icons.json +5 -0
  137. homeassistant/components/amberelectric/sensor.py +2 -6
  138. homeassistant/components/amberelectric/services.py +121 -0
  139. homeassistant/components/amberelectric/services.yaml +16 -0
  140. homeassistant/components/amberelectric/strings.json +46 -10
  141. homeassistant/components/amberelectric/translations/cs.json +36 -0
  142. homeassistant/components/amberelectric/translations/de.json +37 -1
  143. homeassistant/components/amberelectric/translations/el.json +36 -0
  144. homeassistant/components/amberelectric/translations/en-GB.json +36 -0
  145. homeassistant/components/amberelectric/translations/en.json +36 -0
  146. homeassistant/components/amberelectric/translations/es.json +36 -0
  147. homeassistant/components/amberelectric/translations/et.json +36 -0
  148. homeassistant/components/amberelectric/translations/ga.json +36 -0
  149. homeassistant/components/amberelectric/translations/lt.json +36 -0
  150. homeassistant/components/amberelectric/translations/mk.json +19 -1
  151. homeassistant/components/amberelectric/translations/nb.json +14 -0
  152. homeassistant/components/amberelectric/translations/sk.json +36 -0
  153. homeassistant/components/amberelectric/translations/zh-Hans.json +36 -0
  154. homeassistant/components/amberelectric/translations/zh-Hant.json +36 -0
  155. homeassistant/components/amcrest/manifest.json +1 -1
  156. homeassistant/components/analytics/__init__.py +3 -0
  157. homeassistant/components/analytics/analytics.py +87 -2
  158. homeassistant/components/analytics/http.py +27 -0
  159. homeassistant/components/analytics/manifest.json +1 -1
  160. homeassistant/components/analytics_insights/__init__.py +0 -8
  161. homeassistant/components/analytics_insights/config_flow.py +6 -2
  162. homeassistant/components/androidtv/media_player.py +1 -1
  163. homeassistant/components/androidtv_remote/__init__.py +6 -21
  164. homeassistant/components/androidtv_remote/config_flow.py +35 -18
  165. homeassistant/components/androidtv_remote/diagnostics.py +1 -1
  166. homeassistant/components/androidtv_remote/entity.py +4 -2
  167. homeassistant/components/androidtv_remote/helpers.py +4 -2
  168. homeassistant/components/androidtv_remote/manifest.json +1 -1
  169. homeassistant/components/androidtv_remote/media_player.py +10 -10
  170. homeassistant/components/androidtv_remote/remote.py +3 -2
  171. homeassistant/components/androidtv_remote/strings.json +26 -3
  172. homeassistant/components/androidtv_remote/translations/bg.json +7 -1
  173. homeassistant/components/androidtv_remote/translations/ca.json +7 -1
  174. homeassistant/components/androidtv_remote/translations/cs.json +25 -2
  175. homeassistant/components/androidtv_remote/translations/de.json +25 -2
  176. homeassistant/components/androidtv_remote/translations/el.json +25 -2
  177. homeassistant/components/androidtv_remote/translations/en-GB.json +25 -2
  178. homeassistant/components/androidtv_remote/translations/en.json +25 -2
  179. homeassistant/components/androidtv_remote/translations/es.json +25 -2
  180. homeassistant/components/androidtv_remote/translations/et.json +25 -2
  181. homeassistant/components/androidtv_remote/translations/ga.json +32 -1
  182. homeassistant/components/androidtv_remote/translations/he.json +25 -2
  183. homeassistant/components/androidtv_remote/translations/ja.json +19 -1
  184. homeassistant/components/androidtv_remote/translations/lt.json +25 -2
  185. homeassistant/components/androidtv_remote/translations/nl.json +7 -1
  186. homeassistant/components/androidtv_remote/translations/pt.json +25 -2
  187. homeassistant/components/androidtv_remote/translations/sk.json +25 -2
  188. homeassistant/components/androidtv_remote/translations/sv.json +7 -1
  189. homeassistant/components/androidtv_remote/translations/zh-Hans.json +25 -2
  190. homeassistant/components/androidtv_remote/translations/zh-Hant.json +25 -2
  191. homeassistant/components/anova/translations/ga.json +23 -0
  192. homeassistant/components/anthemav/strings.json +1 -1
  193. homeassistant/components/anthropic/__init__.py +9 -0
  194. homeassistant/components/anthropic/const.py +2 -2
  195. homeassistant/components/anthropic/conversation.py +9 -405
  196. homeassistant/components/anthropic/entity.py +395 -0
  197. homeassistant/components/anthropic/strings.json +1 -1
  198. homeassistant/components/anthropic/translations/ga.json +1 -0
  199. homeassistant/components/apcupsd/translations/es.json +3 -3
  200. homeassistant/components/apple_tv/manifest.json +1 -1
  201. homeassistant/components/apple_tv/media_player.py +2 -2
  202. homeassistant/components/aprilaire/translations/ga.json +18 -0
  203. homeassistant/components/aprilaire/translations/it.json +9 -9
  204. homeassistant/components/apsystems/translations/ga.json +29 -0
  205. homeassistant/components/aquacell/translations/nl.json +3 -0
  206. homeassistant/components/arcam_fmj/manifest.json +1 -1
  207. homeassistant/components/assist_pipeline/__init__.py +0 -4
  208. homeassistant/components/assist_pipeline/const.py +0 -1
  209. homeassistant/components/assist_pipeline/pipeline.py +1 -46
  210. homeassistant/components/assist_satellite/__init__.py +4 -4
  211. homeassistant/components/assist_satellite/services.yaml +4 -3
  212. homeassistant/components/august/manifest.json +1 -1
  213. homeassistant/components/august/translations/ga.json +9 -0
  214. homeassistant/components/automation/translations/it.json +1 -1
  215. homeassistant/components/awair/const.py +1 -0
  216. homeassistant/components/awair/sensor.py +10 -0
  217. homeassistant/components/awair/strings.json +3 -0
  218. homeassistant/components/awair/translations/cs.json +3 -0
  219. homeassistant/components/awair/translations/de.json +3 -0
  220. homeassistant/components/awair/translations/el.json +3 -0
  221. homeassistant/components/awair/translations/en-GB.json +3 -0
  222. homeassistant/components/awair/translations/en.json +3 -0
  223. homeassistant/components/awair/translations/es.json +3 -0
  224. homeassistant/components/awair/translations/et.json +3 -0
  225. homeassistant/components/awair/translations/ga.json +9 -1
  226. homeassistant/components/awair/translations/ja.json +3 -0
  227. homeassistant/components/awair/translations/lt.json +3 -0
  228. homeassistant/components/awair/translations/mk.json +3 -0
  229. homeassistant/components/awair/translations/nl.json +3 -0
  230. homeassistant/components/awair/translations/pt.json +3 -0
  231. homeassistant/components/awair/translations/ru.json +3 -0
  232. homeassistant/components/awair/translations/sk.json +3 -0
  233. homeassistant/components/awair/translations/zh-Hans.json +3 -0
  234. homeassistant/components/awair/translations/zh-Hant.json +3 -0
  235. homeassistant/components/axis/__init__.py +3 -1
  236. homeassistant/components/azure_data_explorer/translations/ga.json +8 -1
  237. homeassistant/components/azure_devops/translations/ga.json +27 -0
  238. homeassistant/components/backup/__init__.py +18 -34
  239. homeassistant/components/backup/coordinator.py +2 -6
  240. homeassistant/components/backup/manager.py +31 -8
  241. homeassistant/components/backup/onboarding.py +8 -3
  242. homeassistant/components/backup/services.py +36 -0
  243. homeassistant/components/backup/websocket.py +25 -1
  244. homeassistant/components/bang_olufsen/strings.json +4 -4
  245. homeassistant/components/bang_olufsen/translations/cs.json +4 -0
  246. homeassistant/components/bang_olufsen/translations/fr.json +16 -0
  247. homeassistant/components/bauknecht/__init__.py +1 -0
  248. homeassistant/components/bauknecht/manifest.json +6 -0
  249. homeassistant/components/binary_sensor/translations/it.json +2 -2
  250. homeassistant/components/blink/translations/ga.json +11 -0
  251. homeassistant/components/blue_current/__init__.py +33 -14
  252. homeassistant/components/blue_current/const.py +11 -0
  253. homeassistant/components/blue_current/icons.json +11 -0
  254. homeassistant/components/blue_current/manifest.json +1 -1
  255. homeassistant/components/blue_current/strings.json +11 -0
  256. homeassistant/components/blue_current/switch.py +169 -0
  257. homeassistant/components/blue_current/translations/cs.json +11 -0
  258. homeassistant/components/blue_current/translations/de.json +11 -0
  259. homeassistant/components/blue_current/translations/el.json +8 -0
  260. homeassistant/components/blue_current/translations/en-GB.json +11 -0
  261. homeassistant/components/blue_current/translations/en.json +11 -0
  262. homeassistant/components/blue_current/translations/es.json +11 -0
  263. homeassistant/components/blue_current/translations/et.json +11 -0
  264. homeassistant/components/blue_current/translations/fi.json +11 -0
  265. homeassistant/components/blue_current/translations/ga.json +11 -0
  266. homeassistant/components/blue_current/translations/sk.json +11 -0
  267. homeassistant/components/blue_current/translations/zh-Hans.json +11 -0
  268. homeassistant/components/blue_current/translations/zh-Hant.json +11 -0
  269. homeassistant/components/bluesound/manifest.json +1 -1
  270. homeassistant/components/bluetooth/manifest.json +5 -5
  271. homeassistant/components/bmw_connected_drive/translations/es.json +1 -1
  272. homeassistant/components/bmw_connected_drive/translations/ga.json +25 -1
  273. homeassistant/components/bosch_alarm/__init__.py +2 -2
  274. homeassistant/components/bosch_alarm/services.py +3 -2
  275. homeassistant/components/bring/__init__.py +13 -0
  276. homeassistant/components/bring/const.py +4 -1
  277. homeassistant/components/bring/icons.json +3 -0
  278. homeassistant/components/bring/services.py +110 -0
  279. homeassistant/components/bring/services.yaml +25 -0
  280. homeassistant/components/bring/strings.json +27 -0
  281. homeassistant/components/bring/translations/bg.json +11 -0
  282. homeassistant/components/bring/translations/ca.json +12 -0
  283. homeassistant/components/bring/translations/cs.json +26 -0
  284. homeassistant/components/bring/translations/de.json +26 -0
  285. homeassistant/components/bring/translations/el.json +26 -0
  286. homeassistant/components/bring/translations/en-GB.json +26 -0
  287. homeassistant/components/bring/translations/en.json +26 -0
  288. homeassistant/components/bring/translations/es.json +26 -0
  289. homeassistant/components/bring/translations/et.json +26 -0
  290. homeassistant/components/bring/translations/ga.json +28 -0
  291. homeassistant/components/bring/translations/it.json +3 -0
  292. homeassistant/components/bring/translations/lt.json +26 -0
  293. homeassistant/components/bring/translations/mk.json +14 -0
  294. homeassistant/components/bring/translations/pt.json +26 -0
  295. homeassistant/components/bring/translations/sk.json +26 -0
  296. homeassistant/components/bring/translations/zh-Hans.json +26 -0
  297. homeassistant/components/bring/translations/zh-Hant.json +26 -0
  298. homeassistant/components/broadlink/const.py +1 -0
  299. homeassistant/components/broadlink/sensor.py +19 -0
  300. homeassistant/components/broadlink/updater.py +11 -0
  301. homeassistant/components/brother/manifest.json +1 -1
  302. homeassistant/components/bsblan/config_flow.py +130 -14
  303. homeassistant/components/bsblan/manifest.json +7 -1
  304. homeassistant/components/bsblan/sensor.py +2 -0
  305. homeassistant/components/bsblan/strings.json +19 -1
  306. homeassistant/components/bsblan/translations/bg.json +6 -0
  307. homeassistant/components/bsblan/translations/ca.json +7 -0
  308. homeassistant/components/bsblan/translations/cs.json +19 -1
  309. homeassistant/components/bsblan/translations/de.json +19 -1
  310. homeassistant/components/bsblan/translations/el.json +19 -1
  311. homeassistant/components/bsblan/translations/en-GB.json +19 -1
  312. homeassistant/components/bsblan/translations/en.json +19 -1
  313. homeassistant/components/bsblan/translations/es.json +19 -1
  314. homeassistant/components/bsblan/translations/et.json +19 -1
  315. homeassistant/components/bsblan/translations/ga.json +21 -0
  316. homeassistant/components/bsblan/translations/he.json +6 -0
  317. homeassistant/components/bsblan/translations/lt.json +19 -1
  318. homeassistant/components/bsblan/translations/nl.json +7 -0
  319. homeassistant/components/bsblan/translations/pt.json +19 -1
  320. homeassistant/components/bsblan/translations/sk.json +19 -1
  321. homeassistant/components/bsblan/translations/sv.json +19 -1
  322. homeassistant/components/bsblan/translations/zh-Hans.json +19 -1
  323. homeassistant/components/bsblan/translations/zh-Hant.json +19 -1
  324. homeassistant/components/bthome/coordinator.py +1 -1
  325. homeassistant/components/bthome/device_trigger.py +1 -1
  326. homeassistant/components/calendar/translations/it.json +1 -1
  327. homeassistant/components/cambridge_audio/media_player.py +1 -1
  328. homeassistant/components/cambridge_audio/translations/it.json +2 -2
  329. homeassistant/components/climate/translations/it.json +6 -6
  330. homeassistant/components/cloud/backup.py +6 -15
  331. homeassistant/components/cloud/client.py +2 -1
  332. homeassistant/components/cloud/http_api.py +1 -1
  333. homeassistant/components/cloud/manifest.json +1 -1
  334. homeassistant/components/cloud/repairs.py +3 -3
  335. homeassistant/components/cloud/strings.json +4 -0
  336. homeassistant/components/cloud/subscription.py +5 -12
  337. homeassistant/components/cloud/translations/cs.json +4 -0
  338. homeassistant/components/cloud/translations/de.json +4 -0
  339. homeassistant/components/cloud/translations/el.json +4 -0
  340. homeassistant/components/cloud/translations/en-GB.json +4 -0
  341. homeassistant/components/cloud/translations/en.json +4 -0
  342. homeassistant/components/cloud/translations/es.json +4 -0
  343. homeassistant/components/cloud/translations/et.json +4 -0
  344. homeassistant/components/cloud/translations/fr.json +4 -0
  345. homeassistant/components/cloud/translations/ga.json +4 -0
  346. homeassistant/components/cloud/translations/nl.json +3 -0
  347. homeassistant/components/cloud/translations/ru.json +4 -0
  348. homeassistant/components/cloud/translations/sk.json +4 -0
  349. homeassistant/components/cloud/translations/zh-Hans.json +4 -0
  350. homeassistant/components/cloud/translations/zh-Hant.json +4 -0
  351. homeassistant/components/cloud/tts.py +31 -4
  352. homeassistant/components/command_line/sensor.py +1 -12
  353. homeassistant/components/compensation/__init__.py +17 -7
  354. homeassistant/components/compensation/manifest.json +1 -1
  355. homeassistant/components/compensation/sensor.py +55 -27
  356. homeassistant/components/control4/__init__.py +9 -15
  357. homeassistant/components/control4/config_flow.py +6 -2
  358. homeassistant/components/conversation/__init__.py +4 -11
  359. homeassistant/components/conversation/agent_manager.py +2 -7
  360. homeassistant/components/conversation/chat_log.py +18 -0
  361. homeassistant/components/conversation/const.py +0 -1
  362. homeassistant/components/conversation/manifest.json +1 -1
  363. homeassistant/components/conversation/util.py +47 -0
  364. homeassistant/components/coolmaster/__init__.py +13 -1
  365. homeassistant/components/cover/translations/da.json +2 -1
  366. homeassistant/components/daikin/translations/ga.json +9 -0
  367. homeassistant/components/datadog/__init__.py +64 -34
  368. homeassistant/components/datadog/config_flow.py +203 -0
  369. homeassistant/components/datadog/const.py +10 -0
  370. homeassistant/components/datadog/manifest.json +2 -1
  371. homeassistant/components/datadog/strings.json +56 -0
  372. homeassistant/components/datadog/translations/bg.json +28 -0
  373. homeassistant/components/datadog/translations/cs.json +56 -0
  374. homeassistant/components/datadog/translations/de.json +56 -0
  375. homeassistant/components/datadog/translations/el.json +56 -0
  376. homeassistant/components/datadog/translations/en-GB.json +56 -0
  377. homeassistant/components/datadog/translations/en.json +56 -0
  378. homeassistant/components/datadog/translations/es.json +56 -0
  379. homeassistant/components/datadog/translations/et.json +56 -0
  380. homeassistant/components/datadog/translations/ga.json +40 -0
  381. homeassistant/components/datadog/translations/he.json +28 -0
  382. homeassistant/components/datadog/translations/mk.json +14 -0
  383. homeassistant/components/datadog/translations/nl.json +28 -0
  384. homeassistant/components/datadog/translations/ru.json +56 -0
  385. homeassistant/components/datadog/translations/sk.json +56 -0
  386. homeassistant/components/datadog/translations/zh-Hans.json +56 -0
  387. homeassistant/components/datadog/translations/zh-Hant.json +56 -0
  388. homeassistant/components/demo/translations/it.json +2 -2
  389. homeassistant/components/demo/vacuum.py +6 -19
  390. homeassistant/components/denonavr/__init__.py +0 -9
  391. homeassistant/components/denonavr/config_flow.py +6 -2
  392. homeassistant/components/derivative/__init__.py +58 -6
  393. homeassistant/components/derivative/config_flow.py +4 -0
  394. homeassistant/components/derivative/sensor.py +83 -45
  395. homeassistant/components/derivative/strings.json +5 -0
  396. homeassistant/components/derivative/translations/ca.json +5 -0
  397. homeassistant/components/derivative/translations/cs.json +5 -0
  398. homeassistant/components/derivative/translations/de.json +5 -0
  399. homeassistant/components/derivative/translations/el.json +5 -0
  400. homeassistant/components/derivative/translations/en-GB.json +5 -0
  401. homeassistant/components/derivative/translations/en.json +5 -0
  402. homeassistant/components/derivative/translations/es.json +5 -0
  403. homeassistant/components/derivative/translations/et.json +5 -0
  404. homeassistant/components/derivative/translations/fr.json +5 -0
  405. homeassistant/components/derivative/translations/ga.json +7 -0
  406. homeassistant/components/derivative/translations/ja.json +5 -0
  407. homeassistant/components/derivative/translations/lt.json +5 -0
  408. homeassistant/components/derivative/translations/nl.json +5 -0
  409. homeassistant/components/derivative/translations/pt.json +5 -0
  410. homeassistant/components/derivative/translations/sk.json +5 -0
  411. homeassistant/components/derivative/translations/sv.json +5 -0
  412. homeassistant/components/derivative/translations/zh-Hans.json +5 -0
  413. homeassistant/components/derivative/translations/zh-Hant.json +5 -0
  414. homeassistant/components/devolo_home_control/config_flow.py +49 -60
  415. homeassistant/components/devolo_home_control/entity.py +28 -3
  416. homeassistant/components/devolo_home_control/strings.json +1 -1
  417. homeassistant/components/devolo_home_network/coordinator.py +4 -3
  418. homeassistant/components/devolo_home_network/device_tracker.py +13 -22
  419. homeassistant/components/devolo_home_network/entity.py +1 -1
  420. homeassistant/components/devolo_home_network/manifest.json +1 -0
  421. homeassistant/components/devolo_home_network/quality_scale.yaml +84 -0
  422. homeassistant/components/devolo_home_network/sensor.py +6 -2
  423. homeassistant/components/devolo_home_network/strings.json +4 -4
  424. homeassistant/components/diagnostics/__init__.py +14 -2
  425. homeassistant/components/discovergy/__init__.py +7 -2
  426. homeassistant/components/discovergy/coordinator.py +9 -2
  427. homeassistant/components/discovergy/manifest.json +1 -1
  428. homeassistant/components/discovergy/quality_scale.yaml +16 -9
  429. homeassistant/components/discovergy/strings.json +11 -0
  430. homeassistant/components/discovergy/translations/cs.json +11 -0
  431. homeassistant/components/discovergy/translations/de.json +11 -0
  432. homeassistant/components/discovergy/translations/el.json +11 -0
  433. homeassistant/components/discovergy/translations/en-GB.json +11 -0
  434. homeassistant/components/discovergy/translations/en.json +11 -0
  435. homeassistant/components/discovergy/translations/es.json +11 -0
  436. homeassistant/components/discovergy/translations/et.json +11 -0
  437. homeassistant/components/discovergy/translations/ga.json +11 -0
  438. homeassistant/components/discovergy/translations/lt.json +11 -0
  439. homeassistant/components/discovergy/translations/nb.json +11 -0
  440. homeassistant/components/discovergy/translations/sk.json +11 -0
  441. homeassistant/components/discovergy/translations/sv.json +8 -0
  442. homeassistant/components/discovergy/translations/zh-Hans.json +11 -0
  443. homeassistant/components/discovergy/translations/zh-Hant.json +11 -0
  444. homeassistant/components/dnsip/__init__.py +0 -6
  445. homeassistant/components/dnsip/config_flow.py +5 -2
  446. homeassistant/components/dnsip/strings.json +2 -1
  447. homeassistant/components/dnsip/translations/cs.json +2 -1
  448. homeassistant/components/dnsip/translations/de.json +2 -1
  449. homeassistant/components/dnsip/translations/el.json +2 -1
  450. homeassistant/components/dnsip/translations/en-GB.json +2 -1
  451. homeassistant/components/dnsip/translations/en.json +2 -1
  452. homeassistant/components/dnsip/translations/es.json +2 -1
  453. homeassistant/components/dnsip/translations/et.json +2 -1
  454. homeassistant/components/dnsip/translations/ga.json +3 -0
  455. homeassistant/components/dnsip/translations/he.json +2 -1
  456. homeassistant/components/dnsip/translations/ja.json +2 -1
  457. homeassistant/components/dnsip/translations/lt.json +2 -1
  458. homeassistant/components/dnsip/translations/pt.json +2 -1
  459. homeassistant/components/dnsip/translations/sk.json +2 -1
  460. homeassistant/components/dnsip/translations/sv.json +2 -1
  461. homeassistant/components/dnsip/translations/zh-Hans.json +2 -1
  462. homeassistant/components/dnsip/translations/zh-Hant.json +2 -1
  463. homeassistant/components/dominos/strings.json +2 -2
  464. homeassistant/components/doods/manifest.json +1 -1
  465. homeassistant/components/downloader/services.py +3 -5
  466. homeassistant/components/dsmr/strings.json +1 -1
  467. homeassistant/components/dsmr/translations/fr.json +2 -1
  468. homeassistant/components/dsmr_reader/strings.json +1 -1
  469. homeassistant/components/dsmr_reader/translations/ga.json +8 -0
  470. homeassistant/components/dwd_weather_warnings/strings.json +2 -2
  471. homeassistant/components/dynalite/__init__.py +2 -2
  472. homeassistant/components/dynalite/services.py +1 -1
  473. homeassistant/components/ecoforest/translations/it.json +1 -1
  474. homeassistant/components/ecovacs/binary_sensor.py +49 -2
  475. homeassistant/components/ecovacs/sensor.py +48 -2
  476. homeassistant/components/ecovacs/translations/nl.json +7 -0
  477. homeassistant/components/ecovacs/vacuum.py +2 -30
  478. homeassistant/components/ecowitt/sensor.py +3 -0
  479. homeassistant/components/eheimdigital/config_flow.py +55 -1
  480. homeassistant/components/eheimdigital/manifest.json +2 -2
  481. homeassistant/components/eheimdigital/quality_scale.yaml +10 -8
  482. homeassistant/components/eheimdigital/strings.json +11 -1
  483. homeassistant/components/eheimdigital/translations/bg.json +7 -1
  484. homeassistant/components/eheimdigital/translations/ca.json +7 -1
  485. homeassistant/components/eheimdigital/translations/cs.json +11 -1
  486. homeassistant/components/eheimdigital/translations/de.json +11 -1
  487. homeassistant/components/eheimdigital/translations/el.json +11 -1
  488. homeassistant/components/eheimdigital/translations/en-GB.json +11 -1
  489. homeassistant/components/eheimdigital/translations/en.json +11 -1
  490. homeassistant/components/eheimdigital/translations/es.json +11 -1
  491. homeassistant/components/eheimdigital/translations/et.json +11 -1
  492. homeassistant/components/eheimdigital/translations/ga.json +8 -0
  493. homeassistant/components/eheimdigital/translations/he.json +7 -1
  494. homeassistant/components/eheimdigital/translations/ja.json +11 -1
  495. homeassistant/components/eheimdigital/translations/lt.json +11 -1
  496. homeassistant/components/eheimdigital/translations/nl.json +7 -1
  497. homeassistant/components/eheimdigital/translations/pt.json +11 -1
  498. homeassistant/components/eheimdigital/translations/ru.json +8 -0
  499. homeassistant/components/eheimdigital/translations/sk.json +11 -1
  500. homeassistant/components/eheimdigital/translations/sv.json +11 -1
  501. homeassistant/components/eheimdigital/translations/zh-Hans.json +11 -1
  502. homeassistant/components/eheimdigital/translations/zh-Hant.json +11 -1
  503. homeassistant/components/elevenlabs/__init__.py +2 -1
  504. homeassistant/components/elevenlabs/config_flow.py +9 -11
  505. homeassistant/components/elevenlabs/const.py +0 -2
  506. homeassistant/components/elevenlabs/manifest.json +1 -1
  507. homeassistant/components/elevenlabs/strings.json +2 -3
  508. homeassistant/components/elevenlabs/translations/bg.json +2 -1
  509. homeassistant/components/elevenlabs/translations/ca.json +2 -2
  510. homeassistant/components/elevenlabs/translations/cs.json +2 -3
  511. homeassistant/components/elevenlabs/translations/de.json +2 -3
  512. homeassistant/components/elevenlabs/translations/el.json +2 -3
  513. homeassistant/components/elevenlabs/translations/en-GB.json +2 -3
  514. homeassistant/components/elevenlabs/translations/en.json +2 -3
  515. homeassistant/components/elevenlabs/translations/es.json +2 -3
  516. homeassistant/components/elevenlabs/translations/et.json +2 -3
  517. homeassistant/components/elevenlabs/translations/fr.json +2 -3
  518. homeassistant/components/elevenlabs/translations/ga.json +0 -2
  519. homeassistant/components/elevenlabs/translations/he.json +2 -1
  520. homeassistant/components/elevenlabs/translations/hu.json +0 -2
  521. homeassistant/components/elevenlabs/translations/ja.json +0 -2
  522. homeassistant/components/elevenlabs/translations/lt.json +2 -3
  523. homeassistant/components/elevenlabs/translations/nl.json +2 -2
  524. homeassistant/components/elevenlabs/translations/pt.json +0 -2
  525. homeassistant/components/elevenlabs/translations/ru.json +0 -2
  526. homeassistant/components/elevenlabs/translations/sk.json +2 -3
  527. homeassistant/components/elevenlabs/translations/sv.json +0 -2
  528. homeassistant/components/elevenlabs/translations/tr.json +0 -2
  529. homeassistant/components/elevenlabs/translations/zh-Hans.json +2 -3
  530. homeassistant/components/elevenlabs/translations/zh-Hant.json +2 -3
  531. homeassistant/components/elevenlabs/tts.py +4 -11
  532. homeassistant/components/emoncms/__init__.py +0 -6
  533. homeassistant/components/emoncms/config_flow.py +72 -3
  534. homeassistant/components/emoncms/const.py +3 -0
  535. homeassistant/components/emoncms/strings.json +13 -2
  536. homeassistant/components/emoncms/translations/bg.json +2 -1
  537. homeassistant/components/emoncms/translations/ca.json +2 -1
  538. homeassistant/components/emoncms/translations/cs.json +12 -1
  539. homeassistant/components/emoncms/translations/de.json +12 -1
  540. homeassistant/components/emoncms/translations/el.json +12 -1
  541. homeassistant/components/emoncms/translations/en-GB.json +12 -1
  542. homeassistant/components/emoncms/translations/en.json +12 -1
  543. homeassistant/components/emoncms/translations/es.json +12 -1
  544. homeassistant/components/emoncms/translations/et.json +12 -1
  545. homeassistant/components/emoncms/translations/ga.json +13 -1
  546. homeassistant/components/emoncms/translations/he.json +3 -0
  547. homeassistant/components/emoncms/translations/it.json +9 -0
  548. homeassistant/components/emoncms/translations/ja.json +12 -1
  549. homeassistant/components/emoncms/translations/lt.json +12 -1
  550. homeassistant/components/emoncms/translations/nl.json +12 -0
  551. homeassistant/components/emoncms/translations/pt.json +12 -1
  552. homeassistant/components/emoncms/translations/sk.json +12 -1
  553. homeassistant/components/emoncms/translations/sv.json +9 -0
  554. homeassistant/components/emoncms/translations/zh-Hans.json +12 -1
  555. homeassistant/components/emoncms/translations/zh-Hant.json +12 -1
  556. homeassistant/components/energy/sensor.py +2 -7
  557. homeassistant/components/energy/validate.py +5 -14
  558. homeassistant/components/enphase_envoy/__init__.py +0 -9
  559. homeassistant/components/enphase_envoy/binary_sensor.py +2 -0
  560. homeassistant/components/enphase_envoy/config_flow.py +2 -2
  561. homeassistant/components/enphase_envoy/coordinator.py +8 -0
  562. homeassistant/components/enphase_envoy/manifest.json +1 -1
  563. homeassistant/components/enphase_envoy/number.py +1 -0
  564. homeassistant/components/enphase_envoy/select.py +1 -0
  565. homeassistant/components/enphase_envoy/sensor.py +3 -0
  566. homeassistant/components/enphase_envoy/strings.json +1 -1
  567. homeassistant/components/enphase_envoy/switch.py +2 -0
  568. homeassistant/components/environment_canada/translations/fr.json +98 -0
  569. homeassistant/components/eq3btsmart/manifest.json +1 -1
  570. homeassistant/components/esphome/alarm_control_panel.py +28 -7
  571. homeassistant/components/esphome/button.py +1 -1
  572. homeassistant/components/esphome/climate.py +14 -6
  573. homeassistant/components/esphome/config_flow.py +33 -4
  574. homeassistant/components/esphome/cover.py +25 -7
  575. homeassistant/components/esphome/date.py +7 -1
  576. homeassistant/components/esphome/datetime.py +3 -1
  577. homeassistant/components/esphome/encryption_key_storage.py +94 -0
  578. homeassistant/components/esphome/entity.py +74 -8
  579. homeassistant/components/esphome/entry_data.py +44 -27
  580. homeassistant/components/esphome/fan.py +17 -5
  581. homeassistant/components/esphome/light.py +2 -2
  582. homeassistant/components/esphome/lock.py +9 -3
  583. homeassistant/components/esphome/manager.py +96 -4
  584. homeassistant/components/esphome/manifest.json +3 -3
  585. homeassistant/components/esphome/media_player.py +23 -5
  586. homeassistant/components/esphome/number.py +3 -1
  587. homeassistant/components/esphome/select.py +3 -1
  588. homeassistant/components/esphome/switch.py +6 -2
  589. homeassistant/components/esphome/text.py +3 -1
  590. homeassistant/components/esphome/time.py +7 -1
  591. homeassistant/components/esphome/translations/ga.json +3 -0
  592. homeassistant/components/esphome/update.py +10 -2
  593. homeassistant/components/esphome/valve.py +14 -4
  594. homeassistant/components/ezviz/__init__.py +0 -7
  595. homeassistant/components/ezviz/config_flow.py +6 -2
  596. homeassistant/components/faa_delays/translations/es.json +1 -1
  597. homeassistant/components/fan/translations/it.json +1 -1
  598. homeassistant/components/feedreader/__init__.py +0 -9
  599. homeassistant/components/feedreader/config_flow.py +4 -5
  600. homeassistant/components/file/__init__.py +0 -6
  601. homeassistant/components/file/config_flow.py +2 -2
  602. homeassistant/components/file/translations/ga.json +10 -0
  603. homeassistant/components/flipr/sensor.py +1 -1
  604. homeassistant/components/folder_watcher/translations/ga.json +31 -0
  605. homeassistant/components/forecast_solar/__init__.py +0 -9
  606. homeassistant/components/forecast_solar/config_flow.py +2 -2
  607. homeassistant/components/fritz/__init__.py +0 -8
  608. homeassistant/components/fritz/config_flow.py +6 -2
  609. homeassistant/components/fritz/strings.json +1 -1
  610. homeassistant/components/fritzbox_callmonitor/__init__.py +0 -8
  611. homeassistant/components/fritzbox_callmonitor/config_flow.py +2 -2
  612. homeassistant/components/frontend/__init__.py +7 -0
  613. homeassistant/components/frontend/manifest.json +1 -1
  614. homeassistant/components/garages_amsterdam/manifest.json +1 -1
  615. homeassistant/components/gardena_bluetooth/__init__.py +2 -0
  616. homeassistant/components/gardena_bluetooth/number.py +6 -0
  617. homeassistant/components/gardena_bluetooth/translations/da.json +9 -0
  618. homeassistant/components/gardena_bluetooth/valve.py +6 -1
  619. homeassistant/components/generic/config_flow.py +5 -15
  620. homeassistant/components/generic/manifest.json +1 -1
  621. homeassistant/components/generic_hygrostat/__init__.py +44 -6
  622. homeassistant/components/generic_hygrostat/config_flow.py +2 -0
  623. homeassistant/components/generic_hygrostat/humidifier.py +19 -18
  624. homeassistant/components/generic_hygrostat/translations/ga.json +23 -4
  625. homeassistant/components/generic_thermostat/__init__.py +44 -6
  626. homeassistant/components/generic_thermostat/climate.py +20 -19
  627. homeassistant/components/generic_thermostat/config_flow.py +2 -0
  628. homeassistant/components/geo_location/trigger.py +6 -3
  629. homeassistant/components/gios/const.py +2 -0
  630. homeassistant/components/gios/icons.json +3 -0
  631. homeassistant/components/gios/sensor.py +18 -0
  632. homeassistant/components/gios/strings.json +3 -0
  633. homeassistant/components/gios/translations/cs.json +3 -0
  634. homeassistant/components/gios/translations/de.json +3 -0
  635. homeassistant/components/gios/translations/el.json +3 -0
  636. homeassistant/components/gios/translations/en-GB.json +3 -0
  637. homeassistant/components/gios/translations/en.json +3 -0
  638. homeassistant/components/gios/translations/es.json +3 -0
  639. homeassistant/components/gios/translations/et.json +3 -0
  640. homeassistant/components/gios/translations/ga.json +7 -0
  641. homeassistant/components/gios/translations/lt.json +3 -0
  642. homeassistant/components/gios/translations/pl.json +3 -0
  643. homeassistant/components/gios/translations/pt.json +3 -0
  644. homeassistant/components/gios/translations/ru.json +3 -0
  645. homeassistant/components/gios/translations/sk.json +3 -0
  646. homeassistant/components/gios/translations/zh-Hans.json +3 -0
  647. homeassistant/components/gios/translations/zh-Hant.json +3 -0
  648. homeassistant/components/github/__init__.py +0 -6
  649. homeassistant/components/github/config_flow.py +2 -2
  650. homeassistant/components/go2rtc/__init__.py +0 -1
  651. homeassistant/components/goalzero/strings.json +1 -1
  652. homeassistant/components/goalzero/translations/ca.json +0 -3
  653. homeassistant/components/goalzero/translations/el.json +0 -3
  654. homeassistant/components/goalzero/translations/en-GB.json +1 -1
  655. homeassistant/components/goalzero/translations/en.json +1 -1
  656. homeassistant/components/goalzero/translations/es.json +1 -1
  657. homeassistant/components/goalzero/translations/fi.json +0 -3
  658. homeassistant/components/goalzero/translations/hu.json +0 -3
  659. homeassistant/components/goalzero/translations/id.json +0 -3
  660. homeassistant/components/goalzero/translations/it.json +0 -3
  661. homeassistant/components/goalzero/translations/ja.json +0 -3
  662. homeassistant/components/goalzero/translations/ko.json +0 -3
  663. homeassistant/components/goalzero/translations/lt.json +0 -3
  664. homeassistant/components/goalzero/translations/nb.json +0 -3
  665. homeassistant/components/goalzero/translations/nl.json +0 -3
  666. homeassistant/components/goalzero/translations/pl.json +0 -3
  667. homeassistant/components/goalzero/translations/pt-BR.json +0 -3
  668. homeassistant/components/goalzero/translations/pt.json +0 -3
  669. homeassistant/components/goalzero/translations/ro.json +0 -3
  670. homeassistant/components/goalzero/translations/ru.json +0 -3
  671. homeassistant/components/goalzero/translations/sk.json +1 -1
  672. homeassistant/components/goalzero/translations/sl.json +0 -3
  673. homeassistant/components/goalzero/translations/sv.json +0 -3
  674. homeassistant/components/goalzero/translations/tr.json +0 -3
  675. homeassistant/components/goalzero/translations/uk.json +0 -3
  676. homeassistant/components/goodwe/__init__.py +14 -2
  677. homeassistant/components/goodwe/config_flow.py +23 -13
  678. homeassistant/components/goodwe/manifest.json +1 -1
  679. homeassistant/components/goodwe/select.py +18 -11
  680. homeassistant/components/google/calendar.py +4 -4
  681. homeassistant/components/google/manifest.json +1 -1
  682. homeassistant/components/google_assistant_sdk/application_credentials.py +12 -6
  683. homeassistant/components/google_assistant_sdk/helpers.py +2 -2
  684. homeassistant/components/google_assistant_sdk/manifest.json +1 -1
  685. homeassistant/components/google_assistant_sdk/strings.json +1 -1
  686. homeassistant/components/google_cloud/const.py +10 -0
  687. homeassistant/components/google_cloud/stt.py +13 -3
  688. homeassistant/components/google_generative_ai_conversation/__init__.py +126 -64
  689. homeassistant/components/google_generative_ai_conversation/ai_task.py +81 -0
  690. homeassistant/components/google_generative_ai_conversation/config_flow.py +50 -4
  691. homeassistant/components/google_generative_ai_conversation/const.py +19 -3
  692. homeassistant/components/google_generative_ai_conversation/conversation.py +4 -21
  693. homeassistant/components/google_generative_ai_conversation/entity.py +102 -3
  694. homeassistant/components/google_generative_ai_conversation/strings.json +61 -1
  695. homeassistant/components/google_generative_ai_conversation/stt.py +259 -0
  696. homeassistant/components/google_generative_ai_conversation/translations/bg.json +38 -0
  697. homeassistant/components/google_generative_ai_conversation/translations/ca.json +29 -0
  698. homeassistant/components/google_generative_ai_conversation/translations/cs.json +60 -0
  699. homeassistant/components/google_generative_ai_conversation/translations/de.json +60 -0
  700. homeassistant/components/google_generative_ai_conversation/translations/el.json +60 -0
  701. homeassistant/components/google_generative_ai_conversation/translations/en-GB.json +60 -0
  702. homeassistant/components/google_generative_ai_conversation/translations/en.json +60 -0
  703. homeassistant/components/google_generative_ai_conversation/translations/es.json +60 -0
  704. homeassistant/components/google_generative_ai_conversation/translations/et.json +60 -0
  705. homeassistant/components/google_generative_ai_conversation/translations/fr.json +60 -0
  706. homeassistant/components/google_generative_ai_conversation/translations/ga.json +65 -0
  707. homeassistant/components/google_generative_ai_conversation/translations/he.json +32 -0
  708. homeassistant/components/google_generative_ai_conversation/translations/ja.json +28 -0
  709. homeassistant/components/google_generative_ai_conversation/translations/lt.json +60 -0
  710. homeassistant/components/google_generative_ai_conversation/translations/mk.json +21 -0
  711. homeassistant/components/google_generative_ai_conversation/translations/nl.json +29 -0
  712. homeassistant/components/google_generative_ai_conversation/translations/pt.json +28 -0
  713. homeassistant/components/google_generative_ai_conversation/translations/ru.json +49 -0
  714. homeassistant/components/google_generative_ai_conversation/translations/sk.json +60 -0
  715. homeassistant/components/google_generative_ai_conversation/translations/sv.json +51 -0
  716. homeassistant/components/google_generative_ai_conversation/translations/zh-Hans.json +60 -0
  717. homeassistant/components/google_generative_ai_conversation/translations/zh-Hant.json +60 -0
  718. homeassistant/components/google_generative_ai_conversation/tts.py +3 -0
  719. homeassistant/components/google_photos/translations/fr.json +2 -1
  720. homeassistant/components/google_travel_time/strings.json +1 -1
  721. homeassistant/components/group/config_flow.py +6 -6
  722. homeassistant/components/group/strings.json +18 -5
  723. homeassistant/components/group/translations/ca.json +4 -9
  724. homeassistant/components/group/translations/cs.json +18 -5
  725. homeassistant/components/group/translations/da.json +4 -9
  726. homeassistant/components/group/translations/de.json +18 -5
  727. homeassistant/components/group/translations/el.json +4 -9
  728. homeassistant/components/group/translations/en-GB.json +4 -9
  729. homeassistant/components/group/translations/en.json +18 -5
  730. homeassistant/components/group/translations/es.json +4 -9
  731. homeassistant/components/group/translations/et.json +4 -9
  732. homeassistant/components/group/translations/fi.json +4 -9
  733. homeassistant/components/group/translations/fr.json +18 -5
  734. homeassistant/components/group/translations/fy.json +0 -14
  735. homeassistant/components/group/translations/ga.json +34 -0
  736. homeassistant/components/group/translations/he.json +4 -9
  737. homeassistant/components/group/translations/hu.json +4 -9
  738. homeassistant/components/group/translations/id.json +4 -9
  739. homeassistant/components/group/translations/it.json +5 -10
  740. homeassistant/components/group/translations/ja.json +4 -9
  741. homeassistant/components/group/translations/ko.json +4 -9
  742. homeassistant/components/group/translations/lt.json +4 -9
  743. homeassistant/components/group/translations/lv.json +1 -2
  744. homeassistant/components/group/translations/nb.json +4 -9
  745. homeassistant/components/group/translations/nl.json +3 -7
  746. homeassistant/components/group/translations/pl.json +4 -9
  747. homeassistant/components/group/translations/pt-BR.json +4 -9
  748. homeassistant/components/group/translations/pt.json +4 -9
  749. homeassistant/components/group/translations/ro.json +4 -9
  750. homeassistant/components/group/translations/ru.json +4 -9
  751. homeassistant/components/group/translations/sk.json +4 -9
  752. homeassistant/components/group/translations/sl.json +4 -9
  753. homeassistant/components/group/translations/sv.json +4 -9
  754. homeassistant/components/group/translations/tr.json +4 -9
  755. homeassistant/components/group/translations/uk.json +4 -9
  756. homeassistant/components/group/translations/vi.json +4 -9
  757. homeassistant/components/group/translations/zh-Hans.json +18 -5
  758. homeassistant/components/group/translations/zh-Hant.json +18 -5
  759. homeassistant/components/growatt_server/__init__.py +91 -8
  760. homeassistant/components/growatt_server/coordinator.py +210 -0
  761. homeassistant/components/growatt_server/models.py +17 -0
  762. homeassistant/components/growatt_server/sensor/__init__.py +56 -285
  763. homeassistant/components/guardian/__init__.py +2 -2
  764. homeassistant/components/guardian/services.py +3 -2
  765. homeassistant/components/habitica/button.py +22 -81
  766. homeassistant/components/habitica/config_flow.py +0 -2
  767. homeassistant/components/habitica/coordinator.py +8 -11
  768. homeassistant/components/habitica/entity.py +2 -2
  769. homeassistant/components/habitica/icons.json +0 -9
  770. homeassistant/components/habitica/sensor.py +9 -161
  771. homeassistant/components/habitica/strings.json +0 -13
  772. homeassistant/components/habitica/switch.py +7 -9
  773. homeassistant/components/habitica/translations/bg.json +1 -11
  774. homeassistant/components/habitica/translations/ca.json +0 -3
  775. homeassistant/components/habitica/translations/cs.json +0 -13
  776. homeassistant/components/habitica/translations/de.json +0 -13
  777. homeassistant/components/habitica/translations/el.json +0 -13
  778. homeassistant/components/habitica/translations/en-GB.json +0 -13
  779. homeassistant/components/habitica/translations/en.json +0 -13
  780. homeassistant/components/habitica/translations/es.json +0 -13
  781. homeassistant/components/habitica/translations/et.json +0 -13
  782. homeassistant/components/habitica/translations/ga.json +0 -12
  783. homeassistant/components/habitica/translations/he.json +1 -11
  784. homeassistant/components/habitica/translations/hu.json +0 -13
  785. homeassistant/components/habitica/translations/it.json +0 -12
  786. homeassistant/components/habitica/translations/ja.json +0 -13
  787. homeassistant/components/habitica/translations/lt.json +0 -13
  788. homeassistant/components/habitica/translations/nl.json +0 -10
  789. homeassistant/components/habitica/translations/pt-BR.json +0 -3
  790. homeassistant/components/habitica/translations/pt.json +0 -13
  791. homeassistant/components/habitica/translations/ru.json +0 -13
  792. homeassistant/components/habitica/translations/sk.json +0 -13
  793. homeassistant/components/habitica/translations/sv.json +0 -13
  794. homeassistant/components/habitica/translations/tr.json +0 -13
  795. homeassistant/components/habitica/translations/zh-Hans.json +0 -13
  796. homeassistant/components/habitica/translations/zh-Hant.json +0 -13
  797. homeassistant/components/habitica/util.py +14 -14
  798. homeassistant/components/harmony/translations/es.json +1 -1
  799. homeassistant/components/harmony/translations/sv.json +1 -1
  800. homeassistant/components/hassio/backup.py +2 -2
  801. homeassistant/components/hassio/ingress.py +8 -8
  802. homeassistant/components/hassio/strings.json +1 -1
  803. homeassistant/components/hassio/translations/fr.json +3 -0
  804. homeassistant/components/hassio/translations/ga.json +17 -0
  805. homeassistant/components/heos/__init__.py +2 -2
  806. homeassistant/components/heos/config_flow.py +51 -41
  807. homeassistant/components/heos/manifest.json +2 -1
  808. homeassistant/components/heos/services.py +3 -2
  809. homeassistant/components/here_travel_time/__init__.py +30 -1
  810. homeassistant/components/here_travel_time/config_flow.py +16 -1
  811. homeassistant/components/here_travel_time/const.py +1 -0
  812. homeassistant/components/here_travel_time/coordinator.py +11 -1
  813. homeassistant/components/here_travel_time/model.py +2 -1
  814. homeassistant/components/here_travel_time/strings.json +5 -3
  815. homeassistant/components/here_travel_time/translations/ca.json +0 -5
  816. homeassistant/components/here_travel_time/translations/cs.json +4 -2
  817. homeassistant/components/here_travel_time/translations/de.json +4 -2
  818. homeassistant/components/here_travel_time/translations/el.json +4 -2
  819. homeassistant/components/here_travel_time/translations/en-GB.json +4 -2
  820. homeassistant/components/here_travel_time/translations/en.json +4 -2
  821. homeassistant/components/here_travel_time/translations/es.json +4 -2
  822. homeassistant/components/here_travel_time/translations/et.json +4 -2
  823. homeassistant/components/here_travel_time/translations/fi.json +0 -5
  824. homeassistant/components/here_travel_time/translations/fr.json +1 -2
  825. homeassistant/components/here_travel_time/translations/ga.json +11 -0
  826. homeassistant/components/here_travel_time/translations/hu.json +1 -2
  827. homeassistant/components/here_travel_time/translations/id.json +0 -5
  828. homeassistant/components/here_travel_time/translations/it.json +0 -5
  829. homeassistant/components/here_travel_time/translations/ja.json +1 -2
  830. homeassistant/components/here_travel_time/translations/ko.json +0 -5
  831. homeassistant/components/here_travel_time/translations/lt.json +1 -2
  832. homeassistant/components/here_travel_time/translations/mk.json +3 -0
  833. homeassistant/components/here_travel_time/translations/nb.json +0 -5
  834. homeassistant/components/here_travel_time/translations/nl.json +0 -5
  835. homeassistant/components/here_travel_time/translations/pl.json +0 -5
  836. homeassistant/components/here_travel_time/translations/pt-BR.json +0 -5
  837. homeassistant/components/here_travel_time/translations/pt.json +1 -2
  838. homeassistant/components/here_travel_time/translations/ro.json +0 -5
  839. homeassistant/components/here_travel_time/translations/ru.json +1 -2
  840. homeassistant/components/here_travel_time/translations/sk.json +4 -2
  841. homeassistant/components/here_travel_time/translations/sv.json +1 -2
  842. homeassistant/components/here_travel_time/translations/tr.json +1 -2
  843. homeassistant/components/here_travel_time/translations/uk.json +0 -5
  844. homeassistant/components/here_travel_time/translations/zh-Hans.json +4 -2
  845. homeassistant/components/here_travel_time/translations/zh-Hant.json +4 -2
  846. homeassistant/components/history_stats/__init__.py +43 -1
  847. homeassistant/components/history_stats/config_flow.py +135 -2
  848. homeassistant/components/history_stats/coordinator.py +7 -0
  849. homeassistant/components/history_stats/data.py +5 -1
  850. homeassistant/components/history_stats/helpers.py +9 -4
  851. homeassistant/components/history_stats/sensor.py +54 -8
  852. homeassistant/components/hive/translations/it.json +2 -2
  853. homeassistant/components/holiday/__init__.py +0 -6
  854. homeassistant/components/holiday/config_flow.py +2 -2
  855. homeassistant/components/holiday/manifest.json +1 -1
  856. homeassistant/components/home_connect/__init__.py +2 -2
  857. homeassistant/components/home_connect/coordinator.py +22 -24
  858. homeassistant/components/home_connect/services.py +3 -2
  859. homeassistant/components/home_connect/strings.json +10 -21
  860. homeassistant/components/home_connect/translations/cs.json +2 -11
  861. homeassistant/components/home_connect/translations/de.json +0 -11
  862. homeassistant/components/home_connect/translations/el.json +0 -11
  863. homeassistant/components/home_connect/translations/en-GB.json +0 -11
  864. homeassistant/components/home_connect/translations/en.json +0 -11
  865. homeassistant/components/home_connect/translations/es.json +0 -11
  866. homeassistant/components/home_connect/translations/et.json +0 -11
  867. homeassistant/components/home_connect/translations/ga.json +0 -10
  868. homeassistant/components/home_connect/translations/hu.json +0 -10
  869. homeassistant/components/home_connect/translations/it.json +44 -56
  870. homeassistant/components/home_connect/translations/lt.json +0 -11
  871. homeassistant/components/home_connect/translations/pt.json +0 -11
  872. homeassistant/components/home_connect/translations/ru.json +0 -11
  873. homeassistant/components/home_connect/translations/sk.json +0 -11
  874. homeassistant/components/home_connect/translations/sv.json +0 -10
  875. homeassistant/components/home_connect/translations/zh-Hans.json +0 -11
  876. homeassistant/components/home_connect/translations/zh-Hant.json +0 -11
  877. homeassistant/components/homeassistant/__init__.py +7 -2
  878. homeassistant/components/homeassistant/strings.json +3 -3
  879. homeassistant/components/homeassistant/translations/fr.json +3 -0
  880. homeassistant/components/homeassistant/translations/nl.json +3 -0
  881. homeassistant/components/homeassistant/triggers/time.py +20 -1
  882. homeassistant/components/homeassistant_hardware/coordinator.py +9 -1
  883. homeassistant/components/homeassistant_sky_connect/update.py +1 -0
  884. homeassistant/components/homeassistant_yellow/update.py +1 -0
  885. homeassistant/components/homee/__init__.py +4 -6
  886. homeassistant/components/homee/config_flow.py +60 -0
  887. homeassistant/components/homee/manifest.json +1 -1
  888. homeassistant/components/homee/quality_scale.yaml +11 -8
  889. homeassistant/components/homee/strings.json +14 -2
  890. homeassistant/components/homee/translations/bg.json +12 -0
  891. homeassistant/components/homee/translations/ca.json +8 -0
  892. homeassistant/components/homee/translations/cs.json +12 -0
  893. homeassistant/components/homee/translations/da.json +12 -0
  894. homeassistant/components/homee/translations/de.json +12 -0
  895. homeassistant/components/homee/translations/el.json +12 -0
  896. homeassistant/components/homee/translations/en-GB.json +12 -0
  897. homeassistant/components/homee/translations/en.json +12 -0
  898. homeassistant/components/homee/translations/es.json +13 -1
  899. homeassistant/components/homee/translations/et.json +12 -0
  900. homeassistant/components/homee/translations/ga.json +6 -0
  901. homeassistant/components/homee/translations/he.json +8 -0
  902. homeassistant/components/homee/translations/it.json +1 -1
  903. homeassistant/components/homee/translations/ja.json +12 -0
  904. homeassistant/components/homee/translations/lt.json +12 -0
  905. homeassistant/components/homee/translations/nl.json +12 -0
  906. homeassistant/components/homee/translations/pt.json +12 -0
  907. homeassistant/components/homee/translations/ru.json +13 -1
  908. homeassistant/components/homee/translations/sk.json +12 -0
  909. homeassistant/components/homee/translations/sv.json +6 -0
  910. homeassistant/components/homee/translations/zh-Hans.json +12 -0
  911. homeassistant/components/homee/translations/zh-Hant.json +12 -0
  912. homeassistant/components/homekit/__init__.py +7 -4
  913. homeassistant/components/homematicip_cloud/const.py +1 -0
  914. homeassistant/components/homematicip_cloud/cover.py +2 -1
  915. homeassistant/components/homematicip_cloud/icons.json +11 -0
  916. homeassistant/components/homematicip_cloud/light.py +76 -1
  917. homeassistant/components/homematicip_cloud/manifest.json +1 -1
  918. homeassistant/components/homematicip_cloud/sensor.py +304 -102
  919. homeassistant/components/homematicip_cloud/strings.json +11 -0
  920. homeassistant/components/homematicip_cloud/switch.py +6 -0
  921. homeassistant/components/homematicip_cloud/translations/cs.json +11 -0
  922. homeassistant/components/homematicip_cloud/translations/de.json +11 -0
  923. homeassistant/components/homematicip_cloud/translations/el.json +11 -0
  924. homeassistant/components/homematicip_cloud/translations/en-GB.json +11 -0
  925. homeassistant/components/homematicip_cloud/translations/en.json +11 -0
  926. homeassistant/components/homematicip_cloud/translations/es.json +11 -0
  927. homeassistant/components/homematicip_cloud/translations/et.json +11 -0
  928. homeassistant/components/homematicip_cloud/translations/ga.json +11 -0
  929. homeassistant/components/homematicip_cloud/translations/it.json +11 -0
  930. homeassistant/components/homematicip_cloud/translations/ja.json +11 -0
  931. homeassistant/components/homematicip_cloud/translations/lt.json +11 -0
  932. homeassistant/components/homematicip_cloud/translations/mk.json +9 -0
  933. homeassistant/components/homematicip_cloud/translations/nl.json +9 -0
  934. homeassistant/components/homematicip_cloud/translations/pt.json +11 -0
  935. homeassistant/components/homematicip_cloud/translations/sk.json +11 -0
  936. homeassistant/components/homematicip_cloud/translations/zh-Hans.json +11 -0
  937. homeassistant/components/homematicip_cloud/translations/zh-Hant.json +11 -0
  938. homeassistant/components/homematicip_cloud/valve.py +59 -0
  939. homeassistant/components/homeworks/translations/es.json +2 -2
  940. homeassistant/components/honeywell/__init__.py +0 -9
  941. homeassistant/components/honeywell/config_flow.py +2 -2
  942. homeassistant/components/html5/strings.json +1 -1
  943. homeassistant/components/html5/translations/fr.json +1 -0
  944. homeassistant/components/http/__init__.py +1 -25
  945. homeassistant/components/huawei_lte/__init__.py +5 -17
  946. homeassistant/components/huawei_lte/config_flow.py +14 -9
  947. homeassistant/components/huawei_lte/const.py +1 -1
  948. homeassistant/components/huawei_lte/diagnostics.py +86 -0
  949. homeassistant/components/huawei_lte/notify.py +0 -3
  950. homeassistant/components/huawei_lte/translations/ga.json +18 -0
  951. homeassistant/components/humidifier/translations/it.json +2 -2
  952. homeassistant/components/hunterdouglas_powerview/__init__.py +15 -2
  953. homeassistant/components/husqvarna_automower/button.py +2 -7
  954. homeassistant/components/husqvarna_automower/calendar.py +22 -3
  955. homeassistant/components/husqvarna_automower/coordinator.py +150 -126
  956. homeassistant/components/husqvarna_automower/entity.py +9 -18
  957. homeassistant/components/husqvarna_automower/icons.json +23 -3
  958. homeassistant/components/husqvarna_automower/lawn_mower.py +2 -2
  959. homeassistant/components/husqvarna_automower/manifest.json +1 -1
  960. homeassistant/components/husqvarna_automower/sensor.py +55 -2
  961. homeassistant/components/husqvarna_automower/strings.json +27 -7
  962. homeassistant/components/husqvarna_automower/translations/bg.json +10 -0
  963. homeassistant/components/husqvarna_automower/translations/cs.json +20 -0
  964. homeassistant/components/husqvarna_automower/translations/de.json +20 -0
  965. homeassistant/components/husqvarna_automower/translations/el.json +8 -0
  966. homeassistant/components/husqvarna_automower/translations/en-GB.json +8 -0
  967. homeassistant/components/husqvarna_automower/translations/en.json +20 -0
  968. homeassistant/components/husqvarna_automower/translations/es.json +20 -0
  969. homeassistant/components/husqvarna_automower/translations/et.json +20 -0
  970. homeassistant/components/husqvarna_automower/translations/ga.json +34 -0
  971. homeassistant/components/husqvarna_automower/translations/it.json +1 -1
  972. homeassistant/components/husqvarna_automower/translations/lt.json +8 -0
  973. homeassistant/components/husqvarna_automower/translations/mk.json +7 -0
  974. homeassistant/components/husqvarna_automower/translations/sk.json +20 -0
  975. homeassistant/components/husqvarna_automower/translations/sv.json +8 -0
  976. homeassistant/components/husqvarna_automower/translations/zh-Hans.json +20 -0
  977. homeassistant/components/husqvarna_automower/translations/zh-Hant.json +20 -0
  978. homeassistant/components/husqvarna_automower_ble/__init__.py +1 -0
  979. homeassistant/components/husqvarna_automower_ble/coordinator.py +3 -3
  980. homeassistant/components/husqvarna_automower_ble/entity.py +16 -0
  981. homeassistant/components/husqvarna_automower_ble/sensor.py +51 -0
  982. homeassistant/components/huum/__init__.py +14 -32
  983. homeassistant/components/huum/binary_sensor.py +41 -0
  984. homeassistant/components/huum/climate.py +32 -50
  985. homeassistant/components/huum/config_flow.py +2 -2
  986. homeassistant/components/huum/const.py +5 -1
  987. homeassistant/components/huum/coordinator.py +60 -0
  988. homeassistant/components/huum/entity.py +24 -0
  989. homeassistant/components/huum/light.py +62 -0
  990. homeassistant/components/huum/manifest.json +2 -2
  991. homeassistant/components/huum/strings.json +7 -0
  992. homeassistant/components/huum/translations/bg.json +7 -0
  993. homeassistant/components/huum/translations/cs.json +7 -0
  994. homeassistant/components/huum/translations/de.json +7 -0
  995. homeassistant/components/huum/translations/el.json +7 -0
  996. homeassistant/components/huum/translations/en-GB.json +7 -0
  997. homeassistant/components/huum/translations/en.json +7 -0
  998. homeassistant/components/huum/translations/es.json +7 -0
  999. homeassistant/components/huum/translations/et.json +7 -0
  1000. homeassistant/components/huum/translations/fi.json +7 -0
  1001. homeassistant/components/huum/translations/he.json +7 -0
  1002. homeassistant/components/huum/translations/nl.json +7 -0
  1003. homeassistant/components/huum/translations/ru.json +7 -0
  1004. homeassistant/components/huum/translations/sk.json +7 -0
  1005. homeassistant/components/huum/translations/zh-Hans.json +7 -0
  1006. homeassistant/components/huum/translations/zh-Hant.json +7 -0
  1007. homeassistant/components/hydrawise/binary_sensor.py +36 -21
  1008. homeassistant/components/hydrawise/const.py +1 -0
  1009. homeassistant/components/hydrawise/coordinator.py +90 -2
  1010. homeassistant/components/hydrawise/entity.py +4 -2
  1011. homeassistant/components/hydrawise/manifest.json +1 -1
  1012. homeassistant/components/hydrawise/sensor.py +53 -30
  1013. homeassistant/components/hydrawise/switch.py +16 -7
  1014. homeassistant/components/hydrawise/valve.py +16 -6
  1015. homeassistant/components/hyperion/__init__.py +0 -6
  1016. homeassistant/components/hyperion/config_flow.py +2 -2
  1017. homeassistant/components/image_upload/manifest.json +1 -1
  1018. homeassistant/components/imeon_inverter/coordinator.py +2 -5
  1019. homeassistant/components/imeon_inverter/icons.json +0 -27
  1020. homeassistant/components/imeon_inverter/manifest.json +1 -1
  1021. homeassistant/components/imeon_inverter/sensor.py +0 -69
  1022. homeassistant/components/imeon_inverter/strings.json +0 -27
  1023. homeassistant/components/imeon_inverter/translations/cs.json +0 -27
  1024. homeassistant/components/imeon_inverter/translations/de.json +0 -27
  1025. homeassistant/components/imeon_inverter/translations/el.json +0 -27
  1026. homeassistant/components/imeon_inverter/translations/en-GB.json +0 -27
  1027. homeassistant/components/imeon_inverter/translations/en.json +0 -27
  1028. homeassistant/components/imeon_inverter/translations/es.json +0 -27
  1029. homeassistant/components/imeon_inverter/translations/et.json +0 -27
  1030. homeassistant/components/imeon_inverter/translations/ga.json +0 -27
  1031. homeassistant/components/imeon_inverter/translations/hu.json +0 -27
  1032. homeassistant/components/imeon_inverter/translations/it.json +0 -9
  1033. homeassistant/components/imeon_inverter/translations/lt.json +0 -27
  1034. homeassistant/components/imeon_inverter/translations/pt.json +0 -27
  1035. homeassistant/components/imeon_inverter/translations/ru.json +0 -27
  1036. homeassistant/components/imeon_inverter/translations/sk.json +0 -27
  1037. homeassistant/components/imeon_inverter/translations/sv.json +0 -27
  1038. homeassistant/components/imeon_inverter/translations/zh-Hans.json +0 -27
  1039. homeassistant/components/imeon_inverter/translations/zh-Hant.json +0 -27
  1040. homeassistant/components/imgw_pib/icons.json +6 -0
  1041. homeassistant/components/imgw_pib/manifest.json +1 -1
  1042. homeassistant/components/imgw_pib/sensor.py +42 -1
  1043. homeassistant/components/imgw_pib/strings.json +40 -0
  1044. homeassistant/components/imgw_pib/translations/bg.json +22 -0
  1045. homeassistant/components/imgw_pib/translations/cs.json +40 -0
  1046. homeassistant/components/imgw_pib/translations/de.json +40 -0
  1047. homeassistant/components/imgw_pib/translations/el.json +40 -0
  1048. homeassistant/components/imgw_pib/translations/en-GB.json +40 -0
  1049. homeassistant/components/imgw_pib/translations/en.json +40 -0
  1050. homeassistant/components/imgw_pib/translations/es.json +40 -0
  1051. homeassistant/components/imgw_pib/translations/et.json +40 -0
  1052. homeassistant/components/imgw_pib/translations/ga.json +44 -0
  1053. homeassistant/components/imgw_pib/translations/he.json +17 -0
  1054. homeassistant/components/imgw_pib/translations/lt.json +38 -0
  1055. homeassistant/components/imgw_pib/translations/mk.json +40 -1
  1056. homeassistant/components/imgw_pib/translations/nl.json +11 -0
  1057. homeassistant/components/imgw_pib/translations/pl.json +40 -0
  1058. homeassistant/components/imgw_pib/translations/pt.json +3 -0
  1059. homeassistant/components/imgw_pib/translations/ru.json +15 -0
  1060. homeassistant/components/imgw_pib/translations/sk.json +40 -0
  1061. homeassistant/components/imgw_pib/translations/sv.json +35 -0
  1062. homeassistant/components/imgw_pib/translations/zh-Hans.json +40 -0
  1063. homeassistant/components/imgw_pib/translations/zh-Hant.json +40 -0
  1064. homeassistant/components/immich/__init__.py +12 -0
  1065. homeassistant/components/immich/icons.json +5 -0
  1066. homeassistant/components/immich/manifest.json +1 -1
  1067. homeassistant/components/immich/media_source.py +119 -29
  1068. homeassistant/components/immich/services.py +98 -0
  1069. homeassistant/components/immich/services.yaml +18 -0
  1070. homeassistant/components/immich/strings.json +37 -0
  1071. homeassistant/components/immich/translations/cs.json +37 -0
  1072. homeassistant/components/immich/translations/de.json +37 -0
  1073. homeassistant/components/immich/translations/en-GB.json +37 -0
  1074. homeassistant/components/immich/translations/en.json +37 -0
  1075. homeassistant/components/immich/translations/es.json +37 -0
  1076. homeassistant/components/immich/translations/et.json +37 -0
  1077. homeassistant/components/immich/translations/fr.json +37 -0
  1078. homeassistant/components/immich/translations/ga.json +37 -0
  1079. homeassistant/components/immich/translations/nl.json +10 -0
  1080. homeassistant/components/immich/translations/sk.json +37 -0
  1081. homeassistant/components/immich/translations/zh-Hans.json +37 -0
  1082. homeassistant/components/immich/translations/zh-Hant.json +37 -0
  1083. homeassistant/components/incomfort/translations/ga.json +8 -1
  1084. homeassistant/components/incomfort/translations/it.json +1 -1
  1085. homeassistant/components/input_boolean/translations/it.json +1 -1
  1086. homeassistant/components/input_text/__init__.py +13 -4
  1087. homeassistant/components/insteon/strings.json +5 -5
  1088. homeassistant/components/integration/__init__.py +44 -6
  1089. homeassistant/components/integration/config_flow.py +2 -0
  1090. homeassistant/components/integration/sensor.py +33 -23
  1091. homeassistant/components/iqvia/manifest.json +1 -1
  1092. homeassistant/components/iron_os/__init__.py +13 -16
  1093. homeassistant/components/iron_os/const.py +4 -0
  1094. homeassistant/components/iron_os/coordinator.py +3 -1
  1095. homeassistant/components/iron_os/icons.json +6 -0
  1096. homeassistant/components/iron_os/number.py +156 -69
  1097. homeassistant/components/iron_os/strings.json +3 -0
  1098. homeassistant/components/iron_os/switch.py +19 -2
  1099. homeassistant/components/iron_os/translations/cs.json +3 -0
  1100. homeassistant/components/iron_os/translations/de.json +3 -0
  1101. homeassistant/components/iron_os/translations/el.json +3 -0
  1102. homeassistant/components/iron_os/translations/en-GB.json +3 -0
  1103. homeassistant/components/iron_os/translations/en.json +3 -0
  1104. homeassistant/components/iron_os/translations/es.json +4 -1
  1105. homeassistant/components/iron_os/translations/et.json +3 -0
  1106. homeassistant/components/iron_os/translations/ga.json +3 -0
  1107. homeassistant/components/iron_os/translations/it.json +4 -4
  1108. homeassistant/components/iron_os/translations/ja.json +3 -0
  1109. homeassistant/components/iron_os/translations/lt.json +3 -0
  1110. homeassistant/components/iron_os/translations/pt.json +3 -0
  1111. homeassistant/components/iron_os/translations/ru.json +3 -0
  1112. homeassistant/components/iron_os/translations/sk.json +3 -0
  1113. homeassistant/components/iron_os/translations/zh-Hans.json +3 -0
  1114. homeassistant/components/iron_os/translations/zh-Hant.json +3 -0
  1115. homeassistant/components/iskra/strings.json +8 -8
  1116. homeassistant/components/islamic_prayer_times/coordinator.py +3 -3
  1117. homeassistant/components/israel_rail/manifest.json +1 -1
  1118. homeassistant/components/ista_ecotrend/translations/ga.json +30 -0
  1119. homeassistant/components/isy994/__init__.py +0 -6
  1120. homeassistant/components/isy994/config_flow.py +3 -3
  1121. homeassistant/components/ituran/__init__.py +1 -0
  1122. homeassistant/components/ituran/binary_sensor.py +75 -0
  1123. homeassistant/components/ituran/device_tracker.py +4 -2
  1124. homeassistant/components/ituran/icons.json +3 -0
  1125. homeassistant/components/ituran/manifest.json +1 -1
  1126. homeassistant/components/ituran/sensor.py +24 -4
  1127. homeassistant/components/ituran/strings.json +3 -0
  1128. homeassistant/components/ituran/translations/cs.json +3 -0
  1129. homeassistant/components/ituran/translations/de.json +3 -0
  1130. homeassistant/components/ituran/translations/en-GB.json +3 -0
  1131. homeassistant/components/ituran/translations/en.json +3 -0
  1132. homeassistant/components/ituran/translations/es.json +3 -0
  1133. homeassistant/components/ituran/translations/et.json +3 -0
  1134. homeassistant/components/ituran/translations/ga.json +3 -0
  1135. homeassistant/components/ituran/translations/sk.json +3 -0
  1136. homeassistant/components/ituran/translations/zh-Hans.json +3 -0
  1137. homeassistant/components/ituran/translations/zh-Hant.json +3 -0
  1138. homeassistant/components/jellyfin/browse_media.py +47 -0
  1139. homeassistant/components/jellyfin/media_player.py +24 -3
  1140. homeassistant/components/jellyfin/translations/ga.json +9 -0
  1141. homeassistant/components/jewish_calendar/__init__.py +0 -7
  1142. homeassistant/components/jewish_calendar/binary_sensor.py +17 -55
  1143. homeassistant/components/jewish_calendar/config_flow.py +6 -2
  1144. homeassistant/components/jewish_calendar/entity.py +62 -3
  1145. homeassistant/components/jewish_calendar/sensor.py +55 -72
  1146. homeassistant/components/jewish_calendar/services.py +0 -1
  1147. homeassistant/components/jewish_calendar/translations/nl.json +7 -2
  1148. homeassistant/components/keba/strings.json +1 -1
  1149. homeassistant/components/keenetic_ndms2/__init__.py +0 -7
  1150. homeassistant/components/keenetic_ndms2/config_flow.py +27 -7
  1151. homeassistant/components/keenetic_ndms2/strings.json +2 -1
  1152. homeassistant/components/keenetic_ndms2/translations/bg.json +2 -1
  1153. homeassistant/components/keenetic_ndms2/translations/ca.json +2 -1
  1154. homeassistant/components/keenetic_ndms2/translations/cs.json +2 -1
  1155. homeassistant/components/keenetic_ndms2/translations/de.json +2 -1
  1156. homeassistant/components/keenetic_ndms2/translations/el.json +2 -1
  1157. homeassistant/components/keenetic_ndms2/translations/en-GB.json +2 -1
  1158. homeassistant/components/keenetic_ndms2/translations/en.json +2 -1
  1159. homeassistant/components/keenetic_ndms2/translations/es.json +2 -1
  1160. homeassistant/components/keenetic_ndms2/translations/et.json +2 -1
  1161. homeassistant/components/keenetic_ndms2/translations/he.json +2 -1
  1162. homeassistant/components/keenetic_ndms2/translations/ja.json +2 -1
  1163. homeassistant/components/keenetic_ndms2/translations/lt.json +2 -1
  1164. homeassistant/components/keenetic_ndms2/translations/nl.json +2 -1
  1165. homeassistant/components/keenetic_ndms2/translations/pt.json +2 -1
  1166. homeassistant/components/keenetic_ndms2/translations/ru.json +2 -1
  1167. homeassistant/components/keenetic_ndms2/translations/sk.json +2 -1
  1168. homeassistant/components/keenetic_ndms2/translations/sv.json +2 -1
  1169. homeassistant/components/keenetic_ndms2/translations/zh-Hans.json +2 -1
  1170. homeassistant/components/keenetic_ndms2/translations/zh-Hant.json +2 -1
  1171. homeassistant/components/keymitt_ble/manifest.json +3 -3
  1172. homeassistant/components/kitchen_sink/__init__.py +0 -7
  1173. homeassistant/components/kitchen_sink/config_flow.py +3 -3
  1174. homeassistant/components/knocki/translations/ga.json +15 -0
  1175. homeassistant/components/knx/__init__.py +11 -298
  1176. homeassistant/components/knx/binary_sensor.py +13 -12
  1177. homeassistant/components/knx/button.py +2 -2
  1178. homeassistant/components/knx/climate.py +2 -2
  1179. homeassistant/components/knx/config_flow.py +83 -63
  1180. homeassistant/components/knx/const.py +1 -1
  1181. homeassistant/components/knx/cover.py +18 -34
  1182. homeassistant/components/knx/date.py +2 -2
  1183. homeassistant/components/knx/datetime.py +2 -2
  1184. homeassistant/components/knx/device.py +1 -1
  1185. homeassistant/components/knx/device_trigger.py +1 -1
  1186. homeassistant/components/knx/diagnostics.py +1 -1
  1187. homeassistant/components/knx/entity.py +2 -2
  1188. homeassistant/components/knx/expose.py +1 -1
  1189. homeassistant/components/knx/fan.py +2 -2
  1190. homeassistant/components/knx/knx_module.py +301 -0
  1191. homeassistant/components/knx/light.py +91 -77
  1192. homeassistant/components/knx/manifest.json +1 -1
  1193. homeassistant/components/knx/notify.py +2 -2
  1194. homeassistant/components/knx/number.py +2 -2
  1195. homeassistant/components/knx/quality_scale.yaml +1 -1
  1196. homeassistant/components/knx/scene.py +2 -2
  1197. homeassistant/components/knx/select.py +2 -2
  1198. homeassistant/components/knx/sensor.py +2 -2
  1199. homeassistant/components/knx/services.py +2 -2
  1200. homeassistant/components/knx/storage/__init__.py +1 -1
  1201. homeassistant/components/knx/storage/config_store.py +17 -2
  1202. homeassistant/components/knx/storage/const.py +14 -7
  1203. homeassistant/components/knx/storage/entity_store_schema.py +106 -89
  1204. homeassistant/components/knx/storage/entity_store_validation.py +1 -1
  1205. homeassistant/components/knx/storage/knx_selector.py +26 -0
  1206. homeassistant/components/knx/storage/migration.py +42 -0
  1207. homeassistant/components/knx/storage/util.py +51 -0
  1208. homeassistant/components/knx/strings.json +12 -150
  1209. homeassistant/components/knx/switch.py +10 -17
  1210. homeassistant/components/knx/text.py +2 -2
  1211. homeassistant/components/knx/time.py +2 -2
  1212. homeassistant/components/knx/translations/bg.json +0 -48
  1213. homeassistant/components/knx/translations/ca.json +3 -132
  1214. homeassistant/components/knx/translations/cs.json +10 -148
  1215. homeassistant/components/knx/translations/da.json +0 -13
  1216. homeassistant/components/knx/translations/de.json +10 -148
  1217. homeassistant/components/knx/translations/el.json +10 -148
  1218. homeassistant/components/knx/translations/en-GB.json +10 -148
  1219. homeassistant/components/knx/translations/en.json +10 -148
  1220. homeassistant/components/knx/translations/es.json +10 -148
  1221. homeassistant/components/knx/translations/et.json +10 -148
  1222. homeassistant/components/knx/translations/fi.json +0 -119
  1223. homeassistant/components/knx/translations/fr.json +0 -76
  1224. homeassistant/components/knx/translations/ga.json +17 -48
  1225. homeassistant/components/knx/translations/gl.json +0 -33
  1226. homeassistant/components/knx/translations/he.json +3 -15
  1227. homeassistant/components/knx/translations/hu.json +0 -148
  1228. homeassistant/components/knx/translations/id.json +0 -100
  1229. homeassistant/components/knx/translations/it.json +0 -119
  1230. homeassistant/components/knx/translations/ja.json +0 -148
  1231. homeassistant/components/knx/translations/ko.json +0 -119
  1232. homeassistant/components/knx/translations/lt.json +10 -148
  1233. homeassistant/components/knx/translations/lv.json +0 -26
  1234. homeassistant/components/knx/translations/nb.json +0 -100
  1235. homeassistant/components/knx/translations/nl.json +3 -125
  1236. homeassistant/components/knx/translations/pl.json +0 -97
  1237. homeassistant/components/knx/translations/pt-BR.json +0 -117
  1238. homeassistant/components/knx/translations/pt.json +10 -148
  1239. homeassistant/components/knx/translations/ro.json +0 -88
  1240. homeassistant/components/knx/translations/ru.json +0 -148
  1241. homeassistant/components/knx/translations/sk.json +10 -148
  1242. homeassistant/components/knx/translations/sl.json +0 -13
  1243. homeassistant/components/knx/translations/sv.json +3 -148
  1244. homeassistant/components/knx/translations/tr.json +0 -148
  1245. homeassistant/components/knx/translations/uk.json +0 -89
  1246. homeassistant/components/knx/translations/vi.json +0 -5
  1247. homeassistant/components/knx/translations/zh-Hans.json +10 -148
  1248. homeassistant/components/knx/translations/zh-Hant.json +10 -148
  1249. homeassistant/components/knx/trigger.py +1 -1
  1250. homeassistant/components/knx/weather.py +2 -2
  1251. homeassistant/components/knx/websocket.py +3 -3
  1252. homeassistant/components/kodi/translations/ga.json +13 -0
  1253. homeassistant/components/kostal_plenticore/switch.py +20 -1
  1254. homeassistant/components/lamarzocco/__init__.py +0 -7
  1255. homeassistant/components/lamarzocco/config_flow.py +2 -2
  1256. homeassistant/components/lamarzocco/sensor.py +15 -1
  1257. homeassistant/components/lamarzocco/translations/ga.json +6 -0
  1258. homeassistant/components/lametric/strings.json +1 -1
  1259. homeassistant/components/lastfm/__init__.py +0 -6
  1260. homeassistant/components/lastfm/config_flow.py +6 -2
  1261. homeassistant/components/laundrify/strings.json +1 -1
  1262. homeassistant/components/laundrify/translations/ga.json +9 -0
  1263. homeassistant/components/lcn/__init__.py +5 -1
  1264. homeassistant/components/lcn/binary_sensor.py +4 -132
  1265. homeassistant/components/lcn/helpers.py +9 -2
  1266. homeassistant/components/lcn/light.py +28 -22
  1267. homeassistant/components/lcn/manifest.json +1 -1
  1268. homeassistant/components/lcn/quality_scale.yaml +1 -1
  1269. homeassistant/components/lcn/services.py +6 -4
  1270. homeassistant/components/lcn/strings.json +19 -7
  1271. homeassistant/components/lcn/translations/cs.json +18 -2
  1272. homeassistant/components/lcn/translations/de.json +14 -2
  1273. homeassistant/components/lcn/translations/el.json +14 -2
  1274. homeassistant/components/lcn/translations/en-GB.json +14 -2
  1275. homeassistant/components/lcn/translations/en.json +14 -2
  1276. homeassistant/components/lcn/translations/es.json +16 -4
  1277. homeassistant/components/lcn/translations/et.json +14 -2
  1278. homeassistant/components/lcn/translations/ga.json +14 -2
  1279. homeassistant/components/lcn/translations/hu.json +0 -5
  1280. homeassistant/components/lcn/translations/ja.json +14 -2
  1281. homeassistant/components/lcn/translations/lt.json +14 -2
  1282. homeassistant/components/lcn/translations/nl.json +0 -5
  1283. homeassistant/components/lcn/translations/pt-BR.json +0 -5
  1284. homeassistant/components/lcn/translations/pt.json +14 -2
  1285. homeassistant/components/lcn/translations/ru.json +8 -2
  1286. homeassistant/components/lcn/translations/sk.json +14 -2
  1287. homeassistant/components/lcn/translations/sv.json +0 -5
  1288. homeassistant/components/lcn/translations/tr.json +0 -5
  1289. homeassistant/components/lcn/translations/zh-Hans.json +14 -2
  1290. homeassistant/components/lcn/translations/zh-Hant.json +14 -2
  1291. homeassistant/components/leaone/strings.json +1 -1
  1292. homeassistant/components/leaone/translations/de.json +1 -1
  1293. homeassistant/components/leaone/translations/el.json +1 -2
  1294. homeassistant/components/leaone/translations/en-GB.json +1 -1
  1295. homeassistant/components/leaone/translations/en.json +1 -1
  1296. homeassistant/components/leaone/translations/es.json +1 -1
  1297. homeassistant/components/leaone/translations/fi.json +1 -2
  1298. homeassistant/components/leaone/translations/fr.json +1 -2
  1299. homeassistant/components/leaone/translations/hu.json +1 -2
  1300. homeassistant/components/leaone/translations/ja.json +1 -2
  1301. homeassistant/components/leaone/translations/lt.json +1 -2
  1302. homeassistant/components/leaone/translations/nl.json +1 -2
  1303. homeassistant/components/leaone/translations/pt.json +1 -2
  1304. homeassistant/components/leaone/translations/ru.json +1 -2
  1305. homeassistant/components/leaone/translations/sk.json +1 -2
  1306. homeassistant/components/leaone/translations/sv.json +1 -2
  1307. homeassistant/components/leaone/translations/tr.json +1 -2
  1308. homeassistant/components/leaone/translations/zh-Hans.json +1 -2
  1309. homeassistant/components/letpot/__init__.py +7 -2
  1310. homeassistant/components/letpot/binary_sensor.py +3 -1
  1311. homeassistant/components/letpot/coordinator.py +7 -6
  1312. homeassistant/components/letpot/entity.py +3 -2
  1313. homeassistant/components/letpot/manifest.json +2 -1
  1314. homeassistant/components/letpot/sensor.py +6 -2
  1315. homeassistant/components/letpot/switch.py +22 -8
  1316. homeassistant/components/letpot/time.py +10 -6
  1317. homeassistant/components/lg_thinq/climate.py +49 -62
  1318. homeassistant/components/lg_thinq/icons.json +15 -0
  1319. homeassistant/components/lg_thinq/sensor.py +40 -0
  1320. homeassistant/components/lg_thinq/strings.json +56 -5
  1321. homeassistant/components/lg_thinq/translations/bg.json +3 -0
  1322. homeassistant/components/lg_thinq/translations/cs.json +51 -0
  1323. homeassistant/components/lg_thinq/translations/de.json +51 -0
  1324. homeassistant/components/lg_thinq/translations/el.json +28 -0
  1325. homeassistant/components/lg_thinq/translations/en-GB.json +51 -0
  1326. homeassistant/components/lg_thinq/translations/en.json +51 -0
  1327. homeassistant/components/lg_thinq/translations/es.json +53 -2
  1328. homeassistant/components/lg_thinq/translations/et.json +51 -0
  1329. homeassistant/components/lg_thinq/translations/ga.json +50 -0
  1330. homeassistant/components/lg_thinq/translations/he.json +6 -0
  1331. homeassistant/components/lg_thinq/translations/it.json +14 -14
  1332. homeassistant/components/lg_thinq/translations/mk.json +11 -0
  1333. homeassistant/components/lg_thinq/translations/nl.json +21 -0
  1334. homeassistant/components/lg_thinq/translations/sk.json +51 -0
  1335. homeassistant/components/lg_thinq/translations/zh-Hans.json +51 -0
  1336. homeassistant/components/lg_thinq/translations/zh-Hant.json +51 -0
  1337. homeassistant/components/lifx/const.py +1 -0
  1338. homeassistant/components/lifx/coordinator.py +49 -1
  1339. homeassistant/components/lifx/manager.py +7 -3
  1340. homeassistant/components/lifx/manifest.json +1 -1
  1341. homeassistant/components/light/icons.json +3 -0
  1342. homeassistant/components/light/translations/ga.json +37 -0
  1343. homeassistant/components/light/translations/it.json +1 -1
  1344. homeassistant/components/linkplay/const.py +1 -1
  1345. homeassistant/components/linkplay/icons.json +5 -0
  1346. homeassistant/components/linkplay/media_player.py +14 -9
  1347. homeassistant/components/linkplay/select.py +112 -0
  1348. homeassistant/components/linkplay/strings.json +11 -0
  1349. homeassistant/components/linkplay/translations/bg.json +13 -0
  1350. homeassistant/components/linkplay/translations/ca.json +12 -0
  1351. homeassistant/components/linkplay/translations/cs.json +11 -0
  1352. homeassistant/components/linkplay/translations/de.json +11 -0
  1353. homeassistant/components/linkplay/translations/el.json +11 -0
  1354. homeassistant/components/linkplay/translations/en-GB.json +11 -0
  1355. homeassistant/components/linkplay/translations/en.json +11 -0
  1356. homeassistant/components/linkplay/translations/es.json +11 -0
  1357. homeassistant/components/linkplay/translations/et.json +11 -0
  1358. homeassistant/components/linkplay/translations/ga.json +11 -0
  1359. homeassistant/components/linkplay/translations/lt.json +11 -0
  1360. homeassistant/components/linkplay/translations/mk.json +14 -1
  1361. homeassistant/components/linkplay/translations/nl.json +11 -0
  1362. homeassistant/components/linkplay/translations/pt.json +11 -0
  1363. homeassistant/components/linkplay/translations/ru.json +11 -0
  1364. homeassistant/components/linkplay/translations/sk.json +11 -0
  1365. homeassistant/components/linkplay/translations/zh-Hans.json +11 -0
  1366. homeassistant/components/linkplay/translations/zh-Hant.json +11 -0
  1367. homeassistant/components/litterrobot/coordinator.py +3 -0
  1368. homeassistant/components/litterrobot/icons.json +3 -0
  1369. homeassistant/components/litterrobot/manifest.json +1 -1
  1370. homeassistant/components/litterrobot/sensor.py +15 -1
  1371. homeassistant/components/litterrobot/strings.json +5 -1
  1372. homeassistant/components/litterrobot/translations/bg.json +4 -0
  1373. homeassistant/components/litterrobot/translations/ca.json +4 -0
  1374. homeassistant/components/litterrobot/translations/cs.json +4 -0
  1375. homeassistant/components/litterrobot/translations/de.json +4 -0
  1376. homeassistant/components/litterrobot/translations/el.json +4 -0
  1377. homeassistant/components/litterrobot/translations/en-GB.json +4 -0
  1378. homeassistant/components/litterrobot/translations/en.json +4 -0
  1379. homeassistant/components/litterrobot/translations/es.json +4 -0
  1380. homeassistant/components/litterrobot/translations/et.json +4 -0
  1381. homeassistant/components/litterrobot/translations/ga.json +4 -0
  1382. homeassistant/components/litterrobot/translations/it.json +5 -1
  1383. homeassistant/components/litterrobot/translations/lt.json +4 -0
  1384. homeassistant/components/litterrobot/translations/mk.json +4 -0
  1385. homeassistant/components/litterrobot/translations/nl.json +3 -0
  1386. homeassistant/components/litterrobot/translations/pt.json +4 -0
  1387. homeassistant/components/litterrobot/translations/ru.json +4 -0
  1388. homeassistant/components/litterrobot/translations/sensor.it.json +1 -1
  1389. homeassistant/components/litterrobot/translations/sk.json +4 -0
  1390. homeassistant/components/litterrobot/translations/zh-Hans.json +4 -0
  1391. homeassistant/components/litterrobot/translations/zh-Hant.json +4 -0
  1392. homeassistant/components/local_calendar/calendar.py +1 -1
  1393. homeassistant/components/local_calendar/manifest.json +1 -1
  1394. homeassistant/components/local_todo/manifest.json +1 -1
  1395. homeassistant/components/lock/translations/da.json +2 -0
  1396. homeassistant/components/lookin/__init__.py +1 -1
  1397. homeassistant/components/lookin/media_player.py +2 -4
  1398. homeassistant/components/luftdaten/strings.json +1 -1
  1399. homeassistant/components/lutron_caseta/translations/it.json +1 -1
  1400. homeassistant/components/matrix/__init__.py +2 -2
  1401. homeassistant/components/matrix/manifest.json +1 -1
  1402. homeassistant/components/matrix/services.py +3 -2
  1403. homeassistant/components/matter/binary_sensor.py +21 -21
  1404. homeassistant/components/matter/cover.py +6 -0
  1405. homeassistant/components/matter/entity.py +2 -2
  1406. homeassistant/components/matter/icons.json +8 -0
  1407. homeassistant/components/matter/manifest.json +1 -1
  1408. homeassistant/components/matter/number.py +202 -12
  1409. homeassistant/components/matter/select.py +42 -20
  1410. homeassistant/components/matter/sensor.py +52 -25
  1411. homeassistant/components/matter/strings.json +28 -4
  1412. homeassistant/components/matter/switch.py +6 -6
  1413. homeassistant/components/matter/translations/bg.json +3 -0
  1414. homeassistant/components/matter/translations/ca.json +11 -0
  1415. homeassistant/components/matter/translations/cs.json +26 -2
  1416. homeassistant/components/matter/translations/de.json +26 -2
  1417. homeassistant/components/matter/translations/el.json +20 -2
  1418. homeassistant/components/matter/translations/en-GB.json +26 -2
  1419. homeassistant/components/matter/translations/en.json +26 -2
  1420. homeassistant/components/matter/translations/es.json +27 -3
  1421. homeassistant/components/matter/translations/et.json +26 -2
  1422. homeassistant/components/matter/translations/fr.json +27 -3
  1423. homeassistant/components/matter/translations/ga.json +41 -3
  1424. homeassistant/components/matter/translations/he.json +20 -2
  1425. homeassistant/components/matter/translations/hu.json +3 -3
  1426. homeassistant/components/matter/translations/it.json +16 -5
  1427. homeassistant/components/matter/translations/ja.json +15 -0
  1428. homeassistant/components/matter/translations/lt.json +20 -2
  1429. homeassistant/components/matter/translations/mk.json +3 -0
  1430. homeassistant/components/matter/translations/nl.json +3 -0
  1431. homeassistant/components/matter/translations/pt.json +20 -2
  1432. homeassistant/components/matter/translations/ru.json +17 -2
  1433. homeassistant/components/matter/translations/sk.json +26 -2
  1434. homeassistant/components/matter/translations/sv.json +6 -3
  1435. homeassistant/components/matter/translations/zh-Hans.json +26 -2
  1436. homeassistant/components/matter/translations/zh-Hant.json +26 -2
  1437. homeassistant/components/matter/vacuum.py +30 -17
  1438. homeassistant/components/mcp_server/config_flow.py +14 -5
  1439. homeassistant/components/mcp_server/server.py +1 -1
  1440. homeassistant/components/mcp_server/strings.json +3 -0
  1441. homeassistant/components/mcp_server/translations/cs.json +3 -0
  1442. homeassistant/components/mcp_server/translations/de.json +3 -0
  1443. homeassistant/components/mcp_server/translations/el.json +3 -0
  1444. homeassistant/components/mcp_server/translations/en-GB.json +3 -0
  1445. homeassistant/components/mcp_server/translations/en.json +3 -0
  1446. homeassistant/components/mcp_server/translations/es.json +3 -0
  1447. homeassistant/components/mcp_server/translations/et.json +3 -0
  1448. homeassistant/components/mcp_server/translations/fr.json +3 -0
  1449. homeassistant/components/mcp_server/translations/ga.json +6 -0
  1450. homeassistant/components/mcp_server/translations/lt.json +3 -0
  1451. homeassistant/components/mcp_server/translations/pt.json +3 -0
  1452. homeassistant/components/mcp_server/translations/ru.json +3 -0
  1453. homeassistant/components/mcp_server/translations/sk.json +3 -0
  1454. homeassistant/components/mcp_server/translations/zh-Hans.json +3 -0
  1455. homeassistant/components/mcp_server/translations/zh-Hant.json +3 -0
  1456. homeassistant/components/mealie/const.py +2 -0
  1457. homeassistant/components/mealie/icons.json +3 -0
  1458. homeassistant/components/mealie/manifest.json +2 -1
  1459. homeassistant/components/mealie/services.py +39 -0
  1460. homeassistant/components/mealie/services.yaml +21 -0
  1461. homeassistant/components/mealie/strings.json +21 -0
  1462. homeassistant/components/mealie/translations/cs.json +21 -0
  1463. homeassistant/components/mealie/translations/de.json +21 -0
  1464. homeassistant/components/mealie/translations/el.json +8 -0
  1465. homeassistant/components/mealie/translations/en.json +21 -0
  1466. homeassistant/components/mealie/translations/es.json +21 -0
  1467. homeassistant/components/mealie/translations/fr.json +19 -0
  1468. homeassistant/components/mealie/translations/ga.json +24 -0
  1469. homeassistant/components/mealie/translations/sk.json +8 -0
  1470. homeassistant/components/mealie/translations/zh-Hans.json +8 -0
  1471. homeassistant/components/mealie/translations/zh-Hant.json +16 -0
  1472. homeassistant/components/medcom_ble/__init__.py +3 -33
  1473. homeassistant/components/medcom_ble/coordinator.py +50 -0
  1474. homeassistant/components/medcom_ble/sensor.py +5 -13
  1475. homeassistant/components/media_player/__init__.py +2 -1
  1476. homeassistant/components/media_player/const.py +8 -1
  1477. homeassistant/components/media_player/translations/it.json +4 -4
  1478. homeassistant/components/media_source/__init__.py +5 -4
  1479. homeassistant/components/media_source/const.py +8 -0
  1480. homeassistant/components/media_source/local_source.py +5 -5
  1481. homeassistant/components/media_source/models.py +21 -5
  1482. homeassistant/components/mediaroom/media_player.py +3 -3
  1483. homeassistant/components/melcloud/__init__.py +6 -10
  1484. homeassistant/components/melcloud/climate.py +3 -5
  1485. homeassistant/components/melcloud/diagnostics.py +3 -2
  1486. homeassistant/components/melcloud/sensor.py +3 -5
  1487. homeassistant/components/melcloud/water_heater.py +3 -4
  1488. homeassistant/components/melnor/__init__.py +6 -17
  1489. homeassistant/components/melnor/coordinator.py +4 -2
  1490. homeassistant/components/melnor/number.py +3 -5
  1491. homeassistant/components/melnor/sensor.py +3 -5
  1492. homeassistant/components/melnor/switch.py +3 -5
  1493. homeassistant/components/melnor/time.py +3 -5
  1494. homeassistant/components/met/__init__.py +0 -6
  1495. homeassistant/components/met/config_flow.py +2 -2
  1496. homeassistant/components/met_eireann/__init__.py +4 -65
  1497. homeassistant/components/met_eireann/coordinator.py +76 -0
  1498. homeassistant/components/met_eireann/weather.py +1 -4
  1499. homeassistant/components/meteo_france/__init__.py +1 -4
  1500. homeassistant/components/meteo_france/const.py +0 -1
  1501. homeassistant/components/meteoclimatic/__init__.py +3 -31
  1502. homeassistant/components/meteoclimatic/coordinator.py +43 -0
  1503. homeassistant/components/meteoclimatic/sensor.py +9 -7
  1504. homeassistant/components/meteoclimatic/weather.py +7 -7
  1505. homeassistant/components/miele/__init__.py +13 -2
  1506. homeassistant/components/miele/const.py +11 -1
  1507. homeassistant/components/miele/coordinator.py +2 -0
  1508. homeassistant/components/miele/entity.py +6 -1
  1509. homeassistant/components/miele/icons.json +11 -0
  1510. homeassistant/components/miele/sensor.py +140 -76
  1511. homeassistant/components/miele/services.py +238 -0
  1512. homeassistant/components/miele/services.yaml +55 -0
  1513. homeassistant/components/miele/strings.json +66 -3
  1514. homeassistant/components/miele/translations/bg.json +16 -0
  1515. homeassistant/components/miele/translations/cs.json +63 -0
  1516. homeassistant/components/miele/translations/de.json +63 -0
  1517. homeassistant/components/miele/translations/el.json +45 -0
  1518. homeassistant/components/miele/translations/en-GB.json +38 -0
  1519. homeassistant/components/miele/translations/en.json +63 -0
  1520. homeassistant/components/miele/translations/es.json +38 -0
  1521. homeassistant/components/miele/translations/et.json +29 -0
  1522. homeassistant/components/miele/translations/ga.json +31 -0
  1523. homeassistant/components/miele/translations/it.json +1 -1
  1524. homeassistant/components/miele/translations/mk.json +14 -0
  1525. homeassistant/components/miele/translations/nl.json +9 -0
  1526. homeassistant/components/miele/translations/sk.json +48 -0
  1527. homeassistant/components/miele/translations/zh-Hans.json +52 -0
  1528. homeassistant/components/miele/translations/zh-Hant.json +54 -0
  1529. homeassistant/components/miele/vacuum.py +0 -6
  1530. homeassistant/components/mikrotik/coordinator.py +2 -2
  1531. homeassistant/components/mjpeg/strings.json +1 -1
  1532. homeassistant/components/modbus/modbus.py +2 -2
  1533. homeassistant/components/modbus/strings.json +2 -2
  1534. homeassistant/components/modbus/translations/fr.json +2 -0
  1535. homeassistant/components/modem_callerid/sensor.py +15 -3
  1536. homeassistant/components/mold_indicator/__init__.py +116 -1
  1537. homeassistant/components/mold_indicator/config_flow.py +3 -0
  1538. homeassistant/components/mold_indicator/sensor.py +2 -2
  1539. homeassistant/components/monoprice/__init__.py +2 -11
  1540. homeassistant/components/monoprice/const.py +0 -1
  1541. homeassistant/components/monzo/manifest.json +1 -1
  1542. homeassistant/components/monzo/translations/ga.json +6 -0
  1543. homeassistant/components/motion_blinds/__init__.py +0 -7
  1544. homeassistant/components/motion_blinds/config_flow.py +2 -2
  1545. homeassistant/components/motioneye/__init__.py +0 -6
  1546. homeassistant/components/motioneye/config_flow.py +2 -2
  1547. homeassistant/components/mpd/translations/ga.json +11 -0
  1548. homeassistant/components/mqtt/climate.py +40 -46
  1549. homeassistant/components/mqtt/config_flow.py +915 -15
  1550. homeassistant/components/mqtt/const.py +33 -4
  1551. homeassistant/components/mqtt/entity.py +73 -3
  1552. homeassistant/components/mqtt/models.py +9 -0
  1553. homeassistant/components/mqtt/repairs.py +74 -0
  1554. homeassistant/components/mqtt/strings.json +289 -5
  1555. homeassistant/components/mqtt/translations/bg.json +22 -0
  1556. homeassistant/components/mqtt/translations/cs.json +328 -43
  1557. homeassistant/components/mqtt/translations/da.json +5 -0
  1558. homeassistant/components/mqtt/translations/de.json +286 -2
  1559. homeassistant/components/mqtt/translations/el.json +76 -0
  1560. homeassistant/components/mqtt/translations/en-GB.json +53 -0
  1561. homeassistant/components/mqtt/translations/en.json +284 -0
  1562. homeassistant/components/mqtt/translations/es.json +253 -2
  1563. homeassistant/components/mqtt/translations/et.json +53 -0
  1564. homeassistant/components/mqtt/translations/fr.json +45 -0
  1565. homeassistant/components/mqtt/translations/ga.json +271 -0
  1566. homeassistant/components/mqtt/translations/he.json +53 -0
  1567. homeassistant/components/mqtt/translations/it.json +1 -1
  1568. homeassistant/components/mqtt/translations/mk.json +18 -0
  1569. homeassistant/components/mqtt/translations/nl.json +279 -1
  1570. homeassistant/components/mqtt/translations/ru.json +53 -0
  1571. homeassistant/components/mqtt/translations/sk.json +91 -0
  1572. homeassistant/components/mqtt/translations/zh-Hans.json +98 -0
  1573. homeassistant/components/mqtt/translations/zh-Hant.json +226 -0
  1574. homeassistant/components/music_assistant/strings.json +1 -1
  1575. homeassistant/components/music_assistant/translations/fr.json +2 -1
  1576. homeassistant/components/mysensors/manifest.json +1 -1
  1577. homeassistant/components/mystrom/__init__.py +6 -11
  1578. homeassistant/components/mystrom/light.py +4 -4
  1579. homeassistant/components/mystrom/manifest.json +1 -1
  1580. homeassistant/components/mystrom/models.py +4 -0
  1581. homeassistant/components/mystrom/sensor.py +3 -3
  1582. homeassistant/components/mystrom/switch.py +3 -3
  1583. homeassistant/components/myuplink/translations/ga.json +8 -0
  1584. homeassistant/components/nam/translations/ga.json +6 -0
  1585. homeassistant/components/nasweb/__init__.py +1 -1
  1586. homeassistant/components/nasweb/const.py +1 -0
  1587. homeassistant/components/nasweb/coordinator.py +15 -5
  1588. homeassistant/components/nasweb/icons.json +15 -0
  1589. homeassistant/components/nasweb/sensor.py +189 -0
  1590. homeassistant/components/nasweb/strings.json +17 -5
  1591. homeassistant/components/nasweb/translations/bg.json +9 -0
  1592. homeassistant/components/nasweb/translations/ca.json +10 -0
  1593. homeassistant/components/nasweb/translations/cs.json +12 -0
  1594. homeassistant/components/nasweb/translations/de.json +12 -0
  1595. homeassistant/components/nasweb/translations/el.json +12 -0
  1596. homeassistant/components/nasweb/translations/en-GB.json +12 -0
  1597. homeassistant/components/nasweb/translations/en.json +12 -0
  1598. homeassistant/components/nasweb/translations/es.json +12 -0
  1599. homeassistant/components/nasweb/translations/et.json +12 -0
  1600. homeassistant/components/nasweb/translations/ga.json +13 -0
  1601. homeassistant/components/nasweb/translations/he.json +10 -0
  1602. homeassistant/components/nasweb/translations/lt.json +12 -0
  1603. homeassistant/components/nasweb/translations/nb.json +11 -1
  1604. homeassistant/components/nasweb/translations/nl.json +10 -0
  1605. homeassistant/components/nasweb/translations/nn.json +11 -1
  1606. homeassistant/components/nasweb/translations/ru.json +8 -0
  1607. homeassistant/components/nasweb/translations/sk.json +12 -0
  1608. homeassistant/components/nasweb/translations/sv.json +11 -0
  1609. homeassistant/components/nasweb/translations/zh-Hans.json +12 -0
  1610. homeassistant/components/nasweb/translations/zh-Hant.json +12 -0
  1611. homeassistant/components/nest/strings.json +1 -1
  1612. homeassistant/components/netatmo/climate.py +15 -6
  1613. homeassistant/components/netatmo/const.py +1 -0
  1614. homeassistant/components/netgear/__init__.py +0 -7
  1615. homeassistant/components/netgear/config_flow.py +2 -2
  1616. homeassistant/components/nextdns/__init__.py +10 -16
  1617. homeassistant/components/nextdns/coordinator.py +22 -3
  1618. homeassistant/components/nibe_heatpump/button.py +1 -0
  1619. homeassistant/components/nibe_heatpump/coordinator.py +35 -2
  1620. homeassistant/components/nibe_heatpump/number.py +2 -1
  1621. homeassistant/components/nibe_heatpump/strings.json +8 -0
  1622. homeassistant/components/nibe_heatpump/translations/cs.json +8 -0
  1623. homeassistant/components/nibe_heatpump/translations/de.json +8 -0
  1624. homeassistant/components/nibe_heatpump/translations/el.json +8 -0
  1625. homeassistant/components/nibe_heatpump/translations/en-GB.json +8 -0
  1626. homeassistant/components/nibe_heatpump/translations/en.json +8 -0
  1627. homeassistant/components/nibe_heatpump/translations/es.json +8 -0
  1628. homeassistant/components/nibe_heatpump/translations/et.json +8 -0
  1629. homeassistant/components/nibe_heatpump/translations/ga.json +10 -1
  1630. homeassistant/components/nibe_heatpump/translations/it.json +8 -0
  1631. homeassistant/components/nibe_heatpump/translations/ja.json +8 -0
  1632. homeassistant/components/nibe_heatpump/translations/lt.json +8 -0
  1633. homeassistant/components/nibe_heatpump/translations/pt.json +8 -0
  1634. homeassistant/components/nibe_heatpump/translations/sk.json +8 -0
  1635. homeassistant/components/nibe_heatpump/translations/zh-Hans.json +8 -0
  1636. homeassistant/components/nibe_heatpump/translations/zh-Hant.json +8 -0
  1637. homeassistant/components/nina/__init__.py +0 -7
  1638. homeassistant/components/nina/config_flow.py +3 -3
  1639. homeassistant/components/nissan_leaf/translations/de.json +4 -4
  1640. homeassistant/components/nmap_tracker/__init__.py +0 -6
  1641. homeassistant/components/nmap_tracker/config_flow.py +2 -2
  1642. homeassistant/components/nobo_hub/__init__.py +0 -9
  1643. homeassistant/components/nobo_hub/config_flow.py +3 -3
  1644. homeassistant/components/nordpool/const.py +1 -0
  1645. homeassistant/components/nordpool/icons.json +3 -0
  1646. homeassistant/components/nordpool/services.py +71 -8
  1647. homeassistant/components/nordpool/services.yaml +56 -0
  1648. homeassistant/components/nordpool/strings.json +27 -1
  1649. homeassistant/components/nordpool/translations/bg.json +16 -0
  1650. homeassistant/components/nordpool/translations/cs.json +26 -0
  1651. homeassistant/components/nordpool/translations/de.json +26 -0
  1652. homeassistant/components/nordpool/translations/el.json +26 -0
  1653. homeassistant/components/nordpool/translations/en-GB.json +26 -0
  1654. homeassistant/components/nordpool/translations/en.json +26 -0
  1655. homeassistant/components/nordpool/translations/es.json +26 -0
  1656. homeassistant/components/nordpool/translations/et.json +26 -0
  1657. homeassistant/components/nordpool/translations/ga.json +26 -0
  1658. homeassistant/components/nordpool/translations/he.json +7 -0
  1659. homeassistant/components/nordpool/translations/ja.json +26 -0
  1660. homeassistant/components/nordpool/translations/lt.json +26 -0
  1661. homeassistant/components/nordpool/translations/mk.json +12 -1
  1662. homeassistant/components/nordpool/translations/nl.json +9 -0
  1663. homeassistant/components/nordpool/translations/pt.json +26 -0
  1664. homeassistant/components/nordpool/translations/ru.json +21 -0
  1665. homeassistant/components/nordpool/translations/sk.json +26 -0
  1666. homeassistant/components/nordpool/translations/sv.json +26 -0
  1667. homeassistant/components/nordpool/translations/zh-Hans.json +26 -0
  1668. homeassistant/components/nordpool/translations/zh-Hant.json +26 -0
  1669. homeassistant/components/notify/translations/ga.json +11 -0
  1670. homeassistant/components/number/__init__.py +4 -1
  1671. homeassistant/components/number/const.py +10 -0
  1672. homeassistant/components/number/icons.json +3 -0
  1673. homeassistant/components/number/strings.json +3 -0
  1674. homeassistant/components/number/translations/cs.json +3 -0
  1675. homeassistant/components/number/translations/de.json +3 -0
  1676. homeassistant/components/number/translations/el.json +3 -0
  1677. homeassistant/components/number/translations/en-GB.json +3 -0
  1678. homeassistant/components/number/translations/en.json +3 -0
  1679. homeassistant/components/number/translations/es.json +3 -0
  1680. homeassistant/components/number/translations/et.json +3 -0
  1681. homeassistant/components/number/translations/fr.json +3 -0
  1682. homeassistant/components/number/translations/ga.json +3 -0
  1683. homeassistant/components/number/translations/he.json +3 -0
  1684. homeassistant/components/number/translations/lt.json +3 -0
  1685. homeassistant/components/number/translations/nl.json +6 -0
  1686. homeassistant/components/number/translations/pt.json +3 -0
  1687. homeassistant/components/number/translations/ru.json +3 -0
  1688. homeassistant/components/number/translations/sk.json +3 -0
  1689. homeassistant/components/number/translations/sv.json +3 -0
  1690. homeassistant/components/number/translations/zh-Hans.json +3 -0
  1691. homeassistant/components/number/translations/zh-Hant.json +3 -0
  1692. homeassistant/components/nut/__init__.py +0 -6
  1693. homeassistant/components/nut/translations/es.json +6 -6
  1694. homeassistant/components/nut/translations/it.json +1 -1
  1695. homeassistant/components/nzbget/strings.json +2 -2
  1696. homeassistant/components/octoprint/manifest.json +1 -1
  1697. homeassistant/components/octoprint/sensor.py +61 -1
  1698. homeassistant/components/ollama/__init__.py +36 -1
  1699. homeassistant/components/ollama/ai_task.py +80 -0
  1700. homeassistant/components/ollama/config_flow.py +52 -28
  1701. homeassistant/components/ollama/const.py +8 -1
  1702. homeassistant/components/ollama/conversation.py +3 -28
  1703. homeassistant/components/ollama/entity.py +26 -1
  1704. homeassistant/components/ollama/strings.json +44 -1
  1705. homeassistant/components/ollama/translations/bg.json +14 -0
  1706. homeassistant/components/ollama/translations/ca.json +13 -0
  1707. homeassistant/components/ollama/translations/cs.json +43 -0
  1708. homeassistant/components/ollama/translations/de.json +43 -0
  1709. homeassistant/components/ollama/translations/el.json +43 -0
  1710. homeassistant/components/ollama/translations/en-GB.json +43 -0
  1711. homeassistant/components/ollama/translations/en.json +43 -0
  1712. homeassistant/components/ollama/translations/es.json +43 -0
  1713. homeassistant/components/ollama/translations/et.json +43 -0
  1714. homeassistant/components/ollama/translations/fr.json +43 -0
  1715. homeassistant/components/ollama/translations/ga.json +41 -0
  1716. homeassistant/components/ollama/translations/he.json +15 -0
  1717. homeassistant/components/ollama/translations/ja.json +37 -0
  1718. homeassistant/components/ollama/translations/lt.json +38 -0
  1719. homeassistant/components/ollama/translations/mk.json +14 -0
  1720. homeassistant/components/ollama/translations/nl.json +23 -0
  1721. homeassistant/components/ollama/translations/pt.json +37 -0
  1722. homeassistant/components/ollama/translations/ru.json +36 -0
  1723. homeassistant/components/ollama/translations/sk.json +43 -0
  1724. homeassistant/components/ollama/translations/sv.json +25 -0
  1725. homeassistant/components/ollama/translations/zh-Hans.json +43 -0
  1726. homeassistant/components/ollama/translations/zh-Hant.json +43 -0
  1727. homeassistant/components/onboarding/views.py +1 -1
  1728. homeassistant/components/onewire/__init__.py +0 -10
  1729. homeassistant/components/onewire/config_flow.py +6 -2
  1730. homeassistant/components/onkyo/__init__.py +15 -17
  1731. homeassistant/components/onkyo/config_flow.py +33 -20
  1732. homeassistant/components/onkyo/const.py +28 -206
  1733. homeassistant/components/onkyo/manifest.json +4 -2
  1734. homeassistant/components/onkyo/media_player.py +201 -302
  1735. homeassistant/components/onkyo/quality_scale.yaml +6 -12
  1736. homeassistant/components/onkyo/receiver.py +107 -107
  1737. homeassistant/components/onkyo/services.py +4 -14
  1738. homeassistant/components/onkyo/util.py +8 -0
  1739. homeassistant/components/onvif/__init__.py +57 -48
  1740. homeassistant/components/onvif/manifest.json +1 -1
  1741. homeassistant/components/onvif/translations/es.json +1 -1
  1742. homeassistant/components/open_router/__init__.py +58 -0
  1743. homeassistant/components/open_router/ai_task.py +75 -0
  1744. homeassistant/components/open_router/config_flow.py +200 -0
  1745. homeassistant/components/open_router/const.py +17 -0
  1746. homeassistant/components/open_router/conversation.py +69 -0
  1747. homeassistant/components/open_router/entity.py +249 -0
  1748. homeassistant/components/open_router/manifest.json +13 -0
  1749. homeassistant/components/open_router/quality_scale.yaml +88 -0
  1750. homeassistant/components/open_router/strings.json +64 -0
  1751. homeassistant/components/open_router/translations/bg.json +47 -0
  1752. homeassistant/components/open_router/translations/ca.json +29 -0
  1753. homeassistant/components/open_router/translations/cs.json +64 -0
  1754. homeassistant/components/open_router/translations/de.json +64 -0
  1755. homeassistant/components/open_router/translations/el.json +60 -0
  1756. homeassistant/components/open_router/translations/en-GB.json +43 -0
  1757. homeassistant/components/open_router/translations/en.json +64 -0
  1758. homeassistant/components/open_router/translations/es.json +64 -0
  1759. homeassistant/components/open_router/translations/et.json +43 -0
  1760. homeassistant/components/open_router/translations/fr.json +64 -0
  1761. homeassistant/components/open_router/translations/ga.json +45 -0
  1762. homeassistant/components/open_router/translations/he.json +30 -0
  1763. homeassistant/components/open_router/translations/lt.json +37 -0
  1764. homeassistant/components/open_router/translations/mk.json +42 -0
  1765. homeassistant/components/open_router/translations/nl.json +47 -0
  1766. homeassistant/components/open_router/translations/ru.json +43 -0
  1767. homeassistant/components/open_router/translations/sk.json +60 -0
  1768. homeassistant/components/open_router/translations/sv.json +37 -0
  1769. homeassistant/components/open_router/translations/zh-Hans.json +60 -0
  1770. homeassistant/components/open_router/translations/zh-Hant.json +60 -0
  1771. homeassistant/components/openai_conversation/__init__.py +51 -62
  1772. homeassistant/components/openai_conversation/ai_task.py +80 -0
  1773. homeassistant/components/openai_conversation/config_flow.py +60 -49
  1774. homeassistant/components/openai_conversation/const.py +22 -8
  1775. homeassistant/components/openai_conversation/conversation.py +10 -322
  1776. homeassistant/components/openai_conversation/entity.py +468 -0
  1777. homeassistant/components/openai_conversation/manifest.json +2 -2
  1778. homeassistant/components/openai_conversation/strings.json +49 -1
  1779. homeassistant/components/openai_conversation/translations/bg.json +19 -0
  1780. homeassistant/components/openai_conversation/translations/ca.json +17 -0
  1781. homeassistant/components/openai_conversation/translations/cs.json +48 -0
  1782. homeassistant/components/openai_conversation/translations/de.json +48 -0
  1783. homeassistant/components/openai_conversation/translations/el.json +48 -0
  1784. homeassistant/components/openai_conversation/translations/en-GB.json +48 -0
  1785. homeassistant/components/openai_conversation/translations/en.json +48 -0
  1786. homeassistant/components/openai_conversation/translations/es.json +48 -0
  1787. homeassistant/components/openai_conversation/translations/et.json +48 -0
  1788. homeassistant/components/openai_conversation/translations/fr.json +48 -0
  1789. homeassistant/components/openai_conversation/translations/ga.json +51 -0
  1790. homeassistant/components/openai_conversation/translations/he.json +18 -0
  1791. homeassistant/components/openai_conversation/translations/it.json +46 -0
  1792. homeassistant/components/openai_conversation/translations/lt.json +48 -0
  1793. homeassistant/components/openai_conversation/translations/mk.json +48 -0
  1794. homeassistant/components/openai_conversation/translations/nl.json +18 -0
  1795. homeassistant/components/openai_conversation/translations/pt.json +46 -0
  1796. homeassistant/components/openai_conversation/translations/ru.json +45 -0
  1797. homeassistant/components/openai_conversation/translations/sk.json +48 -0
  1798. homeassistant/components/openai_conversation/translations/sv.json +29 -0
  1799. homeassistant/components/openai_conversation/translations/zh-Hans.json +48 -0
  1800. homeassistant/components/openai_conversation/translations/zh-Hant.json +48 -0
  1801. homeassistant/components/opentherm_gw/translations/ga.json +16 -0
  1802. homeassistant/components/openweathermap/config_flow.py +4 -0
  1803. homeassistant/components/openweathermap/strings.json +1 -1
  1804. homeassistant/components/openweathermap/translations/bg.json +1 -2
  1805. homeassistant/components/openweathermap/translations/ca.json +1 -2
  1806. homeassistant/components/openweathermap/translations/cs.json +1 -1
  1807. homeassistant/components/openweathermap/translations/de.json +1 -1
  1808. homeassistant/components/openweathermap/translations/el.json +1 -2
  1809. homeassistant/components/openweathermap/translations/en-GB.json +1 -1
  1810. homeassistant/components/openweathermap/translations/en.json +1 -1
  1811. homeassistant/components/openweathermap/translations/es.json +1 -1
  1812. homeassistant/components/openweathermap/translations/et.json +1 -1
  1813. homeassistant/components/openweathermap/translations/fi.json +1 -2
  1814. homeassistant/components/openweathermap/translations/fr.json +1 -2
  1815. homeassistant/components/openweathermap/translations/ga.json +16 -0
  1816. homeassistant/components/openweathermap/translations/gsw.json +1 -2
  1817. homeassistant/components/openweathermap/translations/he.json +1 -2
  1818. homeassistant/components/openweathermap/translations/hu.json +1 -2
  1819. homeassistant/components/openweathermap/translations/id.json +1 -2
  1820. homeassistant/components/openweathermap/translations/it.json +1 -2
  1821. homeassistant/components/openweathermap/translations/ja.json +1 -2
  1822. homeassistant/components/openweathermap/translations/ko.json +1 -2
  1823. homeassistant/components/openweathermap/translations/lt.json +1 -2
  1824. homeassistant/components/openweathermap/translations/nb.json +1 -2
  1825. homeassistant/components/openweathermap/translations/nl.json +1 -2
  1826. homeassistant/components/openweathermap/translations/pl.json +1 -2
  1827. homeassistant/components/openweathermap/translations/pt-BR.json +1 -2
  1828. homeassistant/components/openweathermap/translations/pt.json +1 -2
  1829. homeassistant/components/openweathermap/translations/ro.json +1 -2
  1830. homeassistant/components/openweathermap/translations/ru.json +1 -2
  1831. homeassistant/components/openweathermap/translations/sk.json +1 -1
  1832. homeassistant/components/openweathermap/translations/sv.json +1 -2
  1833. homeassistant/components/openweathermap/translations/tr.json +1 -2
  1834. homeassistant/components/openweathermap/translations/uk.json +1 -2
  1835. homeassistant/components/openweathermap/translations/vi.json +1 -2
  1836. homeassistant/components/openweathermap/translations/zh-Hans.json +1 -1
  1837. homeassistant/components/openweathermap/translations/zh-Hant.json +1 -1
  1838. homeassistant/components/opower/config_flow.py +9 -2
  1839. homeassistant/components/opower/sensor.py +22 -21
  1840. homeassistant/components/opower/strings.json +69 -0
  1841. homeassistant/components/opower/translations/bg.json +61 -0
  1842. homeassistant/components/opower/translations/ca.json +6 -0
  1843. homeassistant/components/opower/translations/cs.json +70 -1
  1844. homeassistant/components/opower/translations/de.json +70 -1
  1845. homeassistant/components/opower/translations/el.json +70 -1
  1846. homeassistant/components/opower/translations/en-GB.json +70 -1
  1847. homeassistant/components/opower/translations/en.json +70 -1
  1848. homeassistant/components/opower/translations/es.json +70 -1
  1849. homeassistant/components/opower/translations/et.json +70 -1
  1850. homeassistant/components/opower/translations/ga.json +77 -0
  1851. homeassistant/components/opower/translations/he.json +6 -0
  1852. homeassistant/components/opower/translations/ja.json +73 -0
  1853. homeassistant/components/opower/translations/lt.json +70 -1
  1854. homeassistant/components/opower/translations/nl.json +6 -0
  1855. homeassistant/components/opower/translations/pt.json +70 -1
  1856. homeassistant/components/opower/translations/ru.json +14 -1
  1857. homeassistant/components/opower/translations/sk.json +70 -1
  1858. homeassistant/components/opower/translations/sv.json +16 -1
  1859. homeassistant/components/opower/translations/zh-Hans.json +70 -1
  1860. homeassistant/components/opower/translations/zh-Hant.json +70 -1
  1861. homeassistant/components/osoenergy/icons.json +3 -0
  1862. homeassistant/components/osoenergy/manifest.json +1 -1
  1863. homeassistant/components/osoenergy/services.yaml +14 -0
  1864. homeassistant/components/osoenergy/strings.json +10 -0
  1865. homeassistant/components/osoenergy/translations/bg.json +7 -0
  1866. homeassistant/components/osoenergy/translations/cs.json +10 -0
  1867. homeassistant/components/osoenergy/translations/de.json +11 -1
  1868. homeassistant/components/osoenergy/translations/en.json +10 -0
  1869. homeassistant/components/osoenergy/translations/es.json +9 -0
  1870. homeassistant/components/osoenergy/translations/et.json +10 -0
  1871. homeassistant/components/osoenergy/translations/ga.json +21 -0
  1872. homeassistant/components/osoenergy/translations/it.json +2 -2
  1873. homeassistant/components/osoenergy/translations/sk.json +9 -0
  1874. homeassistant/components/osoenergy/translations/zh-Hans.json +9 -0
  1875. homeassistant/components/osoenergy/translations/zh-Hant.json +9 -0
  1876. homeassistant/components/osoenergy/water_heater.py +34 -1
  1877. homeassistant/components/overkiz/strings.json +1 -1
  1878. homeassistant/components/palazzetti/translations/it.json +1 -1
  1879. homeassistant/components/palazzetti/translations/nl.json +1 -0
  1880. homeassistant/components/paperless_ngx/__init__.py +1 -1
  1881. homeassistant/components/pegel_online/__init__.py +6 -2
  1882. homeassistant/components/pegel_online/manifest.json +1 -0
  1883. homeassistant/components/pegel_online/quality_scale.yaml +87 -0
  1884. homeassistant/components/pegel_online/sensor.py +3 -0
  1885. homeassistant/components/pegel_online/strings.json +8 -2
  1886. homeassistant/components/pegel_online/translations/cs.json +7 -1
  1887. homeassistant/components/pegel_online/translations/de.json +7 -1
  1888. homeassistant/components/pegel_online/translations/el.json +7 -1
  1889. homeassistant/components/pegel_online/translations/en-GB.json +7 -1
  1890. homeassistant/components/pegel_online/translations/en.json +7 -1
  1891. homeassistant/components/pegel_online/translations/es.json +7 -1
  1892. homeassistant/components/pegel_online/translations/et.json +7 -1
  1893. homeassistant/components/pegel_online/translations/fr.json +1 -2
  1894. homeassistant/components/pegel_online/translations/ga.json +15 -0
  1895. homeassistant/components/pegel_online/translations/hu.json +7 -1
  1896. homeassistant/components/pegel_online/translations/it.json +7 -0
  1897. homeassistant/components/pegel_online/translations/ja.json +7 -0
  1898. homeassistant/components/pegel_online/translations/lt.json +7 -1
  1899. homeassistant/components/pegel_online/translations/mk.json +1 -2
  1900. homeassistant/components/pegel_online/translations/nl.json +7 -0
  1901. homeassistant/components/pegel_online/translations/pt.json +7 -1
  1902. homeassistant/components/pegel_online/translations/ru.json +7 -1
  1903. homeassistant/components/pegel_online/translations/sk.json +7 -1
  1904. homeassistant/components/pegel_online/translations/sv.json +7 -1
  1905. homeassistant/components/pegel_online/translations/zh-Hans.json +7 -1
  1906. homeassistant/components/pegel_online/translations/zh-Hant.json +7 -1
  1907. homeassistant/components/philips_js/config_flow.py +83 -35
  1908. homeassistant/components/philips_js/manifest.json +2 -1
  1909. homeassistant/components/philips_js/strings.json +5 -0
  1910. homeassistant/components/philips_js/translations/bg.json +1 -0
  1911. homeassistant/components/philips_js/translations/ca.json +1 -0
  1912. homeassistant/components/philips_js/translations/cs.json +5 -0
  1913. homeassistant/components/philips_js/translations/de.json +5 -0
  1914. homeassistant/components/philips_js/translations/el.json +5 -0
  1915. homeassistant/components/philips_js/translations/en-GB.json +5 -0
  1916. homeassistant/components/philips_js/translations/en.json +5 -0
  1917. homeassistant/components/philips_js/translations/es.json +5 -0
  1918. homeassistant/components/philips_js/translations/et.json +5 -0
  1919. homeassistant/components/philips_js/translations/ga.json +7 -0
  1920. homeassistant/components/philips_js/translations/he.json +1 -0
  1921. homeassistant/components/philips_js/translations/ja.json +5 -0
  1922. homeassistant/components/philips_js/translations/lt.json +5 -0
  1923. homeassistant/components/philips_js/translations/nl.json +1 -0
  1924. homeassistant/components/philips_js/translations/pt.json +5 -0
  1925. homeassistant/components/philips_js/translations/ru.json +5 -0
  1926. homeassistant/components/philips_js/translations/sk.json +5 -0
  1927. homeassistant/components/philips_js/translations/sv.json +5 -0
  1928. homeassistant/components/philips_js/translations/zh-Hans.json +5 -0
  1929. homeassistant/components/philips_js/translations/zh-Hant.json +5 -0
  1930. homeassistant/components/pi_hole/__init__.py +123 -16
  1931. homeassistant/components/pi_hole/binary_sensor.py +1 -1
  1932. homeassistant/components/pi_hole/config_flow.py +48 -37
  1933. homeassistant/components/pi_hole/const.py +7 -0
  1934. homeassistant/components/pi_hole/entity.py +4 -1
  1935. homeassistant/components/pi_hole/icons.json +9 -0
  1936. homeassistant/components/pi_hole/manifest.json +1 -1
  1937. homeassistant/components/pi_hole/sensor.py +96 -10
  1938. homeassistant/components/pi_hole/strings.json +21 -6
  1939. homeassistant/components/pi_hole/switch.py +1 -1
  1940. homeassistant/components/pi_hole/translations/bg.json +7 -5
  1941. homeassistant/components/pi_hole/translations/ca.json +6 -5
  1942. homeassistant/components/pi_hole/translations/cs.json +18 -5
  1943. homeassistant/components/pi_hole/translations/da.json +0 -5
  1944. homeassistant/components/pi_hole/translations/de.json +18 -5
  1945. homeassistant/components/pi_hole/translations/el.json +18 -5
  1946. homeassistant/components/pi_hole/translations/en-GB.json +18 -5
  1947. homeassistant/components/pi_hole/translations/en.json +18 -5
  1948. homeassistant/components/pi_hole/translations/es.json +18 -5
  1949. homeassistant/components/pi_hole/translations/et.json +18 -5
  1950. homeassistant/components/pi_hole/translations/fi.json +0 -5
  1951. homeassistant/components/pi_hole/translations/fr.json +0 -5
  1952. homeassistant/components/pi_hole/translations/ga.json +15 -0
  1953. homeassistant/components/pi_hole/translations/he.json +18 -5
  1954. homeassistant/components/pi_hole/translations/hu.json +0 -5
  1955. homeassistant/components/pi_hole/translations/id.json +0 -5
  1956. homeassistant/components/pi_hole/translations/it.json +0 -5
  1957. homeassistant/components/pi_hole/translations/ja.json +18 -5
  1958. homeassistant/components/pi_hole/translations/ko.json +0 -5
  1959. homeassistant/components/pi_hole/translations/lt.json +18 -5
  1960. homeassistant/components/pi_hole/translations/mk.json +9 -0
  1961. homeassistant/components/pi_hole/translations/nb.json +0 -5
  1962. homeassistant/components/pi_hole/translations/nl.json +6 -5
  1963. homeassistant/components/pi_hole/translations/pl.json +0 -5
  1964. homeassistant/components/pi_hole/translations/pt-BR.json +0 -5
  1965. homeassistant/components/pi_hole/translations/pt.json +18 -5
  1966. homeassistant/components/pi_hole/translations/ro.json +0 -5
  1967. homeassistant/components/pi_hole/translations/ru.json +18 -5
  1968. homeassistant/components/pi_hole/translations/sk.json +18 -5
  1969. homeassistant/components/pi_hole/translations/sl.json +0 -5
  1970. homeassistant/components/pi_hole/translations/sv.json +9 -5
  1971. homeassistant/components/pi_hole/translations/tr.json +0 -5
  1972. homeassistant/components/pi_hole/translations/uk.json +0 -5
  1973. homeassistant/components/pi_hole/translations/vi.json +0 -5
  1974. homeassistant/components/pi_hole/translations/zh-Hans.json +18 -5
  1975. homeassistant/components/pi_hole/translations/zh-Hant.json +18 -5
  1976. homeassistant/components/pi_hole/update.py +15 -15
  1977. homeassistant/components/ping/__init__.py +0 -6
  1978. homeassistant/components/ping/config_flow.py +3 -3
  1979. homeassistant/components/playstation_network/__init__.py +44 -4
  1980. homeassistant/components/playstation_network/binary_sensor.py +76 -0
  1981. homeassistant/components/playstation_network/config_flow.py +106 -7
  1982. homeassistant/components/playstation_network/const.py +4 -2
  1983. homeassistant/components/playstation_network/coordinator.py +168 -13
  1984. homeassistant/components/playstation_network/diagnostics.py +15 -7
  1985. homeassistant/components/playstation_network/entity.py +54 -0
  1986. homeassistant/components/playstation_network/helpers.py +92 -37
  1987. homeassistant/components/playstation_network/icons.json +36 -0
  1988. homeassistant/components/playstation_network/image.py +154 -0
  1989. homeassistant/components/playstation_network/media_player.py +35 -11
  1990. homeassistant/components/playstation_network/notify.py +126 -0
  1991. homeassistant/components/playstation_network/quality_scale.yaml +1 -1
  1992. homeassistant/components/playstation_network/sensor.py +94 -40
  1993. homeassistant/components/playstation_network/strings.json +93 -2
  1994. homeassistant/components/playstation_network/translations/bg.json +30 -1
  1995. homeassistant/components/playstation_network/translations/ca.json +2 -1
  1996. homeassistant/components/playstation_network/translations/cs.json +91 -0
  1997. homeassistant/components/playstation_network/translations/de.json +91 -0
  1998. homeassistant/components/playstation_network/translations/el.json +44 -0
  1999. homeassistant/components/playstation_network/translations/en-GB.json +50 -0
  2000. homeassistant/components/playstation_network/translations/en.json +91 -0
  2001. homeassistant/components/playstation_network/translations/es.json +64 -0
  2002. homeassistant/components/playstation_network/translations/et.json +50 -0
  2003. homeassistant/components/playstation_network/translations/fr.json +13 -0
  2004. homeassistant/components/playstation_network/translations/ga.json +86 -0
  2005. homeassistant/components/playstation_network/translations/he.json +9 -1
  2006. homeassistant/components/playstation_network/translations/hu.json +11 -0
  2007. homeassistant/components/playstation_network/translations/id.json +2 -1
  2008. homeassistant/components/playstation_network/translations/it.json +14 -0
  2009. homeassistant/components/playstation_network/translations/ja.json +24 -0
  2010. homeassistant/components/playstation_network/translations/lt.json +28 -0
  2011. homeassistant/components/playstation_network/translations/mk.json +11 -0
  2012. homeassistant/components/playstation_network/translations/nl.json +16 -1
  2013. homeassistant/components/playstation_network/translations/pt.json +28 -0
  2014. homeassistant/components/playstation_network/translations/ru.json +33 -0
  2015. homeassistant/components/playstation_network/translations/sk.json +58 -0
  2016. homeassistant/components/playstation_network/translations/sl.json +28 -0
  2017. homeassistant/components/playstation_network/translations/sv.json +29 -1
  2018. homeassistant/components/playstation_network/translations/zh-Hans.json +75 -0
  2019. homeassistant/components/playstation_network/translations/zh-Hant.json +91 -0
  2020. homeassistant/components/plex/translations/nl.json +9 -0
  2021. homeassistant/components/plugwise/__init__.py +4 -4
  2022. homeassistant/components/plugwise/climate.py +3 -3
  2023. homeassistant/components/plugwise/config_flow.py +3 -3
  2024. homeassistant/components/plugwise/entity.py +1 -1
  2025. homeassistant/components/plugwise/manifest.json +1 -1
  2026. homeassistant/components/plugwise/select.py +2 -2
  2027. homeassistant/components/plugwise/translations/ga.json +5 -0
  2028. homeassistant/components/plugwise/translations/it.json +3 -3
  2029. homeassistant/components/proximity/__init__.py +0 -8
  2030. homeassistant/components/proximity/config_flow.py +3 -3
  2031. homeassistant/components/proximity/strings.json +12 -12
  2032. homeassistant/components/proxy/manifest.json +1 -1
  2033. homeassistant/components/ps4/media_player.py +2 -2
  2034. homeassistant/components/purpleair/__init__.py +0 -7
  2035. homeassistant/components/purpleair/config_flow.py +2 -2
  2036. homeassistant/components/purpleair/sensor.py +1 -1
  2037. homeassistant/components/pyload/config_flow.py +58 -0
  2038. homeassistant/components/pyload/strings.json +12 -0
  2039. homeassistant/components/pyload/translations/bg.json +6 -0
  2040. homeassistant/components/pyload/translations/ca.json +6 -0
  2041. homeassistant/components/pyload/translations/cs.json +12 -0
  2042. homeassistant/components/pyload/translations/de.json +12 -0
  2043. homeassistant/components/pyload/translations/el.json +12 -0
  2044. homeassistant/components/pyload/translations/en-GB.json +12 -0
  2045. homeassistant/components/pyload/translations/en.json +12 -0
  2046. homeassistant/components/pyload/translations/es.json +12 -0
  2047. homeassistant/components/pyload/translations/et.json +12 -0
  2048. homeassistant/components/pyload/translations/fr.json +12 -0
  2049. homeassistant/components/pyload/translations/ga.json +11 -0
  2050. homeassistant/components/pyload/translations/he.json +6 -0
  2051. homeassistant/components/pyload/translations/lt.json +12 -0
  2052. homeassistant/components/pyload/translations/nl.json +10 -0
  2053. homeassistant/components/pyload/translations/pt.json +12 -0
  2054. homeassistant/components/pyload/translations/ru.json +12 -0
  2055. homeassistant/components/pyload/translations/sk.json +12 -0
  2056. homeassistant/components/pyload/translations/sv.json +10 -0
  2057. homeassistant/components/pyload/translations/zh-Hans.json +12 -0
  2058. homeassistant/components/pyload/translations/zh-Hant.json +12 -0
  2059. homeassistant/components/qbus/entity.py +2 -5
  2060. homeassistant/components/qbus/manifest.json +1 -1
  2061. homeassistant/components/qnap/strings.json +1 -1
  2062. homeassistant/components/qrcode/manifest.json +1 -1
  2063. homeassistant/components/rachio/translations/es.json +1 -1
  2064. homeassistant/components/rainbird/strings.json +2 -2
  2065. homeassistant/components/rainbird/translations/es.json +3 -3
  2066. homeassistant/components/rainbird/translations/fr.json +3 -0
  2067. homeassistant/components/rainmachine/strings.json +11 -11
  2068. homeassistant/components/rainmachine/translations/es.json +1 -1
  2069. homeassistant/components/random/translations/da.json +7 -0
  2070. homeassistant/components/random/translations/nl.json +1 -0
  2071. homeassistant/components/recorder/pool.py +7 -0
  2072. homeassistant/components/remote/translations/es.json +1 -1
  2073. homeassistant/components/remote/translations/it.json +1 -1
  2074. homeassistant/components/remote_calendar/calendar.py +1 -1
  2075. homeassistant/components/remote_calendar/manifest.json +1 -1
  2076. homeassistant/components/renault/__init__.py +2 -2
  2077. homeassistant/components/renault/services.py +3 -2
  2078. homeassistant/components/renson/translations/it.json +4 -4
  2079. homeassistant/components/reolink/__init__.py +0 -11
  2080. homeassistant/components/reolink/config_flow.py +2 -2
  2081. homeassistant/components/reolink/diagnostics.py +3 -1
  2082. homeassistant/components/reolink/entity.py +1 -1
  2083. homeassistant/components/reolink/icons.json +21 -1
  2084. homeassistant/components/reolink/manifest.json +1 -1
  2085. homeassistant/components/reolink/number.py +33 -1
  2086. homeassistant/components/reolink/select.py +25 -0
  2087. homeassistant/components/reolink/sensor.py +22 -3
  2088. homeassistant/components/reolink/strings.json +15 -0
  2089. homeassistant/components/reolink/switch.py +9 -0
  2090. homeassistant/components/reolink/translations/cs.json +15 -0
  2091. homeassistant/components/reolink/translations/de.json +15 -0
  2092. homeassistant/components/reolink/translations/el.json +3 -0
  2093. homeassistant/components/reolink/translations/en-GB.json +15 -0
  2094. homeassistant/components/reolink/translations/en.json +15 -0
  2095. homeassistant/components/reolink/translations/es.json +25 -10
  2096. homeassistant/components/reolink/translations/et.json +15 -0
  2097. homeassistant/components/reolink/translations/ga.json +34 -1
  2098. homeassistant/components/reolink/translations/it.json +10 -10
  2099. homeassistant/components/reolink/translations/mk.json +5 -0
  2100. homeassistant/components/reolink/translations/sk.json +15 -0
  2101. homeassistant/components/reolink/translations/zh-Hans.json +15 -0
  2102. homeassistant/components/reolink/translations/zh-Hant.json +15 -0
  2103. homeassistant/components/rest/sensor.py +1 -15
  2104. homeassistant/components/rest_command/__init__.py +5 -1
  2105. homeassistant/components/rflink/light.py +2 -2
  2106. homeassistant/components/rfxtrx/translations/es.json +8 -8
  2107. homeassistant/components/rfxtrx/translations/it.json +1 -1
  2108. homeassistant/components/ring/manifest.json +1 -0
  2109. homeassistant/components/ring/quality_scale.yaml +71 -0
  2110. homeassistant/components/risco/alarm_control_panel.py +7 -3
  2111. homeassistant/components/risco/strings.json +6 -6
  2112. homeassistant/components/risco/translations/cs.json +8 -0
  2113. homeassistant/components/risco/translations/fr.json +6 -0
  2114. homeassistant/components/roborock/__init__.py +0 -8
  2115. homeassistant/components/roborock/config_flow.py +4 -9
  2116. homeassistant/components/roborock/translations/ga.json +11 -1
  2117. homeassistant/components/roborock/translations/it.json +2 -2
  2118. homeassistant/components/roborock/translations/nl.json +1 -0
  2119. homeassistant/components/roku/__init__.py +0 -7
  2120. homeassistant/components/roku/config_flow.py +2 -2
  2121. homeassistant/components/roku/media_player.py +4 -4
  2122. homeassistant/components/roomba/translations/es.json +1 -1
  2123. homeassistant/components/roon/event.py +4 -3
  2124. homeassistant/components/roon/media_player.py +4 -3
  2125. homeassistant/components/russound_rio/const.py +4 -0
  2126. homeassistant/components/russound_rio/manifest.json +1 -1
  2127. homeassistant/components/russound_rio/media_player.py +51 -2
  2128. homeassistant/components/russound_rio/strings.json +9 -0
  2129. homeassistant/components/russound_rio/translations/cs.json +9 -0
  2130. homeassistant/components/russound_rio/translations/de.json +9 -0
  2131. homeassistant/components/russound_rio/translations/el.json +9 -0
  2132. homeassistant/components/russound_rio/translations/en-GB.json +9 -0
  2133. homeassistant/components/russound_rio/translations/en.json +9 -0
  2134. homeassistant/components/russound_rio/translations/es.json +9 -0
  2135. homeassistant/components/russound_rio/translations/et.json +9 -0
  2136. homeassistant/components/russound_rio/translations/ga.json +9 -0
  2137. homeassistant/components/russound_rio/translations/ja.json +9 -0
  2138. homeassistant/components/russound_rio/translations/lt.json +9 -0
  2139. homeassistant/components/russound_rio/translations/mk.json +13 -1
  2140. homeassistant/components/russound_rio/translations/pt.json +9 -0
  2141. homeassistant/components/russound_rio/translations/sk.json +9 -0
  2142. homeassistant/components/russound_rio/translations/zh-Hans.json +9 -0
  2143. homeassistant/components/russound_rio/translations/zh-Hant.json +9 -0
  2144. homeassistant/components/samsungtv/strings.json +1 -1
  2145. homeassistant/components/schedule/translations/it.json +1 -1
  2146. homeassistant/components/schlage/manifest.json +1 -1
  2147. homeassistant/components/scrape/manifest.json +1 -1
  2148. homeassistant/components/scrape/sensor.py +2 -13
  2149. homeassistant/components/screenlogic/manifest.json +1 -1
  2150. homeassistant/components/screenlogic/translations/es.json +3 -3
  2151. homeassistant/components/script/translations/it.json +1 -1
  2152. homeassistant/components/sensibo/translations/it.json +18 -18
  2153. homeassistant/components/sensor/__init__.py +3 -1
  2154. homeassistant/components/sensor/const.py +14 -0
  2155. homeassistant/components/sensor/device_condition.py +3 -0
  2156. homeassistant/components/sensor/device_trigger.py +3 -0
  2157. homeassistant/components/sensor/icons.json +3 -0
  2158. homeassistant/components/sensor/strings.json +5 -0
  2159. homeassistant/components/sensor/translations/cs.json +5 -0
  2160. homeassistant/components/sensor/translations/de.json +5 -0
  2161. homeassistant/components/sensor/translations/el.json +5 -0
  2162. homeassistant/components/sensor/translations/en-GB.json +5 -0
  2163. homeassistant/components/sensor/translations/en.json +5 -0
  2164. homeassistant/components/sensor/translations/es.json +5 -0
  2165. homeassistant/components/sensor/translations/et.json +5 -0
  2166. homeassistant/components/sensor/translations/fr.json +5 -0
  2167. homeassistant/components/sensor/translations/ga.json +5 -0
  2168. homeassistant/components/sensor/translations/he.json +5 -0
  2169. homeassistant/components/sensor/translations/it.json +1 -1
  2170. homeassistant/components/sensor/translations/lt.json +5 -0
  2171. homeassistant/components/sensor/translations/nl.json +6 -0
  2172. homeassistant/components/sensor/translations/pt.json +5 -0
  2173. homeassistant/components/sensor/translations/ru.json +5 -0
  2174. homeassistant/components/sensor/translations/sk.json +5 -0
  2175. homeassistant/components/sensor/translations/sv.json +4 -0
  2176. homeassistant/components/sensor/translations/zh-Hans.json +5 -0
  2177. homeassistant/components/sensor/translations/zh-Hant.json +5 -0
  2178. homeassistant/components/seven_segments/manifest.json +1 -1
  2179. homeassistant/components/sfr_box/manifest.json +1 -1
  2180. homeassistant/components/sfr_box/strings.json +1 -1
  2181. homeassistant/components/shelly/__init__.py +1 -1
  2182. homeassistant/components/shelly/button.py +4 -21
  2183. homeassistant/components/shelly/climate.py +2 -8
  2184. homeassistant/components/shelly/config_flow.py +2 -2
  2185. homeassistant/components/shelly/coordinator.py +15 -5
  2186. homeassistant/components/shelly/entity.py +41 -32
  2187. homeassistant/components/shelly/event.py +2 -8
  2188. homeassistant/components/shelly/manifest.json +1 -1
  2189. homeassistant/components/shelly/sensor.py +3 -7
  2190. homeassistant/components/shelly/strings.json +1 -1
  2191. homeassistant/components/shelly/translations/cs.json +1 -1
  2192. homeassistant/components/shelly/translations/da.json +3 -1
  2193. homeassistant/components/shelly/translations/de.json +1 -1
  2194. homeassistant/components/shelly/translations/el.json +2 -1
  2195. homeassistant/components/shelly/translations/en-GB.json +1 -1
  2196. homeassistant/components/shelly/translations/en.json +1 -1
  2197. homeassistant/components/shelly/translations/es.json +1 -1
  2198. homeassistant/components/shelly/translations/et.json +1 -1
  2199. homeassistant/components/shelly/translations/fr.json +1 -1
  2200. homeassistant/components/shelly/translations/ga.json +2 -1
  2201. homeassistant/components/shelly/translations/hu.json +1 -2
  2202. homeassistant/components/shelly/translations/lt.json +1 -2
  2203. homeassistant/components/shelly/translations/mk.json +5 -0
  2204. homeassistant/components/shelly/translations/pl.json +1 -1
  2205. homeassistant/components/shelly/translations/pt.json +1 -2
  2206. homeassistant/components/shelly/translations/ru.json +1 -1
  2207. homeassistant/components/shelly/translations/sk.json +1 -1
  2208. homeassistant/components/shelly/translations/sv.json +1 -2
  2209. homeassistant/components/shelly/translations/zh-Hans.json +1 -1
  2210. homeassistant/components/shelly/translations/zh-Hant.json +1 -1
  2211. homeassistant/components/shelly/utils.py +16 -1
  2212. homeassistant/components/sighthound/manifest.json +1 -1
  2213. homeassistant/components/simplisafe/translations/es.json +4 -4
  2214. homeassistant/components/siren/translations/it.json +1 -1
  2215. homeassistant/components/sleepiq/const.py +4 -0
  2216. homeassistant/components/sleepiq/manifest.json +1 -1
  2217. homeassistant/components/sleepiq/number.py +53 -1
  2218. homeassistant/components/sleepiq/select.py +61 -1
  2219. homeassistant/components/sleepiq/strings.json +11 -0
  2220. homeassistant/components/sleepiq/translations/bg.json +9 -0
  2221. homeassistant/components/sleepiq/translations/cs.json +11 -0
  2222. homeassistant/components/sleepiq/translations/de.json +11 -0
  2223. homeassistant/components/sleepiq/translations/el.json +11 -0
  2224. homeassistant/components/sleepiq/translations/en-GB.json +11 -0
  2225. homeassistant/components/sleepiq/translations/en.json +11 -0
  2226. homeassistant/components/sleepiq/translations/es.json +11 -0
  2227. homeassistant/components/sleepiq/translations/et.json +11 -0
  2228. homeassistant/components/sleepiq/translations/ga.json +10 -0
  2229. homeassistant/components/sleepiq/translations/he.json +5 -0
  2230. homeassistant/components/sleepiq/translations/it.json +1 -1
  2231. homeassistant/components/sleepiq/translations/mk.json +16 -1
  2232. homeassistant/components/sleepiq/translations/nl.json +5 -0
  2233. homeassistant/components/sleepiq/translations/ru.json +11 -0
  2234. homeassistant/components/sleepiq/translations/sk.json +11 -0
  2235. homeassistant/components/sleepiq/translations/zh-Hans.json +11 -0
  2236. homeassistant/components/sleepiq/translations/zh-Hant.json +11 -0
  2237. homeassistant/components/slide_local/__init__.py +0 -7
  2238. homeassistant/components/slide_local/config_flow.py +6 -2
  2239. homeassistant/components/smarla/manifest.json +1 -1
  2240. homeassistant/components/smartthings/__init__.py +1 -0
  2241. homeassistant/components/smartthings/translations/es.json +2 -2
  2242. homeassistant/components/smartthings/translations/it.json +7 -7
  2243. homeassistant/components/smartthings/vacuum.py +95 -0
  2244. homeassistant/components/smarttub/binary_sensor.py +29 -3
  2245. homeassistant/components/smarttub/const.py +1 -0
  2246. homeassistant/components/smarttub/controller.py +2 -0
  2247. homeassistant/components/smarttub/entity.py +30 -4
  2248. homeassistant/components/smarttub/manifest.json +1 -1
  2249. homeassistant/components/smarttub/sensor.py +10 -10
  2250. homeassistant/components/smhi/__init__.py +1 -1
  2251. homeassistant/components/smhi/coordinator.py +10 -0
  2252. homeassistant/components/smhi/entity.py +7 -1
  2253. homeassistant/components/smhi/icons.json +27 -0
  2254. homeassistant/components/smhi/sensor.py +139 -0
  2255. homeassistant/components/smhi/strings.json +34 -0
  2256. homeassistant/components/smhi/translations/bg.json +33 -0
  2257. homeassistant/components/smhi/translations/cs.json +34 -0
  2258. homeassistant/components/smhi/translations/de.json +34 -0
  2259. homeassistant/components/smhi/translations/el.json +34 -0
  2260. homeassistant/components/smhi/translations/en-GB.json +34 -0
  2261. homeassistant/components/smhi/translations/en.json +34 -0
  2262. homeassistant/components/smhi/translations/es.json +34 -0
  2263. homeassistant/components/smhi/translations/et.json +34 -0
  2264. homeassistant/components/smhi/translations/ga.json +34 -0
  2265. homeassistant/components/smhi/translations/lt.json +34 -0
  2266. homeassistant/components/smhi/translations/mk.json +34 -1
  2267. homeassistant/components/smhi/translations/nl.json +11 -0
  2268. homeassistant/components/smhi/translations/sk.json +34 -0
  2269. homeassistant/components/smhi/translations/sv.json +34 -0
  2270. homeassistant/components/smhi/translations/zh-Hans.json +34 -0
  2271. homeassistant/components/smhi/translations/zh-Hant.json +34 -0
  2272. homeassistant/components/smhi/weather.py +19 -5
  2273. homeassistant/components/snapcast/media_player.py +75 -1
  2274. homeassistant/components/snmp/device_tracker.py +37 -23
  2275. homeassistant/components/snmp/manifest.json +1 -1
  2276. homeassistant/components/snmp/sensor.py +7 -7
  2277. homeassistant/components/snmp/switch.py +15 -8
  2278. homeassistant/components/snmp/util.py +10 -10
  2279. homeassistant/components/somfy_mylink/__init__.py +1 -16
  2280. homeassistant/components/somfy_mylink/config_flow.py +2 -2
  2281. homeassistant/components/sonarr/__init__.py +0 -6
  2282. homeassistant/components/sonarr/config_flow.py +2 -2
  2283. homeassistant/components/sonos/favorites.py +1 -1
  2284. homeassistant/components/sonos/sensor.py +65 -3
  2285. homeassistant/components/sonos/strings.json +8 -0
  2286. homeassistant/components/sonos/translations/bg.json +9 -0
  2287. homeassistant/components/sonos/translations/cs.json +8 -0
  2288. homeassistant/components/sonos/translations/de.json +8 -0
  2289. homeassistant/components/sonos/translations/el.json +8 -0
  2290. homeassistant/components/sonos/translations/en-GB.json +8 -0
  2291. homeassistant/components/sonos/translations/en.json +8 -0
  2292. homeassistant/components/sonos/translations/es.json +8 -0
  2293. homeassistant/components/sonos/translations/et.json +8 -0
  2294. homeassistant/components/sonos/translations/fr.json +8 -0
  2295. homeassistant/components/sonos/translations/ga.json +12 -0
  2296. homeassistant/components/sonos/translations/he.json +11 -0
  2297. homeassistant/components/sonos/translations/hu.json +8 -0
  2298. homeassistant/components/sonos/translations/it.json +8 -0
  2299. homeassistant/components/sonos/translations/ja.json +8 -0
  2300. homeassistant/components/sonos/translations/lt.json +8 -0
  2301. homeassistant/components/sonos/translations/mk.json +12 -0
  2302. homeassistant/components/sonos/translations/nl.json +6 -0
  2303. homeassistant/components/sonos/translations/pt.json +8 -0
  2304. homeassistant/components/sonos/translations/ru.json +8 -0
  2305. homeassistant/components/sonos/translations/sk.json +8 -0
  2306. homeassistant/components/sonos/translations/sv.json +8 -0
  2307. homeassistant/components/sonos/translations/zh-Hans.json +8 -0
  2308. homeassistant/components/sonos/translations/zh-Hant.json +8 -0
  2309. homeassistant/components/speedtestdotnet/__init__.py +0 -8
  2310. homeassistant/components/speedtestdotnet/config_flow.py +6 -2
  2311. homeassistant/components/sql/__init__.py +0 -7
  2312. homeassistant/components/sql/config_flow.py +2 -2
  2313. homeassistant/components/sql/sensor.py +2 -1
  2314. homeassistant/components/sql/translations/nl.json +1 -0
  2315. homeassistant/components/squeezebox/__init__.py +11 -15
  2316. homeassistant/components/squeezebox/binary_sensor.py +1 -1
  2317. homeassistant/components/squeezebox/const.py +2 -3
  2318. homeassistant/components/squeezebox/coordinator.py +4 -4
  2319. homeassistant/components/squeezebox/entity.py +0 -4
  2320. homeassistant/components/squeezebox/media_player.py +60 -16
  2321. homeassistant/components/squeezebox/sensor.py +1 -1
  2322. homeassistant/components/squeezebox/translations/nl.json +5 -0
  2323. homeassistant/components/starline/translations/en-GB.json +1 -1
  2324. homeassistant/components/starlink/sensor.py +1 -1
  2325. homeassistant/components/statistics/__init__.py +44 -1
  2326. homeassistant/components/statistics/config_flow.py +11 -9
  2327. homeassistant/components/statistics/sensor.py +21 -14
  2328. homeassistant/components/statistics/translations/ga.json +37 -6
  2329. homeassistant/components/stookwijzer/__init__.py +15 -1
  2330. homeassistant/components/stookwijzer/const.py +3 -0
  2331. homeassistant/components/stookwijzer/icons.json +7 -0
  2332. homeassistant/components/stookwijzer/services.py +76 -0
  2333. homeassistant/components/stookwijzer/services.yaml +7 -0
  2334. homeassistant/components/stookwijzer/strings.json +18 -0
  2335. homeassistant/components/stookwijzer/translations/cs.json +18 -0
  2336. homeassistant/components/stookwijzer/translations/de.json +18 -0
  2337. homeassistant/components/stookwijzer/translations/el.json +18 -0
  2338. homeassistant/components/stookwijzer/translations/en-GB.json +18 -0
  2339. homeassistant/components/stookwijzer/translations/en.json +18 -0
  2340. homeassistant/components/stookwijzer/translations/es.json +18 -0
  2341. homeassistant/components/stookwijzer/translations/et.json +18 -0
  2342. homeassistant/components/stookwijzer/translations/ga.json +18 -0
  2343. homeassistant/components/stookwijzer/translations/lt.json +18 -0
  2344. homeassistant/components/stookwijzer/translations/pt.json +18 -0
  2345. homeassistant/components/stookwijzer/translations/sk.json +18 -0
  2346. homeassistant/components/stookwijzer/translations/sv.json +3 -0
  2347. homeassistant/components/stookwijzer/translations/zh-Hans.json +18 -0
  2348. homeassistant/components/stookwijzer/translations/zh-Hant.json +18 -0
  2349. homeassistant/components/stream/manifest.json +1 -1
  2350. homeassistant/components/swiss_public_transport/translations/ga.json +5 -1
  2351. homeassistant/components/switch/translations/it.json +3 -3
  2352. homeassistant/components/switch_as_x/__init__.py +23 -19
  2353. homeassistant/components/switch_as_x/config_flow.py +1 -1
  2354. homeassistant/components/switch_as_x/entity.py +1 -6
  2355. homeassistant/components/switchbot/strings.json +3 -3
  2356. homeassistant/components/switchbot/translations/nl.json +1 -1
  2357. homeassistant/components/switchbot_cloud/__init__.py +29 -2
  2358. homeassistant/components/switchbot_cloud/const.py +2 -0
  2359. homeassistant/components/switchbot_cloud/fan.py +120 -0
  2360. homeassistant/components/switchbot_cloud/light.py +153 -0
  2361. homeassistant/components/switchbot_cloud/manifest.json +1 -1
  2362. homeassistant/components/switchbot_cloud/sensor.py +1 -0
  2363. homeassistant/components/switchbot_cloud/vacuum.py +136 -4
  2364. homeassistant/components/synology_dsm/__init__.py +0 -8
  2365. homeassistant/components/synology_dsm/config_flow.py +2 -2
  2366. homeassistant/components/system_bridge/translations/ga.json +11 -0
  2367. homeassistant/components/system_health/__init__.py +1 -1
  2368. homeassistant/components/tailscale/translations/ga.json +9 -0
  2369. homeassistant/components/tami4/translations/ga.json +8 -0
  2370. homeassistant/components/tankerkoenig/__init__.py +0 -9
  2371. homeassistant/components/tankerkoenig/binary_sensor.py +3 -0
  2372. homeassistant/components/tankerkoenig/config_flow.py +4 -4
  2373. homeassistant/components/tankerkoenig/coordinator.py +15 -3
  2374. homeassistant/components/tankerkoenig/manifest.json +1 -0
  2375. homeassistant/components/tankerkoenig/quality_scale.yaml +81 -0
  2376. homeassistant/components/tankerkoenig/sensor.py +12 -2
  2377. homeassistant/components/tankerkoenig/strings.json +34 -1
  2378. homeassistant/components/tankerkoenig/translations/ca.json +1 -2
  2379. homeassistant/components/tankerkoenig/translations/cs.json +35 -2
  2380. homeassistant/components/tankerkoenig/translations/de.json +35 -2
  2381. homeassistant/components/tankerkoenig/translations/el.json +1 -2
  2382. homeassistant/components/tankerkoenig/translations/en-GB.json +24 -2
  2383. homeassistant/components/tankerkoenig/translations/en.json +35 -2
  2384. homeassistant/components/tankerkoenig/translations/es.json +35 -2
  2385. homeassistant/components/tankerkoenig/translations/et.json +35 -2
  2386. homeassistant/components/tankerkoenig/translations/fi.json +1 -2
  2387. homeassistant/components/tankerkoenig/translations/fr.json +1 -2
  2388. homeassistant/components/tankerkoenig/translations/ga.json +52 -0
  2389. homeassistant/components/tankerkoenig/translations/hu.json +1 -2
  2390. homeassistant/components/tankerkoenig/translations/id.json +1 -2
  2391. homeassistant/components/tankerkoenig/translations/it.json +1 -2
  2392. homeassistant/components/tankerkoenig/translations/ja.json +1 -2
  2393. homeassistant/components/tankerkoenig/translations/ko.json +1 -2
  2394. homeassistant/components/tankerkoenig/translations/lt.json +1 -2
  2395. homeassistant/components/tankerkoenig/translations/nb.json +1 -2
  2396. homeassistant/components/tankerkoenig/translations/nl.json +1 -2
  2397. homeassistant/components/tankerkoenig/translations/pl.json +1 -2
  2398. homeassistant/components/tankerkoenig/translations/pt-BR.json +1 -2
  2399. homeassistant/components/tankerkoenig/translations/pt.json +1 -2
  2400. homeassistant/components/tankerkoenig/translations/ro.json +1 -2
  2401. homeassistant/components/tankerkoenig/translations/ru.json +1 -2
  2402. homeassistant/components/tankerkoenig/translations/sk.json +35 -2
  2403. homeassistant/components/tankerkoenig/translations/sv.json +1 -2
  2404. homeassistant/components/tankerkoenig/translations/tr.json +1 -2
  2405. homeassistant/components/tankerkoenig/translations/uk.json +1 -2
  2406. homeassistant/components/tankerkoenig/translations/zh-Hans.json +35 -2
  2407. homeassistant/components/tankerkoenig/translations/zh-Hant.json +35 -2
  2408. homeassistant/components/telegram_bot/config_flow.py +6 -2
  2409. homeassistant/components/telegram_bot/services.yaml +48 -42
  2410. homeassistant/components/telegram_bot/strings.json +11 -7
  2411. homeassistant/components/telegram_bot/translations/ca.json +0 -5
  2412. homeassistant/components/telegram_bot/translations/cs.json +9 -5
  2413. homeassistant/components/telegram_bot/translations/de.json +9 -5
  2414. homeassistant/components/telegram_bot/translations/el.json +7 -4
  2415. homeassistant/components/telegram_bot/translations/en-GB.json +9 -5
  2416. homeassistant/components/telegram_bot/translations/en.json +9 -5
  2417. homeassistant/components/telegram_bot/translations/es.json +9 -5
  2418. homeassistant/components/telegram_bot/translations/et.json +9 -5
  2419. homeassistant/components/telegram_bot/translations/fi.json +0 -6
  2420. homeassistant/components/telegram_bot/translations/fr.json +2 -1
  2421. homeassistant/components/telegram_bot/translations/ga.json +9 -1
  2422. homeassistant/components/telegram_bot/translations/he.json +0 -4
  2423. homeassistant/components/telegram_bot/translations/hu.json +0 -4
  2424. homeassistant/components/telegram_bot/translations/id.json +0 -6
  2425. homeassistant/components/telegram_bot/translations/it.json +7 -4
  2426. homeassistant/components/telegram_bot/translations/ja.json +7 -4
  2427. homeassistant/components/telegram_bot/translations/lt.json +7 -4
  2428. homeassistant/components/telegram_bot/translations/nl.json +0 -4
  2429. homeassistant/components/telegram_bot/translations/pt.json +7 -4
  2430. homeassistant/components/telegram_bot/translations/ru.json +0 -4
  2431. homeassistant/components/telegram_bot/translations/sk.json +9 -5
  2432. homeassistant/components/telegram_bot/translations/sv.json +0 -4
  2433. homeassistant/components/telegram_bot/translations/tr.json +0 -4
  2434. homeassistant/components/telegram_bot/translations/zh-Hans.json +9 -5
  2435. homeassistant/components/telegram_bot/translations/zh-Hant.json +9 -5
  2436. homeassistant/components/tellduslive/strings.json +2 -2
  2437. homeassistant/components/template/alarm_control_panel.py +65 -153
  2438. homeassistant/components/template/binary_sensor.py +50 -123
  2439. homeassistant/components/template/button.py +39 -51
  2440. homeassistant/components/template/config.py +25 -21
  2441. homeassistant/components/template/config_flow.py +220 -16
  2442. homeassistant/components/template/const.py +14 -1
  2443. homeassistant/components/template/cover.py +89 -104
  2444. homeassistant/components/template/entity.py +35 -5
  2445. homeassistant/components/template/fan.py +85 -106
  2446. homeassistant/components/template/helpers.py +217 -5
  2447. homeassistant/components/template/image.py +29 -55
  2448. homeassistant/components/template/light.py +73 -79
  2449. homeassistant/components/template/lock.py +88 -77
  2450. homeassistant/components/template/number.py +148 -158
  2451. homeassistant/components/template/select.py +121 -112
  2452. homeassistant/components/template/sensor.py +51 -106
  2453. homeassistant/components/template/strings.json +664 -51
  2454. homeassistant/components/template/switch.py +98 -181
  2455. homeassistant/components/template/template_entity.py +27 -66
  2456. homeassistant/components/template/translations/bg.json +57 -14
  2457. homeassistant/components/template/translations/ca.json +11 -82
  2458. homeassistant/components/template/translations/cs.json +634 -27
  2459. homeassistant/components/template/translations/da.json +3 -14
  2460. homeassistant/components/template/translations/de.json +665 -53
  2461. homeassistant/components/template/translations/el.json +82 -87
  2462. homeassistant/components/template/translations/en-GB.json +165 -26
  2463. homeassistant/components/template/translations/en.json +653 -41
  2464. homeassistant/components/template/translations/es.json +509 -35
  2465. homeassistant/components/template/translations/et.json +173 -34
  2466. homeassistant/components/template/translations/fi.json +4 -19
  2467. homeassistant/components/template/translations/fr.json +440 -15
  2468. homeassistant/components/template/translations/ga.json +347 -50
  2469. homeassistant/components/template/translations/he.json +11 -87
  2470. homeassistant/components/template/translations/hu.json +11 -87
  2471. homeassistant/components/template/translations/id.json +11 -87
  2472. homeassistant/components/template/translations/it.json +9 -25
  2473. homeassistant/components/template/translations/ja.json +11 -87
  2474. homeassistant/components/template/translations/ko.json +5 -30
  2475. homeassistant/components/template/translations/lb.json +1 -8
  2476. homeassistant/components/template/translations/lt.json +11 -87
  2477. homeassistant/components/template/translations/lv.json +2 -15
  2478. homeassistant/components/template/translations/nb.json +3 -14
  2479. homeassistant/components/template/translations/nl.json +114 -38
  2480. homeassistant/components/template/translations/pl.json +9 -70
  2481. homeassistant/components/template/translations/pt-BR.json +0 -20
  2482. homeassistant/components/template/translations/pt.json +11 -87
  2483. homeassistant/components/template/translations/ro.json +1 -8
  2484. homeassistant/components/template/translations/ru.json +11 -87
  2485. homeassistant/components/template/translations/sk.json +366 -25
  2486. homeassistant/components/template/translations/sl.json +11 -85
  2487. homeassistant/components/template/translations/sv.json +11 -87
  2488. homeassistant/components/template/translations/tr.json +11 -87
  2489. homeassistant/components/template/translations/uk.json +11 -87
  2490. homeassistant/components/template/translations/vi.json +11 -87
  2491. homeassistant/components/template/translations/zh-Hans.json +521 -33
  2492. homeassistant/components/template/translations/zh-Hant.json +442 -18
  2493. homeassistant/components/template/trigger_entity.py +1 -1
  2494. homeassistant/components/template/vacuum.py +99 -109
  2495. homeassistant/components/template/weather.py +70 -65
  2496. homeassistant/components/tensorflow/manifest.json +2 -2
  2497. homeassistant/components/tesla_fleet/config_flow.py +3 -1
  2498. homeassistant/components/tesla_fleet/manifest.json +1 -1
  2499. homeassistant/components/tesla_fleet/strings.json +1 -1
  2500. homeassistant/components/tesla_fleet/translations/it.json +8 -8
  2501. homeassistant/components/tesla_fleet/translations/nl.json +3 -0
  2502. homeassistant/components/tesla_wall_connector/translations/ga.json +8 -1
  2503. homeassistant/components/teslemetry/__init__.py +1 -6
  2504. homeassistant/components/teslemetry/binary_sensor.py +1 -1
  2505. homeassistant/components/teslemetry/climate.py +2 -2
  2506. homeassistant/components/teslemetry/coordinator.py +1 -0
  2507. homeassistant/components/teslemetry/cover.py +6 -5
  2508. homeassistant/components/teslemetry/device_tracker.py +1 -1
  2509. homeassistant/components/teslemetry/lock.py +2 -2
  2510. homeassistant/components/teslemetry/manifest.json +1 -1
  2511. homeassistant/components/teslemetry/media_player.py +1 -1
  2512. homeassistant/components/teslemetry/number.py +1 -1
  2513. homeassistant/components/teslemetry/select.py +1 -1
  2514. homeassistant/components/teslemetry/sensor.py +2 -2
  2515. homeassistant/components/teslemetry/strings.json +1 -1
  2516. homeassistant/components/teslemetry/switch.py +1 -2
  2517. homeassistant/components/teslemetry/translations/ga.json +161 -1
  2518. homeassistant/components/teslemetry/translations/it.json +15 -15
  2519. homeassistant/components/teslemetry/update.py +1 -1
  2520. homeassistant/components/tessie/manifest.json +1 -1
  2521. homeassistant/components/tessie/translations/it.json +9 -9
  2522. homeassistant/components/tessie/update.py +7 -0
  2523. homeassistant/components/thethingsnetwork/translations/ga.json +19 -0
  2524. homeassistant/components/threshold/__init__.py +44 -6
  2525. homeassistant/components/threshold/binary_sensor.py +24 -18
  2526. homeassistant/components/threshold/config_flow.py +10 -7
  2527. homeassistant/components/tibber/translations/ga.json +3 -0
  2528. homeassistant/components/tibber/translations/nl.json +3 -0
  2529. homeassistant/components/time_date/config_flow.py +5 -16
  2530. homeassistant/components/tomorrowio/strings.json +2 -2
  2531. homeassistant/components/totalconnect/translations/es.json +2 -2
  2532. homeassistant/components/touchline_sl/manifest.json +1 -1
  2533. homeassistant/components/tplink/strings.json +2 -2
  2534. homeassistant/components/tplink/translations/cs.json +4 -0
  2535. homeassistant/components/traccar_server/config_flow.py +66 -1
  2536. homeassistant/components/traccar_server/coordinator.py +9 -3
  2537. homeassistant/components/traccar_server/helpers.py +15 -1
  2538. homeassistant/components/traccar_server/strings.json +11 -2
  2539. homeassistant/components/traccar_server/translations/bg.json +9 -1
  2540. homeassistant/components/traccar_server/translations/ca.json +9 -1
  2541. homeassistant/components/traccar_server/translations/cs.json +10 -1
  2542. homeassistant/components/traccar_server/translations/de.json +10 -1
  2543. homeassistant/components/traccar_server/translations/el.json +10 -1
  2544. homeassistant/components/traccar_server/translations/en-GB.json +10 -1
  2545. homeassistant/components/traccar_server/translations/en.json +10 -1
  2546. homeassistant/components/traccar_server/translations/es.json +10 -1
  2547. homeassistant/components/traccar_server/translations/et.json +10 -1
  2548. homeassistant/components/traccar_server/translations/ga.json +7 -0
  2549. homeassistant/components/traccar_server/translations/he.json +9 -1
  2550. homeassistant/components/traccar_server/translations/ja.json +10 -1
  2551. homeassistant/components/traccar_server/translations/lt.json +10 -1
  2552. homeassistant/components/traccar_server/translations/nl.json +9 -1
  2553. homeassistant/components/traccar_server/translations/pt.json +10 -1
  2554. homeassistant/components/traccar_server/translations/ru.json +10 -1
  2555. homeassistant/components/traccar_server/translations/sk.json +10 -1
  2556. homeassistant/components/traccar_server/translations/sv.json +10 -1
  2557. homeassistant/components/traccar_server/translations/zh-Hans.json +10 -1
  2558. homeassistant/components/traccar_server/translations/zh-Hant.json +10 -1
  2559. homeassistant/components/trafikverket_train/__init__.py +0 -6
  2560. homeassistant/components/trafikverket_train/config_flow.py +2 -2
  2561. homeassistant/components/transmission/coordinator.py +2 -2
  2562. homeassistant/components/trend/__init__.py +44 -1
  2563. homeassistant/components/trend/binary_sensor.py +10 -10
  2564. homeassistant/components/trend/config_flow.py +2 -0
  2565. homeassistant/components/trend/manifest.json +1 -1
  2566. homeassistant/components/tts/__init__.py +13 -3
  2567. homeassistant/components/tts/entity.py +0 -12
  2568. homeassistant/components/tuya/alarm_control_panel.py +2 -1
  2569. homeassistant/components/tuya/binary_sensor.py +117 -52
  2570. homeassistant/components/tuya/button.py +8 -8
  2571. homeassistant/components/tuya/camera.py +3 -3
  2572. homeassistant/components/tuya/climate.py +28 -17
  2573. homeassistant/components/tuya/const.py +8 -11
  2574. homeassistant/components/tuya/cover.py +43 -38
  2575. homeassistant/components/tuya/entity.py +3 -120
  2576. homeassistant/components/tuya/fan.py +19 -6
  2577. homeassistant/components/tuya/humidifier.py +16 -3
  2578. homeassistant/components/tuya/icons.json +6 -0
  2579. homeassistant/components/tuya/light.py +75 -46
  2580. homeassistant/components/tuya/models.py +124 -0
  2581. homeassistant/components/tuya/number.py +143 -81
  2582. homeassistant/components/tuya/select.py +176 -162
  2583. homeassistant/components/tuya/sensor.py +691 -636
  2584. homeassistant/components/tuya/siren.py +8 -8
  2585. homeassistant/components/tuya/strings.json +80 -110
  2586. homeassistant/components/tuya/switch.py +284 -176
  2587. homeassistant/components/tuya/translations/bg.json +33 -86
  2588. homeassistant/components/tuya/translations/ca.json +6 -121
  2589. homeassistant/components/tuya/translations/cs.json +89 -119
  2590. homeassistant/components/tuya/translations/de.json +89 -119
  2591. homeassistant/components/tuya/translations/el.json +77 -119
  2592. homeassistant/components/tuya/translations/en-GB.json +77 -119
  2593. homeassistant/components/tuya/translations/en.json +89 -119
  2594. homeassistant/components/tuya/translations/es.json +79 -121
  2595. homeassistant/components/tuya/translations/et.json +77 -119
  2596. homeassistant/components/tuya/translations/fi.json +5 -121
  2597. homeassistant/components/tuya/translations/fr.json +0 -121
  2598. homeassistant/components/tuya/translations/ga.json +79 -0
  2599. homeassistant/components/tuya/translations/gl.json +0 -68
  2600. homeassistant/components/tuya/translations/he.json +20 -120
  2601. homeassistant/components/tuya/translations/hu.json +0 -121
  2602. homeassistant/components/tuya/translations/id.json +0 -119
  2603. homeassistant/components/tuya/translations/it.json +13 -125
  2604. homeassistant/components/tuya/translations/ja.json +0 -121
  2605. homeassistant/components/tuya/translations/ko.json +0 -121
  2606. homeassistant/components/tuya/translations/lt.json +51 -121
  2607. homeassistant/components/tuya/translations/lv.json +0 -18
  2608. homeassistant/components/tuya/translations/mk.json +43 -0
  2609. homeassistant/components/tuya/translations/nb.json +0 -29
  2610. homeassistant/components/tuya/translations/nl.json +29 -121
  2611. homeassistant/components/tuya/translations/pl.json +0 -23
  2612. homeassistant/components/tuya/translations/pt-BR.json +0 -121
  2613. homeassistant/components/tuya/translations/pt.json +23 -121
  2614. homeassistant/components/tuya/translations/ro.json +0 -121
  2615. homeassistant/components/tuya/translations/ru.json +26 -121
  2616. homeassistant/components/tuya/translations/select.it.json +3 -3
  2617. homeassistant/components/tuya/translations/sk.json +80 -119
  2618. homeassistant/components/tuya/translations/sl.json +0 -103
  2619. homeassistant/components/tuya/translations/sr-Latn.json +0 -3
  2620. homeassistant/components/tuya/translations/sv.json +26 -121
  2621. homeassistant/components/tuya/translations/tr.json +0 -121
  2622. homeassistant/components/tuya/translations/uk.json +0 -123
  2623. homeassistant/components/tuya/translations/vi.json +0 -3
  2624. homeassistant/components/tuya/translations/zh-Hans.json +89 -119
  2625. homeassistant/components/tuya/translations/zh-Hant.json +89 -119
  2626. homeassistant/components/tuya/util.py +28 -0
  2627. homeassistant/components/tuya/vacuum.py +14 -14
  2628. homeassistant/components/twinkly/translations/it.json +1 -1
  2629. homeassistant/components/unifi/hub/hub.py +3 -1
  2630. homeassistant/components/unifiprotect/__init__.py +57 -60
  2631. homeassistant/components/unifiprotect/camera.py +1 -1
  2632. homeassistant/components/unifiprotect/config_flow.py +23 -9
  2633. homeassistant/components/unifiprotect/const.py +1 -1
  2634. homeassistant/components/unifiprotect/data.py +2 -2
  2635. homeassistant/components/unifiprotect/manifest.json +1 -1
  2636. homeassistant/components/unifiprotect/repairs.py +0 -50
  2637. homeassistant/components/unifiprotect/services.py +10 -5
  2638. homeassistant/components/unifiprotect/strings.json +27 -27
  2639. homeassistant/components/unifiprotect/translations/bg.json +11 -10
  2640. homeassistant/components/unifiprotect/translations/ca.json +0 -16
  2641. homeassistant/components/unifiprotect/translations/cs.json +23 -20
  2642. homeassistant/components/unifiprotect/translations/de.json +20 -20
  2643. homeassistant/components/unifiprotect/translations/el.json +20 -20
  2644. homeassistant/components/unifiprotect/translations/en-GB.json +20 -20
  2645. homeassistant/components/unifiprotect/translations/en.json +20 -20
  2646. homeassistant/components/unifiprotect/translations/es.json +20 -20
  2647. homeassistant/components/unifiprotect/translations/et.json +20 -20
  2648. homeassistant/components/unifiprotect/translations/fi.json +17 -19
  2649. homeassistant/components/unifiprotect/translations/fr.json +0 -7
  2650. homeassistant/components/unifiprotect/translations/fy.json +1 -14
  2651. homeassistant/components/unifiprotect/translations/ga.json +27 -7
  2652. homeassistant/components/unifiprotect/translations/he.json +3 -0
  2653. homeassistant/components/unifiprotect/translations/hu.json +0 -20
  2654. homeassistant/components/unifiprotect/translations/id.json +0 -18
  2655. homeassistant/components/unifiprotect/translations/it.json +0 -3
  2656. homeassistant/components/unifiprotect/translations/ja.json +0 -20
  2657. homeassistant/components/unifiprotect/translations/ko.json +0 -5
  2658. homeassistant/components/unifiprotect/translations/lt.json +0 -20
  2659. homeassistant/components/unifiprotect/translations/nb.json +0 -5
  2660. homeassistant/components/unifiprotect/translations/nl.json +9 -19
  2661. homeassistant/components/unifiprotect/translations/pl.json +0 -5
  2662. homeassistant/components/unifiprotect/translations/pt-BR.json +0 -3
  2663. homeassistant/components/unifiprotect/translations/pt.json +0 -20
  2664. homeassistant/components/unifiprotect/translations/ro.json +0 -5
  2665. homeassistant/components/unifiprotect/translations/ru.json +0 -20
  2666. homeassistant/components/unifiprotect/translations/sk.json +20 -20
  2667. homeassistant/components/unifiprotect/translations/sv.json +0 -20
  2668. homeassistant/components/unifiprotect/translations/tr.json +0 -20
  2669. homeassistant/components/unifiprotect/translations/uk.json +0 -5
  2670. homeassistant/components/unifiprotect/translations/zh-Hans.json +20 -20
  2671. homeassistant/components/unifiprotect/translations/zh-Hant.json +20 -20
  2672. homeassistant/components/unifiprotect/utils.py +3 -0
  2673. homeassistant/components/uptime_kuma/__init__.py +74 -0
  2674. homeassistant/components/uptime_kuma/config_flow.py +231 -0
  2675. homeassistant/components/uptime_kuma/const.py +26 -0
  2676. homeassistant/components/uptime_kuma/coordinator.py +137 -0
  2677. homeassistant/components/uptime_kuma/diagnostics.py +23 -0
  2678. homeassistant/components/uptime_kuma/icons.json +32 -0
  2679. homeassistant/components/uptime_kuma/manifest.json +11 -0
  2680. homeassistant/components/uptime_kuma/quality_scale.yaml +76 -0
  2681. homeassistant/components/uptime_kuma/sensor.py +178 -0
  2682. homeassistant/components/uptime_kuma/strings.json +137 -0
  2683. homeassistant/components/uptime_kuma/translations/bg.json +57 -0
  2684. homeassistant/components/uptime_kuma/translations/ca.json +35 -0
  2685. homeassistant/components/uptime_kuma/translations/cs.json +137 -0
  2686. homeassistant/components/uptime_kuma/translations/de.json +137 -0
  2687. homeassistant/components/uptime_kuma/translations/el.json +127 -0
  2688. homeassistant/components/uptime_kuma/translations/en-GB.json +127 -0
  2689. homeassistant/components/uptime_kuma/translations/en.json +137 -0
  2690. homeassistant/components/uptime_kuma/translations/es.json +127 -0
  2691. homeassistant/components/uptime_kuma/translations/et.json +127 -0
  2692. homeassistant/components/uptime_kuma/translations/fr.json +134 -0
  2693. homeassistant/components/uptime_kuma/translations/ga.json +111 -0
  2694. homeassistant/components/uptime_kuma/translations/he.json +35 -0
  2695. homeassistant/components/uptime_kuma/translations/lt.json +119 -0
  2696. homeassistant/components/uptime_kuma/translations/mk.json +17 -0
  2697. homeassistant/components/uptime_kuma/translations/nb.json +31 -0
  2698. homeassistant/components/uptime_kuma/translations/nl.json +68 -0
  2699. homeassistant/components/uptime_kuma/translations/pt.json +94 -0
  2700. homeassistant/components/uptime_kuma/translations/ru.json +101 -0
  2701. homeassistant/components/uptime_kuma/translations/sk.json +135 -0
  2702. homeassistant/components/uptime_kuma/translations/sv.json +109 -0
  2703. homeassistant/components/uptime_kuma/translations/zh-Hans.json +135 -0
  2704. homeassistant/components/uptime_kuma/translations/zh-Hant.json +137 -0
  2705. homeassistant/components/uptime_kuma/update.py +122 -0
  2706. homeassistant/components/utility_meter/__init__.py +34 -8
  2707. homeassistant/components/utility_meter/config_flow.py +2 -0
  2708. homeassistant/components/utility_meter/select.py +6 -6
  2709. homeassistant/components/utility_meter/sensor.py +9 -10
  2710. homeassistant/components/utility_meter/strings.json +5 -0
  2711. homeassistant/components/utility_meter/translations/bg.json +5 -0
  2712. homeassistant/components/utility_meter/translations/cs.json +5 -0
  2713. homeassistant/components/utility_meter/translations/de.json +5 -0
  2714. homeassistant/components/utility_meter/translations/el.json +5 -0
  2715. homeassistant/components/utility_meter/translations/en-GB.json +5 -0
  2716. homeassistant/components/utility_meter/translations/en.json +5 -0
  2717. homeassistant/components/utility_meter/translations/es.json +5 -0
  2718. homeassistant/components/utility_meter/translations/et.json +5 -0
  2719. homeassistant/components/utility_meter/translations/fr.json +5 -0
  2720. homeassistant/components/utility_meter/translations/ga.json +7 -0
  2721. homeassistant/components/utility_meter/translations/he.json +5 -0
  2722. homeassistant/components/utility_meter/translations/ja.json +5 -0
  2723. homeassistant/components/utility_meter/translations/lt.json +5 -0
  2724. homeassistant/components/utility_meter/translations/nl.json +5 -0
  2725. homeassistant/components/utility_meter/translations/pt.json +5 -0
  2726. homeassistant/components/utility_meter/translations/ru.json +5 -0
  2727. homeassistant/components/utility_meter/translations/sk.json +5 -0
  2728. homeassistant/components/utility_meter/translations/zh-Hans.json +5 -0
  2729. homeassistant/components/utility_meter/translations/zh-Hant.json +5 -0
  2730. homeassistant/components/v2c/translations/ga.json +20 -0
  2731. homeassistant/components/vacuum/__init__.py +65 -2
  2732. homeassistant/components/vacuum/translations/it.json +1 -1
  2733. homeassistant/components/vallox/strings.json +1 -1
  2734. homeassistant/components/vegehub/strings.json +2 -2
  2735. homeassistant/components/velbus/__init__.py +2 -2
  2736. homeassistant/components/velbus/const.py +0 -1
  2737. homeassistant/components/velbus/services.py +42 -90
  2738. homeassistant/components/velbus/services.yaml +0 -20
  2739. homeassistant/components/velbus/strings.json +0 -16
  2740. homeassistant/components/velbus/translations/bg.json +0 -18
  2741. homeassistant/components/velbus/translations/ca.json +0 -12
  2742. homeassistant/components/velbus/translations/cs.json +0 -16
  2743. homeassistant/components/velbus/translations/de.json +0 -16
  2744. homeassistant/components/velbus/translations/el.json +0 -16
  2745. homeassistant/components/velbus/translations/en-GB.json +0 -16
  2746. homeassistant/components/velbus/translations/en.json +0 -16
  2747. homeassistant/components/velbus/translations/es.json +0 -16
  2748. homeassistant/components/velbus/translations/et.json +0 -16
  2749. homeassistant/components/velbus/translations/fi.json +0 -19
  2750. homeassistant/components/velbus/translations/gl.json +0 -18
  2751. homeassistant/components/velbus/translations/hu.json +0 -16
  2752. homeassistant/components/velbus/translations/it.json +0 -15
  2753. homeassistant/components/velbus/translations/ja.json +0 -16
  2754. homeassistant/components/velbus/translations/ko.json +0 -19
  2755. homeassistant/components/velbus/translations/lt.json +0 -16
  2756. homeassistant/components/velbus/translations/nb.json +0 -30
  2757. homeassistant/components/velbus/translations/nl.json +0 -15
  2758. homeassistant/components/velbus/translations/pt.json +0 -16
  2759. homeassistant/components/velbus/translations/ru.json +0 -16
  2760. homeassistant/components/velbus/translations/sk.json +0 -16
  2761. homeassistant/components/velbus/translations/sv.json +0 -16
  2762. homeassistant/components/velbus/translations/tr.json +0 -16
  2763. homeassistant/components/velbus/translations/uk.json +0 -5
  2764. homeassistant/components/velbus/translations/zh-Hans.json +0 -16
  2765. homeassistant/components/velbus/translations/zh-Hant.json +0 -16
  2766. homeassistant/components/velux/binary_sensor.py +63 -0
  2767. homeassistant/components/velux/const.py +1 -1
  2768. homeassistant/components/vera/__init__.py +0 -6
  2769. homeassistant/components/vera/config_flow.py +2 -2
  2770. homeassistant/components/vesync/const.py +1 -0
  2771. homeassistant/components/vesync/translations/it.json +1 -1
  2772. homeassistant/components/vodafone_station/__init__.py +0 -8
  2773. homeassistant/components/vodafone_station/config_flow.py +6 -2
  2774. homeassistant/components/volvo/__init__.py +97 -0
  2775. homeassistant/components/volvo/api.py +38 -0
  2776. homeassistant/components/volvo/application_credentials.py +37 -0
  2777. homeassistant/components/volvo/config_flow.py +239 -0
  2778. homeassistant/components/volvo/const.py +14 -0
  2779. homeassistant/components/volvo/coordinator.py +255 -0
  2780. homeassistant/components/volvo/entity.py +90 -0
  2781. homeassistant/components/volvo/icons.json +81 -0
  2782. homeassistant/components/volvo/manifest.json +13 -0
  2783. homeassistant/components/volvo/quality_scale.yaml +82 -0
  2784. homeassistant/components/volvo/sensor.py +399 -0
  2785. homeassistant/components/volvo/strings.json +178 -0
  2786. homeassistant/components/volvo/translations/bg.json +55 -0
  2787. homeassistant/components/volvo/translations/cs.json +178 -0
  2788. homeassistant/components/volvo/translations/de.json +178 -0
  2789. homeassistant/components/volvo/translations/el.json +53 -0
  2790. homeassistant/components/volvo/translations/en.json +178 -0
  2791. homeassistant/components/volvo/translations/es.json +178 -0
  2792. homeassistant/components/volvo/translations/et.json +178 -0
  2793. homeassistant/components/volvo/translations/ga.json +151 -0
  2794. homeassistant/components/volvo/translations/nl.json +54 -0
  2795. homeassistant/components/volvo/translations/sk.json +178 -0
  2796. homeassistant/components/volvo/translations/zh-Hans.json +178 -0
  2797. homeassistant/components/volvo/translations/zh-Hant.json +178 -0
  2798. homeassistant/components/wallbox/__init__.py +11 -11
  2799. homeassistant/components/wallbox/coordinator.py +57 -8
  2800. homeassistant/components/wallbox/lock.py +7 -5
  2801. homeassistant/components/wallbox/number.py +8 -6
  2802. homeassistant/components/wallbox/select.py +7 -4
  2803. homeassistant/components/wallbox/sensor.py +7 -5
  2804. homeassistant/components/wallbox/strings.json +19 -2
  2805. homeassistant/components/wallbox/switch.py +7 -5
  2806. homeassistant/components/wallbox/translations/bg.json +9 -0
  2807. homeassistant/components/wallbox/translations/cs.json +17 -0
  2808. homeassistant/components/wallbox/translations/de.json +17 -0
  2809. homeassistant/components/wallbox/translations/el.json +17 -0
  2810. homeassistant/components/wallbox/translations/en-GB.json +17 -0
  2811. homeassistant/components/wallbox/translations/en.json +17 -0
  2812. homeassistant/components/wallbox/translations/es.json +17 -0
  2813. homeassistant/components/wallbox/translations/et.json +17 -0
  2814. homeassistant/components/wallbox/translations/ga.json +23 -0
  2815. homeassistant/components/wallbox/translations/it.json +1 -1
  2816. homeassistant/components/wallbox/translations/ja.json +8 -0
  2817. homeassistant/components/wallbox/translations/lt.json +17 -0
  2818. homeassistant/components/wallbox/translations/mk.json +5 -0
  2819. homeassistant/components/wallbox/translations/nl.json +5 -0
  2820. homeassistant/components/wallbox/translations/pt.json +17 -0
  2821. homeassistant/components/wallbox/translations/ru.json +3 -0
  2822. homeassistant/components/wallbox/translations/sk.json +17 -0
  2823. homeassistant/components/wallbox/translations/zh-Hans.json +17 -0
  2824. homeassistant/components/wallbox/translations/zh-Hant.json +17 -0
  2825. homeassistant/components/waqi/__init__.py +5 -10
  2826. homeassistant/components/waqi/config_flow.py +42 -48
  2827. homeassistant/components/waqi/coordinator.py +4 -2
  2828. homeassistant/components/waqi/icons.json +39 -0
  2829. homeassistant/components/waqi/sensor.py +3 -16
  2830. homeassistant/components/water_heater/translations/ga.json +9 -0
  2831. homeassistant/components/water_heater/translations/it.json +2 -2
  2832. homeassistant/components/waze_travel_time/strings.json +6 -6
  2833. homeassistant/components/waze_travel_time/translations/cs.json +10 -0
  2834. homeassistant/components/waze_travel_time/translations/el.json +6 -0
  2835. homeassistant/components/waze_travel_time/translations/et.json +10 -0
  2836. homeassistant/components/waze_travel_time/translations/fr.json +14 -0
  2837. homeassistant/components/waze_travel_time/translations/ga.json +37 -0
  2838. homeassistant/components/weatherflow_cloud/__init__.py +83 -6
  2839. homeassistant/components/weatherflow_cloud/config_flow.py +3 -2
  2840. homeassistant/components/weatherflow_cloud/const.py +4 -1
  2841. homeassistant/components/weatherflow_cloud/coordinator.py +176 -15
  2842. homeassistant/components/weatherflow_cloud/entity.py +6 -13
  2843. homeassistant/components/weatherflow_cloud/icons.json +98 -8
  2844. homeassistant/components/weatherflow_cloud/manifest.json +1 -1
  2845. homeassistant/components/weatherflow_cloud/sensor.py +296 -19
  2846. homeassistant/components/weatherflow_cloud/strings.json +47 -18
  2847. homeassistant/components/weatherflow_cloud/translations/ca.json +0 -3
  2848. homeassistant/components/weatherflow_cloud/translations/cs.json +33 -3
  2849. homeassistant/components/weatherflow_cloud/translations/de.json +33 -3
  2850. homeassistant/components/weatherflow_cloud/translations/el.json +6 -3
  2851. homeassistant/components/weatherflow_cloud/translations/en-GB.json +6 -3
  2852. homeassistant/components/weatherflow_cloud/translations/en.json +33 -3
  2853. homeassistant/components/weatherflow_cloud/translations/es.json +33 -3
  2854. homeassistant/components/weatherflow_cloud/translations/et.json +6 -3
  2855. homeassistant/components/weatherflow_cloud/translations/fr.json +0 -3
  2856. homeassistant/components/weatherflow_cloud/translations/ga.json +33 -3
  2857. homeassistant/components/weatherflow_cloud/translations/he.json +0 -3
  2858. homeassistant/components/weatherflow_cloud/translations/hu.json +0 -3
  2859. homeassistant/components/weatherflow_cloud/translations/it.json +10 -0
  2860. homeassistant/components/weatherflow_cloud/translations/ja.json +0 -3
  2861. homeassistant/components/weatherflow_cloud/translations/lt.json +6 -3
  2862. homeassistant/components/weatherflow_cloud/translations/mk.json +3 -3
  2863. homeassistant/components/weatherflow_cloud/translations/nl.json +6 -0
  2864. homeassistant/components/weatherflow_cloud/translations/pt.json +6 -3
  2865. homeassistant/components/weatherflow_cloud/translations/ru.json +0 -3
  2866. homeassistant/components/weatherflow_cloud/translations/sk.json +6 -3
  2867. homeassistant/components/weatherflow_cloud/translations/sv.json +3 -3
  2868. homeassistant/components/weatherflow_cloud/translations/tr.json +0 -3
  2869. homeassistant/components/weatherflow_cloud/translations/zh-Hans.json +6 -3
  2870. homeassistant/components/weatherflow_cloud/translations/zh-Hant.json +33 -3
  2871. homeassistant/components/weatherflow_cloud/weather.py +7 -9
  2872. homeassistant/components/webmin/translations/ga.json +39 -0
  2873. homeassistant/components/webostv/__init__.py +0 -7
  2874. homeassistant/components/webostv/config_flow.py +7 -3
  2875. homeassistant/components/webostv/strings.json +6 -6
  2876. homeassistant/components/websocket_api/commands.py +53 -0
  2877. homeassistant/components/whirlpool/binary_sensor.py +14 -7
  2878. homeassistant/components/whirlpool/config_flow.py +5 -1
  2879. homeassistant/components/whirlpool/diagnostics.py +7 -3
  2880. homeassistant/components/whirlpool/manifest.json +1 -1
  2881. homeassistant/components/whirlpool/sensor.py +169 -74
  2882. homeassistant/components/whirlpool/strings.json +3 -5
  2883. homeassistant/components/whirlpool/translations/cs.json +0 -2
  2884. homeassistant/components/whirlpool/translations/de.json +0 -2
  2885. homeassistant/components/whirlpool/translations/en-GB.json +0 -2
  2886. homeassistant/components/whirlpool/translations/en.json +0 -2
  2887. homeassistant/components/whirlpool/translations/es.json +8 -10
  2888. homeassistant/components/whirlpool/translations/et.json +0 -2
  2889. homeassistant/components/whirlpool/translations/fr.json +0 -2
  2890. homeassistant/components/whirlpool/translations/fy.json +0 -2
  2891. homeassistant/components/whirlpool/translations/ga.json +0 -2
  2892. homeassistant/components/whirlpool/translations/hu.json +0 -2
  2893. homeassistant/components/whirlpool/translations/it.json +0 -1
  2894. homeassistant/components/whirlpool/translations/lt.json +0 -2
  2895. homeassistant/components/whirlpool/translations/nl.json +0 -2
  2896. homeassistant/components/whirlpool/translations/pt.json +0 -2
  2897. homeassistant/components/whirlpool/translations/ru.json +0 -2
  2898. homeassistant/components/whirlpool/translations/sk.json +0 -2
  2899. homeassistant/components/whirlpool/translations/sv.json +0 -2
  2900. homeassistant/components/whirlpool/translations/zh-Hans.json +0 -2
  2901. homeassistant/components/whirlpool/translations/zh-Hant.json +0 -2
  2902. homeassistant/components/whois/strings.json +1 -1
  2903. homeassistant/components/wiffi/__init__.py +0 -7
  2904. homeassistant/components/wiffi/config_flow.py +2 -2
  2905. homeassistant/components/wilight/support.py +1 -2
  2906. homeassistant/components/wiz/__init__.py +1 -0
  2907. homeassistant/components/wiz/config_flow.py +1 -1
  2908. homeassistant/components/wiz/fan.py +139 -0
  2909. homeassistant/components/wiz/manifest.json +1 -1
  2910. homeassistant/components/wled/__init__.py +0 -8
  2911. homeassistant/components/wled/config_flow.py +2 -2
  2912. homeassistant/components/wled/strings.json +1 -1
  2913. homeassistant/components/wled/translations/it.json +1 -1
  2914. homeassistant/components/wolflink/translations/it.json +1 -1
  2915. homeassistant/components/workday/__init__.py +0 -6
  2916. homeassistant/components/workday/config_flow.py +2 -2
  2917. homeassistant/components/workday/manifest.json +1 -1
  2918. homeassistant/components/ws66i/__init__.py +0 -6
  2919. homeassistant/components/ws66i/config_flow.py +2 -2
  2920. homeassistant/components/wyoming/translations/de.json +1 -1
  2921. homeassistant/components/wyoming/translations/it.json +1 -1
  2922. homeassistant/components/xiaomi_ble/coordinator.py +1 -1
  2923. homeassistant/components/xiaomi_ble/manifest.json +1 -1
  2924. homeassistant/components/xiaomi_ble/strings.json +9 -9
  2925. homeassistant/components/xiaomi_miio/__init__.py +0 -11
  2926. homeassistant/components/xiaomi_miio/config_flow.py +6 -2
  2927. homeassistant/components/xiaomi_miio/strings.json +1 -1
  2928. homeassistant/components/xiaomi_miio/translations/es.json +3 -3
  2929. homeassistant/components/xiaomi_miio/translations/it.json +1 -1
  2930. homeassistant/components/yale/manifest.json +1 -1
  2931. homeassistant/components/yale_smart_alarm/__init__.py +0 -6
  2932. homeassistant/components/yale_smart_alarm/config_flow.py +2 -2
  2933. homeassistant/components/yale_smart_alarm/translations/it.json +1 -1
  2934. homeassistant/components/yale_smart_alarm/translations/nl.json +3 -0
  2935. homeassistant/components/yalexs_ble/__init__.py +5 -1
  2936. homeassistant/components/yalexs_ble/icons.json +11 -0
  2937. homeassistant/components/yalexs_ble/lock.py +32 -4
  2938. homeassistant/components/yalexs_ble/manifest.json +1 -1
  2939. homeassistant/components/yalexs_ble/strings.json +5 -0
  2940. homeassistant/components/yalexs_ble/translations/cs.json +5 -0
  2941. homeassistant/components/yalexs_ble/translations/de.json +5 -0
  2942. homeassistant/components/yalexs_ble/translations/el.json +5 -0
  2943. homeassistant/components/yalexs_ble/translations/en-GB.json +5 -0
  2944. homeassistant/components/yalexs_ble/translations/en.json +5 -0
  2945. homeassistant/components/yalexs_ble/translations/es.json +5 -0
  2946. homeassistant/components/yalexs_ble/translations/et.json +5 -0
  2947. homeassistant/components/yalexs_ble/translations/ga.json +9 -1
  2948. homeassistant/components/yalexs_ble/translations/ja.json +5 -0
  2949. homeassistant/components/yalexs_ble/translations/lt.json +5 -0
  2950. homeassistant/components/yalexs_ble/translations/pt.json +5 -0
  2951. homeassistant/components/yalexs_ble/translations/ru.json +5 -0
  2952. homeassistant/components/yalexs_ble/translations/sk.json +5 -0
  2953. homeassistant/components/yalexs_ble/translations/sv.json +5 -0
  2954. homeassistant/components/yalexs_ble/translations/zh-Hans.json +5 -0
  2955. homeassistant/components/yalexs_ble/translations/zh-Hant.json +5 -0
  2956. homeassistant/components/yamaha_musiccast/translations/it.json +1 -1
  2957. homeassistant/components/yeelight/__init__.py +0 -8
  2958. homeassistant/components/yeelight/config_flow.py +2 -2
  2959. homeassistant/components/yeelight/translations/es.json +1 -1
  2960. homeassistant/components/yeelight/translations/it.json +1 -1
  2961. homeassistant/components/yolink/__init__.py +14 -0
  2962. homeassistant/components/yolink/binary_sensor.py +6 -2
  2963. homeassistant/components/yolink/const.py +2 -0
  2964. homeassistant/components/yolink/manifest.json +1 -1
  2965. homeassistant/components/yolink/sensor.py +33 -3
  2966. homeassistant/components/yolink/translations/it.json +1 -1
  2967. homeassistant/components/yolink/translations/nl.json +1 -0
  2968. homeassistant/components/youtube/manifest.json +1 -1
  2969. homeassistant/components/zabbix/__init__.py +40 -22
  2970. homeassistant/components/zbox_hub/__init__.py +1 -0
  2971. homeassistant/components/zbox_hub/manifest.json +6 -0
  2972. homeassistant/components/zha/helpers.py +21 -1
  2973. homeassistant/components/zha/manifest.json +1 -1
  2974. homeassistant/components/zha/strings.json +34 -4
  2975. homeassistant/components/zha/translations/bg.json +6 -0
  2976. homeassistant/components/zha/translations/cs.json +30 -0
  2977. homeassistant/components/zha/translations/da.json +3 -0
  2978. homeassistant/components/zha/translations/de.json +31 -1
  2979. homeassistant/components/zha/translations/en.json +30 -0
  2980. homeassistant/components/zha/translations/es.json +33 -3
  2981. homeassistant/components/zha/translations/fr.json +9 -0
  2982. homeassistant/components/zha/translations/ga.json +76 -0
  2983. homeassistant/components/zha/translations/sk.json +18 -0
  2984. homeassistant/components/zha/translations/zh-Hans.json +12 -0
  2985. homeassistant/components/zha/translations/zh-Hant.json +27 -0
  2986. homeassistant/components/zone/condition.py +156 -0
  2987. homeassistant/components/zone/trigger.py +2 -1
  2988. homeassistant/components/zoneminder/__init__.py +2 -2
  2989. homeassistant/components/zoneminder/services.py +3 -2
  2990. homeassistant/components/zwave_js/__init__.py +96 -73
  2991. homeassistant/components/zwave_js/api.py +46 -36
  2992. homeassistant/components/zwave_js/binary_sensor.py +8 -9
  2993. homeassistant/components/zwave_js/button.py +6 -7
  2994. homeassistant/components/zwave_js/climate.py +6 -7
  2995. homeassistant/components/zwave_js/config_flow.py +3 -4
  2996. homeassistant/components/zwave_js/const.py +0 -2
  2997. homeassistant/components/zwave_js/cover.py +8 -14
  2998. homeassistant/components/zwave_js/device_automation_helpers.py +2 -3
  2999. homeassistant/components/zwave_js/diagnostics.py +9 -6
  3000. homeassistant/components/zwave_js/discovery.py +36 -3
  3001. homeassistant/components/zwave_js/event.py +5 -6
  3002. homeassistant/components/zwave_js/fan.py +7 -8
  3003. homeassistant/components/zwave_js/helpers.py +15 -19
  3004. homeassistant/components/zwave_js/humidifier.py +5 -6
  3005. homeassistant/components/zwave_js/light.py +41 -9
  3006. homeassistant/components/zwave_js/lock.py +3 -5
  3007. homeassistant/components/zwave_js/manifest.json +1 -1
  3008. homeassistant/components/zwave_js/models.py +27 -0
  3009. homeassistant/components/zwave_js/number.py +7 -8
  3010. homeassistant/components/zwave_js/repairs.py +1 -0
  3011. homeassistant/components/zwave_js/select.py +9 -10
  3012. homeassistant/components/zwave_js/sensor.py +37 -20
  3013. homeassistant/components/zwave_js/services.py +1 -1
  3014. homeassistant/components/zwave_js/siren.py +5 -6
  3015. homeassistant/components/zwave_js/strings.json +12 -12
  3016. homeassistant/components/zwave_js/switch.py +8 -9
  3017. homeassistant/components/zwave_js/translations/bg.json +2 -2
  3018. homeassistant/components/zwave_js/translations/ca.json +0 -6
  3019. homeassistant/components/zwave_js/translations/cs.json +8 -8
  3020. homeassistant/components/zwave_js/translations/de.json +8 -8
  3021. homeassistant/components/zwave_js/translations/el.json +8 -8
  3022. homeassistant/components/zwave_js/translations/en-GB.json +8 -8
  3023. homeassistant/components/zwave_js/translations/en.json +8 -8
  3024. homeassistant/components/zwave_js/translations/es.json +8 -8
  3025. homeassistant/components/zwave_js/translations/et.json +8 -8
  3026. homeassistant/components/zwave_js/translations/fi.json +0 -9
  3027. homeassistant/components/zwave_js/translations/fr.json +0 -3
  3028. homeassistant/components/zwave_js/translations/ga.json +13 -0
  3029. homeassistant/components/zwave_js/translations/he.json +0 -6
  3030. homeassistant/components/zwave_js/translations/hu.json +0 -9
  3031. homeassistant/components/zwave_js/translations/id.json +0 -9
  3032. homeassistant/components/zwave_js/translations/ja.json +0 -9
  3033. homeassistant/components/zwave_js/translations/lt.json +0 -9
  3034. homeassistant/components/zwave_js/translations/nl.json +2 -8
  3035. homeassistant/components/zwave_js/translations/pt.json +0 -9
  3036. homeassistant/components/zwave_js/translations/ru.json +3 -9
  3037. homeassistant/components/zwave_js/translations/sk.json +8 -8
  3038. homeassistant/components/zwave_js/translations/sv.json +0 -9
  3039. homeassistant/components/zwave_js/translations/tr.json +0 -9
  3040. homeassistant/components/zwave_js/translations/vi.json +0 -9
  3041. homeassistant/components/zwave_js/translations/zh-Hans.json +8 -8
  3042. homeassistant/components/zwave_js/translations/zh-Hant.json +8 -8
  3043. homeassistant/components/zwave_js/triggers/event.py +3 -5
  3044. homeassistant/components/zwave_js/triggers/trigger_helpers.py +2 -4
  3045. homeassistant/components/zwave_js/update.py +101 -36
  3046. homeassistant/config.py +0 -3
  3047. homeassistant/config_entries.py +28 -1
  3048. homeassistant/const.py +4 -2
  3049. homeassistant/core.py +51 -15
  3050. homeassistant/generated/application_credentials.py +1 -0
  3051. homeassistant/generated/config_flows.py +5 -0
  3052. homeassistant/generated/integrations.json +44 -3
  3053. homeassistant/generated/zeroconf.py +19 -0
  3054. homeassistant/helpers/condition.py +217 -105
  3055. homeassistant/helpers/config_validation.py +0 -29
  3056. homeassistant/helpers/deprecation.py +8 -10
  3057. homeassistant/helpers/device.py +13 -0
  3058. homeassistant/helpers/device_registry.py +75 -39
  3059. homeassistant/helpers/entity.py +61 -48
  3060. homeassistant/helpers/entity_platform.py +177 -73
  3061. homeassistant/helpers/entity_registry.py +42 -21
  3062. homeassistant/helpers/event.py +62 -57
  3063. homeassistant/helpers/frame.py +24 -9
  3064. homeassistant/helpers/helper_integration.py +69 -10
  3065. homeassistant/helpers/http.py +2 -2
  3066. homeassistant/helpers/llm.py +44 -9
  3067. homeassistant/helpers/schema_config_entry_flow.py +11 -0
  3068. homeassistant/helpers/selector.py +173 -126
  3069. homeassistant/helpers/service.py +53 -214
  3070. homeassistant/helpers/service_info/dhcp.py +6 -0
  3071. homeassistant/helpers/singleton.py +2 -1
  3072. homeassistant/helpers/target.py +359 -0
  3073. homeassistant/helpers/trigger.py +18 -8
  3074. homeassistant/helpers/trigger_template_entity.py +19 -0
  3075. homeassistant/helpers/update_coordinator.py +12 -2
  3076. homeassistant/loader.py +13 -79
  3077. homeassistant/package_constraints.txt +14 -18
  3078. homeassistant/runner.py +2 -0
  3079. homeassistant/strings.json +3 -0
  3080. homeassistant/util/__init__.py +2 -2
  3081. homeassistant/util/resource.py +65 -0
  3082. homeassistant/util/unit_conversion.py +5 -2
  3083. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/METADATA +5 -5
  3084. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/RECORD +3089 -2877
  3085. homeassistant/components/backup/basic_websocket.py +0 -38
  3086. homeassistant/components/goalzero/translations/es-419.json +0 -9
  3087. homeassistant/helpers/backup.py +0 -93
  3088. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/WHEEL +0 -0
  3089. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/entry_points.txt +0 -0
  3090. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/licenses/LICENSE.md +0 -0
  3091. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  3092. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0b1.dist-info}/top_level.txt +0 -0
@@ -58,10 +58,9 @@
58
58
  "cycle_soaking": "Ciclo de remojo",
59
59
  "cycle_spinning": "Ciclo de centrifugado",
60
60
  "cycle_washing": "Ciclo de lavado",
61
- "delay_countdown": "Cuenta atr\u00e1s del retardo",
62
- "delay_paused": "Retardo pausado",
61
+ "delay_countdown": "Cuenta atr\u00e1s de la espera",
62
+ "delay_paused": "Espera en pausa",
63
63
  "demo_mode": "Modo de demostraci\u00f3n",
64
- "door_open": "Puerta abierta",
65
64
  "exception": "Excepci\u00f3n",
66
65
  "factory_diagnostic_mode": "Modo de diagn\u00f3stico de f\u00e1brica",
67
66
  "hard_stop_or_error": "Parada brusca o error",
@@ -72,8 +71,8 @@
72
71
  "running_postcycle": "Postciclo en marcha",
73
72
  "service_diagnostic_mode": "Modo de diagn\u00f3stico de servicio",
74
73
  "setting": "Configuraci\u00f3n",
75
- "smart_delay": "Retardo inteligente",
76
- "smart_grid_pause": "Retardo inteligente",
74
+ "smart_delay": "Espera inteligente",
75
+ "smart_grid_pause": "Espera inteligente",
77
76
  "standby": "En espera",
78
77
  "system_initialize": "Inicializaci\u00f3n del sistema"
79
78
  }
@@ -92,10 +91,9 @@
92
91
  "cycle_soaking": "Ciclo de remojo",
93
92
  "cycle_spinning": "Ciclo de centrifugado",
94
93
  "cycle_washing": "Ciclo de lavado",
95
- "delay_countdown": "Cuenta atr\u00e1s del retardo",
96
- "delay_paused": "Retardo pausado",
94
+ "delay_countdown": "Cuenta atr\u00e1s de la espera",
95
+ "delay_paused": "Espera en pausa",
97
96
  "demo_mode": "Modo de demostraci\u00f3n",
98
- "door_open": "Puerta abierta",
99
97
  "exception": "Excepci\u00f3n",
100
98
  "factory_diagnostic_mode": "Modo de diagn\u00f3stico de f\u00e1brica",
101
99
  "hard_stop_or_error": "Parada brusca o error",
@@ -106,8 +104,8 @@
106
104
  "running_postcycle": "Postciclo en marcha",
107
105
  "service_diagnostic_mode": "Modo de diagn\u00f3stico de servicio",
108
106
  "setting": "Configuraci\u00f3n",
109
- "smart_delay": "Retardo inteligente",
110
- "smart_grid_pause": "Retardo inteligente",
107
+ "smart_delay": "Espera inteligente",
108
+ "smart_grid_pause": "Espera inteligente",
111
109
  "standby": "En espera",
112
110
  "system_initialize": "Inicializaci\u00f3n del sistema"
113
111
  }
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "Viivituse loendur",
62
62
  "delay_paused": "Viivitus peatatud",
63
63
  "demo_mode": "Demore\u017eiim",
64
- "door_open": "Uks on avatud",
65
64
  "exception": "Erand",
66
65
  "factory_diagnostic_mode": "Tehase diagnostikare\u017eiim",
67
66
  "hard_stop_or_error": "T\u00f5rge v\u00f5i probleem",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "Viivituse loendur",
96
95
  "delay_paused": "Viivitus peatatud",
97
96
  "demo_mode": "Demore\u017eiim",
98
- "door_open": "Uks on avatud",
99
97
  "exception": "Erand",
100
98
  "factory_diagnostic_mode": "Tehase diagnostikare\u017eiim",
101
99
  "hard_stop_or_error": "T\u00f5rge v\u00f5i probleem",
@@ -28,7 +28,6 @@
28
28
  "cycle_spinning": "Essorage",
29
29
  "cycle_washing": "Lavage",
30
30
  "demo_mode": "Mode d\u00e9mo",
31
- "door_open": "Porte ouverte",
32
31
  "exception": "Exception",
33
32
  "life_test": "Test de dur\u00e9e de vie",
34
33
  "pause": "En pause",
@@ -54,7 +53,6 @@
54
53
  "cycle_spinning": "Essorage",
55
54
  "cycle_washing": "Lavage",
56
55
  "demo_mode": "Mode d\u00e9mo",
57
- "door_open": "Porte ouverte",
58
56
  "exception": "Exception",
59
57
  "life_test": "Test de dur\u00e9e de vie",
60
58
  "pause": "En pause",
@@ -3,7 +3,6 @@
3
3
  "sensor": {
4
4
  "dryer_state": {
5
5
  "state": {
6
- "door_open": "Doar iepen",
7
6
  "exception": "\u00dats\u00fbndering",
8
7
  "pause": "Pauze",
9
8
  "setting": "Ynstelling",
@@ -14,7 +13,6 @@
14
13
  },
15
14
  "washer_state": {
16
15
  "state": {
17
- "door_open": "Doar iepen",
18
16
  "exception": "\u00dats\u00fbndering",
19
17
  "pause": "Pauze",
20
18
  "setting": "Ynstelling",
@@ -38,7 +38,6 @@
38
38
  "delay_countdown": "Comhaireamh siar moillithe",
39
39
  "delay_paused": "Moill curtha ar sos",
40
40
  "demo_mode": "M\u00f3d taispe\u00e1na",
41
- "door_open": "Doras oscailte",
42
41
  "exception": "Eisceacht",
43
42
  "factory_diagnostic_mode": "M\u00f3d diagn\u00f3iseach monarchan",
44
43
  "hard_stop_or_error": "Stad crua n\u00f3 earr\u00e1id",
@@ -67,7 +66,6 @@
67
66
  "delay_countdown": "Comhaireamh siar moillithe",
68
67
  "delay_paused": "Moill curtha ar sos",
69
68
  "demo_mode": "M\u00f3d taispe\u00e1na",
70
- "door_open": "Doras oscailte",
71
69
  "exception": "Eisceacht",
72
70
  "factory_diagnostic_mode": "M\u00f3d diagn\u00f3iseach monarchan",
73
71
  "hard_stop_or_error": "Stad crua n\u00f3 earr\u00e1id",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "K\u00e9sleltet\u00e9s visszasz\u00e1ml\u00e1l\u00e1sa",
62
62
  "delay_paused": "K\u00e9sleltet\u00e9s sz\u00fcneteltetve",
63
63
  "demo_mode": "Dem\u00f3 m\u00f3d",
64
- "door_open": "Ajt\u00f3 nyitva",
65
64
  "exception": "Kiv\u00e9tel",
66
65
  "factory_diagnostic_mode": "Gy\u00e1ri diagnosztikai m\u00f3d",
67
66
  "hard_stop_or_error": "V\u00e9szle\u00e1ll\u00e1s vagy hiba",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "K\u00e9sleltet\u00e9s visszasz\u00e1ml\u00e1l\u00e1sa",
96
95
  "delay_paused": "K\u00e9sleltet\u00e9s sz\u00fcneteltetve",
97
96
  "demo_mode": "Dem\u00f3 m\u00f3d",
98
- "door_open": "Ajt\u00f3 nyitva",
99
97
  "exception": "Kiv\u00e9tel",
100
98
  "factory_diagnostic_mode": "Gy\u00e1ri diagnosztikai m\u00f3d",
101
99
  "hard_stop_or_error": "V\u00e9szle\u00e1ll\u00e1s vagy hiba",
@@ -68,7 +68,6 @@
68
68
  "delay_countdown": "Conto alla rovescia del ritardo",
69
69
  "delay_paused": "Ritardo in pausa",
70
70
  "demo_mode": "Modalit\u00e0 demo",
71
- "door_open": "Porta aperta",
72
71
  "exception": "Eccezione",
73
72
  "factory_diagnostic_mode": "Modalit\u00e0 diagnostica di fabbrica",
74
73
  "hard_stop_or_error": "Arresto forzato o errore",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "Atid\u0117ti atgalin\u012f skai\u010diavim\u0105",
62
62
  "delay_paused": "V\u0117lavimas sustabdytas",
63
63
  "demo_mode": "Demo re\u017eimas",
64
- "door_open": "Durys atidarytos",
65
64
  "exception": "I\u0161imtis",
66
65
  "factory_diagnostic_mode": "Gamyklinis diagnostikos re\u017eimas",
67
66
  "hard_stop_or_error": "Sunkus sustojimas arba klaida",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "Atid\u0117ti atgalin\u012f skai\u010diavim\u0105",
96
95
  "delay_paused": "V\u0117lavimas sustabdytas",
97
96
  "demo_mode": "Demo re\u017eimas",
98
- "door_open": "Durys atidarytos",
99
97
  "exception": "I\u0161imtis",
100
98
  "factory_diagnostic_mode": "Gamyklinis diagnostikos re\u017eimas",
101
99
  "hard_stop_or_error": "Sunkus sustojimas arba klaida",
@@ -34,7 +34,6 @@
34
34
  "sensor": {
35
35
  "dryer_state": {
36
36
  "state": {
37
- "door_open": "Deur open",
38
37
  "exception": "Uitzondering",
39
38
  "pause": "Gepauzeerd",
40
39
  "setting": "Instelling",
@@ -46,7 +45,6 @@
46
45
  },
47
46
  "washer_state": {
48
47
  "state": {
49
- "door_open": "Deur open",
50
48
  "exception": "Uitzondering",
51
49
  "pause": "Gepauzeerd",
52
50
  "setting": "Instelling",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "Diferir contagem decrescente",
62
62
  "delay_paused": "Diferimento em pausa",
63
63
  "demo_mode": "Modo de demonstra\u00e7\u00e3o",
64
- "door_open": "Porta aberta",
65
64
  "exception": "Exce\u00e7\u00e3o",
66
65
  "factory_diagnostic_mode": "Modo de diagn\u00f3stico de f\u00e1brica",
67
66
  "hard_stop_or_error": "Paragem for\u00e7ada ou erro",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "Diferir contagem decrescente",
96
95
  "delay_paused": "Diferimento em pausa",
97
96
  "demo_mode": "Modo de demonstra\u00e7\u00e3o",
98
- "door_open": "Porta aberta",
99
97
  "exception": "Exce\u00e7\u00e3o",
100
98
  "factory_diagnostic_mode": "Modo de diagn\u00f3stico de f\u00e1brica",
101
99
  "hard_stop_or_error": "Paragem for\u00e7ada ou erro",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "\u041e\u0442\u0441\u0440\u043e\u0447\u043a\u0430 \u0441\u0442\u0430\u0440\u0442\u0430",
62
62
  "delay_paused": "\u041e\u0442\u0441\u0440\u043e\u0447\u043a\u0430 \u0441\u0442\u0430\u0440\u0442\u0430 \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430",
63
63
  "demo_mode": "\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c",
64
- "door_open": "\u0414\u0432\u0435\u0440\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u0430",
65
64
  "exception": "\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435",
66
65
  "factory_diagnostic_mode": "\u0420\u0435\u0436\u0438\u043c \u0437\u0430\u0432\u043e\u0434\u0441\u043a\u043e\u0439 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0438",
67
66
  "hard_stop_or_error": "\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0430",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "\u041e\u0442\u0441\u0440\u043e\u0447\u043a\u0430 \u0441\u0442\u0430\u0440\u0442\u0430",
96
95
  "delay_paused": "\u041e\u0442\u0441\u0440\u043e\u0447\u043a\u0430 \u0441\u0442\u0430\u0440\u0442\u0430 \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430",
97
96
  "demo_mode": "\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c",
98
- "door_open": "\u0414\u0432\u0435\u0440\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u0430",
99
97
  "exception": "\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435",
100
98
  "factory_diagnostic_mode": "\u0420\u0435\u0436\u0438\u043c \u0437\u0430\u0432\u043e\u0434\u0441\u043a\u043e\u0439 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0438",
101
99
  "hard_stop_or_error": "\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0430",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "Odpo\u010d\u00edtavanie oneskorenia",
62
62
  "delay_paused": "Oneskorenie pozastaven\u00e9",
63
63
  "demo_mode": "Demo re\u017eim",
64
- "door_open": "Dvere otvoren\u00e9",
65
64
  "exception": "V\u00fdnimka",
66
65
  "factory_diagnostic_mode": "Tov\u00e1rensk\u00fd diagnostick\u00fd re\u017eim",
67
66
  "hard_stop_or_error": "Tvrd\u00e9 zastavenie alebo chyba",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "Odpo\u010d\u00edtavanie oneskorenia",
96
95
  "delay_paused": "Oneskorenie pozastaven\u00e9",
97
96
  "demo_mode": "Demo re\u017eim",
98
- "door_open": "Dvere otvoren\u00e9",
99
97
  "exception": "V\u00fdnimka",
100
98
  "factory_diagnostic_mode": "Tov\u00e1rensk\u00fd diagnostick\u00fd re\u017eim",
101
99
  "hard_stop_or_error": "Tvrd\u00e9 zastavenie alebo chyba",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "F\u00f6rdr\u00f6jning nedr\u00e4kning",
62
62
  "delay_paused": "F\u00f6rdr\u00f6jning pausad",
63
63
  "demo_mode": "Demol\u00e4ge",
64
- "door_open": "D\u00f6rr \u00f6ppen",
65
64
  "exception": "Undantag",
66
65
  "factory_diagnostic_mode": "Fabriksdiagnostiskt l\u00e4ge",
67
66
  "hard_stop_or_error": "H\u00e5rt stopp eller fel",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "F\u00f6rdr\u00f6jning nedr\u00e4kning",
96
95
  "delay_paused": "F\u00f6rdr\u00f6jning pausad",
97
96
  "demo_mode": "Demol\u00e4ge",
98
- "door_open": "D\u00f6rr \u00f6ppen",
99
97
  "exception": "Undantag",
100
98
  "factory_diagnostic_mode": "Fabriksdiagnostiskt l\u00e4ge",
101
99
  "hard_stop_or_error": "H\u00e5rt stopp eller fel",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "\u5ef6\u65f6\u5012\u8ba1\u65f6",
62
62
  "delay_paused": "\u5ef6\u65f6\u6682\u505c",
63
63
  "demo_mode": "\u6f14\u793a\u6a21\u5f0f",
64
- "door_open": "\u95e8\u6253\u5f00",
65
64
  "exception": "\u5f02\u5e38",
66
65
  "factory_diagnostic_mode": "\u5de5\u5382\u8bca\u65ad\u6a21\u5f0f",
67
66
  "hard_stop_or_error": "\u786c\u505c\u6b62\u6216\u9519\u8bef",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "\u5ef6\u65f6\u5012\u8ba1\u65f6",
96
95
  "delay_paused": "\u5ef6\u65f6\u6682\u505c",
97
96
  "demo_mode": "\u6f14\u793a\u6a21\u5f0f",
98
- "door_open": "\u95e8\u6253\u5f00",
99
97
  "exception": "\u5f02\u5e38",
100
98
  "factory_diagnostic_mode": "\u5de5\u5382\u8bca\u65ad\u6a21\u5f0f",
101
99
  "hard_stop_or_error": "\u786c\u505c\u6b62\u6216\u9519\u8bef",
@@ -61,7 +61,6 @@
61
61
  "delay_countdown": "\u5ef6\u9072\u5012\u6578",
62
62
  "delay_paused": "\u5ef6\u9072\u66ab\u505c",
63
63
  "demo_mode": "\u5c55\u793a\u6a21\u5f0f",
64
- "door_open": "\u69fd\u9580\u958b\u555f",
65
64
  "exception": "\u4f8b\u5916",
66
65
  "factory_diagnostic_mode": "\u5de5\u5ee0\u8a3a\u65b7\u6a21\u5f0f",
67
66
  "hard_stop_or_error": "\u9000\u51fa\u6216\u932f\u8aa4",
@@ -95,7 +94,6 @@
95
94
  "delay_countdown": "\u5ef6\u9072\u5012\u6578",
96
95
  "delay_paused": "\u5ef6\u9072\u66ab\u505c",
97
96
  "demo_mode": "\u5c55\u793a\u6a21\u5f0f",
98
- "door_open": "\u69fd\u9580\u958b\u555f",
99
97
  "exception": "\u4f8b\u5916",
100
98
  "factory_diagnostic_mode": "\u5de5\u5ee0\u8a3a\u65b7\u6a21\u5f0f",
101
99
  "hard_stop_or_error": "\u9000\u51fa\u6216\u932f\u8aa4",
@@ -52,7 +52,7 @@
52
52
  "name": "Status",
53
53
  "state": {
54
54
  "add_period": "Add period",
55
- "auto_renew_period": "Auto renew period",
55
+ "auto_renew_period": "Auto-renew period",
56
56
  "inactive": "Inactive",
57
57
  "ok": "Active",
58
58
  "active": "Active",
@@ -29,8 +29,6 @@ PLATFORMS = [Platform.BINARY_SENSOR, Platform.SENSOR]
29
29
 
30
30
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
31
31
  """Set up wiffi from a config entry, config_entry contains data from config entry database."""
32
- if not entry.update_listeners:
33
- entry.add_update_listener(async_update_options)
34
32
 
35
33
  # create api object
36
34
  api = WiffiIntegrationApi(hass)
@@ -53,11 +51,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
53
51
  return True
54
52
 
55
53
 
56
- async def async_update_options(hass: HomeAssistant, entry: ConfigEntry) -> None:
57
- """Update options."""
58
- await hass.config_entries.async_reload(entry.entry_id)
59
-
60
-
61
54
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
62
55
  """Unload a config entry."""
63
56
  api: WiffiIntegrationApi = hass.data[DOMAIN][entry.entry_id]
@@ -15,7 +15,7 @@ from homeassistant.config_entries import (
15
15
  ConfigEntry,
16
16
  ConfigFlow,
17
17
  ConfigFlowResult,
18
- OptionsFlow,
18
+ OptionsFlowWithReload,
19
19
  )
20
20
  from homeassistant.const import CONF_PORT, CONF_TIMEOUT
21
21
  from homeassistant.core import callback
@@ -76,7 +76,7 @@ class WiffiFlowHandler(ConfigFlow, domain=DOMAIN):
76
76
  )
77
77
 
78
78
 
79
- class OptionsFlowHandler(OptionsFlow):
79
+ class OptionsFlowHandler(OptionsFlowWithReload):
80
80
  """Wiffi server setup option flow."""
81
81
 
82
82
  async def async_step_init(
@@ -4,7 +4,6 @@ from __future__ import annotations
4
4
 
5
5
  import calendar
6
6
  import locale
7
- import re
8
7
  from typing import Any
9
8
 
10
9
  import voluptuous as vol
@@ -26,7 +25,7 @@ def wilight_trigger(value: Any) -> str | None:
26
25
  if (step == 2) & isinstance(value, str):
27
26
  step = 3
28
27
  err_desc = "String should only contain 8 decimals character"
29
- if re.search(r"^([0-9]{8})$", value) is not None:
28
+ if len(value) == 8 and value.isdigit():
30
29
  step = 4
31
30
  err_desc = "First 3 character should be less than 128"
32
31
  result_128 = int(value[0:3]) < 128
@@ -37,6 +37,7 @@ _LOGGER = logging.getLogger(__name__)
37
37
 
38
38
  PLATFORMS = [
39
39
  Platform.BINARY_SENSOR,
40
+ Platform.FAN,
40
41
  Platform.LIGHT,
41
42
  Platform.NUMBER,
42
43
  Platform.SENSOR,
@@ -124,7 +124,7 @@ class WizConfigFlow(ConfigFlow, domain=DOMAIN):
124
124
  data={CONF_HOST: device.ip_address},
125
125
  )
126
126
 
127
- current_unique_ids = self._async_current_ids()
127
+ current_unique_ids = self._async_current_ids(include_ignore=False)
128
128
  current_hosts = {
129
129
  entry.data[CONF_HOST]
130
130
  for entry in self._async_current_entries(include_ignore=False)
@@ -0,0 +1,139 @@
1
+ """WiZ integration fan platform."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import math
6
+ from typing import Any, ClassVar
7
+
8
+ from pywizlight.bulblibrary import BulbType, Features
9
+
10
+ from homeassistant.components.fan import (
11
+ DIRECTION_FORWARD,
12
+ DIRECTION_REVERSE,
13
+ FanEntity,
14
+ FanEntityFeature,
15
+ )
16
+ from homeassistant.core import HomeAssistant, callback
17
+ from homeassistant.helpers.entity import ToggleEntity
18
+ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
19
+ from homeassistant.util.percentage import (
20
+ percentage_to_ranged_value,
21
+ ranged_value_to_percentage,
22
+ )
23
+
24
+ from . import WizConfigEntry
25
+ from .entity import WizEntity
26
+ from .models import WizData
27
+
28
+ PRESET_MODE_BREEZE = "breeze"
29
+
30
+
31
+ async def async_setup_entry(
32
+ hass: HomeAssistant,
33
+ entry: WizConfigEntry,
34
+ async_add_entities: AddConfigEntryEntitiesCallback,
35
+ ) -> None:
36
+ """Set up the WiZ Platform from config_flow."""
37
+ if entry.runtime_data.bulb.bulbtype.features.fan:
38
+ async_add_entities([WizFanEntity(entry.runtime_data, entry.title)])
39
+
40
+
41
+ class WizFanEntity(WizEntity, FanEntity):
42
+ """Representation of WiZ Light bulb."""
43
+
44
+ _attr_name = None
45
+
46
+ # We want the implementation of is_on to be the same as in ToggleEntity,
47
+ # but it is being overridden in FanEntity, so we need to restore it here.
48
+ is_on: ClassVar = ToggleEntity.is_on
49
+
50
+ def __init__(self, wiz_data: WizData, name: str) -> None:
51
+ """Initialize a WiZ fan."""
52
+ super().__init__(wiz_data, name)
53
+ bulb_type: BulbType = self._device.bulbtype
54
+ features: Features = bulb_type.features
55
+
56
+ supported_features = (
57
+ FanEntityFeature.TURN_ON
58
+ | FanEntityFeature.TURN_OFF
59
+ | FanEntityFeature.SET_SPEED
60
+ )
61
+ if features.fan_reverse:
62
+ supported_features |= FanEntityFeature.DIRECTION
63
+ if features.fan_breeze_mode:
64
+ supported_features |= FanEntityFeature.PRESET_MODE
65
+ self._attr_preset_modes = [PRESET_MODE_BREEZE]
66
+
67
+ self._attr_supported_features = supported_features
68
+ self._attr_speed_count = bulb_type.fan_speed_range
69
+
70
+ self._async_update_attrs()
71
+
72
+ @callback
73
+ def _async_update_attrs(self) -> None:
74
+ """Handle updating _attr values."""
75
+ state = self._device.state
76
+
77
+ self._attr_is_on = state.get_fan_state() > 0
78
+ self._attr_percentage = ranged_value_to_percentage(
79
+ (1, self.speed_count), state.get_fan_speed()
80
+ )
81
+ if FanEntityFeature.PRESET_MODE in self.supported_features:
82
+ fan_mode = state.get_fan_mode()
83
+ self._attr_preset_mode = PRESET_MODE_BREEZE if fan_mode == 2 else None
84
+ if FanEntityFeature.DIRECTION in self.supported_features:
85
+ fan_reverse = state.get_fan_reverse()
86
+ self._attr_current_direction = None
87
+ if fan_reverse == 0:
88
+ self._attr_current_direction = DIRECTION_FORWARD
89
+ elif fan_reverse == 1:
90
+ self._attr_current_direction = DIRECTION_REVERSE
91
+
92
+ async def async_set_preset_mode(self, preset_mode: str) -> None:
93
+ """Set the preset mode of the fan."""
94
+ # preset_mode == PRESET_MODE_BREEZE
95
+ await self._device.fan_set_state(mode=2)
96
+ await self.coordinator.async_request_refresh()
97
+
98
+ async def async_set_percentage(self, percentage: int) -> None:
99
+ """Set the speed percentage of the fan."""
100
+ if percentage == 0:
101
+ await self.async_turn_off()
102
+ return
103
+
104
+ speed = math.ceil(percentage_to_ranged_value((1, self.speed_count), percentage))
105
+ await self._device.fan_set_state(mode=1, speed=speed)
106
+ await self.coordinator.async_request_refresh()
107
+
108
+ async def async_turn_on(
109
+ self,
110
+ percentage: int | None = None,
111
+ preset_mode: str | None = None,
112
+ **kwargs: Any,
113
+ ) -> None:
114
+ """Turn on the fan."""
115
+ mode: int | None = None
116
+ speed: int | None = None
117
+ if preset_mode is not None:
118
+ self._valid_preset_mode_or_raise(preset_mode)
119
+ if preset_mode == PRESET_MODE_BREEZE:
120
+ mode = 2
121
+ if percentage is not None:
122
+ speed = math.ceil(
123
+ percentage_to_ranged_value((1, self.speed_count), percentage)
124
+ )
125
+ if mode is None:
126
+ mode = 1
127
+ await self._device.fan_turn_on(mode=mode, speed=speed)
128
+ await self.coordinator.async_request_refresh()
129
+
130
+ async def async_turn_off(self, **kwargs: Any) -> None:
131
+ """Turn off the fan."""
132
+ await self._device.fan_turn_off(**kwargs)
133
+ await self.coordinator.async_request_refresh()
134
+
135
+ async def async_set_direction(self, direction: str) -> None:
136
+ """Set the direction of the fan."""
137
+ reverse = 1 if direction == DIRECTION_REVERSE else 0
138
+ await self._device.fan_set_state(reverse=reverse)
139
+ await self.coordinator.async_request_refresh()
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "domain": "wiz",
3
3
  "name": "WiZ",
4
- "codeowners": ["@sbidy"],
4
+ "codeowners": ["@sbidy", "@arturpragacz"],
5
5
  "config_flow": true,
6
6
  "dependencies": ["network"],
7
7
  "dhcp": [
@@ -48,9 +48,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: WLEDConfigEntry) -> bool
48
48
  # Set up all platforms for this device/entry.
49
49
  await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
50
50
 
51
- # Reload entry when its updated.
52
- entry.async_on_unload(entry.add_update_listener(async_reload_entry))
53
-
54
51
  return True
55
52
 
56
53
 
@@ -65,8 +62,3 @@ async def async_unload_entry(hass: HomeAssistant, entry: WLEDConfigEntry) -> boo
65
62
  coordinator.unsub()
66
63
 
67
64
  return unload_ok
68
-
69
-
70
- async def async_reload_entry(hass: HomeAssistant, entry: ConfigEntry) -> None:
71
- """Reload the config entry when it changed."""
72
- await hass.config_entries.async_reload(entry.entry_id)
@@ -12,7 +12,7 @@ from homeassistant.config_entries import (
12
12
  ConfigEntry,
13
13
  ConfigFlow,
14
14
  ConfigFlowResult,
15
- OptionsFlow,
15
+ OptionsFlowWithReload,
16
16
  )
17
17
  from homeassistant.const import CONF_HOST, CONF_MAC
18
18
  from homeassistant.core import callback
@@ -120,7 +120,7 @@ class WLEDFlowHandler(ConfigFlow, domain=DOMAIN):
120
120
  return await wled.update()
121
121
 
122
122
 
123
- class WLEDOptionsFlowHandler(OptionsFlow):
123
+ class WLEDOptionsFlowHandler(OptionsFlowWithReload):
124
124
  """Handle WLED options."""
125
125
 
126
126
  async def async_step_init(
@@ -28,7 +28,7 @@
28
28
  "step": {
29
29
  "init": {
30
30
  "data": {
31
- "keep_master_light": "Keep main light, even with 1 LED segment."
31
+ "keep_master_light": "Add 'Main' control even with single LED segment"
32
32
  }
33
33
  }
34
34
  }
@@ -31,7 +31,7 @@
31
31
  "live_override": {
32
32
  "name": "Sostituzione in tempo reale",
33
33
  "state": {
34
- "0": "Spento",
34
+ "0": "Off",
35
35
  "1": "On",
36
36
  "2": "Fino al riavvio del dispositivo"
37
37
  }
@@ -35,7 +35,7 @@
35
35
  "aktiviert": "Attivato",
36
36
  "at_abschaltung": "Spegnimento OT",
37
37
  "at_frostschutz": "Protezione antigelo OT",
38
- "aus": "Spento",
38
+ "aus": "Off",
39
39
  "auto": "Automatico",
40
40
  "auto_off_cool": "Raffreddamento automatico disattivo",
41
41
  "auto_on_cool": "Raffreddamento automatico attivo",
@@ -94,16 +94,10 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
94
94
  new_options[CONF_LANGUAGE] = default_language
95
95
  hass.config_entries.async_update_entry(entry, options=new_options)
96
96
 
97
- entry.async_on_unload(entry.add_update_listener(async_update_listener))
98
97
  await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
99
98
  return True
100
99
 
101
100
 
102
- async def async_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None:
103
- """Update listener for options."""
104
- await hass.config_entries.async_reload(entry.entry_id)
105
-
106
-
107
101
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
108
102
  """Unload Workday config entry."""
109
103
 
@@ -12,7 +12,7 @@ from homeassistant.config_entries import (
12
12
  ConfigEntry,
13
13
  ConfigFlow,
14
14
  ConfigFlowResult,
15
- OptionsFlow,
15
+ OptionsFlowWithReload,
16
16
  )
17
17
  from homeassistant.const import CONF_COUNTRY, CONF_LANGUAGE, CONF_NAME
18
18
  from homeassistant.core import callback
@@ -311,7 +311,7 @@ class WorkdayConfigFlow(ConfigFlow, domain=DOMAIN):
311
311
  )
312
312
 
313
313
 
314
- class WorkdayOptionsFlowHandler(OptionsFlow):
314
+ class WorkdayOptionsFlowHandler(OptionsFlowWithReload):
315
315
  """Handle Workday options."""
316
316
 
317
317
  async def async_step_init(
@@ -7,5 +7,5 @@
7
7
  "iot_class": "local_polling",
8
8
  "loggers": ["holidays"],
9
9
  "quality_scale": "internal",
10
- "requirements": ["holidays==0.75"]
10
+ "requirements": ["holidays==0.77"]
11
11
  }