homeassistant 2025.12.0b5__py3-none-any.whl → 2025.12.1__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 (776) hide show
  1. homeassistant/components/airobot/translations/el.json +5 -1
  2. homeassistant/components/airobot/translations/en-GB.json +5 -1
  3. homeassistant/components/airobot/translations/he.json +25 -0
  4. homeassistant/components/airobot/translations/lt.json +5 -1
  5. homeassistant/components/airobot/translations/pt.json +5 -1
  6. homeassistant/components/airobot/translations/sk.json +5 -1
  7. homeassistant/components/alarm_control_panel/translations/cs.json +21 -7
  8. homeassistant/components/alarm_control_panel/translations/de.json +1 -1
  9. homeassistant/components/alarm_control_panel/translations/en-GB.json +21 -7
  10. homeassistant/components/alarm_control_panel/translations/es.json +13 -7
  11. homeassistant/components/alarm_control_panel/translations/he.json +86 -1
  12. homeassistant/components/alarm_control_panel/translations/lt.json +21 -7
  13. homeassistant/components/alarm_control_panel/translations/pt.json +21 -7
  14. homeassistant/components/alarm_control_panel/translations/sk.json +21 -7
  15. homeassistant/components/alarm_control_panel/translations/zh-Hans.json +4 -2
  16. homeassistant/components/alert/translations/he.json +1 -1
  17. homeassistant/components/anglian_water/config_flow.py +4 -18
  18. homeassistant/components/anglian_water/manifest.json +1 -0
  19. homeassistant/components/anglian_water/translations/en-GB.json +2 -1
  20. homeassistant/components/anglian_water/translations/he.json +20 -0
  21. homeassistant/components/anglian_water/translations/lt.json +2 -1
  22. homeassistant/components/anglian_water/translations/pt.json +2 -1
  23. homeassistant/components/anglian_water/translations/sk.json +2 -1
  24. homeassistant/components/anglian_water/translations/sv.json +8 -2
  25. homeassistant/components/anova/translations/he.json +1 -1
  26. homeassistant/components/anthropic/translations/he.json +31 -0
  27. homeassistant/components/apcupsd/translations/sk.json +5 -5
  28. homeassistant/components/aprilaire/translations/he.json +4 -4
  29. homeassistant/components/assist_satellite/manifest.json +1 -1
  30. homeassistant/components/assist_satellite/translations/cs.json +12 -4
  31. homeassistant/components/assist_satellite/translations/en-GB.json +12 -4
  32. homeassistant/components/assist_satellite/translations/es.json +12 -4
  33. homeassistant/components/assist_satellite/translations/he.json +55 -2
  34. homeassistant/components/assist_satellite/translations/lt.json +12 -4
  35. homeassistant/components/assist_satellite/translations/pt.json +12 -4
  36. homeassistant/components/assist_satellite/translations/sk.json +12 -4
  37. homeassistant/components/assist_satellite/translations/zh-Hans.json +4 -2
  38. homeassistant/components/automation/manifest.json +2 -0
  39. homeassistant/components/automation/translations/cs.json +8 -0
  40. homeassistant/components/automation/translations/en-GB.json +8 -0
  41. homeassistant/components/automation/translations/es.json +8 -0
  42. homeassistant/components/automation/translations/fr.json +8 -0
  43. homeassistant/components/automation/translations/lt.json +8 -0
  44. homeassistant/components/automation/translations/pt.json +8 -0
  45. homeassistant/components/automation/translations/sk.json +8 -0
  46. homeassistant/components/automation/translations/sr-Latn.json +1 -1
  47. homeassistant/components/backup/translations/he.json +1 -1
  48. homeassistant/components/bang_olufsen/translations/he.json +901 -0
  49. homeassistant/components/bayesian/translations/sk.json +3 -3
  50. homeassistant/components/binary_sensor/strings.json +4 -4
  51. homeassistant/components/binary_sensor/translations/cs.json +36 -1
  52. homeassistant/components/binary_sensor/translations/de.json +3 -3
  53. homeassistant/components/binary_sensor/translations/en-GB.json +36 -1
  54. homeassistant/components/binary_sensor/translations/en.json +4 -4
  55. homeassistant/components/binary_sensor/translations/es.json +36 -1
  56. homeassistant/components/binary_sensor/translations/et.json +1 -1
  57. homeassistant/components/binary_sensor/translations/ga.json +36 -1
  58. homeassistant/components/binary_sensor/translations/he.json +36 -1
  59. homeassistant/components/binary_sensor/translations/lt.json +36 -1
  60. homeassistant/components/binary_sensor/translations/pt.json +36 -1
  61. homeassistant/components/binary_sensor/translations/ru.json +36 -1
  62. homeassistant/components/binary_sensor/translations/sk.json +4 -4
  63. homeassistant/components/binary_sensor/translations/sv.json +23 -1
  64. homeassistant/components/binary_sensor/translations/zh-Hans.json +29 -1
  65. homeassistant/components/binary_sensor/translations/zh-Hant.json +3 -3
  66. homeassistant/components/binary_sensor/triggers.yaml +2 -2
  67. homeassistant/components/blebox/translations/sr-Latn.json +1 -0
  68. homeassistant/components/bsblan/translations/sr-Latn.json +4 -0
  69. homeassistant/components/camera/__init__.py +1 -1
  70. homeassistant/components/camera/translations/he.json +1 -1
  71. homeassistant/components/climate/translations/cs.json +15 -5
  72. homeassistant/components/climate/translations/en-GB.json +15 -5
  73. homeassistant/components/climate/translations/es.json +11 -5
  74. homeassistant/components/climate/translations/he.json +65 -2
  75. homeassistant/components/climate/translations/lt.json +15 -5
  76. homeassistant/components/climate/translations/pt.json +15 -5
  77. homeassistant/components/climate/translations/ru.json +21 -11
  78. homeassistant/components/climate/translations/sk.json +15 -5
  79. homeassistant/components/cloud/client.py +9 -5
  80. homeassistant/components/cloud/entity.py +1 -1
  81. homeassistant/components/cloud/http_api.py +21 -0
  82. homeassistant/components/cloud/manifest.json +1 -1
  83. homeassistant/components/cloud/translations/he.json +7 -0
  84. homeassistant/components/conversation/manifest.json +1 -1
  85. homeassistant/components/deluge/translations/he.json +1 -1
  86. homeassistant/components/derivative/translations/he.json +5 -0
  87. homeassistant/components/doorbird/device.py +11 -7
  88. homeassistant/components/duckdns/translations/he.json +10 -0
  89. homeassistant/components/duckdns/translations/ru.json +12 -0
  90. homeassistant/components/ecovacs/manifest.json +1 -1
  91. homeassistant/components/ecovacs/translations/he.json +1 -1
  92. homeassistant/components/energyid/translations/he.json +11 -0
  93. homeassistant/components/energyid/translations/sv.json +2 -1
  94. homeassistant/components/enphase_envoy/translations/he.json +1 -1
  95. homeassistant/components/esphome/translations/he.json +1 -0
  96. homeassistant/components/esphome/translations/lt.json +1 -0
  97. homeassistant/components/essent/translations/he.json +9 -0
  98. homeassistant/components/essent/translations/nl.json +32 -0
  99. homeassistant/components/evohome/manifest.json +1 -1
  100. homeassistant/components/fan/translations/cs.json +6 -2
  101. homeassistant/components/fan/translations/en-GB.json +6 -2
  102. homeassistant/components/fan/translations/es.json +2 -1
  103. homeassistant/components/fan/translations/he.json +34 -1
  104. homeassistant/components/fan/translations/lt.json +6 -2
  105. homeassistant/components/fan/translations/nl.json +6 -1
  106. homeassistant/components/fan/translations/pt.json +6 -2
  107. homeassistant/components/fan/translations/ru.json +37 -1
  108. homeassistant/components/fan/translations/sk.json +6 -2
  109. homeassistant/components/forked_daapd/translations/sr-Latn.json +8 -0
  110. homeassistant/components/fritzbox_callmonitor/translations/he.json +1 -1
  111. homeassistant/components/fronius/translations/he.json +1 -1
  112. homeassistant/components/frontend/manifest.json +1 -1
  113. homeassistant/components/frontend/translations/cs.json +2 -2
  114. homeassistant/components/frontend/translations/de.json +2 -2
  115. homeassistant/components/frontend/translations/he.json +8 -0
  116. homeassistant/components/google_air_quality/strings.json +7 -2
  117. homeassistant/components/google_air_quality/translations/bg.json +3 -2
  118. homeassistant/components/google_air_quality/translations/cs.json +7 -2
  119. homeassistant/components/google_air_quality/translations/de.json +7 -2
  120. homeassistant/components/google_air_quality/translations/el.json +3 -2
  121. homeassistant/components/google_air_quality/translations/en-GB.json +161 -3
  122. homeassistant/components/google_air_quality/translations/en.json +7 -2
  123. homeassistant/components/google_air_quality/translations/es.json +7 -2
  124. homeassistant/components/google_air_quality/translations/et.json +7 -2
  125. homeassistant/components/google_air_quality/translations/fr.json +14 -0
  126. homeassistant/components/google_air_quality/translations/ga.json +7 -2
  127. homeassistant/components/google_air_quality/translations/he.json +239 -0
  128. homeassistant/components/google_air_quality/translations/lt.json +0 -9
  129. homeassistant/components/google_air_quality/translations/nl.json +42 -2
  130. homeassistant/components/google_air_quality/translations/pt.json +7 -2
  131. homeassistant/components/google_air_quality/translations/ru.json +2 -9
  132. homeassistant/components/google_air_quality/translations/sk.json +7 -2
  133. homeassistant/components/google_air_quality/translations/sv.json +11 -4
  134. homeassistant/components/google_air_quality/translations/tr.json +0 -9
  135. homeassistant/components/google_air_quality/translations/zh-Hans.json +7 -4
  136. homeassistant/components/google_air_quality/translations/zh-Hant.json +7 -2
  137. homeassistant/components/google_assistant/translations/sr-Latn.json +1 -1
  138. homeassistant/components/google_generative_ai_conversation/__init__.py +1 -0
  139. homeassistant/components/google_generative_ai_conversation/const.py +1 -1
  140. homeassistant/components/google_generative_ai_conversation/strings.json +1 -1
  141. homeassistant/components/google_generative_ai_conversation/translations/bg.json +0 -3
  142. homeassistant/components/google_generative_ai_conversation/translations/cs.json +1 -1
  143. homeassistant/components/google_generative_ai_conversation/translations/de.json +1 -1
  144. homeassistant/components/google_generative_ai_conversation/translations/el.json +0 -1
  145. homeassistant/components/google_generative_ai_conversation/translations/en-GB.json +1 -1
  146. homeassistant/components/google_generative_ai_conversation/translations/en.json +1 -1
  147. homeassistant/components/google_generative_ai_conversation/translations/es.json +1 -1
  148. homeassistant/components/google_generative_ai_conversation/translations/et.json +1 -1
  149. homeassistant/components/google_generative_ai_conversation/translations/fr.json +0 -1
  150. homeassistant/components/google_generative_ai_conversation/translations/ga.json +0 -1
  151. homeassistant/components/google_generative_ai_conversation/translations/he.json +0 -1
  152. homeassistant/components/google_generative_ai_conversation/translations/hu.json +0 -1
  153. homeassistant/components/google_generative_ai_conversation/translations/lt.json +0 -1
  154. homeassistant/components/google_generative_ai_conversation/translations/nl.json +0 -1
  155. homeassistant/components/google_generative_ai_conversation/translations/pt-BR.json +0 -1
  156. homeassistant/components/google_generative_ai_conversation/translations/pt.json +1 -1
  157. homeassistant/components/google_generative_ai_conversation/translations/ru.json +0 -1
  158. homeassistant/components/google_generative_ai_conversation/translations/sk.json +0 -1
  159. homeassistant/components/google_generative_ai_conversation/translations/sl.json +0 -1
  160. homeassistant/components/google_generative_ai_conversation/translations/sv.json +0 -1
  161. homeassistant/components/google_generative_ai_conversation/translations/tr.json +0 -1
  162. homeassistant/components/google_generative_ai_conversation/translations/uk.json +0 -1
  163. homeassistant/components/google_generative_ai_conversation/translations/zh-Hans.json +0 -1
  164. homeassistant/components/google_generative_ai_conversation/translations/zh-Hant.json +0 -1
  165. homeassistant/components/google_photos/services.py +1 -0
  166. homeassistant/components/google_photos/strings.json +1 -1
  167. homeassistant/components/google_photos/translations/bg.json +0 -1
  168. homeassistant/components/google_photos/translations/ca.json +0 -1
  169. homeassistant/components/google_photos/translations/cs.json +1 -1
  170. homeassistant/components/google_photos/translations/de.json +1 -1
  171. homeassistant/components/google_photos/translations/el.json +0 -1
  172. homeassistant/components/google_photos/translations/en-GB.json +1 -1
  173. homeassistant/components/google_photos/translations/en.json +1 -1
  174. homeassistant/components/google_photos/translations/es.json +1 -1
  175. homeassistant/components/google_photos/translations/et.json +1 -1
  176. homeassistant/components/google_photos/translations/fr.json +0 -1
  177. homeassistant/components/google_photos/translations/ga.json +0 -1
  178. homeassistant/components/google_photos/translations/he.json +0 -1
  179. homeassistant/components/google_photos/translations/hu.json +0 -1
  180. homeassistant/components/google_photos/translations/id.json +0 -1
  181. homeassistant/components/google_photos/translations/it.json +0 -1
  182. homeassistant/components/google_photos/translations/ja.json +0 -1
  183. homeassistant/components/google_photos/translations/lt.json +0 -1
  184. homeassistant/components/google_photos/translations/nl.json +0 -1
  185. homeassistant/components/google_photos/translations/pt-BR.json +0 -1
  186. homeassistant/components/google_photos/translations/pt.json +1 -1
  187. homeassistant/components/google_photos/translations/ru.json +0 -1
  188. homeassistant/components/google_photos/translations/sk.json +0 -1
  189. homeassistant/components/google_photos/translations/sv.json +0 -1
  190. homeassistant/components/google_photos/translations/tr.json +0 -1
  191. homeassistant/components/google_photos/translations/uk.json +0 -1
  192. homeassistant/components/google_photos/translations/zh-Hans.json +0 -1
  193. homeassistant/components/google_photos/translations/zh-Hant.json +0 -1
  194. homeassistant/components/google_weather/translations/he.json +102 -0
  195. homeassistant/components/group/notify.py +28 -5
  196. homeassistant/components/hanna/translations/he.json +20 -0
  197. homeassistant/components/hassio/const.py +1 -0
  198. homeassistant/components/hassio/strings.json +1 -1
  199. homeassistant/components/hassio/translations/cs.json +1 -1
  200. homeassistant/components/hassio/translations/de.json +1 -1
  201. homeassistant/components/hassio/translations/el.json +0 -1
  202. homeassistant/components/hassio/translations/en-GB.json +1 -1
  203. homeassistant/components/hassio/translations/en.json +1 -1
  204. homeassistant/components/hassio/translations/es.json +1 -1
  205. homeassistant/components/hassio/translations/et.json +1 -1
  206. homeassistant/components/hassio/translations/fr.json +0 -1
  207. homeassistant/components/hassio/translations/fy.json +0 -3
  208. homeassistant/components/hassio/translations/ga.json +0 -1
  209. homeassistant/components/hassio/translations/he.json +0 -1
  210. homeassistant/components/hassio/translations/id.json +0 -1
  211. homeassistant/components/hassio/translations/lt.json +1 -1
  212. homeassistant/components/hassio/translations/mk.json +0 -1
  213. homeassistant/components/hassio/translations/nl.json +0 -1
  214. homeassistant/components/hassio/translations/pt.json +1 -1
  215. homeassistant/components/hassio/translations/ru.json +0 -1
  216. homeassistant/components/hassio/translations/sk.json +1 -1
  217. homeassistant/components/hassio/translations/sv.json +0 -1
  218. homeassistant/components/hassio/translations/tr.json +0 -1
  219. homeassistant/components/hassio/translations/zh-Hans.json +0 -1
  220. homeassistant/components/hassio/translations/zh-Hant.json +1 -1
  221. homeassistant/components/home_connect/translations/de.json +2 -2
  222. homeassistant/components/home_connect/translations/he.json +3 -0
  223. homeassistant/components/homeassistant_connect_zbt2/config_flow.py +0 -17
  224. homeassistant/components/homeassistant_connect_zbt2/const.py +0 -58
  225. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +0 -5
  226. homeassistant/components/homekit_controller/translations/he.json +1 -1
  227. homeassistant/components/hue_ble/translations/en-GB.json +2 -1
  228. homeassistant/components/hue_ble/translations/he.json +11 -0
  229. homeassistant/components/hue_ble/translations/lt.json +2 -1
  230. homeassistant/components/hue_ble/translations/nl.json +3 -0
  231. homeassistant/components/hue_ble/translations/pt.json +2 -1
  232. homeassistant/components/hue_ble/translations/sk.json +2 -1
  233. homeassistant/components/hue_ble/translations/sv.json +8 -0
  234. homeassistant/components/humidifier/translations/he.json +1 -1
  235. homeassistant/components/integration/translations/pl.json +1 -1
  236. homeassistant/components/iometer/manifest.json +1 -1
  237. homeassistant/components/ipp/translations/he.json +1 -1
  238. homeassistant/components/iron_os/translations/he.json +1 -1
  239. homeassistant/components/kitchen_sink/translations/cs.json +2 -2
  240. homeassistant/components/kitchen_sink/translations/de.json +4 -4
  241. homeassistant/components/kitchen_sink/translations/el.json +5 -0
  242. homeassistant/components/kitchen_sink/translations/en-GB.json +2 -2
  243. homeassistant/components/kitchen_sink/translations/en.json +2 -2
  244. homeassistant/components/kitchen_sink/translations/es.json +2 -2
  245. homeassistant/components/kitchen_sink/translations/et.json +1 -1
  246. homeassistant/components/kitchen_sink/translations/ga.json +0 -2
  247. homeassistant/components/kitchen_sink/translations/it.json +0 -2
  248. homeassistant/components/kitchen_sink/translations/lt.json +0 -2
  249. homeassistant/components/kitchen_sink/translations/nl.json +4 -0
  250. homeassistant/components/kitchen_sink/translations/pt.json +2 -2
  251. homeassistant/components/kitchen_sink/translations/sk.json +2 -2
  252. homeassistant/components/kitchen_sink/translations/tr.json +0 -2
  253. homeassistant/components/kitchen_sink/translations/zh-Hans.json +0 -2
  254. homeassistant/components/labs/__init__.py +2 -54
  255. homeassistant/components/labs/helpers.py +63 -0
  256. homeassistant/components/labs/websocket_api.py +51 -0
  257. homeassistant/components/lametric/services.py +1 -0
  258. homeassistant/components/lametric/strings.json +1 -1
  259. homeassistant/components/lametric/translations/ca.json +0 -3
  260. homeassistant/components/lametric/translations/cs.json +1 -1
  261. homeassistant/components/lametric/translations/de.json +1 -1
  262. homeassistant/components/lametric/translations/el.json +0 -1
  263. homeassistant/components/lametric/translations/en-GB.json +1 -1
  264. homeassistant/components/lametric/translations/en.json +1 -1
  265. homeassistant/components/lametric/translations/es.json +1 -1
  266. homeassistant/components/lametric/translations/et.json +0 -1
  267. homeassistant/components/lametric/translations/fi.json +0 -3
  268. homeassistant/components/lametric/translations/ga.json +0 -1
  269. homeassistant/components/lametric/translations/gl.json +0 -3
  270. homeassistant/components/lametric/translations/hu.json +0 -1
  271. homeassistant/components/lametric/translations/it.json +0 -3
  272. homeassistant/components/lametric/translations/ja.json +0 -1
  273. homeassistant/components/lametric/translations/ko.json +0 -3
  274. homeassistant/components/lametric/translations/lt.json +0 -1
  275. homeassistant/components/lametric/translations/nl.json +0 -3
  276. homeassistant/components/lametric/translations/pt-BR.json +0 -3
  277. homeassistant/components/lametric/translations/pt.json +0 -1
  278. homeassistant/components/lametric/translations/ru.json +0 -1
  279. homeassistant/components/lametric/translations/sk.json +0 -1
  280. homeassistant/components/lametric/translations/sv.json +0 -1
  281. homeassistant/components/lametric/translations/tr.json +0 -1
  282. homeassistant/components/lametric/translations/vi.json +0 -3
  283. homeassistant/components/lametric/translations/zh-Hans.json +0 -1
  284. homeassistant/components/lametric/translations/zh-Hant.json +0 -1
  285. homeassistant/components/lawn_mower/translations/cs.json +12 -4
  286. homeassistant/components/lawn_mower/translations/en-GB.json +12 -4
  287. homeassistant/components/lawn_mower/translations/es.json +4 -4
  288. homeassistant/components/lawn_mower/translations/he.json +38 -0
  289. homeassistant/components/lawn_mower/translations/lt.json +12 -4
  290. homeassistant/components/lawn_mower/translations/pt.json +20 -12
  291. homeassistant/components/lawn_mower/translations/ru.json +56 -1
  292. homeassistant/components/lawn_mower/translations/sk.json +12 -4
  293. homeassistant/components/letpot/manifest.json +1 -1
  294. homeassistant/components/libre_hardware_monitor/coordinator.py +26 -18
  295. homeassistant/components/light/translations/cs.json +6 -2
  296. homeassistant/components/light/translations/en-GB.json +6 -2
  297. homeassistant/components/light/translations/es.json +2 -2
  298. homeassistant/components/light/translations/he.json +69 -2
  299. homeassistant/components/light/translations/lt.json +6 -2
  300. homeassistant/components/light/translations/nl.json +6 -1
  301. homeassistant/components/light/translations/pt.json +6 -2
  302. homeassistant/components/light/translations/ru.json +15 -11
  303. homeassistant/components/light/translations/sk.json +6 -2
  304. homeassistant/components/matter/translations/he.json +56 -2
  305. homeassistant/components/media_player/translations/cs.json +3 -1
  306. homeassistant/components/media_player/translations/en-GB.json +3 -1
  307. homeassistant/components/media_player/translations/es.json +1 -1
  308. homeassistant/components/media_player/translations/he.json +27 -4
  309. homeassistant/components/media_player/translations/lt.json +3 -1
  310. homeassistant/components/media_player/translations/pt.json +3 -1
  311. homeassistant/components/media_player/translations/ru.json +24 -1
  312. homeassistant/components/media_player/translations/sk.json +3 -1
  313. homeassistant/components/miele/translations/en-GB.json +1 -0
  314. homeassistant/components/miele/translations/ga.json +1 -0
  315. homeassistant/components/miele/translations/he.json +4 -1
  316. homeassistant/components/miele/translations/it.json +15 -1
  317. homeassistant/components/miele/translations/lt.json +1 -0
  318. homeassistant/components/miele/translations/pt.json +1 -0
  319. homeassistant/components/miele/translations/zh-Hans.json +1 -0
  320. homeassistant/components/mqtt/translations/cs.json +3 -1
  321. homeassistant/components/mqtt/translations/en-GB.json +3 -1
  322. homeassistant/components/mqtt/translations/es.json +1 -1
  323. homeassistant/components/mqtt/translations/he.json +35 -1
  324. homeassistant/components/mqtt/translations/lt.json +5 -1
  325. homeassistant/components/mqtt/translations/pt.json +3 -1
  326. homeassistant/components/mqtt/translations/sk.json +3 -1
  327. homeassistant/components/music_assistant/__init__.py +2 -1
  328. homeassistant/components/music_assistant/config_flow.py +23 -5
  329. homeassistant/components/music_assistant/translations/he.json +8 -1
  330. homeassistant/components/myuplink/translations/he.json +5 -0
  331. homeassistant/components/neato/translations/he.json +5 -0
  332. homeassistant/components/nest/manifest.json +1 -1
  333. homeassistant/components/netatmo/translations/he.json +5 -0
  334. homeassistant/components/niko_home_control/translations/he.json +3 -1
  335. homeassistant/components/nina/translations/he.json +12 -1
  336. homeassistant/components/nordpool/manifest.json +1 -1
  337. homeassistant/components/ntfy/translations/cs.json +1 -1
  338. homeassistant/components/ntfy/translations/de.json +1 -1
  339. homeassistant/components/ntfy/translations/el.json +0 -3
  340. homeassistant/components/ntfy/translations/en-GB.json +1 -1
  341. homeassistant/components/ntfy/translations/en.json +1 -1
  342. homeassistant/components/ntfy/translations/es.json +1 -1
  343. homeassistant/components/ntfy/translations/et.json +1 -1
  344. homeassistant/components/ntfy/translations/lt.json +0 -1
  345. homeassistant/components/ntfy/translations/pt.json +1 -1
  346. homeassistant/components/ntfy/translations/ru.json +0 -1
  347. homeassistant/components/ntfy/translations/sk.json +1 -1
  348. homeassistant/components/ntfy/translations/sv.json +0 -1
  349. homeassistant/components/ntfy/translations/tr.json +0 -1
  350. homeassistant/components/ntfy/translations/zh-Hans.json +0 -1
  351. homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
  352. homeassistant/components/onedrive/services.py +1 -0
  353. homeassistant/components/onedrive/strings.json +1 -1
  354. homeassistant/components/onedrive/translations/cs.json +1 -1
  355. homeassistant/components/onedrive/translations/de.json +1 -1
  356. homeassistant/components/onedrive/translations/el.json +0 -1
  357. homeassistant/components/onedrive/translations/en-GB.json +1 -1
  358. homeassistant/components/onedrive/translations/en.json +1 -1
  359. homeassistant/components/onedrive/translations/es.json +1 -1
  360. homeassistant/components/onedrive/translations/et.json +1 -1
  361. homeassistant/components/onedrive/translations/ga.json +0 -1
  362. homeassistant/components/onedrive/translations/he.json +3 -1
  363. homeassistant/components/onedrive/translations/hu.json +0 -1
  364. homeassistant/components/onedrive/translations/it.json +0 -1
  365. homeassistant/components/onedrive/translations/ja.json +0 -1
  366. homeassistant/components/onedrive/translations/lt.json +0 -1
  367. homeassistant/components/onedrive/translations/nl.json +0 -1
  368. homeassistant/components/onedrive/translations/pt.json +1 -1
  369. homeassistant/components/onedrive/translations/ru.json +0 -1
  370. homeassistant/components/onedrive/translations/sk.json +0 -1
  371. homeassistant/components/onedrive/translations/sl.json +0 -1
  372. homeassistant/components/onedrive/translations/sv.json +0 -1
  373. homeassistant/components/onedrive/translations/tr.json +0 -1
  374. homeassistant/components/onedrive/translations/zh-Hans.json +0 -1
  375. homeassistant/components/onedrive/translations/zh-Hant.json +0 -1
  376. homeassistant/components/oralb/manifest.json +2 -1
  377. homeassistant/components/oralb/translations/he.json +1 -1
  378. homeassistant/components/pilight/__init__.py +13 -1
  379. homeassistant/components/pilight/strings.json +1 -1
  380. homeassistant/components/pilight/translations/cs.json +1 -1
  381. homeassistant/components/pilight/translations/de.json +1 -1
  382. homeassistant/components/pilight/translations/el.json +0 -1
  383. homeassistant/components/pilight/translations/en-GB.json +1 -1
  384. homeassistant/components/pilight/translations/en.json +1 -1
  385. homeassistant/components/pilight/translations/es.json +1 -1
  386. homeassistant/components/pilight/translations/et.json +1 -1
  387. homeassistant/components/pilight/translations/fi.json +0 -1
  388. homeassistant/components/pilight/translations/ga.json +0 -1
  389. homeassistant/components/pilight/translations/hu.json +0 -1
  390. homeassistant/components/pilight/translations/it.json +0 -1
  391. homeassistant/components/pilight/translations/ja.json +0 -1
  392. homeassistant/components/pilight/translations/ko.json +0 -1
  393. homeassistant/components/pilight/translations/lt.json +0 -1
  394. homeassistant/components/pilight/translations/pt.json +1 -1
  395. homeassistant/components/pilight/translations/ru.json +0 -1
  396. homeassistant/components/pilight/translations/sk.json +1 -1
  397. homeassistant/components/pilight/translations/sv.json +0 -1
  398. homeassistant/components/pilight/translations/tr.json +0 -1
  399. homeassistant/components/pilight/translations/zh-Hans.json +0 -1
  400. homeassistant/components/pilight/translations/zh-Hant.json +1 -1
  401. homeassistant/components/ping/helpers.py +1 -1
  402. homeassistant/components/playstation_network/coordinator.py +14 -7
  403. homeassistant/components/plugwise/translations/en-GB.json +1 -1
  404. homeassistant/components/plugwise/translations/he.json +26 -0
  405. homeassistant/components/plugwise/translations/ru.json +12 -0
  406. homeassistant/components/point/translations/he.json +5 -0
  407. homeassistant/components/pooldose/translations/he.json +11 -0
  408. homeassistant/components/prusalink/translations/he.json +1 -1
  409. homeassistant/components/qbittorrent/translations/he.json +1 -1
  410. homeassistant/components/rainmachine/__init__.py +13 -2
  411. homeassistant/components/rainmachine/strings.json +1 -1
  412. homeassistant/components/rainmachine/translations/cs.json +1 -1
  413. homeassistant/components/rainmachine/translations/de.json +1 -1
  414. homeassistant/components/rainmachine/translations/en-GB.json +1 -1
  415. homeassistant/components/rainmachine/translations/en.json +1 -1
  416. homeassistant/components/rainmachine/translations/es.json +1 -1
  417. homeassistant/components/rainmachine/translations/et.json +1 -1
  418. homeassistant/components/rainmachine/translations/lt.json +0 -1
  419. homeassistant/components/rainmachine/translations/pt.json +1 -1
  420. homeassistant/components/rainmachine/translations/ru.json +1 -0
  421. homeassistant/components/rainmachine/translations/sk.json +1 -1
  422. homeassistant/components/rainmachine/translations/zh-Hans.json +0 -1
  423. homeassistant/components/rainmachine/translations/zh-Hant.json +1 -1
  424. homeassistant/components/reolink/host.py +4 -0
  425. homeassistant/components/reolink/manifest.json +1 -1
  426. homeassistant/components/reolink/strings.json +2 -2
  427. homeassistant/components/reolink/translations/ca.json +0 -2
  428. homeassistant/components/reolink/translations/cs.json +2 -2
  429. homeassistant/components/reolink/translations/de.json +2 -2
  430. homeassistant/components/reolink/translations/el.json +0 -2
  431. homeassistant/components/reolink/translations/en-GB.json +2 -2
  432. homeassistant/components/reolink/translations/en.json +2 -2
  433. homeassistant/components/reolink/translations/es.json +0 -2
  434. homeassistant/components/reolink/translations/et.json +2 -2
  435. homeassistant/components/reolink/translations/fi.json +0 -2
  436. homeassistant/components/reolink/translations/fr.json +0 -2
  437. homeassistant/components/reolink/translations/ga.json +0 -2
  438. homeassistant/components/reolink/translations/hr.json +0 -5
  439. homeassistant/components/reolink/translations/hu.json +0 -2
  440. homeassistant/components/reolink/translations/id.json +0 -2
  441. homeassistant/components/reolink/translations/it.json +0 -2
  442. homeassistant/components/reolink/translations/ja.json +0 -2
  443. homeassistant/components/reolink/translations/ko.json +0 -2
  444. homeassistant/components/reolink/translations/lt.json +0 -2
  445. homeassistant/components/reolink/translations/nb.json +0 -1
  446. homeassistant/components/reolink/translations/nl.json +0 -2
  447. homeassistant/components/reolink/translations/pl.json +0 -1
  448. homeassistant/components/reolink/translations/pt-BR.json +0 -2
  449. homeassistant/components/reolink/translations/pt.json +2 -2
  450. homeassistant/components/reolink/translations/ro.json +0 -2
  451. homeassistant/components/reolink/translations/ru.json +0 -2
  452. homeassistant/components/reolink/translations/sk.json +2 -2
  453. homeassistant/components/reolink/translations/sv.json +0 -2
  454. homeassistant/components/reolink/translations/tr.json +0 -2
  455. homeassistant/components/reolink/translations/uk.json +0 -2
  456. homeassistant/components/reolink/translations/zh-Hans.json +0 -2
  457. homeassistant/components/reolink/translations/zh-Hant.json +2 -2
  458. homeassistant/components/rituals_perfume_genie/__init__.py +47 -7
  459. homeassistant/components/rituals_perfume_genie/config_flow.py +79 -32
  460. homeassistant/components/rituals_perfume_genie/const.py +1 -0
  461. homeassistant/components/rituals_perfume_genie/coordinator.py +39 -4
  462. homeassistant/components/rituals_perfume_genie/manifest.json +2 -2
  463. homeassistant/components/rituals_perfume_genie/strings.json +8 -1
  464. homeassistant/components/rituals_perfume_genie/translations/bg.json +0 -3
  465. homeassistant/components/rituals_perfume_genie/translations/ca.json +0 -3
  466. homeassistant/components/rituals_perfume_genie/translations/cs.json +8 -1
  467. homeassistant/components/rituals_perfume_genie/translations/da.json +0 -3
  468. homeassistant/components/rituals_perfume_genie/translations/de.json +8 -1
  469. homeassistant/components/rituals_perfume_genie/translations/el.json +0 -3
  470. homeassistant/components/rituals_perfume_genie/translations/en-GB.json +8 -1
  471. homeassistant/components/rituals_perfume_genie/translations/en.json +8 -1
  472. homeassistant/components/rituals_perfume_genie/translations/es.json +8 -1
  473. homeassistant/components/rituals_perfume_genie/translations/et.json +7 -1
  474. homeassistant/components/rituals_perfume_genie/translations/fi.json +0 -3
  475. homeassistant/components/rituals_perfume_genie/translations/fr.json +0 -3
  476. homeassistant/components/rituals_perfume_genie/translations/ga.json +0 -3
  477. homeassistant/components/rituals_perfume_genie/translations/he.json +0 -3
  478. homeassistant/components/rituals_perfume_genie/translations/hu.json +0 -3
  479. homeassistant/components/rituals_perfume_genie/translations/id.json +0 -3
  480. homeassistant/components/rituals_perfume_genie/translations/it.json +0 -3
  481. homeassistant/components/rituals_perfume_genie/translations/ja.json +0 -3
  482. homeassistant/components/rituals_perfume_genie/translations/ko.json +0 -3
  483. homeassistant/components/rituals_perfume_genie/translations/lt.json +0 -3
  484. homeassistant/components/rituals_perfume_genie/translations/lv.json +0 -5
  485. homeassistant/components/rituals_perfume_genie/translations/nb.json +0 -3
  486. homeassistant/components/rituals_perfume_genie/translations/nl.json +0 -3
  487. homeassistant/components/rituals_perfume_genie/translations/pl.json +0 -3
  488. homeassistant/components/rituals_perfume_genie/translations/pt-BR.json +0 -3
  489. homeassistant/components/rituals_perfume_genie/translations/pt.json +8 -1
  490. homeassistant/components/rituals_perfume_genie/translations/ro.json +0 -3
  491. homeassistant/components/rituals_perfume_genie/translations/ru.json +0 -3
  492. homeassistant/components/rituals_perfume_genie/translations/sk.json +8 -1
  493. homeassistant/components/rituals_perfume_genie/translations/sl.json +0 -3
  494. homeassistant/components/rituals_perfume_genie/translations/sv.json +0 -3
  495. homeassistant/components/rituals_perfume_genie/translations/tr.json +0 -3
  496. homeassistant/components/rituals_perfume_genie/translations/uk.json +0 -3
  497. homeassistant/components/rituals_perfume_genie/translations/zh-Hans.json +0 -3
  498. homeassistant/components/rituals_perfume_genie/translations/zh-Hant.json +0 -3
  499. homeassistant/components/roborock/__init__.py +20 -1
  500. homeassistant/components/roborock/manifest.json +1 -1
  501. homeassistant/components/roborock/roborock_storage.py +29 -10
  502. homeassistant/components/roborock/translations/he.json +1 -1
  503. homeassistant/components/saunum/translations/he.json +31 -0
  504. homeassistant/components/scene/translations/cs.json +3 -3
  505. homeassistant/components/senz/translations/he.json +11 -1
  506. homeassistant/components/sfr_box/translations/he.json +1 -1
  507. homeassistant/components/sharkiq/manifest.json +1 -1
  508. homeassistant/components/shelly/button.py +11 -2
  509. homeassistant/components/shelly/translations/ga.json +8 -0
  510. homeassistant/components/shelly/translations/he.json +132 -0
  511. homeassistant/components/sleep_as_android/translations/es.json +3 -0
  512. homeassistant/components/smartthings/translations/he.json +19 -1
  513. homeassistant/components/spotify/translations/he.json +5 -0
  514. homeassistant/components/starlink/coordinator.py +0 -1
  515. homeassistant/components/starlink/sensor.py +6 -3
  516. homeassistant/components/switchbot/translations/he.json +12 -0
  517. homeassistant/components/tedee/manifest.json +1 -0
  518. homeassistant/components/telegram_bot/__init__.py +3 -0
  519. homeassistant/components/telegram_bot/config_flow.py +9 -5
  520. homeassistant/components/telegram_bot/strings.json +9 -9
  521. homeassistant/components/telegram_bot/translations/bg.json +0 -7
  522. homeassistant/components/telegram_bot/translations/ca.json +0 -12
  523. homeassistant/components/telegram_bot/translations/cs.json +15 -15
  524. homeassistant/components/telegram_bot/translations/de.json +15 -15
  525. homeassistant/components/telegram_bot/translations/el.json +0 -18
  526. homeassistant/components/telegram_bot/translations/en-GB.json +15 -15
  527. homeassistant/components/telegram_bot/translations/en.json +15 -15
  528. homeassistant/components/telegram_bot/translations/es.json +2 -15
  529. homeassistant/components/telegram_bot/translations/et.json +15 -15
  530. homeassistant/components/telegram_bot/translations/fi.json +0 -12
  531. homeassistant/components/telegram_bot/translations/ga.json +0 -19
  532. homeassistant/components/telegram_bot/translations/gl.json +0 -3
  533. homeassistant/components/telegram_bot/translations/he.json +0 -12
  534. homeassistant/components/telegram_bot/translations/hu.json +0 -18
  535. homeassistant/components/telegram_bot/translations/it.json +0 -18
  536. homeassistant/components/telegram_bot/translations/ja.json +0 -18
  537. homeassistant/components/telegram_bot/translations/ko.json +0 -12
  538. homeassistant/components/telegram_bot/translations/lt.json +0 -19
  539. homeassistant/components/telegram_bot/translations/mk.json +0 -1
  540. homeassistant/components/telegram_bot/translations/nb.json +0 -12
  541. homeassistant/components/telegram_bot/translations/nl.json +0 -18
  542. homeassistant/components/telegram_bot/translations/pt.json +15 -15
  543. homeassistant/components/telegram_bot/translations/ru.json +13 -19
  544. homeassistant/components/telegram_bot/translations/sk.json +15 -15
  545. homeassistant/components/telegram_bot/translations/sr-Latn.json +0 -12
  546. homeassistant/components/telegram_bot/translations/sv.json +0 -19
  547. homeassistant/components/telegram_bot/translations/tr.json +0 -13
  548. homeassistant/components/telegram_bot/translations/zh-Hans.json +0 -19
  549. homeassistant/components/telegram_bot/translations/zh-Hant.json +13 -19
  550. homeassistant/components/template/helpers.py +20 -10
  551. homeassistant/components/template/light.py +12 -18
  552. homeassistant/components/template/strings.json +1 -1
  553. homeassistant/components/template/translations/cs.json +1 -1
  554. homeassistant/components/template/translations/de.json +1 -1
  555. homeassistant/components/template/translations/el.json +0 -1
  556. homeassistant/components/template/translations/en-GB.json +1 -1
  557. homeassistant/components/template/translations/en.json +1 -1
  558. homeassistant/components/template/translations/es.json +0 -1
  559. homeassistant/components/template/translations/et.json +1 -1
  560. homeassistant/components/template/translations/ga.json +0 -1
  561. homeassistant/components/template/translations/he.json +3 -0
  562. homeassistant/components/template/translations/it.json +0 -1
  563. homeassistant/components/template/translations/lt.json +0 -1
  564. homeassistant/components/template/translations/pl.json +0 -1
  565. homeassistant/components/template/translations/pt.json +1 -1
  566. homeassistant/components/template/translations/sk.json +1 -1
  567. homeassistant/components/template/translations/sr-Latn.json +0 -1
  568. homeassistant/components/template/translations/tr.json +0 -1
  569. homeassistant/components/template/translations/zh-Hans.json +0 -1
  570. homeassistant/components/template/translations/zh-Hant.json +0 -1
  571. homeassistant/components/tesla_fleet/translations/he.json +5 -0
  572. homeassistant/components/teslemetry/services.py +3 -0
  573. homeassistant/components/teslemetry/strings.json +1 -1
  574. homeassistant/components/teslemetry/translations/bg.json +0 -1
  575. homeassistant/components/teslemetry/translations/cs.json +1 -1
  576. homeassistant/components/teslemetry/translations/de.json +1 -1
  577. homeassistant/components/teslemetry/translations/el.json +0 -1
  578. homeassistant/components/teslemetry/translations/en-GB.json +1 -1
  579. homeassistant/components/teslemetry/translations/en.json +1 -1
  580. homeassistant/components/teslemetry/translations/es.json +1 -1
  581. homeassistant/components/teslemetry/translations/et.json +1 -1
  582. homeassistant/components/teslemetry/translations/ga.json +0 -1
  583. homeassistant/components/teslemetry/translations/he.json +2 -2
  584. homeassistant/components/teslemetry/translations/hr.json +0 -1
  585. homeassistant/components/teslemetry/translations/hu.json +0 -1
  586. homeassistant/components/teslemetry/translations/ja.json +0 -1
  587. homeassistant/components/teslemetry/translations/lt.json +0 -1
  588. homeassistant/components/teslemetry/translations/pt.json +1 -1
  589. homeassistant/components/teslemetry/translations/ru.json +1 -1
  590. homeassistant/components/teslemetry/translations/sk.json +1 -1
  591. homeassistant/components/teslemetry/translations/sv.json +0 -1
  592. homeassistant/components/teslemetry/translations/tr.json +0 -1
  593. homeassistant/components/teslemetry/translations/zh-Hans.json +0 -1
  594. homeassistant/components/teslemetry/translations/zh-Hant.json +1 -1
  595. homeassistant/components/text/translations/cs.json +7 -1
  596. homeassistant/components/text/translations/en-GB.json +7 -1
  597. homeassistant/components/text/translations/es.json +1 -1
  598. homeassistant/components/text/translations/he.json +7 -1
  599. homeassistant/components/text/translations/lt.json +7 -1
  600. homeassistant/components/text/translations/pt.json +7 -1
  601. homeassistant/components/text/translations/ru.json +7 -1
  602. homeassistant/components/text/translations/sk.json +7 -1
  603. homeassistant/components/timer/translations/he.json +1 -1
  604. homeassistant/components/toon/translations/he.json +5 -0
  605. homeassistant/components/transmission/translations/he.json +1 -1
  606. homeassistant/components/tuya/climate.py +12 -0
  607. homeassistant/components/tuya/translations/he.json +10 -0
  608. homeassistant/components/twitch/translations/he.json +5 -0
  609. homeassistant/components/unifiprotect/manifest.json +1 -1
  610. homeassistant/components/unifiprotect/translations/el.json +6 -0
  611. homeassistant/components/unifiprotect/translations/lt.json +10 -0
  612. homeassistant/components/unifiprotect/translations/pt.json +10 -0
  613. homeassistant/components/unifiprotect/translations/zh-Hans.json +2 -1
  614. homeassistant/components/vacuum/translations/cs.json +12 -4
  615. homeassistant/components/vacuum/translations/en-GB.json +12 -4
  616. homeassistant/components/vacuum/translations/es.json +3 -3
  617. homeassistant/components/vacuum/translations/he.json +57 -2
  618. homeassistant/components/vacuum/translations/lt.json +12 -4
  619. homeassistant/components/vacuum/translations/pt.json +12 -4
  620. homeassistant/components/vacuum/translations/ru.json +20 -12
  621. homeassistant/components/vacuum/translations/sk.json +12 -4
  622. homeassistant/components/vacuum/translations/sv.json +14 -0
  623. homeassistant/components/venstar/translations/he.json +1 -1
  624. homeassistant/components/vesync/binary_sensor.py +1 -1
  625. homeassistant/components/vicare/translations/he.json +10 -0
  626. homeassistant/components/victron_ble/translations/he.json +17 -0
  627. homeassistant/components/volvo/translations/he.json +6 -1
  628. homeassistant/components/weheat/translations/he.json +5 -0
  629. homeassistant/components/withings/translations/he.json +5 -0
  630. homeassistant/components/wled/config_flow.py +5 -1
  631. homeassistant/components/wled/coordinator.py +9 -0
  632. homeassistant/components/wled/strings.json +10 -2
  633. homeassistant/components/wled/translations/cs.json +10 -2
  634. homeassistant/components/wled/translations/de.json +10 -2
  635. homeassistant/components/wled/translations/en-GB.json +10 -2
  636. homeassistant/components/wled/translations/en.json +10 -2
  637. homeassistant/components/wled/translations/es.json +10 -2
  638. homeassistant/components/wled/translations/et.json +10 -2
  639. homeassistant/components/wled/translations/ga.json +10 -2
  640. homeassistant/components/wled/translations/he.json +8 -2
  641. homeassistant/components/wled/translations/lt.json +10 -2
  642. homeassistant/components/wled/translations/pt.json +10 -2
  643. homeassistant/components/wled/translations/ru.json +10 -2
  644. homeassistant/components/wled/translations/sk.json +10 -2
  645. homeassistant/components/wled/translations/zh-Hans.json +10 -2
  646. homeassistant/components/wled/translations/zh-Hant.json +10 -2
  647. homeassistant/components/wled/update.py +1 -1
  648. homeassistant/components/xbox/browse_media.py +3 -1
  649. homeassistant/components/xbox/entity.py +10 -6
  650. homeassistant/components/xbox/media_source.py +2 -1
  651. homeassistant/components/xbox/sensor.py +3 -2
  652. homeassistant/components/xbox/translations/de.json +1 -1
  653. homeassistant/components/xbox/translations/he.json +10 -1
  654. homeassistant/components/xiaomi_aqara/config_flow.py +19 -3
  655. homeassistant/components/xiaomi_aqara/strings.json +2 -2
  656. homeassistant/components/xiaomi_aqara/translations/ca.json +0 -2
  657. homeassistant/components/xiaomi_aqara/translations/cs.json +2 -2
  658. homeassistant/components/xiaomi_aqara/translations/da.json +0 -4
  659. homeassistant/components/xiaomi_aqara/translations/de.json +2 -2
  660. homeassistant/components/xiaomi_aqara/translations/el.json +0 -2
  661. homeassistant/components/xiaomi_aqara/translations/en-GB.json +2 -2
  662. homeassistant/components/xiaomi_aqara/translations/en.json +2 -2
  663. homeassistant/components/xiaomi_aqara/translations/es.json +2 -2
  664. homeassistant/components/xiaomi_aqara/translations/et.json +2 -2
  665. homeassistant/components/xiaomi_aqara/translations/fi.json +0 -2
  666. homeassistant/components/xiaomi_aqara/translations/fr.json +0 -2
  667. homeassistant/components/xiaomi_aqara/translations/ga.json +0 -2
  668. homeassistant/components/xiaomi_aqara/translations/gl.json +1 -2
  669. homeassistant/components/xiaomi_aqara/translations/he.json +0 -2
  670. homeassistant/components/xiaomi_aqara/translations/hu.json +0 -2
  671. homeassistant/components/xiaomi_aqara/translations/id.json +0 -2
  672. homeassistant/components/xiaomi_aqara/translations/it.json +0 -2
  673. homeassistant/components/xiaomi_aqara/translations/ja.json +0 -2
  674. homeassistant/components/xiaomi_aqara/translations/ko.json +0 -2
  675. homeassistant/components/xiaomi_aqara/translations/lb.json +1 -2
  676. homeassistant/components/xiaomi_aqara/translations/lt.json +0 -2
  677. homeassistant/components/xiaomi_aqara/translations/nb.json +0 -1
  678. homeassistant/components/xiaomi_aqara/translations/nl.json +0 -2
  679. homeassistant/components/xiaomi_aqara/translations/pl.json +0 -2
  680. homeassistant/components/xiaomi_aqara/translations/pt-BR.json +0 -2
  681. homeassistant/components/xiaomi_aqara/translations/pt.json +2 -2
  682. homeassistant/components/xiaomi_aqara/translations/ro.json +0 -2
  683. homeassistant/components/xiaomi_aqara/translations/ru.json +2 -2
  684. homeassistant/components/xiaomi_aqara/translations/sk.json +2 -2
  685. homeassistant/components/xiaomi_aqara/translations/sl.json +0 -2
  686. homeassistant/components/xiaomi_aqara/translations/sr-Latn.json +6 -0
  687. homeassistant/components/xiaomi_aqara/translations/sv.json +0 -2
  688. homeassistant/components/xiaomi_aqara/translations/tr.json +0 -2
  689. homeassistant/components/xiaomi_aqara/translations/uk.json +0 -2
  690. homeassistant/components/xiaomi_aqara/translations/vi.json +0 -2
  691. homeassistant/components/xiaomi_aqara/translations/zh-Hans.json +0 -2
  692. homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
  693. homeassistant/components/yeelight/light.py +9 -1
  694. homeassistant/components/yeelight/strings.json +2 -2
  695. homeassistant/components/yeelight/translations/cs.json +3 -3
  696. homeassistant/components/yeelight/translations/de.json +3 -3
  697. homeassistant/components/yeelight/translations/el.json +0 -3
  698. homeassistant/components/yeelight/translations/en-GB.json +3 -3
  699. homeassistant/components/yeelight/translations/en.json +3 -3
  700. homeassistant/components/yeelight/translations/es.json +3 -3
  701. homeassistant/components/yeelight/translations/et.json +3 -3
  702. homeassistant/components/yeelight/translations/fi.json +0 -2
  703. homeassistant/components/yeelight/translations/fr.json +0 -3
  704. homeassistant/components/yeelight/translations/ga.json +0 -3
  705. homeassistant/components/yeelight/translations/gl.json +0 -2
  706. homeassistant/components/yeelight/translations/he.json +0 -3
  707. homeassistant/components/yeelight/translations/hu.json +0 -3
  708. homeassistant/components/yeelight/translations/it.json +0 -2
  709. homeassistant/components/yeelight/translations/ja.json +0 -3
  710. homeassistant/components/yeelight/translations/ko.json +0 -2
  711. homeassistant/components/yeelight/translations/lt.json +0 -3
  712. homeassistant/components/yeelight/translations/pt.json +3 -3
  713. homeassistant/components/yeelight/translations/ru.json +0 -3
  714. homeassistant/components/yeelight/translations/sk.json +3 -3
  715. homeassistant/components/yeelight/translations/sv.json +0 -3
  716. homeassistant/components/yeelight/translations/tr.json +0 -3
  717. homeassistant/components/yeelight/translations/vi.json +0 -2
  718. homeassistant/components/yeelight/translations/zh-Hans.json +0 -3
  719. homeassistant/components/yeelight/translations/zh-Hant.json +3 -3
  720. homeassistant/components/yolink/translations/he.json +5 -0
  721. homeassistant/components/youtube/translations/he.json +5 -0
  722. homeassistant/components/zha/config_flow.py +9 -6
  723. homeassistant/components/zha/radio_manager.py +2 -2
  724. homeassistant/components/zha/strings.json +5 -3
  725. homeassistant/components/zha/translations/cs.json +6 -4
  726. homeassistant/components/zha/translations/de.json +6 -4
  727. homeassistant/components/zha/translations/el.json +0 -8
  728. homeassistant/components/zha/translations/en-GB.json +6 -4
  729. homeassistant/components/zha/translations/en.json +6 -4
  730. homeassistant/components/zha/translations/es.json +6 -4
  731. homeassistant/components/zha/translations/et.json +6 -4
  732. homeassistant/components/zha/translations/fr.json +0 -3
  733. homeassistant/components/zha/translations/ga.json +2 -0
  734. homeassistant/components/zha/translations/he.json +1 -1
  735. homeassistant/components/zha/translations/hu.json +0 -3
  736. homeassistant/components/zha/translations/lt.json +0 -8
  737. homeassistant/components/zha/translations/nl.json +8 -0
  738. homeassistant/components/zha/translations/pt.json +6 -4
  739. homeassistant/components/zha/translations/ru.json +46 -8
  740. homeassistant/components/zha/translations/sk.json +6 -4
  741. homeassistant/components/zha/translations/sv.json +2 -0
  742. homeassistant/components/zha/translations/zh-Hans.json +2 -8
  743. homeassistant/components/zha/translations/zh-Hant.json +2 -8
  744. homeassistant/components/zwave_js/services.py +3 -0
  745. homeassistant/components/zwave_js/strings.json +2 -2
  746. homeassistant/components/zwave_js/translations/cs.json +2 -2
  747. homeassistant/components/zwave_js/translations/de.json +2 -2
  748. homeassistant/components/zwave_js/translations/el.json +0 -2
  749. homeassistant/components/zwave_js/translations/en-GB.json +2 -2
  750. homeassistant/components/zwave_js/translations/en.json +2 -2
  751. homeassistant/components/zwave_js/translations/es.json +2 -2
  752. homeassistant/components/zwave_js/translations/et.json +2 -2
  753. homeassistant/components/zwave_js/translations/ga.json +0 -2
  754. homeassistant/components/zwave_js/translations/hu.json +0 -2
  755. homeassistant/components/zwave_js/translations/ja.json +0 -2
  756. homeassistant/components/zwave_js/translations/lt.json +0 -2
  757. homeassistant/components/zwave_js/translations/pt.json +2 -2
  758. homeassistant/components/zwave_js/translations/ru.json +0 -2
  759. homeassistant/components/zwave_js/translations/sk.json +2 -2
  760. homeassistant/components/zwave_js/translations/sv.json +0 -2
  761. homeassistant/components/zwave_js/translations/tr.json +0 -2
  762. homeassistant/components/zwave_js/translations/vi.json +0 -2
  763. homeassistant/components/zwave_js/translations/zh-Hans.json +0 -2
  764. homeassistant/components/zwave_js/translations/zh-Hant.json +2 -2
  765. homeassistant/const.py +1 -1
  766. homeassistant/generated/integrations.json +2 -2
  767. homeassistant/generated/labs.py +2 -2
  768. homeassistant/loader.py +6 -0
  769. homeassistant/package_constraints.txt +3 -3
  770. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/METADATA +2 -2
  771. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/RECORD +776 -761
  772. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/WHEEL +0 -0
  773. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/entry_points.txt +0 -0
  774. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/licenses/LICENSE.md +0 -0
  775. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  776. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/top_level.txt +0 -0
