homeassistant 2025.10.0b1__py3-none-any.whl → 2025.10.0b4__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.

Potentially problematic release.


This version of homeassistant might be problematic. Click here for more details.

Files changed (214) hide show
  1. homeassistant/components/accuweather/manifest.json +1 -1
  2. homeassistant/components/accuweather/translations/ga.json +16 -1
  3. homeassistant/components/airos/__init__.py +37 -2
  4. homeassistant/components/airos/config_flow.py +24 -3
  5. homeassistant/components/airos/const.py +5 -0
  6. homeassistant/components/airos/entity.py +8 -3
  7. homeassistant/components/airos/strings.json +12 -0
  8. homeassistant/components/airos/translations/de.json +12 -0
  9. homeassistant/components/airos/translations/en-GB.json +12 -0
  10. homeassistant/components/airos/translations/en.json +12 -0
  11. homeassistant/components/airzone/translations/es.json +10 -0
  12. homeassistant/components/airzone/translations/et.json +10 -0
  13. homeassistant/components/airzone/translations/ga.json +10 -0
  14. homeassistant/components/airzone/translations/pt.json +10 -0
  15. homeassistant/components/alexa_devices/binary_sensor.py +36 -38
  16. homeassistant/components/alexa_devices/config_flow.py +2 -2
  17. homeassistant/components/alexa_devices/coordinator.py +1 -1
  18. homeassistant/components/alexa_devices/diagnostics.py +1 -3
  19. homeassistant/components/alexa_devices/icons.json +0 -40
  20. homeassistant/components/alexa_devices/manifest.json +1 -1
  21. homeassistant/components/alexa_devices/sensor.py +13 -0
  22. homeassistant/components/alexa_devices/strings.json +0 -20
  23. homeassistant/components/alexa_devices/switch.py +27 -7
  24. homeassistant/components/alexa_devices/translations/bg.json +0 -13
  25. homeassistant/components/alexa_devices/translations/cs.json +0 -20
  26. homeassistant/components/alexa_devices/translations/de.json +0 -20
  27. homeassistant/components/alexa_devices/translations/el.json +0 -20
  28. homeassistant/components/alexa_devices/translations/en-GB.json +0 -20
  29. homeassistant/components/alexa_devices/translations/en.json +0 -20
  30. homeassistant/components/alexa_devices/translations/es.json +0 -20
  31. homeassistant/components/alexa_devices/translations/et.json +0 -20
  32. homeassistant/components/alexa_devices/translations/ga.json +0 -20
  33. homeassistant/components/alexa_devices/translations/he.json +0 -7
  34. homeassistant/components/alexa_devices/translations/hu.json +0 -20
  35. homeassistant/components/alexa_devices/translations/it.json +0 -20
  36. homeassistant/components/alexa_devices/translations/ja.json +0 -19
  37. homeassistant/components/alexa_devices/translations/lt.json +0 -20
  38. homeassistant/components/alexa_devices/translations/mk.json +0 -14
  39. homeassistant/components/alexa_devices/translations/nl.json +0 -20
  40. homeassistant/components/alexa_devices/translations/pl.json +0 -5
  41. homeassistant/components/alexa_devices/translations/pt.json +0 -20
  42. homeassistant/components/alexa_devices/translations/ru.json +0 -5
  43. homeassistant/components/alexa_devices/translations/sk.json +0 -20
  44. homeassistant/components/alexa_devices/translations/sv.json +0 -20
  45. homeassistant/components/alexa_devices/translations/tr.json +0 -5
  46. homeassistant/components/alexa_devices/translations/zh-Hans.json +0 -20
  47. homeassistant/components/alexa_devices/translations/zh-Hant.json +0 -20
  48. homeassistant/components/alexa_devices/utils.py +24 -1
  49. homeassistant/components/assist_pipeline/pipeline.py +43 -18
  50. homeassistant/components/assist_pipeline/translations/nl.json +1 -0
  51. homeassistant/components/assist_pipeline/translations/sv.json +1 -0
  52. homeassistant/components/blue_current/translations/es.json +44 -0
  53. homeassistant/components/blue_current/translations/et.json +44 -0
  54. homeassistant/components/blue_current/translations/ga.json +44 -0
  55. homeassistant/components/blue_current/translations/pt.json +44 -0
  56. homeassistant/components/cloud/translations/sk.json +1 -1
  57. homeassistant/components/comelit/config_flow.py +8 -4
  58. homeassistant/components/cync/translations/es.json +32 -0
  59. homeassistant/components/cync/translations/et.json +32 -0
  60. homeassistant/components/cync/translations/ga.json +32 -0
  61. homeassistant/components/cync/translations/pt.json +32 -0
  62. homeassistant/components/cync/translations/ru.json +32 -0
  63. homeassistant/components/ecovacs/translations/es.json +7 -1
  64. homeassistant/components/ecovacs/translations/et.json +7 -1
  65. homeassistant/components/ecovacs/translations/ga.json +6 -1
  66. homeassistant/components/ecovacs/translations/pt.json +4 -0
  67. homeassistant/components/ecovacs/translations/ru.json +4 -0
  68. homeassistant/components/edl21/translations/de.json +1 -1
  69. homeassistant/components/ekeybionyx/translations/es.json +66 -0
  70. homeassistant/components/ekeybionyx/translations/et.json +66 -0
  71. homeassistant/components/ekeybionyx/translations/ga.json +66 -0
  72. homeassistant/components/ekeybionyx/translations/pt.json +66 -0
  73. homeassistant/components/elvia/translations/de.json +3 -3
  74. homeassistant/components/esphome/manager.py +1 -1
  75. homeassistant/components/esphome/manifest.json +1 -1
  76. homeassistant/components/esphome/translations/nl.json +1 -1
  77. homeassistant/components/esphome/translations/sv.json +1 -1
  78. homeassistant/components/ezviz/entity.py +12 -6
  79. homeassistant/components/file/translations/es.json +31 -0
  80. homeassistant/components/file/translations/et.json +31 -0
  81. homeassistant/components/file/translations/ga.json +31 -0
  82. homeassistant/components/file/translations/pt.json +31 -0
  83. homeassistant/components/file/translations/ru.json +31 -0
  84. homeassistant/components/frontend/manifest.json +1 -1
  85. homeassistant/components/geniushub/entity.py +4 -4
  86. homeassistant/components/google_generative_ai_conversation/translations/ga.json +6 -0
  87. homeassistant/components/habitica/translations/ga.json +24 -0
  88. homeassistant/components/hassio/translations/es.json +4 -0
  89. homeassistant/components/hassio/translations/et.json +4 -0
  90. homeassistant/components/hassio/translations/ga.json +4 -0
  91. homeassistant/components/hassio/translations/pt.json +4 -0
  92. homeassistant/components/hassio/translations/ru.json +4 -0
  93. homeassistant/components/here_travel_time/translations/es.json +6 -0
  94. homeassistant/components/here_travel_time/translations/et.json +6 -0
  95. homeassistant/components/here_travel_time/translations/ga.json +6 -0
  96. homeassistant/components/here_travel_time/translations/pt.json +6 -0
  97. homeassistant/components/irm_kmi/translations/ga.json +50 -0
  98. homeassistant/components/lamarzocco/__init__.py +1 -1
  99. homeassistant/components/lamarzocco/coordinator.py +10 -2
  100. homeassistant/components/lamarzocco/manifest.json +1 -1
  101. homeassistant/components/letpot/translations/es.json +10 -0
  102. homeassistant/components/letpot/translations/et.json +10 -0
  103. homeassistant/components/letpot/translations/ga.json +9 -0
  104. homeassistant/components/letpot/translations/pt.json +10 -0
  105. homeassistant/components/lg_thinq/translations/ga.json +9 -0
  106. homeassistant/components/logbook/translations/es.json +6 -1
  107. homeassistant/components/logbook/translations/et.json +6 -1
  108. homeassistant/components/logbook/translations/pl.json +3 -1
  109. homeassistant/components/logbook/translations/pt.json +6 -1
  110. homeassistant/components/logbook/translations/ru.json +6 -1
  111. homeassistant/components/mastodon/translations/ga.json +4 -0
  112. homeassistant/components/matter/translations/es.json +3 -0
  113. homeassistant/components/matter/translations/et.json +3 -0
  114. homeassistant/components/matter/translations/ga.json +3 -0
  115. homeassistant/components/matter/translations/pt.json +3 -0
  116. homeassistant/components/matter/translations/ru.json +3 -0
  117. homeassistant/components/miele/translations/ga.json +1 -0
  118. homeassistant/components/mqtt/translations/es.json +19 -0
  119. homeassistant/components/mqtt/translations/et.json +19 -0
  120. homeassistant/components/mqtt/translations/ga.json +26 -1
  121. homeassistant/components/mqtt/translations/pt.json +19 -0
  122. homeassistant/components/mqtt/translations/ru.json +19 -0
  123. homeassistant/components/mvglive/manifest.json +2 -4
  124. homeassistant/components/mvglive/sensor.py +116 -86
  125. homeassistant/components/nina/strings.json +2 -2
  126. homeassistant/components/nina/translations/ca.json +0 -2
  127. homeassistant/components/nina/translations/cs.json +0 -2
  128. homeassistant/components/nina/translations/de.json +3 -3
  129. homeassistant/components/nina/translations/el.json +0 -1
  130. homeassistant/components/nina/translations/en-GB.json +3 -3
  131. homeassistant/components/nina/translations/en.json +3 -3
  132. homeassistant/components/nina/translations/es.json +0 -2
  133. homeassistant/components/nina/translations/et.json +0 -2
  134. homeassistant/components/nina/translations/fi.json +0 -2
  135. homeassistant/components/nina/translations/ga.json +0 -2
  136. homeassistant/components/nina/translations/hu.json +0 -2
  137. homeassistant/components/nina/translations/id.json +0 -1
  138. homeassistant/components/nina/translations/it.json +0 -2
  139. homeassistant/components/nina/translations/ja.json +0 -2
  140. homeassistant/components/nina/translations/ko.json +0 -2
  141. homeassistant/components/nina/translations/lt.json +0 -2
  142. homeassistant/components/nina/translations/nl.json +0 -2
  143. homeassistant/components/nina/translations/pt-BR.json +0 -1
  144. homeassistant/components/nina/translations/pt.json +0 -2
  145. homeassistant/components/nina/translations/ro.json +0 -1
  146. homeassistant/components/nina/translations/ru.json +0 -2
  147. homeassistant/components/nina/translations/sk.json +0 -2
  148. homeassistant/components/nina/translations/sv.json +0 -2
  149. homeassistant/components/nina/translations/tr.json +0 -2
  150. homeassistant/components/nina/translations/uk.json +0 -1
  151. homeassistant/components/nina/translations/zh-Hans.json +0 -2
  152. homeassistant/components/nina/translations/zh-Hant.json +0 -2
  153. homeassistant/components/nordpool/translations/ga.json +6 -0
  154. homeassistant/components/pooldose/translations/ga.json +8 -1
  155. homeassistant/components/portainer/__init__.py +4 -3
  156. homeassistant/components/portainer/config_flow.py +3 -2
  157. homeassistant/components/portainer/strings.json +4 -2
  158. homeassistant/components/portainer/translations/de.json +4 -2
  159. homeassistant/components/portainer/translations/en-GB.json +4 -2
  160. homeassistant/components/portainer/translations/en.json +4 -2
  161. homeassistant/components/profiler/translations/es.json +4 -0
  162. homeassistant/components/profiler/translations/et.json +4 -0
  163. homeassistant/components/profiler/translations/ga.json +4 -0
  164. homeassistant/components/profiler/translations/pt.json +4 -0
  165. homeassistant/components/route_b_smart_meter/translations/es.json +42 -0
  166. homeassistant/components/route_b_smart_meter/translations/et.json +42 -0
  167. homeassistant/components/route_b_smart_meter/translations/ga.json +42 -0
  168. homeassistant/components/route_b_smart_meter/translations/pt.json +42 -0
  169. homeassistant/components/russound_rio/manifest.json +1 -1
  170. homeassistant/components/satel_integra/translations/et.json +1 -0
  171. homeassistant/components/shelly/translations/pl.json +4 -0
  172. homeassistant/components/smartthings/manifest.json +1 -1
  173. homeassistant/components/smartthings/translations/es.json +21 -0
  174. homeassistant/components/smartthings/translations/et.json +21 -0
  175. homeassistant/components/smartthings/translations/ga.json +15 -0
  176. homeassistant/components/smartthings/translations/pt.json +21 -0
  177. homeassistant/components/thread/config_flow.py +11 -3
  178. homeassistant/components/thread/manifest.json +1 -0
  179. homeassistant/components/tolo/translations/es.json +2 -1
  180. homeassistant/components/tolo/translations/ga.json +2 -1
  181. homeassistant/components/tuya/translations/es.json +9 -0
  182. homeassistant/components/tuya/translations/et.json +9 -0
  183. homeassistant/components/tuya/translations/ga.json +9 -0
  184. homeassistant/components/tuya/translations/pt.json +9 -0
  185. homeassistant/components/usage_prediction/translations/et.json +3 -0
  186. homeassistant/components/valve/translations/pl.json +2 -1
  187. homeassistant/components/vesync/fan.py +3 -1
  188. homeassistant/components/voip/translations/nl.json +1 -1
  189. homeassistant/components/voip/translations/sv.json +1 -1
  190. homeassistant/components/volvooncall/translations/ga.json +18 -1
  191. homeassistant/components/wyoming/translations/nl.json +1 -1
  192. homeassistant/components/wyoming/translations/sv.json +1 -1
  193. homeassistant/components/zha/config_flow.py +37 -21
  194. homeassistant/components/zha/manifest.json +1 -1
  195. homeassistant/components/zha/translations/es.json +81 -3
  196. homeassistant/components/zha/translations/et.json +78 -0
  197. homeassistant/components/zha/translations/ga.json +74 -0
  198. homeassistant/components/zha/translations/pt.json +80 -2
  199. homeassistant/components/zha/translations/ru.json +8 -2
  200. homeassistant/components/zwave_js/config_flow.py +30 -11
  201. homeassistant/components/zwave_js/translations/es.json +1 -0
  202. homeassistant/components/zwave_js/translations/et.json +1 -0
  203. homeassistant/components/zwave_js/translations/ga.json +1 -0
  204. homeassistant/components/zwave_js/translations/pt.json +1 -0
  205. homeassistant/const.py +1 -1
  206. homeassistant/generated/integrations.json +2 -1
  207. homeassistant/package_constraints.txt +1 -1
  208. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/METADATA +1 -1
  209. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/RECORD +214 -199
  210. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/WHEEL +0 -0
  211. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/entry_points.txt +0 -0
  212. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/licenses/LICENSE.md +0 -0
  213. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  214. {homeassistant-2025.10.0b1.dist-info → homeassistant-2025.10.0b4.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
+ "cannot_resolve_path": "N\u00e3o foi poss\u00edvel resolver o caminho do dispositivo: {path}",
5
+ "cannot_restore_backup": "O adaptador para o qual est\u00e1 a efetuar o restauro n\u00e3o suporta de forma apropriada o restauro de c\u00f3pias de seguran\u00e7a.\n\nAtualize o firmware. Erro: {error}",
6
+ "cannot_restore_backup_no_ieee_confirm": "O adaptador que est\u00e1 a restaurar tem um firmware desatualizado e n\u00e3o pode escrever o endere\u00e7o IEEE do adaptador v\u00e1rias vezes. Atualize o firmware ou confirme a substitui\u00e7\u00e3o permanente no passo anterior.",
4
7
  "invalid_zeroconf_data": "O coordenador tem informa\u00e7\u00f5es de servi\u00e7o Zeroconf inv\u00e1lidas e n\u00e3o pode ser identificado pelo ZHA",
5
8
  "not_zha_device": "Este dispositivo n\u00e3o \u00e9 um dispositivo ZHA",
9
+ "reconfigure_successful": "O ZHA migrou com \u00eaxito do adaptador antigo para o novo. D\u00ea \u00e0 sua rede Zigbee alguns minutos para estabilizar. Se j\u00e1 n\u00e3o precisar do adaptador antigo, pode deslig\u00e1-lo.",
6
10
  "single_instance_allowed": "J\u00e1 configurado. S\u00f3 pode existir uma configura\u00e7\u00e3o.",
7
11
  "usb_probe_failed": "Falha ao sondar o dispositivo USB",
8
12
  "wrong_firmware_installed": "O seu dispositivo est\u00e1 a executar o firmware errado e n\u00e3o pode ser utilizado com o ZHA at\u00e9 que o firmware correto seja instalado. [Foi criada uma repara\u00e7\u00e3o]({repair_url}) com mais informa\u00e7\u00f5es e instru\u00e7\u00f5es sobre como resolver o problema."
@@ -22,6 +26,13 @@
22
26
  },
