homeassistant 2025.7.0b8__py3-none-any.whl → 2025.7.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/acaia/translations/ga.json +36 -0
  2. homeassistant/components/ai_task/translations/ga.json +22 -1
  3. homeassistant/components/ai_task/translations/nl.json +3 -0
  4. homeassistant/components/airgradient/translations/it.json +3 -3
  5. homeassistant/components/airzone/translations/it.json +1 -1
  6. homeassistant/components/airzone_cloud/translations/ga.json +6 -0
  7. homeassistant/components/airzone_cloud/translations/it.json +2 -2
  8. homeassistant/components/alarm_control_panel/translations/ga.json +7 -0
  9. homeassistant/components/alarmdecoder/translations/ga.json +11 -0
  10. homeassistant/components/alexa_devices/manifest.json +1 -1
  11. homeassistant/components/alexa_devices/translations/cs.json +2 -1
  12. homeassistant/components/alexa_devices/translations/de.json +2 -1
  13. homeassistant/components/alexa_devices/translations/el.json +2 -1
  14. homeassistant/components/alexa_devices/translations/es.json +2 -1
  15. homeassistant/components/alexa_devices/translations/et.json +2 -1
  16. homeassistant/components/alexa_devices/translations/ga.json +26 -0
  17. homeassistant/components/alexa_devices/translations/he.json +1 -0
  18. homeassistant/components/alexa_devices/translations/ja.json +32 -0
  19. homeassistant/components/alexa_devices/translations/lt.json +29 -2
  20. homeassistant/components/alexa_devices/translations/mk.json +8 -0
  21. homeassistant/components/alexa_devices/translations/pt.json +2 -1
  22. homeassistant/components/alexa_devices/translations/sk.json +2 -1
  23. homeassistant/components/alexa_devices/translations/zh-Hans.json +2 -1
  24. homeassistant/components/alexa_devices/translations/zh-Hant.json +2 -1
  25. homeassistant/components/altruist/translations/ga.json +41 -0
  26. homeassistant/components/altruist/translations/he.json +18 -0
  27. homeassistant/components/altruist/translations/ja.json +2 -1
  28. homeassistant/components/amberelectric/translations/ga.json +11 -0
  29. homeassistant/components/analytics_insights/translations/ga.json +42 -0
  30. homeassistant/components/androidtv/translations/ga.json +11 -0
  31. homeassistant/components/androidtv_remote/translations/cs.json +1 -1
  32. homeassistant/components/androidtv_remote/translations/de.json +1 -1
  33. homeassistant/components/androidtv_remote/translations/el.json +1 -2
  34. homeassistant/components/androidtv_remote/translations/en-GB.json +1 -2
  35. homeassistant/components/androidtv_remote/translations/en.json +1 -1
  36. homeassistant/components/androidtv_remote/translations/es.json +1 -1
  37. homeassistant/components/androidtv_remote/translations/et.json +1 -1
  38. homeassistant/components/androidtv_remote/translations/fi.json +0 -9
  39. homeassistant/components/androidtv_remote/translations/fr.json +1 -2
  40. homeassistant/components/androidtv_remote/translations/gl.json +0 -9
  41. homeassistant/components/androidtv_remote/translations/he.json +1 -2
  42. homeassistant/components/androidtv_remote/translations/hu.json +1 -2
  43. homeassistant/components/androidtv_remote/translations/id.json +0 -9
  44. homeassistant/components/androidtv_remote/translations/it.json +0 -9
  45. homeassistant/components/androidtv_remote/translations/ja.json +1 -2
  46. homeassistant/components/androidtv_remote/translations/ko.json +0 -5
  47. homeassistant/components/androidtv_remote/translations/lt.json +1 -1
  48. homeassistant/components/androidtv_remote/translations/lv.json +0 -9
  49. homeassistant/components/androidtv_remote/translations/nl.json +1 -2
  50. homeassistant/components/androidtv_remote/translations/pt.json +1 -2
  51. homeassistant/components/androidtv_remote/translations/ru.json +1 -2
  52. homeassistant/components/androidtv_remote/translations/sk.json +1 -1
  53. homeassistant/components/androidtv_remote/translations/sl.json +1 -2
  54. homeassistant/components/androidtv_remote/translations/sv.json +1 -2
  55. homeassistant/components/androidtv_remote/translations/tr.json +1 -2
  56. homeassistant/components/androidtv_remote/translations/zh-Hans.json +1 -1
  57. homeassistant/components/androidtv_remote/translations/zh-Hant.json +1 -1
  58. homeassistant/components/anthropic/translations/he.json +19 -0
  59. homeassistant/components/anthropic/translations/ja.json +21 -0
  60. homeassistant/components/aosmith/translations/nb.json +2 -1
  61. homeassistant/components/aprilaire/translations/it.json +14 -14
  62. homeassistant/components/apsystems/translations/ga.json +7 -0
  63. homeassistant/components/aseko_pool_live/translations/ga.json +25 -0
  64. homeassistant/components/assist_pipeline/translations/ga.json +14 -0
  65. homeassistant/components/assist_satellite/translations/ga.json +31 -2
  66. homeassistant/components/assist_satellite/translations/nl.json +7 -0
  67. homeassistant/components/asuswrt/translations/ga.json +24 -0
  68. homeassistant/components/august/translations/ga.json +11 -0
  69. homeassistant/components/aurora/translations/ga.json +11 -0
  70. homeassistant/components/autarco/translations/ga.json +37 -0
  71. homeassistant/components/automation/translations/it.json +2 -2
  72. homeassistant/components/axis/translations/ga.json +14 -0
  73. homeassistant/components/azure_devops/translations/ga.json +10 -0
  74. homeassistant/components/azure_event_hub/translations/ga.json +12 -0
  75. homeassistant/components/bang_olufsen/translations/el.json +24 -1
  76. homeassistant/components/bang_olufsen/translations/ga.json +92 -0
  77. homeassistant/components/binary_sensor/translations/he.json +1 -1
  78. homeassistant/components/binary_sensor/translations/it.json +4 -4
  79. homeassistant/components/blink/translations/ga.json +11 -0
  80. homeassistant/components/bmw_connected_drive/translations/el.json +5 -1
  81. homeassistant/components/bmw_connected_drive/translations/ga.json +56 -0
  82. homeassistant/components/bond/translations/el.json +11 -0
  83. homeassistant/components/bring/translations/el.json +1 -0
  84. homeassistant/components/bring/translations/ga.json +53 -0
  85. homeassistant/components/brother/translations/ga.json +53 -0
  86. homeassistant/components/bsblan/translations/ga.json +20 -0
  87. homeassistant/components/calendar/translations/ca.json +1 -1
  88. homeassistant/components/calendar/translations/it.json +2 -2
  89. homeassistant/components/cambridge_audio/translations/ga.json +60 -0
  90. homeassistant/components/cambridge_audio/translations/it.json +2 -2
  91. homeassistant/components/camera/translations/ga.json +15 -0
  92. homeassistant/components/climate/translations/ga.json +39 -0
  93. homeassistant/components/climate/translations/it.json +9 -9
  94. homeassistant/components/climate/translations/ja.json +3 -0
  95. homeassistant/components/cloud/manifest.json +1 -1
  96. homeassistant/components/cloudflare/translations/es.json +1 -1
  97. homeassistant/components/comelit/translations/it.json +3 -0
  98. homeassistant/components/cookidoo/translations/ga.json +47 -1
  99. homeassistant/components/deluge/translations/ga.json +12 -0
  100. homeassistant/components/demo/translations/ga.json +2 -1
  101. homeassistant/components/demo/translations/it.json +3 -3
  102. homeassistant/components/derivative/translations/ga.json +6 -0
  103. homeassistant/components/devolo_home_control/translations/ga.json +37 -0
  104. homeassistant/components/devolo_home_control/translations/he.json +6 -0
  105. homeassistant/components/devolo_home_control/translations/lt.json +10 -0
  106. homeassistant/components/devolo_home_network/translations/ga.json +13 -0
  107. homeassistant/components/discovergy/translations/ga.json +3 -0
  108. homeassistant/components/ecobee/translations/ga.json +40 -0
  109. homeassistant/components/ecoforest/translations/it.json +2 -2
  110. homeassistant/components/econet/translations/ga.json +15 -0
  111. homeassistant/components/ecovacs/manifest.json +1 -1
  112. homeassistant/components/eheimdigital/translations/ga.json +21 -0
  113. homeassistant/components/elevenlabs/translations/ga.json +30 -0
  114. homeassistant/components/elkm1/translations/ga.json +1 -0
  115. homeassistant/components/emoncms/translations/el.json +3 -0
  116. homeassistant/components/emoncms/translations/ga.json +95 -0
  117. homeassistant/components/energy/translations/ga.json +8 -0
  118. homeassistant/components/enphase_envoy/__init__.py +1 -0
  119. homeassistant/components/enphase_envoy/manifest.json +1 -1
  120. homeassistant/components/enphase_envoy/translations/cs.json +1 -0
  121. homeassistant/components/enphase_envoy/translations/el.json +1 -0
  122. homeassistant/components/enphase_envoy/translations/et.json +1 -0
  123. homeassistant/components/enphase_envoy/translations/ga.json +111 -1
  124. homeassistant/components/enphase_envoy/translations/he.json +1 -0
  125. homeassistant/components/enphase_envoy/translations/lt.json +1 -0
  126. homeassistant/components/enphase_envoy/translations/nl.json +2 -1
  127. homeassistant/components/enphase_envoy/translations/pt.json +1 -0
  128. homeassistant/components/eq3btsmart/translations/ga.json +50 -0
  129. homeassistant/components/esphome/translations/ga.json +26 -0
  130. homeassistant/components/ezviz/translations/ga.json +16 -0
  131. homeassistant/components/ezviz/translations/lt.json +10 -0
  132. homeassistant/components/fan/translations/it.json +2 -2
  133. homeassistant/components/feedreader/translations/ga.json +9 -0
  134. homeassistant/components/fibaro/translations/ga.json +19 -0
  135. homeassistant/components/file/translations/fr.json +3 -2
  136. homeassistant/components/filesize/translations/ga.json +9 -0
  137. homeassistant/components/filter/translations/ga.json +2 -1
  138. homeassistant/components/filter/translations/ja.json +30 -0
  139. homeassistant/components/fitbit/translations/ga.json +78 -0
  140. homeassistant/components/fjaraskupan/translations/ga.json +16 -0
  141. homeassistant/components/flexit_bacnet/translations/el.json +9 -0
  142. homeassistant/components/flipr/translations/ga.json +3 -1
  143. homeassistant/components/foscam/translations/el.json +8 -0
  144. homeassistant/components/fritz/translations/ga.json +8 -1
  145. homeassistant/components/fritzbox/translations/ga.json +10 -0
  146. homeassistant/components/fritzbox_callmonitor/translations/ga.json +13 -0
  147. homeassistant/components/fronius/translations/ga.json +25 -0
  148. homeassistant/components/frontend/manifest.json +1 -1
  149. homeassistant/components/fujitsu_fglair/translations/ga.json +18 -0
  150. homeassistant/components/fully_kiosk/translations/ga.json +25 -0
  151. homeassistant/components/fyta/translations/ga.json +27 -0
  152. homeassistant/components/fyta/translations/ja.json +8 -0
  153. homeassistant/components/garages_amsterdam/translations/ga.json +33 -0
  154. homeassistant/components/generic/translations/ga.json +10 -0
  155. homeassistant/components/generic_thermostat/translations/ga.json +22 -0
  156. homeassistant/components/github/translations/ga.json +24 -0
  157. homeassistant/components/go2rtc/translations/ga.json +8 -0
  158. homeassistant/components/google/translations/ca.json +1 -1
  159. homeassistant/components/google/translations/ga.json +3 -0
  160. homeassistant/components/google_assistant/translations/de.json +1 -1
  161. homeassistant/components/google_assistant_sdk/translations/cs.json +0 -3
  162. homeassistant/components/google_assistant_sdk/translations/de.json +1 -1
  163. homeassistant/components/google_assistant_sdk/translations/el.json +1 -1
  164. homeassistant/components/google_assistant_sdk/translations/en-GB.json +0 -3
  165. homeassistant/components/google_assistant_sdk/translations/en.json +1 -1
  166. homeassistant/components/google_assistant_sdk/translations/es.json +0 -3
  167. homeassistant/components/google_assistant_sdk/translations/et.json +1 -1
  168. homeassistant/components/google_assistant_sdk/translations/he.json +0 -3
  169. homeassistant/components/google_assistant_sdk/translations/hu.json +0 -3
  170. homeassistant/components/google_assistant_sdk/translations/id.json +0 -3
  171. homeassistant/components/google_assistant_sdk/translations/it.json +0 -3
  172. homeassistant/components/google_assistant_sdk/translations/ja.json +0 -3
  173. homeassistant/components/google_assistant_sdk/translations/lt.json +0 -3
  174. homeassistant/components/google_assistant_sdk/translations/nl.json +0 -3
  175. homeassistant/components/google_assistant_sdk/translations/pt.json +0 -3
  176. homeassistant/components/google_assistant_sdk/translations/ru.json +0 -3
  177. homeassistant/components/google_assistant_sdk/translations/sk.json +0 -3
  178. homeassistant/components/google_assistant_sdk/translations/sl.json +0 -3
  179. homeassistant/components/google_assistant_sdk/translations/sv.json +0 -3
  180. homeassistant/components/google_assistant_sdk/translations/tr.json +0 -3
  181. homeassistant/components/google_assistant_sdk/translations/uk.json +0 -3
  182. homeassistant/components/google_assistant_sdk/translations/zh-Hans.json +0 -3
  183. homeassistant/components/google_assistant_sdk/translations/zh-Hant.json +1 -1
  184. homeassistant/components/google_generative_ai_conversation/translations/ga.json +52 -0
  185. homeassistant/components/google_generative_ai_conversation/translations/he.json +30 -0
  186. homeassistant/components/google_generative_ai_conversation/translations/lt.json +28 -0
  187. homeassistant/components/google_photos/translations/ga.json +22 -0
  188. homeassistant/components/google_travel_time/translations/it.json +7 -0
  189. homeassistant/components/group/translations/he.json +1 -1
  190. homeassistant/components/group/translations/it.json +2 -2
  191. homeassistant/components/habitica/translations/el.json +6 -0
  192. homeassistant/components/habitica/translations/es.json +5 -5
  193. homeassistant/components/habitica/translations/ga.json +373 -10
  194. homeassistant/components/hassio/ingress.py +6 -2
  195. homeassistant/components/hassio/translations/ga.json +17 -0
  196. homeassistant/components/heos/translations/ga.json +4 -0
  197. homeassistant/components/heos/translations/it.json +1 -0
  198. homeassistant/components/history_stats/translations/el.json +2 -1
  199. homeassistant/components/history_stats/translations/ga.json +3 -0
  200. homeassistant/components/hive/translations/it.json +3 -3
  201. homeassistant/components/holiday/translations/ga.json +55 -0
  202. homeassistant/components/home_connect/translations/ga.json +439 -32
  203. homeassistant/components/home_connect/translations/it.json +47 -44
  204. homeassistant/components/home_connect/translations/ja.json +3 -0
  205. homeassistant/components/homeassistant/translations/ga.json +22 -0
  206. homeassistant/components/homeassistant/translations/it.json +24 -0
  207. homeassistant/components/homeassistant/translations/ja.json +17 -2
  208. homeassistant/components/homeassistant_hardware/translations/cs.json +2 -0
  209. homeassistant/components/homeassistant_hardware/translations/el.json +1 -0
  210. homeassistant/components/homeassistant_hardware/translations/et.json +1 -0
  211. homeassistant/components/homeassistant_hardware/translations/fr.json +1 -0
  212. homeassistant/components/homeassistant_hardware/translations/ga.json +5 -0
  213. homeassistant/components/homeassistant_hardware/translations/he.json +4 -0
  214. homeassistant/components/homeassistant_hardware/translations/lt.json +2 -0
  215. homeassistant/components/homeassistant_hardware/translations/mk.json +3 -0
  216. homeassistant/components/homeassistant_hardware/translations/pt.json +1 -0
  217. homeassistant/components/homeassistant_sky_connect/translations/cs.json +4 -0
  218. homeassistant/components/homeassistant_sky_connect/translations/el.json +2 -0
  219. homeassistant/components/homeassistant_sky_connect/translations/et.json +2 -0
  220. homeassistant/components/homeassistant_sky_connect/translations/fr.json +2 -0
  221. homeassistant/components/homeassistant_sky_connect/translations/ga.json +10 -0
  222. homeassistant/components/homeassistant_sky_connect/translations/he.json +3 -0
  223. homeassistant/components/homeassistant_sky_connect/translations/lt.json +4 -0
  224. homeassistant/components/homeassistant_sky_connect/translations/pt.json +2 -0
  225. homeassistant/components/homeassistant_yellow/translations/cs.json +3 -0
  226. homeassistant/components/homeassistant_yellow/translations/el.json +1 -0
  227. homeassistant/components/homeassistant_yellow/translations/et.json +1 -0
  228. homeassistant/components/homeassistant_yellow/translations/fr.json +1 -0
  229. homeassistant/components/homeassistant_yellow/translations/ga.json +5 -0
  230. homeassistant/components/homeassistant_yellow/translations/he.json +1 -0
  231. homeassistant/components/homeassistant_yellow/translations/lt.json +3 -0
  232. homeassistant/components/homeassistant_yellow/translations/pt.json +1 -0
  233. homeassistant/components/homee/translations/it.json +1 -1
  234. homeassistant/components/homee/translations/ja.json +26 -0
  235. homeassistant/components/homewizard/translations/ga.json +14 -1
  236. homeassistant/components/http/ban.py +1 -1
  237. homeassistant/components/http/translations/ga.json +8 -0
  238. homeassistant/components/humidifier/translations/ga.json +7 -0
  239. homeassistant/components/humidifier/translations/it.json +3 -3
  240. homeassistant/components/husqvarna_automower/translations/ga.json +35 -0
  241. homeassistant/components/husqvarna_automower/translations/it.json +1 -1
  242. homeassistant/components/husqvarna_automower_ble/translations/ga.json +18 -0
  243. homeassistant/components/idasen_desk/translations/ga.json +11 -0
  244. homeassistant/components/image/translations/ga.json +14 -0
  245. homeassistant/components/imap/translations/ga.json +50 -0
  246. homeassistant/components/immich/translations/he.json +5 -0
  247. homeassistant/components/immich/translations/nl.json +5 -0
  248. homeassistant/components/incomfort/translations/it.json +1 -1
  249. homeassistant/components/input_boolean/translations/it.json +2 -2
  250. homeassistant/components/input_select/translations/el.json +1 -0
  251. homeassistant/components/insteon/translations/el.json +1 -0
  252. homeassistant/components/intellifire/translations/ga.json +12 -0
  253. homeassistant/components/iron_os/translations/ga.json +121 -1
  254. homeassistant/components/iron_os/translations/it.json +5 -5
  255. homeassistant/components/iskra/translations/ga.json +42 -0
  256. homeassistant/components/ista_ecotrend/translations/de.json +1 -1
  257. homeassistant/components/ista_ecotrend/translations/ga.json +24 -0
  258. homeassistant/components/ituran/translations/ga.json +57 -0
  259. homeassistant/components/jellyfin/translations/ga.json +10 -0
  260. homeassistant/components/juicenet/translations/ga.json +8 -0
  261. homeassistant/components/jvc_projector/translations/it.json +1 -1
  262. homeassistant/components/keenetic_ndms2/translations/ga.json +7 -0
  263. homeassistant/components/keenetic_ndms2/translations/he.json +5 -0
  264. homeassistant/components/kitchen_sink/translations/ga.json +13 -0
  265. homeassistant/components/knx/translations/ga.json +17 -0
  266. homeassistant/components/lamarzocco/translations/el.json +1 -0
  267. homeassistant/components/lamarzocco/translations/ga.json +70 -0
  268. homeassistant/components/lametric/translations/ga.json +8 -0
  269. homeassistant/components/lcn/translations/cs.json +1 -1
  270. homeassistant/components/lcn/translations/de.json +1 -1
  271. homeassistant/components/lcn/translations/el.json +1 -1
  272. homeassistant/components/lcn/translations/en-GB.json +1 -1
  273. homeassistant/components/lcn/translations/en.json +1 -1
  274. homeassistant/components/lcn/translations/es.json +1 -1
  275. homeassistant/components/lcn/translations/et.json +1 -1
  276. homeassistant/components/lcn/translations/ga.json +143 -0
  277. homeassistant/components/lcn/translations/hu.json +0 -3
  278. homeassistant/components/lcn/translations/ja.json +0 -3
  279. homeassistant/components/lcn/translations/lt.json +1 -1
  280. homeassistant/components/lcn/translations/pt-BR.json +0 -3
  281. homeassistant/components/lcn/translations/pt.json +1 -1
  282. homeassistant/components/lcn/translations/ru.json +0 -3
  283. homeassistant/components/lcn/translations/sk.json +1 -1
  284. homeassistant/components/lcn/translations/sv.json +0 -3
  285. homeassistant/components/lcn/translations/tr.json +0 -3
  286. homeassistant/components/lcn/translations/zh-Hans.json +1 -1
  287. homeassistant/components/lcn/translations/zh-Hant.json +1 -1
  288. homeassistant/components/lektrico/translations/ga.json +76 -1
  289. homeassistant/components/lg_thinq/translations/cs.json +3 -1
  290. homeassistant/components/lg_thinq/translations/el.json +15 -1
  291. homeassistant/components/lg_thinq/translations/et.json +3 -1
  292. homeassistant/components/lg_thinq/translations/ga.json +818 -15
  293. homeassistant/components/lg_thinq/translations/he.json +3 -1
  294. homeassistant/components/lg_thinq/translations/it.json +16 -16
  295. homeassistant/components/lg_thinq/translations/lt.json +3 -1
  296. homeassistant/components/lg_thinq/translations/pt.json +3 -1
  297. homeassistant/components/lidarr/translations/ga.json +9 -0
  298. homeassistant/components/light/translations/it.json +3 -3
  299. homeassistant/components/linkplay/translations/ga.json +24 -0
  300. homeassistant/components/litterrobot/translations/cs.json +1 -0
  301. homeassistant/components/litterrobot/translations/el.json +1 -0
  302. homeassistant/components/litterrobot/translations/et.json +1 -0
  303. homeassistant/components/litterrobot/translations/ga.json +2 -1
  304. homeassistant/components/litterrobot/translations/he.json +1 -0
  305. homeassistant/components/litterrobot/translations/it.json +1 -1
  306. homeassistant/components/litterrobot/translations/ja.json +4 -0
  307. homeassistant/components/litterrobot/translations/lt.json +1 -0
  308. homeassistant/components/litterrobot/translations/pt.json +1 -0
  309. homeassistant/components/litterrobot/translations/sensor.it.json +1 -1
  310. homeassistant/components/litterrobot/translations/sk.json +1 -0
  311. homeassistant/components/local_calendar/translations/ga.json +25 -0
  312. homeassistant/components/local_file/translations/ga.json +38 -0
  313. homeassistant/components/lock/translations/he.json +1 -1
  314. homeassistant/components/lutron_caseta/translations/it.json +2 -2
  315. homeassistant/components/lyric/translations/it.json +3 -0
  316. homeassistant/components/lyric/translations/ja.json +6 -0
  317. homeassistant/components/madvr/translations/ga.json +7 -0
  318. homeassistant/components/mastodon/translations/el.json +2 -1
  319. homeassistant/components/mastodon/translations/ga.json +24 -0
  320. homeassistant/components/matter/translations/ga.json +67 -1
  321. homeassistant/components/matter/translations/he.json +32 -0
  322. homeassistant/components/matter/translations/it.json +4 -4
  323. homeassistant/components/matter/translations/ja.json +3 -0
  324. homeassistant/components/mealie/translations/ga.json +47 -4
  325. homeassistant/components/meater/translations/he.json +46 -1
  326. homeassistant/components/meater/translations/ja.json +10 -1
  327. homeassistant/components/media_player/translations/el.json +13 -1
  328. homeassistant/components/media_player/translations/it.json +6 -6
  329. homeassistant/components/melcloud/translations/ga.json +13 -0
  330. homeassistant/components/miele/translations/ga.json +24 -1
  331. homeassistant/components/miele/translations/he.json +9 -0
  332. homeassistant/components/miele/translations/it.json +5 -2
  333. homeassistant/components/miele/translations/ja.json +12 -1
  334. homeassistant/components/miele/translations/sk.json +1 -0
  335. homeassistant/components/modbus/translations/el.json +1 -0
  336. homeassistant/components/mold_indicator/translations/ga.json +36 -0
  337. homeassistant/components/monarch_money/translations/ga.json +18 -0
  338. homeassistant/components/motionmount/translations/ga.json +3 -0
  339. homeassistant/components/mqtt/translations/bg.json +10 -0
  340. homeassistant/components/mqtt/translations/cs.json +11 -0
  341. homeassistant/components/mqtt/translations/de.json +2 -2
  342. homeassistant/components/mqtt/translations/ga.json +39 -1
  343. homeassistant/components/mqtt/translations/he.json +37 -0
  344. homeassistant/components/mqtt/translations/it.json +9 -2
  345. homeassistant/components/mqtt/translations/lt.json +37 -0
  346. homeassistant/components/mqtt/translations/mk.json +9 -0
  347. homeassistant/components/mqtt/translations/nl.json +1 -1
  348. homeassistant/components/mqtt/translations/pt.json +11 -0
  349. homeassistant/components/music_assistant/manifest.json +1 -1
  350. homeassistant/components/music_assistant/media_player.py +0 -2
  351. homeassistant/components/music_assistant/translations/ga.json +116 -1
  352. homeassistant/components/myuplink/translations/de.json +1 -1
  353. homeassistant/components/myuplink/translations/ga.json +30 -0
  354. homeassistant/components/nam/translations/ga.json +7 -0
  355. homeassistant/components/nasweb/translations/el.json +12 -1
  356. homeassistant/components/nasweb/translations/ga.json +39 -0
  357. homeassistant/components/ness_alarm/translations/el.json +4 -0
  358. homeassistant/components/nest/translations/ga.json +21 -0
  359. homeassistant/components/nest/translations/ja.json +3 -0
  360. homeassistant/components/netatmo/translations/ga.json +3 -1
  361. homeassistant/components/nextdns/translations/ga.json +49 -0
  362. homeassistant/components/nice_go/translations/ga.json +38 -0
  363. homeassistant/components/niko_home_control/translations/ga.json +12 -0
  364. homeassistant/components/nordpool/coordinator.py +3 -0
  365. homeassistant/components/nordpool/translations/ga.json +132 -0
  366. homeassistant/components/ntfy/translations/ga.json +82 -0
  367. homeassistant/components/ntfy/translations/he.json +43 -1
  368. homeassistant/components/ntfy/translations/ja.json +30 -0
  369. homeassistant/components/number/translations/ga.json +6 -0
  370. homeassistant/components/nut/translations/it.json +1 -1
  371. homeassistant/components/nyt_games/translations/ga.json +45 -0
  372. homeassistant/components/ohme/translations/ga.json +33 -1
  373. homeassistant/components/ollama/__init__.py +30 -4
  374. homeassistant/components/ollama/config_flow.py +164 -135
  375. homeassistant/components/ollama/conversation.py +8 -243
  376. homeassistant/components/ollama/entity.py +261 -0
  377. homeassistant/components/ollama/strings.json +12 -10
  378. homeassistant/components/ollama/translations/bg.json +3 -1
  379. homeassistant/components/ollama/translations/ca.json +0 -10
  380. homeassistant/components/ollama/translations/cs.json +12 -10
  381. homeassistant/components/ollama/translations/de.json +12 -10
  382. homeassistant/components/ollama/translations/el.json +12 -10
  383. homeassistant/components/ollama/translations/en-GB.json +0 -10
  384. homeassistant/components/ollama/translations/en.json +12 -10
  385. homeassistant/components/ollama/translations/es.json +12 -10
  386. homeassistant/components/ollama/translations/et.json +12 -10
  387. homeassistant/components/ollama/translations/fi.json +0 -7
  388. homeassistant/components/ollama/translations/fr.json +12 -10
  389. homeassistant/components/ollama/translations/ga.json +8 -1
  390. homeassistant/components/ollama/translations/he.json +21 -0
  391. homeassistant/components/ollama/translations/hu.json +1 -10
  392. homeassistant/components/ollama/translations/it.json +1 -8
  393. homeassistant/components/ollama/translations/ja.json +11 -10
  394. homeassistant/components/ollama/translations/lt.json +12 -10
  395. homeassistant/components/ollama/translations/pt-BR.json +0 -3
  396. homeassistant/components/ollama/translations/pt.json +12 -10
  397. homeassistant/components/ollama/translations/ru.json +1 -10
  398. homeassistant/components/ollama/translations/sk.json +12 -10
  399. homeassistant/components/ollama/translations/sv.json +1 -10
  400. homeassistant/components/ollama/translations/tr.json +0 -10
  401. homeassistant/components/ollama/translations/zh-Hans.json +12 -10
  402. homeassistant/components/ollama/translations/zh-Hant.json +12 -10
  403. homeassistant/components/onewire/translations/ga.json +5 -0
  404. homeassistant/components/onkyo/translations/ga.json +31 -4
  405. homeassistant/components/openai_conversation/translations/ga.json +49 -0
  406. homeassistant/components/openai_conversation/translations/he.json +25 -0
  407. homeassistant/components/openai_conversation/translations/ja.json +11 -0
  408. homeassistant/components/opentherm_gw/translations/bg.json +3 -0
  409. homeassistant/components/opentherm_gw/translations/cs.json +3 -0
  410. homeassistant/components/opentherm_gw/translations/el.json +6 -0
  411. homeassistant/components/opentherm_gw/translations/et.json +3 -0
  412. homeassistant/components/opentherm_gw/translations/fr.json +3 -0
  413. homeassistant/components/opentherm_gw/translations/ga.json +39 -0
  414. homeassistant/components/opentherm_gw/translations/lt.json +3 -0
  415. homeassistant/components/opentherm_gw/translations/mk.json +7 -0
  416. homeassistant/components/opentherm_gw/translations/pt.json +3 -0
  417. homeassistant/components/osoenergy/translations/ga.json +125 -0
  418. homeassistant/components/osoenergy/translations/it.json +2 -2
  419. homeassistant/components/otbr/translations/el.json +3 -0
  420. homeassistant/components/otbr/translations/ga.json +7 -0
  421. homeassistant/components/overkiz/translations/cs.json +1 -0
  422. homeassistant/components/overkiz/translations/de.json +1 -1
  423. homeassistant/components/overkiz/translations/el.json +1 -0
  424. homeassistant/components/overkiz/translations/et.json +1 -0
  425. homeassistant/components/overkiz/translations/he.json +1 -0
  426. homeassistant/components/overkiz/translations/lt.json +1 -0
  427. homeassistant/components/overkiz/translations/pt.json +1 -0
  428. homeassistant/components/ovo_energy/translations/ga.json +10 -0
  429. homeassistant/components/p1_monitor/translations/ga.json +11 -0
  430. homeassistant/components/palazzetti/translations/ga.json +95 -1
  431. homeassistant/components/palazzetti/translations/it.json +1 -1
  432. homeassistant/components/paperless_ngx/translations/he.json +9 -2
  433. homeassistant/components/paperless_ngx/translations/ja.json +49 -0
  434. homeassistant/components/peblar/translations/ga.json +34 -5
  435. homeassistant/components/pegel_online/translations/cs.json +2 -1
  436. homeassistant/components/pegel_online/translations/ga.json +7 -0
  437. homeassistant/components/pegel_online/translations/lt.json +2 -1
  438. homeassistant/components/pegel_online/translations/pt.json +2 -1
  439. homeassistant/components/permobil/translations/ga.json +11 -0
  440. homeassistant/components/philips_js/translations/ga.json +7 -0
  441. homeassistant/components/pi_hole/translations/ga.json +30 -0
  442. homeassistant/components/playstation_network/translations/el.json +1 -1
  443. homeassistant/components/playstation_network/translations/en.json +1 -1
  444. homeassistant/components/playstation_network/translations/et.json +1 -1
  445. homeassistant/components/playstation_network/translations/ga.json +34 -3
  446. homeassistant/components/playstation_network/translations/he.json +21 -0
  447. homeassistant/components/playstation_network/translations/hu.json +0 -3
  448. homeassistant/components/playstation_network/translations/ja.json +29 -0
  449. homeassistant/components/playstation_network/translations/lt.json +29 -0
  450. homeassistant/components/playstation_network/translations/mk.json +0 -3
  451. homeassistant/components/playstation_network/translations/nl.json +0 -3
  452. homeassistant/components/playstation_network/translations/pl.json +0 -3
  453. homeassistant/components/playstation_network/translations/sk.json +1 -1
  454. homeassistant/components/playstation_network/translations/sl.json +73 -0
  455. homeassistant/components/playstation_network/translations/sv.json +0 -3
  456. homeassistant/components/playstation_network/translations/zh-Hant.json +1 -1
  457. homeassistant/components/plugwise/translations/ga.json +18 -0
  458. homeassistant/components/plugwise/translations/it.json +3 -3
  459. homeassistant/components/point/translations/ga.json +6 -0
  460. homeassistant/components/powerfox/translations/ga.json +43 -0
  461. homeassistant/components/proximity/translations/cs.json +25 -1
  462. homeassistant/components/proximity/translations/el.json +25 -1
  463. homeassistant/components/proximity/translations/fr.json +24 -1
  464. homeassistant/components/proximity/translations/lt.json +25 -1
  465. homeassistant/components/proximity/translations/nl.json +3 -0
  466. homeassistant/components/proximity/translations/pt.json +25 -1
  467. homeassistant/components/qbittorrent/translations/ga.json +12 -0
  468. homeassistant/components/qnap_qsw/translations/ga.json +9 -0
  469. homeassistant/components/rainbird/translations/ga.json +26 -0
  470. homeassistant/components/random/translations/ga.json +4 -1
  471. homeassistant/components/remote/translations/it.json +2 -2
  472. homeassistant/components/remote_calendar/client.py +12 -0
  473. homeassistant/components/remote_calendar/config_flow.py +9 -3
  474. homeassistant/components/remote_calendar/coordinator.py +11 -4
  475. homeassistant/components/remote_calendar/strings.json +5 -1
  476. homeassistant/components/remote_calendar/translations/cs.json +6 -2
  477. homeassistant/components/remote_calendar/translations/de.json +6 -2
  478. homeassistant/components/remote_calendar/translations/en-GB.json +0 -3
  479. homeassistant/components/remote_calendar/translations/en.json +6 -2
  480. homeassistant/components/remote_calendar/translations/es.json +6 -2
  481. homeassistant/components/remote_calendar/translations/et.json +6 -2
  482. homeassistant/components/remote_calendar/translations/fi.json +0 -3
  483. homeassistant/components/remote_calendar/translations/fr.json +0 -3
  484. homeassistant/components/remote_calendar/translations/ga.json +2 -2
  485. homeassistant/components/remote_calendar/translations/he.json +0 -3
  486. homeassistant/components/remote_calendar/translations/hu.json +0 -3
  487. homeassistant/components/remote_calendar/translations/lt.json +6 -2
  488. homeassistant/components/remote_calendar/translations/nl.json +0 -3
  489. homeassistant/components/remote_calendar/translations/pt.json +0 -3
  490. homeassistant/components/remote_calendar/translations/ru.json +0 -3
  491. homeassistant/components/remote_calendar/translations/sk.json +6 -2
  492. homeassistant/components/remote_calendar/translations/sl.json +0 -3
  493. homeassistant/components/remote_calendar/translations/sv.json +0 -3
  494. homeassistant/components/remote_calendar/translations/tr.json +0 -3
  495. homeassistant/components/remote_calendar/translations/zh-Hans.json +6 -2
  496. homeassistant/components/remote_calendar/translations/zh-Hant.json +6 -2
  497. homeassistant/components/renault/translations/ga.json +40 -0
  498. homeassistant/components/renson/translations/it.json +4 -4
  499. homeassistant/components/reolink/translations/el.json +3 -0
  500. homeassistant/components/reolink/translations/ga.json +69 -0
  501. homeassistant/components/reolink/translations/it.json +15 -12
  502. homeassistant/components/reolink/translations/ja.json +6 -0
  503. homeassistant/components/rfxtrx/translations/it.json +2 -2
  504. homeassistant/components/ring/translations/ga.json +49 -1
  505. homeassistant/components/roborock/translations/ga.json +3 -0
  506. homeassistant/components/roborock/translations/it.json +2 -2
  507. homeassistant/components/roku/translations/ga.json +19 -0
  508. homeassistant/components/roomba/translations/ga.json +9 -0
  509. homeassistant/components/russound_rio/translations/el.json +8 -0
  510. homeassistant/components/russound_rio/translations/ga.json +45 -0
  511. homeassistant/components/russound_rio/translations/nl.json +7 -0
  512. homeassistant/components/sabnzbd/translations/de.json +1 -1
  513. homeassistant/components/sabnzbd/translations/ga.json +29 -0
  514. homeassistant/components/samsungtv/config_flow.py +15 -10
  515. homeassistant/components/schedule/translations/it.json +2 -2
  516. homeassistant/components/schlage/translations/ga.json +13 -1
  517. homeassistant/components/scrape/translations/ga.json +6 -0
  518. homeassistant/components/scrape/translations/it.json +1 -0
  519. homeassistant/components/screenlogic/translations/ga.json +12 -1
  520. homeassistant/components/script/translations/it.json +2 -2
  521. homeassistant/components/sense/translations/ga.json +21 -0
  522. homeassistant/components/sensibo/translations/el.json +9 -1
  523. homeassistant/components/sensibo/translations/it.json +28 -28
  524. homeassistant/components/sensibo/translations/pt-BR.json +4 -1
  525. homeassistant/components/sensibo/translations/sv.json +3 -3
  526. homeassistant/components/sensor/translations/ga.json +16 -0
  527. homeassistant/components/sensor/translations/it.json +3 -2
  528. homeassistant/components/sensoterra/translations/ga.json +22 -0
  529. homeassistant/components/seventeentrack/translations/ga.json +13 -0
  530. homeassistant/components/shelly/__init__.py +8 -1
  531. homeassistant/components/shelly/const.py +3 -0
  532. homeassistant/components/shelly/repairs.py +87 -4
  533. homeassistant/components/shelly/strings.json +14 -0
  534. homeassistant/components/shelly/translations/bg.json +7 -0
  535. homeassistant/components/shelly/translations/cs.json +14 -0
  536. homeassistant/components/shelly/translations/de.json +14 -0
  537. homeassistant/components/shelly/translations/el.json +14 -0
  538. homeassistant/components/shelly/translations/en.json +14 -0
  539. homeassistant/components/shelly/translations/es.json +14 -0
  540. homeassistant/components/shelly/translations/et.json +14 -0
  541. homeassistant/components/shelly/translations/fr.json +7 -0
  542. homeassistant/components/shelly/translations/ga.json +19 -1
  543. homeassistant/components/shelly/translations/he.json +7 -0
  544. homeassistant/components/shelly/translations/ja.json +14 -0
  545. homeassistant/components/shelly/translations/lt.json +14 -0
  546. homeassistant/components/shelly/translations/pt.json +14 -0
  547. homeassistant/components/shelly/translations/sk.json +14 -0
  548. homeassistant/components/shelly/translations/zh-Hans.json +14 -0
  549. homeassistant/components/shelly/translations/zh-Hant.json +14 -0
  550. homeassistant/components/siren/translations/it.json +2 -2
  551. homeassistant/components/sky_remote/translations/ga.json +12 -0
  552. homeassistant/components/sleepiq/translations/it.json +1 -1
  553. homeassistant/components/slide_local/translations/ga.json +45 -0
  554. homeassistant/components/sma/config_flow.py +30 -1
  555. homeassistant/components/smarla/translations/it.json +9 -0
  556. homeassistant/components/smarla/translations/ja.json +24 -0
  557. homeassistant/components/smartthings/translations/ga.json +3 -0
  558. homeassistant/components/smartthings/translations/he.json +19 -0
  559. homeassistant/components/smartthings/translations/it.json +9 -9
  560. homeassistant/components/smartthings/translations/ja.json +5 -0
  561. homeassistant/components/smarty/translations/el.json +5 -0
  562. homeassistant/components/smarty/translations/ga.json +54 -0
  563. homeassistant/components/smhi/translations/ga.json +9 -0
  564. homeassistant/components/smlight/translations/el.json +2 -1
  565. homeassistant/components/smlight/translations/ga.json +90 -0
  566. homeassistant/components/snips/translations/el.json +1 -0
  567. homeassistant/components/solarlog/translations/ga.json +50 -0
  568. homeassistant/components/sonos/translations/ga.json +9 -0
  569. homeassistant/components/sonos/translations/lt.json +9 -0
  570. homeassistant/components/spider/translations/ga.json +8 -0
  571. homeassistant/components/sql/translations/it.json +1 -0
  572. homeassistant/components/squeezebox/translations/ga.json +40 -0
  573. homeassistant/components/squeezebox/translations/it.json +5 -0
  574. homeassistant/components/squeezebox/translations/ja.json +8 -0
  575. homeassistant/components/starline/translations/ga.json +8 -0
  576. homeassistant/components/starlink/translations/ga.json +12 -0
  577. homeassistant/components/statistics/translations/ga.json +3 -0
  578. homeassistant/components/stookwijzer/translations/ga.json +34 -0
  579. homeassistant/components/subaru/translations/cs.json +2 -0
  580. homeassistant/components/subaru/translations/ga.json +7 -0
  581. homeassistant/components/subaru/translations/lt.json +2 -0
  582. homeassistant/components/subaru/translations/mk.json +12 -0
  583. homeassistant/components/suez_water/translations/ga.json +24 -0
  584. homeassistant/components/sun/translations/ja.json +6 -0
  585. homeassistant/components/swiss_public_transport/translations/ga.json +36 -2
  586. homeassistant/components/switch/translations/it.json +6 -6
  587. homeassistant/components/switchbot/translations/cs.json +1 -0
  588. homeassistant/components/switchbot/translations/el.json +1 -0
  589. homeassistant/components/switchbot/translations/et.json +1 -0
  590. homeassistant/components/switchbot/translations/ga.json +38 -2
  591. homeassistant/components/switchbot/translations/he.json +22 -0
  592. homeassistant/components/switchbot/translations/it.json +1 -0
  593. homeassistant/components/switchbot/translations/lt.json +54 -0
  594. homeassistant/components/switchbot/translations/nl.json +1 -0
  595. homeassistant/components/switchbot/translations/pt.json +1 -0
  596. homeassistant/components/switchbot/translations/sk.json +1 -0
  597. homeassistant/components/switchbot/translations/zh-Hant.json +1 -0
  598. homeassistant/components/switcher_kis/translations/ga.json +14 -2
  599. homeassistant/components/system_bridge/translations/ga.json +7 -0
  600. homeassistant/components/tami4/translations/ga.json +9 -0
  601. homeassistant/components/tedee/translations/ga.json +33 -0
  602. homeassistant/components/telegram_bot/bot.py +3 -3
  603. homeassistant/components/telegram_bot/config_flow.py +0 -2
  604. homeassistant/components/telegram_bot/services.yaml +5 -0
  605. homeassistant/components/telegram_bot/translations/bg.json +10 -0
  606. homeassistant/components/telegram_bot/translations/es.json +1 -1
  607. homeassistant/components/telegram_bot/translations/ga.json +28 -0
  608. homeassistant/components/telegram_bot/translations/he.json +24 -1
  609. homeassistant/components/telegram_bot/translations/it.json +13 -0
  610. homeassistant/components/telegram_bot/translations/ja.json +103 -2
  611. homeassistant/components/telegram_bot/translations/lt.json +30 -0
  612. homeassistant/components/telegram_bot/translations/mk.json +5 -0
  613. homeassistant/components/template/translations/ga.json +50 -0
  614. homeassistant/components/template/translations/it.json +1 -0
  615. homeassistant/components/tesla_fleet/translations/cs.json +3 -0
  616. homeassistant/components/tesla_fleet/translations/el.json +3 -0
  617. homeassistant/components/tesla_fleet/translations/et.json +3 -0
  618. homeassistant/components/tesla_fleet/translations/ga.json +122 -0
  619. homeassistant/components/tesla_fleet/translations/he.json +4 -0
  620. homeassistant/components/tesla_fleet/translations/it.json +8 -8
  621. homeassistant/components/tesla_fleet/translations/ja.json +2 -0
  622. homeassistant/components/tesla_fleet/translations/lt.json +3 -0
  623. homeassistant/components/tesla_fleet/translations/mk.json +3 -0
  624. homeassistant/components/tesla_fleet/translations/nl.json +3 -0
  625. homeassistant/components/tesla_fleet/translations/pt.json +3 -0
  626. homeassistant/components/teslemetry/translations/ga.json +106 -0
  627. homeassistant/components/teslemetry/translations/he.json +3 -0
  628. homeassistant/components/teslemetry/translations/it.json +16 -16
  629. homeassistant/components/tessie/translations/ga.json +5 -0
  630. homeassistant/components/tessie/translations/it.json +9 -9
  631. homeassistant/components/thermopro/manifest.json +1 -1
  632. homeassistant/components/thermopro/translations/cs.json +7 -0
  633. homeassistant/components/thermopro/translations/lt.json +7 -0
  634. homeassistant/components/thermopro/translations/pt.json +7 -0
  635. homeassistant/components/tibber/translations/ga.json +7 -0
  636. homeassistant/components/tilt_pi/translations/ga.json +18 -0
  637. homeassistant/components/tilt_pi/translations/he.json +21 -0
  638. homeassistant/components/timer/translations/ga.json +3 -0
  639. homeassistant/components/totalconnect/translations/ga.json +44 -0
  640. homeassistant/components/tplink/translations/ga.json +15 -0
  641. homeassistant/components/tplink_omada/translations/ga.json +25 -1
  642. homeassistant/components/tradfri/translations/ga.json +7 -0
  643. homeassistant/components/transmission/translations/ga.json +31 -0
  644. homeassistant/components/trend/translations/ga.json +3 -0
  645. homeassistant/components/triggercmd/translations/ga.json +7 -0
  646. homeassistant/components/tuya/translations/ga.json +8 -0
  647. homeassistant/components/tuya/translations/it.json +20 -7
  648. homeassistant/components/tuya/translations/ja.json +6 -0
  649. homeassistant/components/tuya/translations/select.it.json +5 -5
  650. homeassistant/components/twentemilieu/translations/ga.json +13 -0
  651. homeassistant/components/twinkly/translations/it.json +1 -1
  652. homeassistant/components/twitch/translations/ga.json +44 -0
  653. homeassistant/components/unifi/manifest.json +1 -1
  654. homeassistant/components/unifi/translations/ga.json +13 -0
  655. homeassistant/components/unifiprotect/config_flow.py +1 -1
  656. homeassistant/components/unifiprotect/translations/ga.json +23 -0
  657. homeassistant/components/uptimerobot/translations/it.json +5 -0
  658. homeassistant/components/uptimerobot/translations/ja.json +5 -0
  659. homeassistant/components/utility_meter/translations/ga.json +7 -0
  660. homeassistant/components/vacuum/translations/it.json +2 -2
  661. homeassistant/components/vallox/translations/ga.json +25 -0
  662. homeassistant/components/vegehub/translations/bg.json +1 -3
  663. homeassistant/components/vegehub/translations/cs.json +2 -2
  664. homeassistant/components/vegehub/translations/de.json +2 -2
  665. homeassistant/components/vegehub/translations/el.json +1 -3
  666. homeassistant/components/vegehub/translations/en-GB.json +8 -0
  667. homeassistant/components/vegehub/translations/en.json +2 -2
  668. homeassistant/components/vegehub/translations/es.json +2 -2
  669. homeassistant/components/vegehub/translations/et.json +2 -2
  670. homeassistant/components/vegehub/translations/ga.json +39 -0
  671. homeassistant/components/vegehub/translations/he.json +16 -0
  672. homeassistant/components/vegehub/translations/hu.json +1 -3
  673. homeassistant/components/vegehub/translations/ja.json +1 -3
  674. homeassistant/components/vegehub/translations/lt.json +2 -2
  675. homeassistant/components/vegehub/translations/pt.json +2 -2
  676. homeassistant/components/vegehub/translations/ru.json +0 -3
  677. homeassistant/components/vegehub/translations/sk.json +2 -2
  678. homeassistant/components/vegehub/translations/sv.json +1 -3
  679. homeassistant/components/vegehub/translations/zh-Hans.json +2 -2
  680. homeassistant/components/vegehub/translations/zh-Hant.json +2 -2
  681. homeassistant/components/velbus/translations/ga.json +3 -0
  682. homeassistant/components/venstar/manifest.json +1 -1
  683. homeassistant/components/vesync/translations/ga.json +4 -1
  684. homeassistant/components/vesync/translations/it.json +2 -2
  685. homeassistant/components/vicare/translations/ga.json +35 -0
  686. homeassistant/components/voip/translations/ga.json +12 -0
  687. homeassistant/components/wallbox/translations/ga.json +3 -0
  688. homeassistant/components/wallbox/translations/it.json +1 -1
  689. homeassistant/components/water_heater/translations/ga.json +3 -0
  690. homeassistant/components/water_heater/translations/it.json +3 -3
  691. homeassistant/components/watergate/translations/ga.json +10 -0
  692. homeassistant/components/waze_travel_time/translations/ga.json +14 -0
  693. homeassistant/components/weatherflow_cloud/translations/es.json +2 -2
  694. homeassistant/components/weatherflow_cloud/translations/ga.json +1 -0
  695. homeassistant/components/webdav/translations/cs.json +1 -0
  696. homeassistant/components/webdav/translations/el.json +1 -0
  697. homeassistant/components/webdav/translations/et.json +1 -0
  698. homeassistant/components/webdav/translations/fr.json +1 -0
  699. homeassistant/components/webdav/translations/ga.json +1 -0
  700. homeassistant/components/webdav/translations/lt.json +1 -0
  701. homeassistant/components/webdav/translations/mk.json +7 -0
  702. homeassistant/components/webdav/translations/pt.json +1 -0
  703. homeassistant/components/weheat/translations/ga.json +62 -0
  704. homeassistant/components/whirlpool/translations/cs.json +1 -0
  705. homeassistant/components/whirlpool/translations/el.json +1 -0
  706. homeassistant/components/whirlpool/translations/et.json +1 -0
  707. homeassistant/components/whirlpool/translations/he.json +2 -1
  708. homeassistant/components/whirlpool/translations/lt.json +1 -0
  709. homeassistant/components/whirlpool/translations/pt.json +1 -0
  710. homeassistant/components/withings/translations/ga.json +3 -0
  711. homeassistant/components/withings/translations/it.json +3 -0
  712. homeassistant/components/withings/translations/ja.json +6 -0
  713. homeassistant/components/wled/translations/it.json +2 -2
  714. homeassistant/components/wmspro/translations/ga.json +12 -0
  715. homeassistant/components/wolflink/translations/it.json +2 -2
  716. homeassistant/components/workday/translations/ga.json +7 -0
  717. homeassistant/components/wyoming/translations/it.json +1 -1
  718. homeassistant/components/xbox/translations/ja.json +6 -0
  719. homeassistant/components/xiaomi_ble/translations/ga.json +21 -0
  720. homeassistant/components/xiaomi_miio/translations/es.json +1 -1
  721. homeassistant/components/xiaomi_miio/translations/ga.json +105 -0
  722. homeassistant/components/xiaomi_miio/translations/he.json +29 -6
  723. homeassistant/components/xiaomi_miio/translations/it.json +1 -1
  724. homeassistant/components/yale/translations/ja.json +6 -0
  725. homeassistant/components/yale_smart_alarm/translations/el.json +2 -1
  726. homeassistant/components/yale_smart_alarm/translations/ga.json +11 -0
  727. homeassistant/components/yale_smart_alarm/translations/it.json +1 -1
  728. homeassistant/components/yamaha_musiccast/translations/it.json +1 -1
  729. homeassistant/components/yeelight/translations/it.json +1 -1
  730. homeassistant/components/yolink/translations/it.json +1 -1
  731. homeassistant/components/yolink/translations/ja.json +6 -0
  732. homeassistant/components/youtube/translations/ga.json +14 -0
  733. homeassistant/components/zha/manifest.json +1 -1
  734. homeassistant/components/zha/translations/ga.json +165 -0
  735. homeassistant/components/zha/translations/he.json +13 -0
  736. homeassistant/components/zha/translations/it.json +10 -2
  737. homeassistant/components/zha/translations/ja.json +25 -2
  738. homeassistant/components/zha/translations/lt.json +50 -0
  739. homeassistant/components/zwave_js/strings.json +11 -11
  740. homeassistant/components/zwave_js/translations/bg.json +6 -20
  741. homeassistant/components/zwave_js/translations/ca.json +0 -6
  742. homeassistant/components/zwave_js/translations/cs.json +37 -4
  743. homeassistant/components/zwave_js/translations/de.json +13 -13
  744. homeassistant/components/zwave_js/translations/el.json +11 -15
  745. homeassistant/components/zwave_js/translations/en-GB.json +11 -15
  746. homeassistant/components/zwave_js/translations/en.json +13 -13
  747. homeassistant/components/zwave_js/translations/es.json +12 -12
  748. homeassistant/components/zwave_js/translations/et.json +12 -12
  749. homeassistant/components/zwave_js/translations/fi.json +0 -15
  750. homeassistant/components/zwave_js/translations/ga.json +23 -20
  751. homeassistant/components/zwave_js/translations/hu.json +0 -27
  752. homeassistant/components/zwave_js/translations/id.json +0 -4
  753. homeassistant/components/zwave_js/translations/it.json +1 -5
  754. homeassistant/components/zwave_js/translations/ja.json +0 -4
  755. homeassistant/components/zwave_js/translations/ko.json +0 -4
  756. homeassistant/components/zwave_js/translations/lt.json +44 -11
  757. homeassistant/components/zwave_js/translations/mk.json +16 -7
  758. homeassistant/components/zwave_js/translations/pt.json +43 -15
  759. homeassistant/components/zwave_js/translations/ru.json +0 -25
  760. homeassistant/components/zwave_js/translations/sk.json +13 -13
  761. homeassistant/components/zwave_js/translations/sv.json +0 -27
  762. homeassistant/components/zwave_js/translations/tr.json +0 -17
  763. homeassistant/components/zwave_js/translations/vi.json +0 -4
  764. homeassistant/components/zwave_js/translations/zh-Hans.json +12 -12
  765. homeassistant/components/zwave_js/translations/zh-Hant.json +12 -12
  766. homeassistant/components/zwave_me/translations/de.json +1 -1
  767. homeassistant/const.py +1 -1
  768. homeassistant/package_constraints.txt +2 -2
  769. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/METADATA +2 -2
  770. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/RECORD +775 -655
  771. homeassistant/components/zwave_js/translations/sq.json +0 -7
  772. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/WHEEL +0 -0
  773. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/entry_points.txt +0 -0
  774. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/licenses/LICENSE.md +0 -0
  775. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  776. {homeassistant-2025.7.0b8.dist-info → homeassistant-2025.7.1.dist-info}/top_level.txt +0 -0