@@ -9,7 +9,9 @@
9
9
  "oauth_error": "\u05d4\u05ea\u05e7\u05d1\u05dc\u05d5 \u05e0\u05ea\u05d5\u05e0\u05d9 \u05d0\u05e1\u05d9\u05de\u05d5\u05df \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9\u05d9\u05dd.",
10
10
  "oauth_failed": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e2\u05ea \u05e7\u05d1\u05dc\u05ea \u05d0\u05e1\u05d9\u05de\u05d5\u05df \u05d2\u05d9\u05e9\u05d4.",
11
11
  "oauth_timeout": "\u05d7\u05dc\u05e3 \u05d4\u05d6\u05de\u05df \u05dc\u05e4\u05ea\u05e8\u05d5\u05df \u05d0\u05e1\u05d9\u05de\u05d5\u05df OAuth.",
12
- "oauth_unauthorized": "\u05e9\u05d2\u05d9\u05d0\u05ea \u05d4\u05e8\u05e9\u05d0\u05ea OAuth \u05d1\u05e2\u05ea \u05d4\u05e9\u05d2\u05ea \u05d0\u05e1\u05d9\u05de\u05d5\u05df \u05d2\u05d9\u05e9\u05d4."
12
+ "oauth_unauthorized": "\u05e9\u05d2\u05d9\u05d0\u05ea \u05d4\u05e8\u05e9\u05d0\u05ea OAuth \u05d1\u05e2\u05ea \u05d4\u05e9\u05d2\u05ea \u05d0\u05e1\u05d9\u05de\u05d5\u05df \u05d2\u05d9\u05e9\u05d4.",
13
+ "reauth_successful": "\u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7",
14
+ "reconfigure_successful": "\u05e7\u05d1\u05d9\u05e2\u05ea \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4 \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7\u05d4"
13
15
  },
