homeassistant 2025.9.0b5__py3-none-any.whl → 2025.9.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 (438) hide show
  1. homeassistant/components/ai_task/translations/es.json +23 -1
  2. homeassistant/components/airgradient/translations/es.json +2 -1
  3. homeassistant/components/airos/translations/es.json +35 -1
  4. homeassistant/components/airq/translations/es.json +5 -0
  5. homeassistant/components/aladdin_connect/translations/es.json +30 -1
  6. homeassistant/components/alarm_control_panel/translations/es.json +1 -1
  7. homeassistant/components/alexa_devices/translations/es.json +52 -1
  8. homeassistant/components/alexa_devices/translations/zh-Hans.json +12 -2
  9. homeassistant/components/androidtv_remote/translations/bg.json +0 -1
  10. homeassistant/components/androidtv_remote/translations/ca.json +0 -1
  11. homeassistant/components/androidtv_remote/translations/cs.json +0 -1
  12. homeassistant/components/androidtv_remote/translations/de.json +1 -1
  13. homeassistant/components/androidtv_remote/translations/el.json +0 -1
  14. homeassistant/components/androidtv_remote/translations/en-GB.json +1 -1
  15. homeassistant/components/androidtv_remote/translations/en.json +1 -1
  16. homeassistant/components/androidtv_remote/translations/es.json +0 -1
  17. homeassistant/components/androidtv_remote/translations/fi.json +0 -1
  18. homeassistant/components/androidtv_remote/translations/fr.json +0 -1
  19. homeassistant/components/androidtv_remote/translations/ga.json +0 -1
  20. homeassistant/components/androidtv_remote/translations/gl.json +0 -1
  21. homeassistant/components/androidtv_remote/translations/he.json +0 -1
  22. homeassistant/components/androidtv_remote/translations/hu.json +0 -1
  23. homeassistant/components/androidtv_remote/translations/id.json +0 -1
  24. homeassistant/components/androidtv_remote/translations/it.json +0 -1
  25. homeassistant/components/androidtv_remote/translations/ja.json +0 -1
  26. homeassistant/components/androidtv_remote/translations/ko.json +0 -1
  27. homeassistant/components/androidtv_remote/translations/lt.json +0 -1
  28. homeassistant/components/androidtv_remote/translations/lv.json +0 -1
  29. homeassistant/components/androidtv_remote/translations/nl.json +0 -1
  30. homeassistant/components/androidtv_remote/translations/pl.json +0 -1
  31. homeassistant/components/androidtv_remote/translations/pt-BR.json +0 -1
  32. homeassistant/components/androidtv_remote/translations/pt.json +0 -1
  33. homeassistant/components/androidtv_remote/translations/ro.json +0 -1
  34. homeassistant/components/androidtv_remote/translations/ru.json +0 -1
  35. homeassistant/components/androidtv_remote/translations/sk.json +0 -1
  36. homeassistant/components/androidtv_remote/translations/sl.json +0 -1
  37. homeassistant/components/androidtv_remote/translations/sv.json +0 -1
  38. homeassistant/components/androidtv_remote/translations/tr.json +0 -1
  39. homeassistant/components/androidtv_remote/translations/uk.json +0 -1
  40. homeassistant/components/androidtv_remote/translations/zh-Hans.json +0 -1
  41. homeassistant/components/apcupsd/translations/es.json +3 -3
  42. homeassistant/components/apsystems/translations/de.json +1 -1
  43. homeassistant/components/bayesian/translations/es.json +257 -0
  44. homeassistant/components/bayesian/translations/lt.json +14 -4
  45. homeassistant/components/blue_current/translations/sl.json +1 -0
  46. homeassistant/components/bmw_connected_drive/manifest.json +1 -1
  47. homeassistant/components/bmw_connected_drive/translations/cs.json +1 -1
  48. homeassistant/components/bosch_alarm/translations/es.json +3 -0
  49. homeassistant/components/bsblan/translations/es.json +14 -0
  50. homeassistant/components/coinbase/translations/es.json +10 -1
  51. homeassistant/components/conversation/default_agent.py +4 -6
  52. homeassistant/components/conversation/manifest.json +1 -1
  53. homeassistant/components/deconz/entity.py +1 -1
  54. homeassistant/components/deconz/hub/hub.py +1 -12
  55. homeassistant/components/deconz/light.py +1 -1
  56. homeassistant/components/deconz/services.py +2 -11
  57. homeassistant/components/device_tracker/translations/ga.json +7 -1
  58. homeassistant/components/dsmr/translations/ga.json +5 -0
  59. homeassistant/components/dsmr_reader/translations/es.json +3 -3
  60. homeassistant/components/dsmr_reader/translations/ga.json +15 -0
  61. homeassistant/components/elgato/translations/es.json +1 -1
  62. homeassistant/components/elkm1/translations/de.json +1 -1
  63. homeassistant/components/enphase_envoy/translations/es.json +8 -2
  64. homeassistant/components/fan/strings.json +3 -0
  65. homeassistant/components/fan/translations/de.json +3 -0
  66. homeassistant/components/fan/translations/en-GB.json +3 -0
  67. homeassistant/components/fan/translations/en.json +3 -0
  68. homeassistant/components/fan/translations/es.json +3 -0
  69. homeassistant/components/fan/translations/et.json +3 -0
  70. homeassistant/components/fan/translations/ga.json +3 -0
  71. homeassistant/components/fan/translations/lt.json +3 -0
  72. homeassistant/components/fan/translations/zh-Hans.json +3 -0
  73. homeassistant/components/fan/translations/zh-Hant.json +3 -0
  74. homeassistant/components/firmata/translations/ga.json +7 -0
  75. homeassistant/components/fivem/translations/ga.json +15 -0
  76. homeassistant/components/flipr/translations/ga.json +9 -0
  77. homeassistant/components/flo/translations/ga.json +44 -0
  78. homeassistant/components/foscam/translations/es.json +40 -1
  79. homeassistant/components/fritz/strings.json +2 -2
  80. homeassistant/components/fritz/translations/bg.json +0 -4
  81. homeassistant/components/fritz/translations/ca.json +1 -7
  82. homeassistant/components/fritz/translations/cs.json +3 -7
  83. homeassistant/components/fritz/translations/de.json +4 -4
  84. homeassistant/components/fritz/translations/el.json +2 -9
  85. homeassistant/components/fritz/translations/en-GB.json +5 -5
  86. homeassistant/components/fritz/translations/en.json +5 -5
  87. homeassistant/components/fritz/translations/es.json +5 -5
  88. homeassistant/components/fritz/translations/et.json +4 -4
  89. homeassistant/components/fritz/translations/fi.json +1 -6
  90. homeassistant/components/fritz/translations/fr.json +1 -2
  91. homeassistant/components/fritz/translations/ga.json +20 -9
  92. homeassistant/components/fritz/translations/hu.json +2 -9
  93. homeassistant/components/fritz/translations/id.json +1 -6
  94. homeassistant/components/fritz/translations/it.json +2 -9
  95. homeassistant/components/fritz/translations/ja.json +2 -9
  96. homeassistant/components/fritz/translations/ko.json +1 -6
  97. homeassistant/components/fritz/translations/lt.json +3 -7
  98. homeassistant/components/fritz/translations/nb.json +1 -2
  99. homeassistant/components/fritz/translations/nl.json +1 -5
  100. homeassistant/components/fritz/translations/pl.json +1 -2
  101. homeassistant/components/fritz/translations/pt-BR.json +1 -2
  102. homeassistant/components/fritz/translations/pt.json +2 -9
  103. homeassistant/components/fritz/translations/ro.json +1 -2
  104. homeassistant/components/fritz/translations/ru.json +2 -9
  105. homeassistant/components/fritz/translations/sk.json +2 -9
  106. homeassistant/components/fritz/translations/sv.json +2 -9
  107. homeassistant/components/fritz/translations/tr.json +2 -9
  108. homeassistant/components/fritz/translations/uk.json +1 -2
  109. homeassistant/components/fritz/translations/zh-Hans.json +4 -4
  110. homeassistant/components/fritz/translations/zh-Hant.json +5 -5
  111. homeassistant/components/fritzbox/translations/es.json +3 -1
  112. homeassistant/components/fritzbox/translations/ga.json +40 -3
  113. homeassistant/components/fritzbox_callmonitor/translations/es.json +2 -1
  114. homeassistant/components/fritzbox_callmonitor/translations/ga.json +15 -0
  115. homeassistant/components/fritzbox_callmonitor/translations/ru.json +2 -1
  116. homeassistant/components/fronius/translations/es.json +9 -9
  117. homeassistant/components/frontend/manifest.json +1 -1
  118. homeassistant/components/fully_kiosk/translations/ga.json +40 -0
  119. homeassistant/components/fyta/translations/es.json +64 -2
  120. homeassistant/components/generic/translations/ga.json +6 -0
  121. homeassistant/components/geo_json_events/translations/ga.json +9 -0
  122. homeassistant/components/geo_location/translations/ga.json +6 -1
  123. homeassistant/components/geocaching/translations/ga.json +36 -2
  124. homeassistant/components/goalzero/translations/ga.json +17 -2
  125. homeassistant/components/gogogate2/translations/ga.json +23 -0
  126. homeassistant/components/goodwe/translations/ga.json +33 -0
  127. homeassistant/components/google_sheets/translations/ga.json +16 -1
  128. homeassistant/components/google_translate/translations/ga.json +15 -0
  129. homeassistant/components/google_travel_time/translations/ga.json +29 -5
  130. homeassistant/components/govee_ble/translations/ga.json +1 -0
  131. homeassistant/components/group/translations/es.json +8 -0
  132. homeassistant/components/group/translations/ga.json +52 -16
  133. homeassistant/components/growatt_server/strings.json +2 -2
  134. homeassistant/components/growatt_server/translations/ca.json +0 -6
  135. homeassistant/components/growatt_server/translations/cs.json +2 -2
  136. homeassistant/components/growatt_server/translations/de.json +2 -2
  137. homeassistant/components/growatt_server/translations/el.json +0 -6
  138. homeassistant/components/growatt_server/translations/en-GB.json +2 -2
  139. homeassistant/components/growatt_server/translations/en.json +2 -2
  140. homeassistant/components/growatt_server/translations/es.json +11 -11
  141. homeassistant/components/growatt_server/translations/et.json +1 -1
  142. homeassistant/components/growatt_server/translations/fi.json +0 -6
  143. homeassistant/components/growatt_server/translations/fr.json +0 -3
  144. homeassistant/components/growatt_server/translations/ga.json +85 -3
  145. homeassistant/components/growatt_server/translations/gl.json +0 -3
  146. homeassistant/components/growatt_server/translations/hu.json +0 -6
  147. homeassistant/components/growatt_server/translations/id.json +0 -6
  148. homeassistant/components/growatt_server/translations/it.json +0 -6
  149. homeassistant/components/growatt_server/translations/ja.json +0 -6
  150. homeassistant/components/growatt_server/translations/ko.json +0 -6
  151. homeassistant/components/growatt_server/translations/lt.json +2 -2
  152. homeassistant/components/growatt_server/translations/nl.json +0 -6
  153. homeassistant/components/growatt_server/translations/pt-BR.json +0 -6
  154. homeassistant/components/growatt_server/translations/pt.json +0 -6
  155. homeassistant/components/growatt_server/translations/ro.json +0 -6
  156. homeassistant/components/growatt_server/translations/ru.json +0 -6
  157. homeassistant/components/growatt_server/translations/sk.json +0 -6
  158. homeassistant/components/growatt_server/translations/sv.json +0 -6
  159. homeassistant/components/growatt_server/translations/tr.json +0 -6
  160. homeassistant/components/growatt_server/translations/zh-Hans.json +1 -1
  161. homeassistant/components/habitica/translations/es.json +37 -0
  162. homeassistant/components/harmony/translations/ga.json +2 -1
  163. homeassistant/components/harmony/translations/select.ga.json +7 -0
  164. homeassistant/components/hassio/ingress.py +2 -2
  165. homeassistant/components/hassio/translations/de.json +2 -2
  166. homeassistant/components/hassio/translations/es.json +4 -0
  167. homeassistant/components/hassio/translations/ga.json +54 -2
  168. homeassistant/components/hdmi_cec/translations/ga.json +31 -1
  169. homeassistant/components/homeassistant/translations/ga.json +7 -0
  170. homeassistant/components/homeassistant_hardware/translations/ga.json +4 -0
  171. homeassistant/components/homeassistant_sky_connect/translations/ga.json +24 -2
  172. homeassistant/components/homeassistant_yellow/translations/ga.json +11 -1
  173. homeassistant/components/homekit/translations/es.json +7 -0
  174. homeassistant/components/homekit/translations/ga.json +45 -1
  175. homeassistant/components/homekit_controller/translations/ga.json +25 -1
  176. homeassistant/components/homematic/translations/ca.json +0 -1
  177. homeassistant/components/homematic/translations/cs.json +0 -5
  178. homeassistant/components/homematic/translations/de.json +9 -9
  179. homeassistant/components/homematic/translations/el.json +0 -5
  180. homeassistant/components/homematic/translations/en-GB.json +5 -5
  181. homeassistant/components/homematic/translations/en.json +5 -5
  182. homeassistant/components/homematic/translations/es.json +0 -5
  183. homeassistant/components/homematic/translations/et.json +4 -4
  184. homeassistant/components/homematic/translations/fi.json +0 -5
  185. homeassistant/components/homematic/translations/fr.json +0 -4
  186. homeassistant/components/homematic/translations/ga.json +6 -3
  187. homeassistant/components/homematic/translations/hu.json +0 -5
  188. homeassistant/components/homematic/translations/it.json +0 -5
  189. homeassistant/components/homematic/translations/ja.json +0 -5
  190. homeassistant/components/homematic/translations/ko.json +0 -5
  191. homeassistant/components/homematic/translations/lt.json +0 -5
  192. homeassistant/components/homematic/translations/nl.json +0 -5
  193. homeassistant/components/homematic/translations/pt-BR.json +0 -4
  194. homeassistant/components/homematic/translations/pt.json +0 -5
  195. homeassistant/components/homematic/translations/ru.json +0 -5
  196. homeassistant/components/homematic/translations/sk.json +0 -5
  197. homeassistant/components/homematic/translations/sv.json +0 -5
  198. homeassistant/components/homematic/translations/tr.json +0 -5
  199. homeassistant/components/homematic/translations/zh-Hans.json +0 -5
  200. homeassistant/components/homematic/translations/zh-Hant.json +3 -3
  201. homeassistant/components/homematicip_cloud/translations/ga.json +8 -0
  202. homeassistant/components/homewizard/translations/ga.json +17 -0
  203. homeassistant/components/honeywell/translations/ga.json +29 -0
  204. homeassistant/components/hue/config_flow.py +76 -4
  205. homeassistant/components/hue/manifest.json +1 -1
  206. homeassistant/components/hue/translations/es.json +1 -0
  207. homeassistant/components/hue/translations/ga.json +17 -1
  208. homeassistant/components/hue/translations/ru.json +1 -0
  209. homeassistant/components/husqvarna_automower/translations/es.json +153 -1
  210. homeassistant/components/husqvarna_automower_ble/translations/es.json +35 -1
  211. homeassistant/components/huum/translations/es.json +5 -0
  212. homeassistant/components/hydrawise/translations/es.json +5 -1
  213. homeassistant/components/hyperion/translations/ga.json +40 -0
  214. homeassistant/components/ialarm/translations/ga.json +8 -0
  215. homeassistant/components/icloud/translations/ga.json +4 -0
  216. homeassistant/components/imap/translations/ga.json +20 -1
  217. homeassistant/components/imeon_inverter/manifest.json +1 -1
  218. homeassistant/components/imeon_inverter/translations/es.json +80 -0
  219. homeassistant/components/imeon_inverter/translations/ga.json +12 -0
  220. homeassistant/components/inkbird/translations/ga.json +7 -0
  221. homeassistant/components/insteon/translations/ga.json +43 -0
  222. homeassistant/components/insteon/translations/ru.json +6 -2
  223. homeassistant/components/integration/translations/ga.json +9 -3
  224. homeassistant/components/intent/__init__.py +1 -1
  225. homeassistant/components/ios/translations/de.json +1 -1
  226. homeassistant/components/iqvia/translations/ga.json +2 -1
  227. homeassistant/components/islamic_prayer_times/translations/ga.json +9 -1
  228. homeassistant/components/iss/translations/ga.json +21 -0
  229. homeassistant/components/isy994/translations/ga.json +4 -0
  230. homeassistant/components/kaleidescape/translations/ga.json +9 -0
  231. homeassistant/components/keenetic_ndms2/translations/ga.json +27 -1
  232. homeassistant/components/kef/translations/ga.json +28 -1
  233. homeassistant/components/kitchen_sink/translations/ga.json +5 -0
  234. homeassistant/components/knx/translations/es.json +104 -1
  235. homeassistant/components/knx/translations/ga.json +60 -6
  236. homeassistant/components/kodi/translations/ga.json +12 -1
  237. homeassistant/components/konnected/translations/ga.json +22 -0
  238. homeassistant/components/lastfm/translations/ga.json +39 -0
  239. homeassistant/components/launch_library/translations/es.json +7 -0
  240. homeassistant/components/launch_library/translations/ga.json +7 -0
  241. homeassistant/components/laundrify/translations/ga.json +24 -0
  242. homeassistant/components/lcn/translations/ga.json +7 -0
  243. homeassistant/components/led_ble/translations/ga.json +16 -1
  244. homeassistant/components/lg_soundbar/translations/ga.json +10 -0
  245. homeassistant/components/lg_thinq/translations/es.json +2 -0
  246. homeassistant/components/lg_thinq/translations/ga.json +4 -0
  247. homeassistant/components/lidarr/translations/ga.json +11 -0
  248. homeassistant/components/light/strings.json +2 -1
  249. homeassistant/components/light/translations/de.json +2 -1
  250. homeassistant/components/light/translations/en-GB.json +2 -1
  251. homeassistant/components/light/translations/en.json +2 -1
  252. homeassistant/components/light/translations/es.json +2 -1
  253. homeassistant/components/light/translations/et.json +2 -1
  254. homeassistant/components/light/translations/ga.json +53 -2
  255. homeassistant/components/light/translations/lt.json +2 -1
  256. homeassistant/components/light/translations/zh-Hans.json +2 -1
  257. homeassistant/components/light/translations/zh-Hant.json +2 -1
  258. homeassistant/components/litterrobot/translations/ga.json +67 -1
  259. homeassistant/components/local_ip/translations/ga.json +4 -2
  260. homeassistant/components/locative/translations/ga.json +8 -0
  261. homeassistant/components/lock/translations/cs.json +2 -2
  262. homeassistant/components/logger/translations/ga.json +14 -1
  263. homeassistant/components/matrix/translations/ga.json +21 -0
  264. homeassistant/components/matter/translations/cs.json +1 -1
  265. homeassistant/components/matter/translations/es.json +33 -0
  266. homeassistant/components/matter/translations/ga.json +9 -1
  267. homeassistant/components/media_player/translations/es.json +6 -1
  268. homeassistant/components/media_player/translations/ga.json +5 -1
  269. homeassistant/components/miele/translations/es.json +13 -0
  270. homeassistant/components/mill/manifest.json +1 -1
  271. homeassistant/components/modbus/climate.py +4 -4
  272. homeassistant/components/modbus/cover.py +2 -2
  273. homeassistant/components/modbus/entity.py +21 -59
  274. homeassistant/components/modbus/modbus.py +8 -9
  275. homeassistant/components/mqtt/translations/cs.json +1 -1
  276. homeassistant/components/mqtt/translations/es.json +55 -3
  277. homeassistant/components/mqtt/translations/lt.json +10 -4
  278. homeassistant/components/mqtt/translations/ru.json +30 -2
  279. homeassistant/components/nextdns/translations/es.json +3 -0
  280. homeassistant/components/number/translations/es.json +1 -1
  281. homeassistant/components/nut/translations/es.json +3 -3
  282. homeassistant/components/ohme/coordinator.py +16 -1
  283. homeassistant/components/ohme/manifest.json +1 -1
  284. homeassistant/components/ohme/translations/es.json +1 -1
  285. homeassistant/components/onewire/translations/es.json +3 -0
  286. homeassistant/components/openai_conversation/translations/es.json +9 -1
  287. homeassistant/components/opower/translations/es.json +11 -0
  288. homeassistant/components/osoenergy/translations/es.json +1 -1
  289. homeassistant/components/overkiz/translations/de.json +1 -1
  290. homeassistant/components/playstation_network/translations/es.json +20 -1
  291. homeassistant/components/plugwise/translations/cs.json +1 -1
  292. homeassistant/components/pooldose/translations/es.json +102 -0
  293. homeassistant/components/qbus/translations/es.json +8 -0
  294. homeassistant/components/random/translations/es.json +2 -2
  295. homeassistant/components/refoss/translations/es.json +1 -1
  296. homeassistant/components/remote/strings.json +3 -0
  297. homeassistant/components/remote/translations/de.json +3 -0
  298. homeassistant/components/remote/translations/en-GB.json +3 -0
  299. homeassistant/components/remote/translations/en.json +3 -0
  300. homeassistant/components/remote/translations/es.json +3 -0
  301. homeassistant/components/remote/translations/et.json +3 -0
  302. homeassistant/components/remote/translations/lt.json +3 -0
  303. homeassistant/components/remote/translations/zh-Hans.json +3 -0
  304. homeassistant/components/remote/translations/zh-Hant.json +3 -0
  305. homeassistant/components/reolink/translations/es.json +10 -1
  306. homeassistant/components/risco/translations/ru.json +2 -0
  307. homeassistant/components/ruuvitag_ble/translations/es.json +25 -0
  308. homeassistant/components/samsungtv/translations/ru.json +1 -0
  309. homeassistant/components/schlage/manifest.json +1 -1
  310. homeassistant/components/scrape/translations/es.json +2 -2
  311. homeassistant/components/sensibo/translations/es.json +29 -0
  312. homeassistant/components/sensor/translations/es.json +9 -3
  313. homeassistant/components/sia/translations/bg.json +1 -2
  314. homeassistant/components/sia/translations/ca.json +2 -4
  315. homeassistant/components/sia/translations/cs.json +3 -6
  316. homeassistant/components/sia/translations/de.json +3 -3
  317. homeassistant/components/sia/translations/el.json +3 -6
  318. homeassistant/components/sia/translations/en-GB.json +3 -3
  319. homeassistant/components/sia/translations/en.json +3 -3
  320. homeassistant/components/sia/translations/es.json +3 -6
  321. homeassistant/components/sia/translations/et.json +1 -2
  322. homeassistant/components/sia/translations/fi.json +2 -4
  323. homeassistant/components/sia/translations/fr.json +3 -6
  324. homeassistant/components/sia/translations/he.json +1 -2
  325. homeassistant/components/sia/translations/hu.json +3 -6
  326. homeassistant/components/sia/translations/id.json +2 -4
  327. homeassistant/components/sia/translations/it.json +2 -4
  328. homeassistant/components/sia/translations/ja.json +2 -4
  329. homeassistant/components/sia/translations/ko.json +2 -4
  330. homeassistant/components/sia/translations/lt.json +3 -6
  331. homeassistant/components/sia/translations/nb.json +2 -4
  332. homeassistant/components/sia/translations/nl.json +2 -4
  333. homeassistant/components/sia/translations/pl.json +2 -4
  334. homeassistant/components/sia/translations/pt-BR.json +2 -4
  335. homeassistant/components/sia/translations/pt.json +3 -6
  336. homeassistant/components/sia/translations/ro.json +2 -4
  337. homeassistant/components/sia/translations/ru.json +3 -6
  338. homeassistant/components/sia/translations/sk.json +3 -6
  339. homeassistant/components/sia/translations/sv.json +3 -6
  340. homeassistant/components/sia/translations/tr.json +2 -4
  341. homeassistant/components/sia/translations/uk.json +2 -4
  342. homeassistant/components/sia/translations/zh-Hans.json +3 -6
  343. homeassistant/components/sia/translations/zh-Hant.json +2 -2
  344. homeassistant/components/sleep_as_android/translations/es.json +131 -0
  345. homeassistant/components/sleep_as_android/translations/zh-Hans.json +3 -1
  346. homeassistant/components/smarla/translations/es.json +15 -0
  347. homeassistant/components/smarla/translations/sl.json +9 -0
  348. homeassistant/components/snapcast/translations/es.json +10 -0
  349. homeassistant/components/solarlog/translations/es.json +11 -2
  350. homeassistant/components/somfy_mylink/translations/es.json +4 -2
  351. homeassistant/components/sonos/select.py +9 -2
  352. homeassistant/components/sonos/speaker.py +6 -1
  353. homeassistant/components/sonos/translations/es.json +15 -0
  354. homeassistant/components/sql/translations/es.json +2 -2
  355. homeassistant/components/switch/strings.json +3 -0
  356. homeassistant/components/switch/translations/de.json +3 -0
  357. homeassistant/components/switch/translations/en-GB.json +3 -0
  358. homeassistant/components/switch/translations/en.json +3 -0
  359. homeassistant/components/switch/translations/es.json +3 -0
  360. homeassistant/components/switch/translations/et.json +3 -0
  361. homeassistant/components/switch/translations/lt.json +3 -0
  362. homeassistant/components/switch/translations/zh-Hans.json +3 -0
  363. homeassistant/components/switch/translations/zh-Hant.json +3 -0
  364. homeassistant/components/switch_as_x/translations/cs.json +1 -1
  365. homeassistant/components/switchbot_cloud/translations/es.json +16 -0
  366. homeassistant/components/system_bridge/translations/es.json +1 -1
  367. homeassistant/components/template/translations/ca.json +0 -10
  368. homeassistant/components/template/translations/cs.json +16 -16
  369. homeassistant/components/template/translations/da.json +0 -5
  370. homeassistant/components/template/translations/de.json +16 -16
  371. homeassistant/components/template/translations/el.json +0 -11
  372. homeassistant/components/template/translations/en-GB.json +16 -16
  373. homeassistant/components/template/translations/en.json +16 -16
  374. homeassistant/components/template/translations/es.json +22 -19
  375. homeassistant/components/template/translations/et.json +16 -16
  376. homeassistant/components/template/translations/fi.json +0 -7
  377. homeassistant/components/template/translations/fr.json +0 -18
  378. homeassistant/components/template/translations/ga.json +0 -16
  379. homeassistant/components/template/translations/gl.json +0 -4
  380. homeassistant/components/template/translations/he.json +0 -18
  381. homeassistant/components/template/translations/hu.json +0 -11
  382. homeassistant/components/template/translations/id.json +0 -11
  383. homeassistant/components/template/translations/it.json +0 -9
  384. homeassistant/components/template/translations/ja.json +0 -11
  385. homeassistant/components/template/translations/ko.json +0 -8
  386. homeassistant/components/template/translations/lb.json +0 -5
  387. homeassistant/components/template/translations/lt.json +20 -16
  388. homeassistant/components/template/translations/lv.json +0 -5
  389. homeassistant/components/template/translations/nb.json +0 -4
  390. homeassistant/components/template/translations/nl.json +0 -13
  391. homeassistant/components/template/translations/pl.json +0 -11
  392. homeassistant/components/template/translations/pt.json +0 -18
  393. homeassistant/components/template/translations/ro.json +0 -4
  394. homeassistant/components/template/translations/ru.json +19 -15
  395. homeassistant/components/template/translations/sk.json +0 -18
  396. homeassistant/components/template/translations/sl.json +0 -11
  397. homeassistant/components/template/translations/sv.json +0 -18
  398. homeassistant/components/template/translations/tr.json +0 -11
  399. homeassistant/components/template/translations/uk.json +0 -11
  400. homeassistant/components/template/translations/vi.json +0 -11
  401. homeassistant/components/template/translations/zh-Hans.json +16 -16
  402. homeassistant/components/template/translations/zh-Hant.json +16 -16
  403. homeassistant/components/tesla_fleet/translations/cs.json +1 -1
  404. homeassistant/components/tesla_fleet/translations/es.json +2 -2
  405. homeassistant/components/teslemetry/translations/cs.json +1 -1
  406. homeassistant/components/teslemetry/translations/de.json +1 -1
  407. homeassistant/components/teslemetry/translations/es.json +157 -14
  408. homeassistant/components/tessie/translations/cs.json +1 -1
  409. homeassistant/components/tessie/translations/es.json +1 -1
  410. homeassistant/components/togrill/translations/es.json +51 -0
  411. homeassistant/components/tractive/translations/sl.json +5 -0
  412. homeassistant/components/tuya/translations/es.json +32 -1
  413. homeassistant/components/update/strings.json +3 -0
  414. homeassistant/components/update/translations/de.json +3 -0
  415. homeassistant/components/update/translations/en-GB.json +3 -0
  416. homeassistant/components/update/translations/en.json +3 -0
  417. homeassistant/components/update/translations/es.json +3 -0
  418. homeassistant/components/update/translations/et.json +3 -0
  419. homeassistant/components/update/translations/lt.json +3 -0
  420. homeassistant/components/update/translations/zh-Hans.json +3 -0
  421. homeassistant/components/update/translations/zh-Hant.json +3 -0
  422. homeassistant/components/velux/translations/es.json +7 -0
  423. homeassistant/components/volvo/translations/es.json +141 -1
  424. homeassistant/components/wallbox/translations/cs.json +1 -1
  425. homeassistant/components/webostv/translations/ru.json +2 -1
  426. homeassistant/components/yalexs_ble/translations/es.json +16 -1
  427. homeassistant/components/yolink/translations/es.json +16 -0
  428. homeassistant/components/zha/translations/es.json +66 -0
  429. homeassistant/components/zwave_js/translations/es.json +20 -2
  430. homeassistant/const.py +1 -1
  431. homeassistant/package_constraints.txt +2 -2
  432. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/METADATA +1 -1
  433. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/RECORD +438 -428
  434. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/WHEEL +0 -0
  435. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/entry_points.txt +0 -0
  436. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/licenses/LICENSE.md +0 -0
  437. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  438. {homeassistant-2025.9.0b5.dist-info → homeassistant-2025.9.1.dist-info}/top_level.txt +0 -0