@@ -4,11 +4,13 @@
4
4
  "already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af",
5
5
  "success": "\u039f\u03b9 \u03b1\u03bb\u03bb\u03b1\u03b3\u03ad\u03c2 \u03b1\u03c0\u03bf\u03b8\u03b7\u03ba\u03b5\u03cd\u03c4\u03b7\u03ba\u03b1\u03bd"
6
6
  },
7
+ "flow_title": "\u0395\u03b3\u03b3\u03cd\u03c4\u03b7\u03c4\u03b1",
7
8
  "step": {
8
9
  "user": {
9
10
  "data": {
10
11
  "ignored_zones": "\u0396\u03ce\u03bd\u03b5\u03c2 \u03c0\u03c1\u03bf\u03c2 \u03b1\u03b3\u03bd\u03cc\u03b7\u03c3\u03b7",
11
12
  "tolerance": "\u0391\u03bd\u03bf\u03c7\u03ae \u03b1\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7\u03c2",
13
+ "tracked_entities": "\u03a3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ad\u03c2 \u03ae \u03ac\u03c4\u03bf\u03bc\u03b1 \u03c0\u03c1\u03bf\u03c2 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7",
12
14
  "zone": "\u0396\u03ce\u03bd\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b1\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7\u03c2 \u03c0\u03c1\u03bf\u03c2"
13
15
  }
14
16
  }
@@ -17,6 +19,7 @@
17
19
  "entity": {
18
20
  "sensor": {
19
21
  "dir_of_travel": {
22
+ "name": "\u039a\u03b1\u03c4\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03b1\u03be\u03b9\u03b4\u03b9\u03bf\u03cd {tracked_entity}",
20
23
  "state": {
21
24
  "arrived": "\u0391\u03c6\u03b9\u03be\u03b7",
22
25
  "away_from": "\u0395\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c0\u03b9\u03c4\u03b9\u03bf\u03cd",
@@ -24,11 +27,20 @@
24
27
  "towards": "\u03a0\u03c1\u03bf\u03c2"
25
28
  }
26
29
  },
30
+ "dist_to_zone": {
31
+ "name": "\u0391\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7 {tracked_entity}"
32
+ },
27
33
  "nearest": {
28
34
  "name": "\u039a\u03bf\u03bd\u03c4\u03b9\u03bd\u03cc\u03c4\u03b5\u03c1\u03b7 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae"
29
35
  },
30
36
  "nearest_dir_of_travel": {
31
- "name": "\u039a\u03bf\u03bd\u03c4\u03b9\u03bd\u03cc\u03c4\u03b5\u03c1\u03b7 \u03ba\u03b1\u03c4\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03b1\u03be\u03b9\u03b4\u03b9\u03bf\u03cd"
37
+ "name": "\u039a\u03bf\u03bd\u03c4\u03b9\u03bd\u03cc\u03c4\u03b5\u03c1\u03b7 \u03ba\u03b1\u03c4\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 \u03c4\u03b1\u03be\u03b9\u03b4\u03b9\u03bf\u03cd",
38
+ "state": {
39
+ "arrived": "\u0391\u03c6\u03b9\u03be\u03b7",
40
+ "away_from": "\u0395\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c0\u03b9\u03c4\u03b9\u03bf\u03cd",
41
+ "stationary": "\u03a3\u03c4\u03b1\u03b8\u03b5\u03c1\u03cc",
42
+ "towards": "\u03a0\u03c1\u03bf\u03c2"
43
+ }
32
44
  },
33
45
  "nearest_dist_to_zone": {
34
46
  "name": "\u039a\u03bf\u03bd\u03c4\u03b9\u03bd\u03cc\u03c4\u03b5\u03c1\u03b7 \u03b1\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7"
@@ -48,5 +60,17 @@
48
60
  "title": "\u0397 \u03bf\u03bd\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1 \u03c0\u03bf\u03c5 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03b5\u03af\u03c4\u03b1\u03b9 \u03ad\u03c7\u03b5\u03b9 \u03ba\u03b1\u03c4\u03b1\u03c1\u03b3\u03b7\u03b8\u03b5\u03af"
49
61
  }
50
62
  },
63
+ "options": {
64
+ "step": {
65
+ "init": {
66
+ "data": {
67
+ "ignored_zones": "\u0396\u03ce\u03bd\u03b5\u03c2 \u03c0\u03c1\u03bf\u03c2 \u03b1\u03b3\u03bd\u03cc\u03b7\u03c3\u03b7",
68
+ "tolerance": "\u0391\u03bd\u03bf\u03c7\u03ae \u03b1\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7\u03c2",
69
+ "tracked_entities": "\u03a3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ad\u03c2 \u03ae \u03ac\u03c4\u03bf\u03bc\u03b1 \u03c0\u03c1\u03bf\u03c2 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7",
70
+ "zone": "\u0396\u03ce\u03bd\u03b7 \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b1\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7\u03c2 \u03c0\u03c1\u03bf\u03c2"
71
+ }
72
+ }
73
+ }
74
+ },
51
75
  "title": "\u0395\u03b3\u03b3\u03cd\u03c4\u03b7\u03c4\u03b1"
52
76
  }
@@ -4,11 +4,13 @@
4
4
  "already_configured": "L'appareil est d\u00e9j\u00e0 configur\u00e9",
5
5
  "success": "Changements sauvegard\u00e9s"
6
6
  },