14
16
  "create_entry": {
15
17
  "default": "\u05d0\u05d5\u05de\u05ea \u05d1\u05d4\u05e6\u05dc\u05d7\u05d4"
@@ -23,7 +25,15 @@
23
25
  "implementation": "\u05d4\u05d0\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd \u05e9\u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05d4\u05dd \u05dc\u05d0\u05d9\u05de\u05d5\u05ea."
24
26
  },
25
27
  "title": "\u05d1\u05d7\u05d9\u05e8\u05ea \u05e9\u05d9\u05d8\u05ea \u05d0\u05d9\u05de\u05d5\u05ea"
28
+ },
29
+ "reauth_confirm": {
30
+ "title": "\u05e4\u05d2 \u05ea\u05d5\u05e7\u05e3 \u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05e2\u05d1\u05d5\u05e8 {name}"
26
31
  }
27
32
  }
33
+ },
34
+ "exceptions": {
35
+ "oauth2_implementation_unavailable": {
36
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
37
+ }
28
38
  }
29
39
  }
@@ -26,7 +26,7 @@
26
26
  "sensor": {
27
27
  "dsl_training": {
28
28
  "state": {
29
- "idle": "\u05d1\u05d4\u05de\u05ea\u05e0\u05d4"
29
+ "idle": "\u05de\u05e6\u05d1 \u05e1\u05e8\u05e7"
30
30
  }
31
31
  }
32
32
  }