23
27
  "choose_formation_strategy": {
24
28
  "description": "Escolha as configura\u00e7\u00f5es de rede para o seu r\u00e1dio.",
29
+ "menu_option_descriptions": {
30
+ "choose_automatic_backup": "Isto permite-lhe alterar as defini\u00e7\u00f5es de rede do seu adaptador para um estado anterior, caso as tenha alterado.",
31
+ "form_initial_network": "Isto ir\u00e1 criar uma nova rede Zigbee.",
32
+ "form_new_network": "Isto ir\u00e1 criar uma nova rede Zigbee.",
33
+ "reuse_settings": "Isto permitir\u00e1 ao ZHA importar as defini\u00e7\u00f5es de uma pen que tenha sido utilizada com outro software, migrando automaticamente parte da rede.",
34
+ "upload_manual_backup": "Isto permitir-lhe-\u00e1 carregar um ficheiro JSON de c\u00f3pia de seguran\u00e7a a partir do ZHA ou do ficheiro `coordinator_backup.json` do Zigbee2MQTT."
35
+ },
25
36
  "menu_options": {
26
37
  "choose_automatic_backup": "Restaurar um backup autom\u00e1tico",
27
38
  "form_initial_network": "Criar uma rede",
@@ -31,6 +42,18 @@
31
42
  },
32
43
  "title": "Forma\u00e7\u00e3o de rede"
33
44
  },