7
+ "flow_title": "Proximit\u00e9",
7
8
  "step": {
8
9
  "user": {
9
10
  "data": {
10
11
  "ignored_zones": "Zones \u00e0 ignorer",
11
12
  "tolerance": "Distance de tol\u00e9rance",
13
+ "tracked_entities": "Appareils ou personnes \u00e0 suivre",
12
14
  "zone": "Zone depuis laquelle suivre la distance"
13
15
  }
14
16
  }
@@ -24,11 +26,20 @@
24
26
  "towards": "Se rapproche"
25
27
  }
26
28
  },
29
+ "dist_to_zone": {
30
+ "name": "Distance avec {tracked_entity}"
31
+ },
27
32
  "nearest": {
28
33
  "name": "Appareil le plus proche"
29
34
  },
30
35
  "nearest_dir_of_travel": {
31
- "name": "Direction de d\u00e9placement de l'entit\u00e9 la plus proche"
36
+ "name": "Direction de d\u00e9placement de l'entit\u00e9 la plus proche",
37
+ "state": {
38
+ "arrived": "Arriv\u00e9",
39
+ "away_from": "S'\u00e9loigne",
40
+ "stationary": "Stationnaire",
41
+ "towards": "Se rapproche"
42
+ }
32
43
  },
33
44
  "nearest_dist_to_zone": {
34
45
  "name": "Distance la plus proche"
@@ -47,5 +58,17 @@
47
58
  "title": "L'entit\u00e9 suivie a \u00e9t\u00e9 supprim\u00e9e"
48
59
  }