@@ -6,5 +6,5 @@
6
6
  "documentation": "https://www.home-assistant.io/integrations/sharkiq",
7
7
  "iot_class": "cloud_polling",
8
8
  "loggers": ["sharkiq"],
9
- "requirements": ["sharkiq==1.4.2"]
9
+ "requirements": ["sharkiq==1.5.0"]
10
10
  }
@@ -44,6 +44,7 @@ from .entity import (
44
44
  )
45
45
  from .utils import (
46
46
  async_remove_orphaned_entities,
47
+ async_remove_shelly_entity,
47
48
  format_ble_addr,
48
49
  get_blu_trv_device_info,
49
50
  get_device_entry_gen,
@@ -80,6 +81,7 @@ BUTTONS: Final[list[ShellyButtonDescription[Any]]] = [
80
81
  device_class=ButtonDeviceClass.RESTART,
81
82
  entity_category=EntityCategory.CONFIG,
82
83
  press_action="trigger_reboot",
84
+ supported=lambda coordinator: coordinator.sleep_period == 0,
83
85
  ),
84
86
  ShellyButtonDescription[ShellyBlockCoordinator](
85
87
  key="self_test",
@@ -197,7 +199,8 @@ async def async_setup_entry(
197
199
  """Set up button entities."""
198
200
  entry_data = config_entry.runtime_data
199
201
  coordinator: ShellyRpcCoordinator | ShellyBlockCoordinator | None
200
- if get_device_entry_gen(config_entry) in RPC_GENERATIONS:
202
+ device_gen = get_device_entry_gen(config_entry)
203
+ if device_gen in RPC_GENERATIONS:
201
204
  coordinator = entry_data.rpc
202
205
  else:
203
206
  coordinator = entry_data.block
@@ -210,6 +213,12 @@ async def async_setup_entry(
210
213
  hass, config_entry.entry_id, partial(async_migrate_unique_ids, coordinator)
211
214
  )
212
215
 
216
+ # Remove the 'restart' button for sleeping devices as it was mistakenly
217
+ # added in https://github.com/home-assistant/core/pull/154673
218
+ entry_sleep_period = config_entry.data[CONF_SLEEP_PERIOD]
219
+ if device_gen in RPC_GENERATIONS and entry_sleep_period:
220
+ async_remove_shelly_entity(hass, BUTTON_PLATFORM, f"{coordinator.mac}-reboot")
221
+
213
222
  entities: list[ShellyButton] = []
214
223
 
215
224
  entities.extend(
@@ -224,7 +233,7 @@ async def async_setup_entry(
224
233
  return
225
234
 
226
235
  # add RPC buttons
227
- if config_entry.data[CONF_SLEEP_PERIOD]:
236
+ if entry_sleep_period:
228
237
  async_setup_entry_rpc(
229
238
  hass,
230
239
  config_entry,
@@ -546,6 +546,9 @@
546
546
  "child_lock": {
547
547
  "name": "Glas leana\u00ed"
548
548
  },
549
+ "cury_away_mode": {
550
+ "name": "M\u00f3d as baile"
551
+ },
549
552
  "frost_protection": {
550
553
  "name": "Cosaint sioc"
551
554
  },
@@ -578,6 +581,11 @@
578
581
  "beta_firmware": {
579
582
  "name": "Dochtearra\u00ed b\u00e9ite"
580
583
  }
584
+ },
585
+ "valve": {
586
+ "gas_valve": {
587
+ "name": "Comhla"
588
+ }
581
589
  }
582
590
  },
583
591
  "exceptions": {
@@ -2,7 +2,11 @@
2
2
  "config": {
3
3
  "abort": {
4
4
  "already_configured": "\u05ea\u05e6\u05d5\u05e8\u05ea \u05d4\u05d4\u05ea\u05e7\u05df \u05db\u05d1\u05e8 \u05e0\u05e7\u05d1\u05e2\u05d4",
5
+ "cannot_connect": "\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05dc\u05d4\u05ea\u05e7\u05df \u05e0\u05db\u05e9\u05dc\u05d4, \u05d5\u05d5\u05d3\u05d0 \u05e9\u05d4\u05d4\u05ea\u05e7\u05df \u05d3\u05d5\u05dc\u05e7 \u05d5\u05d1\u05d8\u05d5\u05d5\u05d7.",
6
+ "ipv6_not_supported": "\u05d0\u05d9\u05df \u05ea\u05de\u05d9\u05db\u05d4 \u05d1-IPv6",
7
+ "no_wifi_networks": "\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d5 \u05e8\u05e9\u05ea\u05d5\u05ea WiFi \u05d1\u05d6\u05de\u05df \u05d4\u05e1\u05e8\u05d9\u05e7\u05d4",
5
8
  "reauth_successful": "\u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7",
9
+ "reauth_unsuccessful": "\u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05e0\u05db\u05e9\u05dc, \u05d1\u05d1\u05e7\u05e9\u05d4 \u05d4\u05e1\u05e8 \u05d0\u05ea \u05d4\u05d0\u05d9\u05e0\u05d8\u05d2\u05e8\u05e6\u05d9\u05d4 \u05d5\u05d4\u05d2\u05d3\u05e8 \u05d0\u05d5\u05ea\u05d4 \u05e9\u05d5\u05d1",
6
10
  "reconfigure_successful": "\u05e7\u05d1\u05d9\u05e2\u05ea \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4 \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7\u05d4",
7
11
  "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
8
12
  },
@@ -31,6 +35,26 @@
31
35
  "host": "\u05de\u05d0\u05e8\u05d7",
32
36
  "port": "\u05e4\u05ea\u05d7\u05d4"
33
37
  }
38
+ },
39
+ "user": {
40
+ "data": {
41
+ "device": "\u05d4\u05ea\u05e7\u05df"
42
+ }
43
+ },
44
+ "user_manual": {
45
+ "data": {
46
+ "host": "\u05de\u05d0\u05e8\u05d7",
47
+ "port": "\u05e4\u05ea\u05d7\u05d4"
48
+ }
49
+ },
50
+ "wifi_scan": {
51
+ "data": {
52
+ "password": "\u05e1\u05d9\u05e1\u05de\u05d4",
53
+ "ssid": "\u05e8\u05e9\u05ea WiFi"
54
+ },
55
+ "data_description": {
56
+ "password": "\u05e1\u05d9\u05e1\u05de\u05d4 \u05dc\u05e8\u05e9\u05ea \u05d4-WiFi"
57
+ }
34
58
  }
35
59
  }
36
60
  },
@@ -59,6 +83,66 @@
59
83
  }
60
84
  },