45
+ "choose_migration_strategy": {
46
+ "description": "Escolha como pretende migrar a c\u00f3pia de seguran\u00e7a da sua rede Zigbee do adaptador antigo para um novo.",
47
+ "menu_option_descriptions": {
48
+ "migration_strategy_advanced": "Isto permitir-lhe-\u00e1 restaurar uma c\u00f3pia de seguran\u00e7a de rede espec\u00edfica ou carregar a sua pr\u00f3pria c\u00f3pia de seguran\u00e7a.",
49
+ "migration_strategy_recommended": "Esta \u00e9 a op\u00e7\u00e3o mais r\u00e1pida para migrar para um novo adaptador."
50
+ },
51
+ "menu_options": {
52
+ "migration_strategy_advanced": "Migra\u00e7\u00e3o avan\u00e7ada",
53
+ "migration_strategy_recommended": "Migrar automaticamente (recomendado)"
54
+ },
55
+ "title": "Migrar para um novo adaptador"
56
+ },
34
57
  "choose_serial_port": {
35
58
  "data": {
36
59
  "path": "Caminho do dispositivo de s\u00e9rie"
@@ -38,6 +61,18 @@
38
61
  "description": "Selecione a porta serial para o seu r\u00e1dio Zigbee",
39
62
  "title": "Selecionar uma porta de s\u00e9rie"
40
63
  },
64
+ "choose_setup_strategy": {
65
+ "description": "Escolha como pretende configurar o Zigbee. Recomenda-se a configura\u00e7\u00e3o autom\u00e1tica, a menos que esteja a restaurar a rede a partir de uma c\u00f3pia de seguran\u00e7a ou a configurar um adaptador com defini\u00e7\u00f5es n\u00e3o normalizadas.",
66
+ "menu_option_descriptions": {
67
+ "setup_strategy_advanced": "Isto permitir-lhe-\u00e1 restaurar a partir de uma c\u00f3pia de seguran\u00e7a.",
68
+ "setup_strategy_recommended": "Esta \u00e9 a op\u00e7\u00e3o mais r\u00e1pida para criar uma nova rede e come\u00e7ar a trabalhar."
69
+ },
70
+ "menu_options": {
71
+ "setup_strategy_advanced": "Configura\u00e7\u00e3o avan\u00e7ada",
72
+ "setup_strategy_recommended": "Configurar automaticamente (recomendado)"
73
+ },
74
+ "title": "Configurar o Zigbee"
75
+ },
41
76
  "confirm": {
42
77
  "description": "Deseja configurar {name}?"
43
78
  },
@@ -53,8 +88,16 @@
53
88
  },