@@ -17,9 +17,14 @@
17
17
  "data_description": {
18
18
  "password": "Pasfhocal do chuntais Whisker."
19
19
  },
20
- "description": "Nuashonraigh do phasfhocal le haghaidh {username} le do thoil"
20
+ "description": "Nuashonraigh do phasfhocal le haghaidh {username} le do thoil",
21
+ "title": "T\u00e1 an f\u00edordheimhni\u00fa imithe in \u00e9ag do {name}"
21
22
  },
22
23
  "user": {
24
+ "data": {
25
+ "password": "Pasfhocal",
26
+ "username": "Ainm \u00fas\u00e1ideora"
27
+ },
23
28
  "data_description": {
24
29
  "password": "Pasfhocal do chuntais Whisker.",
25
30
  "username": "Seoladh r\u00edomhphoist do chuntais Whisker."
@@ -31,14 +36,48 @@
31
36
  "binary_sensor": {
32
37
  "hopper_connected": {
33
38
  "name": "Hopper ceangailte"
39
+ },
40
+ "power_status": {
41
+ "name": "St\u00e1das cumhachta"
42
+ },
43
+ "sleep_mode": {
44
+ "name": "M\u00f3d codlata"
45
+ },
46
+ "sleeping": {
47
+ "name": "Ag codladh"
34
48
  }
35
49
  },
36
50
  "button": {
51
+ "give_snack": {
52
+ "name": "Tabhair sneaiceanna"
53
+ },
37
54
  "reset": {
38
55
  "name": "Athshocraigh"
56
+ },
57
+ "reset_waste_drawer": {
58
+ "name": "Athshocraigh an tarraice\u00e1n dramha\u00edola"
59
+ }
60
+ },
61
+ "select": {
62
+ "brightness_level": {
63
+ "name": "Gile an phain\u00e9il",
64
+ "state": {
65
+ "high": "Ard",
66
+ "low": "\u00cdseal",
67
+ "medium": "Me\u00e1nach"
68
+ }
69
+ },
70
+ "cycle_delay": {
71
+ "name": "Am feithimh timthriall glantach\u00e1in i n\u00f3im\u00e9id"
72
+ },
73
+ "meal_insert_size": {
74
+ "name": "M\u00e9id an iontr\u00e1la b\u00e9ile"
39
75
  }
40
76
  },
41
77
  "sensor": {
78
+ "food_level": {
79
+ "name": "Leibh\u00e9al bia"
80
+ },
42
81
  "hopper_status": {
43
82
  "name": "St\u00e1das an hopper",
44
83
  "state": {
@@ -49,8 +88,30 @@
49
88
  "motor_ot_amps": "R\u00f3-chasmh\u00f3iminte m\u00f3tair"
50
89
  }
51
90
  },
91
+ "last_seen": {
92
+ "name": "Le feice\u00e1il go deireanach"
93
+ },
94
+ "litter_level": {
95
+ "name": "Leibh\u00e9al bruscair"
96
+ },
97
+ "pet_weight": {
98
+ "name": "Me\u00e1chan peata\u00ed"
99
+ },
100
+ "sleep_mode_end_time": {
101
+ "name": "Am deiridh m\u00f3d codlata"
102
+ },
103
+ "sleep_mode_start_time": {
104
+ "name": "Am tosaithe m\u00f3d codlata"
105
+ },
52
106
  "status_code": {
107
+ "name": "C\u00f3d st\u00e1dais",
53
108
  "state": {
109
+ "br": "Cochall bainte",
110
+ "ccc": "Timthriall glantach\u00e1in cr\u00edochnaithe",
111
+ "ccp": "Timthriall glantach\u00e1in ar si\u00fal",
112
+ "cd": "Cat braite",
113
+ "csf": "Locht braiteora Cat",
114
+ "csi": "Braiteoir cat curtha isteach",
54
115
  "cst": "Am braiteoir cat",
55
116
  "df1": "Tarraice\u00e1n beagnach l\u00e1n - 2 thimthriall f\u00e1gtha",
56
117
  "df2": "Tarraice\u00e1n beagnach l\u00e1n - 1 timthriall f\u00e1gtha",
@@ -92,6 +153,11 @@
92
153
  "name": "Glas\u00e1il pain\u00e9il"
93
154
  }
94
155
  },
156
+ "time": {
157
+ "sleep_mode_start_time": {
158
+ "name": "Am tosaithe m\u00f3d codlata"
159
+ }
160
+ },
95
161
  "vacuum": {
96
162
  "litter_box": {
97
163
  "name": "Bosca bruscair"
@@ -2,8 +2,10 @@
2
2
  "config": {
3
3
  "step": {
4
4
  "user": {
5
- "description": "Ar mhaith leat tos\u00fa ag socr\u00fa?"
5
+ "description": "Ar mhaith leat tos\u00fa ag socr\u00fa?",
6
+ "title": "Seoladh IP \u00c1iti\u00fail"
6
7
  }
7
8
  }
8
- }
9
+ },
10
+ "title": "Seoladh IP \u00c1iti\u00fail"
9
11
  }
@@ -1,5 +1,13 @@
1
1
  {
2
2
  "config": {
3
+ "abort": {
4
+ "cloud_not_connected": "Gan cheangal le Home Assistant Cloud.",
5
+ "single_instance_allowed": "Cumraithe cheana f\u00e9in. N\u00ed f\u00e9idir ach cumra\u00edocht amh\u00e1in a dh\u00e9anamh.",
6
+ "webhook_not_internet_accessible": "N\u00ed m\u00f3r d\u2019eisp\u00e9ireas Home Assistant a bheith inrochtana \u00f3n idirl\u00edon chun teachtaireachta\u00ed webhook a fh\u00e1il."
7
+ },
8
+ "create_entry": {
9
+ "default": "Chun su\u00edomhanna a sheoladh chuig Home Assistant, beidh ort an ghn\u00e9 webhook a shocr\u00fa san aip Locative.\n\nL\u00edon isteach an fhaisn\u00e9is seo a leanas:\n\n- URL: `{webhook_url}`\n- Modh: POST\n\nF\u00e9ach ar [an doicim\u00e9ad\u00fa]({docs_url}) le haghaidh tuilleadh sonra\u00ed."
10
+ },
3
11
  "step": {
4
12
  "user": {
5
13
  "description": "Ar mhaith leat tos\u00fa ag socr\u00fa?",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "entity_component": {
27
27
  "_": {
28
- "name": "Zamknout",
28
+ "name": "Z\u00e1mek",
29
29
  "state": {
30
30
  "jammed": "Zaseknuto",
31
31
  "locked": "Zam\u010deno",
@@ -82,5 +82,5 @@
82
82
  "name": "Odemknout"
83
83
  }
84
84
  },
85
- "title": "Zamknout"
85
+ "title": "Z\u00e1mek"
86
86
  }
@@ -5,7 +5,20 @@
5
5
  "critical": "Critici\u00fail",
6
6
  "debug": "D\u00edfhabht\u00fa",
7
7
  "error": "Earr\u00e1id",
8
- "fatal": "Marfach"
8
+ "fatal": "Marfach",
9
+ "info": "Eolas",
10
+ "warning": "Rabhadh"
11
+ }
12
+ }
13
+ },
14
+ "services": {
15
+ "set_default_level": {
16
+ "description": "Socra\u00edonn s\u00e9 an leibh\u00e9al loga r\u00e9amhshocraithe le haghaidh comhth\u00e1th\u00fa.",
17
+ "fields": {
18
+ "level": {
19
+ "description": "Leibh\u00e9al d\u00e9ine r\u00e9amhshocraithe do gach comhth\u00e1th\u00fa.",
20
+ "name": "Leibh\u00e9al"
21
+ }
9
22
  }
10
23
  }
11
24
  }
@@ -0,0 +1,21 @@
1
+ {
2
+ "services": {
3
+ "send_message": {
4
+ "fields": {
5
+ "data": {
6
+ "description": "Faisn\u00e9is bhreise f\u00f3gra. Taca\u00edonn s\u00e9 le liosta \u00edomh\u00e1nna. Taca\u00edonn s\u00e9 le form\u00e1id teachtaireachta. Roghnach.",
7
+ "name": "Sonra\u00ed"
8
+ },
9
+ "message": {
10
+ "description": "An teachtaireacht at\u00e1 le seoladh.",
11
+ "name": "Teachtaireacht"
12
+ },
13
+ "target": {
14
+ "description": "Liosta seomra(\u00ed) le an teachtaireacht a sheoladh chucu.",
15
+ "name": "Sprioc"
16
+ }
17
+ },
18
+ "name": "Seol teachtaireacht"
19
+ }
20
+ }
21
+ }
@@ -183,7 +183,7 @@
183
183
  },
184
184
  "lock": {
185
185
  "lock": {
186
- "name": "Zamknout"
186
+ "name": "Z\u00e1mek"
187
187
  }
188
188
  },
189
189
  "number": {
@@ -47,6 +47,9 @@
47
47
  },
48
48
  "entity": {
49
49
  "binary_sensor": {
50
+ "alarm_door": {
51
+ "name": "Alarma de puerta"
52
+ },
50
53
  "battery_alert": {
51
54
  "name": "Alerta de bater\u00eda"
52
55
  },
@@ -112,6 +115,9 @@
112
115
  "resume": {
113
116
  "name": "Reanudar"
114
117
  },
118
+ "self_test_request": {
119
+ "name": "Autodiagn\u00f3stico"
120
+ },
115
121
  "start": {
116
122
  "name": "Iniciar"
117
123
  },
@@ -298,6 +304,9 @@
298
304
  "activated_carbon_filter_condition": {
299
305
  "name": "Estado del filtro de carb\u00f3n activado"
300
306
  },
307
+ "active_current": {
308
+ "name": "Corriente activa"
309
+ },
301
310
  "air_quality": {
302
311
  "name": "Calidad del aire",
303
312
  "state": {
@@ -309,6 +318,9 @@
309
318
  "very_poor": "Muy pobre"
310
319
  }
311
320
  },
321
+ "apparent_current": {
322
+ "name": "Corriente aparente"
323
+ },
312
324
  "auto_close_time": {
313
325
  "name": "Hora de cierre autom\u00e1tico"
314
326
  },
@@ -372,6 +384,15 @@
372
384
  "estimated_heat_required": {
373
385
  "name": "Energ\u00eda calor\u00edfica necesaria"
374
386
  },
387
+ "eve_weather_trend": {
388
+ "name": "Tendencia meteorol\u00f3gica",
389
+ "state": {
390
+ "cloudy": "Nublado",
391
+ "rainy": "Lluvioso",
392
+ "stormy": "Tormentoso",
393
+ "sunny": "Soleado"
394
+ }
395
+ },
375
396
  "evse_charge_current": {
376
397
  "name": "Corriente de carga"
377
398
  },
@@ -446,6 +467,15 @@
446
467
  "pump_speed": {
447
468
  "name": "Velocidad de rotaci\u00f3n"
448
469
  },
470
+ "reactive_current": {
471
+ "name": "Corriente reactiva"
472
+ },
473
+ "rms_current": {
474
+ "name": "Corriente efectiva"
475
+ },
476
+ "rms_voltage": {
477
+ "name": "Tensi\u00f3n efectiva"
478
+ },
449
479
  "switch_current_position": {
450
480
  "name": "Posici\u00f3n actual del interruptor"
451
481
  },
@@ -458,6 +488,9 @@
458
488
  "valve_position": {
459
489
  "name": "Posici\u00f3n de la v\u00e1lvula"
460
490
  },
491
+ "voltage": {
492
+ "name": "Tensi\u00f3n"
493
+ },
461
494
  "window_covering_target_position": {
462
495
  "name": "Posici\u00f3n de apertura objetivo"
463
496
  }
@@ -1,7 +1,15 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
- "cannot_connect": "Theip ar an nascadh"
4
+ "addon_get_discovery_info_failed": "Theip ar fhaisn\u00e9is aimsithe breise\u00e1n Matter Freastala\u00ed a fh\u00e1il.",
5
+ "addon_info_failed": "Theip ar fhaisn\u00e9is bhreise\u00e1in Matter Freastala\u00ed a fh\u00e1il.",
6
+ "addon_install_failed": "Theip ar bhreise\u00e1n Matter Freastala\u00ed a shuite\u00e1il.",
7
+ "addon_start_failed": "Theip ar bhreise\u00e1n Matter Freastala\u00ed a thos\u00fa.",
8
+ "already_configured": "T\u00e1 an gl\u00e9as cumraithe cheana f\u00e9in",
9
+ "already_in_progress": "T\u00e1 sreabhadh cumra\u00edochta ar si\u00fal cheana f\u00e9in",
10
+ "cannot_connect": "Theip ar an nascadh",
11
+ "not_matter_addon": "N\u00ed breise\u00e1n oifigi\u00fail Matter Freastala\u00ed \u00e9 an breise\u00e1n a aims\u00edodh.",
12
+ "reconfiguration_successful": "Athchumra\u00edodh comhth\u00e1th\u00fa Matter go rath\u00fail."
5
13
  },
6
14
  "error": {
7
15
  "cannot_connect": "Theip ar an nascadh",
@@ -188,6 +188,7 @@
188
188
  "name": "ID de contenido"
189
189
  },
190
190
  "media_content_type": {
191
+ "description": "El tipo de contenido que se va a explorar, como imagen, m\u00fasica, programa de TV, v\u00eddeo, episodio, canal o lista de reproducci\u00f3n.",
191
192
  "name": "Tipo de contenido"
192
193
  }
193
194
  },
@@ -251,6 +252,10 @@
251
252
  "enqueue": {
252
253
  "description": "Si el contenido debe reproducirse ahora o a\u00f1adirse a la cola.",
253
254
  "name": "Poner en cola"
255
+ },
256
+ "media": {
257
+ "description": "El medio seleccionado para reproducir.",
258
+ "name": "Medios"
254
259
  }
255
260
  },
256
261
  "name": "Reproducir contenido multimedia"
@@ -273,7 +278,7 @@
273
278
  "name": "ID de contenido"
274
279
  },
275
280
  "media_content_type": {
276
- "description": "El tipo de contenido que se quiere explorar, como imagen, m\u00fasica, programa de televisi\u00f3n, video, episodio, canal o lista de reproducci\u00f3n.",
281
+ "description": "El tipo de contenido que se va a explorar, como imagen, m\u00fasica, programa de TV, v\u00eddeo, episodio, canal o lista de reproducci\u00f3n.",
277
282
  "name": "Tipo de contenido"
278
283
  },
279
284
  "media_filter_classes": {
@@ -16,12 +16,16 @@
16
16
  "changed_states": "{entity_name} casta air n\u00f3 as",
17
17
  "idle": "\u00c9ir\u00edonn {entity_name} d\u00edomhaoin",
18
18
  "paused": "T\u00e1 {entity_name} ar sos",
19
- "playing": "Tosa\u00edonn {entity_name} ag seinm"
19
+ "playing": "Tosa\u00edonn {entity_name} ag seinm",
20
+ "turned_off": "M\u00fachadh {entity_name}",
21
+ "turned_on": "T\u00e1 {entity_name} casta air"
20
22
  }
21
23
  },