49
60
  },
61
+ "options": {
62
+ "step": {
63
+ "init": {
64
+ "data": {
65
+ "ignored_zones": "Zones \u00e0 ignorer",
66
+ "tolerance": "Distance de tol\u00e9rance",
67
+ "tracked_entities": "Appareils ou personnes \u00e0 suivre",
68
+ "zone": "Zone depuis laquelle suivre la distance"
69
+ }
70
+ }
71
+ }
72
+ },
50
73
  "title": "Proximit\u00e9"
51
74
  }
@@ -4,11 +4,13 @@
4
4
  "already_configured": "Prietaisas jau sukonfig\u016bruotas",
5
5
  "success": "Pakeitimai i\u0161saugoti"
6
6
  },
7
+ "flow_title": "Artumas",
7
8
  "step": {
8
9
  "user": {
9
10
  "data": {
10
11
  "ignored_zones": "Zonos, kuri\u0173 reikia ignoruoti",
11
12
  "tolerance": "Tolerancijos atstumas",
13
+ "tracked_entities": "\u012erenginiai arba asmenys, kuriuos reikia sekti",
12
14
  "zone": "Zona, iki kurios reikia sekti atstum\u0105"
13
15
  }
14
16
  }
@@ -17,6 +19,7 @@
17
19
  "entity": {
18
20
  "sensor": {
19
21
  "dir_of_travel": {
22
+ "name": "{tracked_entity} kelion\u0117s kryptis",
20
23
  "state": {
21
24
  "arrived": "Atvyko",
22
25
  "away_from": "Toliau nuo",
@@ -24,11 +27,20 @@
24
27
  "towards": "Link"
25
28
  }
26
29
  },
30
+ "dist_to_zone": {
31
+ "name": "{tracked_entity} atstumas"
32
+ },
27
33
  "nearest": {
28
34
  "name": "Artimiausias prietaisas"
29
35
  },
30
36
  "nearest_dir_of_travel": {
31
- "name": "Artimiausia kelion\u0117s kryptis"
37
+ "name": "Artimiausia kelion\u0117s kryptis",
38
+ "state": {
39
+ "arrived": "Atvyko",
40
+ "away_from": "Toliau nuo",
41
+ "stationary": "Stacionarus",
42
+ "towards": "Link"
43
+ }
32
44
  },
33
45
  "nearest_dist_to_zone": {
34
46
  "name": "Artimiausias atstumas"
@@ -48,5 +60,17 @@
48
60
  "title": "Stebimas subjektas pa\u0161alintas"
49
61
  }
50
62
  },
63
+ "options": {
64
+ "step": {
65
+ "init": {
66
+ "data": {
67
+ "ignored_zones": "Zonos, kuri\u0173 reikia ignoruoti",
68
+ "tolerance": "Tolerancijos atstumas",
69
+ "tracked_entities": "\u012erenginiai arba asmenys, kuriuos reikia sekti",
70
+ "zone": "Zona, iki kurios reikia sekti atstum\u0105"
71
+ }
72
+ }
73
+ }
74
+ },
51
75
  "title": "Artumas"
52
76
  }
@@ -15,6 +15,9 @@
15
15
  "towards": "Richting"
16
16
  }