54
89
  "manual_port_config": {
55
90
  "data": {
91
+ "baudrate": "Velocidade da porta de s\u00e9rie",
92
+ "flow_control": "Controlo de fluxo de dados",
56
93
  "path": "Caminho do dispositivo serial"
57
94
  },
95
+ "data_description": {
96
+ "baudrate": "Taxa de transmiss\u00e3o a utilizar na comunica\u00e7\u00e3o com a porta s\u00e9rie, normalmente 115200 ou 460800",
97
+ "flow_control": "Verifique a documenta\u00e7\u00e3o do seu adaptador para a op\u00e7\u00e3o correta, normalmente `Nenhum` ou `Hardware`",
98
+ "path": "Caminho para a porta s\u00e9rie ou endere\u00e7o TCP `socket://`"
99
+ },
100
+ "description": "O ZHA n\u00e3o conseguiu detetar automaticamente as configura\u00e7\u00f5es da porta de s\u00e9rie para o seu adaptador.\n\nSe est\u00e1 a usar um firmware com configura\u00e7\u00f5es n\u00e3o normalizadas, insira as configura\u00e7\u00f5es da porta de s\u00e9rie",
58
101
  "title": "Defini\u00e7\u00f5es da porta de s\u00e9rie"
59
102
  },
60
103
  "maybe_confirm_ezsp_restore": {
@@ -64,6 +107,10 @@
64
107
  "description": "A sua c\u00f3pia de seguran\u00e7a tem um endere\u00e7o IEEE diferente do seu r\u00e1dio. Para que a sua rede funcione corretamente, o endere\u00e7o IEEE do seu r\u00e1dio tamb\u00e9m deve ser alterado.\n\nEsta \u00e9 uma opera\u00e7\u00e3o permanente.",
65
108
  "title": "Substituir o endere\u00e7o IEEE do r\u00e1dio"
66
109
  },