22
24
  "entity_component": {
23
25
  "_": {
26
+ "name": "Seinnteoir me\u00e1n",
24
27
  "state": {
28
+ "buffering": "Maol\u00e1n\u00fa",
25
29
  "standby": "Fuireachas"
26
30
  },
27
31
  "state_attributes": {
@@ -239,6 +239,7 @@
239
239
  "plate_step_8": "4\u2022",
240
240
  "plate_step_9": "5",
241
241
  "plate_step_boost": "Impulso",
242
+ "plate_step_boost_2": "Impulso 2",
242
243
  "plate_step_warm": "Calentando"
243
244
  }
244
245
  },
@@ -899,6 +900,18 @@
899
900
  "yom_tov": "Yom tov",
900
901
  "yorkshire_pudding": "Pudin de Yorkshire",
901
902
  "zander_fillet": "Lucioperca (filete)"
903
+ },
904
+ "state_attributes": {
905
+ "profile": {
906
+ "name": "Perfil",
907
+ "state": {
908
+ "profile_1": "Perfil 1",
909
+ "profile_2": "Perfil 2",
910
+ "profile_3": "Perfil 3",
911
+ "profile_4": "Perfil 4",
912
+ "profile_5": "Perfil 5"
913
+ }
914
+ }
902
915
  }