61
85
  "entity": {
86
+ "binary_sensor": {
87
+ "cable_unplugged": {
88
+ "name": "\u05db\u05d1\u05dc \u05de\u05e0\u05d5\u05ea\u05e7"
89
+ },
90
+ "calibration": {
91
+ "name": "\u05db\u05d9\u05d5\u05dc"
92
+ },
93
+ "cloud": {
94
+ "name": "\u05e2\u05e0\u05df"
95
+ },
96
+ "door": {
97
+ "name": "\u05d3\u05dc\u05ea"
98
+ },
99
+ "external_input": {
100
+ "name": "\u05db\u05e0\u05d9\u05e1\u05d4 \u05d7\u05d9\u05e6\u05d5\u05e0\u05d9\u05ea"
101
+ },
102
+ "flood": {
103
+ "name": "\u05d4\u05e6\u05e4\u05d4"
104
+ },
105
+ "flood_with_channel_name": {
106
+ "name": "\u05d4\u05e6\u05e4\u05d4 {channel_name}"
107
+ },
108
+ "input": {
109
+ "name": "\u05db\u05e0\u05d9\u05e1\u05d4"
110
+ },
111
+ "mute": {
112
+ "name": "\u05d4\u05e9\u05ea\u05e7\u05d4"
113
+ },
114
+ "overcurrent": {
115
+ "name": "\u05d6\u05e8\u05dd \u05d9\u05ea\u05e8"
116
+ },
117
+ "overvoltage": {
118
+ "name": "\u05de\u05ea\u05d7 \u05d9\u05ea\u05e8"
119
+ }
120
+ },
121
+ "button": {
122
+ "calibrate": {
123
+ "name": "\u05db\u05d9\u05d5\u05dc"
124
+ },
125
+ "close": {
126
+ "name": "\u05e1\u05d2\u05d5\u05e8"
127
+ },
128
+ "open": {
129
+ "name": "\u05e4\u05ea\u05d7"
130
+ },
131
+ "self_test": {
132
+ "name": "\u05d1\u05d3\u05d9\u05e7\u05d4 \u05e2\u05e6\u05de\u05d9\u05ea"
133
+ }
134
+ },
135
+ "climate": {
136
+ "thermostat": {
137
+ "state_attributes": {
138
+ "preset_mode": {
139
+ "state": {
140
+ "frost_protection": "\u05d4\u05d2\u05e0\u05ea \u05e7\u05e4\u05d9\u05d0\u05d4"
141
+ }
142
+ }
143
+ }
144
+ }
145
+ },
62
146
  "event": {
63
147
  "input": {
64
148
  "state_attributes": {
@@ -81,7 +165,18 @@
81
165
  }
82
166
  }
83
167
  },
168
+ "number": {
169
+ "current_limit": {
170
+ "name": "\u05d4\u05d2\u05d1\u05dc\u05ea \u05d6\u05e8\u05dd"
171
+ },
172
+ "valve_position": {
173
+ "name": "\u05de\u05d9\u05e7\u05d5\u05dd \u05d1\u05e8\u05d6"
174
+ }
175
+ },
84
176
  "sensor": {
177
+ "average_temperature": {
178
+ "name": "\u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05d4 \u05de\u05de\u05d5\u05e6\u05e2\u05ea"
179
+ },
85
180
  "charger_state": {
86
181
  "state": {
87
182
  "charger_charging": "\u05d8\u05e2\u05d9\u05e0\u05d4",
@@ -89,6 +184,9 @@
89
184
  "charger_insert": "\u05de\u05d7\u05d5\u05d1\u05e8"
90
185
  }
91
186
  },
187
+ "device_temperature": {
188
+ "name": "\u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05d4\u05ea\u05e7\u05df"
189
+ },
92
190
  "operation": {
93
191
  "state": {
94
192
  "fault": "\u05ea\u05e7\u05dc\u05d4",
@@ -105,6 +203,28 @@
105
203
  "opened": "\u05e0\u05e4\u05ea\u05d7",
106
204
  "opening": "\u05e4\u05d5\u05ea\u05d7"
107
205
  }
206
+ },
207
+ "water_consumption": {
208
+ "name": "\u05e6\u05e8\u05d9\u05db\u05ea \u05de\u05d9\u05dd"
209
+ },
210
+ "water_flow_rate": {
211
+ "name": "\u05e1\u05e4\u05d9\u05e7\u05ea \u05de\u05d9\u05dd"
212
+ },
213
+ "water_pressure": {
214
+ "name": "\u05dc\u05d7\u05e5 \u05de\u05d9\u05dd"
215
+ },
216
+ "water_temperature": {
217
+ "name": "\u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05de\u05d9\u05dd"
218
+ }
219
+ },
220
+ "switch": {
221
+ "zone_with_number": {
222
+ "name": "\u05d0\u05d6\u05d5\u05e8 {zone_number}"
223
+ }
224
+ },
225
+ "valve": {
226
+ "gas_valve": {
227
+ "name": "\u05d1\u05e8\u05d6"
108
228
  }
109
229
  }
110
230
  },