110
+ "maybe_reset_old_radio": {
111
+ "description": "Foi criada uma c\u00f3pia de seguran\u00e7a anteriormente e o r\u00e1dio antigo est\u00e1 a ser reposto como parte da migra\u00e7\u00e3o.",
112
+ "title": "Repor o r\u00e1dio antigo"
113
+ },
67
114
  "upload_manual_backup": {
68
115
  "data": {
69
116
  "uploaded_backup_file": "Carregar um ficheiro"
@@ -1738,6 +1785,10 @@
1738
1785
  "step": {
1739
1786
  "init": {
1740
1787
  "description": "As defini\u00e7\u00f5es de rede do seu r\u00e1dio Zigbee s\u00e3o inconsistentes com a c\u00f3pia de seguran\u00e7a de rede mais recente. Isto acontece normalmente se outra integra\u00e7\u00e3o Zigbee (por exemplo, Zigbee2MQTT ou deCONZ) as tiver substitu\u00eddo.\n\n{diff}\n\nSe n\u00e3o alterou intencionalmente as suas defini\u00e7\u00f5es de rede, restaure a partir da c\u00f3pia de seguran\u00e7a mais recente: caso contr\u00e1rio, os seus dispositivos n\u00e3o funcionar\u00e3o.",
1788
+ "menu_option_descriptions": {
1789
+ "restore_old_settings": "Isto ir\u00e1 restaurar as defini\u00e7\u00f5es de rede para o \u00faltimo estado de funcionamento.",
1790
+ "use_new_settings": "Isto ir\u00e1 manter as novas defini\u00e7\u00f5es gravadas no stick. Escolha esta op\u00e7\u00e3o apenas se tiver alterado intencionalmente as defini\u00e7\u00f5es."
1791
+ },
1741
1792
  "menu_options": {
1742
1793
  "restore_old_settings": "Restaurar backup (recomendado)",
1743
1794
  "use_new_settings": "Manter as novas defini\u00e7\u00f5es"
@@ -1759,6 +1810,9 @@
1759
1810
  },
1760
1811
  "options": {
1761
1812
  "abort": {
1813
+ "cannot_resolve_path": "N\u00e3o foi poss\u00edvel resolver o caminho do dispositivo: {path}",
1814
+ "cannot_restore_backup": "O adaptador para o qual est\u00e1 a efetuar o restauro n\u00e3o suporta de forma apropriada o restauro de c\u00f3pias de seguran\u00e7a.\n\nAtualize o firmware. Erro: {error}",
1815
+ "cannot_restore_backup_no_ieee_confirm": "O adaptador que est\u00e1 a restaurar tem um firmware desatualizado e n\u00e3o pode escrever o endere\u00e7o IEEE do adaptador v\u00e1rias vezes. Atualize o firmware ou confirme a substitui\u00e7\u00e3o permanente no passo anterior.",
1762
1816
  "not_zha_device": "Este dispositivo n\u00e3o \u00e9 um dispositivo ZHA",
1763
1817
  "usb_probe_failed": "Falha ao sondar o dispositivo USB",
1764
1818
  "wrong_firmware_installed": "O seu dispositivo est\u00e1 a executar o firmware errado e n\u00e3o pode ser utilizado com o ZHA at\u00e9 que o firmware correto seja instalado. [Foi criada uma repara\u00e7\u00e3o]({repair_url}) com mais informa\u00e7\u00f5es e instru\u00e7\u00f5es sobre como resolver o problema."
@@ -1778,6 +1832,13 @@
1778
1832
  },
1779
1833
  "choose_formation_strategy": {
1780
1834
  "description": "Escolha as configura\u00e7\u00f5es de rede para o seu r\u00e1dio.",
1835
+ "menu_option_descriptions": {
1836
+ "choose_automatic_backup": "Isto permite-lhe alterar as defini\u00e7\u00f5es de rede do seu adaptador para um estado anterior, caso as tenha alterado.",
1837
+ "form_initial_network": "Isto ir\u00e1 criar uma nova rede Zigbee.",
1838
+ "form_new_network": "Isto ir\u00e1 criar uma nova rede Zigbee.",
1839
+ "reuse_settings": "Isto permitir\u00e1 ao ZHA importar as defini\u00e7\u00f5es de uma pen que tenha sido utilizada com outro software, migrando automaticamente parte da rede.",
1840
+ "upload_manual_backup": "Isto permitir-lhe-\u00e1 carregar um ficheiro JSON de c\u00f3pia de seguran\u00e7a a partir do ZHA ou do ficheiro `coordinator_backup.json` do Zigbee2MQTT."
1841
+ },
1781
1842
  "menu_options": {
1782
1843
  "choose_automatic_backup": "Restaurar um backup autom\u00e1tico",
1783
1844
  "form_initial_network": "Criar uma rede",
@@ -1787,6 +1848,18 @@
1787
1848
  },
1788
1849
  "title": "Forma\u00e7\u00e3o de rede"
1789
1850
  },
1851
+ "choose_migration_strategy": {
1852
+ "description": "Escolha como pretende migrar a c\u00f3pia de seguran\u00e7a da sua rede Zigbee do adaptador antigo para um novo.",
1853
+ "menu_option_descriptions": {
1854
+ "migration_strategy_advanced": "Isto permitir-lhe-\u00e1 restaurar uma c\u00f3pia de seguran\u00e7a de rede espec\u00edfica ou carregar a sua pr\u00f3pria c\u00f3pia de seguran\u00e7a.",
1855
+ "migration_strategy_recommended": "Esta \u00e9 a op\u00e7\u00e3o mais r\u00e1pida para migrar para um novo adaptador."
1856
+ },
1857
+ "menu_options": {
1858
+ "migration_strategy_advanced": "Migra\u00e7\u00e3o avan\u00e7ada",
1859
+ "migration_strategy_recommended": "Migrar automaticamente (recomendado)"
1860
+ },
1861
+ "title": "Migrar para um novo adaptador"
1862
+ },
1790
1863
  "choose_serial_port": {
1791
1864
  "data": {
1792
1865
  "path": "Caminho do dispositivo de s\u00e9rie"
@@ -1795,6 +1868,7 @@
1795
1868
  "title": "Selecionar uma porta de s\u00e9rie"
1796
1869
  },
1797
1870
  "init": {
1871
+ "description": "Ser\u00e1 efetuada uma c\u00f3pia de seguran\u00e7a e o ZHA ser\u00e1 interrompido. Deseja continuar?",
1798
1872
  "title": "Reconfigurar ZHA"
1799
1873
  },
1800
1874
  "instruct_unplug": {
@@ -1814,11 +1888,11 @@
1814
1888
  },
1815
1889
  "manual_port_config": {
1816
1890
  "data": {
1817
- "baudrate": "Velocidade da porta",
1891
+ "baudrate": "Velocidade da porta de s\u00e9rie",
1818
1892
  "flow_control": "Controlo de fluxo de dados",
1819
1893
  "path": "Caminho do dispositivo serial"
1820
1894
  },
1821
- "description": "Digite as configura\u00e7\u00f5es da porta serial",
1895
+ "description": "O ZHA n\u00e3o conseguiu detetar automaticamente as configura\u00e7\u00f5es da porta de s\u00e9rie para o seu adaptador.\n\nSe est\u00e1 a usar um firmware com configura\u00e7\u00f5es n\u00e3o normalizadas, insira as configura\u00e7\u00f5es da porta de s\u00e9rie",
1822
1896
  "title": "Defini\u00e7\u00f5es da porta de s\u00e9rie"
1823
1897
  },
1824
1898
  "maybe_confirm_ezsp_restore": {
@@ -1830,6 +1904,10 @@
1830
1904
  },
1831
1905
  "prompt_migrate_or_reconfigure": {
1832
1906
  "description": "Est\u00e1 a migrar para um novo r\u00e1dio ou a reconfigurar o r\u00e1dio atual?",
1907
+ "menu_option_descriptions": {
1908
+ "intent_migrate": "Isto ajud\u00e1-lo-\u00e1 a migrar a sua rede Zigbee do seu r\u00e1dio antigo para um novo.",
1909
+ "intent_reconfigure": "Isto permite-lhe alterar a porta s\u00e9rie do seu r\u00e1dio Zigbee atual."
1910
+ },
1833
1911
  "menu_options": {
1834
1912
  "intent_migrate": "Migrar para um novo r\u00e1dio",
1835
1913
  "intent_reconfigure": "Reconfigurar o r\u00e1dio atual"
@@ -53,6 +53,8 @@
53
53
  },
54
54
  "manual_port_config": {
55
55
  "data": {
56
+ "baudrate": "\u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430",
57
+ "flow_control": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430",
56
58
  "path": "\u041f\u0443\u0442\u044c \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443"
57
59
  },
58
60
  "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430"
@@ -1674,8 +1676,8 @@
1674
1676
  },
1675
1677
  "manual_port_config": {
1676
1678
  "data": {
1677
- "baudrate": "\u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u043e\u0440\u0442\u0430",
1678
- "flow_control": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0445",
1679
+ "baudrate": "\u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430",
1680
+ "flow_control": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430",
1679
1681
  "path": "\u041f\u0443\u0442\u044c \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443"
1680
1682
  },
1681
1683
  "description": "\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430",
@@ -1690,6 +1692,10 @@
1690
1692
  },
1691
1693
  "prompt_migrate_or_reconfigure": {
1692
1694
  "description": "\u0412\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439?",
1695
+ "menu_option_descriptions": {
1696
+ "intent_migrate": "\u042d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u043c \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0432\u0430\u0448\u0443 \u0441\u0435\u0442\u044c Zigbee \u0441\u043e \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f \u043d\u0430 \u043d\u043e\u0432\u044b\u0439.",
1697
+ "intent_reconfigure": "\u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0432\u0430\u043c \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f Zigbee."
1698
+ },
1693
1699
  "menu_options": {
1694
1700
  "intent_migrate": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c",
1695
1701
  "intent_reconfigure": "\u041f\u0435\u0440\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c"
@@ -376,10 +376,10 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
376
376
 
377
377
  new_addon_config = addon_config | config_updates
378
378
 
379
- if not new_addon_config[CONF_ADDON_DEVICE]:
380
- new_addon_config.pop(CONF_ADDON_DEVICE)
381
- if not new_addon_config[CONF_ADDON_SOCKET]:
382
- new_addon_config.pop(CONF_ADDON_SOCKET)
379
+ if new_addon_config.get(CONF_ADDON_DEVICE) is None:
380
+ new_addon_config.pop(CONF_ADDON_DEVICE, None)
381
+ if new_addon_config.get(CONF_ADDON_SOCKET) is None:
382
+ new_addon_config.pop(CONF_ADDON_SOCKET, None)
383
383
 
384
384
  if new_addon_config == addon_config:
385
385
  return
@@ -1470,14 +1470,33 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
1470
1470
  if not is_hassio(self.hass):
1471
1471
  return self.async_abort(reason="not_hassio")
1472
1472
 
1473
- if discovery_info.zwave_home_id:
1474
- await self.async_set_unique_id(str(discovery_info.zwave_home_id))
1475
- self._abort_if_unique_id_configured(
1476
- {
1477
- CONF_USB_PATH: None,
1478
- CONF_SOCKET_PATH: discovery_info.socket_path,
1479
- }
1473
+ if (
1474
+ discovery_info.zwave_home_id
1475
+ and (
1476
+ current_config_entries := self._async_current_entries(
1477
+ include_ignore=False
1478
+ )
1480
1479
  )
1480
+ and (home_id := str(discovery_info.zwave_home_id))
1481
+ and (
1482
+ existing_entry := next(
1483
+ (
1484
+ entry
1485
+ for entry in current_config_entries
1486
+ if entry.unique_id == home_id
1487
+ ),
1488
+ None,
1489
+ )
1490
+ )
1491
+ # Only update existing entries that are configured via sockets
1492
+ and existing_entry.data.get(CONF_SOCKET_PATH)
1493
+ ):
1494
+ await self._async_set_addon_config(
1495
+ {CONF_ADDON_SOCKET: discovery_info.socket_path}
1496
+ )
1497
+ # Reloading will sync add-on options to config entry data
1498
+ self.hass.config_entries.async_schedule_reload(existing_entry.entry_id)
1499
+ return self.async_abort(reason="already_configured")
1481
1500
 
1482
1501
  self.socket_path = discovery_info.socket_path
1483
1502
  self.context["title_placeholders"] = {
@@ -17,6 +17,7 @@
17
17
  "discovery_requires_supervisor": "El descubrimiento requiere de Home Assistant Supervisor.",
18
18
  "migration_low_sdk_version": "La versi\u00f3n del SDK del adaptador antiguo es inferior a {ok_sdk_version}. Esto significa que no es posible migrar la memoria no vol\u00e1til (NVM) del adaptador antiguo a otro. \n \nConsulta la documentaci\u00f3n en las p\u00e1ginas de soporte del fabricante del adaptador antiguo para ver si es posible actualizar el firmware a una versi\u00f3n del SDK {ok_sdk_version} o superior.",
19
19
  "migration_successful": "Migraci\u00f3n exitosa.",
20
+ "not_hassio": "El descubrimiento de ESPHome requiere que Home Assistant configure el complemento Z-Wave.",
20
21
  "not_zwave_device": "El dispositivo descubierto no es un dispositivo Z-Wave.",
21
22
  "not_zwave_js_addon": "El complemento descubierto no es el complemento oficial de Z-Wave.",
22
23
  "reconfigure_successful": "Se volvi\u00f3 a configurar correctamente",
@@ -17,6 +17,7 @@
17
17
  "discovery_requires_supervisor": "Avastamine n\u00f5uab Home Assistanti Supervisorit.",
18
18
  "migration_low_sdk_version": "Vana adapteri SDK versioon on madalam kui {ok_sdk_version}. See t\u00e4hendab, et vana adapteri p\u00fcsim\u00e4lu (NVM) ei ole v\u00f5imalik teisele adapterile \u00fcle viia.\n\nKontrolli vanaadapteri tootja tugilehtede dokumentatsioonist kas vana adapteri p\u00fcsivara on v\u00f5imalik uuendada SDK versiooniga loodud versioonile {ok_sdk_version} v\u00f5i k\u00f5rgem.",
19
19
  "migration_successful": "Migratsioon \u00f5nnestus.",
20
+ "not_hassio": "ESPHome'i avastamiseks on vaja Home Assistantit, et seadistada Z-Wave'i lisandmoodul.",
20
21
  "not_zwave_device": "Avastatud seade ei ole Z-Wave seade.",
21
22
  "not_zwave_js_addon": "Avastatud lisandmoodul ei ole ametlik Z-Wave lisandmoodul.",
22
23
  "reconfigure_successful": "\u00dcmberseadistamine \u00f5nnestus",
@@ -13,6 +13,7 @@
13
13
  "config_entry_not_loaded": "N\u00edl an iontr\u00e1il chumra\u00edochta Z-Wave l\u00f3d\u00e1ilte. D\u00e9an iarracht ar\u00eds nuair a bheidh an iontr\u00e1il chumra\u00edochta l\u00f3d\u00e1ilte.",
14
14
  "different_device": "N\u00ed hionann an gl\u00e9as USB ceangailte agus an ceann a cumra\u00edodh roimhe seo don iontr\u00e1il chumra\u00edochta seo. Cruthaigh iontr\u00e1il chumra\u00edochta nua don ghl\u00e9as nua ina ionad sin.",
15
15
  "migration_successful": "Imirce rath\u00fail.",
16
+ "not_hassio": "\u00c9il\u00edonn ESPHome discovery go mbeidh Home Assistant ann chun an breise\u00e1n Z-Wave a chumr\u00fa.",
16
17
  "not_zwave_device": "N\u00ed gl\u00e9as Z-Wave an gl\u00e9as a aims\u00edodh.",
17
18
  "not_zwave_js_addon": "N\u00ed h\u00e9 an breise\u00e1n a aims\u00edodh an breise\u00e1n oifigi\u00fail Z-Wave.",
18
19
  "reconfigure_successful": "D'\u00e9irigh leis an athchumr\u00fa",
@@ -17,6 +17,7 @@
17
17
  "discovery_requires_supervisor": "A descoberta requer o Home Assistant Supervisor.",
18
18
  "migration_low_sdk_version": "A vers\u00e3o do SDK do adaptador antigo \u00e9 inferior a {ok_sdk_version}. Isto significa que n\u00e3o \u00e9 poss\u00edvel migrar a mem\u00f3ria n\u00e3o vol\u00e1til (NVM) do adaptador antigo para outro adaptador.\n\nVerifique a documenta\u00e7\u00e3o nas p\u00e1ginas de suporte do fabricante do adaptador antigo, se \u00e9 poss\u00edvel atualizar o firmware do adaptador antigo para uma vers\u00e3o constru\u00edda com a vers\u00e3o do SDK {ok_sdk_version} ou superior.",
19
19
  "migration_successful": "Migra\u00e7\u00e3o bem sucedida.",
20
+ "not_hassio": "A descoberta do ESPHome requer que o Home Assistant configure o suplemento Z-Wave.",
20
21
  "not_zwave_device": "O dispositivo descoberto n\u00e3o \u00e9 um dispositivo Z-Wave.",
21
22
  "not_zwave_js_addon": "O suplemento descoberto n\u00e3o \u00e9 o suplemento oficial do Z-Wave.",
22
23
  "reconfigure_successful": "A reconfigura\u00e7\u00e3o foi bem sucedida",
homeassistant/const.py CHANGED
@@ -26,7 +26,7 @@ if TYPE_CHECKING:
26
26
  APPLICATION_NAME: Final = "HomeAssistant"
27
27
  MAJOR_VERSION: Final = 2025
28
28
  MINOR_VERSION: Final = 10
29
- PATCH_VERSION: Final = "0b1"
29
+ PATCH_VERSION: Final = "0b4"
30
30
  __short_version__: Final = f"{MAJOR_VERSION}.{MINOR_VERSION}"
31
31
  __version__: Final = f"{__short_version__}.{PATCH_VERSION}"
32
32
  REQUIRED_PYTHON_VER: Final[tuple[int, int, int]] = (3, 13, 2)
@@ -6807,7 +6807,8 @@
6807
6807
  "name": "Thread",
6808
6808
  "integration_type": "service",
6809
6809
  "config_flow": true,
6810
- "iot_class": "local_polling"
6810
+ "iot_class": "local_polling",
6811
+ "single_config_entry": true
6811
6812
  },
6812
6813
  "tibber": {
6813
6814
  "name": "Tibber",
@@ -39,7 +39,7 @@ habluetooth==5.6.4
39
39
  hass-nabucasa==1.1.1
40
40
  hassil==3.2.0
41
41
  home-assistant-bluetooth==1.13.1
42
- home-assistant-frontend==20250925.0
42
+ home-assistant-frontend==20250926.0
43
43
  home-assistant-intents==2025.9.24
44
44
  httpx==0.28.1
45
45
  ifaddr==0.2.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: homeassistant
3
- Version: 2025.10.0b1
3
+ Version: 2025.10.0b4
4
4
  Summary: Open-source home automation platform running on Python 3.
5
5
  Author-email: The Home Assistant Authors <hello@home-assistant.io>
6
6
  License-Expression: Apache-2.0