903
916
  },
904
917
  "program_phase": {
@@ -7,5 +7,5 @@
7
7
  "documentation": "https://www.home-assistant.io/integrations/mill",
8
8
  "iot_class": "local_polling",
9
9
  "loggers": ["mill", "mill_local"],
10
- "requirements": ["millheater==0.12.5", "mill-local==0.3.0"]
10
+ "requirements": ["millheater==0.13.1", "mill-local==0.3.0"]
11
11
  }
@@ -363,7 +363,7 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
363
363
  )
364
364
  break
365
365
 
366
- await self._async_update_write_state()
366
+ await self.async_local_update(cancel_pending_update=True)
367
367
 
368
368
  async def async_set_fan_mode(self, fan_mode: str) -> None:
369
369
  """Set new target fan mode."""
@@ -385,7 +385,7 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
385
385
  CALL_TYPE_WRITE_REGISTER,
386
386
  )
387
387
 
388
- await self._async_update_write_state()
388
+ await self.async_local_update(cancel_pending_update=True)
389
389
 
390
390
  async def async_set_swing_mode(self, swing_mode: str) -> None:
391
391
  """Set new target swing mode."""
@@ -408,7 +408,7 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
408
408
  CALL_TYPE_WRITE_REGISTER,
409
409
  )
410
410
  break