@@ -126,6 +246,13 @@
126
246
  "device_not_calibrated": {
127
247
  "title": "\u05d4\u05ea\u05e7\u05df \u05e9\u05dc\u05d9 {device_name} \u05d0\u05d9\u05e0\u05d5 \u05de\u05db\u05d5\u05d9\u05dc"
128
248
  },
249
+ "open_wifi_ap": {
250
+ "fix_flow": {
251
+ "abort": {
252
+ "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4"
253
+ }
254
+ }
255
+ },
129
256
  "outbound_websocket_incorrectly_enabled": {
130
257
  "fix_flow": {
131
258
  "abort": {
@@ -147,6 +274,11 @@
147
274
  "disabled": "\u05de\u05d5\u05e9\u05d1\u05ea",
148
275
  "passive": "\u05e4\u05e1\u05d9\u05d1\u05d9"
149
276
  }
277
+ },
278
+ "device": {
279
+ "options": {
280
+ "manual": "\u05d4\u05db\u05e0\u05e1 \u05db\u05ea\u05d5\u05d1\u05ea \u05d9\u05d3\u05e0\u05d9\u05ea"
281
+ }
150
282
  }
151
283
  }
152
284
  }
@@ -136,6 +136,9 @@
136
136
  "state": {
137
137
  "alarm": "Alarma"
138
138
  }