17
17
  },
18
+ "dist_to_zone": {
19
+ "name": "{tracked_entity} afstand"
20
+ },
18
21
  "nearest_dir_of_travel": {
19
22
  "state": {
20
23
  "arrived": "Aangekomen",
@@ -4,11 +4,13 @@
4
4
  "already_configured": "Dispositivo j\u00e1 configurado",
5
5
  "success": "Altera\u00e7\u00f5es gravadas"
6
6
  },
7
+ "flow_title": "Proximidade",
7
8
  "step": {
8
9
  "user": {
9
10
  "data": {
10
11
  "ignored_zones": "Zonas a ignorar",
11
12
  "tolerance": "Dist\u00e2ncia de toler\u00e2ncia",
13
+ "tracked_entities": "Dispositivos ou pessoas a rastrear",
12
14
  "zone": "Zona para a qual rastrear a dist\u00e2ncia"
13
15
  }
14
16
  }
@@ -17,6 +19,7 @@
17
19
  "entity": {
18
20
  "sensor": {
19
21
  "dir_of_travel": {
22
+ "name": "Dire\u00e7\u00e3o da viagem {tracked_entity}",
20
23
  "state": {
21
24
  "arrived": "Chegou",
22
25
  "away_from": "Longe de",
@@ -24,11 +27,20 @@
24
27
  "towards": "Em dire\u00e7\u00e3o a"
25
28
  }
26
29
  },
30
+ "dist_to_zone": {
31
+ "name": "{tracked_entity} dist\u00e2ncia"
32
+ },
27
33
  "nearest": {
28
34
  "name": "Dispositivo mais pr\u00f3ximo"
29
35
  },
30
36
  "nearest_dir_of_travel": {
31
- "name": "Dire\u00e7\u00e3o mais pr\u00f3xima de viagem"
37
+ "name": "Dire\u00e7\u00e3o mais pr\u00f3xima de viagem",
38
+ "state": {
39
+ "arrived": "Chegou",
40
+ "away_from": "Longe de",
41
+ "stationary": "Estacion\u00e1rio",
42
+ "towards": "Em dire\u00e7\u00e3o a"
43
+ }
32
44
  },
33
45
  "nearest_dist_to_zone": {
34
46
  "name": "Dist\u00e2ncia mais pr\u00f3xima"
@@ -48,5 +60,17 @@
48
60
  "title": "A entidade rastreada foi removida"
49
61
  }
50
62
  },
63
+ "options": {
64
+ "step": {
65
+ "init": {
66
+ "data": {
67
+ "ignored_zones": "Zonas a ignorar",
68
+ "tolerance": "Dist\u00e2ncia de toler\u00e2ncia",
69
+ "tracked_entities": "Dispositivos ou pessoas a rastrear",
70
+ "zone": "Zona para a qual rastrear a dist\u00e2ncia"
71
+ }
72
+ }
73
+ }
74
+ },
51
75
  "title": "Proximidade"
52
76
  }
@@ -1,6 +1,12 @@
1
1
  {
2
2
  "entity": {
3
3
  "sensor": {
4
+ "active_torrents": {
5
+ "unit_of_measurement": "torr\u00e1in"
6
+ },
7
+ "all_torrents": {
8
+ "unit_of_measurement": "torr\u00e1in"
9
+ },
4
10
  "alltime_download": {
5
11
  "name": "\u00cdosl\u00f3d\u00e1il i gc\u00f3na\u00ed"
6
12
  },
@@ -19,6 +25,12 @@
19
25
  "global_ratio": {
20
26
  "name": "C\u00f3imheas domhanda"
21
27
  },
28
+ "inactive_torrents": {
29
+ "unit_of_measurement": "torr\u00e1in"
30
+ },
31
+ "paused_torrents": {
32
+ "unit_of_measurement": "torr\u00e1in"
33
+ },
22
34
  "upload_speed_limit": {
23
35
  "name": "Teorainn luais uasl\u00f3d\u00e1la"
24
36
  }
@@ -0,0 +1,9 @@
1
+ {
2
+ "entity": {
3
+ "sensor": {
4
+ "uptime_timestamp": {
5
+ "name": "Stampa ama ar l\u00edne"
6
+ }
7
+ }
8
+ }
9
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "reauth_confirm": {
5
+ "data_description": {
6
+ "password": "An focal faire chun f\u00edordheimhni\u00fa a dh\u00e9anamh le do ghl\u00e9as Rain Bird."
7
+ },
8
+ "description": "N\u00ed m\u00f3r an comhth\u00e1th\u00fa Rain Bird a athfh\u00edordheimhni\u00fa leis an bhfeiste."
9
+ },
10
+ "user": {
11
+ "data_description": {
12
+ "password": "An focal faire a \u00fas\u00e1idtear chun f\u00edordheimhni\u00fa a dh\u00e9anamh leis an ngl\u00e9as Rain Bird."
13
+ }
14
+ }
15
+ }
16
+ },
17
+ "options": {
18
+ "step": {
19
+ "init": {
20
+ "data_description": {
21
+ "duration": "An fad r\u00e9amhshocraithe a bheidh an sprinkler ag rith nuair a chasfar air \u00e9."
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
@@ -2,10 +2,13 @@
2
2
  "selector": {
3
3
  "sensor_device_class": {
4
4
  "options": {
5
+ "area": "Limist\u00e9ar",
6
+ "blood_glucose_concentration": "Ti\u00fachan gl\u00fac\u00f3is fola",
5
7
  "energy_distance": "Fuinneamh in aghaidh an achair",
6
8
  "reactive_energy": "Fuinneamh imoibr\u00edoch",
7
9
  "wind_direction": "Treo na gaoithe"
8
10
  }
9
11
  }
10
- }
12
+ },
13
+ "title": "Randamach"
11
14
  }
@@ -19,8 +19,8 @@
19
19
  "_": {
20
20
  "name": "Telecomando",
21
21
  "state": {
22
- "off": "Spento/a",
23
- "on": "Acceso/a"
22
+ "off": "Off",
23
+ "on": "On"
24
24
  }
25
25
  }
26
26
  },
@@ -0,0 +1,12 @@
1
+ """Specifies the parameter for the httpx download."""
2
+
3
+ from httpx import AsyncClient, Response, Timeout
4
+
5
+
6
+ async def get_calendar(client: AsyncClient, url: str) -> Response:
7
+ """Make an HTTP GET request using Home Assistant's async HTTPX client with timeout."""
8
+ return await client.get(
9
+ url,
10
+ follow_redirects=True,
11
+ timeout=Timeout(5, read=30, write=5, pool=5),
12
+ )
@@ -4,13 +4,14 @@ from http import HTTPStatus
4
4
  import logging
5
5
  from typing import Any
6
6
 
7
- from httpx import HTTPError, InvalidURL
7
+ from httpx import HTTPError, InvalidURL, TimeoutException
8
8
  import voluptuous as vol
9
9
 
10
10
  from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
11
11
  from homeassistant.const import CONF_URL
12
12
  from homeassistant.helpers.httpx_client import get_async_client
13
13
 
14
+ from .client import get_calendar
14
15
  from .const import CONF_CALENDAR_NAME, DOMAIN
15
16
  from .ics import InvalidIcsException, parse_calendar
16
17
 
@@ -49,7 +50,7 @@ class RemoteCalendarConfigFlow(ConfigFlow, domain=DOMAIN):
49
50
  self._async_abort_entries_match({CONF_URL: user_input[CONF_URL]})
50
51
  client = get_async_client(self.hass)
51
52
  try:
52
- res = await client.get(user_input[CONF_URL], follow_redirects=True)
53
+ res = await get_calendar(client, user_input[CONF_URL])
53
54
  if res.status_code == HTTPStatus.FORBIDDEN:
54
55
  errors["base"] = "forbidden"
55
56
  return self.async_show_form(
@@ -58,9 +59,14 @@ class RemoteCalendarConfigFlow(ConfigFlow, domain=DOMAIN):
58
59
  errors=errors,
59
60
  )
60
61
  res.raise_for_status()
62
+ except TimeoutException as err:
63
+ errors["base"] = "timeout_connect"
64
+ _LOGGER.debug(
65
+ "A timeout error occurred: %s", str(err) or type(err).__name__
66
+ )
61
67
  except (HTTPError, InvalidURL) as err:
62
68
  errors["base"] = "cannot_connect"
63
- _LOGGER.debug("An error occurred: %s", err)
69
+ _LOGGER.debug("An error occurred: %s", str(err) or type(err).__name__)
64
70
  else:
65
71
  try:
66
72
  await parse_calendar(self.hass, res.text)
@@ -3,7 +3,7 @@
3
3
  from datetime import timedelta
4
4
  import logging
5
5
 
6
- from httpx import HTTPError, InvalidURL
6
+ from httpx import HTTPError, InvalidURL, TimeoutException
7
7
  from ical.calendar import Calendar
8
8
 
9
9
  from homeassistant.config_entries import ConfigEntry
@@ -12,6 +12,7 @@ from homeassistant.core import HomeAssistant
12
12
  from homeassistant.helpers.httpx_client import get_async_client
13
13
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
14
14
 
15
+ from .client import get_calendar
15
16
  from .const import DOMAIN
16
17
  from .ics import InvalidIcsException, parse_calendar
17
18
 
@@ -36,7 +37,7 @@ class RemoteCalendarDataUpdateCoordinator(DataUpdateCoordinator[Calendar]):
36
37
  super().__init__(
37
38
  hass,
38
39
  _LOGGER,
39
- name=DOMAIN,
40
+ name=f"{DOMAIN}_{config_entry.title}",
40
41
  update_interval=SCAN_INTERVAL,
41
42
  always_update=True,
42
43
  )
@@ -46,13 +47,19 @@ class RemoteCalendarDataUpdateCoordinator(DataUpdateCoordinator[Calendar]):
46
47
  async def _async_update_data(self) -> Calendar:
47
48
  """Update data from the url."""
48
49
  try:
49
- res = await self._client.get(self._url, follow_redirects=True)
50
+ res = await get_calendar(self._client, self._url)
50
51
  res.raise_for_status()
52
+ except TimeoutException as err:
53
+ _LOGGER.debug("%s: %s", self._url, str(err) or type(err).__name__)
54
+ raise UpdateFailed(
55
+ translation_domain=DOMAIN,
56
+ translation_key="timeout",
57
+ ) from err
51
58
  except (HTTPError, InvalidURL) as err:
59
+ _LOGGER.debug("%s: %s", self._url, str(err) or type(err).__name__)
52
60
  raise UpdateFailed(
53
61
  translation_domain=DOMAIN,
54
62
  translation_key="unable_to_fetch",
55
- translation_placeholders={"err": str(err)},
56
63
  ) from err
57
64
  try:
58
65
  self.ics = res.text
@@ -18,14 +18,18 @@
18
18
  "already_configured": "[%key:common::config_flow::abort::already_configured_service%]"
19
19
  },
20
20
  "error": {
21
+ "timeout_connect": "[%key:common::config_flow::error::timeout_connect%]",
21
22
  "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
22
23
  "forbidden": "The server understood the request but refuses to authorize it.",
23
24
  "invalid_ics_file": "There was a problem reading the calendar information. See the error log for additional details."
24
25
  }
25
26
  },
26
27
  "exceptions": {
28
+ "timeout": {
29
+ "message": "The connection timed out. See the debug log for additional details."
30
+ },
27
31
  "unable_to_fetch": {
28
- "message": "Unable to fetch calendar data: {err}"
32
+ "message": "Unable to fetch calendar data. See the debug log for additional details."
29
33
  },
30
34
  "unable_to_parse": {
31
35
  "message": "Unable to parse calendar data: {err}"
@@ -6,7 +6,8 @@
6
6
  "error": {
7
7
  "cannot_connect": "Nepoda\u0159ilo se p\u0159ipojit",
8
8
  "forbidden": "Server po\u017eadavek pochopil, ale odm\u00edt\u00e1 jej autorizovat.",
9
- "invalid_ics_file": "P\u0159i \u010dten\u00ed informac\u00ed kalend\u00e1\u0159e do\u0161lo k probl\u00e9mu. Dal\u0161\u00ed podrobnosti naleznete v protokolu chyb."
9
+ "invalid_ics_file": "P\u0159i \u010dten\u00ed informac\u00ed kalend\u00e1\u0159e do\u0161lo k probl\u00e9mu. Dal\u0161\u00ed podrobnosti naleznete v protokolu chyb.",
10
+ "timeout_connect": "Vypr\u0161el \u010dasov\u00fd limit pro nav\u00e1z\u00e1n\u00ed spojen\u00ed"
10
11
  },
11
12
  "step": {
12
13
  "user": {
@@ -23,8 +24,11 @@
23
24
  }
24
25
  },
25
26
  "exceptions": {
27
+ "timeout": {
28
+ "message": "\u010casov\u00fd limit p\u0159ipojen\u00ed vypr\u0161el. Dal\u0161\u00ed podrobnosti naleznete v protokolu lad\u011bn\u00ed."
29
+ },
26
30
  "unable_to_fetch": {
27
- "message": "Nelze na\u010d\u00edst data kalend\u00e1\u0159e: {err}"
31
+ "message": "Nelze na\u010d\u00edst data kalend\u00e1\u0159e. Dal\u0161\u00ed podrobnosti naleznete v protokolu lad\u011bn\u00ed."
28
32
  },
29
33
  "unable_to_parse": {
30
34
  "message": "Nelze analyzovat data kalend\u00e1\u0159e: {err}"
@@ -6,7 +6,8 @@
6
6
  "error": {
7
7
  "cannot_connect": "Verbindung fehlgeschlagen",
8
8
  "forbidden": "Der Server hat die Anfrage verstanden, verweigert jedoch die Autorisierung.",
9
- "invalid_ics_file": "Beim Lesen der Kalenderdaten ist ein Problem aufgetreten. Weitere Informationen im Fehlerprotokoll."
9
+ "invalid_ics_file": "Beim Lesen der Kalenderdaten ist ein Problem aufgetreten. Weitere Informationen im Fehlerprotokoll.",
10
+ "timeout_connect": "Zeit\u00fcberschreitung beim Verbindungsaufbau"
10
11
  },
11
12
  "step": {
12
13
  "user": {
@@ -23,8 +24,11 @@
23
24
  }
24
25
  },
25
26
  "exceptions": {
27
+ "timeout": {
28
+ "message": "Bei der Verbindung ist eine Zeit\u00fcberschreitung aufgetreten. Weitere Details im Debug-Protokoll."
29
+ },
26
30
  "unable_to_fetch": {
27
- "message": "Kalenderdaten konnten nicht abgerufen werden: {err}"
31
+ "message": "Kalenderdaten konnten nicht abgerufen werden. Weitere Details im Debug-Protokoll."
28
32
  },
29
33
  "unable_to_parse": {
30
34
  "message": "Kalenderdaten k\u00f6nnen nicht analysiert werden: {err}"
@@ -23,9 +23,6 @@
23
23
  }
24
24
  },
25
25
  "exceptions": {
26
- "unable_to_fetch": {
27
- "message": "Unable to fetch calendar data: {err}"
28
- },
29
26
  "unable_to_parse": {
30
27
  "message": "Unable to parse calendar data: {err}"
31
28
  }
@@ -6,7 +6,8 @@
6
6
  "error": {
7
7
  "cannot_connect": "Failed to connect",
8
8
  "forbidden": "The server understood the request but refuses to authorize it.",
9
- "invalid_ics_file": "There was a problem reading the calendar information. See the error log for additional details."
9
+ "invalid_ics_file": "There was a problem reading the calendar information. See the error log for additional details.",
10
+ "timeout_connect": "Timeout establishing connection"
10
11
  },
11
12
  "step": {
12
13
  "user": {
@@ -23,8 +24,11 @@
23
24
  }
24
25
  },
25
26
  "exceptions": {
27
+ "timeout": {
28
+ "message": "The connection timed out. See the debug log for additional details."
29
+ },
26
30
  "unable_to_fetch": {
27
- "message": "Unable to fetch calendar data: {err}"
31
+ "message": "Unable to fetch calendar data. See the debug log for additional details."
28
32
  },
29
33
  "unable_to_parse": {
30
34
  "message": "Unable to parse calendar data: {err}"
@@ -6,7 +6,8 @@
6
6
  "error": {
7
7
  "cannot_connect": "No se pudo conectar",
8
8
  "forbidden": "El servidor entendi\u00f3 la solicitud pero se niega a autorizarla.",
9
- "invalid_ics_file": "Hubo un problema al leer la informaci\u00f3n del calendario. Consulta el registro de errores para obtener m\u00e1s informaci\u00f3n."
9
+ "invalid_ics_file": "Hubo un problema al leer la informaci\u00f3n del calendario. Consulta el registro de errores para obtener m\u00e1s informaci\u00f3n.",
10
+ "timeout_connect": "Tiempo de espera agotado mientras se establec\u00eda la conexi\u00f3n"
10
11
  },
11
12
  "step": {
12
13
  "user": {
@@ -23,8 +24,11 @@
23
24
  }
24
25
  },
25
26
  "exceptions": {
27
+ "timeout": {
28
+ "message": "Se agot\u00f3 el tiempo de espera de la conexi\u00f3n. Consulta el registro de depuraci\u00f3n para obtener m\u00e1s informaci\u00f3n."
29
+ },
26
30
  "unable_to_fetch": {
27
- "message": "No se pueden obtener los datos del calendario: {err}"
31
+ "message": "No se pueden obtener los datos del calendario. Consulta el registro de depuraci\u00f3n para obtener m\u00e1s informaci\u00f3n."
28
32
  },
29
33
  "unable_to_parse": {
30
34
  "message": "No se pueden analizar los datos del calendario: {err}"
@@ -6,7 +6,8 @@
6
6
  "error": {
7
7
  "cannot_connect": "\u00dchendamine nurjus",
8
8
  "forbidden": "Server sai taotlusest aru kuid keeldub seda volitamast.",
9
- "invalid_ics_file": "Kalendriteabe lugemisel tekkis probleem. Lisateavet leiad t\u00f5rkelogist."
9
+ "invalid_ics_file": "Kalendriteabe lugemisel tekkis probleem. Lisateavet leiad t\u00f5rkelogist.",
10
+ "timeout_connect": "\u00dchenduse loomise ajal\u00f5pp"
10
11
  },
11
12
  "step": {
12
13
  "user": {
@@ -23,8 +24,11 @@
23
24
  }
24
25
  },
25
26
  "exceptions": {
27
+ "timeout": {
28
+ "message": "\u00dchendus aegus. Lisateabe saamiseks vaata silumislogi."
29
+ },
26
30
  "unable_to_fetch": {
27
- "message": "Kalendri andmeid ei saa tuua: {err}"
31
+ "message": "Kalendriandmeid ei saa hankida. Lisateabe saamiseks vaata silumislogi."
28
32
  },
29
33
  "unable_to_parse": {
30
34
  "message": "Kalendri andmeid ei saa s\u00f5eluda: {err}"
@@ -23,9 +23,6 @@
23
23
  }
24
24
  },
25
25
  "exceptions": {
26
- "unable_to_fetch": {
27
- "message": "Kalenteritietojen nouto ep\u00e4onnistui: {err}"
28
- },
29
26
  "unable_to_parse": {
30
27
  "message": "Kalenteritietojen j\u00e4sent\u00e4minen ep\u00e4onnistui: {err}"
31
28
  }
@@ -23,9 +23,6 @@
23
23
  }
24
24
  },
25
25
  "exceptions": {
26
- "unable_to_fetch": {
27
- "message": "Impossible de r\u00e9cup\u00e9rer les donn\u00e9es du calendrier\u00a0: {err}"
28
- },
29
26
  "unable_to_parse": {
30
27
  "message": "Impossible d'analyser les donn\u00e9es du calendrier\u00a0: {err}"
31
28
  }
@@ -19,8 +19,8 @@
19
19
  }
20
20
  },
21
21
  "exceptions": {
22
- "unable_to_fetch": {
23
- "message": "N\u00ed f\u00e9idir sonra\u00ed f\u00e9ilire a fh\u00e1il: {err}"
22
+ "timeout": {
23
+ "message": "Chuaigh an t-am isteach sa nasc. F\u00e9ach ar an log d\u00edfhabhtaithe le haghaidh tuilleadh sonra\u00ed."
24
24
  },
25
25
  "unable_to_parse": {
26
26
  "message": "N\u00ed f\u00e9idir sonra\u00ed f\u00e9ilire a phars\u00e1il: {err}"
@@ -23,9 +23,6 @@
23
23
  }
24
24
  },
25
25
  "exceptions": {
26
- "unable_to_fetch": {
27
- "message": "\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d0\u05d7\u05d6\u05e8 \u05e0\u05ea\u05d5\u05e0\u05d9 \u05dc\u05d5\u05d7 \u05e9\u05e0\u05d4: {err}"
28
- },
29
26
  "unable_to_parse": {
30
27
  "message": "\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05e0\u05ea\u05d7 \u05e0\u05ea\u05d5\u05e0\u05d9 \u05dc\u05d5\u05d7 \u05e9\u05e0\u05d4: {err}"
31
28
  }
@@ -23,9 +23,6 @@
23
23
  }
24
24
  },
25
25
  "exceptions": {
26
- "unable_to_fetch": {
27
- "message": "Nem siker\u00fclt lek\u00e9rni a napt\u00e1radatokat: {err}"
28
- },
29
26
  "unable_to_parse": {
30
27
  "message": "Nem siker\u00fclt feldolgozni a napt\u00e1radatokat: {err}"
31
28
  }