411
- await self._async_update_write_state()
411
+ await self.async_local_update(cancel_pending_update=True)
412
412
 
413
413
  async def async_set_temperature(self, **kwargs: Any) -> None:
414
414
  """Set new target temperature."""
@@ -463,7 +463,7 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
463
463
  CALL_TYPE_WRITE_REGISTERS,
464
464
  )
465
465
  self._attr_available = result is not None
466
- await self._async_update_write_state()
466
+ await self.async_local_update(cancel_pending_update=True)
467
467
 
468
468
  async def _async_update(self) -> None:
469
469
  """Update Target & Current Temperature."""
@@ -111,7 +111,7 @@ class ModbusCover(BasePlatform, CoverEntity, RestoreEntity):
111
111
  self._slave, self._write_address, self._state_open, self._write_type
112
112
  )
113
113
  self._attr_available = result is not None
114
- await self._async_update_write_state()
114
+ await self.async_local_update(cancel_pending_update=True)
115
115
 
116
116
  async def async_close_cover(self, **kwargs: Any) -> None:
117
117
  """Close cover."""
@@ -119,7 +119,7 @@ class ModbusCover(BasePlatform, CoverEntity, RestoreEntity):
119
119
  self._slave, self._write_address, self._state_closed, self._write_type
120
120
  )