139
+ },
140
+ "next_alarm": {
141
+ "name": "Siguiente alarma"
139
142
  }
140
143
  }
141
144
  }
@@ -154,6 +154,13 @@
154
154
  "low": "\u05e0\u05de\u05d5\u05da",
155
155
  "medium": "\u05d1\u05d9\u05e0\u05d5\u05e0\u05d9"
156
156
  }
157
+ },
158
+ "water_temperature": {
159
+ "state": {
160
+ "high": "\u05d2\u05d1\u05d5\u05d4",
161
+ "low": "\u05e0\u05de\u05d5\u05da",
162
+ "medium": "\u05d1\u05d9\u05e0\u05d5\u05e0\u05d9"
163
+ }
157
164
  }
158
165
  },
159
166
  "sensor": {
@@ -384,7 +391,7 @@
384
391
  "charging": "\u05d8\u05e2\u05d9\u05e0\u05d4",
385
392
  "cleaning": "\u05de\u05e0\u05e7\u05d4",
386
393
  "homing": "\u05d1\u05d9\u05d5\u05ea",
387
- "idle": "\u05d1\u05d4\u05de\u05ea\u05e0\u05d4",
394
+ "idle": "\u05de\u05e6\u05d1 \u05e1\u05e8\u05e7",
388
395
  "off": "\u05db\u05d1\u05d5\u05d9",
389
396
  "pause": "\u05de\u05d5\u05e9\u05d4\u05d4",
390
397
  "point": "\u05e0\u05e7\u05d5\u05d3\u05d4",
@@ -440,6 +447,12 @@
440
447
  "stop": "\u05e2\u05e6\u05e8"
441
448
  }
442
449
  },
450
+ "washer_sub_machine_state": {
451
+ "state": {
452
+ "pause": "\u05de\u05d5\u05e9\u05d4\u05d4",
453
+ "stop": "\u05e2\u05e6\u05e8"
454
+ }
455
+ },
443
456
  "water_consumption": {
444
457
  "name": "\u05e6\u05e8\u05d9\u05db\u05ea \u05d4\u05de\u05d9\u05dd"
445
458
  },
@@ -465,6 +478,11 @@
465
478
  }
466
479
  }
467
480
  },
481
+ "exceptions": {
482
+ "oauth2_implementation_unavailable": {
483
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
484
+ }
485
+ },
468
486
  "issues": {
469
487
  "deprecated_media_player": {
470
488
  "title": "\u05d7\u05d9\u05d9\u05e9\u05e0\u05d9 \u05e0\u05d2\u05df \u05de\u05d3\u05d9\u05d4 \u05d4\u05d5\u05e6\u05d0\u05d5 \u05de\u05e9\u05d9\u05de\u05d5\u05e9"
@@ -24,5 +24,10 @@
24
24
  "title": "\u05e4\u05d2 \u05ea\u05d5\u05e7\u05e3 \u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05e2\u05d1\u05d5\u05e8 {name}"
25
25
  }
26
26
  }
27
+ },
28
+ "exceptions": {
29
+ "oauth2_implementation_unavailable": {
30
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
31
+ }
27
32
  }
28
33
  }
