homeassistant 2025.7.4__py3-none-any.whl → 2025.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3886) 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/adguard/translations/ga.json +11 -0
  7. homeassistant/components/aemet/translations/de.json +1 -1
  8. homeassistant/components/ai_task/__init__.py +34 -2
  9. homeassistant/components/ai_task/const.py +6 -0
  10. homeassistant/components/ai_task/entity.py +7 -4
  11. homeassistant/components/ai_task/manifest.json +2 -1
  12. homeassistant/components/ai_task/services.yaml +17 -3
  13. homeassistant/components/ai_task/strings.json +8 -0
  14. homeassistant/components/ai_task/task.py +100 -6
  15. homeassistant/components/ai_task/translations/bg.json +11 -1
  16. homeassistant/components/ai_task/translations/cs.json +8 -0
  17. homeassistant/components/ai_task/translations/de.json +8 -0
  18. homeassistant/components/ai_task/translations/el.json +8 -0
  19. homeassistant/components/ai_task/translations/en-GB.json +8 -0
  20. homeassistant/components/ai_task/translations/en.json +8 -0
  21. homeassistant/components/ai_task/translations/es.json +8 -0
  22. homeassistant/components/ai_task/translations/et.json +8 -0
  23. homeassistant/components/ai_task/translations/fr.json +7 -0
  24. homeassistant/components/ai_task/translations/ga.json +8 -0
  25. homeassistant/components/ai_task/translations/ja.json +8 -0
  26. homeassistant/components/ai_task/translations/lt.json +8 -0
  27. homeassistant/components/ai_task/translations/nl.json +3 -0
  28. homeassistant/components/ai_task/translations/pt.json +8 -0
  29. homeassistant/components/ai_task/translations/ru.json +7 -0
  30. homeassistant/components/ai_task/translations/sk.json +8 -0
  31. homeassistant/components/ai_task/translations/zh-Hans.json +8 -0
  32. homeassistant/components/ai_task/translations/zh-Hant.json +8 -0
  33. homeassistant/components/airgradient/manifest.json +1 -0
  34. homeassistant/components/airgradient/quality_scale.yaml +14 -18
  35. homeassistant/components/airgradient/translations/ga.json +42 -0
  36. homeassistant/components/airgradient/translations/it.json +3 -3
  37. homeassistant/components/airly/translations/de.json +1 -1
  38. homeassistant/components/airnow/__init__.py +0 -8
  39. homeassistant/components/airnow/config_flow.py +2 -2
  40. homeassistant/components/airnow/translations/de.json +1 -1
  41. homeassistant/components/airos/__init__.py +42 -0
  42. homeassistant/components/airos/config_flow.py +82 -0
  43. homeassistant/components/airos/const.py +9 -0
  44. homeassistant/components/airos/coordinator.py +70 -0
  45. homeassistant/components/airos/diagnostics.py +33 -0
  46. homeassistant/components/airos/entity.py +36 -0
  47. homeassistant/components/airos/manifest.json +10 -0
  48. homeassistant/components/airos/quality_scale.yaml +72 -0
  49. homeassistant/components/airos/sensor.py +145 -0
  50. homeassistant/components/airos/strings.json +80 -0
  51. homeassistant/components/airos/translations/bg.json +68 -0
  52. homeassistant/components/airos/translations/cs.json +80 -0
  53. homeassistant/components/airos/translations/de.json +80 -0
  54. homeassistant/components/airos/translations/el.json +29 -0
  55. homeassistant/components/airos/translations/en-GB.json +80 -0
  56. homeassistant/components/airos/translations/en.json +80 -0
  57. homeassistant/components/airos/translations/es.json +80 -0
  58. homeassistant/components/airos/translations/et.json +80 -0
  59. homeassistant/components/airos/translations/ga.json +63 -0
  60. homeassistant/components/airos/translations/he.json +29 -0
  61. homeassistant/components/airos/translations/ko.json +13 -0
  62. homeassistant/components/airos/translations/nl.json +10 -0
  63. homeassistant/components/airos/translations/sk.json +80 -0
  64. homeassistant/components/airos/translations/sv.json +52 -0
  65. homeassistant/components/airos/translations/zh-Hans.json +80 -0
  66. homeassistant/components/airos/translations/zh-Hant.json +80 -0
  67. homeassistant/components/airq/const.py +0 -1
  68. homeassistant/components/airq/icons.json +0 -3
  69. homeassistant/components/airq/sensor.py +3 -5
  70. homeassistant/components/airq/strings.json +0 -3
  71. homeassistant/components/airq/translations/bg.json +0 -3
  72. homeassistant/components/airq/translations/ca.json +0 -3
  73. homeassistant/components/airq/translations/cs.json +0 -3
  74. homeassistant/components/airq/translations/de.json +0 -3
  75. homeassistant/components/airq/translations/el.json +0 -3
  76. homeassistant/components/airq/translations/en-GB.json +0 -3
  77. homeassistant/components/airq/translations/en.json +0 -3
  78. homeassistant/components/airq/translations/es.json +0 -3
  79. homeassistant/components/airq/translations/et.json +0 -3
  80. homeassistant/components/airq/translations/fi.json +0 -3
  81. homeassistant/components/airq/translations/fr.json +0 -3
  82. homeassistant/components/airq/translations/ga.json +17 -0
  83. homeassistant/components/airq/translations/hu.json +0 -3
  84. homeassistant/components/airq/translations/id.json +0 -3
  85. homeassistant/components/airq/translations/it.json +0 -3
  86. homeassistant/components/airq/translations/ja.json +0 -3
  87. homeassistant/components/airq/translations/ko.json +0 -3
  88. homeassistant/components/airq/translations/lt.json +0 -3
  89. homeassistant/components/airq/translations/nl.json +0 -3
  90. homeassistant/components/airq/translations/pl.json +0 -3
  91. homeassistant/components/airq/translations/pt-BR.json +0 -3
  92. homeassistant/components/airq/translations/pt.json +0 -3
  93. homeassistant/components/airq/translations/ro.json +0 -3
  94. homeassistant/components/airq/translations/ru.json +0 -3
  95. homeassistant/components/airq/translations/sk.json +0 -3
  96. homeassistant/components/airq/translations/sv.json +0 -3
  97. homeassistant/components/airq/translations/tr.json +0 -3
  98. homeassistant/components/airq/translations/uk.json +0 -3
  99. homeassistant/components/airq/translations/zh-Hans.json +0 -3
  100. homeassistant/components/airq/translations/zh-Hant.json +0 -3
  101. homeassistant/components/airthings/__init__.py +2 -5
  102. homeassistant/components/airthings/config_flow.py +2 -3
  103. homeassistant/components/airthings/coordinator.py +10 -1
  104. homeassistant/components/airthings/sensor.py +2 -2
  105. homeassistant/components/airtouch4/translations/ga.json +11 -0
  106. homeassistant/components/airtouch5/translations/ga.json +16 -0
  107. homeassistant/components/airtouch5/translations/ko.json +11 -0
  108. homeassistant/components/airvisual_pro/translations/ga.json +11 -0
  109. homeassistant/components/airzone/translations/ga.json +6 -0
  110. homeassistant/components/airzone/translations/it.json +1 -1
  111. homeassistant/components/airzone/translations/ko.json +9 -0
  112. homeassistant/components/airzone_cloud/manifest.json +1 -1
  113. homeassistant/components/airzone_cloud/translations/ga.json +4 -0
  114. homeassistant/components/airzone_cloud/translations/it.json +2 -2
  115. homeassistant/components/airzone_cloud/translations/ko.json +13 -0
  116. homeassistant/components/alarmdecoder/translations/ga.json +10 -0
  117. homeassistant/components/alert/translations/he.json +1 -1
  118. homeassistant/components/alexa_devices/__init__.py +15 -6
  119. homeassistant/components/alexa_devices/config_flow.py +75 -9
  120. homeassistant/components/alexa_devices/coordinator.py +22 -5
  121. homeassistant/components/alexa_devices/icons.json +8 -0
  122. homeassistant/components/alexa_devices/manifest.json +2 -2
  123. homeassistant/components/alexa_devices/quality_scale.yaml +14 -16
  124. homeassistant/components/alexa_devices/services.py +121 -0
  125. homeassistant/components/alexa_devices/services.yaml +504 -0
  126. homeassistant/components/alexa_devices/strings.json +536 -3
  127. homeassistant/components/alexa_devices/translations/bg.json +35 -0
  128. homeassistant/components/alexa_devices/translations/ca.json +6 -0
  129. homeassistant/components/alexa_devices/translations/cs.json +536 -3
  130. homeassistant/components/alexa_devices/translations/de.json +536 -3
  131. homeassistant/components/alexa_devices/translations/el.json +15 -3
  132. homeassistant/components/alexa_devices/translations/en-GB.json +536 -3
  133. homeassistant/components/alexa_devices/translations/en.json +536 -3
  134. homeassistant/components/alexa_devices/translations/es.json +233 -3
  135. homeassistant/components/alexa_devices/translations/et.json +536 -3
  136. homeassistant/components/alexa_devices/translations/ga.json +517 -3
  137. homeassistant/components/alexa_devices/translations/he.json +6 -0
  138. homeassistant/components/alexa_devices/translations/hu.json +0 -8
  139. homeassistant/components/alexa_devices/translations/it.json +0 -8
  140. homeassistant/components/alexa_devices/translations/ja.json +14 -2
  141. homeassistant/components/alexa_devices/translations/ko.json +18 -0
  142. homeassistant/components/alexa_devices/translations/lt.json +14 -2
  143. homeassistant/components/alexa_devices/translations/mk.json +5 -1
  144. homeassistant/components/alexa_devices/translations/nl.json +19 -6
  145. homeassistant/components/alexa_devices/translations/pt.json +14 -2
  146. homeassistant/components/alexa_devices/translations/ru.json +20 -0
  147. homeassistant/components/alexa_devices/translations/sk.json +536 -3
  148. homeassistant/components/alexa_devices/translations/sv.json +36 -6
  149. homeassistant/components/alexa_devices/translations/zh-Hans.json +215 -3
  150. homeassistant/components/alexa_devices/translations/zh-Hant.json +536 -3
  151. homeassistant/components/alexa_devices/utils.py +2 -2
  152. homeassistant/components/altruist/translations/ko.json +11 -0
  153. homeassistant/components/amberelectric/__init__.py +12 -1
  154. homeassistant/components/amberelectric/const.py +11 -1
  155. homeassistant/components/amberelectric/coordinator.py +2 -23
  156. homeassistant/components/amberelectric/helpers.py +25 -0
  157. homeassistant/components/amberelectric/icons.json +5 -0
  158. homeassistant/components/amberelectric/sensor.py +2 -6
  159. homeassistant/components/amberelectric/services.py +121 -0
  160. homeassistant/components/amberelectric/services.yaml +16 -0
  161. homeassistant/components/amberelectric/strings.json +46 -10
  162. homeassistant/components/amberelectric/translations/cs.json +36 -0
  163. homeassistant/components/amberelectric/translations/de.json +37 -1
  164. homeassistant/components/amberelectric/translations/el.json +36 -0
  165. homeassistant/components/amberelectric/translations/en-GB.json +36 -0
  166. homeassistant/components/amberelectric/translations/en.json +36 -0
  167. homeassistant/components/amberelectric/translations/es.json +36 -0
  168. homeassistant/components/amberelectric/translations/et.json +36 -0
  169. homeassistant/components/amberelectric/translations/ga.json +36 -0
  170. homeassistant/components/amberelectric/translations/lt.json +36 -0
  171. homeassistant/components/amberelectric/translations/mk.json +19 -1
  172. homeassistant/components/amberelectric/translations/nb.json +14 -0
  173. homeassistant/components/amberelectric/translations/sk.json +36 -0
  174. homeassistant/components/amberelectric/translations/zh-Hans.json +36 -0
  175. homeassistant/components/amberelectric/translations/zh-Hant.json +36 -0
  176. homeassistant/components/ambient_network/translations/ga.json +84 -0
  177. homeassistant/components/ambient_station/translations/ga.json +12 -0
  178. homeassistant/components/amcrest/manifest.json +1 -1
  179. homeassistant/components/analytics/__init__.py +3 -0
  180. homeassistant/components/analytics/analytics.py +86 -2
  181. homeassistant/components/analytics/http.py +27 -0
  182. homeassistant/components/analytics/manifest.json +1 -1
  183. homeassistant/components/analytics_insights/__init__.py +0 -8
  184. homeassistant/components/analytics_insights/config_flow.py +6 -2
  185. homeassistant/components/analytics_insights/translations/ga.json +15 -4
  186. homeassistant/components/androidtv/media_player.py +1 -1
  187. homeassistant/components/androidtv_remote/__init__.py +6 -21
  188. homeassistant/components/androidtv_remote/config_flow.py +35 -18
  189. homeassistant/components/androidtv_remote/diagnostics.py +1 -1
  190. homeassistant/components/androidtv_remote/entity.py +4 -2
  191. homeassistant/components/androidtv_remote/helpers.py +4 -2
  192. homeassistant/components/androidtv_remote/manifest.json +1 -1
  193. homeassistant/components/androidtv_remote/media_player.py +10 -10
  194. homeassistant/components/androidtv_remote/remote.py +3 -2
  195. homeassistant/components/androidtv_remote/strings.json +26 -3
  196. homeassistant/components/androidtv_remote/translations/bg.json +7 -1
  197. homeassistant/components/androidtv_remote/translations/ca.json +7 -1
  198. homeassistant/components/androidtv_remote/translations/cs.json +25 -2
  199. homeassistant/components/androidtv_remote/translations/de.json +25 -2
  200. homeassistant/components/androidtv_remote/translations/el.json +25 -2
  201. homeassistant/components/androidtv_remote/translations/en-GB.json +25 -2
  202. homeassistant/components/androidtv_remote/translations/en.json +25 -2
  203. homeassistant/components/androidtv_remote/translations/es.json +25 -2
  204. homeassistant/components/androidtv_remote/translations/et.json +25 -2
  205. homeassistant/components/androidtv_remote/translations/ga.json +33 -1
  206. homeassistant/components/androidtv_remote/translations/he.json +25 -2
  207. homeassistant/components/androidtv_remote/translations/ja.json +19 -1
  208. homeassistant/components/androidtv_remote/translations/ko.json +5 -0
  209. homeassistant/components/androidtv_remote/translations/lt.json +25 -2
  210. homeassistant/components/androidtv_remote/translations/nl.json +7 -1
  211. homeassistant/components/androidtv_remote/translations/pt.json +25 -2
  212. homeassistant/components/androidtv_remote/translations/sk.json +25 -2
  213. homeassistant/components/androidtv_remote/translations/sl.json +2 -1
  214. homeassistant/components/androidtv_remote/translations/sv.json +7 -1
  215. homeassistant/components/androidtv_remote/translations/zh-Hans.json +25 -2
  216. homeassistant/components/androidtv_remote/translations/zh-Hant.json +25 -2
  217. homeassistant/components/anova/translations/ga.json +27 -0
  218. homeassistant/components/anova/translations/he.json +1 -1
  219. homeassistant/components/anthemav/strings.json +1 -1
  220. homeassistant/components/anthropic/__init__.py +87 -11
  221. homeassistant/components/anthropic/config_flow.py +1 -1
  222. homeassistant/components/anthropic/const.py +2 -2
  223. homeassistant/components/anthropic/conversation.py +9 -405
  224. homeassistant/components/anthropic/entity.py +395 -0
  225. homeassistant/components/anthropic/strings.json +1 -1
  226. homeassistant/components/anthropic/translations/ga.json +3 -1
  227. homeassistant/components/anthropic/translations/ko.json +12 -1
  228. homeassistant/components/aosmith/translations/ga.json +19 -0
  229. homeassistant/components/apcupsd/translations/es.json +3 -3
  230. homeassistant/components/apcupsd/translations/ga.json +205 -0
  231. homeassistant/components/apple_tv/manifest.json +1 -1
  232. homeassistant/components/apple_tv/media_player.py +2 -2
  233. homeassistant/components/apple_tv/translations/ga.json +10 -0
  234. homeassistant/components/aprilaire/translations/ga.json +35 -0
  235. homeassistant/components/aprilaire/translations/he.json +4 -4
  236. homeassistant/components/aprilaire/translations/it.json +14 -14
  237. homeassistant/components/aprilaire/translations/ko.json +10 -0
  238. homeassistant/components/apsystems/translations/ga.json +29 -0
  239. homeassistant/components/apsystems/translations/ko.json +9 -0
  240. homeassistant/components/aquacell/translations/ko.json +1 -1
  241. homeassistant/components/aquacell/translations/nl.json +3 -0
  242. homeassistant/components/aranet/translations/ga.json +5 -0
  243. homeassistant/components/arcam_fmj/manifest.json +1 -1
  244. homeassistant/components/arve/translations/ga.json +20 -0
  245. homeassistant/components/aseko_pool_live/translations/ko.json +6 -0
  246. homeassistant/components/assist_pipeline/__init__.py +0 -4
  247. homeassistant/components/assist_pipeline/const.py +0 -1
  248. homeassistant/components/assist_pipeline/pipeline.py +1 -46
  249. homeassistant/components/assist_satellite/__init__.py +4 -4
  250. homeassistant/components/assist_satellite/services.yaml +4 -3
  251. homeassistant/components/assist_satellite/translations/he.json +1 -1
  252. homeassistant/components/assist_satellite/translations/sl.json +7 -0
  253. homeassistant/components/asuswrt/router.py +12 -3
  254. homeassistant/components/august/manifest.json +1 -1
  255. homeassistant/components/august/translations/ga.json +9 -0
  256. homeassistant/components/aurora_abb_powerone/translations/ga.json +24 -0
  257. homeassistant/components/autarco/translations/ko.json +17 -0
  258. homeassistant/components/automation/translations/it.json +2 -2
  259. homeassistant/components/awair/const.py +1 -0
  260. homeassistant/components/awair/sensor.py +10 -0
  261. homeassistant/components/awair/strings.json +3 -0
  262. homeassistant/components/awair/translations/cs.json +3 -0
  263. homeassistant/components/awair/translations/de.json +3 -0
  264. homeassistant/components/awair/translations/el.json +3 -0
  265. homeassistant/components/awair/translations/en-GB.json +3 -0
  266. homeassistant/components/awair/translations/en.json +3 -0
  267. homeassistant/components/awair/translations/es.json +3 -0
  268. homeassistant/components/awair/translations/et.json +3 -0
  269. homeassistant/components/awair/translations/ga.json +9 -1
  270. homeassistant/components/awair/translations/ja.json +3 -0
  271. homeassistant/components/awair/translations/lt.json +3 -0
  272. homeassistant/components/awair/translations/mk.json +3 -0
  273. homeassistant/components/awair/translations/nl.json +3 -0
  274. homeassistant/components/awair/translations/pt.json +3 -0
  275. homeassistant/components/awair/translations/ru.json +3 -0
  276. homeassistant/components/awair/translations/sk.json +3 -0
  277. homeassistant/components/awair/translations/zh-Hans.json +3 -0
  278. homeassistant/components/awair/translations/zh-Hant.json +3 -0
  279. homeassistant/components/axis/__init__.py +3 -1
  280. homeassistant/components/axis/manifest.json +1 -1
  281. homeassistant/components/axis/translations/ga.json +4 -0
  282. homeassistant/components/azure_data_explorer/translations/ga.json +8 -1
  283. homeassistant/components/azure_devops/translations/ga.json +30 -0
  284. homeassistant/components/azure_storage/translations/ga.json +3 -0
  285. homeassistant/components/backup/__init__.py +18 -34
  286. homeassistant/components/backup/coordinator.py +2 -6
  287. homeassistant/components/backup/manager.py +31 -8
  288. homeassistant/components/backup/onboarding.py +8 -3
  289. homeassistant/components/backup/services.py +36 -0
  290. homeassistant/components/backup/translations/he.json +1 -1
  291. homeassistant/components/backup/websocket.py +25 -1
  292. homeassistant/components/balboa/translations/ga.json +28 -0
  293. homeassistant/components/bang_olufsen/strings.json +4 -4
  294. homeassistant/components/bang_olufsen/translations/cs.json +4 -0
  295. homeassistant/components/bang_olufsen/translations/fr.json +16 -0
  296. homeassistant/components/bang_olufsen/translations/ga.json +15 -0
  297. homeassistant/components/bauknecht/__init__.py +1 -0
  298. homeassistant/components/bauknecht/manifest.json +6 -0
  299. homeassistant/components/binary_sensor/translations/ga.json +8 -0
  300. homeassistant/components/binary_sensor/translations/it.json +4 -4
  301. homeassistant/components/blebox/translations/ko.json +3 -1
  302. homeassistant/components/blink/translations/ga.json +42 -0
  303. homeassistant/components/blue_current/__init__.py +33 -14
  304. homeassistant/components/blue_current/const.py +11 -0
  305. homeassistant/components/blue_current/icons.json +11 -0
  306. homeassistant/components/blue_current/manifest.json +1 -1
  307. homeassistant/components/blue_current/strings.json +11 -0
  308. homeassistant/components/blue_current/switch.py +169 -0
  309. homeassistant/components/blue_current/translations/cs.json +11 -0
  310. homeassistant/components/blue_current/translations/de.json +11 -0
  311. homeassistant/components/blue_current/translations/el.json +8 -0
  312. homeassistant/components/blue_current/translations/en-GB.json +11 -0
  313. homeassistant/components/blue_current/translations/en.json +11 -0
  314. homeassistant/components/blue_current/translations/es.json +11 -0
  315. homeassistant/components/blue_current/translations/et.json +11 -0
  316. homeassistant/components/blue_current/translations/fi.json +11 -0
  317. homeassistant/components/blue_current/translations/ga.json +34 -0
  318. homeassistant/components/blue_current/translations/ko.json +9 -0
  319. homeassistant/components/blue_current/translations/sk.json +11 -0
  320. homeassistant/components/blue_current/translations/zh-Hans.json +11 -0
  321. homeassistant/components/blue_current/translations/zh-Hant.json +11 -0
  322. homeassistant/components/bluemaestro/translations/ga.json +9 -0
  323. homeassistant/components/bluesound/manifest.json +1 -1
  324. homeassistant/components/bluesound/translations/ko.json +10 -0
  325. homeassistant/components/bluetooth/manifest.json +5 -5
  326. homeassistant/components/bmw_connected_drive/translations/es.json +1 -1
  327. homeassistant/components/bmw_connected_drive/translations/ga.json +32 -1
  328. homeassistant/components/bond/translations/ga.json +11 -0
  329. homeassistant/components/bosch_alarm/__init__.py +2 -2
  330. homeassistant/components/bosch_alarm/services.py +3 -2
  331. homeassistant/components/bosch_alarm/translations/ga.json +2 -1
  332. homeassistant/components/bosch_alarm/translations/ko.json +22 -0
  333. homeassistant/components/bosch_shc/translations/ga.json +11 -0
  334. homeassistant/components/bring/__init__.py +13 -0
  335. homeassistant/components/bring/const.py +4 -1
  336. homeassistant/components/bring/icons.json +3 -0
  337. homeassistant/components/bring/services.py +110 -0
  338. homeassistant/components/bring/services.yaml +25 -0
  339. homeassistant/components/bring/strings.json +27 -0
  340. homeassistant/components/bring/translations/bg.json +11 -0
  341. homeassistant/components/bring/translations/ca.json +12 -0
  342. homeassistant/components/bring/translations/cs.json +26 -0
  343. homeassistant/components/bring/translations/de.json +26 -0
  344. homeassistant/components/bring/translations/el.json +26 -0
  345. homeassistant/components/bring/translations/en-GB.json +26 -0
  346. homeassistant/components/bring/translations/en.json +26 -0
  347. homeassistant/components/bring/translations/es.json +26 -0
  348. homeassistant/components/bring/translations/et.json +26 -0
  349. homeassistant/components/bring/translations/ga.json +80 -0
  350. homeassistant/components/bring/translations/it.json +3 -0
  351. homeassistant/components/bring/translations/ko.json +22 -0
  352. homeassistant/components/bring/translations/lt.json +26 -0
  353. homeassistant/components/bring/translations/mk.json +14 -0
  354. homeassistant/components/bring/translations/pt.json +26 -0
  355. homeassistant/components/bring/translations/sk.json +26 -0
  356. homeassistant/components/bring/translations/zh-Hans.json +26 -0
  357. homeassistant/components/bring/translations/zh-Hant.json +26 -0
  358. homeassistant/components/broadlink/const.py +1 -0
  359. homeassistant/components/broadlink/sensor.py +19 -0
  360. homeassistant/components/broadlink/updater.py +12 -0
  361. homeassistant/components/brother/manifest.json +1 -1
  362. homeassistant/components/brother/translations/ga.json +3 -0
  363. homeassistant/components/brother/translations/ko.json +5 -0
  364. homeassistant/components/bryant_evolution/translations/ga.json +3 -0
  365. homeassistant/components/bsblan/config_flow.py +130 -14
  366. homeassistant/components/bsblan/manifest.json +7 -1
  367. homeassistant/components/bsblan/sensor.py +2 -0
  368. homeassistant/components/bsblan/strings.json +19 -1
  369. homeassistant/components/bsblan/translations/bg.json +6 -0
  370. homeassistant/components/bsblan/translations/ca.json +7 -0
  371. homeassistant/components/bsblan/translations/cs.json +19 -1
  372. homeassistant/components/bsblan/translations/de.json +19 -1
  373. homeassistant/components/bsblan/translations/el.json +19 -1
  374. homeassistant/components/bsblan/translations/en-GB.json +19 -1
  375. homeassistant/components/bsblan/translations/en.json +19 -1
  376. homeassistant/components/bsblan/translations/es.json +19 -1
  377. homeassistant/components/bsblan/translations/et.json +19 -1
  378. homeassistant/components/bsblan/translations/ga.json +27 -0
  379. homeassistant/components/bsblan/translations/he.json +6 -0
  380. homeassistant/components/bsblan/translations/ko.json +6 -0
  381. homeassistant/components/bsblan/translations/lt.json +19 -1
  382. homeassistant/components/bsblan/translations/nl.json +7 -0
  383. homeassistant/components/bsblan/translations/pt.json +19 -1
  384. homeassistant/components/bsblan/translations/sk.json +19 -1
  385. homeassistant/components/bsblan/translations/sv.json +19 -1
  386. homeassistant/components/bsblan/translations/zh-Hans.json +19 -1
  387. homeassistant/components/bsblan/translations/zh-Hant.json +19 -1
  388. homeassistant/components/bthome/coordinator.py +1 -1
  389. homeassistant/components/bthome/device_trigger.py +1 -1
  390. homeassistant/components/bthome/translations/ga.json +3 -1
  391. homeassistant/components/caldav/manifest.json +1 -1
  392. homeassistant/components/calendar/translations/ga.json +27 -0
  393. homeassistant/components/calendar/translations/it.json +2 -2
  394. homeassistant/components/cambridge_audio/media_player.py +1 -1
  395. homeassistant/components/cambridge_audio/translations/ga.json +1 -0
  396. homeassistant/components/cambridge_audio/translations/it.json +2 -2
  397. homeassistant/components/cambridge_audio/translations/ko.json +16 -0
  398. homeassistant/components/camera/translations/he.json +1 -1
  399. homeassistant/components/ccm15/translations/ko.json +12 -0
  400. homeassistant/components/chacon_dio/translations/ko.json +12 -0
  401. homeassistant/components/climate/translations/ga.json +12 -0
  402. homeassistant/components/climate/translations/he.json +1 -1
  403. homeassistant/components/climate/translations/it.json +9 -9
  404. homeassistant/components/cloud/backup.py +6 -15
  405. homeassistant/components/cloud/client.py +2 -1
  406. homeassistant/components/cloud/http_api.py +1 -1
  407. homeassistant/components/cloud/manifest.json +1 -1
  408. homeassistant/components/cloud/repairs.py +3 -3
  409. homeassistant/components/cloud/strings.json +4 -0
  410. homeassistant/components/cloud/subscription.py +5 -12
  411. homeassistant/components/cloud/translations/cs.json +4 -0
  412. homeassistant/components/cloud/translations/de.json +4 -0
  413. homeassistant/components/cloud/translations/el.json +4 -0
  414. homeassistant/components/cloud/translations/en-GB.json +4 -0
  415. homeassistant/components/cloud/translations/en.json +4 -0
  416. homeassistant/components/cloud/translations/es.json +4 -0
  417. homeassistant/components/cloud/translations/et.json +4 -0
  418. homeassistant/components/cloud/translations/fr.json +4 -0
  419. homeassistant/components/cloud/translations/ga.json +38 -0
  420. homeassistant/components/cloud/translations/he.json +4 -0
  421. homeassistant/components/cloud/translations/nl.json +3 -0
  422. homeassistant/components/cloud/translations/ru.json +4 -0
  423. homeassistant/components/cloud/translations/sk.json +4 -0
  424. homeassistant/components/cloud/translations/zh-Hans.json +4 -0
  425. homeassistant/components/cloud/translations/zh-Hant.json +4 -0
  426. homeassistant/components/cloud/tts.py +31 -4
  427. homeassistant/components/co2signal/translations/ga.json +32 -0
  428. homeassistant/components/co2signal/translations/ko.json +5 -0
  429. homeassistant/components/comelit/translations/ga.json +20 -0
  430. homeassistant/components/comelit/translations/ko.json +7 -0
  431. homeassistant/components/command_line/sensor.py +1 -12
  432. homeassistant/components/compensation/__init__.py +17 -7
  433. homeassistant/components/compensation/manifest.json +1 -1
  434. homeassistant/components/compensation/sensor.py +55 -27
  435. homeassistant/components/control4/__init__.py +9 -15
  436. homeassistant/components/control4/config_flow.py +6 -2
  437. homeassistant/components/conversation/__init__.py +4 -11
  438. homeassistant/components/conversation/agent_manager.py +2 -7
  439. homeassistant/components/conversation/chat_log.py +18 -0
  440. homeassistant/components/conversation/const.py +0 -1
  441. homeassistant/components/conversation/manifest.json +1 -1
  442. homeassistant/components/conversation/translations/ga.json +7 -0
  443. homeassistant/components/conversation/util.py +47 -0
  444. homeassistant/components/cookidoo/translations/ga.json +4 -0
  445. homeassistant/components/cookidoo/translations/ko.json +24 -0
  446. homeassistant/components/coolmaster/__init__.py +13 -1
  447. homeassistant/components/cover/translations/da.json +2 -1
  448. homeassistant/components/daikin/translations/ga.json +9 -0
  449. homeassistant/components/datadog/__init__.py +64 -34
  450. homeassistant/components/datadog/config_flow.py +203 -0
  451. homeassistant/components/datadog/const.py +10 -0
  452. homeassistant/components/datadog/manifest.json +2 -1
  453. homeassistant/components/datadog/strings.json +56 -0
  454. homeassistant/components/datadog/translations/bg.json +28 -0
  455. homeassistant/components/datadog/translations/cs.json +56 -0
  456. homeassistant/components/datadog/translations/de.json +56 -0
  457. homeassistant/components/datadog/translations/el.json +56 -0
  458. homeassistant/components/datadog/translations/en-GB.json +56 -0
  459. homeassistant/components/datadog/translations/en.json +56 -0
  460. homeassistant/components/datadog/translations/es.json +56 -0
  461. homeassistant/components/datadog/translations/et.json +56 -0
  462. homeassistant/components/datadog/translations/ga.json +40 -0
  463. homeassistant/components/datadog/translations/he.json +28 -0
  464. homeassistant/components/datadog/translations/ko.json +12 -0
  465. homeassistant/components/datadog/translations/mk.json +14 -0
  466. homeassistant/components/datadog/translations/nl.json +28 -0
  467. homeassistant/components/datadog/translations/ru.json +56 -0
  468. homeassistant/components/datadog/translations/sk.json +56 -0
  469. homeassistant/components/datadog/translations/sv.json +44 -0
  470. homeassistant/components/datadog/translations/zh-Hans.json +56 -0
  471. homeassistant/components/datadog/translations/zh-Hant.json +56 -0
  472. homeassistant/components/deconz/translations/ga.json +11 -0
  473. homeassistant/components/deluge/translations/ga.json +9 -0
  474. homeassistant/components/deluge/translations/he.json +1 -1
  475. homeassistant/components/demo/translations/ga.json +12 -0
  476. homeassistant/components/demo/translations/it.json +3 -3
  477. homeassistant/components/demo/vacuum.py +6 -19
  478. homeassistant/components/denonavr/__init__.py +0 -9
  479. homeassistant/components/denonavr/config_flow.py +6 -2
  480. homeassistant/components/denonavr/manifest.json +1 -1
  481. homeassistant/components/derivative/__init__.py +58 -6
  482. homeassistant/components/derivative/config_flow.py +4 -0
  483. homeassistant/components/derivative/sensor.py +83 -45
  484. homeassistant/components/derivative/strings.json +5 -0
  485. homeassistant/components/derivative/translations/ca.json +5 -0
  486. homeassistant/components/derivative/translations/cs.json +5 -0
  487. homeassistant/components/derivative/translations/de.json +5 -0
  488. homeassistant/components/derivative/translations/el.json +5 -0
  489. homeassistant/components/derivative/translations/en-GB.json +5 -0
  490. homeassistant/components/derivative/translations/en.json +5 -0
  491. homeassistant/components/derivative/translations/es.json +5 -0
  492. homeassistant/components/derivative/translations/et.json +5 -0
  493. homeassistant/components/derivative/translations/fr.json +5 -0
  494. homeassistant/components/derivative/translations/ga.json +7 -0
  495. homeassistant/components/derivative/translations/ja.json +5 -0
  496. homeassistant/components/derivative/translations/lt.json +5 -0
  497. homeassistant/components/derivative/translations/nl.json +5 -0
  498. homeassistant/components/derivative/translations/pt.json +5 -0
  499. homeassistant/components/derivative/translations/sk.json +5 -0
  500. homeassistant/components/derivative/translations/sv.json +5 -0
  501. homeassistant/components/derivative/translations/zh-Hans.json +5 -0
  502. homeassistant/components/derivative/translations/zh-Hant.json +5 -0
  503. homeassistant/components/devialet/translations/ga.json +16 -0
  504. homeassistant/components/devolo_home_control/config_flow.py +49 -60
  505. homeassistant/components/devolo_home_control/entity.py +28 -3
  506. homeassistant/components/devolo_home_control/strings.json +1 -1
  507. homeassistant/components/devolo_home_control/translations/ko.json +5 -0
  508. homeassistant/components/devolo_home_network/coordinator.py +4 -3
  509. homeassistant/components/devolo_home_network/device_tracker.py +13 -22
  510. homeassistant/components/devolo_home_network/entity.py +1 -1
  511. homeassistant/components/devolo_home_network/manifest.json +1 -0
  512. homeassistant/components/devolo_home_network/quality_scale.yaml +84 -0
  513. homeassistant/components/devolo_home_network/sensor.py +6 -2
  514. homeassistant/components/devolo_home_network/strings.json +4 -4
  515. homeassistant/components/devolo_home_network/translations/ga.json +18 -0
  516. homeassistant/components/devolo_home_network/translations/ko.json +7 -1
  517. homeassistant/components/dexcom/translations/ga.json +17 -0
  518. homeassistant/components/dhcp/manifest.json +1 -1
  519. homeassistant/components/diagnostics/__init__.py +14 -2
  520. homeassistant/components/directv/translations/ga.json +11 -0
  521. homeassistant/components/discovergy/__init__.py +7 -2
  522. homeassistant/components/discovergy/coordinator.py +9 -2
  523. homeassistant/components/discovergy/manifest.json +1 -1
  524. homeassistant/components/discovergy/quality_scale.yaml +16 -9
  525. homeassistant/components/discovergy/strings.json +11 -0
  526. homeassistant/components/discovergy/translations/cs.json +11 -0
  527. homeassistant/components/discovergy/translations/de.json +11 -0
  528. homeassistant/components/discovergy/translations/el.json +11 -0
  529. homeassistant/components/discovergy/translations/en-GB.json +11 -0
  530. homeassistant/components/discovergy/translations/en.json +11 -0
  531. homeassistant/components/discovergy/translations/es.json +11 -0
  532. homeassistant/components/discovergy/translations/et.json +11 -0
  533. homeassistant/components/discovergy/translations/ga.json +11 -0
  534. homeassistant/components/discovergy/translations/lt.json +11 -0
  535. homeassistant/components/discovergy/translations/nb.json +11 -0
  536. homeassistant/components/discovergy/translations/sk.json +11 -0
  537. homeassistant/components/discovergy/translations/sv.json +8 -0
  538. homeassistant/components/discovergy/translations/zh-Hans.json +11 -0
  539. homeassistant/components/discovergy/translations/zh-Hant.json +11 -0
  540. homeassistant/components/dlink/translations/ga.json +11 -0
  541. homeassistant/components/dnsip/__init__.py +0 -6
  542. homeassistant/components/dnsip/config_flow.py +5 -2
  543. homeassistant/components/dnsip/strings.json +2 -1
  544. homeassistant/components/dnsip/translations/cs.json +2 -1
  545. homeassistant/components/dnsip/translations/de.json +2 -1
  546. homeassistant/components/dnsip/translations/el.json +2 -1
  547. homeassistant/components/dnsip/translations/en-GB.json +2 -1
  548. homeassistant/components/dnsip/translations/en.json +2 -1
  549. homeassistant/components/dnsip/translations/es.json +2 -1
  550. homeassistant/components/dnsip/translations/et.json +2 -1
  551. homeassistant/components/dnsip/translations/ga.json +3 -0
  552. homeassistant/components/dnsip/translations/he.json +2 -1
  553. homeassistant/components/dnsip/translations/ja.json +2 -1
  554. homeassistant/components/dnsip/translations/lt.json +2 -1
  555. homeassistant/components/dnsip/translations/pt.json +2 -1
  556. homeassistant/components/dnsip/translations/sk.json +2 -1
  557. homeassistant/components/dnsip/translations/sv.json +2 -1
  558. homeassistant/components/dnsip/translations/zh-Hans.json +2 -1
  559. homeassistant/components/dnsip/translations/zh-Hant.json +2 -1
  560. homeassistant/components/dominos/strings.json +2 -2
  561. homeassistant/components/doods/manifest.json +1 -1
  562. homeassistant/components/doorbird/translations/ga.json +5 -0
  563. homeassistant/components/doorbird/translations/ko.json +6 -0
  564. homeassistant/components/downloader/__init__.py +3 -0
  565. homeassistant/components/downloader/services.py +27 -19
  566. homeassistant/components/downloader/strings.json +8 -0
  567. homeassistant/components/downloader/translations/cs.json +8 -0
  568. homeassistant/components/downloader/translations/de.json +8 -0
  569. homeassistant/components/downloader/translations/en-GB.json +8 -0
  570. homeassistant/components/downloader/translations/en.json +8 -0
  571. homeassistant/components/downloader/translations/et.json +8 -0
  572. homeassistant/components/downloader/translations/ga.json +12 -0
  573. homeassistant/components/downloader/translations/ru.json +8 -0
  574. homeassistant/components/downloader/translations/sk.json +8 -0
  575. homeassistant/components/downloader/translations/zh-Hans.json +8 -0
  576. homeassistant/components/downloader/translations/zh-Hant.json +8 -0
  577. homeassistant/components/drop_connect/translations/ga.json +83 -0
  578. homeassistant/components/dsmr/strings.json +1 -1
  579. homeassistant/components/dsmr/translations/fr.json +2 -1
  580. homeassistant/components/dsmr/translations/ga.json +3 -0
  581. homeassistant/components/dsmr_reader/strings.json +1 -1
  582. homeassistant/components/dsmr_reader/translations/ga.json +8 -0
  583. homeassistant/components/duke_energy/translations/ko.json +12 -0
  584. homeassistant/components/duotecno/translations/ga.json +18 -0
  585. homeassistant/components/duotecno/translations/ko.json +1 -0
  586. homeassistant/components/dwd_weather_warnings/strings.json +2 -2
  587. homeassistant/components/dwd_weather_warnings/translations/ga.json +17 -0
  588. homeassistant/components/dynalite/__init__.py +2 -2
  589. homeassistant/components/dynalite/services.py +1 -1
  590. homeassistant/components/easyenergy/translations/ga.json +16 -0
  591. homeassistant/components/ecobee/translations/ga.json +11 -0
  592. homeassistant/components/ecoforest/translations/ga.json +24 -0
  593. homeassistant/components/ecoforest/translations/it.json +2 -2
  594. homeassistant/components/ecovacs/binary_sensor.py +49 -2
  595. homeassistant/components/ecovacs/manifest.json +1 -1
  596. homeassistant/components/ecovacs/sensor.py +48 -2
  597. homeassistant/components/ecovacs/translations/ga.json +191 -2
  598. homeassistant/components/ecovacs/translations/he.json +1 -1
  599. homeassistant/components/ecovacs/translations/ko.json +11 -0
  600. homeassistant/components/ecovacs/translations/nl.json +7 -0
  601. homeassistant/components/ecovacs/vacuum.py +2 -30
  602. homeassistant/components/ecowitt/sensor.py +3 -0
  603. homeassistant/components/eheimdigital/config_flow.py +55 -1
  604. homeassistant/components/eheimdigital/manifest.json +2 -2
  605. homeassistant/components/eheimdigital/quality_scale.yaml +10 -8
  606. homeassistant/components/eheimdigital/strings.json +11 -1
  607. homeassistant/components/eheimdigital/translations/bg.json +7 -1
  608. homeassistant/components/eheimdigital/translations/ca.json +7 -1
  609. homeassistant/components/eheimdigital/translations/cs.json +11 -1
  610. homeassistant/components/eheimdigital/translations/de.json +11 -1
  611. homeassistant/components/eheimdigital/translations/el.json +11 -1
  612. homeassistant/components/eheimdigital/translations/en-GB.json +11 -1
  613. homeassistant/components/eheimdigital/translations/en.json +11 -1
  614. homeassistant/components/eheimdigital/translations/es.json +11 -1
  615. homeassistant/components/eheimdigital/translations/et.json +11 -1
  616. homeassistant/components/eheimdigital/translations/ga.json +9 -0
  617. homeassistant/components/eheimdigital/translations/he.json +7 -1
  618. homeassistant/components/eheimdigital/translations/ja.json +11 -1
  619. homeassistant/components/eheimdigital/translations/ko.json +16 -0
  620. homeassistant/components/eheimdigital/translations/lt.json +11 -1
  621. homeassistant/components/eheimdigital/translations/nl.json +7 -1
  622. homeassistant/components/eheimdigital/translations/pt.json +11 -1
  623. homeassistant/components/eheimdigital/translations/ru.json +8 -0
  624. homeassistant/components/eheimdigital/translations/sk.json +11 -1
  625. homeassistant/components/eheimdigital/translations/sv.json +11 -1
  626. homeassistant/components/eheimdigital/translations/zh-Hans.json +11 -1
  627. homeassistant/components/eheimdigital/translations/zh-Hant.json +11 -1
  628. homeassistant/components/electric_kiwi/translations/ga.json +22 -0
  629. homeassistant/components/electric_kiwi/translations/ko.json +3 -0
  630. homeassistant/components/elevenlabs/__init__.py +2 -1
  631. homeassistant/components/elevenlabs/config_flow.py +9 -11
  632. homeassistant/components/elevenlabs/const.py +0 -2
  633. homeassistant/components/elevenlabs/manifest.json +1 -1
  634. homeassistant/components/elevenlabs/strings.json +2 -3
  635. homeassistant/components/elevenlabs/translations/bg.json +2 -1
  636. homeassistant/components/elevenlabs/translations/ca.json +2 -2
  637. homeassistant/components/elevenlabs/translations/cs.json +2 -3
  638. homeassistant/components/elevenlabs/translations/de.json +2 -3
  639. homeassistant/components/elevenlabs/translations/el.json +2 -3
  640. homeassistant/components/elevenlabs/translations/en-GB.json +2 -3
  641. homeassistant/components/elevenlabs/translations/en.json +2 -3
  642. homeassistant/components/elevenlabs/translations/es.json +2 -3
  643. homeassistant/components/elevenlabs/translations/et.json +2 -3
  644. homeassistant/components/elevenlabs/translations/fr.json +2 -3
  645. homeassistant/components/elevenlabs/translations/ga.json +0 -2
  646. homeassistant/components/elevenlabs/translations/he.json +2 -1
  647. homeassistant/components/elevenlabs/translations/hu.json +0 -2
  648. homeassistant/components/elevenlabs/translations/ja.json +0 -2
  649. homeassistant/components/elevenlabs/translations/ko.json +1 -1
  650. homeassistant/components/elevenlabs/translations/lt.json +2 -3
  651. homeassistant/components/elevenlabs/translations/nl.json +2 -2
  652. homeassistant/components/elevenlabs/translations/pt.json +0 -2
  653. homeassistant/components/elevenlabs/translations/ru.json +0 -2
  654. homeassistant/components/elevenlabs/translations/sk.json +2 -3
  655. homeassistant/components/elevenlabs/translations/sv.json +2 -3
  656. homeassistant/components/elevenlabs/translations/tr.json +0 -2
  657. homeassistant/components/elevenlabs/translations/zh-Hans.json +2 -3
  658. homeassistant/components/elevenlabs/translations/zh-Hant.json +2 -3
  659. homeassistant/components/elevenlabs/tts.py +4 -11
  660. homeassistant/components/elmax/translations/ga.json +39 -0
  661. homeassistant/components/elmax/translations/ko.json +6 -0
  662. homeassistant/components/elvia/translations/ga.json +18 -0
  663. homeassistant/components/elvia/translations/ko.json +11 -0
  664. homeassistant/components/emoncms/__init__.py +0 -6
  665. homeassistant/components/emoncms/config_flow.py +72 -3
  666. homeassistant/components/emoncms/const.py +3 -0
  667. homeassistant/components/emoncms/strings.json +13 -2
  668. homeassistant/components/emoncms/translations/bg.json +2 -1
  669. homeassistant/components/emoncms/translations/ca.json +2 -1
  670. homeassistant/components/emoncms/translations/cs.json +12 -1
  671. homeassistant/components/emoncms/translations/de.json +12 -1
  672. homeassistant/components/emoncms/translations/el.json +4 -1
  673. homeassistant/components/emoncms/translations/en-GB.json +12 -1
  674. homeassistant/components/emoncms/translations/en.json +12 -1
  675. homeassistant/components/emoncms/translations/es.json +12 -1
  676. homeassistant/components/emoncms/translations/et.json +12 -1
  677. homeassistant/components/emoncms/translations/ga.json +6 -1
  678. homeassistant/components/emoncms/translations/he.json +3 -0
  679. homeassistant/components/emoncms/translations/it.json +1 -0
  680. homeassistant/components/emoncms/translations/ja.json +4 -1
  681. homeassistant/components/emoncms/translations/ko.json +12 -0
  682. homeassistant/components/emoncms/translations/lt.json +4 -1
  683. homeassistant/components/emoncms/translations/nl.json +4 -0
  684. homeassistant/components/emoncms/translations/pt.json +4 -1
  685. homeassistant/components/emoncms/translations/sk.json +12 -1
  686. homeassistant/components/emoncms/translations/sv.json +3 -1
  687. homeassistant/components/emoncms/translations/zh-Hans.json +12 -1
  688. homeassistant/components/emoncms/translations/zh-Hant.json +12 -1
  689. homeassistant/components/energenie_power_sockets/translations/ga.json +23 -0
  690. homeassistant/components/energenie_power_sockets/translations/ko.json +11 -0
  691. homeassistant/components/energy/sensor.py +2 -7
  692. homeassistant/components/energy/translations/sl.json +4 -0
  693. homeassistant/components/energy/validate.py +5 -14
  694. homeassistant/components/energyzero/translations/ga.json +42 -0
  695. homeassistant/components/enigma2/translations/ga.json +8 -0
  696. homeassistant/components/enigma2/translations/ko.json +14 -0
  697. homeassistant/components/enphase_envoy/__init__.py +0 -9
  698. homeassistant/components/enphase_envoy/binary_sensor.py +2 -0
  699. homeassistant/components/enphase_envoy/config_flow.py +2 -2
  700. homeassistant/components/enphase_envoy/coordinator.py +8 -0
  701. homeassistant/components/enphase_envoy/diagnostics.py +2 -0
  702. homeassistant/components/enphase_envoy/manifest.json +1 -1
  703. homeassistant/components/enphase_envoy/number.py +1 -0
  704. homeassistant/components/enphase_envoy/select.py +1 -0
  705. homeassistant/components/enphase_envoy/sensor.py +3 -0
  706. homeassistant/components/enphase_envoy/strings.json +1 -1
  707. homeassistant/components/enphase_envoy/switch.py +2 -0
  708. homeassistant/components/enphase_envoy/translations/ga.json +117 -0
  709. homeassistant/components/enphase_envoy/translations/he.json +1 -1
  710. homeassistant/components/enphase_envoy/translations/ko.json +13 -0
  711. homeassistant/components/environment_canada/translations/fr.json +98 -0
  712. homeassistant/components/epic_games_store/translations/ga.json +22 -1
  713. homeassistant/components/epic_games_store/translations/ko.json +12 -0
  714. homeassistant/components/epion/translations/ko.json +11 -0
  715. homeassistant/components/epson/translations/ga.json +3 -0
  716. homeassistant/components/eq3btsmart/manifest.json +1 -1
  717. homeassistant/components/eq3btsmart/translations/ga.json +12 -0
  718. homeassistant/components/esphome/alarm_control_panel.py +28 -7
  719. homeassistant/components/esphome/button.py +1 -1
  720. homeassistant/components/esphome/climate.py +14 -6
  721. homeassistant/components/esphome/config_flow.py +33 -4
  722. homeassistant/components/esphome/cover.py +25 -7
  723. homeassistant/components/esphome/date.py +7 -1
  724. homeassistant/components/esphome/datetime.py +3 -1
  725. homeassistant/components/esphome/encryption_key_storage.py +94 -0
  726. homeassistant/components/esphome/entity.py +74 -8
  727. homeassistant/components/esphome/entry_data.py +44 -27
  728. homeassistant/components/esphome/fan.py +17 -5
  729. homeassistant/components/esphome/light.py +2 -2
  730. homeassistant/components/esphome/lock.py +9 -3
  731. homeassistant/components/esphome/manager.py +96 -4
  732. homeassistant/components/esphome/manifest.json +3 -3
  733. homeassistant/components/esphome/media_player.py +23 -5
  734. homeassistant/components/esphome/number.py +3 -1
  735. homeassistant/components/esphome/select.py +3 -1
  736. homeassistant/components/esphome/switch.py +6 -2
  737. homeassistant/components/esphome/text.py +3 -1
  738. homeassistant/components/esphome/time.py +7 -1
  739. homeassistant/components/esphome/translations/ga.json +4 -0
  740. homeassistant/components/esphome/update.py +10 -2
  741. homeassistant/components/esphome/valve.py +14 -4
  742. homeassistant/components/evil_genius_labs/translations/ga.json +11 -0
  743. homeassistant/components/ezviz/__init__.py +0 -7
  744. homeassistant/components/ezviz/config_flow.py +6 -2
  745. homeassistant/components/faa_delays/translations/es.json +1 -1
  746. homeassistant/components/faa_delays/translations/ga.json +73 -0
  747. homeassistant/components/fan/translations/ga.json +7 -0
  748. homeassistant/components/fan/translations/it.json +2 -2
  749. homeassistant/components/fastdotcom/translations/ga.json +9 -0
  750. homeassistant/components/feedreader/__init__.py +0 -9
  751. homeassistant/components/feedreader/config_flow.py +4 -5
  752. homeassistant/components/feedreader/translations/ga.json +3 -0
  753. homeassistant/components/feedreader/translations/ko.json +16 -0
  754. homeassistant/components/file/__init__.py +0 -6
  755. homeassistant/components/file/config_flow.py +2 -2
  756. homeassistant/components/file/translations/ga.json +66 -0
  757. homeassistant/components/filesize/translations/ga.json +5 -0
  758. homeassistant/components/filter/translations/ko.json +9 -0
  759. homeassistant/components/fitbit/translations/ga.json +11 -0
  760. homeassistant/components/fitbit/translations/ko.json +3 -0
  761. homeassistant/components/fjaraskupan/translations/da.json +7 -0
  762. homeassistant/components/flexit_bacnet/translations/ga.json +73 -0
  763. homeassistant/components/flipr/sensor.py +1 -1
  764. homeassistant/components/folder_watcher/translations/ga.json +72 -0
  765. homeassistant/components/forecast_solar/__init__.py +0 -9
  766. homeassistant/components/forecast_solar/config_flow.py +2 -2
  767. homeassistant/components/freebox/translations/ga.json +11 -0
  768. homeassistant/components/fritz/__init__.py +0 -8
  769. homeassistant/components/fritz/config_flow.py +6 -2
  770. homeassistant/components/fritz/strings.json +1 -1
  771. homeassistant/components/fritz/translations/ga.json +20 -0
  772. homeassistant/components/fritz/translations/ko.json +9 -0
  773. homeassistant/components/fritzbox/translations/ga.json +8 -0
  774. homeassistant/components/fritzbox/translations/ko.json +5 -0
  775. homeassistant/components/fritzbox_callmonitor/__init__.py +0 -8
  776. homeassistant/components/fritzbox_callmonitor/config_flow.py +2 -2
  777. homeassistant/components/fritzbox_callmonitor/translations/ga.json +49 -0
  778. homeassistant/components/fritzbox_callmonitor/translations/he.json +1 -1
  779. homeassistant/components/fritzbox_callmonitor/translations/ko.json +11 -0
  780. homeassistant/components/fronius/__init__.py +6 -0
  781. homeassistant/components/fronius/translations/ga.json +1 -0
  782. homeassistant/components/fronius/translations/he.json +1 -1
  783. homeassistant/components/fronius/translations/ko.json +5 -0
  784. homeassistant/components/frontend/__init__.py +7 -0
  785. homeassistant/components/frontend/manifest.json +1 -1
  786. homeassistant/components/fujitsu_fglair/translations/ko.json +17 -0
  787. homeassistant/components/fyta/translations/ga.json +55 -7
  788. homeassistant/components/fyta/translations/ko.json +16 -0
  789. homeassistant/components/garages_amsterdam/manifest.json +1 -1
  790. homeassistant/components/gardena_bluetooth/__init__.py +2 -0
  791. homeassistant/components/gardena_bluetooth/number.py +6 -0
  792. homeassistant/components/gardena_bluetooth/translations/da.json +9 -0
  793. homeassistant/components/gardena_bluetooth/valve.py +6 -1
  794. homeassistant/components/generic/config_flow.py +5 -15
  795. homeassistant/components/generic/manifest.json +1 -1
  796. homeassistant/components/generic/translations/ga.json +8 -0
  797. homeassistant/components/generic_hygrostat/__init__.py +44 -6
  798. homeassistant/components/generic_hygrostat/config_flow.py +2 -0
  799. homeassistant/components/generic_hygrostat/humidifier.py +19 -18
  800. homeassistant/components/generic_hygrostat/translations/ga.json +23 -4
  801. homeassistant/components/generic_hygrostat/translations/it.json +47 -2
  802. homeassistant/components/generic_hygrostat/translations/ko.json +11 -0
  803. homeassistant/components/generic_thermostat/__init__.py +44 -6
  804. homeassistant/components/generic_thermostat/climate.py +20 -19
  805. homeassistant/components/generic_thermostat/config_flow.py +2 -0
  806. homeassistant/components/generic_thermostat/translations/it.json +39 -6
  807. homeassistant/components/generic_thermostat/translations/ko.json +9 -0
  808. homeassistant/components/geniushub/translations/ko.json +16 -0
  809. homeassistant/components/geo_location/trigger.py +6 -3
  810. homeassistant/components/geocaching/translations/ga.json +4 -0
  811. homeassistant/components/geocaching/translations/ko.json +3 -0
  812. homeassistant/components/gios/const.py +2 -0
  813. homeassistant/components/gios/icons.json +3 -0
  814. homeassistant/components/gios/sensor.py +18 -0
  815. homeassistant/components/gios/strings.json +3 -0
  816. homeassistant/components/gios/translations/cs.json +3 -0
  817. homeassistant/components/gios/translations/de.json +3 -0
  818. homeassistant/components/gios/translations/el.json +3 -0
  819. homeassistant/components/gios/translations/en-GB.json +3 -0
  820. homeassistant/components/gios/translations/en.json +3 -0
  821. homeassistant/components/gios/translations/es.json +3 -0
  822. homeassistant/components/gios/translations/et.json +3 -0
  823. homeassistant/components/gios/translations/ga.json +7 -0
  824. homeassistant/components/gios/translations/lt.json +3 -0
  825. homeassistant/components/gios/translations/pl.json +3 -0
  826. homeassistant/components/gios/translations/pt.json +3 -0
  827. homeassistant/components/gios/translations/ru.json +3 -0
  828. homeassistant/components/gios/translations/sk.json +3 -0
  829. homeassistant/components/gios/translations/sv.json +3 -0
  830. homeassistant/components/gios/translations/zh-Hans.json +3 -0
  831. homeassistant/components/gios/translations/zh-Hant.json +3 -0
  832. homeassistant/components/github/__init__.py +0 -6
  833. homeassistant/components/github/config_flow.py +2 -2
  834. homeassistant/components/glances/translations/ga.json +81 -0
  835. homeassistant/components/go2rtc/__init__.py +0 -1
  836. homeassistant/components/goalzero/strings.json +1 -1
  837. homeassistant/components/goalzero/translations/ca.json +0 -3
  838. homeassistant/components/goalzero/translations/el.json +0 -3
  839. homeassistant/components/goalzero/translations/en-GB.json +1 -1
  840. homeassistant/components/goalzero/translations/en.json +1 -1
  841. homeassistant/components/goalzero/translations/es.json +1 -1
  842. homeassistant/components/goalzero/translations/fi.json +0 -3
  843. homeassistant/components/goalzero/translations/ga.json +53 -0
  844. homeassistant/components/goalzero/translations/hu.json +0 -3
  845. homeassistant/components/goalzero/translations/id.json +0 -3
  846. homeassistant/components/goalzero/translations/it.json +0 -3
  847. homeassistant/components/goalzero/translations/ja.json +0 -3
  848. homeassistant/components/goalzero/translations/ko.json +0 -3
  849. homeassistant/components/goalzero/translations/lt.json +0 -3
  850. homeassistant/components/goalzero/translations/nb.json +0 -3
  851. homeassistant/components/goalzero/translations/nl.json +0 -3
  852. homeassistant/components/goalzero/translations/pl.json +0 -3
  853. homeassistant/components/goalzero/translations/pt-BR.json +0 -3
  854. homeassistant/components/goalzero/translations/pt.json +0 -3
  855. homeassistant/components/goalzero/translations/ro.json +0 -3
  856. homeassistant/components/goalzero/translations/ru.json +1 -1
  857. homeassistant/components/goalzero/translations/sk.json +1 -1
  858. homeassistant/components/goalzero/translations/sl.json +0 -3
  859. homeassistant/components/goalzero/translations/sv.json +0 -3
  860. homeassistant/components/goalzero/translations/tr.json +0 -3
  861. homeassistant/components/goalzero/translations/uk.json +0 -3
  862. homeassistant/components/goodwe/__init__.py +14 -2
  863. homeassistant/components/goodwe/config_flow.py +23 -13
  864. homeassistant/components/goodwe/manifest.json +1 -1
  865. homeassistant/components/goodwe/select.py +18 -11
  866. homeassistant/components/google/calendar.py +4 -4
  867. homeassistant/components/google/manifest.json +1 -1
  868. homeassistant/components/google/translations/ga.json +3 -1
  869. homeassistant/components/google/translations/ko.json +3 -0
  870. homeassistant/components/google_assistant_sdk/application_credentials.py +12 -6
  871. homeassistant/components/google_assistant_sdk/helpers.py +2 -2
  872. homeassistant/components/google_assistant_sdk/manifest.json +1 -1
  873. homeassistant/components/google_assistant_sdk/strings.json +1 -1
  874. homeassistant/components/google_assistant_sdk/translations/ga.json +4 -0
  875. homeassistant/components/google_assistant_sdk/translations/ko.json +3 -0
  876. homeassistant/components/google_cloud/const.py +10 -0
  877. homeassistant/components/google_cloud/stt.py +13 -3
  878. homeassistant/components/google_drive/translations/ga.json +2 -0
  879. homeassistant/components/google_drive/translations/ko.json +11 -0
  880. homeassistant/components/google_generative_ai_conversation/__init__.py +126 -64
  881. homeassistant/components/google_generative_ai_conversation/ai_task.py +81 -0
  882. homeassistant/components/google_generative_ai_conversation/config_flow.py +50 -4
  883. homeassistant/components/google_generative_ai_conversation/const.py +19 -3
  884. homeassistant/components/google_generative_ai_conversation/conversation.py +4 -21
  885. homeassistant/components/google_generative_ai_conversation/entity.py +102 -3
  886. homeassistant/components/google_generative_ai_conversation/strings.json +61 -1
  887. homeassistant/components/google_generative_ai_conversation/stt.py +259 -0
  888. homeassistant/components/google_generative_ai_conversation/translations/bg.json +38 -0
  889. homeassistant/components/google_generative_ai_conversation/translations/ca.json +29 -0
  890. homeassistant/components/google_generative_ai_conversation/translations/cs.json +60 -0
  891. homeassistant/components/google_generative_ai_conversation/translations/de.json +60 -0
  892. homeassistant/components/google_generative_ai_conversation/translations/el.json +55 -0
  893. homeassistant/components/google_generative_ai_conversation/translations/en-GB.json +60 -0
  894. homeassistant/components/google_generative_ai_conversation/translations/en.json +60 -0
  895. homeassistant/components/google_generative_ai_conversation/translations/es.json +55 -0
  896. homeassistant/components/google_generative_ai_conversation/translations/et.json +60 -0
  897. homeassistant/components/google_generative_ai_conversation/translations/fr.json +55 -0
  898. homeassistant/components/google_generative_ai_conversation/translations/ga.json +66 -2
  899. homeassistant/components/google_generative_ai_conversation/translations/he.json +32 -0
  900. homeassistant/components/google_generative_ai_conversation/translations/ja.json +23 -0
  901. homeassistant/components/google_generative_ai_conversation/translations/ko.json +38 -0
  902. homeassistant/components/google_generative_ai_conversation/translations/lt.json +55 -0
  903. homeassistant/components/google_generative_ai_conversation/translations/mk.json +21 -0
  904. homeassistant/components/google_generative_ai_conversation/translations/nl.json +29 -0
  905. homeassistant/components/google_generative_ai_conversation/translations/pt.json +23 -0
  906. homeassistant/components/google_generative_ai_conversation/translations/ru.json +49 -0
  907. homeassistant/components/google_generative_ai_conversation/translations/sk.json +60 -0
  908. homeassistant/components/google_generative_ai_conversation/translations/sl.json +9 -0
  909. homeassistant/components/google_generative_ai_conversation/translations/sv.json +52 -0
  910. homeassistant/components/google_generative_ai_conversation/translations/zh-Hans.json +60 -0
  911. homeassistant/components/google_generative_ai_conversation/translations/zh-Hant.json +60 -0
  912. homeassistant/components/google_generative_ai_conversation/tts.py +3 -0
  913. homeassistant/components/google_mail/translations/ga.json +4 -0
  914. homeassistant/components/google_mail/translations/ko.json +3 -0
  915. homeassistant/components/google_photos/translations/fr.json +2 -1
  916. homeassistant/components/google_photos/translations/ga.json +2 -0
  917. homeassistant/components/google_photos/translations/ko.json +5 -0
  918. homeassistant/components/google_sheets/translations/ga.json +4 -0
  919. homeassistant/components/google_sheets/translations/ko.json +3 -0
  920. homeassistant/components/google_tasks/translations/ga.json +5 -0
  921. homeassistant/components/google_tasks/translations/ko.json +3 -0
  922. homeassistant/components/google_travel_time/strings.json +1 -1
  923. homeassistant/components/google_travel_time/translations/ga.json +65 -0
  924. homeassistant/components/google_travel_time/translations/ko.json +5 -0
  925. homeassistant/components/gpsd/translations/ga.json +19 -0
  926. homeassistant/components/gpsd/translations/ko.json +16 -1
  927. homeassistant/components/gree/translations/ga.json +15 -0
  928. homeassistant/components/group/config_flow.py +6 -6
  929. homeassistant/components/group/strings.json +18 -5
  930. homeassistant/components/group/translations/ca.json +4 -9
  931. homeassistant/components/group/translations/cs.json +18 -5
  932. homeassistant/components/group/translations/da.json +4 -9
  933. homeassistant/components/group/translations/de.json +18 -5
  934. homeassistant/components/group/translations/el.json +4 -9
  935. homeassistant/components/group/translations/en-GB.json +18 -5
  936. homeassistant/components/group/translations/en.json +18 -5
  937. homeassistant/components/group/translations/es.json +4 -9
  938. homeassistant/components/group/translations/et.json +18 -5
  939. homeassistant/components/group/translations/fi.json +4 -9
  940. homeassistant/components/group/translations/fr.json +18 -5
  941. homeassistant/components/group/translations/fy.json +0 -14
  942. homeassistant/components/group/translations/ga.json +50 -0
  943. homeassistant/components/group/translations/he.json +18 -5
  944. homeassistant/components/group/translations/hu.json +4 -9
  945. homeassistant/components/group/translations/id.json +4 -9
  946. homeassistant/components/group/translations/it.json +6 -11
  947. homeassistant/components/group/translations/ja.json +4 -9
  948. homeassistant/components/group/translations/ko.json +4 -9
  949. homeassistant/components/group/translations/lt.json +4 -9
  950. homeassistant/components/group/translations/lv.json +1 -2
  951. homeassistant/components/group/translations/nb.json +4 -9
  952. homeassistant/components/group/translations/nl.json +3 -7
  953. homeassistant/components/group/translations/pl.json +4 -9
  954. homeassistant/components/group/translations/pt-BR.json +4 -9
  955. homeassistant/components/group/translations/pt.json +4 -9
  956. homeassistant/components/group/translations/ro.json +4 -9
  957. homeassistant/components/group/translations/ru.json +4 -9
  958. homeassistant/components/group/translations/sk.json +18 -5
  959. homeassistant/components/group/translations/sl.json +4 -9
  960. homeassistant/components/group/translations/sv.json +4 -9
  961. homeassistant/components/group/translations/tr.json +4 -9
  962. homeassistant/components/group/translations/uk.json +4 -9
  963. homeassistant/components/group/translations/vi.json +4 -9
  964. homeassistant/components/group/translations/zh-Hans.json +18 -5
  965. homeassistant/components/group/translations/zh-Hant.json +18 -5
  966. homeassistant/components/growatt_server/__init__.py +91 -8
  967. homeassistant/components/growatt_server/coordinator.py +210 -0
  968. homeassistant/components/growatt_server/models.py +17 -0
  969. homeassistant/components/growatt_server/sensor/__init__.py +56 -285
  970. homeassistant/components/guardian/__init__.py +2 -2
  971. homeassistant/components/guardian/services.py +3 -2
  972. homeassistant/components/guardian/translations/ga.json +23 -0
  973. homeassistant/components/habitica/button.py +22 -81
  974. homeassistant/components/habitica/config_flow.py +0 -2
  975. homeassistant/components/habitica/coordinator.py +8 -11
  976. homeassistant/components/habitica/entity.py +2 -2
  977. homeassistant/components/habitica/icons.json +0 -9
  978. homeassistant/components/habitica/sensor.py +9 -161
  979. homeassistant/components/habitica/strings.json +0 -13
  980. homeassistant/components/habitica/switch.py +7 -9
  981. homeassistant/components/habitica/translations/bg.json +1 -11
  982. homeassistant/components/habitica/translations/ca.json +0 -3
  983. homeassistant/components/habitica/translations/cs.json +0 -13
  984. homeassistant/components/habitica/translations/de.json +0 -13
  985. homeassistant/components/habitica/translations/el.json +0 -13
  986. homeassistant/components/habitica/translations/en-GB.json +0 -13
  987. homeassistant/components/habitica/translations/en.json +0 -13
  988. homeassistant/components/habitica/translations/es.json +0 -13
  989. homeassistant/components/habitica/translations/et.json +0 -13
  990. homeassistant/components/habitica/translations/ga.json +35 -12
  991. homeassistant/components/habitica/translations/he.json +1 -11
  992. homeassistant/components/habitica/translations/hu.json +0 -13
  993. homeassistant/components/habitica/translations/it.json +0 -12
  994. homeassistant/components/habitica/translations/ja.json +0 -13
  995. homeassistant/components/habitica/translations/ko.json +32 -0
  996. homeassistant/components/habitica/translations/lt.json +0 -13
  997. homeassistant/components/habitica/translations/nl.json +0 -10
  998. homeassistant/components/habitica/translations/pt-BR.json +0 -3
  999. homeassistant/components/habitica/translations/pt.json +0 -13
  1000. homeassistant/components/habitica/translations/ru.json +0 -13
  1001. homeassistant/components/habitica/translations/sk.json +0 -13
  1002. homeassistant/components/habitica/translations/sv.json +0 -13
  1003. homeassistant/components/habitica/translations/tr.json +0 -13
  1004. homeassistant/components/habitica/translations/zh-Hans.json +0 -13
  1005. homeassistant/components/habitica/translations/zh-Hant.json +0 -13
  1006. homeassistant/components/habitica/util.py +14 -14
  1007. homeassistant/components/harmony/translations/es.json +1 -1
  1008. homeassistant/components/harmony/translations/ga.json +18 -0
  1009. homeassistant/components/harmony/translations/sv.json +1 -1
  1010. homeassistant/components/hassio/backup.py +2 -2
  1011. homeassistant/components/hassio/ingress.py +8 -8
  1012. homeassistant/components/hassio/issues.py +4 -2
  1013. homeassistant/components/hassio/strings.json +42 -30
  1014. homeassistant/components/hassio/translations/bg.json +0 -1
  1015. homeassistant/components/hassio/translations/ca.json +0 -22
  1016. homeassistant/components/hassio/translations/cs.json +37 -25
  1017. homeassistant/components/hassio/translations/da.json +0 -2
  1018. homeassistant/components/hassio/translations/de.json +37 -25
  1019. homeassistant/components/hassio/translations/el.json +3 -25
  1020. homeassistant/components/hassio/translations/en-GB.json +37 -25
  1021. homeassistant/components/hassio/translations/en.json +37 -25
  1022. homeassistant/components/hassio/translations/es.json +3 -25
  1023. homeassistant/components/hassio/translations/et.json +3 -25
  1024. homeassistant/components/hassio/translations/fi.json +0 -23
  1025. homeassistant/components/hassio/translations/fr.json +3 -24
  1026. homeassistant/components/hassio/translations/fy.json +0 -7
  1027. homeassistant/components/hassio/translations/ga.json +57 -0
  1028. homeassistant/components/hassio/translations/gsw.json +0 -2
  1029. homeassistant/components/hassio/translations/he.json +37 -25
  1030. homeassistant/components/hassio/translations/hr.json +0 -2
  1031. homeassistant/components/hassio/translations/hu.json +0 -25
  1032. homeassistant/components/hassio/translations/id.json +0 -25
  1033. homeassistant/components/hassio/translations/it.json +0 -22
  1034. homeassistant/components/hassio/translations/ja.json +0 -23
  1035. homeassistant/components/hassio/translations/ko.json +3 -22
  1036. homeassistant/components/hassio/translations/lt.json +3 -25
  1037. homeassistant/components/hassio/translations/nb.json +0 -22
  1038. homeassistant/components/hassio/translations/nl.json +0 -23
  1039. homeassistant/components/hassio/translations/pl.json +0 -22
  1040. homeassistant/components/hassio/translations/pt-BR.json +0 -22
  1041. homeassistant/components/hassio/translations/pt.json +0 -25
  1042. homeassistant/components/hassio/translations/ro.json +0 -22
  1043. homeassistant/components/hassio/translations/ru.json +0 -25
  1044. homeassistant/components/hassio/translations/sk.json +37 -25
  1045. homeassistant/components/hassio/translations/sl.json +0 -21
  1046. homeassistant/components/hassio/translations/sv.json +0 -25
  1047. homeassistant/components/hassio/translations/tr.json +0 -25
  1048. homeassistant/components/hassio/translations/uk.json +0 -22
  1049. homeassistant/components/hassio/translations/vi.json +0 -23
  1050. homeassistant/components/hassio/translations/zh-Hans.json +3 -25
  1051. homeassistant/components/hassio/translations/zh-Hant.json +37 -25
  1052. homeassistant/components/heos/__init__.py +2 -2
  1053. homeassistant/components/heos/config_flow.py +51 -41
  1054. homeassistant/components/heos/manifest.json +2 -1
  1055. homeassistant/components/heos/services.py +3 -2
  1056. homeassistant/components/heos/translations/ga.json +11 -0
  1057. homeassistant/components/heos/translations/ko.json +21 -0
  1058. homeassistant/components/here_travel_time/__init__.py +30 -1
  1059. homeassistant/components/here_travel_time/config_flow.py +16 -1
  1060. homeassistant/components/here_travel_time/const.py +1 -0
  1061. homeassistant/components/here_travel_time/coordinator.py +11 -1
  1062. homeassistant/components/here_travel_time/model.py +2 -1
  1063. homeassistant/components/here_travel_time/strings.json +5 -3
  1064. homeassistant/components/here_travel_time/translations/ca.json +0 -5
  1065. homeassistant/components/here_travel_time/translations/cs.json +4 -2
  1066. homeassistant/components/here_travel_time/translations/de.json +4 -2
  1067. homeassistant/components/here_travel_time/translations/el.json +4 -2
  1068. homeassistant/components/here_travel_time/translations/en-GB.json +4 -2
  1069. homeassistant/components/here_travel_time/translations/en.json +4 -2
  1070. homeassistant/components/here_travel_time/translations/es.json +4 -2
  1071. homeassistant/components/here_travel_time/translations/et.json +4 -2
  1072. homeassistant/components/here_travel_time/translations/fi.json +0 -5
  1073. homeassistant/components/here_travel_time/translations/fr.json +1 -2
  1074. homeassistant/components/here_travel_time/translations/ga.json +16 -0
  1075. homeassistant/components/here_travel_time/translations/hu.json +1 -2
  1076. homeassistant/components/here_travel_time/translations/id.json +0 -5
  1077. homeassistant/components/here_travel_time/translations/it.json +0 -5
  1078. homeassistant/components/here_travel_time/translations/ja.json +1 -2
  1079. homeassistant/components/here_travel_time/translations/ko.json +0 -5
  1080. homeassistant/components/here_travel_time/translations/lt.json +1 -2
  1081. homeassistant/components/here_travel_time/translations/mk.json +3 -0
  1082. homeassistant/components/here_travel_time/translations/nb.json +0 -5
  1083. homeassistant/components/here_travel_time/translations/nl.json +0 -5
  1084. homeassistant/components/here_travel_time/translations/pl.json +0 -5
  1085. homeassistant/components/here_travel_time/translations/pt-BR.json +0 -5
  1086. homeassistant/components/here_travel_time/translations/pt.json +1 -2
  1087. homeassistant/components/here_travel_time/translations/ro.json +0 -5
  1088. homeassistant/components/here_travel_time/translations/ru.json +1 -2
  1089. homeassistant/components/here_travel_time/translations/sk.json +4 -2
  1090. homeassistant/components/here_travel_time/translations/sv.json +1 -2
  1091. homeassistant/components/here_travel_time/translations/tr.json +1 -2
  1092. homeassistant/components/here_travel_time/translations/uk.json +0 -5
  1093. homeassistant/components/here_travel_time/translations/zh-Hans.json +4 -2
  1094. homeassistant/components/here_travel_time/translations/zh-Hant.json +4 -2
  1095. homeassistant/components/history_stats/__init__.py +43 -1
  1096. homeassistant/components/history_stats/config_flow.py +135 -2
  1097. homeassistant/components/history_stats/coordinator.py +7 -0
  1098. homeassistant/components/history_stats/data.py +5 -1
  1099. homeassistant/components/history_stats/helpers.py +9 -4
  1100. homeassistant/components/history_stats/sensor.py +54 -8
  1101. homeassistant/components/hive/translations/it.json +3 -3
  1102. homeassistant/components/hko/translations/ga.json +9 -0
  1103. homeassistant/components/hko/translations/ko.json +11 -0
  1104. homeassistant/components/holiday/__init__.py +0 -6
  1105. homeassistant/components/holiday/config_flow.py +2 -2
  1106. homeassistant/components/holiday/manifest.json +1 -1
  1107. homeassistant/components/holiday/translations/ga.json +5 -0
  1108. homeassistant/components/home_connect/__init__.py +2 -2
  1109. homeassistant/components/home_connect/coordinator.py +22 -24
  1110. homeassistant/components/home_connect/services.py +3 -2
  1111. homeassistant/components/home_connect/strings.json +10 -21
  1112. homeassistant/components/home_connect/translations/cs.json +2 -11
  1113. homeassistant/components/home_connect/translations/da.json +6 -0
  1114. homeassistant/components/home_connect/translations/de.json +0 -11
  1115. homeassistant/components/home_connect/translations/el.json +0 -11
  1116. homeassistant/components/home_connect/translations/en-GB.json +0 -11
  1117. homeassistant/components/home_connect/translations/en.json +0 -11
  1118. homeassistant/components/home_connect/translations/es.json +0 -11
  1119. homeassistant/components/home_connect/translations/et.json +0 -11
  1120. homeassistant/components/home_connect/translations/ga.json +2 -10
  1121. homeassistant/components/home_connect/translations/hu.json +0 -10
  1122. homeassistant/components/home_connect/translations/it.json +44 -56
  1123. homeassistant/components/home_connect/translations/ko.json +3 -0
  1124. homeassistant/components/home_connect/translations/lt.json +0 -11
  1125. homeassistant/components/home_connect/translations/pt.json +0 -11
  1126. homeassistant/components/home_connect/translations/ru.json +6 -15
  1127. homeassistant/components/home_connect/translations/sk.json +0 -11
  1128. homeassistant/components/home_connect/translations/sv.json +0 -10
  1129. homeassistant/components/home_connect/translations/zh-Hans.json +0 -11
  1130. homeassistant/components/home_connect/translations/zh-Hant.json +0 -11
  1131. homeassistant/components/homeassistant/__init__.py +7 -2
  1132. homeassistant/components/homeassistant/strings.json +3 -3
  1133. homeassistant/components/homeassistant/translations/de.json +1 -1
  1134. homeassistant/components/homeassistant/translations/fr.json +3 -0
  1135. homeassistant/components/homeassistant/translations/ga.json +32 -0
  1136. homeassistant/components/homeassistant/translations/nl.json +3 -0
  1137. homeassistant/components/homeassistant/triggers/time.py +20 -1
  1138. homeassistant/components/homeassistant_hardware/coordinator.py +9 -1
  1139. homeassistant/components/homeassistant_sky_connect/translations/ga.json +1 -0
  1140. homeassistant/components/homeassistant_sky_connect/update.py +1 -0
  1141. homeassistant/components/homeassistant_yellow/update.py +1 -0
  1142. homeassistant/components/homee/__init__.py +4 -6
  1143. homeassistant/components/homee/config_flow.py +60 -0
  1144. homeassistant/components/homee/manifest.json +1 -1
  1145. homeassistant/components/homee/quality_scale.yaml +11 -8
  1146. homeassistant/components/homee/strings.json +14 -2
  1147. homeassistant/components/homee/translations/bg.json +12 -0
  1148. homeassistant/components/homee/translations/ca.json +8 -0
  1149. homeassistant/components/homee/translations/cs.json +12 -0
  1150. homeassistant/components/homee/translations/da.json +12 -0
  1151. homeassistant/components/homee/translations/de.json +12 -0
  1152. homeassistant/components/homee/translations/el.json +12 -0
  1153. homeassistant/components/homee/translations/en-GB.json +12 -0
  1154. homeassistant/components/homee/translations/en.json +12 -0
  1155. homeassistant/components/homee/translations/es.json +13 -1
  1156. homeassistant/components/homee/translations/et.json +12 -0
  1157. homeassistant/components/homee/translations/ga.json +9 -0
  1158. homeassistant/components/homee/translations/he.json +8 -0
  1159. homeassistant/components/homee/translations/it.json +1 -1
  1160. homeassistant/components/homee/translations/ja.json +12 -0
  1161. homeassistant/components/homee/translations/ko.json +22 -0
  1162. homeassistant/components/homee/translations/lt.json +12 -0
  1163. homeassistant/components/homee/translations/nl.json +12 -0
  1164. homeassistant/components/homee/translations/pt.json +12 -0
  1165. homeassistant/components/homee/translations/ru.json +18 -1
  1166. homeassistant/components/homee/translations/sk.json +12 -0
  1167. homeassistant/components/homee/translations/sv.json +12 -0
  1168. homeassistant/components/homee/translations/zh-Hans.json +12 -0
  1169. homeassistant/components/homee/translations/zh-Hant.json +12 -0
  1170. homeassistant/components/homekit/__init__.py +7 -4
  1171. homeassistant/components/homekit_controller/translations/ga.json +15 -0
  1172. homeassistant/components/homekit_controller/translations/he.json +1 -1
  1173. homeassistant/components/homematicip_cloud/const.py +1 -0
  1174. homeassistant/components/homematicip_cloud/cover.py +2 -1
  1175. homeassistant/components/homematicip_cloud/icons.json +11 -0
  1176. homeassistant/components/homematicip_cloud/light.py +76 -1
  1177. homeassistant/components/homematicip_cloud/manifest.json +1 -1
  1178. homeassistant/components/homematicip_cloud/sensor.py +304 -102
  1179. homeassistant/components/homematicip_cloud/strings.json +11 -0
  1180. homeassistant/components/homematicip_cloud/switch.py +6 -0
  1181. homeassistant/components/homematicip_cloud/translations/cs.json +11 -0
  1182. homeassistant/components/homematicip_cloud/translations/de.json +11 -0
  1183. homeassistant/components/homematicip_cloud/translations/el.json +11 -0
  1184. homeassistant/components/homematicip_cloud/translations/en-GB.json +11 -0
  1185. homeassistant/components/homematicip_cloud/translations/en.json +11 -0
  1186. homeassistant/components/homematicip_cloud/translations/es.json +11 -0
  1187. homeassistant/components/homematicip_cloud/translations/et.json +11 -0
  1188. homeassistant/components/homematicip_cloud/translations/ga.json +11 -0
  1189. homeassistant/components/homematicip_cloud/translations/it.json +11 -0
  1190. homeassistant/components/homematicip_cloud/translations/ja.json +11 -0
  1191. homeassistant/components/homematicip_cloud/translations/lt.json +11 -0
  1192. homeassistant/components/homematicip_cloud/translations/mk.json +9 -0
  1193. homeassistant/components/homematicip_cloud/translations/nl.json +9 -0
  1194. homeassistant/components/homematicip_cloud/translations/pt.json +11 -0
  1195. homeassistant/components/homematicip_cloud/translations/sk.json +11 -0
  1196. homeassistant/components/homematicip_cloud/translations/sv.json +11 -0
  1197. homeassistant/components/homematicip_cloud/translations/zh-Hans.json +11 -0
  1198. homeassistant/components/homematicip_cloud/translations/zh-Hant.json +11 -0
  1199. homeassistant/components/homematicip_cloud/valve.py +59 -0
  1200. homeassistant/components/homewizard/translations/ga.json +40 -0
  1201. homeassistant/components/homeworks/translations/es.json +2 -2
  1202. homeassistant/components/homeworks/translations/ga.json +147 -1
  1203. homeassistant/components/homeworks/translations/ko.json +41 -0
  1204. homeassistant/components/honeywell/__init__.py +0 -9
  1205. homeassistant/components/honeywell/config_flow.py +2 -2
  1206. homeassistant/components/honeywell/translations/ga.json +55 -0
  1207. homeassistant/components/html5/strings.json +1 -1
  1208. homeassistant/components/html5/translations/fr.json +1 -0
  1209. homeassistant/components/html5/translations/ko.json +9 -0
  1210. homeassistant/components/http/__init__.py +1 -25
  1211. homeassistant/components/http/translations/sv.json +1 -1
  1212. homeassistant/components/huawei_lte/__init__.py +5 -17
  1213. homeassistant/components/huawei_lte/config_flow.py +14 -9
  1214. homeassistant/components/huawei_lte/const.py +1 -1
  1215. homeassistant/components/huawei_lte/diagnostics.py +86 -0
  1216. homeassistant/components/huawei_lte/notify.py +0 -3
  1217. homeassistant/components/huawei_lte/translations/ga.json +112 -0
  1218. homeassistant/components/hue/translations/ga.json +13 -0
  1219. homeassistant/components/hue/v1/light.py +2 -0
  1220. homeassistant/components/hue/v1/sensor_base.py +1 -0
  1221. homeassistant/components/humidifier/translations/he.json +1 -1
  1222. homeassistant/components/humidifier/translations/it.json +3 -3
  1223. homeassistant/components/hunterdouglas_powerview/__init__.py +15 -2
  1224. homeassistant/components/hunterdouglas_powerview/translations/ga.json +17 -0
  1225. homeassistant/components/husqvarna_automower/button.py +2 -7
  1226. homeassistant/components/husqvarna_automower/calendar.py +22 -3
  1227. homeassistant/components/husqvarna_automower/coordinator.py +150 -126
  1228. homeassistant/components/husqvarna_automower/entity.py +9 -18
  1229. homeassistant/components/husqvarna_automower/icons.json +23 -3
  1230. homeassistant/components/husqvarna_automower/lawn_mower.py +2 -2
  1231. homeassistant/components/husqvarna_automower/manifest.json +1 -1
  1232. homeassistant/components/husqvarna_automower/sensor.py +58 -6
  1233. homeassistant/components/husqvarna_automower/strings.json +27 -7
  1234. homeassistant/components/husqvarna_automower/translations/bg.json +10 -0
  1235. homeassistant/components/husqvarna_automower/translations/cs.json +20 -0
  1236. homeassistant/components/husqvarna_automower/translations/de.json +20 -0
  1237. homeassistant/components/husqvarna_automower/translations/el.json +8 -0
  1238. homeassistant/components/husqvarna_automower/translations/en-GB.json +20 -0
  1239. homeassistant/components/husqvarna_automower/translations/en.json +20 -0
  1240. homeassistant/components/husqvarna_automower/translations/es.json +20 -0
  1241. homeassistant/components/husqvarna_automower/translations/et.json +20 -0
  1242. homeassistant/components/husqvarna_automower/translations/ga.json +235 -2
  1243. homeassistant/components/husqvarna_automower/translations/he.json +7 -0
  1244. homeassistant/components/husqvarna_automower/translations/it.json +1 -1
  1245. homeassistant/components/husqvarna_automower/translations/ko.json +11 -0
  1246. homeassistant/components/husqvarna_automower/translations/lt.json +8 -0
  1247. homeassistant/components/husqvarna_automower/translations/mk.json +7 -0
  1248. homeassistant/components/husqvarna_automower/translations/nl.json +1 -0
  1249. homeassistant/components/husqvarna_automower/translations/sk.json +20 -0
  1250. homeassistant/components/husqvarna_automower/translations/sv.json +20 -0
  1251. homeassistant/components/husqvarna_automower/translations/zh-Hans.json +20 -0
  1252. homeassistant/components/husqvarna_automower/translations/zh-Hant.json +20 -0
  1253. homeassistant/components/husqvarna_automower_ble/__init__.py +1 -0
  1254. homeassistant/components/husqvarna_automower_ble/coordinator.py +3 -3
  1255. homeassistant/components/husqvarna_automower_ble/entity.py +16 -0
  1256. homeassistant/components/husqvarna_automower_ble/sensor.py +51 -0
  1257. homeassistant/components/huum/__init__.py +14 -32
  1258. homeassistant/components/huum/binary_sensor.py +41 -0
  1259. homeassistant/components/huum/climate.py +32 -50
  1260. homeassistant/components/huum/config_flow.py +2 -2
  1261. homeassistant/components/huum/const.py +5 -1
  1262. homeassistant/components/huum/coordinator.py +60 -0
  1263. homeassistant/components/huum/entity.py +24 -0
  1264. homeassistant/components/huum/light.py +62 -0
  1265. homeassistant/components/huum/manifest.json +2 -2
  1266. homeassistant/components/huum/strings.json +7 -0
  1267. homeassistant/components/huum/translations/bg.json +7 -0
  1268. homeassistant/components/huum/translations/cs.json +7 -0
  1269. homeassistant/components/huum/translations/de.json +7 -0
  1270. homeassistant/components/huum/translations/el.json +7 -0
  1271. homeassistant/components/huum/translations/en-GB.json +7 -0
  1272. homeassistant/components/huum/translations/en.json +7 -0
  1273. homeassistant/components/huum/translations/es.json +7 -0
  1274. homeassistant/components/huum/translations/et.json +7 -0
  1275. homeassistant/components/huum/translations/fi.json +7 -0
  1276. homeassistant/components/huum/translations/ga.json +10 -0
  1277. homeassistant/components/huum/translations/he.json +7 -0
  1278. homeassistant/components/huum/translations/ko.json +12 -0
  1279. homeassistant/components/huum/translations/nl.json +7 -0
  1280. homeassistant/components/huum/translations/ru.json +7 -0
  1281. homeassistant/components/huum/translations/sk.json +7 -0
  1282. homeassistant/components/huum/translations/sv.json +7 -0
  1283. homeassistant/components/huum/translations/zh-Hans.json +7 -0
  1284. homeassistant/components/huum/translations/zh-Hant.json +7 -0
  1285. homeassistant/components/hydrawise/binary_sensor.py +36 -21
  1286. homeassistant/components/hydrawise/const.py +1 -0
  1287. homeassistant/components/hydrawise/coordinator.py +90 -2
  1288. homeassistant/components/hydrawise/entity.py +4 -2
  1289. homeassistant/components/hydrawise/manifest.json +1 -1
  1290. homeassistant/components/hydrawise/sensor.py +53 -30
  1291. homeassistant/components/hydrawise/switch.py +16 -7
  1292. homeassistant/components/hydrawise/translations/ga.json +26 -1
  1293. homeassistant/components/hydrawise/translations/ko.json +15 -0
  1294. homeassistant/components/hydrawise/valve.py +16 -6
  1295. homeassistant/components/hyperion/__init__.py +0 -6
  1296. homeassistant/components/hyperion/config_flow.py +2 -2
  1297. homeassistant/components/hyperion/translations/ga.json +5 -0
  1298. homeassistant/components/ibeacon/translations/ga.json +15 -0
  1299. homeassistant/components/idasen_desk/translations/ga.json +18 -0
  1300. homeassistant/components/image_upload/manifest.json +1 -1
  1301. homeassistant/components/imap/translations/ga.json +100 -0
  1302. homeassistant/components/imeon_inverter/coordinator.py +2 -5
  1303. homeassistant/components/imeon_inverter/icons.json +0 -27
  1304. homeassistant/components/imeon_inverter/manifest.json +1 -1
  1305. homeassistant/components/imeon_inverter/sensor.py +0 -69
  1306. homeassistant/components/imeon_inverter/strings.json +0 -27
  1307. homeassistant/components/imeon_inverter/translations/cs.json +0 -27
  1308. homeassistant/components/imeon_inverter/translations/de.json +0 -27
  1309. homeassistant/components/imeon_inverter/translations/el.json +0 -27
  1310. homeassistant/components/imeon_inverter/translations/en-GB.json +0 -27
  1311. homeassistant/components/imeon_inverter/translations/en.json +0 -27
  1312. homeassistant/components/imeon_inverter/translations/es.json +0 -27
  1313. homeassistant/components/imeon_inverter/translations/et.json +0 -27
  1314. homeassistant/components/imeon_inverter/translations/ga.json +0 -27
  1315. homeassistant/components/imeon_inverter/translations/hu.json +0 -27
  1316. homeassistant/components/imeon_inverter/translations/it.json +0 -9
  1317. homeassistant/components/imeon_inverter/translations/ko.json +13 -0
  1318. homeassistant/components/imeon_inverter/translations/lt.json +0 -27
  1319. homeassistant/components/imeon_inverter/translations/pt.json +0 -27
  1320. homeassistant/components/imeon_inverter/translations/ru.json +0 -27
  1321. homeassistant/components/imeon_inverter/translations/sk.json +0 -27
  1322. homeassistant/components/imeon_inverter/translations/sv.json +0 -27
  1323. homeassistant/components/imeon_inverter/translations/zh-Hans.json +0 -27
  1324. homeassistant/components/imeon_inverter/translations/zh-Hant.json +0 -27
  1325. homeassistant/components/imgw_pib/icons.json +6 -0
  1326. homeassistant/components/imgw_pib/manifest.json +1 -1
  1327. homeassistant/components/imgw_pib/sensor.py +42 -1
  1328. homeassistant/components/imgw_pib/strings.json +40 -0
  1329. homeassistant/components/imgw_pib/translations/bg.json +22 -0
  1330. homeassistant/components/imgw_pib/translations/cs.json +40 -0
  1331. homeassistant/components/imgw_pib/translations/de.json +40 -0
  1332. homeassistant/components/imgw_pib/translations/el.json +40 -0
  1333. homeassistant/components/imgw_pib/translations/en-GB.json +40 -0
  1334. homeassistant/components/imgw_pib/translations/en.json +40 -0
  1335. homeassistant/components/imgw_pib/translations/es.json +40 -0
  1336. homeassistant/components/imgw_pib/translations/et.json +40 -0
  1337. homeassistant/components/imgw_pib/translations/ga.json +53 -0
  1338. homeassistant/components/imgw_pib/translations/he.json +17 -0
  1339. homeassistant/components/imgw_pib/translations/lt.json +38 -0
  1340. homeassistant/components/imgw_pib/translations/mk.json +40 -1
  1341. homeassistant/components/imgw_pib/translations/nl.json +11 -0
  1342. homeassistant/components/imgw_pib/translations/pl.json +40 -0
  1343. homeassistant/components/imgw_pib/translations/pt.json +3 -0
  1344. homeassistant/components/imgw_pib/translations/ru.json +15 -0
  1345. homeassistant/components/imgw_pib/translations/sk.json +40 -0
  1346. homeassistant/components/imgw_pib/translations/sv.json +38 -0
  1347. homeassistant/components/imgw_pib/translations/zh-Hans.json +40 -0
  1348. homeassistant/components/imgw_pib/translations/zh-Hant.json +40 -0
  1349. homeassistant/components/immich/__init__.py +12 -0
  1350. homeassistant/components/immich/icons.json +5 -0
  1351. homeassistant/components/immich/manifest.json +1 -1
  1352. homeassistant/components/immich/media_source.py +119 -29
  1353. homeassistant/components/immich/services.py +98 -0
  1354. homeassistant/components/immich/services.yaml +18 -0
  1355. homeassistant/components/immich/strings.json +37 -0
  1356. homeassistant/components/immich/translations/cs.json +37 -0
  1357. homeassistant/components/immich/translations/de.json +37 -0
  1358. homeassistant/components/immich/translations/en-GB.json +37 -0
  1359. homeassistant/components/immich/translations/en.json +37 -0
  1360. homeassistant/components/immich/translations/es.json +37 -0
  1361. homeassistant/components/immich/translations/et.json +37 -0
  1362. homeassistant/components/immich/translations/fr.json +37 -0
  1363. homeassistant/components/immich/translations/ga.json +37 -0
  1364. homeassistant/components/immich/translations/he.json +10 -0
  1365. homeassistant/components/immich/translations/ko.json +18 -0
  1366. homeassistant/components/immich/translations/nl.json +10 -0
  1367. homeassistant/components/immich/translations/sk.json +37 -0
  1368. homeassistant/components/immich/translations/sv.json +13 -0
  1369. homeassistant/components/immich/translations/zh-Hans.json +37 -0
  1370. homeassistant/components/immich/translations/zh-Hant.json +37 -0
  1371. homeassistant/components/incomfort/translations/ga.json +11 -1
  1372. homeassistant/components/incomfort/translations/it.json +1 -1
  1373. homeassistant/components/incomfort/translations/ko.json +13 -0
  1374. homeassistant/components/input_boolean/translations/it.json +2 -2
  1375. homeassistant/components/input_button/translations/ga.json +7 -0
  1376. homeassistant/components/input_text/__init__.py +13 -4
  1377. homeassistant/components/insteon/strings.json +5 -5
  1378. homeassistant/components/integration/__init__.py +44 -6
  1379. homeassistant/components/integration/config_flow.py +2 -0
  1380. homeassistant/components/integration/sensor.py +33 -23
  1381. homeassistant/components/intellifire/translations/ko.json +8 -0
  1382. homeassistant/components/iometer/translations/ko.json +11 -0
  1383. homeassistant/components/iotawatt/translations/ga.json +11 -0
  1384. homeassistant/components/iotty/translations/ko.json +11 -0
  1385. homeassistant/components/ipp/translations/he.json +1 -1
  1386. homeassistant/components/iqvia/manifest.json +1 -1
  1387. homeassistant/components/iron_os/__init__.py +13 -16
  1388. homeassistant/components/iron_os/const.py +4 -0
  1389. homeassistant/components/iron_os/coordinator.py +3 -1
  1390. homeassistant/components/iron_os/icons.json +6 -0
  1391. homeassistant/components/iron_os/number.py +156 -69
  1392. homeassistant/components/iron_os/strings.json +3 -0
  1393. homeassistant/components/iron_os/switch.py +19 -2
  1394. homeassistant/components/iron_os/translations/cs.json +3 -0
  1395. homeassistant/components/iron_os/translations/de.json +3 -0
  1396. homeassistant/components/iron_os/translations/el.json +3 -0
  1397. homeassistant/components/iron_os/translations/en-GB.json +3 -0
  1398. homeassistant/components/iron_os/translations/en.json +3 -0
  1399. homeassistant/components/iron_os/translations/es.json +4 -1
  1400. homeassistant/components/iron_os/translations/et.json +3 -0
  1401. homeassistant/components/iron_os/translations/ga.json +3 -0
  1402. homeassistant/components/iron_os/translations/he.json +1 -1
  1403. homeassistant/components/iron_os/translations/it.json +5 -5
  1404. homeassistant/components/iron_os/translations/ja.json +3 -0
  1405. homeassistant/components/iron_os/translations/lt.json +3 -0
  1406. homeassistant/components/iron_os/translations/pt.json +3 -0
  1407. homeassistant/components/iron_os/translations/ru.json +3 -0
  1408. homeassistant/components/iron_os/translations/sk.json +3 -0
  1409. homeassistant/components/iron_os/translations/zh-Hans.json +3 -0
  1410. homeassistant/components/iron_os/translations/zh-Hant.json +3 -0
  1411. homeassistant/components/iskra/strings.json +8 -8
  1412. homeassistant/components/iskra/translations/ko.json +22 -0
  1413. homeassistant/components/islamic_prayer_times/coordinator.py +3 -3
  1414. homeassistant/components/israel_rail/manifest.json +1 -1
  1415. homeassistant/components/ista_ecotrend/translations/ga.json +31 -0
  1416. homeassistant/components/ista_ecotrend/translations/ko.json +22 -0
  1417. homeassistant/components/isy994/__init__.py +0 -6
  1418. homeassistant/components/isy994/config_flow.py +3 -3
  1419. homeassistant/components/ituran/__init__.py +1 -0
  1420. homeassistant/components/ituran/binary_sensor.py +75 -0
  1421. homeassistant/components/ituran/device_tracker.py +4 -2
  1422. homeassistant/components/ituran/icons.json +3 -0
  1423. homeassistant/components/ituran/manifest.json +1 -1
  1424. homeassistant/components/ituran/sensor.py +24 -4
  1425. homeassistant/components/ituran/strings.json +3 -0
  1426. homeassistant/components/ituran/translations/cs.json +3 -0
  1427. homeassistant/components/ituran/translations/de.json +3 -0
  1428. homeassistant/components/ituran/translations/en-GB.json +3 -0
  1429. homeassistant/components/ituran/translations/en.json +3 -0
  1430. homeassistant/components/ituran/translations/es.json +3 -0
  1431. homeassistant/components/ituran/translations/et.json +3 -0
  1432. homeassistant/components/ituran/translations/ga.json +3 -0
  1433. homeassistant/components/ituran/translations/he.json +3 -0
  1434. homeassistant/components/ituran/translations/sk.json +3 -0
  1435. homeassistant/components/ituran/translations/sv.json +3 -0
  1436. homeassistant/components/ituran/translations/zh-Hans.json +3 -0
  1437. homeassistant/components/ituran/translations/zh-Hant.json +3 -0
  1438. homeassistant/components/jellyfin/browse_media.py +47 -0
  1439. homeassistant/components/jellyfin/media_player.py +24 -3
  1440. homeassistant/components/jellyfin/translations/ga.json +9 -0
  1441. homeassistant/components/jewish_calendar/__init__.py +0 -7
  1442. homeassistant/components/jewish_calendar/binary_sensor.py +17 -55
  1443. homeassistant/components/jewish_calendar/config_flow.py +6 -2
  1444. homeassistant/components/jewish_calendar/entity.py +62 -3
  1445. homeassistant/components/jewish_calendar/sensor.py +55 -72
  1446. homeassistant/components/jewish_calendar/services.py +0 -1
  1447. homeassistant/components/jewish_calendar/translations/ga.json +7 -1
  1448. homeassistant/components/jewish_calendar/translations/ko.json +17 -0
  1449. homeassistant/components/jewish_calendar/translations/nl.json +7 -2
  1450. homeassistant/components/justnimbus/translations/ga.json +27 -0
  1451. homeassistant/components/jvc_projector/translations/ga.json +13 -1
  1452. homeassistant/components/jvc_projector/translations/it.json +1 -1
  1453. homeassistant/components/keba/strings.json +1 -1
  1454. homeassistant/components/keenetic_ndms2/__init__.py +0 -7
  1455. homeassistant/components/keenetic_ndms2/config_flow.py +27 -7
  1456. homeassistant/components/keenetic_ndms2/strings.json +2 -1
  1457. homeassistant/components/keenetic_ndms2/translations/bg.json +2 -1
  1458. homeassistant/components/keenetic_ndms2/translations/ca.json +2 -1
  1459. homeassistant/components/keenetic_ndms2/translations/cs.json +2 -1
  1460. homeassistant/components/keenetic_ndms2/translations/de.json +2 -1
  1461. homeassistant/components/keenetic_ndms2/translations/el.json +2 -1
  1462. homeassistant/components/keenetic_ndms2/translations/en-GB.json +2 -1
  1463. homeassistant/components/keenetic_ndms2/translations/en.json +2 -1
  1464. homeassistant/components/keenetic_ndms2/translations/es.json +2 -1
  1465. homeassistant/components/keenetic_ndms2/translations/et.json +2 -1
  1466. homeassistant/components/keenetic_ndms2/translations/ga.json +12 -0
  1467. homeassistant/components/keenetic_ndms2/translations/he.json +2 -1
  1468. homeassistant/components/keenetic_ndms2/translations/ja.json +2 -1
  1469. homeassistant/components/keenetic_ndms2/translations/lt.json +2 -1
  1470. homeassistant/components/keenetic_ndms2/translations/nl.json +2 -1
  1471. homeassistant/components/keenetic_ndms2/translations/pt.json +2 -1
  1472. homeassistant/components/keenetic_ndms2/translations/ru.json +2 -1
  1473. homeassistant/components/keenetic_ndms2/translations/sk.json +2 -1
  1474. homeassistant/components/keenetic_ndms2/translations/sv.json +2 -1
  1475. homeassistant/components/keenetic_ndms2/translations/zh-Hans.json +2 -1
  1476. homeassistant/components/keenetic_ndms2/translations/zh-Hant.json +2 -1
  1477. homeassistant/components/keymitt_ble/manifest.json +3 -3
  1478. homeassistant/components/kitchen_sink/__init__.py +0 -7
  1479. homeassistant/components/kitchen_sink/config_flow.py +3 -3
  1480. homeassistant/components/kitchen_sink/translations/ga.json +12 -0
  1481. homeassistant/components/kitchen_sink/translations/ko.json +11 -0
  1482. homeassistant/components/knocki/translations/ga.json +15 -0
  1483. homeassistant/components/knocki/translations/ko.json +12 -0
  1484. homeassistant/components/knx/__init__.py +11 -298
  1485. homeassistant/components/knx/binary_sensor.py +13 -12
  1486. homeassistant/components/knx/button.py +2 -2
  1487. homeassistant/components/knx/climate.py +2 -2
  1488. homeassistant/components/knx/config_flow.py +83 -63
  1489. homeassistant/components/knx/const.py +1 -1
  1490. homeassistant/components/knx/cover.py +18 -34
  1491. homeassistant/components/knx/date.py +2 -2
  1492. homeassistant/components/knx/datetime.py +2 -2
  1493. homeassistant/components/knx/device.py +1 -1
  1494. homeassistant/components/knx/device_trigger.py +1 -1
  1495. homeassistant/components/knx/diagnostics.py +1 -1
  1496. homeassistant/components/knx/entity.py +2 -2
  1497. homeassistant/components/knx/expose.py +1 -1
  1498. homeassistant/components/knx/fan.py +2 -2
  1499. homeassistant/components/knx/knx_module.py +301 -0
  1500. homeassistant/components/knx/light.py +91 -77
  1501. homeassistant/components/knx/manifest.json +1 -1
  1502. homeassistant/components/knx/notify.py +2 -2
  1503. homeassistant/components/knx/number.py +2 -2
  1504. homeassistant/components/knx/quality_scale.yaml +1 -1
  1505. homeassistant/components/knx/scene.py +2 -2
  1506. homeassistant/components/knx/select.py +2 -2
  1507. homeassistant/components/knx/sensor.py +2 -2
  1508. homeassistant/components/knx/services.py +2 -2
  1509. homeassistant/components/knx/storage/__init__.py +1 -1
  1510. homeassistant/components/knx/storage/config_store.py +17 -2
  1511. homeassistant/components/knx/storage/const.py +14 -7
  1512. homeassistant/components/knx/storage/entity_store_schema.py +106 -89
  1513. homeassistant/components/knx/storage/entity_store_validation.py +1 -1
  1514. homeassistant/components/knx/storage/knx_selector.py +26 -0
  1515. homeassistant/components/knx/storage/migration.py +42 -0
  1516. homeassistant/components/knx/storage/util.py +51 -0
  1517. homeassistant/components/knx/strings.json +12 -150
  1518. homeassistant/components/knx/switch.py +10 -17
  1519. homeassistant/components/knx/text.py +2 -2
  1520. homeassistant/components/knx/time.py +2 -2
  1521. homeassistant/components/knx/translations/bg.json +0 -48
  1522. homeassistant/components/knx/translations/ca.json +3 -132
  1523. homeassistant/components/knx/translations/cs.json +10 -148
  1524. homeassistant/components/knx/translations/da.json +0 -13
  1525. homeassistant/components/knx/translations/de.json +10 -148
  1526. homeassistant/components/knx/translations/el.json +10 -148
  1527. homeassistant/components/knx/translations/en-GB.json +10 -148
  1528. homeassistant/components/knx/translations/en.json +10 -148
  1529. homeassistant/components/knx/translations/es.json +10 -148
  1530. homeassistant/components/knx/translations/et.json +10 -148
  1531. homeassistant/components/knx/translations/fi.json +0 -119
  1532. homeassistant/components/knx/translations/fr.json +0 -76
  1533. homeassistant/components/knx/translations/ga.json +29 -48
  1534. homeassistant/components/knx/translations/gl.json +0 -33
  1535. homeassistant/components/knx/translations/he.json +3 -15
  1536. homeassistant/components/knx/translations/hu.json +0 -148
  1537. homeassistant/components/knx/translations/id.json +0 -100
  1538. homeassistant/components/knx/translations/it.json +0 -119
  1539. homeassistant/components/knx/translations/ja.json +0 -148
  1540. homeassistant/components/knx/translations/ko.json +0 -119
  1541. homeassistant/components/knx/translations/lt.json +10 -148
  1542. homeassistant/components/knx/translations/lv.json +0 -26
  1543. homeassistant/components/knx/translations/nb.json +0 -100
  1544. homeassistant/components/knx/translations/nl.json +3 -125
  1545. homeassistant/components/knx/translations/pl.json +0 -97
  1546. homeassistant/components/knx/translations/pt-BR.json +0 -117
  1547. homeassistant/components/knx/translations/pt.json +10 -148
  1548. homeassistant/components/knx/translations/ro.json +0 -88
  1549. homeassistant/components/knx/translations/ru.json +0 -148
  1550. homeassistant/components/knx/translations/sk.json +10 -148
  1551. homeassistant/components/knx/translations/sl.json +0 -13
  1552. homeassistant/components/knx/translations/sv.json +3 -148
  1553. homeassistant/components/knx/translations/tr.json +0 -148
  1554. homeassistant/components/knx/translations/uk.json +0 -89
  1555. homeassistant/components/knx/translations/vi.json +0 -5
  1556. homeassistant/components/knx/translations/zh-Hans.json +10 -148
  1557. homeassistant/components/knx/translations/zh-Hant.json +11 -149
  1558. homeassistant/components/knx/trigger.py +1 -1
  1559. homeassistant/components/knx/weather.py +2 -2
  1560. homeassistant/components/knx/websocket.py +3 -3
  1561. homeassistant/components/kodi/translations/ga.json +13 -0
  1562. homeassistant/components/kostal_plenticore/switch.py +20 -1
  1563. homeassistant/components/kostal_plenticore/translations/ga.json +3 -0
  1564. homeassistant/components/kostal_plenticore/translations/ko.json +6 -0
  1565. homeassistant/components/kraken/__init__.py +1 -0
  1566. homeassistant/components/kulersky/translations/ko.json +7 -0
  1567. homeassistant/components/lamarzocco/__init__.py +0 -7
  1568. homeassistant/components/lamarzocco/config_flow.py +2 -2
  1569. homeassistant/components/lamarzocco/sensor.py +15 -1
  1570. homeassistant/components/lamarzocco/translations/ga.json +86 -0
  1571. homeassistant/components/lamarzocco/translations/ko.json +26 -0
  1572. homeassistant/components/lametric/strings.json +1 -1
  1573. homeassistant/components/lametric/translations/ga.json +4 -0
  1574. homeassistant/components/lametric/translations/ko.json +3 -0
  1575. homeassistant/components/lastfm/__init__.py +0 -6
  1576. homeassistant/components/lastfm/config_flow.py +6 -2
  1577. homeassistant/components/laundrify/strings.json +1 -1
  1578. homeassistant/components/laundrify/translations/ga.json +9 -0
  1579. homeassistant/components/lcn/__init__.py +5 -1
  1580. homeassistant/components/lcn/binary_sensor.py +4 -132
  1581. homeassistant/components/lcn/helpers.py +9 -2
  1582. homeassistant/components/lcn/light.py +28 -22
  1583. homeassistant/components/lcn/manifest.json +1 -1
  1584. homeassistant/components/lcn/quality_scale.yaml +1 -1
  1585. homeassistant/components/lcn/services.py +6 -4
  1586. homeassistant/components/lcn/strings.json +19 -7
  1587. homeassistant/components/lcn/translations/cs.json +18 -2
  1588. homeassistant/components/lcn/translations/de.json +14 -2
  1589. homeassistant/components/lcn/translations/el.json +14 -2
  1590. homeassistant/components/lcn/translations/en-GB.json +14 -2
  1591. homeassistant/components/lcn/translations/en.json +14 -2
  1592. homeassistant/components/lcn/translations/es.json +16 -4
  1593. homeassistant/components/lcn/translations/et.json +14 -2
  1594. homeassistant/components/lcn/translations/ga.json +17 -2
  1595. homeassistant/components/lcn/translations/hu.json +0 -5
  1596. homeassistant/components/lcn/translations/ja.json +14 -2
  1597. homeassistant/components/lcn/translations/ko.json +58 -0
  1598. homeassistant/components/lcn/translations/lt.json +14 -2
  1599. homeassistant/components/lcn/translations/nl.json +0 -5
  1600. homeassistant/components/lcn/translations/pt-BR.json +0 -5
  1601. homeassistant/components/lcn/translations/pt.json +14 -2
  1602. homeassistant/components/lcn/translations/ru.json +9 -2
  1603. homeassistant/components/lcn/translations/sk.json +14 -2
  1604. homeassistant/components/lcn/translations/sv.json +0 -5
  1605. homeassistant/components/lcn/translations/tr.json +0 -5
  1606. homeassistant/components/lcn/translations/zh-Hans.json +14 -2
  1607. homeassistant/components/lcn/translations/zh-Hant.json +14 -2
  1608. homeassistant/components/leaone/strings.json +1 -1
  1609. homeassistant/components/leaone/translations/de.json +1 -1
  1610. homeassistant/components/leaone/translations/el.json +1 -2
  1611. homeassistant/components/leaone/translations/en-GB.json +1 -1
  1612. homeassistant/components/leaone/translations/en.json +1 -1
  1613. homeassistant/components/leaone/translations/es.json +1 -1
  1614. homeassistant/components/leaone/translations/fi.json +1 -2
  1615. homeassistant/components/leaone/translations/fr.json +1 -2
  1616. homeassistant/components/leaone/translations/ga.json +8 -0
  1617. homeassistant/components/leaone/translations/hu.json +1 -2
  1618. homeassistant/components/leaone/translations/ja.json +1 -2
  1619. homeassistant/components/leaone/translations/ko.json +11 -0
  1620. homeassistant/components/leaone/translations/lt.json +1 -2
  1621. homeassistant/components/leaone/translations/nl.json +1 -2
  1622. homeassistant/components/leaone/translations/pt.json +1 -2
  1623. homeassistant/components/leaone/translations/ru.json +1 -2
  1624. homeassistant/components/leaone/translations/sk.json +1 -1
  1625. homeassistant/components/leaone/translations/sv.json +1 -2
  1626. homeassistant/components/leaone/translations/tr.json +1 -2
  1627. homeassistant/components/lektrico/translations/ko.json +10 -0
  1628. homeassistant/components/letpot/__init__.py +7 -2
  1629. homeassistant/components/letpot/binary_sensor.py +3 -1
  1630. homeassistant/components/letpot/coordinator.py +7 -6
  1631. homeassistant/components/letpot/entity.py +3 -2
  1632. homeassistant/components/letpot/manifest.json +2 -1
  1633. homeassistant/components/letpot/sensor.py +6 -2
  1634. homeassistant/components/letpot/switch.py +22 -8
  1635. homeassistant/components/letpot/time.py +10 -6
  1636. homeassistant/components/letpot/translations/ko.json +17 -0
  1637. homeassistant/components/lg_netcast/translations/ga.json +21 -0
  1638. homeassistant/components/lg_netcast/translations/ko.json +12 -0
  1639. homeassistant/components/lg_thinq/climate.py +49 -62
  1640. homeassistant/components/lg_thinq/icons.json +15 -0
  1641. homeassistant/components/lg_thinq/sensor.py +40 -0
  1642. homeassistant/components/lg_thinq/strings.json +56 -5
  1643. homeassistant/components/lg_thinq/translations/bg.json +3 -0
  1644. homeassistant/components/lg_thinq/translations/cs.json +51 -0
  1645. homeassistant/components/lg_thinq/translations/de.json +51 -0
  1646. homeassistant/components/lg_thinq/translations/el.json +28 -0
  1647. homeassistant/components/lg_thinq/translations/en-GB.json +51 -0
  1648. homeassistant/components/lg_thinq/translations/en.json +51 -0
  1649. homeassistant/components/lg_thinq/translations/es.json +53 -2
  1650. homeassistant/components/lg_thinq/translations/et.json +51 -0
  1651. homeassistant/components/lg_thinq/translations/ga.json +50 -0
  1652. homeassistant/components/lg_thinq/translations/he.json +7 -0
  1653. homeassistant/components/lg_thinq/translations/it.json +16 -16
  1654. homeassistant/components/lg_thinq/translations/mk.json +11 -0
  1655. homeassistant/components/lg_thinq/translations/nl.json +21 -0
  1656. homeassistant/components/lg_thinq/translations/sk.json +51 -0
  1657. homeassistant/components/lg_thinq/translations/sv.json +45 -0
  1658. homeassistant/components/lg_thinq/translations/zh-Hans.json +51 -0
  1659. homeassistant/components/lg_thinq/translations/zh-Hant.json +51 -0
  1660. homeassistant/components/life360/translations/ga.json +8 -0
  1661. homeassistant/components/lifx/const.py +1 -0
  1662. homeassistant/components/lifx/coordinator.py +49 -1
  1663. homeassistant/components/lifx/manager.py +7 -3
  1664. homeassistant/components/lifx/manifest.json +1 -1
  1665. homeassistant/components/light/icons.json +3 -0
  1666. homeassistant/components/light/translations/ga.json +37 -0
  1667. homeassistant/components/light/translations/it.json +2 -2
  1668. homeassistant/components/linkplay/const.py +1 -1
  1669. homeassistant/components/linkplay/icons.json +5 -0
  1670. homeassistant/components/linkplay/media_player.py +14 -9
  1671. homeassistant/components/linkplay/select.py +112 -0
  1672. homeassistant/components/linkplay/strings.json +11 -0
  1673. homeassistant/components/linkplay/translations/bg.json +13 -0
  1674. homeassistant/components/linkplay/translations/ca.json +12 -0
  1675. homeassistant/components/linkplay/translations/cs.json +11 -0
  1676. homeassistant/components/linkplay/translations/de.json +11 -0
  1677. homeassistant/components/linkplay/translations/el.json +11 -0
  1678. homeassistant/components/linkplay/translations/en-GB.json +11 -0
  1679. homeassistant/components/linkplay/translations/en.json +11 -0
  1680. homeassistant/components/linkplay/translations/es.json +11 -0
  1681. homeassistant/components/linkplay/translations/et.json +11 -0
  1682. homeassistant/components/linkplay/translations/ga.json +11 -0
  1683. homeassistant/components/linkplay/translations/ko.json +11 -0
  1684. homeassistant/components/linkplay/translations/lt.json +11 -0
  1685. homeassistant/components/linkplay/translations/mk.json +14 -1
  1686. homeassistant/components/linkplay/translations/nl.json +11 -0
  1687. homeassistant/components/linkplay/translations/pt.json +11 -0
  1688. homeassistant/components/linkplay/translations/ru.json +11 -0
  1689. homeassistant/components/linkplay/translations/sk.json +11 -0
  1690. homeassistant/components/linkplay/translations/sv.json +9 -0
  1691. homeassistant/components/linkplay/translations/zh-Hans.json +11 -0
  1692. homeassistant/components/linkplay/translations/zh-Hant.json +11 -0
  1693. homeassistant/components/litterrobot/coordinator.py +3 -0
  1694. homeassistant/components/litterrobot/icons.json +3 -0
  1695. homeassistant/components/litterrobot/manifest.json +1 -1
  1696. homeassistant/components/litterrobot/sensor.py +15 -1
  1697. homeassistant/components/litterrobot/strings.json +5 -1
  1698. homeassistant/components/litterrobot/translations/bg.json +4 -0
  1699. homeassistant/components/litterrobot/translations/ca.json +4 -0
  1700. homeassistant/components/litterrobot/translations/cs.json +4 -0
  1701. homeassistant/components/litterrobot/translations/de.json +4 -0
  1702. homeassistant/components/litterrobot/translations/el.json +4 -0
  1703. homeassistant/components/litterrobot/translations/en-GB.json +4 -0
  1704. homeassistant/components/litterrobot/translations/en.json +4 -0
  1705. homeassistant/components/litterrobot/translations/es.json +4 -0
  1706. homeassistant/components/litterrobot/translations/et.json +4 -0
  1707. homeassistant/components/litterrobot/translations/ga.json +4 -0
  1708. homeassistant/components/litterrobot/translations/it.json +5 -1
  1709. homeassistant/components/litterrobot/translations/lt.json +4 -0
  1710. homeassistant/components/litterrobot/translations/mk.json +4 -0
  1711. homeassistant/components/litterrobot/translations/nl.json +3 -0
  1712. homeassistant/components/litterrobot/translations/pt.json +4 -0
  1713. homeassistant/components/litterrobot/translations/ru.json +4 -0
  1714. homeassistant/components/litterrobot/translations/sensor.it.json +1 -1
  1715. homeassistant/components/litterrobot/translations/sk.json +4 -0
  1716. homeassistant/components/litterrobot/translations/sv.json +4 -0
  1717. homeassistant/components/litterrobot/translations/zh-Hans.json +4 -0
  1718. homeassistant/components/litterrobot/translations/zh-Hant.json +4 -0
  1719. homeassistant/components/local_calendar/calendar.py +1 -1
  1720. homeassistant/components/local_calendar/manifest.json +1 -1
  1721. homeassistant/components/local_file/translations/ko.json +9 -0
  1722. homeassistant/components/local_todo/manifest.json +1 -1
  1723. homeassistant/components/lock/translations/da.json +2 -0
  1724. homeassistant/components/lock/translations/ga.json +4 -0
  1725. homeassistant/components/lookin/__init__.py +1 -1
  1726. homeassistant/components/lookin/media_player.py +2 -4
  1727. homeassistant/components/luftdaten/strings.json +1 -1
  1728. homeassistant/components/luftdaten/translations/ru.json +7 -0
  1729. homeassistant/components/lupusec/translations/ga.json +9 -0
  1730. homeassistant/components/lupusec/translations/ko.json +13 -0
  1731. homeassistant/components/lutron/translations/ga.json +26 -0
  1732. homeassistant/components/lutron/translations/ko.json +13 -0
  1733. homeassistant/components/lutron_caseta/translations/it.json +2 -2
  1734. homeassistant/components/lyric/translations/ga.json +14 -0
  1735. homeassistant/components/lyric/translations/ko.json +3 -0
  1736. homeassistant/components/madvr/translations/ga.json +1 -0
  1737. homeassistant/components/madvr/translations/ko.json +18 -0
  1738. homeassistant/components/mastodon/translations/ko.json +10 -0
  1739. homeassistant/components/matrix/__init__.py +2 -2
  1740. homeassistant/components/matrix/manifest.json +1 -1
  1741. homeassistant/components/matrix/services.py +3 -2
  1742. homeassistant/components/matter/binary_sensor.py +21 -21
  1743. homeassistant/components/matter/cover.py +6 -0
  1744. homeassistant/components/matter/entity.py +2 -2
  1745. homeassistant/components/matter/icons.json +8 -0
  1746. homeassistant/components/matter/manifest.json +1 -1
  1747. homeassistant/components/matter/number.py +204 -12
  1748. homeassistant/components/matter/select.py +42 -20
  1749. homeassistant/components/matter/sensor.py +52 -25
  1750. homeassistant/components/matter/strings.json +28 -4
  1751. homeassistant/components/matter/switch.py +6 -6
  1752. homeassistant/components/matter/translations/bg.json +3 -0
  1753. homeassistant/components/matter/translations/ca.json +11 -0
  1754. homeassistant/components/matter/translations/cs.json +26 -2
  1755. homeassistant/components/matter/translations/de.json +26 -2
  1756. homeassistant/components/matter/translations/el.json +20 -2
  1757. homeassistant/components/matter/translations/en-GB.json +26 -2
  1758. homeassistant/components/matter/translations/en.json +26 -2
  1759. homeassistant/components/matter/translations/es.json +27 -3
  1760. homeassistant/components/matter/translations/et.json +26 -2
  1761. homeassistant/components/matter/translations/fr.json +27 -3
  1762. homeassistant/components/matter/translations/ga.json +46 -3
  1763. homeassistant/components/matter/translations/he.json +26 -2
  1764. homeassistant/components/matter/translations/hu.json +3 -3
  1765. homeassistant/components/matter/translations/it.json +17 -6
  1766. homeassistant/components/matter/translations/ja.json +15 -0
  1767. homeassistant/components/matter/translations/lt.json +20 -2
  1768. homeassistant/components/matter/translations/mk.json +3 -0
  1769. homeassistant/components/matter/translations/nl.json +3 -0
  1770. homeassistant/components/matter/translations/pt.json +20 -2
  1771. homeassistant/components/matter/translations/ru.json +20 -2
  1772. homeassistant/components/matter/translations/sk.json +26 -2
  1773. homeassistant/components/matter/translations/sv.json +9 -3
  1774. homeassistant/components/matter/translations/zh-Hans.json +26 -2
  1775. homeassistant/components/matter/translations/zh-Hant.json +26 -2
  1776. homeassistant/components/matter/vacuum.py +30 -28
  1777. homeassistant/components/mazda/translations/ga.json +8 -0
  1778. homeassistant/components/mcp/translations/ko.json +16 -0
  1779. homeassistant/components/mcp_server/config_flow.py +14 -5
  1780. homeassistant/components/mcp_server/server.py +1 -1
  1781. homeassistant/components/mcp_server/strings.json +3 -0
  1782. homeassistant/components/mcp_server/translations/cs.json +3 -0
  1783. homeassistant/components/mcp_server/translations/de.json +3 -0
  1784. homeassistant/components/mcp_server/translations/el.json +3 -0
  1785. homeassistant/components/mcp_server/translations/en-GB.json +3 -0
  1786. homeassistant/components/mcp_server/translations/en.json +3 -0
  1787. homeassistant/components/mcp_server/translations/es.json +3 -0
  1788. homeassistant/components/mcp_server/translations/et.json +3 -0
  1789. homeassistant/components/mcp_server/translations/fr.json +3 -0
  1790. homeassistant/components/mcp_server/translations/ga.json +6 -0
  1791. homeassistant/components/mcp_server/translations/lt.json +3 -0
  1792. homeassistant/components/mcp_server/translations/pt.json +3 -0
  1793. homeassistant/components/mcp_server/translations/ru.json +3 -0
  1794. homeassistant/components/mcp_server/translations/sk.json +3 -0
  1795. homeassistant/components/mcp_server/translations/zh-Hans.json +3 -0
  1796. homeassistant/components/mcp_server/translations/zh-Hant.json +3 -0
  1797. homeassistant/components/mealie/const.py +2 -0
  1798. homeassistant/components/mealie/icons.json +3 -0
  1799. homeassistant/components/mealie/manifest.json +2 -1
  1800. homeassistant/components/mealie/services.py +39 -0
  1801. homeassistant/components/mealie/services.yaml +21 -0
  1802. homeassistant/components/mealie/strings.json +21 -0
  1803. homeassistant/components/mealie/todo.py +4 -2
  1804. homeassistant/components/mealie/translations/cs.json +21 -0
  1805. homeassistant/components/mealie/translations/de.json +21 -0
  1806. homeassistant/components/mealie/translations/el.json +8 -0
  1807. homeassistant/components/mealie/translations/en-GB.json +21 -0
  1808. homeassistant/components/mealie/translations/en.json +21 -0
  1809. homeassistant/components/mealie/translations/es.json +21 -0
  1810. homeassistant/components/mealie/translations/et.json +21 -0
  1811. homeassistant/components/mealie/translations/fr.json +19 -0
  1812. homeassistant/components/mealie/translations/ga.json +26 -0
  1813. homeassistant/components/mealie/translations/ko.json +14 -0
  1814. homeassistant/components/mealie/translations/sk.json +21 -0
  1815. homeassistant/components/mealie/translations/sv.json +16 -0
  1816. homeassistant/components/mealie/translations/zh-Hans.json +21 -0
  1817. homeassistant/components/mealie/translations/zh-Hant.json +21 -0
  1818. homeassistant/components/medcom_ble/__init__.py +3 -33
  1819. homeassistant/components/medcom_ble/coordinator.py +50 -0
  1820. homeassistant/components/medcom_ble/sensor.py +5 -13
  1821. homeassistant/components/media_extractor/manifest.json +1 -1
  1822. homeassistant/components/media_extractor/translations/ga.json +18 -0
  1823. homeassistant/components/media_player/__init__.py +2 -1
  1824. homeassistant/components/media_player/const.py +8 -1
  1825. homeassistant/components/media_player/translations/he.json +1 -1
  1826. homeassistant/components/media_player/translations/it.json +6 -6
  1827. homeassistant/components/media_source/__init__.py +5 -4
  1828. homeassistant/components/media_source/const.py +8 -0
  1829. homeassistant/components/media_source/local_source.py +5 -5
  1830. homeassistant/components/media_source/models.py +21 -5
  1831. homeassistant/components/mediaroom/media_player.py +3 -3
  1832. homeassistant/components/melcloud/__init__.py +6 -10
  1833. homeassistant/components/melcloud/climate.py +3 -5
  1834. homeassistant/components/melcloud/diagnostics.py +3 -2
  1835. homeassistant/components/melcloud/sensor.py +3 -5
  1836. homeassistant/components/melcloud/translations/ga.json +6 -0
  1837. homeassistant/components/melcloud/translations/ko.json +5 -0
  1838. homeassistant/components/melcloud/water_heater.py +3 -4
  1839. homeassistant/components/melnor/__init__.py +6 -17
  1840. homeassistant/components/melnor/coordinator.py +4 -2
  1841. homeassistant/components/melnor/number.py +3 -5
  1842. homeassistant/components/melnor/sensor.py +3 -5
  1843. homeassistant/components/melnor/switch.py +3 -5
  1844. homeassistant/components/melnor/time.py +3 -5
  1845. homeassistant/components/met/__init__.py +0 -6
  1846. homeassistant/components/met/config_flow.py +2 -2
  1847. homeassistant/components/met_eireann/__init__.py +4 -65
  1848. homeassistant/components/met_eireann/coordinator.py +76 -0
  1849. homeassistant/components/met_eireann/weather.py +1 -4
  1850. homeassistant/components/meteo_france/__init__.py +4 -4
  1851. homeassistant/components/meteo_france/const.py +0 -1
  1852. homeassistant/components/meteoclimatic/__init__.py +3 -31
  1853. homeassistant/components/meteoclimatic/coordinator.py +43 -0
  1854. homeassistant/components/meteoclimatic/sensor.py +9 -7
  1855. homeassistant/components/meteoclimatic/weather.py +7 -7
  1856. homeassistant/components/metoffice/translations/ko.json +5 -0
  1857. homeassistant/components/microbees/translations/ga.json +5 -0
  1858. homeassistant/components/microbees/translations/ko.json +11 -0
  1859. homeassistant/components/miele/__init__.py +13 -2
  1860. homeassistant/components/miele/const.py +11 -1
  1861. homeassistant/components/miele/coordinator.py +2 -0
  1862. homeassistant/components/miele/entity.py +6 -1
  1863. homeassistant/components/miele/icons.json +11 -0
  1864. homeassistant/components/miele/sensor.py +140 -76
  1865. homeassistant/components/miele/services.py +238 -0
  1866. homeassistant/components/miele/services.yaml +55 -0
  1867. homeassistant/components/miele/strings.json +87 -24
  1868. homeassistant/components/miele/translations/bg.json +35 -19
  1869. homeassistant/components/miele/translations/cs.json +84 -21
  1870. homeassistant/components/miele/translations/da.json +3 -0
  1871. homeassistant/components/miele/translations/de.json +89 -26
  1872. homeassistant/components/miele/translations/el.json +45 -25
  1873. homeassistant/components/miele/translations/en-GB.json +84 -21
  1874. homeassistant/components/miele/translations/en.json +83 -20
  1875. homeassistant/components/miele/translations/es.json +81 -21
  1876. homeassistant/components/miele/translations/et.json +84 -21
  1877. homeassistant/components/miele/translations/ga.json +79 -22
  1878. homeassistant/components/miele/translations/he.json +32 -20
  1879. homeassistant/components/miele/translations/hu.json +1 -24
  1880. homeassistant/components/miele/translations/it.json +85 -23
  1881. homeassistant/components/miele/translations/ja.json +0 -20
  1882. homeassistant/components/miele/translations/ko.json +5 -0
  1883. homeassistant/components/miele/translations/lt.json +10 -21
  1884. homeassistant/components/miele/translations/mk.json +14 -0
  1885. homeassistant/components/miele/translations/nl.json +37 -20
  1886. homeassistant/components/miele/translations/pt.json +1 -24
  1887. homeassistant/components/miele/translations/sk.json +84 -21
  1888. homeassistant/components/miele/translations/sv.json +32 -21
  1889. homeassistant/components/miele/translations/zh-Hans.json +84 -21
  1890. homeassistant/components/miele/translations/zh-Hant.json +84 -21
  1891. homeassistant/components/miele/vacuum.py +0 -6
  1892. homeassistant/components/mikrotik/coordinator.py +2 -2
  1893. homeassistant/components/mill/__init__.py +1 -0
  1894. homeassistant/components/mill/coordinator.py +2 -0
  1895. homeassistant/components/minecraft_server/translations/ga.json +13 -0
  1896. homeassistant/components/mjpeg/strings.json +1 -1
  1897. homeassistant/components/modbus/modbus.py +2 -2
  1898. homeassistant/components/modbus/strings.json +2 -2
  1899. homeassistant/components/modbus/translations/fr.json +2 -0
  1900. homeassistant/components/modbus/translations/ga.json +28 -0
  1901. homeassistant/components/modem_callerid/sensor.py +15 -3
  1902. homeassistant/components/mold_indicator/__init__.py +116 -1
  1903. homeassistant/components/mold_indicator/config_flow.py +3 -0
  1904. homeassistant/components/mold_indicator/sensor.py +2 -2
  1905. homeassistant/components/mold_indicator/translations/ko.json +1 -0
  1906. homeassistant/components/monarch_money/translations/ko.json +12 -0
  1907. homeassistant/components/monoprice/__init__.py +2 -11
  1908. homeassistant/components/monoprice/const.py +0 -1
  1909. homeassistant/components/monzo/manifest.json +1 -1
  1910. homeassistant/components/monzo/translations/ga.json +26 -0
  1911. homeassistant/components/monzo/translations/ko.json +3 -0
  1912. homeassistant/components/motion_blinds/__init__.py +0 -7
  1913. homeassistant/components/motion_blinds/config_flow.py +2 -2
  1914. homeassistant/components/motion_blinds/manifest.json +1 -1
  1915. homeassistant/components/motionblinds_ble/translations/ga.json +41 -0
  1916. homeassistant/components/motioneye/__init__.py +0 -6
  1917. homeassistant/components/motioneye/config_flow.py +2 -2
  1918. homeassistant/components/motionmount/translations/ga.json +14 -0
  1919. homeassistant/components/motionmount/translations/ko.json +17 -0
  1920. homeassistant/components/mpd/translations/ga.json +11 -0
  1921. homeassistant/components/mpd/translations/ko.json +13 -0
  1922. homeassistant/components/mqtt/climate.py +40 -46
  1923. homeassistant/components/mqtt/config_flow.py +915 -15
  1924. homeassistant/components/mqtt/const.py +33 -4
  1925. homeassistant/components/mqtt/entity.py +73 -3
  1926. homeassistant/components/mqtt/models.py +9 -0
  1927. homeassistant/components/mqtt/repairs.py +74 -0
  1928. homeassistant/components/mqtt/strings.json +294 -5
  1929. homeassistant/components/mqtt/translations/bg.json +22 -0
  1930. homeassistant/components/mqtt/translations/cs.json +333 -43
  1931. homeassistant/components/mqtt/translations/da.json +5 -0
  1932. homeassistant/components/mqtt/translations/de.json +291 -2
  1933. homeassistant/components/mqtt/translations/el.json +77 -0
  1934. homeassistant/components/mqtt/translations/en-GB.json +289 -0
  1935. homeassistant/components/mqtt/translations/en.json +289 -0
  1936. homeassistant/components/mqtt/translations/es.json +287 -2
  1937. homeassistant/components/mqtt/translations/et.json +285 -0
  1938. homeassistant/components/mqtt/translations/fr.json +46 -0
  1939. homeassistant/components/mqtt/translations/ga.json +358 -3
  1940. homeassistant/components/mqtt/translations/he.json +244 -0
  1941. homeassistant/components/mqtt/translations/it.json +1 -1
  1942. homeassistant/components/mqtt/translations/ko.json +28 -0
  1943. homeassistant/components/mqtt/translations/lt.json +1 -0
  1944. homeassistant/components/mqtt/translations/mk.json +18 -0
  1945. homeassistant/components/mqtt/translations/nl.json +295 -1
  1946. homeassistant/components/mqtt/translations/ru.json +90 -0
  1947. homeassistant/components/mqtt/translations/sk.json +289 -0
  1948. homeassistant/components/mqtt/translations/sl.json +5 -0
  1949. homeassistant/components/mqtt/translations/sv.json +58 -0
  1950. homeassistant/components/mqtt/translations/zh-Hans.json +267 -0
  1951. homeassistant/components/mqtt/translations/zh-Hant.json +315 -26
  1952. homeassistant/components/mqtt/vacuum.py +31 -5
  1953. homeassistant/components/music_assistant/strings.json +1 -1
  1954. homeassistant/components/music_assistant/translations/fr.json +2 -1
  1955. homeassistant/components/music_assistant/translations/ga.json +2 -1
  1956. homeassistant/components/music_assistant/translations/he.json +2 -1
  1957. homeassistant/components/myq/translations/ga.json +8 -0
  1958. homeassistant/components/mysensors/manifest.json +1 -1
  1959. homeassistant/components/mystrom/__init__.py +6 -11
  1960. homeassistant/components/mystrom/light.py +4 -4
  1961. homeassistant/components/mystrom/manifest.json +1 -1
  1962. homeassistant/components/mystrom/models.py +4 -0
  1963. homeassistant/components/mystrom/sensor.py +3 -3
  1964. homeassistant/components/mystrom/switch.py +3 -3
  1965. homeassistant/components/mystrom/translations/ga.json +9 -0
  1966. homeassistant/components/myuplink/translations/ga.json +15 -1
  1967. homeassistant/components/myuplink/translations/ko.json +9 -0
  1968. homeassistant/components/nam/translations/ga.json +7 -0
  1969. homeassistant/components/nam/translations/ko.json +5 -0
  1970. homeassistant/components/nasweb/__init__.py +1 -1
  1971. homeassistant/components/nasweb/const.py +1 -0
  1972. homeassistant/components/nasweb/coordinator.py +15 -5
  1973. homeassistant/components/nasweb/icons.json +15 -0
  1974. homeassistant/components/nasweb/sensor.py +189 -0
  1975. homeassistant/components/nasweb/strings.json +17 -5
  1976. homeassistant/components/nasweb/translations/bg.json +9 -0
  1977. homeassistant/components/nasweb/translations/ca.json +10 -0
  1978. homeassistant/components/nasweb/translations/cs.json +12 -0
  1979. homeassistant/components/nasweb/translations/de.json +12 -0
  1980. homeassistant/components/nasweb/translations/el.json +12 -0
  1981. homeassistant/components/nasweb/translations/en-GB.json +12 -0
  1982. homeassistant/components/nasweb/translations/en.json +12 -0
  1983. homeassistant/components/nasweb/translations/es.json +12 -0
  1984. homeassistant/components/nasweb/translations/et.json +12 -0
  1985. homeassistant/components/nasweb/translations/ga.json +13 -0
  1986. homeassistant/components/nasweb/translations/he.json +10 -0
  1987. homeassistant/components/nasweb/translations/ko.json +13 -0
  1988. homeassistant/components/nasweb/translations/lt.json +12 -0
  1989. homeassistant/components/nasweb/translations/nb.json +11 -1
  1990. homeassistant/components/nasweb/translations/nl.json +10 -0
  1991. homeassistant/components/nasweb/translations/nn.json +11 -1
  1992. homeassistant/components/nasweb/translations/ru.json +8 -0
  1993. homeassistant/components/nasweb/translations/sk.json +12 -0
  1994. homeassistant/components/nasweb/translations/sv.json +11 -0
  1995. homeassistant/components/nasweb/translations/zh-Hans.json +12 -0
  1996. homeassistant/components/nasweb/translations/zh-Hant.json +12 -0
  1997. homeassistant/components/neato/translations/ga.json +4 -0
  1998. homeassistant/components/neato/translations/ko.json +3 -0
  1999. homeassistant/components/nest/strings.json +1 -1
  2000. homeassistant/components/nest/translations/ga.json +2 -0
  2001. homeassistant/components/nest/translations/ko.json +3 -0
  2002. homeassistant/components/netatmo/climate.py +15 -6
  2003. homeassistant/components/netatmo/const.py +1 -0
  2004. homeassistant/components/netatmo/translations/ga.json +107 -0
  2005. homeassistant/components/netatmo/translations/ko.json +3 -0
  2006. homeassistant/components/netgear/__init__.py +0 -7
  2007. homeassistant/components/netgear/config_flow.py +2 -2
  2008. homeassistant/components/netgear/translations/ga.json +24 -0
  2009. homeassistant/components/netgear_lte/translations/ga.json +30 -0
  2010. homeassistant/components/netgear_lte/translations/ko.json +10 -0
  2011. homeassistant/components/nextbus/translations/ga.json +30 -0
  2012. homeassistant/components/nextcloud/translations/ko.json +1 -1
  2013. homeassistant/components/nextdns/__init__.py +10 -16
  2014. homeassistant/components/nextdns/coordinator.py +22 -3
  2015. homeassistant/components/nfandroidtv/translations/ga.json +10 -0
  2016. homeassistant/components/nibe_heatpump/button.py +1 -0
  2017. homeassistant/components/nibe_heatpump/coordinator.py +35 -2
  2018. homeassistant/components/nibe_heatpump/number.py +2 -1
  2019. homeassistant/components/nibe_heatpump/strings.json +8 -0
  2020. homeassistant/components/nibe_heatpump/translations/cs.json +8 -0
  2021. homeassistant/components/nibe_heatpump/translations/de.json +8 -0
  2022. homeassistant/components/nibe_heatpump/translations/el.json +8 -0
  2023. homeassistant/components/nibe_heatpump/translations/en-GB.json +8 -0
  2024. homeassistant/components/nibe_heatpump/translations/en.json +8 -0
  2025. homeassistant/components/nibe_heatpump/translations/es.json +8 -0
  2026. homeassistant/components/nibe_heatpump/translations/et.json +8 -0
  2027. homeassistant/components/nibe_heatpump/translations/ga.json +10 -1
  2028. homeassistant/components/nibe_heatpump/translations/it.json +8 -0
  2029. homeassistant/components/nibe_heatpump/translations/ja.json +8 -0
  2030. homeassistant/components/nibe_heatpump/translations/lt.json +8 -0
  2031. homeassistant/components/nibe_heatpump/translations/pt.json +8 -0
  2032. homeassistant/components/nibe_heatpump/translations/sk.json +8 -0
  2033. homeassistant/components/nibe_heatpump/translations/zh-Hans.json +8 -0
  2034. homeassistant/components/nibe_heatpump/translations/zh-Hant.json +8 -0
  2035. homeassistant/components/nice_go/translations/ko.json +16 -0
  2036. homeassistant/components/niko_home_control/translations/ko.json +11 -0
  2037. homeassistant/components/nina/__init__.py +0 -7
  2038. homeassistant/components/nina/config_flow.py +3 -3
  2039. homeassistant/components/nissan_leaf/translations/de.json +4 -4
  2040. homeassistant/components/nmap_tracker/__init__.py +0 -6
  2041. homeassistant/components/nmap_tracker/config_flow.py +2 -2
  2042. homeassistant/components/nobo_hub/__init__.py +0 -9
  2043. homeassistant/components/nobo_hub/config_flow.py +3 -3
  2044. homeassistant/components/nobo_hub/translations/ga.json +12 -0
  2045. homeassistant/components/nordpool/const.py +1 -0
  2046. homeassistant/components/nordpool/icons.json +3 -0
  2047. homeassistant/components/nordpool/services.py +71 -8
  2048. homeassistant/components/nordpool/services.yaml +56 -0
  2049. homeassistant/components/nordpool/strings.json +27 -1
  2050. homeassistant/components/nordpool/translations/bg.json +16 -0
  2051. homeassistant/components/nordpool/translations/cs.json +26 -0
  2052. homeassistant/components/nordpool/translations/de.json +26 -0
  2053. homeassistant/components/nordpool/translations/el.json +26 -0
  2054. homeassistant/components/nordpool/translations/en-GB.json +26 -0
  2055. homeassistant/components/nordpool/translations/en.json +26 -0
  2056. homeassistant/components/nordpool/translations/es.json +26 -0
  2057. homeassistant/components/nordpool/translations/et.json +26 -0
  2058. homeassistant/components/nordpool/translations/ga.json +29 -0
  2059. homeassistant/components/nordpool/translations/he.json +7 -0
  2060. homeassistant/components/nordpool/translations/ja.json +26 -0
  2061. homeassistant/components/nordpool/translations/lt.json +26 -0
  2062. homeassistant/components/nordpool/translations/mk.json +12 -1
  2063. homeassistant/components/nordpool/translations/nl.json +9 -0
  2064. homeassistant/components/nordpool/translations/pt.json +26 -0
  2065. homeassistant/components/nordpool/translations/ru.json +21 -0
  2066. homeassistant/components/nordpool/translations/sk.json +26 -0
  2067. homeassistant/components/nordpool/translations/sv.json +26 -0
  2068. homeassistant/components/nordpool/translations/zh-Hans.json +26 -0
  2069. homeassistant/components/nordpool/translations/zh-Hant.json +26 -0
  2070. homeassistant/components/notify/translations/ga.json +27 -0
  2071. homeassistant/components/ntfy/translations/ga.json +3 -0
  2072. homeassistant/components/ntfy/translations/ko.json +38 -0
  2073. homeassistant/components/nuki/translations/ga.json +23 -0
  2074. homeassistant/components/nuki/translations/sv.json +1 -1
  2075. homeassistant/components/number/__init__.py +4 -1
  2076. homeassistant/components/number/const.py +10 -0
  2077. homeassistant/components/number/icons.json +3 -0
  2078. homeassistant/components/number/strings.json +3 -0
  2079. homeassistant/components/number/translations/cs.json +3 -0
  2080. homeassistant/components/number/translations/de.json +3 -0
  2081. homeassistant/components/number/translations/el.json +3 -0
  2082. homeassistant/components/number/translations/en-GB.json +3 -0
  2083. homeassistant/components/number/translations/en.json +3 -0
  2084. homeassistant/components/number/translations/es.json +3 -0
  2085. homeassistant/components/number/translations/et.json +3 -0
  2086. homeassistant/components/number/translations/fr.json +3 -0
  2087. homeassistant/components/number/translations/ga.json +11 -0
  2088. homeassistant/components/number/translations/he.json +3 -0
  2089. homeassistant/components/number/translations/lt.json +3 -0
  2090. homeassistant/components/number/translations/nl.json +6 -0
  2091. homeassistant/components/number/translations/pt.json +3 -0
  2092. homeassistant/components/number/translations/ru.json +3 -0
  2093. homeassistant/components/number/translations/sk.json +3 -0
  2094. homeassistant/components/number/translations/sv.json +3 -0
  2095. homeassistant/components/number/translations/zh-Hans.json +3 -0
  2096. homeassistant/components/number/translations/zh-Hant.json +3 -0
  2097. homeassistant/components/nut/__init__.py +0 -6
  2098. homeassistant/components/nut/translations/es.json +6 -6
  2099. homeassistant/components/nut/translations/ga.json +4 -1
  2100. homeassistant/components/nut/translations/it.json +1 -1
  2101. homeassistant/components/nut/translations/ko.json +14 -0
  2102. homeassistant/components/nzbget/strings.json +2 -2
  2103. homeassistant/components/octoprint/manifest.json +1 -1
  2104. homeassistant/components/octoprint/sensor.py +61 -1
  2105. homeassistant/components/octoprint/translations/ga.json +31 -0
  2106. homeassistant/components/ohme/translations/ga.json +3 -0
  2107. homeassistant/components/ohme/translations/ko.json +20 -0
  2108. homeassistant/components/ollama/__init__.py +121 -13
  2109. homeassistant/components/ollama/ai_task.py +80 -0
  2110. homeassistant/components/ollama/config_flow.py +52 -28
  2111. homeassistant/components/ollama/const.py +8 -1
  2112. homeassistant/components/ollama/conversation.py +3 -28
  2113. homeassistant/components/ollama/entity.py +26 -1
  2114. homeassistant/components/ollama/strings.json +44 -1
  2115. homeassistant/components/ollama/translations/bg.json +14 -0
  2116. homeassistant/components/ollama/translations/ca.json +13 -0
  2117. homeassistant/components/ollama/translations/cs.json +43 -0
  2118. homeassistant/components/ollama/translations/de.json +43 -0
  2119. homeassistant/components/ollama/translations/el.json +38 -0
  2120. homeassistant/components/ollama/translations/en-GB.json +43 -0
  2121. homeassistant/components/ollama/translations/en.json +43 -0
  2122. homeassistant/components/ollama/translations/es.json +38 -0
  2123. homeassistant/components/ollama/translations/et.json +43 -0
  2124. homeassistant/components/ollama/translations/fr.json +38 -0
  2125. homeassistant/components/ollama/translations/ga.json +39 -1
  2126. homeassistant/components/ollama/translations/he.json +15 -0
  2127. homeassistant/components/ollama/translations/ja.json +32 -0
  2128. homeassistant/components/ollama/translations/ko.json +31 -0
  2129. homeassistant/components/ollama/translations/lt.json +33 -0
  2130. homeassistant/components/ollama/translations/mk.json +9 -0
  2131. homeassistant/components/ollama/translations/nl.json +23 -0
  2132. homeassistant/components/ollama/translations/pt.json +32 -0
  2133. homeassistant/components/ollama/translations/ru.json +36 -0
  2134. homeassistant/components/ollama/translations/sk.json +43 -0
  2135. homeassistant/components/ollama/translations/sv.json +25 -0
  2136. homeassistant/components/ollama/translations/zh-Hans.json +43 -0
  2137. homeassistant/components/ollama/translations/zh-Hant.json +43 -0
  2138. homeassistant/components/onboarding/translations/ga.json +7 -0
  2139. homeassistant/components/onboarding/views.py +1 -1
  2140. homeassistant/components/ondilo_ico/translations/ko.json +3 -0
  2141. homeassistant/components/onedrive/translations/ga.json +3 -0
  2142. homeassistant/components/onedrive/translations/ko.json +11 -0
  2143. homeassistant/components/onewire/__init__.py +0 -10
  2144. homeassistant/components/onewire/config_flow.py +6 -2
  2145. homeassistant/components/onewire/translations/ga.json +37 -0
  2146. homeassistant/components/onewire/translations/ko.json +6 -0
  2147. homeassistant/components/onkyo/__init__.py +15 -17
  2148. homeassistant/components/onkyo/config_flow.py +33 -20
  2149. homeassistant/components/onkyo/const.py +28 -206
  2150. homeassistant/components/onkyo/manifest.json +4 -2
  2151. homeassistant/components/onkyo/media_player.py +201 -302
  2152. homeassistant/components/onkyo/quality_scale.yaml +6 -12
  2153. homeassistant/components/onkyo/receiver.py +107 -107
  2154. homeassistant/components/onkyo/services.py +4 -14
  2155. homeassistant/components/onkyo/translations/ga.json +1 -0
  2156. homeassistant/components/onkyo/translations/ko.json +16 -0
  2157. homeassistant/components/onkyo/util.py +8 -0
  2158. homeassistant/components/onvif/__init__.py +57 -48
  2159. homeassistant/components/onvif/manifest.json +1 -1
  2160. homeassistant/components/onvif/translations/es.json +1 -1
  2161. homeassistant/components/onvif/translations/ga.json +15 -0
  2162. homeassistant/components/open_router/__init__.py +58 -0
  2163. homeassistant/components/open_router/ai_task.py +75 -0
  2164. homeassistant/components/open_router/config_flow.py +200 -0
  2165. homeassistant/components/open_router/const.py +17 -0
  2166. homeassistant/components/open_router/conversation.py +69 -0
  2167. homeassistant/components/open_router/entity.py +249 -0
  2168. homeassistant/components/open_router/manifest.json +13 -0
  2169. homeassistant/components/open_router/quality_scale.yaml +88 -0
  2170. homeassistant/components/open_router/strings.json +64 -0
  2171. homeassistant/components/open_router/translations/bg.json +47 -0
  2172. homeassistant/components/open_router/translations/ca.json +29 -0
  2173. homeassistant/components/open_router/translations/cs.json +64 -0
  2174. homeassistant/components/open_router/translations/de.json +64 -0
  2175. homeassistant/components/open_router/translations/el.json +60 -0
  2176. homeassistant/components/open_router/translations/en-GB.json +64 -0
  2177. homeassistant/components/open_router/translations/en.json +64 -0
  2178. homeassistant/components/open_router/translations/es.json +60 -0
  2179. homeassistant/components/open_router/translations/et.json +64 -0
  2180. homeassistant/components/open_router/translations/fr.json +60 -0
  2181. homeassistant/components/open_router/translations/ga.json +41 -0
  2182. homeassistant/components/open_router/translations/he.json +40 -0
  2183. homeassistant/components/open_router/translations/ko.json +11 -0
  2184. homeassistant/components/open_router/translations/lt.json +37 -0
  2185. homeassistant/components/open_router/translations/mk.json +42 -0
  2186. homeassistant/components/open_router/translations/nl.json +47 -0
  2187. homeassistant/components/open_router/translations/ru.json +47 -0
  2188. homeassistant/components/open_router/translations/sk.json +64 -0
  2189. homeassistant/components/open_router/translations/sv.json +56 -0
  2190. homeassistant/components/open_router/translations/zh-Hans.json +64 -0
  2191. homeassistant/components/open_router/translations/zh-Hant.json +64 -0
  2192. homeassistant/components/openai_conversation/__init__.py +135 -73
  2193. homeassistant/components/openai_conversation/ai_task.py +80 -0
  2194. homeassistant/components/openai_conversation/config_flow.py +60 -49
  2195. homeassistant/components/openai_conversation/const.py +22 -8
  2196. homeassistant/components/openai_conversation/conversation.py +10 -322
  2197. homeassistant/components/openai_conversation/entity.py +468 -0
  2198. homeassistant/components/openai_conversation/manifest.json +2 -2
  2199. homeassistant/components/openai_conversation/strings.json +49 -1
  2200. homeassistant/components/openai_conversation/translations/bg.json +19 -0
  2201. homeassistant/components/openai_conversation/translations/ca.json +17 -0
  2202. homeassistant/components/openai_conversation/translations/cs.json +48 -0
  2203. homeassistant/components/openai_conversation/translations/de.json +48 -0
  2204. homeassistant/components/openai_conversation/translations/el.json +43 -0
  2205. homeassistant/components/openai_conversation/translations/en-GB.json +48 -0
  2206. homeassistant/components/openai_conversation/translations/en.json +48 -0
  2207. homeassistant/components/openai_conversation/translations/es.json +43 -0
  2208. homeassistant/components/openai_conversation/translations/et.json +48 -0
  2209. homeassistant/components/openai_conversation/translations/fr.json +43 -0
  2210. homeassistant/components/openai_conversation/translations/ga.json +61 -1
  2211. homeassistant/components/openai_conversation/translations/he.json +18 -0
  2212. homeassistant/components/openai_conversation/translations/it.json +41 -0
  2213. homeassistant/components/openai_conversation/translations/ko.json +20 -0
  2214. homeassistant/components/openai_conversation/translations/lt.json +43 -0
  2215. homeassistant/components/openai_conversation/translations/mk.json +43 -0
  2216. homeassistant/components/openai_conversation/translations/nl.json +18 -0
  2217. homeassistant/components/openai_conversation/translations/pt.json +41 -0
  2218. homeassistant/components/openai_conversation/translations/ru.json +45 -0
  2219. homeassistant/components/openai_conversation/translations/sk.json +48 -0
  2220. homeassistant/components/openai_conversation/translations/sv.json +36 -0
  2221. homeassistant/components/openai_conversation/translations/zh-Hans.json +48 -0
  2222. homeassistant/components/openai_conversation/translations/zh-Hant.json +48 -0
  2223. homeassistant/components/opentherm_gw/translations/ga.json +16 -0
  2224. homeassistant/components/openweathermap/config_flow.py +4 -0
  2225. homeassistant/components/openweathermap/strings.json +1 -1
  2226. homeassistant/components/openweathermap/translations/bg.json +1 -2
  2227. homeassistant/components/openweathermap/translations/ca.json +1 -2
  2228. homeassistant/components/openweathermap/translations/cs.json +1 -1
  2229. homeassistant/components/openweathermap/translations/de.json +1 -1
  2230. homeassistant/components/openweathermap/translations/el.json +1 -2
  2231. homeassistant/components/openweathermap/translations/en-GB.json +1 -1
  2232. homeassistant/components/openweathermap/translations/en.json +1 -1
  2233. homeassistant/components/openweathermap/translations/es.json +1 -1
  2234. homeassistant/components/openweathermap/translations/et.json +1 -1
  2235. homeassistant/components/openweathermap/translations/fi.json +1 -2
  2236. homeassistant/components/openweathermap/translations/fr.json +1 -1
  2237. homeassistant/components/openweathermap/translations/ga.json +16 -0
  2238. homeassistant/components/openweathermap/translations/gsw.json +1 -2
  2239. homeassistant/components/openweathermap/translations/he.json +1 -1
  2240. homeassistant/components/openweathermap/translations/hu.json +1 -2
  2241. homeassistant/components/openweathermap/translations/id.json +1 -2
  2242. homeassistant/components/openweathermap/translations/it.json +1 -2
  2243. homeassistant/components/openweathermap/translations/ja.json +1 -2
  2244. homeassistant/components/openweathermap/translations/ko.json +1 -2
  2245. homeassistant/components/openweathermap/translations/lt.json +1 -2
  2246. homeassistant/components/openweathermap/translations/nb.json +1 -2
  2247. homeassistant/components/openweathermap/translations/nl.json +1 -2
  2248. homeassistant/components/openweathermap/translations/pl.json +1 -2
  2249. homeassistant/components/openweathermap/translations/pt-BR.json +1 -2
  2250. homeassistant/components/openweathermap/translations/pt.json +1 -2
  2251. homeassistant/components/openweathermap/translations/ro.json +1 -2
  2252. homeassistant/components/openweathermap/translations/ru.json +1 -1
  2253. homeassistant/components/openweathermap/translations/sk.json +1 -1
  2254. homeassistant/components/openweathermap/translations/sv.json +1 -2
  2255. homeassistant/components/openweathermap/translations/tr.json +1 -2
  2256. homeassistant/components/openweathermap/translations/uk.json +1 -2
  2257. homeassistant/components/openweathermap/translations/vi.json +1 -2
  2258. homeassistant/components/openweathermap/translations/zh-Hans.json +1 -1
  2259. homeassistant/components/openweathermap/translations/zh-Hant.json +1 -1
  2260. homeassistant/components/opower/config_flow.py +143 -70
  2261. homeassistant/components/opower/const.py +1 -0
  2262. homeassistant/components/opower/coordinator.py +4 -3
  2263. homeassistant/components/opower/manifest.json +1 -1
  2264. homeassistant/components/opower/sensor.py +22 -21
  2265. homeassistant/components/opower/strings.json +93 -7
  2266. homeassistant/components/opower/translations/bg.json +80 -4
  2267. homeassistant/components/opower/translations/ca.json +0 -2
  2268. homeassistant/components/opower/translations/cs.json +92 -6
  2269. homeassistant/components/opower/translations/de.json +92 -6
  2270. homeassistant/components/opower/translations/el.json +54 -10
  2271. homeassistant/components/opower/translations/en-GB.json +92 -6
  2272. homeassistant/components/opower/translations/en.json +92 -6
  2273. homeassistant/components/opower/translations/es.json +55 -9
  2274. homeassistant/components/opower/translations/et.json +55 -9
  2275. homeassistant/components/opower/translations/fi.json +0 -2
  2276. homeassistant/components/opower/translations/fr.json +0 -11
  2277. homeassistant/components/opower/translations/fy.json +0 -12
  2278. homeassistant/components/opower/translations/ga.json +61 -0
  2279. homeassistant/components/opower/translations/he.json +0 -6
  2280. homeassistant/components/opower/translations/hu.json +0 -9
  2281. homeassistant/components/opower/translations/id.json +0 -3
  2282. homeassistant/components/opower/translations/it.json +0 -2
  2283. homeassistant/components/opower/translations/ja.json +55 -2
  2284. homeassistant/components/opower/translations/ko.json +20 -2
  2285. homeassistant/components/opower/translations/lt.json +55 -9
  2286. homeassistant/components/opower/translations/nb.json +0 -6
  2287. homeassistant/components/opower/translations/nl.json +6 -3
  2288. homeassistant/components/opower/translations/pl.json +0 -6
  2289. homeassistant/components/opower/translations/pt-BR.json +0 -2
  2290. homeassistant/components/opower/translations/pt.json +55 -9
  2291. homeassistant/components/opower/translations/ro.json +0 -2
  2292. homeassistant/components/opower/translations/ru.json +0 -9
  2293. homeassistant/components/opower/translations/sk.json +92 -6
  2294. homeassistant/components/opower/translations/sl.json +0 -6
  2295. homeassistant/components/opower/translations/sv.json +3 -9
  2296. homeassistant/components/opower/translations/tr.json +0 -2
  2297. homeassistant/components/opower/translations/uk.json +0 -2
  2298. homeassistant/components/opower/translations/zh-Hans.json +55 -9
  2299. homeassistant/components/opower/translations/zh-Hant.json +92 -6
  2300. homeassistant/components/oralb/translations/ga.json +21 -0
  2301. homeassistant/components/osoenergy/icons.json +3 -0
  2302. homeassistant/components/osoenergy/manifest.json +1 -1
  2303. homeassistant/components/osoenergy/services.yaml +14 -0
  2304. homeassistant/components/osoenergy/strings.json +10 -0
  2305. homeassistant/components/osoenergy/translations/bg.json +7 -0
  2306. homeassistant/components/osoenergy/translations/cs.json +10 -0
  2307. homeassistant/components/osoenergy/translations/de.json +11 -1
  2308. homeassistant/components/osoenergy/translations/en-GB.json +10 -0
  2309. homeassistant/components/osoenergy/translations/en.json +10 -0
  2310. homeassistant/components/osoenergy/translations/es.json +9 -0
  2311. homeassistant/components/osoenergy/translations/et.json +10 -0
  2312. homeassistant/components/osoenergy/translations/ga.json +55 -1
  2313. homeassistant/components/osoenergy/translations/it.json +2 -2
  2314. homeassistant/components/osoenergy/translations/sk.json +10 -0
  2315. homeassistant/components/osoenergy/translations/zh-Hans.json +10 -0
  2316. homeassistant/components/osoenergy/translations/zh-Hant.json +10 -0
  2317. homeassistant/components/osoenergy/water_heater.py +34 -1
  2318. homeassistant/components/otbr/translations/ko.json +1 -1
  2319. homeassistant/components/otp/translations/ko.json +11 -0
  2320. homeassistant/components/overkiz/strings.json +1 -1
  2321. homeassistant/components/overkiz/translations/ga.json +19 -3
  2322. homeassistant/components/overkiz/translations/ko.json +1 -0
  2323. homeassistant/components/overseerr/translations/ga.json +3 -0
  2324. homeassistant/components/overseerr/translations/ko.json +15 -0
  2325. homeassistant/components/ovo_energy/translations/ko.json +5 -0
  2326. homeassistant/components/p1_monitor/translations/ko.json +2 -1
  2327. homeassistant/components/palazzetti/translations/it.json +1 -1
  2328. homeassistant/components/palazzetti/translations/ko.json +11 -0
  2329. homeassistant/components/palazzetti/translations/nl.json +1 -0
  2330. homeassistant/components/paperless_ngx/__init__.py +1 -1
  2331. homeassistant/components/paperless_ngx/translations/ga.json +3 -0
  2332. homeassistant/components/paperless_ngx/translations/ko.json +25 -0
  2333. homeassistant/components/peblar/translations/ga.json +2 -1
  2334. homeassistant/components/peblar/translations/ko.json +26 -0
  2335. homeassistant/components/peco/translations/ga.json +12 -0
  2336. homeassistant/components/pegel_online/__init__.py +6 -2
  2337. homeassistant/components/pegel_online/manifest.json +1 -0
  2338. homeassistant/components/pegel_online/quality_scale.yaml +87 -0
  2339. homeassistant/components/pegel_online/sensor.py +3 -0
  2340. homeassistant/components/pegel_online/strings.json +8 -2
  2341. homeassistant/components/pegel_online/translations/cs.json +7 -1
  2342. homeassistant/components/pegel_online/translations/de.json +7 -1
  2343. homeassistant/components/pegel_online/translations/el.json +7 -1
  2344. homeassistant/components/pegel_online/translations/en-GB.json +7 -1
  2345. homeassistant/components/pegel_online/translations/en.json +7 -1
  2346. homeassistant/components/pegel_online/translations/es.json +7 -1
  2347. homeassistant/components/pegel_online/translations/et.json +7 -1
  2348. homeassistant/components/pegel_online/translations/fr.json +1 -2
  2349. homeassistant/components/pegel_online/translations/ga.json +15 -0
  2350. homeassistant/components/pegel_online/translations/hu.json +7 -1
  2351. homeassistant/components/pegel_online/translations/it.json +7 -0
  2352. homeassistant/components/pegel_online/translations/ja.json +7 -0
  2353. homeassistant/components/pegel_online/translations/lt.json +7 -1
  2354. homeassistant/components/pegel_online/translations/mk.json +1 -2
  2355. homeassistant/components/pegel_online/translations/nl.json +7 -0
  2356. homeassistant/components/pegel_online/translations/pt.json +7 -1
  2357. homeassistant/components/pegel_online/translations/ru.json +7 -1
  2358. homeassistant/components/pegel_online/translations/sk.json +7 -1
  2359. homeassistant/components/pegel_online/translations/sv.json +7 -1
  2360. homeassistant/components/pegel_online/translations/zh-Hans.json +7 -1
  2361. homeassistant/components/pegel_online/translations/zh-Hant.json +7 -1
  2362. homeassistant/components/permobil/translations/ga.json +14 -0
  2363. homeassistant/components/philips_js/config_flow.py +83 -35
  2364. homeassistant/components/philips_js/manifest.json +2 -1
  2365. homeassistant/components/philips_js/strings.json +5 -0
  2366. homeassistant/components/philips_js/translations/bg.json +1 -0
  2367. homeassistant/components/philips_js/translations/ca.json +1 -0
  2368. homeassistant/components/philips_js/translations/cs.json +5 -0
  2369. homeassistant/components/philips_js/translations/de.json +5 -0
  2370. homeassistant/components/philips_js/translations/el.json +5 -0
  2371. homeassistant/components/philips_js/translations/en-GB.json +5 -0
  2372. homeassistant/components/philips_js/translations/en.json +5 -0
  2373. homeassistant/components/philips_js/translations/es.json +5 -0
  2374. homeassistant/components/philips_js/translations/et.json +5 -0
  2375. homeassistant/components/philips_js/translations/ga.json +7 -0
  2376. homeassistant/components/philips_js/translations/he.json +1 -0
  2377. homeassistant/components/philips_js/translations/ja.json +5 -0
  2378. homeassistant/components/philips_js/translations/lt.json +5 -0
  2379. homeassistant/components/philips_js/translations/nl.json +1 -0
  2380. homeassistant/components/philips_js/translations/pt.json +5 -0
  2381. homeassistant/components/philips_js/translations/ru.json +5 -0
  2382. homeassistant/components/philips_js/translations/sk.json +5 -0
  2383. homeassistant/components/philips_js/translations/sv.json +5 -0
  2384. homeassistant/components/philips_js/translations/zh-Hans.json +5 -0
  2385. homeassistant/components/philips_js/translations/zh-Hant.json +5 -0
  2386. homeassistant/components/pi_hole/__init__.py +123 -16
  2387. homeassistant/components/pi_hole/binary_sensor.py +1 -1
  2388. homeassistant/components/pi_hole/config_flow.py +48 -37
  2389. homeassistant/components/pi_hole/const.py +7 -0
  2390. homeassistant/components/pi_hole/entity.py +4 -1
  2391. homeassistant/components/pi_hole/icons.json +9 -0
  2392. homeassistant/components/pi_hole/manifest.json +1 -1
  2393. homeassistant/components/pi_hole/sensor.py +96 -10
  2394. homeassistant/components/pi_hole/strings.json +21 -6
  2395. homeassistant/components/pi_hole/switch.py +1 -1
  2396. homeassistant/components/pi_hole/translations/bg.json +7 -5
  2397. homeassistant/components/pi_hole/translations/ca.json +6 -5
  2398. homeassistant/components/pi_hole/translations/cs.json +18 -5
  2399. homeassistant/components/pi_hole/translations/da.json +0 -5
  2400. homeassistant/components/pi_hole/translations/de.json +18 -5
  2401. homeassistant/components/pi_hole/translations/el.json +18 -5
  2402. homeassistant/components/pi_hole/translations/en-GB.json +18 -5
  2403. homeassistant/components/pi_hole/translations/en.json +18 -5
  2404. homeassistant/components/pi_hole/translations/es.json +18 -5
  2405. homeassistant/components/pi_hole/translations/et.json +18 -5
  2406. homeassistant/components/pi_hole/translations/fi.json +0 -5
  2407. homeassistant/components/pi_hole/translations/fr.json +0 -5
  2408. homeassistant/components/pi_hole/translations/ga.json +15 -0
  2409. homeassistant/components/pi_hole/translations/he.json +18 -5
  2410. homeassistant/components/pi_hole/translations/hu.json +0 -5
  2411. homeassistant/components/pi_hole/translations/id.json +0 -5
  2412. homeassistant/components/pi_hole/translations/it.json +0 -5
  2413. homeassistant/components/pi_hole/translations/ja.json +18 -5
  2414. homeassistant/components/pi_hole/translations/ko.json +1 -5
  2415. homeassistant/components/pi_hole/translations/lt.json +18 -5
  2416. homeassistant/components/pi_hole/translations/mk.json +9 -0
  2417. homeassistant/components/pi_hole/translations/nb.json +0 -5
  2418. homeassistant/components/pi_hole/translations/nl.json +6 -5
  2419. homeassistant/components/pi_hole/translations/pl.json +0 -5
  2420. homeassistant/components/pi_hole/translations/pt-BR.json +0 -5
  2421. homeassistant/components/pi_hole/translations/pt.json +18 -5
  2422. homeassistant/components/pi_hole/translations/ro.json +0 -5
  2423. homeassistant/components/pi_hole/translations/ru.json +18 -5
  2424. homeassistant/components/pi_hole/translations/sk.json +18 -5
  2425. homeassistant/components/pi_hole/translations/sl.json +0 -5
  2426. homeassistant/components/pi_hole/translations/sv.json +9 -5
  2427. homeassistant/components/pi_hole/translations/tr.json +0 -5
  2428. homeassistant/components/pi_hole/translations/uk.json +0 -5
  2429. homeassistant/components/pi_hole/translations/vi.json +0 -5
  2430. homeassistant/components/pi_hole/translations/zh-Hans.json +18 -5
  2431. homeassistant/components/pi_hole/translations/zh-Hant.json +18 -5
  2432. homeassistant/components/pi_hole/update.py +15 -15
  2433. homeassistant/components/ping/__init__.py +0 -6
  2434. homeassistant/components/ping/config_flow.py +3 -3
  2435. homeassistant/components/ping/translations/ga.json +39 -0
  2436. homeassistant/components/playstation_network/__init__.py +44 -4
  2437. homeassistant/components/playstation_network/binary_sensor.py +76 -0
  2438. homeassistant/components/playstation_network/config_flow.py +106 -7
  2439. homeassistant/components/playstation_network/const.py +4 -2
  2440. homeassistant/components/playstation_network/coordinator.py +168 -13
  2441. homeassistant/components/playstation_network/diagnostics.py +15 -7
  2442. homeassistant/components/playstation_network/entity.py +54 -0
  2443. homeassistant/components/playstation_network/helpers.py +92 -37
  2444. homeassistant/components/playstation_network/icons.json +36 -0
  2445. homeassistant/components/playstation_network/image.py +154 -0
  2446. homeassistant/components/playstation_network/media_player.py +35 -11
  2447. homeassistant/components/playstation_network/notify.py +126 -0
  2448. homeassistant/components/playstation_network/quality_scale.yaml +1 -1
  2449. homeassistant/components/playstation_network/sensor.py +94 -40
  2450. homeassistant/components/playstation_network/strings.json +93 -2
  2451. homeassistant/components/playstation_network/translations/bg.json +30 -1
  2452. homeassistant/components/playstation_network/translations/ca.json +2 -1
  2453. homeassistant/components/playstation_network/translations/cs.json +91 -0
  2454. homeassistant/components/playstation_network/translations/de.json +91 -0
  2455. homeassistant/components/playstation_network/translations/el.json +44 -0
  2456. homeassistant/components/playstation_network/translations/en-GB.json +91 -0
  2457. homeassistant/components/playstation_network/translations/en.json +91 -0
  2458. homeassistant/components/playstation_network/translations/es.json +91 -0
  2459. homeassistant/components/playstation_network/translations/et.json +91 -0
  2460. homeassistant/components/playstation_network/translations/fr.json +13 -0
  2461. homeassistant/components/playstation_network/translations/ga.json +87 -0
  2462. homeassistant/components/playstation_network/translations/he.json +17 -1
  2463. homeassistant/components/playstation_network/translations/hu.json +11 -0
  2464. homeassistant/components/playstation_network/translations/id.json +2 -1
  2465. homeassistant/components/playstation_network/translations/it.json +14 -0
  2466. homeassistant/components/playstation_network/translations/ja.json +24 -0
  2467. homeassistant/components/playstation_network/translations/lt.json +28 -0
  2468. homeassistant/components/playstation_network/translations/mk.json +11 -0
  2469. homeassistant/components/playstation_network/translations/nl.json +24 -1
  2470. homeassistant/components/playstation_network/translations/pt.json +28 -0
  2471. homeassistant/components/playstation_network/translations/ru.json +33 -0
  2472. homeassistant/components/playstation_network/translations/sk.json +91 -0
  2473. homeassistant/components/playstation_network/translations/sl.json +28 -0
  2474. homeassistant/components/playstation_network/translations/sv.json +38 -1
  2475. homeassistant/components/playstation_network/translations/zh-Hans.json +91 -0
  2476. homeassistant/components/playstation_network/translations/zh-Hant.json +91 -0
  2477. homeassistant/components/plex/translations/nl.json +9 -0
  2478. homeassistant/components/plugwise/__init__.py +4 -4
  2479. homeassistant/components/plugwise/climate.py +3 -3
  2480. homeassistant/components/plugwise/config_flow.py +3 -3
  2481. homeassistant/components/plugwise/entity.py +1 -1
  2482. homeassistant/components/plugwise/manifest.json +1 -1
  2483. homeassistant/components/plugwise/select.py +2 -2
  2484. homeassistant/components/plugwise/translations/ga.json +16 -2
  2485. homeassistant/components/plugwise/translations/it.json +3 -3
  2486. homeassistant/components/plugwise/translations/ko.json +5 -0
  2487. homeassistant/components/point/translations/ga.json +2 -0
  2488. homeassistant/components/point/translations/ko.json +7 -0
  2489. homeassistant/components/powerfox/translations/ga.json +3 -0
  2490. homeassistant/components/powerfox/translations/ko.json +23 -0
  2491. homeassistant/components/powerwall/translations/ga.json +20 -0
  2492. homeassistant/components/probe_plus/translations/ko.json +11 -0
  2493. homeassistant/components/profiler/translations/ga.json +18 -0
  2494. homeassistant/components/progettihwsw/translations/ga.json +11 -0
  2495. homeassistant/components/proximity/__init__.py +0 -8
  2496. homeassistant/components/proximity/config_flow.py +3 -3
  2497. homeassistant/components/proximity/strings.json +12 -12
  2498. homeassistant/components/proximity/translations/ga.json +73 -0
  2499. homeassistant/components/proxy/manifest.json +1 -1
  2500. homeassistant/components/prusalink/translations/ga.json +19 -0
  2501. homeassistant/components/prusalink/translations/he.json +1 -1
  2502. homeassistant/components/ps4/media_player.py +2 -2
  2503. homeassistant/components/pterodactyl/translations/ko.json +17 -0
  2504. homeassistant/components/purpleair/__init__.py +0 -7
  2505. homeassistant/components/purpleair/config_flow.py +2 -2
  2506. homeassistant/components/purpleair/sensor.py +1 -1
  2507. homeassistant/components/pvpc_hourly_pricing/translations/ga.json +34 -0
  2508. homeassistant/components/pyload/config_flow.py +58 -0
  2509. homeassistant/components/pyload/strings.json +12 -0
  2510. homeassistant/components/pyload/translations/bg.json +6 -0
  2511. homeassistant/components/pyload/translations/ca.json +6 -0
  2512. homeassistant/components/pyload/translations/cs.json +12 -0
  2513. homeassistant/components/pyload/translations/de.json +12 -0
  2514. homeassistant/components/pyload/translations/el.json +12 -0
  2515. homeassistant/components/pyload/translations/en-GB.json +12 -0
  2516. homeassistant/components/pyload/translations/en.json +12 -0
  2517. homeassistant/components/pyload/translations/es.json +12 -0
  2518. homeassistant/components/pyload/translations/et.json +12 -0
  2519. homeassistant/components/pyload/translations/fr.json +12 -0
  2520. homeassistant/components/pyload/translations/ga.json +14 -0
  2521. homeassistant/components/pyload/translations/he.json +6 -0
  2522. homeassistant/components/pyload/translations/ko.json +34 -0
  2523. homeassistant/components/pyload/translations/lt.json +12 -0
  2524. homeassistant/components/pyload/translations/nl.json +10 -0
  2525. homeassistant/components/pyload/translations/pt.json +12 -0
  2526. homeassistant/components/pyload/translations/ru.json +12 -0
  2527. homeassistant/components/pyload/translations/sk.json +12 -0
  2528. homeassistant/components/pyload/translations/sv.json +10 -0
  2529. homeassistant/components/pyload/translations/zh-Hans.json +12 -0
  2530. homeassistant/components/pyload/translations/zh-Hant.json +12 -0
  2531. homeassistant/components/qbittorrent/translations/ga.json +34 -0
  2532. homeassistant/components/qbittorrent/translations/he.json +1 -1
  2533. homeassistant/components/qbittorrent/translations/ko.json +10 -1
  2534. homeassistant/components/qbus/entity.py +2 -5
  2535. homeassistant/components/qbus/manifest.json +1 -1
  2536. homeassistant/components/qnap/strings.json +1 -1
  2537. homeassistant/components/qnap/translations/ga.json +54 -0
  2538. homeassistant/components/qrcode/manifest.json +1 -1
  2539. homeassistant/components/rabbitair/translations/ko.json +12 -0
  2540. homeassistant/components/rachio/translations/es.json +1 -1
  2541. homeassistant/components/rachio/translations/ga.json +12 -0
  2542. homeassistant/components/rainbird/strings.json +2 -2
  2543. homeassistant/components/rainbird/translations/es.json +3 -3
  2544. homeassistant/components/rainbird/translations/fr.json +3 -0
  2545. homeassistant/components/rainbird/translations/ko.json +5 -0
  2546. homeassistant/components/rainforest_raven/translations/ga.json +26 -0
  2547. homeassistant/components/rainmachine/strings.json +11 -11
  2548. homeassistant/components/rainmachine/translations/es.json +1 -1
  2549. homeassistant/components/random/strings.json +1 -0
  2550. homeassistant/components/random/translations/bg.json +0 -1
  2551. homeassistant/components/random/translations/ca.json +0 -1
  2552. homeassistant/components/random/translations/cs.json +2 -1
  2553. homeassistant/components/random/translations/da.json +7 -0
  2554. homeassistant/components/random/translations/de.json +1 -0
  2555. homeassistant/components/random/translations/el.json +2 -1
  2556. homeassistant/components/random/translations/en-GB.json +2 -1
  2557. homeassistant/components/random/translations/en.json +2 -1
  2558. homeassistant/components/random/translations/es.json +2 -1
  2559. homeassistant/components/random/translations/et.json +2 -1
  2560. homeassistant/components/random/translations/fi.json +1 -0
  2561. homeassistant/components/random/translations/fr.json +2 -1
  2562. homeassistant/components/random/translations/ga.json +26 -0
  2563. homeassistant/components/random/translations/he.json +2 -1
  2564. homeassistant/components/random/translations/hu.json +0 -1
  2565. homeassistant/components/random/translations/id.json +0 -1
  2566. homeassistant/components/random/translations/it.json +0 -1
  2567. homeassistant/components/random/translations/ja.json +0 -1
  2568. homeassistant/components/random/translations/ko.json +0 -1
  2569. homeassistant/components/random/translations/lt.json +1 -1
  2570. homeassistant/components/random/translations/nl.json +2 -1
  2571. homeassistant/components/random/translations/pl.json +0 -1
  2572. homeassistant/components/random/translations/pt.json +0 -1
  2573. homeassistant/components/random/translations/ru.json +2 -1
  2574. homeassistant/components/random/translations/sk.json +2 -1
  2575. homeassistant/components/random/translations/sl.json +0 -1
  2576. homeassistant/components/random/translations/sv.json +1 -1
  2577. homeassistant/components/random/translations/tr.json +0 -1
  2578. homeassistant/components/random/translations/vi.json +0 -1
  2579. homeassistant/components/random/translations/zh-Hans.json +2 -1
  2580. homeassistant/components/random/translations/zh-Hant.json +2 -1
  2581. homeassistant/components/recorder/pool.py +7 -0
  2582. homeassistant/components/recorder/translations/ga.json +14 -0
  2583. homeassistant/components/rehlko/translations/ko.json +17 -0
  2584. homeassistant/components/remote/translations/es.json +1 -1
  2585. homeassistant/components/remote/translations/it.json +2 -2
  2586. homeassistant/components/remote_calendar/calendar.py +1 -1
  2587. homeassistant/components/remote_calendar/coordinator.py +1 -0
  2588. homeassistant/components/remote_calendar/manifest.json +1 -1
  2589. homeassistant/components/renault/__init__.py +2 -2
  2590. homeassistant/components/renault/services.py +3 -2
  2591. homeassistant/components/renault/translations/ga.json +10 -0
  2592. homeassistant/components/renson/translations/ga.json +80 -0
  2593. homeassistant/components/renson/translations/it.json +4 -4
  2594. homeassistant/components/reolink/__init__.py +1 -12
  2595. homeassistant/components/reolink/config_flow.py +2 -2
  2596. homeassistant/components/reolink/diagnostics.py +4 -2
  2597. homeassistant/components/reolink/entity.py +1 -1
  2598. homeassistant/components/reolink/icons.json +21 -1
  2599. homeassistant/components/reolink/manifest.json +1 -1
  2600. homeassistant/components/reolink/number.py +33 -1
  2601. homeassistant/components/reolink/select.py +25 -0
  2602. homeassistant/components/reolink/sensor.py +23 -4
  2603. homeassistant/components/reolink/strings.json +15 -0
  2604. homeassistant/components/reolink/switch.py +9 -0
  2605. homeassistant/components/reolink/translations/cs.json +15 -0
  2606. homeassistant/components/reolink/translations/de.json +15 -0
  2607. homeassistant/components/reolink/translations/el.json +3 -0
  2608. homeassistant/components/reolink/translations/en-GB.json +15 -0
  2609. homeassistant/components/reolink/translations/en.json +15 -0
  2610. homeassistant/components/reolink/translations/es.json +25 -10
  2611. homeassistant/components/reolink/translations/et.json +15 -0
  2612. homeassistant/components/reolink/translations/ga.json +105 -2
  2613. homeassistant/components/reolink/translations/it.json +12 -12
  2614. homeassistant/components/reolink/translations/mk.json +5 -0
  2615. homeassistant/components/reolink/translations/sk.json +15 -0
  2616. homeassistant/components/reolink/translations/sv.json +28 -13
  2617. homeassistant/components/reolink/translations/zh-Hans.json +15 -0
  2618. homeassistant/components/reolink/translations/zh-Hant.json +15 -0
  2619. homeassistant/components/rest/sensor.py +1 -15
  2620. homeassistant/components/rest_command/__init__.py +5 -1
  2621. homeassistant/components/rest_command/translations/ga.json +13 -0
  2622. homeassistant/components/rflink/light.py +2 -2
  2623. homeassistant/components/rfxtrx/translations/es.json +8 -8
  2624. homeassistant/components/rfxtrx/translations/ga.json +75 -1
  2625. homeassistant/components/rfxtrx/translations/it.json +2 -2
  2626. homeassistant/components/ring/manifest.json +1 -0
  2627. homeassistant/components/ring/quality_scale.yaml +71 -0
  2628. homeassistant/components/ring/translations/ga.json +21 -1
  2629. homeassistant/components/ring/translations/ko.json +5 -0
  2630. homeassistant/components/risco/alarm_control_panel.py +7 -3
  2631. homeassistant/components/risco/strings.json +6 -6
  2632. homeassistant/components/risco/translations/cs.json +8 -0
  2633. homeassistant/components/risco/translations/fr.json +6 -0
  2634. homeassistant/components/risco/translations/ga.json +39 -0
  2635. homeassistant/components/risco/translations/he.json +8 -0
  2636. homeassistant/components/roborock/__init__.py +0 -8
  2637. homeassistant/components/roborock/config_flow.py +4 -9
  2638. homeassistant/components/roborock/translations/ga.json +47 -1
  2639. homeassistant/components/roborock/translations/he.json +1 -1
  2640. homeassistant/components/roborock/translations/it.json +2 -2
  2641. homeassistant/components/roborock/translations/nl.json +1 -0
  2642. homeassistant/components/roborock/vacuum.py +0 -6
  2643. homeassistant/components/roku/__init__.py +0 -7
  2644. homeassistant/components/roku/config_flow.py +2 -2
  2645. homeassistant/components/roku/media_player.py +4 -4
  2646. homeassistant/components/roku/translations/ga.json +8 -0
  2647. homeassistant/components/romy/translations/ga.json +50 -1
  2648. homeassistant/components/romy/translations/ko.json +14 -0
  2649. homeassistant/components/roomba/translations/es.json +1 -1
  2650. homeassistant/components/roomba/translations/ga.json +15 -0
  2651. homeassistant/components/roon/event.py +4 -3
  2652. homeassistant/components/roon/media_player.py +4 -3
  2653. homeassistant/components/rova/translations/ga.json +43 -0
  2654. homeassistant/components/russound_rio/const.py +4 -0
  2655. homeassistant/components/russound_rio/manifest.json +1 -1
  2656. homeassistant/components/russound_rio/media_player.py +51 -2
  2657. homeassistant/components/russound_rio/strings.json +9 -0
  2658. homeassistant/components/russound_rio/translations/cs.json +9 -0
  2659. homeassistant/components/russound_rio/translations/de.json +9 -0
  2660. homeassistant/components/russound_rio/translations/el.json +9 -0
  2661. homeassistant/components/russound_rio/translations/en-GB.json +9 -0
  2662. homeassistant/components/russound_rio/translations/en.json +9 -0
  2663. homeassistant/components/russound_rio/translations/es.json +9 -0
  2664. homeassistant/components/russound_rio/translations/et.json +9 -0
  2665. homeassistant/components/russound_rio/translations/ga.json +10 -0
  2666. homeassistant/components/russound_rio/translations/ja.json +9 -0
  2667. homeassistant/components/russound_rio/translations/ko.json +19 -0
  2668. homeassistant/components/russound_rio/translations/lt.json +9 -0
  2669. homeassistant/components/russound_rio/translations/mk.json +13 -1
  2670. homeassistant/components/russound_rio/translations/pt.json +9 -0
  2671. homeassistant/components/russound_rio/translations/sk.json +9 -0
  2672. homeassistant/components/russound_rio/translations/zh-Hans.json +9 -0
  2673. homeassistant/components/russound_rio/translations/zh-Hant.json +9 -0
  2674. homeassistant/components/ruuvitag_ble/translations/ga.json +8 -0
  2675. homeassistant/components/ruuvitag_ble/translations/ko.json +11 -0
  2676. homeassistant/components/rympro/translations/ga.json +3 -0
  2677. homeassistant/components/sabnzbd/translations/ga.json +3 -0
  2678. homeassistant/components/samsungtv/strings.json +1 -1
  2679. homeassistant/components/samsungtv/translations/ga.json +1 -0
  2680. homeassistant/components/samsungtv/translations/ko.json +6 -0
  2681. homeassistant/components/sanix/translations/ga.json +28 -0
  2682. homeassistant/components/sanix/translations/ko.json +11 -0
  2683. homeassistant/components/scene/translations/ga.json +16 -0
  2684. homeassistant/components/schedule/translations/it.json +2 -2
  2685. homeassistant/components/schlage/manifest.json +1 -1
  2686. homeassistant/components/schlage/translations/ga.json +10 -0
  2687. homeassistant/components/scrape/manifest.json +1 -1
  2688. homeassistant/components/scrape/sensor.py +2 -13
  2689. homeassistant/components/scrape/translations/bg.json +0 -1
  2690. homeassistant/components/scrape/translations/ca.json +0 -1
  2691. homeassistant/components/scrape/translations/cs.json +1 -1
  2692. homeassistant/components/scrape/translations/el.json +1 -1
  2693. homeassistant/components/scrape/translations/en-GB.json +1 -1
  2694. homeassistant/components/scrape/translations/en.json +1 -1
  2695. homeassistant/components/scrape/translations/es.json +1 -1
  2696. homeassistant/components/scrape/translations/fi.json +0 -1
  2697. homeassistant/components/scrape/translations/fr.json +1 -1
  2698. homeassistant/components/scrape/translations/ga.json +34 -1
  2699. homeassistant/components/scrape/translations/he.json +1 -1
  2700. homeassistant/components/scrape/translations/hu.json +0 -1
  2701. homeassistant/components/scrape/translations/id.json +0 -1
  2702. homeassistant/components/scrape/translations/it.json +0 -1
  2703. homeassistant/components/scrape/translations/ja.json +0 -1
  2704. homeassistant/components/scrape/translations/ko.json +0 -1
  2705. homeassistant/components/scrape/translations/lt.json +0 -1
  2706. homeassistant/components/scrape/translations/nb.json +0 -1
  2707. homeassistant/components/scrape/translations/nl.json +0 -1
  2708. homeassistant/components/scrape/translations/pl.json +0 -1
  2709. homeassistant/components/scrape/translations/pt.json +0 -1
  2710. homeassistant/components/scrape/translations/ru.json +1 -1
  2711. homeassistant/components/scrape/translations/sk.json +1 -1
  2712. homeassistant/components/scrape/translations/sl.json +0 -1
  2713. homeassistant/components/scrape/translations/sv.json +0 -1
  2714. homeassistant/components/scrape/translations/tr.json +0 -1
  2715. homeassistant/components/scrape/translations/uk.json +0 -1
  2716. homeassistant/components/scrape/translations/vi.json +0 -1
  2717. homeassistant/components/scrape/translations/zh-Hans.json +1 -1
  2718. homeassistant/components/scrape/translations/zh-Hant.json +1 -1
  2719. homeassistant/components/screenlogic/manifest.json +1 -1
  2720. homeassistant/components/screenlogic/translations/es.json +3 -3
  2721. homeassistant/components/screenlogic/translations/ga.json +34 -0
  2722. homeassistant/components/script/translations/it.json +2 -2
  2723. homeassistant/components/sensibo/translations/ga.json +14 -0
  2724. homeassistant/components/sensibo/translations/it.json +28 -28
  2725. homeassistant/components/sensibo/translations/ko.json +15 -0
  2726. homeassistant/components/sensirion_ble/translations/ga.json +8 -0
  2727. homeassistant/components/sensirion_ble/translations/ko.json +11 -0
  2728. homeassistant/components/sensor/__init__.py +3 -1
  2729. homeassistant/components/sensor/const.py +14 -0
  2730. homeassistant/components/sensor/device_condition.py +3 -0
  2731. homeassistant/components/sensor/device_trigger.py +3 -0
  2732. homeassistant/components/sensor/icons.json +3 -0
  2733. homeassistant/components/sensor/strings.json +5 -0
  2734. homeassistant/components/sensor/translations/cs.json +5 -0
  2735. homeassistant/components/sensor/translations/de.json +5 -0
  2736. homeassistant/components/sensor/translations/el.json +5 -0
  2737. homeassistant/components/sensor/translations/en-GB.json +5 -0
  2738. homeassistant/components/sensor/translations/en.json +5 -0
  2739. homeassistant/components/sensor/translations/es.json +5 -0
  2740. homeassistant/components/sensor/translations/et.json +5 -0
  2741. homeassistant/components/sensor/translations/fr.json +5 -0
  2742. homeassistant/components/sensor/translations/ga.json +10 -0
  2743. homeassistant/components/sensor/translations/he.json +5 -0
  2744. homeassistant/components/sensor/translations/it.json +2 -2
  2745. homeassistant/components/sensor/translations/ko.json +3 -0
  2746. homeassistant/components/sensor/translations/lt.json +5 -0
  2747. homeassistant/components/sensor/translations/nl.json +6 -0
  2748. homeassistant/components/sensor/translations/pt.json +5 -0
  2749. homeassistant/components/sensor/translations/ru.json +5 -0
  2750. homeassistant/components/sensor/translations/sk.json +5 -0
  2751. homeassistant/components/sensor/translations/sv.json +6 -0
  2752. homeassistant/components/sensor/translations/zh-Hans.json +5 -0
  2753. homeassistant/components/sensor/translations/zh-Hant.json +5 -0
  2754. homeassistant/components/sensorpush_cloud/translations/ko.json +12 -0
  2755. homeassistant/components/sensoterra/translations/ko.json +18 -0
  2756. homeassistant/components/senz/translations/ko.json +3 -0
  2757. homeassistant/components/seven_segments/manifest.json +1 -1
  2758. homeassistant/components/seventeentrack/translations/ga.json +55 -2
  2759. homeassistant/components/seventeentrack/translations/ko.json +12 -0
  2760. homeassistant/components/sfr_box/manifest.json +1 -1
  2761. homeassistant/components/sfr_box/strings.json +1 -1
  2762. homeassistant/components/sfr_box/translations/ga.json +9 -0
  2763. homeassistant/components/sfr_box/translations/he.json +1 -1
  2764. homeassistant/components/sharkiq/translations/ga.json +17 -0
  2765. homeassistant/components/sharkiq/translations/ko.json +6 -0
  2766. homeassistant/components/shell_command/translations/ga.json +10 -0
  2767. homeassistant/components/shelly/__init__.py +1 -1
  2768. homeassistant/components/shelly/button.py +4 -21
  2769. homeassistant/components/shelly/climate.py +2 -8
  2770. homeassistant/components/shelly/config_flow.py +2 -2
  2771. homeassistant/components/shelly/coordinator.py +15 -5
  2772. homeassistant/components/shelly/entity.py +41 -32
  2773. homeassistant/components/shelly/event.py +2 -8
  2774. homeassistant/components/shelly/manifest.json +1 -1
  2775. homeassistant/components/shelly/sensor.py +3 -7
  2776. homeassistant/components/shelly/strings.json +1 -1
  2777. homeassistant/components/shelly/translations/cs.json +1 -1
  2778. homeassistant/components/shelly/translations/da.json +3 -1
  2779. homeassistant/components/shelly/translations/de.json +1 -1
  2780. homeassistant/components/shelly/translations/el.json +2 -1
  2781. homeassistant/components/shelly/translations/en-GB.json +1 -1
  2782. homeassistant/components/shelly/translations/en.json +1 -1
  2783. homeassistant/components/shelly/translations/es.json +1 -1
  2784. homeassistant/components/shelly/translations/et.json +1 -1
  2785. homeassistant/components/shelly/translations/fr.json +1 -1
  2786. homeassistant/components/shelly/translations/ga.json +35 -2
  2787. homeassistant/components/shelly/translations/hu.json +1 -2
  2788. homeassistant/components/shelly/translations/ko.json +8 -1
  2789. homeassistant/components/shelly/translations/lt.json +1 -2
  2790. homeassistant/components/shelly/translations/mk.json +5 -0
  2791. homeassistant/components/shelly/translations/pl.json +1 -1
  2792. homeassistant/components/shelly/translations/pt.json +1 -2
  2793. homeassistant/components/shelly/translations/ru.json +1 -1
  2794. homeassistant/components/shelly/translations/sk.json +1 -1
  2795. homeassistant/components/shelly/translations/sv.json +9 -2
  2796. homeassistant/components/shelly/translations/zh-Hans.json +1 -1
  2797. homeassistant/components/shelly/translations/zh-Hant.json +1 -1
  2798. homeassistant/components/shelly/utils.py +16 -1
  2799. homeassistant/components/sighthound/manifest.json +1 -1
  2800. homeassistant/components/simplisafe/__init__.py +1 -0
  2801. homeassistant/components/simplisafe/translations/de.json +7 -7
  2802. homeassistant/components/simplisafe/translations/es.json +4 -4
  2803. homeassistant/components/siren/translations/it.json +2 -2
  2804. homeassistant/components/sky_remote/translations/ko.json +11 -0
  2805. homeassistant/components/sleepiq/const.py +4 -0
  2806. homeassistant/components/sleepiq/manifest.json +1 -1
  2807. homeassistant/components/sleepiq/number.py +53 -1
  2808. homeassistant/components/sleepiq/select.py +61 -1
  2809. homeassistant/components/sleepiq/strings.json +11 -0
  2810. homeassistant/components/sleepiq/translations/bg.json +9 -0
  2811. homeassistant/components/sleepiq/translations/cs.json +11 -0
  2812. homeassistant/components/sleepiq/translations/de.json +11 -0
  2813. homeassistant/components/sleepiq/translations/el.json +11 -0
  2814. homeassistant/components/sleepiq/translations/en-GB.json +11 -0
  2815. homeassistant/components/sleepiq/translations/en.json +11 -0
  2816. homeassistant/components/sleepiq/translations/es.json +11 -0
  2817. homeassistant/components/sleepiq/translations/et.json +11 -0
  2818. homeassistant/components/sleepiq/translations/ga.json +10 -0
  2819. homeassistant/components/sleepiq/translations/he.json +5 -0
  2820. homeassistant/components/sleepiq/translations/it.json +1 -1
  2821. homeassistant/components/sleepiq/translations/mk.json +16 -1
  2822. homeassistant/components/sleepiq/translations/nl.json +5 -0
  2823. homeassistant/components/sleepiq/translations/ru.json +11 -0
  2824. homeassistant/components/sleepiq/translations/sk.json +11 -0
  2825. homeassistant/components/sleepiq/translations/sv.json +5 -0
  2826. homeassistant/components/sleepiq/translations/zh-Hans.json +11 -0
  2827. homeassistant/components/sleepiq/translations/zh-Hant.json +11 -0
  2828. homeassistant/components/slide_local/__init__.py +0 -7
  2829. homeassistant/components/slide_local/config_flow.py +6 -2
  2830. homeassistant/components/slide_local/translations/ga.json +1 -0
  2831. homeassistant/components/slide_local/translations/ko.json +18 -0
  2832. homeassistant/components/sma/translations/ga.json +5 -0
  2833. homeassistant/components/sma/translations/ko.json +12 -0
  2834. homeassistant/components/smappee/translations/ga.json +3 -0
  2835. homeassistant/components/smappee/translations/ko.json +3 -0
  2836. homeassistant/components/smarla/manifest.json +1 -1
  2837. homeassistant/components/smarla/translations/ko.json +11 -0
  2838. homeassistant/components/smartthings/__init__.py +1 -0
  2839. homeassistant/components/smartthings/translations/es.json +2 -2
  2840. homeassistant/components/smartthings/translations/fi.json +12 -1
  2841. homeassistant/components/smartthings/translations/ga.json +2 -0
  2842. homeassistant/components/smartthings/translations/he.json +1 -1
  2843. homeassistant/components/smartthings/translations/it.json +9 -9
  2844. homeassistant/components/smartthings/translations/ko.json +209 -4
  2845. homeassistant/components/smartthings/vacuum.py +95 -0
  2846. homeassistant/components/smarttub/binary_sensor.py +29 -3
  2847. homeassistant/components/smarttub/const.py +1 -0
  2848. homeassistant/components/smarttub/controller.py +3 -0
  2849. homeassistant/components/smarttub/entity.py +30 -4
  2850. homeassistant/components/smarttub/manifest.json +1 -1
  2851. homeassistant/components/smarttub/sensor.py +10 -10
  2852. homeassistant/components/smarty/translations/ko.json +11 -0
  2853. homeassistant/components/smhi/__init__.py +1 -1
  2854. homeassistant/components/smhi/coordinator.py +10 -0
  2855. homeassistant/components/smhi/entity.py +7 -1
  2856. homeassistant/components/smhi/icons.json +27 -0
  2857. homeassistant/components/smhi/sensor.py +139 -0
  2858. homeassistant/components/smhi/strings.json +34 -0
  2859. homeassistant/components/smhi/translations/bg.json +33 -0
  2860. homeassistant/components/smhi/translations/cs.json +34 -0
  2861. homeassistant/components/smhi/translations/de.json +34 -0
  2862. homeassistant/components/smhi/translations/el.json +34 -0
  2863. homeassistant/components/smhi/translations/en-GB.json +34 -0
  2864. homeassistant/components/smhi/translations/en.json +34 -0
  2865. homeassistant/components/smhi/translations/es.json +34 -0
  2866. homeassistant/components/smhi/translations/et.json +34 -0
  2867. homeassistant/components/smhi/translations/ga.json +37 -0
  2868. homeassistant/components/smhi/translations/lt.json +34 -0
  2869. homeassistant/components/smhi/translations/mk.json +34 -1
  2870. homeassistant/components/smhi/translations/nl.json +11 -0
  2871. homeassistant/components/smhi/translations/sk.json +34 -0
  2872. homeassistant/components/smhi/translations/sv.json +34 -0
  2873. homeassistant/components/smhi/translations/zh-Hans.json +34 -0
  2874. homeassistant/components/smhi/translations/zh-Hant.json +34 -0
  2875. homeassistant/components/smhi/weather.py +19 -5
  2876. homeassistant/components/smlight/translations/ko.json +15 -0
  2877. homeassistant/components/sms/__init__.py +2 -2
  2878. homeassistant/components/sms/coordinator.py +4 -2
  2879. homeassistant/components/smtp/translations/ga.json +7 -0
  2880. homeassistant/components/snapcast/media_player.py +75 -1
  2881. homeassistant/components/snapcast/translations/ga.json +11 -0
  2882. homeassistant/components/snmp/device_tracker.py +37 -23
  2883. homeassistant/components/snmp/manifest.json +1 -1
  2884. homeassistant/components/snmp/sensor.py +7 -7
  2885. homeassistant/components/snmp/switch.py +15 -8
  2886. homeassistant/components/snmp/util.py +10 -10
  2887. homeassistant/components/snoo/__init__.py +1 -1
  2888. homeassistant/components/snoo/coordinator.py +8 -1
  2889. homeassistant/components/snoo/translations/ko.json +12 -0
  2890. homeassistant/components/solaredge/translations/ga.json +27 -0
  2891. homeassistant/components/solarlog/translations/ga.json +3 -0
  2892. homeassistant/components/solarlog/translations/ko.json +15 -0
  2893. homeassistant/components/soma/translations/ga.json +11 -0
  2894. homeassistant/components/somfy_mylink/__init__.py +1 -16
  2895. homeassistant/components/somfy_mylink/config_flow.py +2 -2
  2896. homeassistant/components/somfy_mylink/translations/ga.json +11 -0
  2897. homeassistant/components/sonarr/__init__.py +0 -6
  2898. homeassistant/components/sonarr/config_flow.py +2 -2
  2899. homeassistant/components/sonos/favorites.py +1 -1
  2900. homeassistant/components/sonos/manifest.json +1 -1
  2901. homeassistant/components/sonos/sensor.py +65 -3
  2902. homeassistant/components/sonos/strings.json +8 -0
  2903. homeassistant/components/sonos/translations/bg.json +9 -0
  2904. homeassistant/components/sonos/translations/cs.json +8 -0
  2905. homeassistant/components/sonos/translations/de.json +8 -0
  2906. homeassistant/components/sonos/translations/el.json +8 -0
  2907. homeassistant/components/sonos/translations/en-GB.json +8 -0
  2908. homeassistant/components/sonos/translations/en.json +8 -0
  2909. homeassistant/components/sonos/translations/es.json +8 -0
  2910. homeassistant/components/sonos/translations/et.json +8 -0
  2911. homeassistant/components/sonos/translations/fr.json +8 -0
  2912. homeassistant/components/sonos/translations/ga.json +20 -0
  2913. homeassistant/components/sonos/translations/he.json +11 -0
  2914. homeassistant/components/sonos/translations/hu.json +8 -0
  2915. homeassistant/components/sonos/translations/it.json +8 -0
  2916. homeassistant/components/sonos/translations/ja.json +8 -0
  2917. homeassistant/components/sonos/translations/lt.json +8 -0
  2918. homeassistant/components/sonos/translations/mk.json +12 -0
  2919. homeassistant/components/sonos/translations/nl.json +6 -0
  2920. homeassistant/components/sonos/translations/pt.json +8 -0
  2921. homeassistant/components/sonos/translations/ru.json +8 -0
  2922. homeassistant/components/sonos/translations/sk.json +8 -0
  2923. homeassistant/components/sonos/translations/sv.json +8 -0
  2924. homeassistant/components/sonos/translations/zh-Hans.json +8 -0
  2925. homeassistant/components/sonos/translations/zh-Hant.json +8 -0
  2926. homeassistant/components/soundtouch/translations/ga.json +11 -0
  2927. homeassistant/components/speedtestdotnet/__init__.py +0 -8
  2928. homeassistant/components/speedtestdotnet/config_flow.py +6 -2
  2929. homeassistant/components/speedtestdotnet/translations/ga.json +51 -0
  2930. homeassistant/components/spotify/translations/ga.json +5 -0
  2931. homeassistant/components/spotify/translations/ko.json +3 -0
  2932. homeassistant/components/sql/__init__.py +0 -7
  2933. homeassistant/components/sql/config_flow.py +2 -2
  2934. homeassistant/components/sql/sensor.py +2 -1
  2935. homeassistant/components/sql/translations/bg.json +0 -1
  2936. homeassistant/components/sql/translations/ca.json +0 -1
  2937. homeassistant/components/sql/translations/cs.json +1 -1
  2938. homeassistant/components/sql/translations/el.json +1 -1
  2939. homeassistant/components/sql/translations/en-GB.json +1 -1
  2940. homeassistant/components/sql/translations/en.json +1 -1
  2941. homeassistant/components/sql/translations/es.json +1 -1
  2942. homeassistant/components/sql/translations/fi.json +0 -1
  2943. homeassistant/components/sql/translations/fr.json +1 -1
  2944. homeassistant/components/sql/translations/ga.json +2 -1
  2945. homeassistant/components/sql/translations/he.json +1 -1
  2946. homeassistant/components/sql/translations/hu.json +0 -1
  2947. homeassistant/components/sql/translations/id.json +0 -1
  2948. homeassistant/components/sql/translations/it.json +0 -1
  2949. homeassistant/components/sql/translations/ja.json +0 -1
  2950. homeassistant/components/sql/translations/ko.json +0 -1
  2951. homeassistant/components/sql/translations/lt.json +0 -1
  2952. homeassistant/components/sql/translations/nb.json +0 -1
  2953. homeassistant/components/sql/translations/nl.json +1 -1
  2954. homeassistant/components/sql/translations/pl.json +0 -1
  2955. homeassistant/components/sql/translations/pt.json +0 -1
  2956. homeassistant/components/sql/translations/ru.json +1 -1
  2957. homeassistant/components/sql/translations/sk.json +1 -1
  2958. homeassistant/components/sql/translations/sl.json +0 -1
  2959. homeassistant/components/sql/translations/sv.json +0 -1
  2960. homeassistant/components/sql/translations/tr.json +0 -1
  2961. homeassistant/components/sql/translations/uk.json +0 -1
  2962. homeassistant/components/sql/translations/vi.json +0 -1
  2963. homeassistant/components/sql/translations/zh-Hans.json +0 -1
  2964. homeassistant/components/sql/translations/zh-Hant.json +1 -1
  2965. homeassistant/components/squeezebox/__init__.py +11 -15
  2966. homeassistant/components/squeezebox/binary_sensor.py +1 -1
  2967. homeassistant/components/squeezebox/browse_media.py +40 -14
  2968. homeassistant/components/squeezebox/const.py +2 -3
  2969. homeassistant/components/squeezebox/coordinator.py +4 -4
  2970. homeassistant/components/squeezebox/entity.py +0 -4
  2971. homeassistant/components/squeezebox/media_player.py +65 -16
  2972. homeassistant/components/squeezebox/sensor.py +1 -1
  2973. homeassistant/components/squeezebox/translations/nl.json +5 -0
  2974. homeassistant/components/starline/translations/en-GB.json +1 -1
  2975. homeassistant/components/starline/translations/ga.json +3 -0
  2976. homeassistant/components/starlink/sensor.py +1 -1
  2977. homeassistant/components/starlink/translations/ga.json +13 -0
  2978. homeassistant/components/statistics/__init__.py +44 -1
  2979. homeassistant/components/statistics/config_flow.py +11 -9
  2980. homeassistant/components/statistics/sensor.py +21 -14
  2981. homeassistant/components/statistics/translations/ga.json +37 -6
  2982. homeassistant/components/statistics/translations/ko.json +9 -0
  2983. homeassistant/components/steamist/translations/ga.json +17 -0
  2984. homeassistant/components/stiebel_eltron/translations/ko.json +12 -0
  2985. homeassistant/components/stookwijzer/__init__.py +15 -1
  2986. homeassistant/components/stookwijzer/const.py +3 -0
  2987. homeassistant/components/stookwijzer/icons.json +7 -0
  2988. homeassistant/components/stookwijzer/services.py +76 -0
  2989. homeassistant/components/stookwijzer/services.yaml +7 -0
  2990. homeassistant/components/stookwijzer/strings.json +18 -0
  2991. homeassistant/components/stookwijzer/translations/cs.json +18 -0
  2992. homeassistant/components/stookwijzer/translations/de.json +18 -0
  2993. homeassistant/components/stookwijzer/translations/el.json +18 -0
  2994. homeassistant/components/stookwijzer/translations/en-GB.json +18 -0
  2995. homeassistant/components/stookwijzer/translations/en.json +18 -0
  2996. homeassistant/components/stookwijzer/translations/es.json +18 -0
  2997. homeassistant/components/stookwijzer/translations/et.json +18 -0
  2998. homeassistant/components/stookwijzer/translations/ga.json +18 -0
  2999. homeassistant/components/stookwijzer/translations/lt.json +18 -0
  3000. homeassistant/components/stookwijzer/translations/pt.json +18 -0
  3001. homeassistant/components/stookwijzer/translations/sk.json +18 -0
  3002. homeassistant/components/stookwijzer/translations/sv.json +3 -0
  3003. homeassistant/components/stookwijzer/translations/zh-Hans.json +18 -0
  3004. homeassistant/components/stookwijzer/translations/zh-Hant.json +18 -0
  3005. homeassistant/components/stream/manifest.json +1 -1
  3006. homeassistant/components/streamlabswater/translations/ko.json +9 -0
  3007. homeassistant/components/suez_water/translations/ga.json +6 -0
  3008. homeassistant/components/sun/translations/cs.json +3 -3
  3009. homeassistant/components/sun/translations/ga.json +5 -0
  3010. homeassistant/components/surepetcare/translations/ga.json +9 -0
  3011. homeassistant/components/swiss_public_transport/translations/ga.json +36 -2
  3012. homeassistant/components/switch/translations/it.json +6 -6
  3013. homeassistant/components/switch_as_x/__init__.py +23 -19
  3014. homeassistant/components/switch_as_x/config_flow.py +1 -1
  3015. homeassistant/components/switch_as_x/entity.py +1 -6
  3016. homeassistant/components/switch_as_x/translations/ga.json +33 -0
  3017. homeassistant/components/switchbot/manifest.json +1 -1
  3018. homeassistant/components/switchbot/strings.json +3 -3
  3019. homeassistant/components/switchbot/translations/nl.json +1 -1
  3020. homeassistant/components/switchbot_cloud/__init__.py +29 -2
  3021. homeassistant/components/switchbot_cloud/const.py +2 -0
  3022. homeassistant/components/switchbot_cloud/fan.py +120 -0
  3023. homeassistant/components/switchbot_cloud/light.py +153 -0
  3024. homeassistant/components/switchbot_cloud/manifest.json +1 -1
  3025. homeassistant/components/switchbot_cloud/sensor.py +1 -0
  3026. homeassistant/components/switchbot_cloud/vacuum.py +136 -4
  3027. homeassistant/components/switcher_kis/translations/ko.json +12 -0
  3028. homeassistant/components/switcher_kis/translations/sk.json +1 -1
  3029. homeassistant/components/synology_dsm/__init__.py +0 -8
  3030. homeassistant/components/synology_dsm/config_flow.py +2 -2
  3031. homeassistant/components/system_bridge/translations/ga.json +75 -1
  3032. homeassistant/components/system_bridge/translations/ko.json +5 -0
  3033. homeassistant/components/system_health/__init__.py +1 -1
  3034. homeassistant/components/systemmonitor/translations/ga.json +36 -0
  3035. homeassistant/components/tado/translations/ga.json +18 -1
  3036. homeassistant/components/tailscale/translations/ga.json +9 -0
  3037. homeassistant/components/tailwind/translations/ga.json +26 -0
  3038. homeassistant/components/tailwind/translations/ko.json +1 -0
  3039. homeassistant/components/tami4/translations/ga.json +16 -0
  3040. homeassistant/components/tankerkoenig/__init__.py +0 -9
  3041. homeassistant/components/tankerkoenig/binary_sensor.py +3 -0
  3042. homeassistant/components/tankerkoenig/config_flow.py +4 -4
  3043. homeassistant/components/tankerkoenig/coordinator.py +15 -3
  3044. homeassistant/components/tankerkoenig/manifest.json +1 -0
  3045. homeassistant/components/tankerkoenig/quality_scale.yaml +81 -0
  3046. homeassistant/components/tankerkoenig/sensor.py +12 -2
  3047. homeassistant/components/tankerkoenig/strings.json +34 -1
  3048. homeassistant/components/tankerkoenig/translations/ca.json +1 -2
  3049. homeassistant/components/tankerkoenig/translations/cs.json +35 -2
  3050. homeassistant/components/tankerkoenig/translations/de.json +35 -2
  3051. homeassistant/components/tankerkoenig/translations/el.json +1 -2
  3052. homeassistant/components/tankerkoenig/translations/en-GB.json +35 -2
  3053. homeassistant/components/tankerkoenig/translations/en.json +35 -2
  3054. homeassistant/components/tankerkoenig/translations/es.json +35 -2
  3055. homeassistant/components/tankerkoenig/translations/et.json +35 -2
  3056. homeassistant/components/tankerkoenig/translations/fi.json +1 -2
  3057. homeassistant/components/tankerkoenig/translations/fr.json +1 -2
  3058. homeassistant/components/tankerkoenig/translations/ga.json +69 -0
  3059. homeassistant/components/tankerkoenig/translations/hu.json +1 -2
  3060. homeassistant/components/tankerkoenig/translations/id.json +1 -2
  3061. homeassistant/components/tankerkoenig/translations/it.json +1 -2
  3062. homeassistant/components/tankerkoenig/translations/ja.json +1 -2
  3063. homeassistant/components/tankerkoenig/translations/ko.json +1 -2
  3064. homeassistant/components/tankerkoenig/translations/lt.json +1 -2
  3065. homeassistant/components/tankerkoenig/translations/nb.json +1 -2
  3066. homeassistant/components/tankerkoenig/translations/nl.json +1 -2
  3067. homeassistant/components/tankerkoenig/translations/pl.json +1 -2
  3068. homeassistant/components/tankerkoenig/translations/pt-BR.json +1 -2
  3069. homeassistant/components/tankerkoenig/translations/pt.json +1 -2
  3070. homeassistant/components/tankerkoenig/translations/ro.json +1 -2
  3071. homeassistant/components/tankerkoenig/translations/ru.json +1 -2
  3072. homeassistant/components/tankerkoenig/translations/sk.json +35 -2
  3073. homeassistant/components/tankerkoenig/translations/sv.json +23 -2
  3074. homeassistant/components/tankerkoenig/translations/tr.json +1 -2
  3075. homeassistant/components/tankerkoenig/translations/uk.json +1 -2
  3076. homeassistant/components/tankerkoenig/translations/zh-Hans.json +35 -2
  3077. homeassistant/components/tankerkoenig/translations/zh-Hant.json +35 -2
  3078. homeassistant/components/technove/translations/ga.json +52 -1
  3079. homeassistant/components/technove/translations/ko.json +11 -0
  3080. homeassistant/components/tedee/translations/ga.json +29 -0
  3081. homeassistant/components/tedee/translations/ko.json +16 -0
  3082. homeassistant/components/telegram_bot/config_flow.py +6 -2
  3083. homeassistant/components/telegram_bot/services.yaml +48 -42
  3084. homeassistant/components/telegram_bot/strings.json +11 -7
  3085. homeassistant/components/telegram_bot/translations/ca.json +0 -5
  3086. homeassistant/components/telegram_bot/translations/cs.json +9 -5
  3087. homeassistant/components/telegram_bot/translations/de.json +9 -5
  3088. homeassistant/components/telegram_bot/translations/el.json +7 -4
  3089. homeassistant/components/telegram_bot/translations/en-GB.json +9 -5
  3090. homeassistant/components/telegram_bot/translations/en.json +9 -5
  3091. homeassistant/components/telegram_bot/translations/es.json +9 -5
  3092. homeassistant/components/telegram_bot/translations/et.json +9 -5
  3093. homeassistant/components/telegram_bot/translations/fi.json +0 -6
  3094. homeassistant/components/telegram_bot/translations/fr.json +2 -1
  3095. homeassistant/components/telegram_bot/translations/ga.json +12 -1
  3096. homeassistant/components/telegram_bot/translations/he.json +0 -4
  3097. homeassistant/components/telegram_bot/translations/hu.json +0 -4
  3098. homeassistant/components/telegram_bot/translations/id.json +0 -6
  3099. homeassistant/components/telegram_bot/translations/it.json +7 -4
  3100. homeassistant/components/telegram_bot/translations/ja.json +7 -4
  3101. homeassistant/components/telegram_bot/translations/ko.json +19 -0
  3102. homeassistant/components/telegram_bot/translations/lt.json +7 -4
  3103. homeassistant/components/telegram_bot/translations/nl.json +0 -4
  3104. homeassistant/components/telegram_bot/translations/pt.json +7 -4
  3105. homeassistant/components/telegram_bot/translations/ru.json +0 -4
  3106. homeassistant/components/telegram_bot/translations/sk.json +9 -5
  3107. homeassistant/components/telegram_bot/translations/sv.json +0 -4
  3108. homeassistant/components/telegram_bot/translations/tr.json +0 -4
  3109. homeassistant/components/telegram_bot/translations/zh-Hans.json +9 -5
  3110. homeassistant/components/telegram_bot/translations/zh-Hant.json +9 -5
  3111. homeassistant/components/tellduslive/strings.json +2 -2
  3112. homeassistant/components/tellduslive/translations/ga.json +11 -0
  3113. homeassistant/components/template/alarm_control_panel.py +65 -153
  3114. homeassistant/components/template/binary_sensor.py +50 -123
  3115. homeassistant/components/template/button.py +39 -51
  3116. homeassistant/components/template/config.py +25 -21
  3117. homeassistant/components/template/config_flow.py +220 -16
  3118. homeassistant/components/template/const.py +14 -1
  3119. homeassistant/components/template/cover.py +90 -104
  3120. homeassistant/components/template/entity.py +41 -5
  3121. homeassistant/components/template/fan.py +85 -106
  3122. homeassistant/components/template/helpers.py +217 -5
  3123. homeassistant/components/template/image.py +29 -55
  3124. homeassistant/components/template/light.py +73 -79
  3125. homeassistant/components/template/lock.py +88 -77
  3126. homeassistant/components/template/number.py +148 -158
  3127. homeassistant/components/template/select.py +121 -112
  3128. homeassistant/components/template/sensor.py +51 -106
  3129. homeassistant/components/template/strings.json +672 -52
  3130. homeassistant/components/template/switch.py +98 -181
  3131. homeassistant/components/template/template_entity.py +27 -66
  3132. homeassistant/components/template/translations/bg.json +57 -15
  3133. homeassistant/components/template/translations/ca.json +11 -83
  3134. homeassistant/components/template/translations/cs.json +647 -28
  3135. homeassistant/components/template/translations/da.json +3 -15
  3136. homeassistant/components/template/translations/de.json +680 -61
  3137. homeassistant/components/template/translations/el.json +84 -88
  3138. homeassistant/components/template/translations/en-GB.json +661 -42
  3139. homeassistant/components/template/translations/en.json +661 -42
  3140. homeassistant/components/template/translations/es.json +612 -42
  3141. homeassistant/components/template/translations/et.json +668 -49
  3142. homeassistant/components/template/translations/fi.json +4 -20
  3143. homeassistant/components/template/translations/fr.json +641 -30
  3144. homeassistant/components/template/translations/ga.json +528 -39
  3145. homeassistant/components/template/translations/he.json +638 -40
  3146. homeassistant/components/template/translations/hu.json +11 -88
  3147. homeassistant/components/template/translations/id.json +11 -88
  3148. homeassistant/components/template/translations/it.json +9 -26
  3149. homeassistant/components/template/translations/ja.json +11 -88
  3150. homeassistant/components/template/translations/ko.json +107 -28
  3151. homeassistant/components/template/translations/lb.json +1 -8
  3152. homeassistant/components/template/translations/lt.json +33 -86
  3153. homeassistant/components/template/translations/lv.json +2 -15
  3154. homeassistant/components/template/translations/nb.json +3 -15
  3155. homeassistant/components/template/translations/nl.json +145 -38
  3156. homeassistant/components/template/translations/pl.json +9 -71
  3157. homeassistant/components/template/translations/pt-BR.json +0 -21
  3158. homeassistant/components/template/translations/pt.json +11 -88
  3159. homeassistant/components/template/translations/ro.json +1 -8
  3160. homeassistant/components/template/translations/ru.json +658 -44
  3161. homeassistant/components/template/translations/sk.json +660 -41
  3162. homeassistant/components/template/translations/sl.json +430 -39
  3163. homeassistant/components/template/translations/sv.json +495 -81
  3164. homeassistant/components/template/translations/tr.json +11 -88
  3165. homeassistant/components/template/translations/uk.json +11 -88
  3166. homeassistant/components/template/translations/vi.json +11 -88
  3167. homeassistant/components/template/translations/zh-Hans.json +648 -46
  3168. homeassistant/components/template/translations/zh-Hant.json +652 -33
  3169. homeassistant/components/template/trigger_entity.py +1 -1
  3170. homeassistant/components/template/vacuum.py +145 -110
  3171. homeassistant/components/template/weather.py +70 -65
  3172. homeassistant/components/tensorflow/manifest.json +2 -2
  3173. homeassistant/components/tesla_fleet/config_flow.py +3 -1
  3174. homeassistant/components/tesla_fleet/manifest.json +1 -1
  3175. homeassistant/components/tesla_fleet/strings.json +1 -1
  3176. homeassistant/components/tesla_fleet/translations/ga.json +2 -0
  3177. homeassistant/components/tesla_fleet/translations/it.json +8 -8
  3178. homeassistant/components/tesla_fleet/translations/ko.json +9 -0
  3179. homeassistant/components/tesla_fleet/translations/nl.json +3 -0
  3180. homeassistant/components/tesla_wall_connector/translations/ga.json +31 -1
  3181. homeassistant/components/teslemetry/__init__.py +1 -6
  3182. homeassistant/components/teslemetry/binary_sensor.py +1 -1
  3183. homeassistant/components/teslemetry/climate.py +2 -2
  3184. homeassistant/components/teslemetry/coordinator.py +1 -0
  3185. homeassistant/components/teslemetry/cover.py +6 -5
  3186. homeassistant/components/teslemetry/device_tracker.py +1 -1
  3187. homeassistant/components/teslemetry/lock.py +2 -2
  3188. homeassistant/components/teslemetry/manifest.json +1 -1
  3189. homeassistant/components/teslemetry/media_player.py +1 -1
  3190. homeassistant/components/teslemetry/models.py +1 -1
  3191. homeassistant/components/teslemetry/number.py +1 -1
  3192. homeassistant/components/teslemetry/select.py +1 -1
  3193. homeassistant/components/teslemetry/sensor.py +10 -9
  3194. homeassistant/components/teslemetry/strings.json +1 -1
  3195. homeassistant/components/teslemetry/switch.py +1 -2
  3196. homeassistant/components/teslemetry/translations/ga.json +314 -1
  3197. homeassistant/components/teslemetry/translations/he.json +1 -1
  3198. homeassistant/components/teslemetry/translations/it.json +16 -16
  3199. homeassistant/components/teslemetry/translations/ko.json +30 -0
  3200. homeassistant/components/teslemetry/update.py +1 -1
  3201. homeassistant/components/tessie/manifest.json +1 -1
  3202. homeassistant/components/tessie/translations/ga.json +136 -0
  3203. homeassistant/components/tessie/translations/it.json +9 -9
  3204. homeassistant/components/tessie/translations/ko.json +5 -0
  3205. homeassistant/components/tessie/update.py +7 -0
  3206. homeassistant/components/thethingsnetwork/translations/ga.json +19 -0
  3207. homeassistant/components/thethingsnetwork/translations/ko.json +3 -1
  3208. homeassistant/components/threshold/__init__.py +44 -6
  3209. homeassistant/components/threshold/binary_sensor.py +24 -18
  3210. homeassistant/components/threshold/config_flow.py +10 -7
  3211. homeassistant/components/tibber/translations/ga.json +88 -0
  3212. homeassistant/components/tibber/translations/nl.json +3 -0
  3213. homeassistant/components/tilt_pi/translations/ko.json +11 -0
  3214. homeassistant/components/time_date/config_flow.py +5 -16
  3215. homeassistant/components/time_date/translations/ga.json +67 -0
  3216. homeassistant/components/timer/translations/ga.json +5 -0
  3217. homeassistant/components/timer/translations/he.json +1 -1
  3218. homeassistant/components/todo/translations/ga.json +83 -0
  3219. homeassistant/components/tolo/translations/ga.json +21 -0
  3220. homeassistant/components/tomorrowio/strings.json +2 -2
  3221. homeassistant/components/tomorrowio/translations/ga.json +53 -0
  3222. homeassistant/components/toon/translations/ga.json +4 -0
  3223. homeassistant/components/toon/translations/ko.json +3 -0
  3224. homeassistant/components/totalconnect/translations/es.json +2 -2
  3225. homeassistant/components/totalconnect/translations/ga.json +16 -0
  3226. homeassistant/components/totalconnect/translations/ko.json +3 -0
  3227. homeassistant/components/touchline_sl/manifest.json +1 -1
  3228. homeassistant/components/touchline_sl/translations/ko.json +12 -0
  3229. homeassistant/components/tplink/strings.json +2 -2
  3230. homeassistant/components/tplink/translations/cs.json +4 -0
  3231. homeassistant/components/tplink/translations/ga.json +30 -2
  3232. homeassistant/components/tplink/translations/ko.json +29 -0
  3233. homeassistant/components/tplink_omada/translations/ga.json +34 -0
  3234. homeassistant/components/traccar_server/config_flow.py +66 -1
  3235. homeassistant/components/traccar_server/coordinator.py +9 -3
  3236. homeassistant/components/traccar_server/helpers.py +15 -1
  3237. homeassistant/components/traccar_server/strings.json +11 -2
  3238. homeassistant/components/traccar_server/translations/bg.json +9 -1
  3239. homeassistant/components/traccar_server/translations/ca.json +9 -1
  3240. homeassistant/components/traccar_server/translations/cs.json +10 -1
  3241. homeassistant/components/traccar_server/translations/de.json +10 -1
  3242. homeassistant/components/traccar_server/translations/el.json +10 -1
  3243. homeassistant/components/traccar_server/translations/en-GB.json +10 -1
  3244. homeassistant/components/traccar_server/translations/en.json +10 -1
  3245. homeassistant/components/traccar_server/translations/es.json +10 -1
  3246. homeassistant/components/traccar_server/translations/et.json +10 -1
  3247. homeassistant/components/traccar_server/translations/ga.json +52 -1
  3248. homeassistant/components/traccar_server/translations/he.json +9 -1
  3249. homeassistant/components/traccar_server/translations/ja.json +10 -1
  3250. homeassistant/components/traccar_server/translations/ko.json +20 -0
  3251. homeassistant/components/traccar_server/translations/lt.json +10 -1
  3252. homeassistant/components/traccar_server/translations/nl.json +9 -1
  3253. homeassistant/components/traccar_server/translations/pt.json +10 -1
  3254. homeassistant/components/traccar_server/translations/ru.json +10 -1
  3255. homeassistant/components/traccar_server/translations/sk.json +10 -1
  3256. homeassistant/components/traccar_server/translations/sv.json +10 -1
  3257. homeassistant/components/traccar_server/translations/zh-Hans.json +10 -1
  3258. homeassistant/components/traccar_server/translations/zh-Hant.json +10 -1
  3259. homeassistant/components/tractive/translations/ga.json +7 -0
  3260. homeassistant/components/tradfri/translations/ga.json +7 -0
  3261. homeassistant/components/trafikverket_camera/translations/ga.json +25 -0
  3262. homeassistant/components/trafikverket_camera/translations/ko.json +11 -0
  3263. homeassistant/components/trafikverket_ferry/translations/pl.json +1 -1
  3264. homeassistant/components/trafikverket_train/__init__.py +0 -6
  3265. homeassistant/components/trafikverket_train/config_flow.py +2 -2
  3266. homeassistant/components/trafikverket_train/translations/ga.json +13 -0
  3267. homeassistant/components/trafikverket_train/translations/ko.json +5 -0
  3268. homeassistant/components/trafikverket_weatherstation/translations/ga.json +35 -0
  3269. homeassistant/components/trafikverket_weatherstation/translations/ko.json +5 -0
  3270. homeassistant/components/transmission/coordinator.py +2 -2
  3271. homeassistant/components/transmission/translations/ga.json +9 -0
  3272. homeassistant/components/transmission/translations/he.json +1 -1
  3273. homeassistant/components/transmission/translations/ko.json +1 -0
  3274. homeassistant/components/trend/__init__.py +44 -1
  3275. homeassistant/components/trend/binary_sensor.py +10 -10
  3276. homeassistant/components/trend/config_flow.py +2 -0
  3277. homeassistant/components/trend/manifest.json +1 -1
  3278. homeassistant/components/trend/translations/ga.json +39 -0
  3279. homeassistant/components/trend/translations/ko.json +9 -0
  3280. homeassistant/components/triggercmd/translations/ko.json +11 -0
  3281. homeassistant/components/tts/__init__.py +13 -3
  3282. homeassistant/components/tts/entity.py +0 -12
  3283. homeassistant/components/tuya/__init__.py +15 -0
  3284. homeassistant/components/tuya/alarm_control_panel.py +2 -1
  3285. homeassistant/components/tuya/binary_sensor.py +117 -52
  3286. homeassistant/components/tuya/button.py +8 -8
  3287. homeassistant/components/tuya/camera.py +3 -3
  3288. homeassistant/components/tuya/climate.py +28 -17
  3289. homeassistant/components/tuya/const.py +8 -11
  3290. homeassistant/components/tuya/cover.py +43 -38
  3291. homeassistant/components/tuya/entity.py +3 -120
  3292. homeassistant/components/tuya/fan.py +22 -7
  3293. homeassistant/components/tuya/humidifier.py +16 -3
  3294. homeassistant/components/tuya/icons.json +6 -0
  3295. homeassistant/components/tuya/light.py +89 -52
  3296. homeassistant/components/tuya/models.py +124 -0
  3297. homeassistant/components/tuya/number.py +143 -81
  3298. homeassistant/components/tuya/select.py +176 -162
  3299. homeassistant/components/tuya/sensor.py +698 -636
  3300. homeassistant/components/tuya/siren.py +8 -8
  3301. homeassistant/components/tuya/strings.json +80 -110
  3302. homeassistant/components/tuya/switch.py +284 -176
  3303. homeassistant/components/tuya/translations/bg.json +33 -86
  3304. homeassistant/components/tuya/translations/ca.json +6 -121
  3305. homeassistant/components/tuya/translations/cs.json +89 -119
  3306. homeassistant/components/tuya/translations/de.json +89 -119
  3307. homeassistant/components/tuya/translations/el.json +77 -119
  3308. homeassistant/components/tuya/translations/en-GB.json +89 -119
  3309. homeassistant/components/tuya/translations/en.json +89 -119
  3310. homeassistant/components/tuya/translations/es.json +91 -121
  3311. homeassistant/components/tuya/translations/et.json +89 -119
  3312. homeassistant/components/tuya/translations/fi.json +5 -121
  3313. homeassistant/components/tuya/translations/fr.json +0 -121
  3314. homeassistant/components/tuya/translations/ga.json +109 -0
  3315. homeassistant/components/tuya/translations/gl.json +0 -68
  3316. homeassistant/components/tuya/translations/he.json +23 -120
  3317. homeassistant/components/tuya/translations/hu.json +0 -121
  3318. homeassistant/components/tuya/translations/id.json +0 -119
  3319. homeassistant/components/tuya/translations/it.json +16 -128
  3320. homeassistant/components/tuya/translations/ja.json +0 -121
  3321. homeassistant/components/tuya/translations/ko.json +0 -121
  3322. homeassistant/components/tuya/translations/lt.json +51 -121
  3323. homeassistant/components/tuya/translations/lv.json +0 -18
  3324. homeassistant/components/tuya/translations/mk.json +43 -0
  3325. homeassistant/components/tuya/translations/nb.json +0 -29
  3326. homeassistant/components/tuya/translations/nl.json +29 -121
  3327. homeassistant/components/tuya/translations/pl.json +0 -23
  3328. homeassistant/components/tuya/translations/pt-BR.json +0 -121
  3329. homeassistant/components/tuya/translations/pt.json +23 -121
  3330. homeassistant/components/tuya/translations/ro.json +0 -121
  3331. homeassistant/components/tuya/translations/ru.json +26 -121
  3332. homeassistant/components/tuya/translations/select.it.json +5 -5
  3333. homeassistant/components/tuya/translations/sk.json +89 -119
  3334. homeassistant/components/tuya/translations/sl.json +0 -103
  3335. homeassistant/components/tuya/translations/sr-Latn.json +0 -3
  3336. homeassistant/components/tuya/translations/sv.json +64 -119
  3337. homeassistant/components/tuya/translations/tr.json +0 -121
  3338. homeassistant/components/tuya/translations/uk.json +0 -123
  3339. homeassistant/components/tuya/translations/vi.json +0 -3
  3340. homeassistant/components/tuya/translations/zh-Hans.json +89 -119
  3341. homeassistant/components/tuya/translations/zh-Hant.json +89 -119
  3342. homeassistant/components/tuya/util.py +28 -0
  3343. homeassistant/components/tuya/vacuum.py +14 -28
  3344. homeassistant/components/twinkly/translations/ga.json +8 -1
  3345. homeassistant/components/twinkly/translations/it.json +1 -1
  3346. homeassistant/components/twitch/translations/ga.json +12 -0
  3347. homeassistant/components/unifi/hub/entity_loader.py +5 -3
  3348. homeassistant/components/unifi/hub/hub.py +4 -2
  3349. homeassistant/components/unifi/translations/ga.json +16 -0
  3350. homeassistant/components/unifiprotect/__init__.py +57 -60
  3351. homeassistant/components/unifiprotect/camera.py +1 -1
  3352. homeassistant/components/unifiprotect/config_flow.py +23 -9
  3353. homeassistant/components/unifiprotect/const.py +1 -1
  3354. homeassistant/components/unifiprotect/data.py +2 -2
  3355. homeassistant/components/unifiprotect/manifest.json +1 -1
  3356. homeassistant/components/unifiprotect/repairs.py +0 -50
  3357. homeassistant/components/unifiprotect/services.py +10 -5
  3358. homeassistant/components/unifiprotect/strings.json +27 -27
  3359. homeassistant/components/unifiprotect/translations/bg.json +11 -10
  3360. homeassistant/components/unifiprotect/translations/ca.json +0 -16
  3361. homeassistant/components/unifiprotect/translations/cs.json +23 -20
  3362. homeassistant/components/unifiprotect/translations/de.json +20 -20
  3363. homeassistant/components/unifiprotect/translations/el.json +20 -20
  3364. homeassistant/components/unifiprotect/translations/en-GB.json +20 -20
  3365. homeassistant/components/unifiprotect/translations/en.json +20 -20
  3366. homeassistant/components/unifiprotect/translations/es.json +20 -20
  3367. homeassistant/components/unifiprotect/translations/et.json +20 -20
  3368. homeassistant/components/unifiprotect/translations/fi.json +17 -19
  3369. homeassistant/components/unifiprotect/translations/fr.json +0 -7
  3370. homeassistant/components/unifiprotect/translations/fy.json +1 -14
  3371. homeassistant/components/unifiprotect/translations/ga.json +90 -6
  3372. homeassistant/components/unifiprotect/translations/he.json +3 -0
  3373. homeassistant/components/unifiprotect/translations/hu.json +0 -20
  3374. homeassistant/components/unifiprotect/translations/id.json +0 -18
  3375. homeassistant/components/unifiprotect/translations/it.json +0 -3
  3376. homeassistant/components/unifiprotect/translations/ja.json +0 -20
  3377. homeassistant/components/unifiprotect/translations/ko.json +3 -5
  3378. homeassistant/components/unifiprotect/translations/lt.json +0 -20
  3379. homeassistant/components/unifiprotect/translations/nb.json +0 -5
  3380. homeassistant/components/unifiprotect/translations/nl.json +9 -19
  3381. homeassistant/components/unifiprotect/translations/pl.json +0 -5
  3382. homeassistant/components/unifiprotect/translations/pt-BR.json +0 -3
  3383. homeassistant/components/unifiprotect/translations/pt.json +0 -20
  3384. homeassistant/components/unifiprotect/translations/ro.json +0 -5
  3385. homeassistant/components/unifiprotect/translations/ru.json +5 -21
  3386. homeassistant/components/unifiprotect/translations/sk.json +20 -20
  3387. homeassistant/components/unifiprotect/translations/sv.json +3 -20
  3388. homeassistant/components/unifiprotect/translations/tr.json +0 -20
  3389. homeassistant/components/unifiprotect/translations/uk.json +0 -5
  3390. homeassistant/components/unifiprotect/translations/zh-Hans.json +20 -20
  3391. homeassistant/components/unifiprotect/translations/zh-Hant.json +20 -20
  3392. homeassistant/components/unifiprotect/utils.py +3 -0
  3393. homeassistant/components/update/translations/ga.json +26 -0
  3394. homeassistant/components/uptime_kuma/__init__.py +74 -0
  3395. homeassistant/components/uptime_kuma/config_flow.py +231 -0
  3396. homeassistant/components/uptime_kuma/const.py +26 -0
  3397. homeassistant/components/uptime_kuma/coordinator.py +137 -0
  3398. homeassistant/components/uptime_kuma/diagnostics.py +23 -0
  3399. homeassistant/components/uptime_kuma/icons.json +32 -0
  3400. homeassistant/components/uptime_kuma/manifest.json +11 -0
  3401. homeassistant/components/uptime_kuma/quality_scale.yaml +76 -0
  3402. homeassistant/components/uptime_kuma/sensor.py +182 -0
  3403. homeassistant/components/uptime_kuma/strings.json +137 -0
  3404. homeassistant/components/uptime_kuma/translations/bg.json +57 -0
  3405. homeassistant/components/uptime_kuma/translations/ca.json +35 -0
  3406. homeassistant/components/uptime_kuma/translations/cs.json +137 -0
  3407. homeassistant/components/uptime_kuma/translations/de.json +137 -0
  3408. homeassistant/components/uptime_kuma/translations/el.json +127 -0
  3409. homeassistant/components/uptime_kuma/translations/en-GB.json +137 -0
  3410. homeassistant/components/uptime_kuma/translations/en.json +137 -0
  3411. homeassistant/components/uptime_kuma/translations/es.json +137 -0
  3412. homeassistant/components/uptime_kuma/translations/et.json +137 -0
  3413. homeassistant/components/uptime_kuma/translations/fr.json +134 -0
  3414. homeassistant/components/uptime_kuma/translations/ga.json +114 -0
  3415. homeassistant/components/uptime_kuma/translations/he.json +40 -0
  3416. homeassistant/components/uptime_kuma/translations/ko.json +30 -0
  3417. homeassistant/components/uptime_kuma/translations/lt.json +119 -0
  3418. homeassistant/components/uptime_kuma/translations/mk.json +17 -0
  3419. homeassistant/components/uptime_kuma/translations/nb.json +31 -0
  3420. homeassistant/components/uptime_kuma/translations/nl.json +68 -0
  3421. homeassistant/components/uptime_kuma/translations/pt.json +94 -0
  3422. homeassistant/components/uptime_kuma/translations/ru.json +101 -0
  3423. homeassistant/components/uptime_kuma/translations/sk.json +137 -0
  3424. homeassistant/components/uptime_kuma/translations/sv.json +122 -0
  3425. homeassistant/components/uptime_kuma/translations/zh-Hans.json +137 -0
  3426. homeassistant/components/uptime_kuma/translations/zh-Hant.json +137 -0
  3427. homeassistant/components/uptime_kuma/update.py +122 -0
  3428. homeassistant/components/utility_meter/__init__.py +34 -8
  3429. homeassistant/components/utility_meter/config_flow.py +2 -0
  3430. homeassistant/components/utility_meter/select.py +6 -6
  3431. homeassistant/components/utility_meter/sensor.py +9 -10
  3432. homeassistant/components/utility_meter/strings.json +5 -0
  3433. homeassistant/components/utility_meter/translations/bg.json +5 -0
  3434. homeassistant/components/utility_meter/translations/cs.json +5 -0
  3435. homeassistant/components/utility_meter/translations/de.json +5 -0
  3436. homeassistant/components/utility_meter/translations/el.json +5 -0
  3437. homeassistant/components/utility_meter/translations/en-GB.json +5 -0
  3438. homeassistant/components/utility_meter/translations/en.json +5 -0
  3439. homeassistant/components/utility_meter/translations/es.json +5 -0
  3440. homeassistant/components/utility_meter/translations/et.json +5 -0
  3441. homeassistant/components/utility_meter/translations/fr.json +5 -0
  3442. homeassistant/components/utility_meter/translations/ga.json +29 -0
  3443. homeassistant/components/utility_meter/translations/he.json +5 -0
  3444. homeassistant/components/utility_meter/translations/ja.json +5 -0
  3445. homeassistant/components/utility_meter/translations/lt.json +5 -0
  3446. homeassistant/components/utility_meter/translations/nl.json +5 -0
  3447. homeassistant/components/utility_meter/translations/pt.json +5 -0
  3448. homeassistant/components/utility_meter/translations/ru.json +5 -0
  3449. homeassistant/components/utility_meter/translations/sk.json +5 -0
  3450. homeassistant/components/utility_meter/translations/zh-Hans.json +5 -0
  3451. homeassistant/components/utility_meter/translations/zh-Hant.json +5 -0
  3452. homeassistant/components/v2c/translations/ga.json +43 -0
  3453. homeassistant/components/vacuum/__init__.py +75 -2
  3454. homeassistant/components/vacuum/translations/ga.json +5 -0
  3455. homeassistant/components/vacuum/translations/he.json +1 -1
  3456. homeassistant/components/vacuum/translations/it.json +2 -2
  3457. homeassistant/components/vallox/strings.json +1 -1
  3458. homeassistant/components/vallox/translations/ga.json +22 -0
  3459. homeassistant/components/vallox/translations/ru.json +5 -0
  3460. homeassistant/components/valve/translations/ga.json +45 -0
  3461. homeassistant/components/vegehub/strings.json +2 -2
  3462. homeassistant/components/velbus/__init__.py +2 -2
  3463. homeassistant/components/velbus/const.py +0 -1
  3464. homeassistant/components/velbus/services.py +42 -90
  3465. homeassistant/components/velbus/services.yaml +0 -20
  3466. homeassistant/components/velbus/strings.json +0 -16
  3467. homeassistant/components/velbus/translations/bg.json +0 -18
  3468. homeassistant/components/velbus/translations/ca.json +0 -12
  3469. homeassistant/components/velbus/translations/cs.json +0 -16
  3470. homeassistant/components/velbus/translations/de.json +0 -16
  3471. homeassistant/components/velbus/translations/el.json +0 -16
  3472. homeassistant/components/velbus/translations/en-GB.json +0 -16
  3473. homeassistant/components/velbus/translations/en.json +0 -16
  3474. homeassistant/components/velbus/translations/es.json +0 -16
  3475. homeassistant/components/velbus/translations/et.json +0 -16
  3476. homeassistant/components/velbus/translations/fi.json +0 -19
  3477. homeassistant/components/velbus/translations/gl.json +0 -18
  3478. homeassistant/components/velbus/translations/hu.json +0 -16
  3479. homeassistant/components/velbus/translations/it.json +0 -15
  3480. homeassistant/components/velbus/translations/ja.json +0 -16
  3481. homeassistant/components/velbus/translations/ko.json +14 -19
  3482. homeassistant/components/velbus/translations/lt.json +0 -16
  3483. homeassistant/components/velbus/translations/nb.json +0 -30
  3484. homeassistant/components/velbus/translations/nl.json +0 -15
  3485. homeassistant/components/velbus/translations/pt.json +0 -16
  3486. homeassistant/components/velbus/translations/ru.json +0 -16
  3487. homeassistant/components/velbus/translations/sk.json +0 -16
  3488. homeassistant/components/velbus/translations/sv.json +0 -16
  3489. homeassistant/components/velbus/translations/tr.json +0 -16
  3490. homeassistant/components/velbus/translations/uk.json +0 -5
  3491. homeassistant/components/velbus/translations/zh-Hans.json +0 -16
  3492. homeassistant/components/velbus/translations/zh-Hant.json +0 -16
  3493. homeassistant/components/velux/binary_sensor.py +63 -0
  3494. homeassistant/components/velux/const.py +1 -1
  3495. homeassistant/components/velux/translations/ko.json +15 -0
  3496. homeassistant/components/venstar/translations/ga.json +20 -0
  3497. homeassistant/components/venstar/translations/he.json +1 -1
  3498. homeassistant/components/vera/__init__.py +0 -6
  3499. homeassistant/components/vera/config_flow.py +2 -2
  3500. homeassistant/components/vesync/const.py +1 -0
  3501. homeassistant/components/vesync/translations/it.json +2 -2
  3502. homeassistant/components/vesync/translations/ko.json +6 -0
  3503. homeassistant/components/vicare/translations/ga.json +232 -0
  3504. homeassistant/components/vilfo/translations/ga.json +11 -0
  3505. homeassistant/components/vizio/translations/ga.json +11 -0
  3506. homeassistant/components/vlc_telnet/translations/ga.json +11 -0
  3507. homeassistant/components/vodafone_station/__init__.py +0 -8
  3508. homeassistant/components/vodafone_station/config_flow.py +6 -2
  3509. homeassistant/components/vodafone_station/translations/ga.json +8 -0
  3510. homeassistant/components/vodafone_station/translations/ko.json +7 -0
  3511. homeassistant/components/voip/manifest.json +1 -1
  3512. homeassistant/components/volumio/translations/ga.json +11 -0
  3513. homeassistant/components/volvo/__init__.py +97 -0
  3514. homeassistant/components/volvo/api.py +38 -0
  3515. homeassistant/components/volvo/application_credentials.py +37 -0
  3516. homeassistant/components/volvo/config_flow.py +247 -0
  3517. homeassistant/components/volvo/const.py +14 -0
  3518. homeassistant/components/volvo/coordinator.py +255 -0
  3519. homeassistant/components/volvo/entity.py +90 -0
  3520. homeassistant/components/volvo/icons.json +85 -0
  3521. homeassistant/components/volvo/manifest.json +13 -0
  3522. homeassistant/components/volvo/quality_scale.yaml +82 -0
  3523. homeassistant/components/volvo/sensor.py +399 -0
  3524. homeassistant/components/volvo/strings.json +178 -0
  3525. homeassistant/components/volvo/translations/bg.json +55 -0
  3526. homeassistant/components/volvo/translations/cs.json +178 -0
  3527. homeassistant/components/volvo/translations/de.json +178 -0
  3528. homeassistant/components/volvo/translations/el.json +53 -0
  3529. homeassistant/components/volvo/translations/en-GB.json +178 -0
  3530. homeassistant/components/volvo/translations/en.json +178 -0
  3531. homeassistant/components/volvo/translations/es.json +178 -0
  3532. homeassistant/components/volvo/translations/et.json +178 -0
  3533. homeassistant/components/volvo/translations/ga.json +156 -0
  3534. homeassistant/components/volvo/translations/he.json +59 -0
  3535. homeassistant/components/volvo/translations/ko.json +11 -0
  3536. homeassistant/components/volvo/translations/nl.json +59 -0
  3537. homeassistant/components/volvo/translations/sk.json +178 -0
  3538. homeassistant/components/volvo/translations/sv.json +74 -0
  3539. homeassistant/components/volvo/translations/zh-Hans.json +178 -0
  3540. homeassistant/components/volvo/translations/zh-Hant.json +178 -0
  3541. homeassistant/components/wallbox/__init__.py +11 -11
  3542. homeassistant/components/wallbox/coordinator.py +57 -8
  3543. homeassistant/components/wallbox/lock.py +7 -5
  3544. homeassistant/components/wallbox/number.py +8 -6
  3545. homeassistant/components/wallbox/select.py +7 -4
  3546. homeassistant/components/wallbox/sensor.py +7 -5
  3547. homeassistant/components/wallbox/strings.json +19 -2
  3548. homeassistant/components/wallbox/switch.py +7 -5
  3549. homeassistant/components/wallbox/translations/bg.json +9 -0
  3550. homeassistant/components/wallbox/translations/cs.json +17 -0
  3551. homeassistant/components/wallbox/translations/de.json +17 -0
  3552. homeassistant/components/wallbox/translations/el.json +17 -0
  3553. homeassistant/components/wallbox/translations/en-GB.json +17 -0
  3554. homeassistant/components/wallbox/translations/en.json +17 -0
  3555. homeassistant/components/wallbox/translations/es.json +17 -0
  3556. homeassistant/components/wallbox/translations/et.json +17 -0
  3557. homeassistant/components/wallbox/translations/ga.json +70 -0
  3558. homeassistant/components/wallbox/translations/it.json +1 -1
  3559. homeassistant/components/wallbox/translations/ja.json +8 -0
  3560. homeassistant/components/wallbox/translations/lt.json +17 -0
  3561. homeassistant/components/wallbox/translations/mk.json +5 -0
  3562. homeassistant/components/wallbox/translations/nl.json +5 -0
  3563. homeassistant/components/wallbox/translations/pt.json +17 -0
  3564. homeassistant/components/wallbox/translations/ru.json +3 -0
  3565. homeassistant/components/wallbox/translations/sk.json +17 -0
  3566. homeassistant/components/wallbox/translations/zh-Hans.json +17 -0
  3567. homeassistant/components/wallbox/translations/zh-Hant.json +17 -0
  3568. homeassistant/components/waqi/__init__.py +5 -10
  3569. homeassistant/components/waqi/config_flow.py +42 -48
  3570. homeassistant/components/waqi/coordinator.py +4 -2
  3571. homeassistant/components/waqi/icons.json +39 -0
  3572. homeassistant/components/waqi/sensor.py +3 -16
  3573. homeassistant/components/waqi/translations/ga.json +15 -0
  3574. homeassistant/components/water_heater/translations/ga.json +17 -0
  3575. homeassistant/components/water_heater/translations/it.json +3 -3
  3576. homeassistant/components/waze_travel_time/strings.json +6 -6
  3577. homeassistant/components/waze_travel_time/translations/cs.json +10 -0
  3578. homeassistant/components/waze_travel_time/translations/el.json +6 -0
  3579. homeassistant/components/waze_travel_time/translations/et.json +10 -0
  3580. homeassistant/components/waze_travel_time/translations/fr.json +14 -0
  3581. homeassistant/components/waze_travel_time/translations/ga.json +42 -0
  3582. homeassistant/components/waze_travel_time/translations/he.json +10 -0
  3583. homeassistant/components/waze_travel_time/translations/ru.json +10 -0
  3584. homeassistant/components/weather/translations/ga.json +27 -0
  3585. homeassistant/components/weatherflow/translations/ga.json +71 -0
  3586. homeassistant/components/weatherflow_cloud/__init__.py +83 -6
  3587. homeassistant/components/weatherflow_cloud/config_flow.py +3 -2
  3588. homeassistant/components/weatherflow_cloud/const.py +4 -1
  3589. homeassistant/components/weatherflow_cloud/coordinator.py +176 -15
  3590. homeassistant/components/weatherflow_cloud/entity.py +6 -13
  3591. homeassistant/components/weatherflow_cloud/icons.json +98 -8
  3592. homeassistant/components/weatherflow_cloud/manifest.json +1 -1
  3593. homeassistant/components/weatherflow_cloud/sensor.py +296 -19
  3594. homeassistant/components/weatherflow_cloud/strings.json +47 -18
  3595. homeassistant/components/weatherflow_cloud/translations/ca.json +0 -3
  3596. homeassistant/components/weatherflow_cloud/translations/cs.json +33 -3
  3597. homeassistant/components/weatherflow_cloud/translations/de.json +33 -3
  3598. homeassistant/components/weatherflow_cloud/translations/el.json +6 -3
  3599. homeassistant/components/weatherflow_cloud/translations/en-GB.json +33 -3
  3600. homeassistant/components/weatherflow_cloud/translations/en.json +33 -3
  3601. homeassistant/components/weatherflow_cloud/translations/es.json +33 -3
  3602. homeassistant/components/weatherflow_cloud/translations/et.json +33 -3
  3603. homeassistant/components/weatherflow_cloud/translations/fr.json +0 -3
  3604. homeassistant/components/weatherflow_cloud/translations/ga.json +42 -3
  3605. homeassistant/components/weatherflow_cloud/translations/he.json +0 -3
  3606. homeassistant/components/weatherflow_cloud/translations/hu.json +0 -3
  3607. homeassistant/components/weatherflow_cloud/translations/it.json +10 -0
  3608. homeassistant/components/weatherflow_cloud/translations/ja.json +0 -3
  3609. homeassistant/components/weatherflow_cloud/translations/lt.json +6 -3
  3610. homeassistant/components/weatherflow_cloud/translations/mk.json +3 -3
  3611. homeassistant/components/weatherflow_cloud/translations/nl.json +6 -0
  3612. homeassistant/components/weatherflow_cloud/translations/pt.json +6 -3
  3613. homeassistant/components/weatherflow_cloud/translations/ru.json +0 -3
  3614. homeassistant/components/weatherflow_cloud/translations/sk.json +33 -3
  3615. homeassistant/components/weatherflow_cloud/translations/sv.json +12 -3
  3616. homeassistant/components/weatherflow_cloud/translations/tr.json +0 -3
  3617. homeassistant/components/weatherflow_cloud/translations/zh-Hans.json +33 -3
  3618. homeassistant/components/weatherflow_cloud/translations/zh-Hant.json +33 -3
  3619. homeassistant/components/weatherflow_cloud/weather.py +7 -9
  3620. homeassistant/components/weatherkit/translations/ga.json +14 -0
  3621. homeassistant/components/webdav/translations/ko.json +12 -0
  3622. homeassistant/components/webmin/translations/ga.json +68 -0
  3623. homeassistant/components/webmin/translations/ko.json +14 -0
  3624. homeassistant/components/webostv/__init__.py +0 -7
  3625. homeassistant/components/webostv/config_flow.py +7 -3
  3626. homeassistant/components/webostv/strings.json +6 -6
  3627. homeassistant/components/webostv/translations/de.json +4 -4
  3628. homeassistant/components/webostv/translations/ga.json +15 -0
  3629. homeassistant/components/websocket_api/commands.py +53 -0
  3630. homeassistant/components/websocket_api/translations/ga.json +7 -0
  3631. homeassistant/components/weheat/translations/ga.json +2 -0
  3632. homeassistant/components/weheat/translations/ko.json +11 -0
  3633. homeassistant/components/whirlpool/binary_sensor.py +14 -7
  3634. homeassistant/components/whirlpool/config_flow.py +5 -1
  3635. homeassistant/components/whirlpool/diagnostics.py +7 -3
  3636. homeassistant/components/whirlpool/manifest.json +1 -1
  3637. homeassistant/components/whirlpool/sensor.py +169 -74
  3638. homeassistant/components/whirlpool/strings.json +3 -5
  3639. homeassistant/components/whirlpool/translations/cs.json +0 -2
  3640. homeassistant/components/whirlpool/translations/de.json +0 -2
  3641. homeassistant/components/whirlpool/translations/en-GB.json +0 -2
  3642. homeassistant/components/whirlpool/translations/en.json +0 -2
  3643. homeassistant/components/whirlpool/translations/es.json +8 -10
  3644. homeassistant/components/whirlpool/translations/et.json +0 -2
  3645. homeassistant/components/whirlpool/translations/fr.json +0 -2
  3646. homeassistant/components/whirlpool/translations/fy.json +0 -2
  3647. homeassistant/components/whirlpool/translations/ga.json +12 -3
  3648. homeassistant/components/whirlpool/translations/hu.json +0 -2
  3649. homeassistant/components/whirlpool/translations/it.json +0 -1
  3650. homeassistant/components/whirlpool/translations/ko.json +5 -0
  3651. homeassistant/components/whirlpool/translations/lt.json +0 -2
  3652. homeassistant/components/whirlpool/translations/nl.json +0 -2
  3653. homeassistant/components/whirlpool/translations/pt.json +0 -2
  3654. homeassistant/components/whirlpool/translations/ru.json +0 -2
  3655. homeassistant/components/whirlpool/translations/sk.json +0 -2
  3656. homeassistant/components/whirlpool/translations/sv.json +0 -2
  3657. homeassistant/components/whirlpool/translations/zh-Hans.json +0 -2
  3658. homeassistant/components/whirlpool/translations/zh-Hant.json +0 -2
  3659. homeassistant/components/whois/strings.json +1 -1
  3660. homeassistant/components/whois/translations/ru.json +1 -0
  3661. homeassistant/components/wiffi/__init__.py +0 -7
  3662. homeassistant/components/wiffi/config_flow.py +2 -2
  3663. homeassistant/components/wilight/support.py +1 -2
  3664. homeassistant/components/withings/translations/ga.json +67 -0
  3665. homeassistant/components/withings/translations/ko.json +3 -0
  3666. homeassistant/components/wiz/__init__.py +1 -0
  3667. homeassistant/components/wiz/config_flow.py +1 -1
  3668. homeassistant/components/wiz/fan.py +139 -0
  3669. homeassistant/components/wiz/manifest.json +1 -1
  3670. homeassistant/components/wled/__init__.py +0 -8
  3671. homeassistant/components/wled/config_flow.py +2 -2
  3672. homeassistant/components/wled/strings.json +1 -1
  3673. homeassistant/components/wled/translations/ga.json +53 -0
  3674. homeassistant/components/wled/translations/it.json +2 -2
  3675. homeassistant/components/wmspro/translations/ko.json +11 -0
  3676. homeassistant/components/wolflink/translations/it.json +2 -2
  3677. homeassistant/components/workday/__init__.py +0 -6
  3678. homeassistant/components/workday/config_flow.py +2 -2
  3679. homeassistant/components/workday/manifest.json +1 -1
  3680. homeassistant/components/workday/translations/ga.json +47 -1
  3681. homeassistant/components/worldclock/translations/ko.json +11 -0
  3682. homeassistant/components/ws66i/__init__.py +0 -6
  3683. homeassistant/components/ws66i/config_flow.py +2 -2
  3684. homeassistant/components/wyoming/manifest.json +1 -1
  3685. homeassistant/components/wyoming/translations/de.json +1 -1
  3686. homeassistant/components/wyoming/translations/ga.json +14 -0
  3687. homeassistant/components/wyoming/translations/it.json +1 -1
  3688. homeassistant/components/xbox/translations/ga.json +4 -0
  3689. homeassistant/components/xbox/translations/ko.json +3 -0
  3690. homeassistant/components/xiaomi_ble/coordinator.py +1 -1
  3691. homeassistant/components/xiaomi_ble/manifest.json +1 -1
  3692. homeassistant/components/xiaomi_ble/strings.json +9 -9
  3693. homeassistant/components/xiaomi_ble/translations/ga.json +168 -1
  3694. homeassistant/components/xiaomi_ble/translations/ko.json +6 -0
  3695. homeassistant/components/xiaomi_miio/__init__.py +0 -11
  3696. homeassistant/components/xiaomi_miio/config_flow.py +6 -2
  3697. homeassistant/components/xiaomi_miio/strings.json +1 -1
  3698. homeassistant/components/xiaomi_miio/translations/es.json +3 -3
  3699. homeassistant/components/xiaomi_miio/translations/it.json +1 -1
  3700. homeassistant/components/yale/manifest.json +1 -1
  3701. homeassistant/components/yale/translations/ga.json +2 -0
  3702. homeassistant/components/yale/translations/ko.json +11 -0
  3703. homeassistant/components/yale_smart_alarm/__init__.py +0 -6
  3704. homeassistant/components/yale_smart_alarm/config_flow.py +2 -2
  3705. homeassistant/components/yale_smart_alarm/translations/ga.json +8 -0
  3706. homeassistant/components/yale_smart_alarm/translations/it.json +1 -1
  3707. homeassistant/components/yale_smart_alarm/translations/ko.json +6 -0
  3708. homeassistant/components/yale_smart_alarm/translations/nl.json +3 -0
  3709. homeassistant/components/yalexs_ble/__init__.py +5 -1
  3710. homeassistant/components/yalexs_ble/icons.json +11 -0
  3711. homeassistant/components/yalexs_ble/lock.py +32 -4
  3712. homeassistant/components/yalexs_ble/manifest.json +1 -1
  3713. homeassistant/components/yalexs_ble/strings.json +5 -0
  3714. homeassistant/components/yalexs_ble/translations/cs.json +5 -0
  3715. homeassistant/components/yalexs_ble/translations/de.json +5 -0
  3716. homeassistant/components/yalexs_ble/translations/el.json +5 -0
  3717. homeassistant/components/yalexs_ble/translations/en-GB.json +5 -0
  3718. homeassistant/components/yalexs_ble/translations/en.json +5 -0
  3719. homeassistant/components/yalexs_ble/translations/es.json +5 -0
  3720. homeassistant/components/yalexs_ble/translations/et.json +5 -0
  3721. homeassistant/components/yalexs_ble/translations/ga.json +9 -1
  3722. homeassistant/components/yalexs_ble/translations/ja.json +5 -0
  3723. homeassistant/components/yalexs_ble/translations/lt.json +5 -0
  3724. homeassistant/components/yalexs_ble/translations/pt.json +5 -0
  3725. homeassistant/components/yalexs_ble/translations/ru.json +5 -0
  3726. homeassistant/components/yalexs_ble/translations/sk.json +5 -0
  3727. homeassistant/components/yalexs_ble/translations/sv.json +5 -0
  3728. homeassistant/components/yalexs_ble/translations/zh-Hans.json +5 -0
  3729. homeassistant/components/yalexs_ble/translations/zh-Hant.json +5 -0
  3730. homeassistant/components/yamaha_musiccast/translations/ga.json +11 -0
  3731. homeassistant/components/yamaha_musiccast/translations/it.json +1 -1
  3732. homeassistant/components/yardian/translations/ga.json +11 -0
  3733. homeassistant/components/yeelight/__init__.py +0 -8
  3734. homeassistant/components/yeelight/config_flow.py +2 -2
  3735. homeassistant/components/yeelight/translations/es.json +1 -1
  3736. homeassistant/components/yeelight/translations/ga.json +11 -0
  3737. homeassistant/components/yeelight/translations/it.json +1 -1
  3738. homeassistant/components/yolink/__init__.py +14 -0
  3739. homeassistant/components/yolink/binary_sensor.py +6 -2
  3740. homeassistant/components/yolink/const.py +2 -0
  3741. homeassistant/components/yolink/manifest.json +1 -1
  3742. homeassistant/components/yolink/sensor.py +33 -3
  3743. homeassistant/components/yolink/translations/ga.json +58 -0
  3744. homeassistant/components/yolink/translations/it.json +1 -1
  3745. homeassistant/components/yolink/translations/ko.json +3 -0
  3746. homeassistant/components/yolink/translations/nl.json +1 -0
  3747. homeassistant/components/youless/translations/ga.json +9 -0
  3748. homeassistant/components/youtube/manifest.json +1 -1
  3749. homeassistant/components/youtube/translations/ga.json +2 -0
  3750. homeassistant/components/zabbix/__init__.py +40 -22
  3751. homeassistant/components/zbox_hub/__init__.py +1 -0
  3752. homeassistant/components/zbox_hub/manifest.json +6 -0
  3753. homeassistant/components/zeversolar/translations/ga.json +11 -0
  3754. homeassistant/components/zha/helpers.py +21 -1
  3755. homeassistant/components/zha/manifest.json +1 -1
  3756. homeassistant/components/zha/strings.json +34 -4
  3757. homeassistant/components/zha/translations/bg.json +6 -0
  3758. homeassistant/components/zha/translations/cs.json +30 -0
  3759. homeassistant/components/zha/translations/da.json +3 -0
  3760. homeassistant/components/zha/translations/de.json +32 -2
  3761. homeassistant/components/zha/translations/en-GB.json +30 -0
  3762. homeassistant/components/zha/translations/en.json +30 -0
  3763. homeassistant/components/zha/translations/es.json +33 -3
  3764. homeassistant/components/zha/translations/et.json +30 -0
  3765. homeassistant/components/zha/translations/fi.json +9 -0
  3766. homeassistant/components/zha/translations/fr.json +9 -0
  3767. homeassistant/components/zha/translations/ga.json +323 -0
  3768. homeassistant/components/zha/translations/he.json +21 -1
  3769. homeassistant/components/zha/translations/ru.json +6 -0
  3770. homeassistant/components/zha/translations/sk.json +30 -0
  3771. homeassistant/components/zha/translations/sl.json +1 -0
  3772. homeassistant/components/zha/translations/sv.json +24 -0
  3773. homeassistant/components/zha/translations/zh-Hans.json +30 -0
  3774. homeassistant/components/zha/translations/zh-Hant.json +30 -0
  3775. homeassistant/components/zha/update.py +6 -2
  3776. homeassistant/components/zimi/translations/ko.json +18 -0
  3777. homeassistant/components/zone/condition.py +156 -0
  3778. homeassistant/components/zone/trigger.py +2 -1
  3779. homeassistant/components/zoneminder/__init__.py +2 -2
  3780. homeassistant/components/zoneminder/services.py +3 -2
  3781. homeassistant/components/zwave_js/__init__.py +154 -104
  3782. homeassistant/components/zwave_js/api.py +57 -64
  3783. homeassistant/components/zwave_js/binary_sensor.py +8 -9
  3784. homeassistant/components/zwave_js/button.py +6 -7
  3785. homeassistant/components/zwave_js/climate.py +6 -7
  3786. homeassistant/components/zwave_js/config_flow.py +31 -20
  3787. homeassistant/components/zwave_js/const.py +0 -6
  3788. homeassistant/components/zwave_js/cover.py +8 -14
  3789. homeassistant/components/zwave_js/device_automation_helpers.py +2 -3
  3790. homeassistant/components/zwave_js/diagnostics.py +9 -6
  3791. homeassistant/components/zwave_js/discovery.py +36 -3
  3792. homeassistant/components/zwave_js/event.py +5 -6
  3793. homeassistant/components/zwave_js/fan.py +7 -8
  3794. homeassistant/components/zwave_js/helpers.py +69 -20
  3795. homeassistant/components/zwave_js/humidifier.py +5 -6
  3796. homeassistant/components/zwave_js/light.py +41 -9
  3797. homeassistant/components/zwave_js/lock.py +3 -5
  3798. homeassistant/components/zwave_js/manifest.json +1 -1
  3799. homeassistant/components/zwave_js/models.py +27 -0
  3800. homeassistant/components/zwave_js/number.py +7 -8
  3801. homeassistant/components/zwave_js/repairs.py +1 -0
  3802. homeassistant/components/zwave_js/select.py +9 -10
  3803. homeassistant/components/zwave_js/sensor.py +37 -20
  3804. homeassistant/components/zwave_js/services.py +1 -1
  3805. homeassistant/components/zwave_js/siren.py +5 -6
  3806. homeassistant/components/zwave_js/strings.json +13 -13
  3807. homeassistant/components/zwave_js/switch.py +8 -9
  3808. homeassistant/components/zwave_js/translations/bg.json +2 -2
  3809. homeassistant/components/zwave_js/translations/ca.json +0 -6
  3810. homeassistant/components/zwave_js/translations/cs.json +9 -9
  3811. homeassistant/components/zwave_js/translations/de.json +9 -9
  3812. homeassistant/components/zwave_js/translations/el.json +8 -9
  3813. homeassistant/components/zwave_js/translations/en-GB.json +9 -9
  3814. homeassistant/components/zwave_js/translations/en.json +9 -9
  3815. homeassistant/components/zwave_js/translations/es.json +9 -9
  3816. homeassistant/components/zwave_js/translations/et.json +9 -9
  3817. homeassistant/components/zwave_js/translations/fi.json +0 -9
  3818. homeassistant/components/zwave_js/translations/fr.json +0 -3
  3819. homeassistant/components/zwave_js/translations/ga.json +120 -1
  3820. homeassistant/components/zwave_js/translations/he.json +0 -6
  3821. homeassistant/components/zwave_js/translations/hu.json +0 -10
  3822. homeassistant/components/zwave_js/translations/id.json +0 -9
  3823. homeassistant/components/zwave_js/translations/ja.json +0 -9
  3824. homeassistant/components/zwave_js/translations/ko.json +20 -0
  3825. homeassistant/components/zwave_js/translations/lt.json +0 -10
  3826. homeassistant/components/zwave_js/translations/nl.json +2 -9
  3827. homeassistant/components/zwave_js/translations/pt.json +0 -10
  3828. homeassistant/components/zwave_js/translations/ru.json +4 -10
  3829. homeassistant/components/zwave_js/translations/sk.json +9 -9
  3830. homeassistant/components/zwave_js/translations/sv.json +0 -10
  3831. homeassistant/components/zwave_js/translations/tr.json +0 -9
  3832. homeassistant/components/zwave_js/translations/vi.json +0 -9
  3833. homeassistant/components/zwave_js/translations/zh-Hans.json +9 -9
  3834. homeassistant/components/zwave_js/translations/zh-Hant.json +9 -9
  3835. homeassistant/components/zwave_js/triggers/event.py +3 -5
  3836. homeassistant/components/zwave_js/triggers/trigger_helpers.py +2 -4
  3837. homeassistant/components/zwave_js/update.py +101 -36
  3838. homeassistant/config.py +0 -3
  3839. homeassistant/config_entries.py +28 -1
  3840. homeassistant/const.py +4 -2
  3841. homeassistant/core.py +51 -15
  3842. homeassistant/data_entry_flow.py +4 -3
  3843. homeassistant/generated/application_credentials.py +1 -0
  3844. homeassistant/generated/config_flows.py +5 -0
  3845. homeassistant/generated/integrations.json +44 -3
  3846. homeassistant/generated/zeroconf.py +19 -0
  3847. homeassistant/helpers/condition.py +217 -105
  3848. homeassistant/helpers/config_validation.py +0 -29
  3849. homeassistant/helpers/deprecation.py +8 -10
  3850. homeassistant/helpers/device.py +13 -0
  3851. homeassistant/helpers/device_registry.py +122 -56
  3852. homeassistant/helpers/entity.py +61 -48
  3853. homeassistant/helpers/entity_platform.py +177 -73
  3854. homeassistant/helpers/entity_registry.py +42 -21
  3855. homeassistant/helpers/event.py +62 -57
  3856. homeassistant/helpers/frame.py +24 -9
  3857. homeassistant/helpers/helper_integration.py +69 -10
  3858. homeassistant/helpers/http.py +2 -2
  3859. homeassistant/helpers/llm.py +44 -9
  3860. homeassistant/helpers/schema_config_entry_flow.py +11 -0
  3861. homeassistant/helpers/selector.py +173 -126
  3862. homeassistant/helpers/service.py +53 -214
  3863. homeassistant/helpers/service_info/dhcp.py +6 -0
  3864. homeassistant/helpers/singleton.py +2 -1
  3865. homeassistant/helpers/target.py +359 -0
  3866. homeassistant/helpers/template.py +2 -2
  3867. homeassistant/helpers/trigger.py +18 -8
  3868. homeassistant/helpers/trigger_template_entity.py +19 -0
  3869. homeassistant/helpers/update_coordinator.py +12 -2
  3870. homeassistant/loader.py +13 -79
  3871. homeassistant/package_constraints.txt +15 -19
  3872. homeassistant/runner.py +2 -0
  3873. homeassistant/strings.json +3 -0
  3874. homeassistant/util/__init__.py +2 -2
  3875. homeassistant/util/resource.py +65 -0
  3876. homeassistant/util/unit_conversion.py +5 -2
  3877. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/METADATA +5 -5
  3878. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/RECORD +3883 -3462
  3879. homeassistant/components/backup/basic_websocket.py +0 -38
  3880. homeassistant/components/goalzero/translations/es-419.json +0 -9
  3881. homeassistant/helpers/backup.py +0 -93
  3882. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/WHEEL +0 -0
  3883. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/entry_points.txt +0 -0
  3884. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/licenses/LICENSE.md +0 -0
  3885. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  3886. {homeassistant-2025.7.4.dist-info → homeassistant-2025.8.0.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,12 @@
1
- """Support for Onkyo Receivers."""
1
+ """Media player platform."""
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
5
  import asyncio
6
- from enum import Enum
7
- from functools import cache
8
6
  import logging
9
- from typing import Any, Literal
7
+ from typing import Any
8
+
9
+ from aioonkyo import Code, Kind, Status, Zone, command, query, status
10
10
 
11
11
  from homeassistant.components.media_player import (
12
12
  MediaPlayerEntity,
@@ -14,23 +14,25 @@ from homeassistant.components.media_player import (
14
14
  MediaPlayerState,
15
15
  MediaType,
16
16
  )
17
- from homeassistant.core import HomeAssistant, callback
17
+ from homeassistant.core import HomeAssistant
18
18
  from homeassistant.exceptions import ServiceValidationError
19
19
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
20
20
 
21
21
  from . import OnkyoConfigEntry
22
22
  from .const import (
23
23
  DOMAIN,
24
+ LEGACY_HDMI_OUTPUT_MAPPING,
25
+ LEGACY_REV_HDMI_OUTPUT_MAPPING,
24
26
  OPTION_MAX_VOLUME,
25
27
  OPTION_VOLUME_RESOLUTION,
26
- PYEISCP_COMMANDS,
27
28
  ZONES,
28
29
  InputSource,
29
30
  ListeningMode,
30
31
  VolumeResolution,
31
32
  )
32
- from .receiver import Receiver
33
+ from .receiver import ReceiverManager
33
34
  from .services import DATA_MP_ENTITIES
35
+ from .util import get_meaning
34
36
 
35
37
  _LOGGER = logging.getLogger(__name__)
36
38
 
@@ -86,64 +88,6 @@ VIDEO_INFORMATION_MAPPING = [
86
88
  "input_hdr",
87
89
  ]
88
90
 
89
- type LibValue = str | tuple[str, ...]
90
-
91
-
92
- def _get_single_lib_value(value: LibValue) -> str:
93
- if isinstance(value, str):
94
- return value
95
- return value[-1]
96
-
97
-
98
- def _get_lib_mapping[T: Enum](cmds: Any, cls: type[T]) -> dict[T, LibValue]:
99
- result: dict[T, LibValue] = {}
100
- for k, v in cmds["values"].items():
101
- try:
102
- key = cls(k)
103
- except ValueError:
104
- continue
105
- result[key] = v["name"]
106
-
107
- return result
108
-
109
-
110
- @cache
111
- def _input_source_lib_mappings(zone: str) -> dict[InputSource, LibValue]:
112
- match zone:
113
- case "main":
114
- cmds = PYEISCP_COMMANDS["main"]["SLI"]
115
- case "zone2":
116
- cmds = PYEISCP_COMMANDS["zone2"]["SLZ"]
117
- case "zone3":
118
- cmds = PYEISCP_COMMANDS["zone3"]["SL3"]
119
- case "zone4":
120
- cmds = PYEISCP_COMMANDS["zone4"]["SL4"]
121
-
122
- return _get_lib_mapping(cmds, InputSource)
123
-
124
-
125
- @cache
126
- def _rev_input_source_lib_mappings(zone: str) -> dict[LibValue, InputSource]:
127
- return {value: key for key, value in _input_source_lib_mappings(zone).items()}
128
-
129
-
130
- @cache
131
- def _listening_mode_lib_mappings(zone: str) -> dict[ListeningMode, LibValue]:
132
- match zone:
133
- case "main":
134
- cmds = PYEISCP_COMMANDS["main"]["LMD"]
135
- case "zone2":
136
- cmds = PYEISCP_COMMANDS["zone2"]["LMZ"]
137
- case _:
138
- return {}
139
-
140
- return _get_lib_mapping(cmds, ListeningMode)
141
-
142
-
143
- @cache
144
- def _rev_listening_mode_lib_mappings(zone: str) -> dict[LibValue, ListeningMode]:
145
- return {value: key for key, value in _listening_mode_lib_mappings(zone).items()}
146
-
147
91
 
148
92
  async def async_setup_entry(
149
93
  hass: HomeAssistant,
@@ -153,10 +97,10 @@ async def async_setup_entry(
153
97
  """Set up MediaPlayer for config entry."""
154
98
  data = entry.runtime_data
155
99
 
156
- receiver = data.receiver
100
+ manager = data.manager
157
101
  all_entities = hass.data[DATA_MP_ENTITIES]
158
102
 
159
- entities: dict[str, OnkyoMediaPlayer] = {}
103
+ entities: dict[Zone, OnkyoMediaPlayer] = {}
160
104
  all_entities[entry.entry_id] = entities
161
105
 
162
106
  volume_resolution: VolumeResolution = entry.options[OPTION_VOLUME_RESOLUTION]
@@ -164,29 +108,33 @@ async def async_setup_entry(
164
108
  sources = data.sources
165
109
  sound_modes = data.sound_modes
166
110
 
167
- def connect_callback(receiver: Receiver) -> None:
168
- if not receiver.first_connect:
111
+ async def connect_callback(reconnect: bool) -> None:
112
+ if reconnect:
169
113
  for entity in entities.values():
170
114
  if entity.enabled:
171
- entity.backfill_state()
115
+ await entity.backfill_state()
116
+
117
+ async def update_callback(message: Status) -> None:
118
+ if isinstance(message, status.Raw):
119
+ return
120
+
121
+ zone = message.zone
172
122
 
173
- def update_callback(receiver: Receiver, message: tuple[str, str, Any]) -> None:
174
- zone, _, value = message
175
123
  entity = entities.get(zone)
176
124
  if entity is not None:
177
125
  if entity.enabled:
178
126
  entity.process_update(message)
179
- elif zone in ZONES and value != "N/A":
180
- # When we receive the status for a zone, and the value is not "N/A",
181
- # then zone is available on the receiver, so we create the entity for it.
127
+ elif not isinstance(message, status.NotAvailable):
128
+ # When we receive a valid status for a zone, then that zone is available on the receiver,
129
+ # so we create the entity for it.
182
130
  _LOGGER.debug(
183
131
  "Discovered %s on %s (%s)",
184
132
  ZONES[zone],
185
- receiver.model_name,
186
- receiver.host,
133
+ manager.info.model_name,
134
+ manager.info.host,
187
135
  )
188
136
  zone_entity = OnkyoMediaPlayer(
189
- receiver,
137
+ manager,
190
138
  zone,
191
139
  volume_resolution=volume_resolution,
192
140
  max_volume=max_volume,
@@ -196,25 +144,28 @@ async def async_setup_entry(
196
144
  entities[zone] = zone_entity
197
145
  async_add_entities([zone_entity])
198
146
 
199
- receiver.callbacks.connect.append(connect_callback)
200
- receiver.callbacks.update.append(update_callback)
147
+ manager.callbacks.connect.append(connect_callback)
148
+ manager.callbacks.update.append(update_callback)
201
149
 
202
150
 
203
151
  class OnkyoMediaPlayer(MediaPlayerEntity):
204
- """Representation of an Onkyo Receiver Media Player (one per each zone)."""
152
+ """Onkyo Receiver Media Player (one per each zone)."""
205
153
 
206
154
  _attr_should_poll = False
155
+ _attr_has_entity_name = True
207
156
 
208
157
  _supports_volume: bool = False
209
- _supports_sound_mode: bool = False
158
+ # None means no technical possibility of support
159
+ _supports_sound_mode: bool | None = None
210
160
  _supports_audio_info: bool = False
211
161
  _supports_video_info: bool = False
212
- _query_timer: asyncio.TimerHandle | None = None
162
+
163
+ _query_task: asyncio.Task | None = None
213
164
 
214
165
  def __init__(
215
166
  self,
216
- receiver: Receiver,
217
- zone: str,
167
+ manager: ReceiverManager,
168
+ zone: Zone,
218
169
  *,
219
170
  volume_resolution: VolumeResolution,
220
171
  max_volume: float,
@@ -222,80 +173,88 @@ class OnkyoMediaPlayer(MediaPlayerEntity):
222
173
  sound_modes: dict[ListeningMode, str],
223
174
  ) -> None:
224
175
  """Initialize the Onkyo Receiver."""
225
- self._receiver = receiver
226
- name = receiver.model_name
227
- identifier = receiver.identifier
228
- self._attr_name = f"{name}{' ' + ZONES[zone] if zone != 'main' else ''}"
229
- self._attr_unique_id = f"{identifier}_{zone}"
230
-
176
+ self._manager = manager
231
177
  self._zone = zone
232
178
 
179
+ name = manager.info.model_name
180
+ identifier = manager.info.identifier
181
+ self._attr_name = f"{name}{' ' + ZONES[zone] if zone != Zone.MAIN else ''}"
182
+ self._attr_unique_id = f"{identifier}_{zone.value}"
183
+
233
184
  self._volume_resolution = volume_resolution
234
185
  self._max_volume = max_volume
235
186
 
236
- self._options_sources = sources
237
- self._source_lib_mapping = _input_source_lib_mappings(zone)
238
- self._rev_source_lib_mapping = _rev_input_source_lib_mappings(zone)
187
+ zone_sources = InputSource.for_zone(zone)
239
188
  self._source_mapping = {
240
- key: value
241
- for key, value in sources.items()
242
- if key in self._source_lib_mapping
189
+ key: value for key, value in sources.items() if key in zone_sources
243
190
  }
244
191
  self._rev_source_mapping = {
245
192
  value: key for key, value in self._source_mapping.items()
246
193
  }
247
194
 
248
- self._options_sound_modes = sound_modes
249
- self._sound_mode_lib_mapping = _listening_mode_lib_mappings(zone)
250
- self._rev_sound_mode_lib_mapping = _rev_listening_mode_lib_mappings(zone)
195
+ zone_sound_modes = ListeningMode.for_zone(zone)
251
196
  self._sound_mode_mapping = {
252
- key: value
253
- for key, value in sound_modes.items()
254
- if key in self._sound_mode_lib_mapping
197
+ key: value for key, value in sound_modes.items() if key in zone_sound_modes
255
198
  }
256
199
  self._rev_sound_mode_mapping = {
257
200
  value: key for key, value in self._sound_mode_mapping.items()
258
201
  }
259
202
 
203
+ self._hdmi_output_mapping = LEGACY_HDMI_OUTPUT_MAPPING
204
+ self._rev_hdmi_output_mapping = LEGACY_REV_HDMI_OUTPUT_MAPPING
205
+
260
206
  self._attr_source_list = list(self._rev_source_mapping)
261
207
  self._attr_sound_mode_list = list(self._rev_sound_mode_mapping)
262
208
 
263
209
  self._attr_supported_features = SUPPORTED_FEATURES_BASE
264
- if zone == "main":
210
+ if zone == Zone.MAIN:
265
211
  self._attr_supported_features |= SUPPORTED_FEATURES_VOLUME
266
212
  self._supports_volume = True
267
213
  self._attr_supported_features |= MediaPlayerEntityFeature.SELECT_SOUND_MODE
268
214
  self._supports_sound_mode = True
215
+ elif Code.get_from_kind_zone(Kind.LISTENING_MODE, zone) is not None:
216
+ # To be detected later:
217
+ self._supports_sound_mode = False
269
218
 
270
219
  self._attr_extra_state_attributes = {}
271
220
 
272
221
  async def async_added_to_hass(self) -> None:
273
222
  """Entity has been added to hass."""
274
- self.backfill_state()
223
+ await self.backfill_state()
275
224
 
276
225
  async def async_will_remove_from_hass(self) -> None:
277
226
  """Cancel the query timer when the entity is removed."""
278
- if self._query_timer:
279
- self._query_timer.cancel()
280
- self._query_timer = None
227
+ if self._query_task:
228
+ self._query_task.cancel()
229
+ self._query_task = None
281
230
 
282
- @callback
283
- def _update_receiver(self, propname: str, value: Any) -> None:
284
- """Update a property in the receiver."""
285
- self._receiver.conn.update_property(self._zone, propname, value)
231
+ async def backfill_state(self) -> None:
232
+ """Get the receiver to send all the info we care about.
286
233
 
287
- @callback
288
- def _query_receiver(self, propname: str) -> None:
289
- """Cause the receiver to send an update about a property."""
290
- self._receiver.conn.query_property(self._zone, propname)
234
+ Usually run only on connect, as we can otherwise rely on the
235
+ receiver to keep us informed of changes.
236
+ """
237
+ await self._manager.write(query.Power(self._zone))
238
+ await self._manager.write(query.Volume(self._zone))
239
+ await self._manager.write(query.Muting(self._zone))
240
+ await self._manager.write(query.InputSource(self._zone))
241
+ await self._manager.write(query.TunerPreset(self._zone))
242
+ if self._supports_sound_mode is not None:
243
+ await self._manager.write(query.ListeningMode(self._zone))
244
+ if self._zone == Zone.MAIN:
245
+ await self._manager.write(query.HDMIOutput())
246
+ await self._manager.write(query.AudioInformation())
247
+ await self._manager.write(query.VideoInformation())
291
248
 
292
249
  async def async_turn_on(self) -> None:
293
250
  """Turn the media player on."""
294
- self._update_receiver("power", "on")
251
+ message = command.Power(self._zone, command.Power.Param.ON)
252
+ await self._manager.write(message)
295
253
 
296
254
  async def async_turn_off(self) -> None:
297
255
  """Turn the media player off."""
298
- self._update_receiver("power", "standby")
256
+ message = command.Power(self._zone, command.Power.Param.STANDBY)
257
+ await self._manager.write(message)
299
258
 
300
259
  async def async_set_volume_level(self, volume: float) -> None:
301
260
  """Set volume level, range 0..1.
@@ -307,28 +266,30 @@ class OnkyoMediaPlayer(MediaPlayerEntity):
307
266
  scale for the receiver.
308
267
  """
309
268
  # HA_VOL * (MAX VOL / 100) * VOL_RESOLUTION
310
- self._update_receiver(
311
- "volume", round(volume * (self._max_volume / 100) * self._volume_resolution)
312
- )
269
+ value = round(volume * (self._max_volume / 100) * self._volume_resolution)
270
+ message = command.Volume(self._zone, value)
271
+ await self._manager.write(message)
313
272
 
314
273
  async def async_volume_up(self) -> None:
315
274
  """Increase volume by 1 step."""
316
- self._update_receiver("volume", "level-up")
275
+ message = command.Volume(self._zone, command.Volume.Param.UP)
276
+ await self._manager.write(message)
317
277
 
318
278
  async def async_volume_down(self) -> None:
319
279
  """Decrease volume by 1 step."""
320
- self._update_receiver("volume", "level-down")
280
+ message = command.Volume(self._zone, command.Volume.Param.DOWN)
281
+ await self._manager.write(message)
321
282
 
322
283
  async def async_mute_volume(self, mute: bool) -> None:
323
284
  """Mute the volume."""
324
- self._update_receiver(
325
- "audio-muting" if self._zone == "main" else "muting",
326
- "on" if mute else "off",
285
+ message = command.Muting(
286
+ self._zone, command.Muting.Param.ON if mute else command.Muting.Param.OFF
327
287
  )
288
+ await self._manager.write(message)
328
289
 
329
290
  async def async_select_source(self, source: str) -> None:
330
291
  """Select input source."""
331
- if not self.source_list or source not in self.source_list:
292
+ if source not in self._rev_source_mapping:
332
293
  raise ServiceValidationError(
333
294
  translation_domain=DOMAIN,
334
295
  translation_key="invalid_source",
@@ -338,15 +299,12 @@ class OnkyoMediaPlayer(MediaPlayerEntity):
338
299
  },
339
300
  )
340
301
 
341
- source_lib = self._source_lib_mapping[self._rev_source_mapping[source]]
342
- source_lib_single = _get_single_lib_value(source_lib)
343
- self._update_receiver(
344
- "input-selector" if self._zone == "main" else "selector", source_lib_single
345
- )
302
+ message = command.InputSource(self._zone, self._rev_source_mapping[source])
303
+ await self._manager.write(message)
346
304
 
347
305
  async def async_select_sound_mode(self, sound_mode: str) -> None:
348
306
  """Select listening sound mode."""
349
- if not self.sound_mode_list or sound_mode not in self.sound_mode_list:
307
+ if sound_mode not in self._rev_sound_mode_mapping:
350
308
  raise ServiceValidationError(
351
309
  translation_domain=DOMAIN,
352
310
  translation_key="invalid_sound_mode",
@@ -356,197 +314,138 @@ class OnkyoMediaPlayer(MediaPlayerEntity):
356
314
  },
357
315
  )
358
316
 
359
- sound_mode_lib = self._sound_mode_lib_mapping[
360
- self._rev_sound_mode_mapping[sound_mode]
361
- ]
362
- sound_mode_lib_single = _get_single_lib_value(sound_mode_lib)
363
- self._update_receiver("listening-mode", sound_mode_lib_single)
317
+ message = command.ListeningMode(
318
+ self._zone, self._rev_sound_mode_mapping[sound_mode]
319
+ )
320
+ await self._manager.write(message)
364
321
 
365
322
  async def async_select_output(self, hdmi_output: str) -> None:
366
323
  """Set hdmi-out."""
367
- self._update_receiver("hdmi-output-selector", hdmi_output)
324
+ message = command.HDMIOutput(self._rev_hdmi_output_mapping[hdmi_output])
325
+ await self._manager.write(message)
368
326
 
369
327
  async def async_play_media(
370
328
  self, media_type: MediaType | str, media_id: str, **kwargs: Any
371
329
  ) -> None:
372
330
  """Play radio station by preset number."""
373
- if self.source is not None:
374
- source = self._rev_source_mapping[self.source]
375
- if media_type.lower() == "radio" and source in PLAYABLE_SOURCES:
376
- self._update_receiver("preset", media_id)
377
-
378
- @callback
379
- def backfill_state(self) -> None:
380
- """Get the receiver to send all the info we care about.
381
-
382
- Usually run only on connect, as we can otherwise rely on the
383
- receiver to keep us informed of changes.
384
- """
385
- self._query_receiver("power")
386
- self._query_receiver("volume")
387
- self._query_receiver("preset")
388
- if self._zone == "main":
389
- self._query_receiver("hdmi-output-selector")
390
- self._query_receiver("audio-muting")
391
- self._query_receiver("input-selector")
392
- self._query_receiver("listening-mode")
393
- self._query_receiver("audio-information")
394
- self._query_receiver("video-information")
395
- else:
396
- self._query_receiver("muting")
397
- self._query_receiver("selector")
398
-
399
- @callback
400
- def process_update(self, update: tuple[str, str, Any]) -> None:
401
- """Store relevant updates so they can be queried later."""
402
- zone, command, value = update
403
- if zone != self._zone:
331
+ if self.source is None:
404
332
  return
405
333
 
406
- if command in ["system-power", "power"]:
407
- if value == "on":
408
- self._attr_state = MediaPlayerState.ON
409
- else:
410
- self._attr_state = MediaPlayerState.OFF
411
- self._attr_extra_state_attributes.pop(ATTR_AUDIO_INFORMATION, None)
412
- self._attr_extra_state_attributes.pop(ATTR_VIDEO_INFORMATION, None)
413
- self._attr_extra_state_attributes.pop(ATTR_PRESET, None)
414
- self._attr_extra_state_attributes.pop(ATTR_VIDEO_OUT, None)
415
- elif command in ["volume", "master-volume"] and value != "N/A":
416
- if not self._supports_volume:
417
- self._attr_supported_features |= SUPPORTED_FEATURES_VOLUME
418
- self._supports_volume = True
419
- # AMP_VOL / (VOL_RESOLUTION * (MAX_VOL / 100))
420
- volume_level: float = value / (
421
- self._volume_resolution * self._max_volume / 100
422
- )
423
- self._attr_volume_level = min(1, volume_level)
424
- elif command in ["muting", "audio-muting"]:
425
- self._attr_is_volume_muted = bool(value == "on")
426
- elif command in ["selector", "input-selector"] and value != "N/A":
427
- self._parse_source(value)
428
- self._query_av_info_delayed()
429
- elif command == "hdmi-output-selector":
430
- self._attr_extra_state_attributes[ATTR_VIDEO_OUT] = ",".join(value)
431
- elif command == "preset":
432
- if self.source is not None and self.source.lower() == "radio":
433
- self._attr_extra_state_attributes[ATTR_PRESET] = value
434
- elif ATTR_PRESET in self._attr_extra_state_attributes:
435
- del self._attr_extra_state_attributes[ATTR_PRESET]
436
- elif command == "listening-mode" and value != "N/A":
437
- if not self._supports_sound_mode:
438
- self._attr_supported_features |= (
439
- MediaPlayerEntityFeature.SELECT_SOUND_MODE
440
- )
441
- self._supports_sound_mode = True
442
- self._parse_sound_mode(value)
443
- self._query_av_info_delayed()
444
- elif command == "audio-information":
445
- self._supports_audio_info = True
446
- self._parse_audio_information(value)
447
- elif command == "video-information":
448
- self._supports_video_info = True
449
- self._parse_video_information(value)
450
- elif command == "fl-display-information":
451
- self._query_av_info_delayed()
452
-
453
- self.async_write_ha_state()
454
-
455
- @callback
456
- def _parse_source(self, source_lib: LibValue) -> None:
457
- source = self._rev_source_lib_mapping[source_lib]
458
- if source in self._source_mapping:
459
- self._attr_source = self._source_mapping[source]
334
+ source = self._rev_source_mapping.get(self.source)
335
+ if media_type.lower() != "radio" or source not in PLAYABLE_SOURCES:
460
336
  return
461
337
 
462
- source_meaning = source.value_meaning
463
-
464
- if source not in self._options_sources:
465
- _LOGGER.warning(
466
- 'Input source "%s" for entity: %s is not in the list. Check integration options',
467
- source_meaning,
468
- self.entity_id,
469
- )
470
- else:
471
- _LOGGER.error(
472
- 'Input source "%s" is invalid for entity: %s',
473
- source_meaning,
474
- self.entity_id,
475
- )
476
-
477
- self._attr_source = source_meaning
478
-
479
- @callback
480
- def _parse_sound_mode(self, mode_lib: LibValue) -> None:
481
- sound_mode = self._rev_sound_mode_lib_mapping[mode_lib]
482
- if sound_mode in self._sound_mode_mapping:
483
- self._attr_sound_mode = self._sound_mode_mapping[sound_mode]
484
- return
338
+ message = command.TunerPreset(self._zone, int(media_id))
339
+ await self._manager.write(message)
485
340
 
486
- sound_mode_meaning = sound_mode.value_meaning
341
+ def process_update(self, message: status.Known) -> None:
342
+ """Process update."""
343
+ match message:
344
+ case status.Power(status.Power.Param.ON):
345
+ self._attr_state = MediaPlayerState.ON
346
+ case status.Power(status.Power.Param.STANDBY):
347
+ self._attr_state = MediaPlayerState.OFF
487
348
 
488
- if sound_mode not in self._options_sound_modes:
489
- _LOGGER.warning(
490
- 'Listening mode "%s" for entity: %s is not in the list. Check integration options',
491
- sound_mode_meaning,
492
- self.entity_id,
493
- )
494
- else:
495
- _LOGGER.error(
496
- 'Listening mode "%s" is invalid for entity: %s',
497
- sound_mode_meaning,
498
- self.entity_id,
499
- )
349
+ case status.Volume(volume):
350
+ if not self._supports_volume:
351
+ self._attr_supported_features |= SUPPORTED_FEATURES_VOLUME
352
+ self._supports_volume = True
353
+ # AMP_VOL / (VOL_RESOLUTION * (MAX_VOL / 100))
354
+ volume_level: float = volume / (
355
+ self._volume_resolution * self._max_volume / 100
356
+ )
357
+ self._attr_volume_level = min(1, volume_level)
358
+
359
+ case status.Muting(muting):
360
+ self._attr_is_volume_muted = bool(muting == status.Muting.Param.ON)
361
+
362
+ case status.InputSource(source):
363
+ if source in self._source_mapping:
364
+ self._attr_source = self._source_mapping[source]
365
+ else:
366
+ source_meaning = get_meaning(source)
367
+ _LOGGER.warning(
368
+ 'Input source "%s" for entity: %s is not in the list. Check integration options',
369
+ source_meaning,
370
+ self.entity_id,
371
+ )
372
+ self._attr_source = source_meaning
373
+
374
+ self._query_av_info_delayed()
375
+
376
+ case status.ListeningMode(sound_mode):
377
+ if not self._supports_sound_mode:
378
+ self._attr_supported_features |= (
379
+ MediaPlayerEntityFeature.SELECT_SOUND_MODE
380
+ )
381
+ self._supports_sound_mode = True
382
+
383
+ if sound_mode in self._sound_mode_mapping:
384
+ self._attr_sound_mode = self._sound_mode_mapping[sound_mode]
385
+ else:
386
+ sound_mode_meaning = get_meaning(sound_mode)
387
+ _LOGGER.warning(
388
+ 'Listening mode "%s" for entity: %s is not in the list. Check integration options',
389
+ sound_mode_meaning,
390
+ self.entity_id,
391
+ )
392
+ self._attr_sound_mode = sound_mode_meaning
393
+
394
+ self._query_av_info_delayed()
395
+
396
+ case status.HDMIOutput(hdmi_output):
397
+ self._attr_extra_state_attributes[ATTR_VIDEO_OUT] = (
398
+ self._hdmi_output_mapping[hdmi_output]
399
+ )
400
+ self._query_av_info_delayed()
401
+
402
+ case status.TunerPreset(preset):
403
+ self._attr_extra_state_attributes[ATTR_PRESET] = preset
404
+
405
+ case status.AudioInformation():
406
+ self._supports_audio_info = True
407
+ audio_information = {}
408
+ for item in AUDIO_INFORMATION_MAPPING:
409
+ item_value = getattr(message, item)
410
+ if item_value is not None:
411
+ audio_information[item] = item_value
412
+ self._attr_extra_state_attributes[ATTR_AUDIO_INFORMATION] = (
413
+ audio_information
414
+ )
500
415
 
501
- self._attr_sound_mode = sound_mode_meaning
416
+ case status.VideoInformation():
417
+ self._supports_video_info = True
418
+ video_information = {}
419
+ for item in VIDEO_INFORMATION_MAPPING:
420
+ item_value = getattr(message, item)
421
+ if item_value is not None:
422
+ video_information[item] = item_value
423
+ self._attr_extra_state_attributes[ATTR_VIDEO_INFORMATION] = (
424
+ video_information
425
+ )
502
426
 
503
- @callback
504
- def _parse_audio_information(
505
- self, audio_information: tuple[str] | Literal["N/A"]
506
- ) -> None:
507
- # If audio information is not available, N/A is returned,
508
- # so only update the audio information, when it is not N/A.
509
- if audio_information == "N/A":
510
- self._attr_extra_state_attributes.pop(ATTR_AUDIO_INFORMATION, None)
511
- return
427
+ case status.FLDisplay():
428
+ self._query_av_info_delayed()
512
429
 
513
- self._attr_extra_state_attributes[ATTR_AUDIO_INFORMATION] = {
514
- name: value
515
- for name, value in zip(
516
- AUDIO_INFORMATION_MAPPING, audio_information, strict=False
517
- )
518
- if len(value) > 0
519
- }
430
+ case status.NotAvailable(Kind.AUDIO_INFORMATION):
431
+ # Not available right now, but still supported
432
+ self._supports_audio_info = True
520
433
 
521
- @callback
522
- def _parse_video_information(
523
- self, video_information: tuple[str] | Literal["N/A"]
524
- ) -> None:
525
- # If video information is not available, N/A is returned,
526
- # so only update the video information, when it is not N/A.
527
- if video_information == "N/A":
528
- self._attr_extra_state_attributes.pop(ATTR_VIDEO_INFORMATION, None)
529
- return
434
+ case status.NotAvailable(Kind.VIDEO_INFORMATION):
435
+ # Not available right now, but still supported
436
+ self._supports_video_info = True
530
437
 
531
- self._attr_extra_state_attributes[ATTR_VIDEO_INFORMATION] = {
532
- name: value
533
- for name, value in zip(
534
- VIDEO_INFORMATION_MAPPING, video_information, strict=False
535
- )
536
- if len(value) > 0
537
- }
438
+ self.async_write_ha_state()
538
439
 
539
440
  def _query_av_info_delayed(self) -> None:
540
- if self._zone == "main" and not self._query_timer:
441
+ if self._zone == Zone.MAIN and not self._query_task:
541
442
 
542
- @callback
543
- def _query_av_info() -> None:
443
+ async def _query_av_info() -> None:
444
+ await asyncio.sleep(AUDIO_VIDEO_INFORMATION_UPDATE_WAIT_TIME)
544
445
  if self._supports_audio_info:
545
- self._query_receiver("audio-information")
446
+ await self._manager.write(query.AudioInformation())
546
447
  if self._supports_video_info:
547
- self._query_receiver("video-information")
548
- self._query_timer = None
448
+ await self._manager.write(query.VideoInformation())
449
+ self._query_task = None
549
450
 
550
- self._query_timer = self.hass.loop.call_later(
551
- AUDIO_VIDEO_INFORMATION_UPDATE_WAIT_TIME, _query_av_info
552
- )
451
+ self._query_task = asyncio.create_task(_query_av_info())