121
121
  self._attr_available = result is not None
122
- await self._async_update_write_state()
122
+ await self.async_local_update(cancel_pending_update=True)
123
123
 
124
124
  async def _async_update(self) -> None:
125
125
  """Update the state of the cover."""
@@ -62,7 +62,6 @@ from .const import (
62
62
  CONF_VIRTUAL_COUNT,
63
63
  CONF_WRITE_TYPE,
64
64
  CONF_ZERO_SUPPRESS,
65
- SIGNAL_START_ENTITY,
66
65
  SIGNAL_STOP_ENTITY,
67
66
  DataType,
68
67
  )
@@ -112,14 +111,16 @@ class BasePlatform(Entity):
112
111
  async def _async_update(self) -> None:
113
112
  """Virtual function to be overwritten."""
114
113
 
115
- async def async_update(self) -> None:
114
+ async def async_update(self, now: datetime | None = None) -> None:
116
115
  """Update the entity state."""
117
- if self._cancel_call:
118
- self._cancel_call()
119
- await self.async_local_update()
116
+ await self.async_local_update(cancel_pending_update=True)
120
117
 
121
- async def async_local_update(self, now: datetime | None = None) -> None:
118
+ async def async_local_update(
119
+ self, now: datetime | None = None, cancel_pending_update: bool = False
120
+ ) -> None:
122
121
  """Update the entity state."""