@@ -72,7 +72,6 @@ class StarlinkUpdateCoordinator(DataUpdateCoordinator[StarlinkData]):
72
72
  def _get_starlink_data(self) -> StarlinkData:
73
73
  """Retrieve Starlink data."""
74
74
  context = self.channel_context
75
- status = status_data(context)
76
75
  location = location_data(context)
77
76
  sleep = get_sleep_config(context)
78
77
  status, obstruction, alert = status_data(context)
@@ -28,6 +28,7 @@ from homeassistant.core import HomeAssistant
28
28
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
29
29
  from homeassistant.helpers.typing import StateType
30
30
  from homeassistant.util.dt import now
31
+ from homeassistant.util.variance import ignore_variance
31
32
 
32
33
  from .coordinator import StarlinkConfigEntry, StarlinkData
33
34
  from .entity import StarlinkEntity
@@ -91,6 +92,10 @@ class StarlinkAccumulationSensor(StarlinkSensorEntity, RestoreSensor):
91
92
  self._attr_native_value = last_native_value
92
93
 
93
94
 
95
+ uptime_to_stable_datetime = ignore_variance(
96
+ lambda value: now() - timedelta(seconds=value), timedelta(minutes=1)
97
+ )
98
+
94
99
  SENSORS: tuple[StarlinkSensorEntityDescription, ...] = (
95
100
  StarlinkSensorEntityDescription(
96
101
  key="ping",
@@ -150,9 +155,7 @@ SENSORS: tuple[StarlinkSensorEntityDescription, ...] = (
150
155
  translation_key="last_restart",
151
156
  device_class=SensorDeviceClass.TIMESTAMP,
152
157
  entity_category=EntityCategory.DIAGNOSTIC,
153
- value_fn=lambda data: (
154
- now() - timedelta(seconds=data.status["uptime"], milliseconds=-500)
155
- ).replace(microsecond=0),
158
+ value_fn=lambda data: uptime_to_stable_datetime(data.status["uptime"]),
156
159
  entity_class=StarlinkSensorEntity,
157
160
  ),
158
161
  StarlinkSensorEntityDescription(
@@ -27,6 +27,18 @@
27
27
  }
28
28
  },
29
29
  "entity": {
30
+ "climate": {
31
+ "climate": {
32
+ "state_attributes": {
33
+ "preset_mode": {
34
+ "state": {
35
+ "manual": "\u05d9\u05d3\u05e0\u05d9",
36
+ "off": "\u05db\u05d1\u05d5\u05d9"
37
+ }
38
+ }
39
+ }
40
+ }
41
+ },
30
42
  "cover": {
31
43
  "cover": {
32
44
  "state_attributes": {
@@ -5,6 +5,7 @@
5
5
  "config_flow": true,
6
6
  "dependencies": ["http", "webhook"],
7
7
  "documentation": "https://www.home-assistant.io/integrations/tedee",
8
+ "integration_type": "hub",
8
9
  "iot_class": "local_push",
9
10
  "loggers": ["aiotedee"],
10
11
  "quality_scale": "platinum",
@@ -524,6 +524,9 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
524
524
  async_send_telegram_message,
525
525
  schema=schema,
526
526
  supports_response=supports_response,
527
+ description_placeholders={
528
+ "formatting_options_url": "https://core.telegram.org/bots/api#formatting-options"
529
+ },
527
530
  )
528
531
 
529
532
  return True
@@ -64,6 +64,12 @@ from .const import (
64
64
 
65
65
  _LOGGER = logging.getLogger(__name__)
66
66
 
67
+ DESCRIPTION_PLACEHOLDERS: dict[str, str] = {
68
+ "botfather_username": "@BotFather",
69
+ "botfather_url": "https://t.me/botfather",
70
+ "socks_url": "socks5://username:password@proxy_ip:proxy_port",
71
+ }
72
+
67
73
  STEP_USER_DATA_SCHEMA: vol.Schema = vol.Schema(
68
74
  {
69
75
  vol.Required(CONF_PLATFORM): SelectSelector(
@@ -310,10 +316,7 @@ class TelgramBotConfigFlow(ConfigFlow, domain=DOMAIN):
310
316
  ) -> ConfigFlowResult:
311
317
  """Handle a flow to create a new config entry for a Telegram bot."""
312
318
 
313
- description_placeholders: dict[str, str] = {
314
- "botfather_username": "@BotFather",
315
- "botfather_url": "https://t.me/botfather",
316
- }
319
+ description_placeholders: dict[str, str] = DESCRIPTION_PLACEHOLDERS.copy()
317
320
  if not user_input:
318
321
  return self.async_show_form(
319
322
  step_id="user",
@@ -552,13 +555,14 @@ class TelgramBotConfigFlow(ConfigFlow, domain=DOMAIN):
552
555
  },
553
556
  },
554
557
  ),
558
+ description_placeholders=DESCRIPTION_PLACEHOLDERS,
555
559
  )
556
560
  user_input[CONF_PROXY_URL] = user_input[SECTION_ADVANCED_SETTINGS].get(
557
561
  CONF_PROXY_URL
558
562
  )
559
563
 
560
564
  errors: dict[str, str] = {}
561
- description_placeholders: dict[str, str] = {}
565
+ description_placeholders: dict[str, str] = DESCRIPTION_PLACEHOLDERS.copy()
562
566
 
563
567
  user_input[CONF_API_KEY] = api_key
564
568
  bot_name = await self._validate_bot(
@@ -60,7 +60,7 @@
60
60
  "proxy_url": "Proxy URL"
61
61
  },
62
62
  "data_description": {
63
- "proxy_url": "Proxy URL if working behind one, optionally including username and password.\n(socks5://username:password@proxy_ip:proxy_port)"
63
+ "proxy_url": "Proxy URL if working behind one, optionally including username and password.\n({socks_url})"
64
64
  },
65
65
  "name": "Advanced settings"
66
66
  }
@@ -400,7 +400,7 @@
400
400
  "name": "[%key:component::telegram_bot::services::send_photo::fields::authentication::name%]"
401
401
  },
402
402
  "caption": {
403
- "description": "The title of the media.",
403
+ "description": "[%key:component::telegram_bot::services::send_photo::fields::caption::description%]",
404
404
  "name": "[%key:component::telegram_bot::services::send_photo::fields::caption::name%]"
405
405
  },
406
406
  "chat_id": {
@@ -499,7 +499,7 @@
499
499
  "name": "[%key:component::telegram_bot::services::send_photo::fields::authentication::name%]"
500
500
  },
501
501
  "caption": {
502
- "description": "The title of the animation.",
502
+ "description": "[%key:component::telegram_bot::services::send_photo::fields::caption::description%]",
503
503
  "name": "[%key:component::telegram_bot::services::send_photo::fields::caption::name%]"
504
504
  },
505
505
  "config_entry_id": {
@@ -600,7 +600,7 @@
600
600
  "name": "[%key:component::telegram_bot::services::send_photo::fields::authentication::name%]"
601
601
  },
602
602
  "caption": {
603
- "description": "The title of the document.",
603
+ "description": "[%key:component::telegram_bot::services::send_photo::fields::caption::description%]",
604
604
  "name": "[%key:component::telegram_bot::services::send_photo::fields::caption::name%]"
605
605
  },
606
606
  "config_entry_id": {
@@ -745,7 +745,7 @@
745
745
  "name": "Keyboard"
746
746
  },
747
747
  "message": {
748
- "description": "Message body of the notification.",
748
+ "description": "Message body of the notification.\nCan't parse entities? Format your message according to the [formatting options]({formatting_options_url}).",
749
749
  "name": "Message"
750
750
  },
751
751
  "message_tag": {
@@ -757,7 +757,7 @@
757
757
  "name": "Message thread ID"
758
758
  },
759
759
  "parse_mode": {
760
- "description": "Parser for the message text.",
760
+ "description": "Parser for the message text.\nSee [formatting options]({formatting_options_url}) for more details.",
761
761
  "name": "Parse mode"
762
762
  },
763
763
  "reply_to_message_id": {
@@ -787,7 +787,7 @@
787
787
  "name": "Authentication method"
788
788
  },
789
789
  "caption": {
790
- "description": "The title of the image.",
790
+ "description": "The title of the media.\nCan't parse entities? Format your message according to the [formatting options]({formatting_options_url}).",
791
791
  "name": "Caption"
792
792
  },
793
793
  "config_entry_id": {
@@ -991,7 +991,7 @@
991
991
  "name": "[%key:component::telegram_bot::services::send_photo::fields::authentication::name%]"
992
992
  },
993
993
  "caption": {
994
- "description": "The title of the video.",
994
+ "description": "[%key:component::telegram_bot::services::send_photo::fields::caption::description%]",
995
995
  "name": "[%key:component::telegram_bot::services::send_photo::fields::caption::name%]"
996
996
  },
997
997
  "config_entry_id": {
@@ -1070,7 +1070,7 @@
1070
1070
  "name": "[%key:component::telegram_bot::services::send_photo::fields::authentication::name%]"
1071
1071
  },
1072
1072
  "caption": {
1073
- "description": "The title of the voice message.",
1073
+ "description": "[%key:component::telegram_bot::services::send_photo::fields::caption::description%]",
1074
1074
  "name": "[%key:component::telegram_bot::services::send_photo::fields::caption::name%]"
1075
1075
  },
1076
1076
  "config_entry_id": {
@@ -209,9 +209,6 @@
209
209
  },
210
210
  "send_animation": {
211
211
  "fields": {
212
- "caption": {
213
- "description": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435\u0442\u043e \u043d\u0430 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u044f\u0442\u0430."
214
- },
215
212
  "config_entry_id": {
216
213
  "description": "\u0417\u0430\u043f\u0438\u0441\u044a\u0442 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430\u0449 \u0431\u043e\u0442\u0430 \u043d\u0430 Telegram \u0437\u0430 \u0438\u0437\u043f\u0440\u0430\u0449\u0430\u043d\u0435 \u043d\u0430 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u044f\u0442\u0430.",
217
214
  "name": "ID \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u0430 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430"
@@ -320,7 +317,6 @@
320
317
  "name": "\u041a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430"
321
318
  },
322
319
  "message": {
323
- "description": "\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0442\u0435\u043a\u0441\u0442 \u043d\u0430 \u0438\u0437\u0432\u0435\u0441\u0442\u0438\u0435\u0442\u043e.",
324
320
  "name": "\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435"
325
321
  },
326
322
  "target": {
@@ -454,9 +450,6 @@
454
450
  },
455
451
  "send_voice": {
456
452
  "fields": {
457
- "caption": {
458
- "description": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435\u0442\u043e \u043d\u0430 \u0433\u043b\u0430\u0441\u043e\u0432\u043e\u0442\u043e \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435."
459
- },
460
453
  "config_entry_id": {
461
454
  "name": "ID \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u0430 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430"
462
455
  },