122
+ if cancel_pending_update and self._cancel_call:
123
+ self._cancel_call()
123
124
  await self._async_update()
124
125
  self.async_write_ha_state()
125
126
  if self._scan_interval > 0:
@@ -131,62 +132,21 @@ class BasePlatform(Entity):
131
132
 
132
133
  async def async_will_remove_from_hass(self) -> None:
133
134
  """Remove entity from hass."""
134
- _LOGGER.debug(f"Removing entity {self._attr_name}")
135
- if self._cancel_call:
136
- self._cancel_call()
137
- self._cancel_call = None
135
+ self.async_disable()
138
136
 
139
137
  @callback
140
- def async_hold(self) -> None:
138
+ def async_disable(self) -> None:
141
139
  """Remote stop entity."""
142
- _LOGGER.debug(f"hold entity {self._attr_name}")
143
- self._async_cancel_future_pending_update()
144
- self._attr_available = False
145
- self.async_write_ha_state()
146
-
147
- async def _async_update_write_state(self) -> None:
148
- """Update the entity state and write it to the state machine."""
149
- if self._cancel_call:
150
- self._cancel_call()
151
- self._cancel_call = None
152
- await self.async_local_update()
153
-
154
- async def _async_update_if_not_in_progress(
155
- self, now: datetime | None = None
156
- ) -> None:
157
- """Update the entity state if not already in progress."""
158
- await self._async_update_write_state()
159
-
160
- @callback
161
- def async_run(self) -> None:
162
- """Remote start entity."""
163
- _LOGGER.info(f"start entity {self._attr_name}")
164
- self._async_schedule_future_update(0.1)
165
- self._cancel_call = async_call_later(
166
- self.hass, timedelta(seconds=0.1), self.async_local_update
167
- )
168
- self._attr_available = True
169
- self.async_write_ha_state()
170
-
171
- @callback
172
- def _async_schedule_future_update(self, delay: float) -> None:
173
- """Schedule an update in the future."""
174
- self._async_cancel_future_pending_update()
175
- self._cancel_call = async_call_later(
176
- self.hass, delay, self._async_update_if_not_in_progress
177
- )
178
-
179
- @callback
180
- def _async_cancel_future_pending_update(self) -> None:
181
- """Cancel a future pending update."""
140
+ _LOGGER.info(f"hold entity {self._attr_name}")
182
141
  if self._cancel_call:
183
142
  self._cancel_call()
184
143
  self._cancel_call = None
144
+ self._attr_available = False
185
145
 
186
146
  async def async_await_connection(self, _now: Any) -> None:
187
147
  """Wait for first connect."""
188
148
  await self._hub.event_connected.wait()
189
- self.async_run()
149
+ await self.async_local_update(cancel_pending_update=True)
190
150
 
191
151
  async def async_base_added_to_hass(self) -> None:
192
152
  """Handle entity which will be added."""
@@ -198,10 +158,7 @@ class BasePlatform(Entity):
198
158
  )
199
159
  )
200
160
  self.async_on_remove(
201
- async_dispatcher_connect(self.hass, SIGNAL_STOP_ENTITY, self.async_hold)
202
- )
203
- self.async_on_remove(
204
- async_dispatcher_connect(self.hass, SIGNAL_START_ENTITY, self.async_run)
161
+ async_dispatcher_connect(self.hass, SIGNAL_STOP_ENTITY, self.async_disable)
205
162
  )
206
163
 
207
164
 
@@ -388,10 +345,15 @@ class BaseSwitch(BasePlatform, ToggleEntity, RestoreEntity):
388
345
  return
389
346
 
390
347
  if self._verify_delay:
391
- self._async_schedule_future_update(self._verify_delay)
348
+ assert self._verify_delay == 1
349
+ if self._cancel_call:
350
+ self._cancel_call()
351
+ self._cancel_call = None
352
+ self._cancel_call = async_call_later(
353
+ self.hass, self._verify_delay, self.async_update
354
+ )
392
355
  return
393
-
394
- await self._async_update_write_state()
356
+ await self.async_local_update(cancel_pending_update=True)
395
357
 
396
358
  async def async_turn_off(self, **kwargs: Any) -> None:
397
359
  """Set switch off."""
@@ -312,15 +312,14 @@ class ModbusHub:
312
312
  async def async_pb_connect(self) -> None:
313
313
  """Connect to device, async."""
314
314
  while True:
315
- async with self._lock:
316
- try:
317
- if await self._client.connect(): # type: ignore[union-attr]
318
- _LOGGER.info(f"modbus {self.name} communication open")
319
- break
320
- except ModbusException as exception_error:
321
- self._log_error(
322
- f"{self.name} connect failed, please check your configuration ({exception_error!s})"
323
- )
315
+ try:
316
+ if await self._client.connect(): # type: ignore[union-attr]
317
+ _LOGGER.info(f"modbus {self.name} communication open")
318
+ break
319
+ except ModbusException as exception_error:
320
+ self._log_error(
321
+ f"{self.name} connect failed, please check your configuration ({exception_error!s})"
322
+ )
324
323
  _LOGGER.info(
325
324
  f"modbus {self.name} connect NOT a success ! retrying in {PRIMARY_RECONNECT_DELAY} seconds"
326
325
  )
@@ -1312,7 +1312,7 @@
1312
1312
  "cover": "Roleta",
1313
1313
  "fan": "Ventil\u00e1tor",
1314
1314
  "light": "Sv\u011btlo",
1315
- "lock": "Zamknout",
1315
+ "lock": "Z\u00e1mek",
1316
1316
  "notify": "Ozn\u00e1men\u00ed",
1317
1317
  "sensor": "Senzor",
1318
1318
  "switch": "Sp\u00edna\u010d"